Abstract
RFID Attendance System is an open-source Internet of Things (IoT) project. This is a smart RFID based student attendance system made for final year project with ESP32 and RFID-RC522 module. It is built using Arduino IDE and C++. It is a cost-effective and efficient solution for attendance management in schools and colleges. An IoT-enabled smart attendance system built using RFID technology, the ESP32 microcontroller, and a LAMP stack. This system not only tracks attendance but also controls access through a solenoid lock, providing an integrated solution for user authentication and data management. It is built using PHP, MySQL. Key capabilities include: RFID Authentication: Use RFID cards to authenticate users; OLED Display: Displays user details upon successful authentication; Access Control: A solenoid lock unlocks the entry for authorized users. The complete source code is publicly available on GitHub under the Apache License 2.0, making it a useful reference for students building an Internet of Things (IoT) mini project or final-year project.
1. Introduction
An IoT-enabled smart attendance system built using RFID technology, the ESP32 microcontroller, and a LAMP stack. This system not only tracks attendance but also controls access through a solenoid lock, providing an integrated solution for user authentication and data management.
2. Objective
This is a smart RFID based student attendance system made for final year project with ESP32 and RFID-RC522 module. It is built using Arduino IDE and C++. It is a cost-effective and efficient solution for attendance management in schools and colleges.
This project demonstrates how PHP, MySQL can be applied to a real-world Internet of Things (IoT) problem.
3. Key Features / Modules
- RFID Authentication: Use RFID cards to authenticate users.
- OLED Display: Displays user details upon successful authentication.
- Access Control: A solenoid lock unlocks the entry for authorized users.
- Web Dashboard: View and manage attendance records using a LAMP stack-based web interface with DataTables.
- Real-Time Updates: The server instantly updates attendance data.
4. Technology Stack
- ESP32: Microcontroller for handling RFID data and communication with the server.
- RFID-RC522 Reader: Reads RFID card data for user authentication.
- OLED Display: Shows user details and system status.
- Relay Module: Controls the solenoid lock based on the ESP32's signal.
- Solenoid Lock: Grants or denies access based on authentication.
- Power Supply: Provides power to the components.
- Microcontroller Programming: Code written in Arduino IDE for the ESP32.
- Backend:
5. System Requirements
General requirements for this technology stack — check the README for exact versions.
- PHP 7.4+ with a web server (XAMPP / WAMP / LAMP)
- MySQL / MariaDB
- phpMyAdmin (optional)
- Git (to clone the repository)
6. Installation & Setup
git clone https://github.com/bgmanu2426/rfid-attendance-system.git
cd rfid-attendance-system- Connect the RFID-RC522 reader to the ESP32 following the pinout provided in the code.
- Connect the OLED display to the ESP32.
- Connect the relay module to the ESP32 and configure it to control the solenoid lock.
- Attach the solenoid lock to the relay.
- Ensure the ESP32 is powered and connected to the internet.
- Clone this repository:
- Upload the Arduino code to the ESP32 using the Arduino IDE.
- Set up the LAMP stack on your server:
git clone https://github.com/bgmanu2426/rfid-attendance-systemFull setup instructions are in the project README.
7. Future Enhancements
Suggested extensions you can add to make this your own project.
- Add a mobile dashboard using Blynk or Firebase
- Store readings in a cloud database for history charts
- Add alerts via SMS / Telegram when thresholds are crossed
8. Viva / Review Questions
Common questions examiners ask for projects in this domain.
- Which microcontroller / board and sensors are used and why?
- How does the device send data (Wi-Fi, MQTT, HTTP, Bluetooth)?
- Where is the sensor data stored and visualised?
- How is power consumption managed?
- How would you secure the device and its communication?
9. Source Code & License
This project is developed by bgmanu2426 and published on GitHub under the Apache License 2.0. Please follow the license terms and credit the original author when you use or modify this code.
Want to build this as your internship project?
Work on an Internet of Things (IoT) project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.
Apply for Internet of Things (IoT) Internship