An automatic login system using the IndusBoard Coin involves setting up the board to authenticate users and grant access to a system without manual intervention. This can be achieved by programming the IndusBoard, which is equipped with an ESP32 module, to interface with user identification hardware such as RFID readers, biometric sensors, or keypads. When a user presents their credentials (e.g., an RFID card or fingerprint), the board processes the input and verifies it against stored data.
If the credentials are valid, the IndusBoard sends a signal to the connected system to complete the login process, enabling seamless and secure access. This setup can be programmed using the Arduino IDE to handle the authentication logic and communication protocols.
Applications of automatic login system is:
- Automatically grant employees access to office premises using RFID cards or biometric scanners, ensuring only authorized personnel can enter.
- Allow homeowners to unlock doors and access smart home systems using fingerprint recognition or mobile authentication, enhancing home security.
- Secure sensitive areas in hospitals and clinics by granting access to authorized medical staff through biometric verification.
Bill of Materials (BoM)
Components | Description | Quantity |
IndusBoard Coin | 3cm sized dev board | 1 |
Breadboard | 3.5 cm x 4.5 cm breadboard | 1 |
Switch | Pushbutton-2 Pin | 1 |
Software Code
#if ARDUINO_USB_MODE
#warning This sketch should be used when USB is in OTG mode
void setup(){}
void loop(){}
#else
#include "USB.h"
#include "USBHIDKeyboard.h"
USBHIDKeyboard Keyboard;
const int loginButton = 3; // Button to trigger the login sequence
void setup() {
// initialize the button input:
pinMode(loginButton, INPUT_PULLUP);
// initialize the keyboard:
Keyboard.begin();
USB.begin();
Serial.begin(115200);
}
void loop() {
// check if the login button is pressed:
if (digitalRead(loginButton) == LOW) {
loginSequence();
delay(5000); // wait 5 seconds before allowing another login
attempt
}
delay(5);
}
void loginSequence() {
// Replace "YourUsername" and "YourPassword" with your actual login
credentials
// String username = "2662002";
String password = "2662002";
typeString(password);
Keyboard.write(0xB0); // press Enter to login
}
void typeString(String str) {
for (int i = 0; i < str.length(); i++) {
Keyboard.write(str[i]);
delay(100); // add a small delay between keystrokes
}
}
#endif /* ARDUINO_USB_MODE */
Connection
Testing
Now we connect the board with the USB and upload the code in the indus board, then by pressing a button, the system automatically fills in the password, unlocking the locked password or logging into any server.
Author(s): Manjeet Vishwakarma, Â Abhay Verma and Satywanti Kundu are B.Tech ECE students at GJUS&T HISAR