Inspiration
We noticed that the number of fires, whether wildfires or building fires, has increased drastically over the years due to climate change, drought, wildland-urban factors, and poor fire management. We decided to put our efforts into this matter to a better means of mitigating the amount of damage caused by a fire. We wanted to create a device that would detect and immediately notify appropriate personnel in the event of an unpredictable scenario.
What it does
Our device is a self-sustained alerting system designed to detect and alert smoke, carbon monoxide, and fires. The main source of power is from an array of solar panels at the top which charges a rechargeable battery during the day and switches to that battery at night. In the event of carbon monoxide, smoke, or fire, an internal alarm will sound, and the relevant consumers will be notified through email.
How we built it
For power, we have an array of four solar panels at the top wired in series which provide the main source of power for the device. Connected to the solar panels is a rechargeable battery (rated 10,000 mAh), which charges throughout the day. They are connected using a car plug to USB converter, allowing us to properly charge the battery without compromising the battery, the device, and the surrounding environment (basically so the battery doesn't blow up). The battery then powers a Raspberry Pi 3B+. The Pi contains all of the communication features of this project. The Pi connects to the smtp server, which is necessary for sending alerts when the sensors are triggered. The Pi is also constantly reading the outputs of the Arduino through the serial library, where it reads the outputs in hexadecimal and sends an alert if the specific outputs that correlate to sending an alert are received. The code on the Pi is coded in Python. The Arduino is powered by the Raspberry Pi since we also use the connections for data transfer. Connected to the Arduino are the three sensors, a smoke sensor, a flame sensor (detects fire), and a carbon monoxide sensor. Each of these sensors is constantly reading its surroundings and will reach a "high" state once they detect their respective elements. If one of these sensors is triggered, the Arduino will output a call word, which will be received by the Raspberry Pi. The code for the Arduino is coded in C++.
Challenges we ran into
Everything we tried didn't work the first time. Trying to set up the email system had us run into server connection errors, internal hosting errors, and python syntax errors. The connection between the Raspberry Pi and Arduino was constantly spotty, and conversions from decimal to hex caused many internal reading errors. Working with the sensors was difficult too since they were extremely inconsistent and were always fluctuating.
Accomplishments that we're proud of
Despite all of this initially not working, we managed to get it to work and we are proud of that.
What we learned
We learned how to: 1) Write code to send an email 2) Connect a Raspberry Pi to an Arduino 3) Create a self-sufficient device (from a perspective of power) 4) Have two scripts in two different languages (Python and C++) run in tandem
What's next
For future work, we would like to make the device much smaller and also add methods to send text messages for alerts. We also want to add real-time data surveillance. Another shortfall we have is that there is a lack of WiFi access in remote areas, so we want to add a sim module to have connections in these remote areas.


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