ATTENDANCE THROUGH FINGER PRINT SENSOR
PART LIST
(1)Microcontrollor Esp32 Nodemcu 32s with
Terminal Adapters
(2) DWIN screen 5 inch HMI TFT Touch LCD
Display.
(3) Fingerprint sensor R503
(4) Ethernet module W5500
(5) 4GB Sd card + card reader.
(6)Male and Female And Jumper to wires also Male to male
(7) Soledring Wire 100g
(8) 5v power supply
(9) Ethernet cable
ESP32 NODEMCU-32S
Key features of the ESP32 NodeMCU-32S:
Dual-Core Tensilica LX6 Processor (up to 240 MHz)
Wi-Fi 802.11 b/g/n
Bluetooth 4.2 and BLE (Bluetooth Low Energy)
520 KB SRAM
4 MB Flash Memory
32 GPIO Pins
Operating Voltage: 3.3V
Integrated 2.4 GHz Antenna
2 × 12-bit SAR ADCs (18 channels)
2 × 8-bit DACs
16 × PWM (Pulse Width Modulation) Channels
2 × I²C Interfaces
3 × UART Interfaces
2 × SPI Interfaces
CAN Bus Support
Integrated Hall Sensor
Integrated Temperature Sensor
Touch Capacitive Sensing GPIOs (10 channels)
Low Power Modes (Deep Sleep, Light Sleep)
Support for External Interrupts on All GPIOs
Micro-USB Connector for Power and Programming
Supports ESP-IDF and Arduino IDE Development Environments
Wide Operating Temperature Range: -40°C to 125°C
Power Consumption: Ultra-low power consumption (as low as 5 µA in deep sleep mode
DWIN TFT DISPLAY
Key features of a typical DWIN 7-inch TFT Display:
7-Inch Touch Screen TFT LCD Screen
Resolution: 800x480 pixels
16.7M Colors (24-bit RGB)
Capacitive or Resistive Touchscreen Options
Wide Viewing Angle (Typically 70° - 80°)
Built-in Flash Memory (Typically 128MB to 512MB)
Dual-Core Processor for Graphics and User Interface
Multiple Communication Interfaces (UART, RS232, RS485, TTL)
Low Power Consumption
Operating Voltage: 5V or 12V (depending on model)
Wide Operating Temperature Range: -20°C to 70°C
High Brightness (Typically 300-500 cd/m²)
Integrated GUI Design Software (DWIN DGUS or TA Protocol)
Touch Panel Sensitivity and Calibration Options
Pre-loaded Fonts, Icons, and Widgets
Support for Images, Animations, and Custom Fonts
Multi-language Support
Durable and Long Lifespan
Support for Audio Output (Some models)
Easy Firmware and Interface Upgrades via Serial Port or USB
FINGERPRTINT SENSOR R503
Key features of the R503 Fingerprint Sensor:
Capacitive Fingerprint Sensor
508 DPI Resolution
Fast Response and Matching Speed
Stores up to 200 Fingerprint Templates
UART Interface (9600 to 115200 bps)
192 x 192 Pixels Fingerprint Image Capture
Embedded Fingerprint Processing System
Enrollment Mode for Adding New Fingerprints
High Security and Anti-Spoofing Capabilities
Low Power Consumption (~60 mA during scanning)
Operating Voltage: 3.3V to 6V
Operating Temperature: -20°C to 50°C
Compact and Durable Design
LED Indicator for Visual Feedback
Cross-Platform Compatibility (Arduino, ESP32, STM32, Raspberry Pi)
Configurable Sensitivity and Security Levels
Wide Software and Library Support (e.g., Adafruit Fingerprint Sensor Library)
Ethernet Module W5500
Summary of Key Features
Feature Description
Chip W5500 (WIZnet)
Interface SPI (Serial Peripheral Interface)
Ethernet Speed 10/100 Mbps
Sockets 8 simultaneous sockets (TCP/UDP)
Protocols TCP, UDP, IPv4, ICMP, ARP, IGMP, PPPoE, DHCP
Buffer Size 32 KB (16 KB TX, 16 KB RX)
Power Consumption ~132 mA at 3.3V
Operating Voltage 3.3V (some modules compatible with 5V systems)
Operating Temperature -40°C to 85°C
LED Indicators Optional (Link and Activity)
Dimensions Varies by module, typically small and compact
Libraries Supported by Arduino, ESP32, STM32, and other microcontroller platforms
Working Principal
Step 1: System Power-Up & Initialization
ESP32 Initialization: When the system powers up, the ESP32 initializes all the peripherals (R503 fingerprint
sensor, DWIN TFT display, and W5500 Ethernet module).
Step 2: User Interaction on DWIN Display
The user touches the "Start Attendance" button on the DWIN TFT touch screen.
The ESP32 detects this action through the touch input.
The DWIN display now prompts the user to “Place Finger on Sensor.”
Step 3: Fingerprint Capture by R503 Sensor
The user places their finger on the R503 fingerprint sensor.
The R503 sensor captures the fingerprint image and transmits the data to the ESP32 via UART.
The ESP32 reads the fingerprint data and formats it into a packet, ready to be sent to the server for
processing.
Step 4: Data Transmission via W5500 Ethernet Module
Once the fingerprint data is captured, the ESP32 initiates communication with the remote server using the
W5500 Ethernet module.
The W5500 module, which is connected to the ESP32 via SPI, establishes a TCP/IP connection with the
server.
The ESP32 sends the fingerprint data and any relevant metadata (e.g., user ID, timestamp) to the server for
further processing.
Step 5: Server-Side Processing
On the server side, the fingerprint data is received and processed.
Fingerprint Matching: The server compares the received fingerprint data with stored fingerprints in the
database to identify the user.
Attendance Logging: If the fingerprint matches an enrolled user, the server logs the attendance for that
user (including timestamp, user ID, etc.).
The server then sends back a response to the ESP32, indicating whether the fingerprint was matched or
not.
Step 6: Feedback to User
The ESP32 receives the server's response (successful or failed fingerprint match).
If the match is successful, the DWIN display shows a message like “Attendance Recorded” or “Welcome
[User Name].”
If the match fails, the display shows “Fingerprint Not Recognized. Try Again.”
Optionally, the DWIN display can also show additional information such as current date, time, or total
attendance count.
Step 7: Error Handling & Retry Mechanism
If the fingerprint capture fails (e.g., poor quality image or sensor error), the ESP32 will ask the user to place
their finger on the sensor again.
If the network connection fails while sending data through the W5500 Ethernet module, the system will
retry sending the data, possibly logging the error or displaying a "Network Error" message on the DWIN
display.
Methodology for Attendance Fingerprint Machine Project
This project aims to develop an attendance system using fingerprint authentication. The core components
of the system include an ESP32 microcontroller, a DWIN 5-inch TFT display, an R503 fingerprint sensor, and
a W5500 Ethernet module for network communication. The system will capture and verify fingerprints,
display information on the TFT screen, and communicate attendance data via Ethernet to a server or
database.
1. System Design & Overview
The project begins by designing the system architecture, which includes:
ESP32 Microcontroller: The brain of the system, responsible for controlling the fingerprint sensor,
processing data, and managing communication.
R503 Fingerprint Sensor: Used to capture and verify fingerprints for attendance.
DWIN 5-Inch TFT Display: Displays the user interface, such as prompts for scanning fingerprints and
attendance confirmation.
W5500 Ethernet Module: Handles network communication, sending attendance data to a central server or
database.
The system works as follows:
When a user places their finger on the fingerprint sensor, the ESP32 captures the fingerprint data.
The ESP32 processes the data and checks it against a local database or sends it to a server for verification.
The TFT display provides feedback (e.g., "Fingerprint Scanned", "Attendance Marked", or "Access Denied").
The W5500 Ethernet module transmits the attendance data to a remote server or cloud-based system for
record-keeping.
2. Hardware Setup
2.1 ESP32 Microcontroller
The ESP32 acts as the central controller for the system. It communicates with the other modules and
handles the logic for fingerprint processing, user interface display, and network communication.
The ESP32's GPIO pins are used to interface with the fingerprint sensor, TFT display, and Ethernet module.
2.2 R503 Fingerprint Sensor
The R503 fingerprint sensor is connected to the ESP32 via UART (Universal Asynchronous Receiver-
Transmitter) protocol for data transmission.
The fingerprint sensor captures the fingerprint and sends the data to the ESP32 for processing and
verification.
2.3 DWIN 5-Inch TFT Monitor
The TFT display is used to provide a user interface for the system. It will display messages such as "Place
Finger", "Fingerprint Scanned", and "Attendance Marked".
The ESP32 communicates with the display via a serial interface (UART or SPI), depending on the
specifications of the DWIN display.
2.4 W5500 Ethernet Module
The W5500 Ethernet module provides network connectivity to the system. It connects to the ESP32 via the
SPI (Serial Peripheral Interface) protocol.
The ESP32 uses the W5500 module to send attendance data to a server over the local network or the
internet.
3. Software Development
3.1 ESP32 Firmware
The firmware for the ESP32 will be developed using the Arduino IDE or the ESP-IDF framework. The
firmware will manage hardware communication, fingerprint processing, and network connectivity.
Key functionalities:
Fingerprint Enrollment and Verification: The system will have an enrollment mode where new fingerprints
can be added to the local or remote database.
Fingerprint Matching Algorithm: The ESP32 will use libraries (such as Adafruit Fingerprint Sensor Library) to
compare captured fingerprints with stored fingerprints.
Network Communication: The Ethernet module will be used to send attendance data to a central server or
cloud database. This will be developed using TCP/IP protocols and HTTP requests.
3.2 Display Interface
The user interface will be designed to be intuitive, providing clear instructions for users. The TFT display will
show prompts such as:
"Place your finger"
"Fingerprint scanning in progress"
"Attendance marked successfully"
"Fingerprint not recognized"
The display will be updated in real-time based on feedback from the fingerprint sensor and the ESP32.
3.3 Database and Server Integration
The system will send the attendance data (e.g., user ID, timestamp) to a remote server or local database via
the Ethernet module.
A simple server (developed using Python, [Link], or PHP) can be set up to receive data and store it in a
database (e.g., MySQL or SQLite).
For cloud integration, platforms like Firebase or AWS IoT can be used to store attendance data.
4. Testing and Debugging
Unit Testing: Individual components, such as fingerprint registration, matching, and network
communication, will be tested separately to ensure proper functionality.
Integration Testing: After unit testing, the complete system will be tested to ensure all components work
seamlessly together.
Debugging: Any issues found during the testing phases will be debugged using tools like serial monitors or
logic analyzers.
5. Deployment
Once the system is fully tested and functional, it will be deployed in a real-world scenario. The deployment
process includes:
Physical Installation: Mounting the fingerprint sensor and display in a convenient location for user
interaction.
Server Setup: If using a remote server, ensure the server is running and accessible via the Ethernet module.
Data Backup: Implementing a system to regularly back up attendance data, either locally or in the cloud.
6. Conclusion
By integrating the ESP32 microcontroller with the R503 fingerprint sensor, DWIN TFT display, and W5500
Ethernet module, this project seeks to create a reliable, efficient, and cost-effective attendance system. The
system will provide a user-friendly interface for employees to log their attendance and allow administrators
to track attendance data in real-time via network communication.