Inspiration
I lost my dorm room keys last week. And I am for sure not the only one. At least 20% of all college students in the US lose their dorm keys each academic year and have to pay $100+ to replace their lock and the keys of their room/apartment mates.
What it does
It is a college dorm door unlocker system for each door where there is an RFID mounted on the outside and a knob unlocker on the other end. Beyond the hardware system, we have a web app that allows users to review and manage door access for each system.
How we built it
Hardware: The core of our system is two ESP32 boards running custom TCP protocols on top of the FreeRTOS operating system. The Scanner board uses a RC522 sensor to read RFID data and send it to our server, which verifies it and forwards any accepted IDs to our lock board which fires a relay powering a DC brush less motor which actuates our door. Web Application: We used React + Vite on the front end and Java Springboot MVC on the backend with a PostgreSQL database hosted on Render. The React client allows users to sign up a new RFID card into a door system and sign into the door-system-specific dashboard to view the door access history and manage access.
Challenges we ran into
Hardware-side: Hacking up the embedded software to control the door opener motor and connect to the backend proved to be a non-trivial task. We had to figure out a few quirks and intricacies like circumventing ESP32 wifi band incompatibilities with the local network and setting up the right protocols for TCP communication between the scanner and unlocker chips.
Software-side: Setting up the proper database schema/architecture and fully comprehending the user requirements required a few back-and-forths and trial and error. Once we got that figured out, ensuring proper communication with the RFID chip sign-up request posed some trouble but we powered through it.
Demoing: Since we clearly were not able to bring in a college door and neither a strong enough motor system for it anyway, we have to figure out the most convenient yet realistic way to demonstrate a proof of concept of the whole system working together.
Accomplishments that we're proud of
We are very proud of successfully setting up this hardware + full-stack project within the 36 hours of the hackathon while spending some time enjoying the weekend.
What we learned
We learned a great deal about the different intricacies when it comes to building a hardware hackathon project as it is our very first hardware project! We got to apply a lot of concepts from class including TCP networks and protocols, database schemas, low-level/embedded systems programming and more!
What's next for Keyless Campus
Scaling Keyless Campus to all dorm doors for all US colleges is the next step!
Built With
- c
- esp32
- java
- mvc
- postgresql
- render
- rfid-rc522
- spring


Log in or sign up for Devpost to join the conversation.