

The Keyestudio Fingerprint Sensor is a biometric device designed to capture and verify an individual's fingerprint for authentication purposes. It is widely used in security systems, access control, and mobile devices to enhance security and provide a convenient, password-free user experience. This sensor uses optical technology to scan and store fingerprints, making it a reliable and efficient solution for biometric identification.








The Keyestudio Fingerprint Sensor is equipped with the following technical features:
| Parameter | Specification |
|---|---|
| Operating Voltage | 3.3V - 6V DC |
| Operating Current | 50mA (typical), 80mA (peak) |
| Interface Type | UART (TTL logic level) |
| Baud Rate | 9600 bps (default, adjustable) |
| Fingerprint Capacity | 1000 fingerprints |
| Image Resolution | 500 DPI |
| Scanning Time | < 1 second |
| Working Temperature | -20°C to 50°C |
| Dimensions | 56mm x 20mm x 21.5mm |
The fingerprint sensor has a 4-pin interface for communication and power:
| Pin | Name | Description |
|---|---|---|
| 1 | VCC | Power supply input (3.3V - 6V DC) |
| 2 | GND | Ground connection |
| 3 | TX | UART Transmit pin (sends data to the microcontroller) |
| 4 | RX | UART Receive pin (receives data from the microcontroller) |
Wiring the Sensor:
VCC pin of the sensor to the 5V pin of your microcontroller (e.g., Arduino UNO). GND pin to the ground (GND) of the microcontroller. TX pin of the sensor to the RX pin of the microcontroller. RX pin of the sensor to the TX pin of the microcontroller.Library Installation:
Adafruit Fingerprint Sensor Library from the Arduino Library Manager. Enrolling a Fingerprint:
Enroll example) to register fingerprints. Verifying a Fingerprint:
Fingerprint example sketch to verify fingerprints. Below is an example code snippet to enroll and verify fingerprints using the Keyestudio Fingerprint Sensor:
#include <Adafruit_Fingerprint.h>
#include <SoftwareSerial.h>
// Define the RX and TX pins for the fingerprint sensor
SoftwareSerial mySerial(2, 3); // RX = pin 2, TX = pin 3
Adafruit_Fingerprint finger(&mySerial);
void setup() {
Serial.begin(9600); // Initialize serial communication with the PC
while (!Serial); // Wait for the serial monitor to open
delay(100);
Serial.println("Initializing fingerprint sensor...");
mySerial.begin(9600); // Initialize communication with the sensor
if (finger.begin()) {
Serial.println("Fingerprint sensor detected!");
} else {
Serial.println("Fingerprint sensor not detected. Check connections.");
while (1); // Halt the program if the sensor is not found
}
Serial.println("Place your finger on the sensor to enroll.");
}
void loop() {
// Check if a fingerprint is detected
if (finger.getImage() == FINGERPRINT_OK) {
Serial.println("Fingerprint detected!");
// Additional code for enrollment or verification can be added here
} else {
Serial.println("No fingerprint detected. Try again.");
}
delay(1000); // Wait 1 second before the next scan
}
2 and 3 in SoftwareSerial with the pins you are using for RX and TX if different.Enroll and Fingerprint examples in the Adafruit library for more advanced functionality.Sensor Not Detected:
VCC, GND, TX, and RX pins are properly connected.Fingerprint Not Recognized:
Communication Errors:
Slow Response Time:
Q1: Can the sensor store multiple fingerprints?
Yes, the Keyestudio Fingerprint Sensor can store up to 1000 fingerprints in its internal memory.
Q2: Can I use this sensor with a Raspberry Pi?
Yes, the sensor can be used with a Raspberry Pi by connecting it to the GPIO pins and using a UART communication library.
Q3: What is the default baud rate of the sensor?
The default baud rate is 9600 bps, but it can be adjusted if needed.
Q4: How do I reset the sensor to factory settings?
You can use the deleteModel() function in the Adafruit library to delete all stored fingerprints and reset the sensor.
Q5: Can the sensor work outdoors?
The sensor is designed for indoor use. Outdoor use may affect its performance due to environmental factors like sunlight and dust.