Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Fingerprint: Examples, Pinouts, and Specs

Image of Fingerprint
Cirkit Designer LogoDesign with Fingerprint in Cirkit Designer

Introduction

The R307S Fingerprint Sensor, manufactured by Shreyansh, is a biometric sensor designed to capture and verify fingerprints for authentication and security purposes. This compact and reliable module is widely used in access control systems, time attendance devices, and other applications requiring secure identification. The R307S combines a fingerprint scanner with an onboard processor to handle image processing, feature extraction, and fingerprint matching.

Explore Projects Built with Fingerprint

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino-Based Fingerprint Access Control System with LCD Display
Image of FINGERPRINT_DOOR_LOCK/UNLOCK: A project utilizing Fingerprint in a practical application
This circuit is a fingerprint-based access control system. It uses an Arduino UNO to interface with a fingerprint sensor and a 20x4 I2C LCD panel for user interaction, and controls a 12V solenoid lock via an IRFZ44N MOSFET. The system allows users to enroll and verify fingerprints, displaying status messages on the LCD and actuating the solenoid lock upon successful verification.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO Based Biometric Voting Machine
Image of evm: A project utilizing Fingerprint in a practical application
This circuit is designed to interface an Arduino UNO with a fingerprint scanner for biometric authentication. The Arduino is programmed to enroll, store, and match fingerprints, and it appears to be part of a voting machine system, as indicated by the embedded code which includes functions for voting and managing votes. The system uses EEPROM for data storage and includes a user interface with an LCD and buttons for interaction.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Fingerprint Sensor and SD Card Module for Secure Data Storage
Image of FingerPrint: A project utilizing Fingerprint in a practical application
This circuit is a fingerprint capture and storage system using an ESP32 microcontroller. It interfaces with a fingerprint sensor to capture fingerprint images and stores them on an SD card. A pushbutton is used to trigger the fingerprint capture process.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Mega 2560 Biometric Security System with Wi-Fi Connectivity
Image of Health Monitoring Device (Collab): A project utilizing Fingerprint in a practical application
This is a multi-functional sensor system controlled by an Arduino Mega 2560, designed to read biometric data from a pulse oximeter and an infrared thermometer, authenticate using a fingerprint scanner, display information on an OLED screen, and transmit data wirelessly via an ESP8266 module. User inputs can be received through two pushbuttons, and the system's power distribution is managed through common ground and voltage supply nets.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Fingerprint

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of FINGERPRINT_DOOR_LOCK/UNLOCK: A project utilizing Fingerprint in a practical application
Arduino-Based Fingerprint Access Control System with LCD Display
This circuit is a fingerprint-based access control system. It uses an Arduino UNO to interface with a fingerprint sensor and a 20x4 I2C LCD panel for user interaction, and controls a 12V solenoid lock via an IRFZ44N MOSFET. The system allows users to enroll and verify fingerprints, displaying status messages on the LCD and actuating the solenoid lock upon successful verification.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of evm: A project utilizing Fingerprint in a practical application
Arduino UNO Based Biometric Voting Machine
This circuit is designed to interface an Arduino UNO with a fingerprint scanner for biometric authentication. The Arduino is programmed to enroll, store, and match fingerprints, and it appears to be part of a voting machine system, as indicated by the embedded code which includes functions for voting and managing votes. The system uses EEPROM for data storage and includes a user interface with an LCD and buttons for interaction.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of FingerPrint: A project utilizing Fingerprint in a practical application
ESP32-Based Fingerprint Sensor and SD Card Module for Secure Data Storage
This circuit is a fingerprint capture and storage system using an ESP32 microcontroller. It interfaces with a fingerprint sensor to capture fingerprint images and stores them on an SD card. A pushbutton is used to trigger the fingerprint capture process.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Health Monitoring Device (Collab): A project utilizing Fingerprint in a practical application
Arduino Mega 2560 Biometric Security System with Wi-Fi Connectivity
This is a multi-functional sensor system controlled by an Arduino Mega 2560, designed to read biometric data from a pulse oximeter and an infrared thermometer, authenticate using a fingerprint scanner, display information on an OLED screen, and transmit data wirelessly via an ESP8266 module. User inputs can be received through two pushbuttons, and the system's power distribution is managed through common ground and voltage supply nets.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Access control systems (e.g., door locks, safes)
  • Time and attendance tracking systems
  • Biometric authentication for embedded systems
  • Secure login for devices and systems
  • IoT-based security solutions

Technical Specifications

Below are the key technical details of the R307S Fingerprint Sensor:

