What it does
This platform takes sensor data from a temperature/barometer sensor, air quality sensor, and camera to determine whether or not a window should be opened to improve air quality. The camera counts the number of people in the room. Based on that data, along with the values of the temperature and air quality sensor, will make the platform issue a recommendation if a window should be opened or not, and will also increase or decrease the fan speed..
How we built it
With the assistance of AI along with our knowledge, we built a database using MongoDB to store data from all of the sensors, as well as the number of people in the room from the camera, along with other pertinent information about the room. Using an Arduino Uno Q, we connected the sensors to Arduino App Lab in order to get data and send it to the website. The microcontroller half reads a Grove Air Quality Sensor v1.3 and a Grove SPA06-003 barometer, and passes them to the board's Linux half over Arduino's Bridge. A Python app there smooths the gas reading, subtracts a fresh-air baseline learned after warm-up, and publishes it over MQTT. MongoDB Atlas stores live room state, a time series collection of readings, the decision log and manual holds. An aggregation pipeline computes the "last 24 hours" stats. Live dashboard was made with Socket.IO and Chart.js. It works on a phone, laptop or projector, in light and dark mode, and shows charts with threshold lines, the decision log, device status and the manual controls.
Challenges we ran into
The largest issue was the hardware, we had a broken Raspberry Pi and then we were given a replacement Raspberry Pi that was also broken. We also had many issues getting the hardware and software to talk to each other. We were then given an Arduino that was also broken.
What's next for Smart Air Control (Nimbus)
We hope to be able to connect the window opening recommendation to an actual motor that would be connected to a window that would actually open and close based on the recommendation. Additionally, we hope to pack the sensors in a portable format that allows it to be installed anywhere.