Inspiration

As STEM students, we’ve often struggled with harsh deadlines accompanied by a lack of good study space. We’ve set out to address this problem for students by creating something that helps them maximize their focus and ease the stress of academics. Much of our inspiration came from considering the needs of neurodivergent students in finding the best conditions where they can study without concern for overstimulating classrooms and overbearing lights. It also allows students who feel alone when studying to find places that feel comforting through a comfortable level of ambient noise.

What it does

Our device automatically connects to WiFi, sending real-time data based on temperature, humidity, CO2, noise, and light levels to our website. Users can connect and view data outputs from any device, giving them detailed information about potential studying locations on campus. On our website, we provide a comprehensive coordinates page that provides users with information about every sensor device and shows its exact coordinates. We also created an interactive map that shows every device connected and also provides information on their data once pressed on, showing users exactly where they should go to study.

How we built it

Once we had an idea, we started by planning our tech stack and APIs. How is everything meant to connect? Once the Hackathon officially started, we began by setting up the boilerplate for our software and acquiring the necessary hardware to start building, including a DHT11, a CO2 sensor, an LED microchip, a microphone, and an LDR, all of which were connected to an ESP32S. Our software included React.js for the frontend, Flask for the software backend, Arduino IDE for the hardware backend, and finally Firebase for our database. Eventually, our attention shifted to prioritizing the hardware. Our project revolves around data from the sensors. We completed the physical build and encased it within 3D printed cat boxes. Once we completed the hardware, all that was left to do was connect everything. The backend had to be connected to the frontend, and data must seamlessly flow between all layers. This involved figuring out import functions, database security, and plenty of debugging.

Challenges we ran into

We learned a lot through this experience. Many of us had never used Flask, React, Typescript, or Firebase. We had a lot of components; having to create hardware, frontend, backend, code for the hardware, and a database. Integrating all of these components was incredibly stressful at times; however, in the end, it was very rewarding. There were some challenges in finding some of the sensors and working with the NodeMCU-ESP32S. We also never implemented a Gemini chatbot before. We tried to overcome all these challenges and ended up still creating a fully completed, amazing final project.

Accomplishments that we're proud of

Through this process, we had to overcome quite a few difficulties within our project. Incorporating the back end with the front end was incredibly challenging, and we’re very proud of our final product. Some of us were also quite unfamiliar with certain components of our project, yet we all persevered and managed to achieve what we strived to do.

What we learned

Planning everything, down to every function in every layer, makes implementation much easier in the end, despite how complicated it can seem. More background knowledge, as well as practice, on circuits and boards, would also be helpful when working on such in-depth projects such as this. We also learned more about tech stacks and file structure organization, and how to best implement them.

What's next for Give Me Peace

Given the low price of Give Me Peace (around $35 per device), this project is incredibly accessible to students. We have discussed working with professors to use this as a teaching module, which will be a very beneficial experience for the students and provide us with a larger dataset. Following this, we could be able to sell these devices to students. We want to polish the website further and continue our goal of adding Gemini to give recommendations to students based on their preferences.

Share this project:

Updates