Parameter Specification
Manufacturer Shreyansh
Part ID R307S
Operating Voltage 3.6V - 6.0V DC
Operating Current 50mA (typical), 80mA (maximum)
Interface UART (TTL)
Baud Rate Configurable (default: 57600 bps)
Fingerprint Capacity 1000 templates
Image Resolution 500 DPI
Scanning Area 14mm x 18mm
Matching Speed < 1 second
False Acceptance Rate < 0.001%
False Rejection Rate < 1.0%
Operating Temperature -20°C to +50°C
Dimensions 55mm x 21mm x 21.5mm

Pin Configuration

The R307S module has a 6-pin interface for communication and power. The pinout is as follows:

Pin Name Description
1 VCC Power supply (3.6V - 6.0V DC)
2 GND Ground
3 TX UART Transmit (data output)
4 RX UART Receive (data input)
5 TOUCH Touch signal (active high)
6 NC Not connected

Usage Instructions

Connecting the R307S to an Arduino UNO

To use the R307S with an Arduino UNO, follow these steps:

  1. Connect the VCC pin of the R307S to the 5V pin on the Arduino.
  2. Connect the GND pin of the R307S to the GND pin on the Arduino.
  3. Connect the TX pin of the R307S to the Arduino's digital pin 2 (via a voltage divider if needed).
  4. Connect the RX pin of the R307S to the Arduino's digital pin 3.

Sample Arduino Code

Below is an example of how to interface the R307S with an Arduino UNO using the Adafruit Fingerprint Sensor Library:

#include <Adafruit_Fingerprint.h>
#include <SoftwareSerial.h>

// Define the RX and TX pins for the fingerprint sensor
SoftwareSerial mySerial(2, 3); // RX, TX

Adafruit_Fingerprint finger(&mySerial);

void setup() {
  Serial.begin(9600); // Initialize serial communication with the PC
  while (!Serial);    // Wait for the serial monitor to open
  Serial.println("Initializing fingerprint sensor...");

  // Initialize the fingerprint sensor
  finger.begin(57600);
  if (finger.verifyPassword()) {
    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
  }
}

void loop() {
  Serial.println("Place your finger on the sensor...");
  int result = finger.getImage(); // Capture the fingerprint image

  if (result == FINGERPRINT_OK) {
    Serial.println("Fingerprint image captured successfully.");
    result = finger.image2Tz(); // Convert the image to a template
    if (result == FINGERPRINT_OK) {
      Serial.println("Fingerprint template created.");
      result = finger.fingerFastSearch(); // Search for a match
      if (result == FINGERPRINT_OK) {
        Serial.print("Fingerprint matched! ID: ");
        Serial.println(finger.fingerID);
      } else {
        Serial.println("No match found.");
      }
    } else {
      Serial.println("Failed to create fingerprint template.");
    }
  } else {
    Serial.println("Failed to capture fingerprint image.");
  }

  delay(2000); // Wait before the next scan
}

Important Considerations

  • Ensure the VCC voltage matches the sensor's operating range (3.6V - 6.0V).
  • Use a level shifter or voltage divider if connecting the sensor to a 3.3V logic device.
  • Avoid exposing the sensor to direct sunlight or dusty environments, as this may affect performance.
  • Clean the sensor surface regularly to maintain accuracy.

Troubleshooting and FAQs

Common Issues

  1. Fingerprint sensor not detected by the Arduino.

    • Solution: Check the wiring connections, especially the TX and RX pins. Ensure the baud rate in the code matches the sensor's default baud rate (57600 bps).
  2. Fingerprint image capture fails.

    • Solution: Ensure the finger is placed properly on the sensor. Clean the sensor surface if it is dirty or smudged.
  3. No match found for a registered fingerprint.

    • Solution: Verify that the fingerprint was successfully enrolled in the sensor's memory. Re-enroll the fingerprint if necessary.
  4. Sensor does not power on.

    • Solution: Check the power supply voltage and ensure it is within the specified range (3.6V - 6.0V). Verify the GND connection.

FAQs

  • Q: How many fingerprints can the R307S store?
    A: The R307S can store up to 1000 fingerprint templates.

  • Q: Can the R307S be used with a Raspberry Pi?
    A: Yes, the R307S can be interfaced with a Raspberry Pi using its UART interface.

  • Q: What is the default baud rate of the R307S?
    A: The default baud rate is 57600 bps, but it can be configured as needed.

  • Q: How do I clean the sensor surface?
    A: Use a soft, lint-free cloth slightly dampened with isopropyl alcohol to clean the sensor.

By following this documentation, you can effectively integrate the R307S Fingerprint Sensor into your projects for secure and reliable biometric authentication.