Hardware Breadboard Assembly Prototype
ESP32 NodeMCU connected to RC522 RFID reader, SSD1306 OLED screen, and Active buzzer modules.
Local-First School Attendance Management System
Zero-Cloud Latency, Tamper-Proof Local Auditing, and Real-Time Hardware Tapping Indicators
Executive Summary
The Local-First School Attendance Management System is a highly optimized hardware-to-software ecosystem designed for schools and institutions facing frequent internet drops. By utilizing a local-first architecture, the ESP32 scanner communicates directly with a local Express.js REST server hosting a fast, high-performance SQLite database.
The system features secure user validation, real-time hardware status cues via an **SSD1306 OLED screen** and **Active Buzzer**, and JWT authenticated admin endpoints, providing a bulletproof, zero-cloud operational model that stays 100% functional during WAN outages.
System Demonstration & Walkthrough
Watch the physical hardware scanner validation, screen/audio cue triggers, and local-first database checks in action:
Hardware Connection Specifications
The microcontroller interfaces directly with three peripherals using SPI and I2C buses. Below is the exact electrical mapping:
| Device | Peripherals Pins | ESP32 GPIO Pin | Protocol / Purpose |
|---|---|---|---|
| RFID Reader (RC522) | SDA, SCK, MOSI, MISO, RST | GPIO 5, 18, 23, 19, 4 | SPI Communication |
| OLED Display (SSD1306) | SDA, SCL | GPIO 21, 22 | I2C Communication |
| Active Buzzer | S/IN (Signal) | GPIO 15 | PWM Audio Feedback Cues |
Engineering Architecture Pillars
1. Local-First SQLite Database Engine
Utilizes better-sqlite3 for sub-millisecond database queries. By keeping the database file local to the host PC or Raspberry Pi server, the system has zero dependency on cloud databases or external APIs. Scans are logged instantly and safely stored in structured SQLite tables, ready for immediate audit access.
2. Hardware-Level Feedback Controls
The ESP32 firmware manages active, non-blocking hardware indicators. When an intern taps their card:
- The OLED display shows custom user profiles and validation feedback.
- The active buzzer generates distinct frequency pulses (short beeps for success, long pulses for invalid cards).
Interested in integrating offline-first IoT systems?
Let's connect to design secure, localized microcontroller endpoints and low-latency database systems.
Get in Touch →