← All projects
2025IoT & Hardware · Full-StackCompleted

Electronic Voting Machine

RFID-gated voting on an ESP32, with the count updating live on screen.

Electronic Voting Machine

The problem

Paper ballots and closed electronic machines both ask you to trust a count you never see being made. We wanted the opposite: a physical vote, gated by a card, with the tally visible while it happens.

What we built

The station is an ESP32 with an MFRC522 reader. The buttons stay dead until an authorized card is scanned; the status LED blinks while it waits and goes solid once the voter is cleared. Each of the four candidate buttons has its own LED, and a buzzer confirms the cast. Ballots go to a Node server, and a React dashboard shows the running count.

  • MFRC522 RFID gate, with buttons inactive until an authorized card is scanned
  • Four candidate buttons with matching LEDs, a fifth LED for RFID status, and a buzzer
  • Internal pull-ups on the buttons, SPI wiring for the reader (SDA, SCK, MOSI, MISO, RST)
  • Node web server and React dashboard with real-time counts
  • Recognized in the top 5 for the transparent, hardware-backed design

My contribution

What I owned on the team

Worked with the team across the ESP32 hardware and the web stack: the RFID authentication flow, button, LED, and buzzer wiring and firmware, and the Node and React tally dashboard.

How it turned out

A working demo in 2025: card in hand, button pressed, number moving on the screen a second later.