EduTrack Pro: Smart IoT-Based Attendance System Using ESP8266 and RFID

EduTrack Pro: Smart IoT-Based Attendance System Using ESP8266/ESP32 and RFID

EduTrack Pro: Smart IoT-Based Attendance System Using ESP8266/ESP32 and RFID

Author: Sakshyam Bastakoti

Published: September 30, 2025

GitHub: github.com/sakshyambastakoti

Introduction

Attendance management is one of the most fundamental tasks in schools, colleges, offices, and events. Traditional methods like manual registers or roll calls are slow, error-prone, and inefficient. Advanced biometric systems exist but are often expensive, complex, and difficult to scale.

This inspired me to build EduTrack Pro, a DIY IoT Smart Attendance System that uses ESP8266/ESP32, RFID technology, and cloud integration to make attendance fast, reliable, and automated.

With EduTrack Pro:

  • Students or employees tap their RFID cards.
  • Attendance is logged in real-time in Google Sheets or Firebase.
  • Admins can view dashboards, reports, and analytics anytime.

This article is a complete guide to building your own system, including hardware setup, software, code, testing, and deployment.

Project Overview

EduTrack Pro is designed to be:

  • Simple to build – Requires minimal components.
  • Scalable – Works for a single classroom or large institutions.
  • Affordable – Total cost under $20.
  • Cloud-enabled – Attendance can be monitored anywhere.

How It Works

  1. RFID Scan: User taps their RFID card.
  2. NodeMCU/ESP32 Processing: Reads UID and checks validity.
  3. Real-Time Feedback: LCD and buzzer/LED indicate successful scan.
  4. Data Upload: UID, timestamp, and user info sent to cloud (Google Sheets/Firebase).
  5. Admin Monitoring: Web dashboard displays attendance, statistics, and reports.

System Flowchart

Components Required

Component Purpose Quantity
NodeMCU ESP8266 / ESP32 Microcontroller for processing and Wi-Fi 1
RFID RC522 Module Reads RFID tags/cards 1
RFID Cards/Tags Unique ID for each user As needed
LCD 16x2 with I2C Displays scan status 1
Buzzer Audio feedback 1
LED + Resistor Visual feedback 1-2
Breadboard & Jumper Wires For prototyping As needed
USB Power Supply 5V input 1

Optional: Push button for Wi-Fi reset/configuration.

Circuit Diagram and Connections

Circuit Diagram

RFID RC522 to ESP8266 Connections

  • SDA → D2
  • SCK → D5
  • MOSI → D7
  • MISO → D6
  • RST → D1
  • 3.3V → 3.3V
  • GND → GND

LCD I2C to ESP8266

  • SDA → D2 (GPIO4)
  • SCL → D1 (GPIO5)
  • VCC → 5V
  • GND → GND

LED & Buzzer

  • LED → D8 (GPIO15) with resistor
  • Buzzer → D0 (GPIO16)

Tip: For ESP32, adjust GPIO pins accordingly.

Software Implementation

NodeMCU / ESP32 Firmware

Required Libraries:

  • ESP8266WiFi.h / WiFi.h for ESP32
  • WiFiManager.h for easy Wi-Fi setup
  • MFRC522.h for RFID
  • LiquidCrystal_I2C.h for LCD
  • HTTPSRedirect.h or HTTPClient.h for cloud requests

// EduTrack Pro - Simplified NodeMCU Example
#include <ESP8266WiFi.h>
#include <WiFiManager.h>
#include <MFRC522.h>
#include <LiquidCrystal_I2C.h>

#define SS_PIN D2
#define RST_PIN D1
MFRC522 mfrc522(SS_PIN, RST_PIN);

LiquidCrystal_I2C lcd(0x27,16,2);

void setup() {
  Serial.begin(115200);
  SPI.begin();
  mfrc522.PCD_Init();
  lcd.begin();
  lcd.print("System Starting...");

  WiFiManager wifiManager;
  wifiManager.autoConnect("EduTrackProAP");
}

void loop() {
  if (!mfrc522.PICC_IsNewCardPresent() || !mfrc522.PICC_ReadCardSerial()) return;

  String uid = "";
  for (byte i=0; i < mfrc522.uid.size; i++) {
    uid += String(mfrc522.uid.uidByte[i], HEX);
  }
  uid.toUpperCase();

  lcd.clear();
  lcd.print("UID: " + uid);

  // Send UID to cloud server
  sendToCloud(uid);
}

Cloud Integration

You can use either:

  • Google Sheets: Deploy Apps Script Web App to receive UID and log attendance.
  • Firebase Realtime DB: Set up a Firebase project; ESP8266/ESP32 sends HTTP POST to update the database.

Web Dashboard

  • Hosted on Netlify/GitHub Pages
  • Fetch data via Google Sheets API or Firebase SDK
  • Display total attendance, absentees, charts

Dashboard Screenshot

Testing & Troubleshooting

  1. Check power connections
  2. Verify RFID scan
  3. Ensure Wi-Fi connection
  4. Test cloud logging via Serial Monitor
  5. Refresh web dashboard to confirm real-time update

Advantages of EduTrack Pro

  • Time-saving & automated
  • Low-cost solution (<$20)
  • Scalable for classrooms or offices
  • Real-time monitoring and analytics
  • Educational value for IoT learners

Future Enhancements

  • Add NTP time sync for accurate timestamps
  • Integrate face recognition with ESP32-CAM
  • Push SMS/email notifications for absentees
  • Support multi-class/multi-institution
  • Encrypt UID transmission for security

Real-World Applications

  • Schools/Colleges – Student attendance tracking
  • Offices – Employee check-ins
  • Events & Conferences – Participant logging
  • Libraries/Labs – Resource usage monitoring

Conclusion

EduTrack Pro demonstrates how affordable hardware, cloud integration, and IoT technology can modernize attendance management. This project is perfect for makers, students, and educators to learn IoT, RFID, and cloud dashboard integration. Customize, expand, and make it your own!

Contact: sakshyamxeetri@gmail.com

GitHub: github.com/sakshyambastakoti

Previous Post Next Post