Inspiration
The inspiration for SeatSync was the pressing need to find spaces to study in the Zachry Engineering building. Because there are so many students here at A&M, the available study spaces, which are unable to be reserved, will fill up quickly. This is a problem for many students, but for us, a solution came in the form of imitation of the parking spot occupancy sensor system found in many of the parking garages on A&M's campus. We set out to create a solution which utilizes both hardware and software to monitor study spots for availability and to give live readings of spot occupancy to an online interface.
What it does
SeatSync combines an array of IoT microcontrollers, paired with sensors, sending real time data to a database to process readings for display to a front end interface. The user-friendly interface allows students to see which study spots are currently occupied.
How we built it
The SeatSync prototype device was made using a a battery powered ESP32 microcontroller, wired to an HC-SR501 Passive Infrared Radiation Sensor. The firmware for the device was programmed in C++ and uses HTTPS posting to send the data to a locally hosted server, which stores the values in a SQL database. From there, the data is transferred to the front end in the form of an HTTPS get request. Finally, the front end was written in Flutter.
Challenges we ran into
For the most part, it was straightforward to build each subsystem (hardware, server, front-end), but the coordination of each subsystem to transmit data between each other was a tedious process. For instance, it was difficult to get the API to work with all of its interfaces. Because they were written in different languages, it was difficult for the front end and back end to work together. On the app side, the main challenges were visuals. Finding the floor map for ZACH were available, but the full campus map was difficult to find.
Accomplishments that we're proud of
We are incredibly proud that the prototype functions as our vision intended, and that we were able to persevere through all of the errors in development.
What we learned
We each gained experience in our respective technical aspects of the project. Hardware design, database development, and web development were each skills needed of the team in order to get SeatSync to work. Many of these platforms and languages were unfamiliar to us before we started, so there was a great deal to be learned.
What's next for SeatSync
The project is an idea that is meant to solve a problem. If it can be commercialized and help others, that would be excellent. The server and interface can easily accommodate more SeatSync devices in order to build an effective network of study spot monitors.
Log in or sign up for Devpost to join the conversation.