Data Logging: RFID Attendance System
While the RFID Race Timer tracks high-speed athletes, the Attendance System focuses heavily on database management, string parsing, and reliable, long-term non-volatile data storage. It is the perfect project to learn how to write to physical SSD/SD files directly from C++.

Database Array Management
The system must recognize hundreds of employees.
- The Hash Table: The Arduino code contains massive arrays connecting UIDs to human names.
String userUIDs[3] = {"04EAF12B", "1A2B3C4D", "9F8E7D6C"};String userNames[3] = {"Alice", "Bob", "Charlie"}; - The Scan: Bob taps his white card to the MFRC522 reader module.
- The Arduino loops through the
userUIDsarray. It finds a match at index1. It knows it's Bob!
Constructing the CSV Log (MicroSD)
The Arduino must save this data permanently so HR can read it on Microsoft Excel.
- It queries the DS3231 RTC Module to get the timestamp:
2026-10-25 08:55:00. - The code uses the native
<SD.h>library to openlog.csvon the MicroSD card. - The Construction:
dataFile.print(userNames[1]); dataFile.print(","); dataFile.println(timestamp); - Output: The file now securely holds a flawless, un-erasable line
Bob, 2026-10-25 08:55:00. - The Arduino plays a happy beep, flashes a green LED, and writes "Welcome Bob" to the 16x2 Text LCD.
Necessary Office Hardware
- Arduino Uno/Nano/Mega.
- MFRC522 RFID 13.56MHz SPI Module + Keychain Tags.
- DS3231 RTC I2C Module.
- MicroSD Card SPI Breakout Module.
- 16x2 I2C LCD Display.
- Piezo Buzzer for audio confirmation of a successful scan.