My journey .
From a relay and two timers to a full attendance system, this is how the work has grown.
- Started building
Arduino Uno dual-timer relay switcher
A hands-on first hardware build: two timers driving a relay, with a four-state button machine, debounce handling and EEPROM-saved timings (versions v4 to v4g). It taught me that most bugs live in the gap between the code and the real wiring.
Arduino UnoC++RelayEEPROM - Leveling up
RFID attendance firmware on ESP32
Moved to the ESP32 with an RFID reader, RTC, SD card, OLED, buzzer and a multi-gesture button. Went through six major firmware versions, fixing SPI conflicts, watchdog resets and SD corruption along the way.
ESP32MFRC522SD cardRTC - Going full-stack
Companion web portal
Built a Next.js portal on top of a Google Apps Script and Google Sheets backend: live attendance counts, reports, a landing page with a live counter, and a language switcher.
Next.jsReactGoogle Apps ScriptGoogle Sheets - Shipping for others
School landing page & client-style work
Clean, responsive sites for school and small-project needs, which is also where the packages on this site come from.
Next.jsTailwind CSS - Next
Parent-notification bot
Planning a free, always-on messenger bot that tells a parent when their child taps in or out, with its own backend dedicated to user management.
PlannedBotAPI design
