The Waveshare Fingerprint Reader (Part ID: 8552) is a biometric device designed to capture and analyze the unique patterns of a person's fingerprint. It is widely used for identification and authentication purposes in security systems, access control, and embedded applications. This compact and reliable module simplifies the integration of fingerprint recognition into various projects, offering high accuracy and fast processing.
The following table outlines the key technical details of the Waveshare Fingerprint Reader:
Parameter | Specification |
---|---|
Operating Voltage | 3.3V to 6V |
Operating Current | 50mA (typical), 80mA (peak) |
Communication Protocol | UART (TTL) |
Baud Rate | Configurable (default: 57600 bps) |
Fingerprint Capacity | 1000 templates |
Image Resolution | 508 DPI |
Scanning Area | 14mm x 18mm |
Response Time | <1 second |
Operating Temperature | -20°C to 50°C |
Dimensions | 56mm x 20mm x 21.5mm |
The module has a 4-pin interface for communication and power. The pinout is as follows:
Pin | Name | Description |
---|---|---|
1 | VCC | Power supply input (3.3V to 6V) |
2 | GND | Ground |
3 | TX | UART Transmit (data output from module) |
4 | RX | UART Receive (data input to module) |
VCC
pin to a 3.3V-6V power source and the GND
pin to ground.TX
pin of the module to the RX pin of your microcontroller.RX
pin of the module to the TX pin of your microcontroller.Below is an example of how to use the Waveshare Fingerprint Reader with an Arduino UNO:
VCC
to the Arduino's 5V pin.GND
to the Arduino's GND pin.TX
to Arduino pin 2 (via a voltage divider if using 5V logic).RX
to Arduino pin 3.#include <SoftwareSerial.h>
// Define the RX and TX pins for the fingerprint module
SoftwareSerial fingerprintSerial(2, 3); // RX, TX
void setup() {
Serial.begin(9600); // Initialize serial monitor
fingerprintSerial.begin(57600); // Initialize fingerprint module communication
Serial.println("Initializing Fingerprint Reader...");
delay(1000);
// Send a test command to the fingerprint module
fingerprintSerial.write(0x55); // Example command (replace with actual commands)
Serial.println("Fingerprint Reader Ready.");
}
void loop() {
if (fingerprintSerial.available()) {
// Read data from the fingerprint module
int data = fingerprintSerial.read();
Serial.print("Data received: ");
Serial.println(data, HEX);
}
delay(100); // Small delay to avoid flooding the serial monitor
}
No Response from the Module
Fingerprint Not Recognized
Communication Errors
Module Overheating
Q: Can the module store more than 1000 fingerprints?
Q: Can I use this module with a Raspberry Pi?
Q: How do I reset the module to factory settings?
Q: What is the default baud rate of the module?