Pitch video: https://youtu.be/gwVVdpQkcKc
Inspiration As freshmen who live in dorms with very thin walls, we've experienced the difficulty of having to deal with noisy neighbors. However, we also realize that a lot of the times students in a dorm aren't purposefully being loud; they simply don't realize how loud they are being. In order to make the lives of Penn's RAs and students easier, we decided to create Shhhut Alert.
What it does Shhhut alert works in two ways- as a ping sensor and an audio sensor to notify you via text if either you're being too loud or if someone is approaching your room.
How we built it Ping Sensor: Shhhut Alert uses a ping sensor connecting to an Arduino Uno board. The ping sensor constantly measures how far away an object is from it. The Arduino is programmed in a way that if the distance nears a set value, a text will be sent to your phone warning you to be aware of your noise levels. The programming aspect of this will be explained in the "WiFi Shield" section.
Audio Sensor: In addition to the ping sensor, an Adafruit Max 445 (elecret microphone amplifier) was also used. The microphone measures the sound level in a setting. Similar to the ping sensor, if the noise level in a room is above a preset threshold, the device will prompt a text message to be sent to the phone that's linked to the program.
WiFi Shield: The WiFi shield is a piece that lays on top of the regular Arduino board. The Arduino WiFi shield allows an Arduino board to connect to the internet using the WiFi library. The WiFi shield allows us to use the WiFi101 library, which in turn connected to ThingSpeak and Twilio (the services that provided the texting functionality). Twilio is a platform that allows you to programmatically make and receive phone calls and text messages using its web service API. We used the Twilio account’s auth token and trial number to send the texts to one of our iPhones when the noise level was too high or the ping sensor detects something nearby. ThingSpeak is the platform where you can send data from the Arduino and display it graphically in real-time. From setting up a ThingSpeak channel, we were able to obtain an API key, which was needed to implement our Twilio code.
Challenges we ran into The biggest challenge we faced was figuring out the best way to implement the text messaging portion of our project. During our time in the lab, we tested many different ways to send texts such as using a platform called Temboo and looking into different WiFi libraries that fit our project. Finally, we were able to use a lab from last year as a reference to explore the option of combining ThingSpeak with Twilio.
Accomplishments that we're proud of Despite occasional inconsistencies we faced, we are proud of finding solutions around the text messaging problems we had to have a functional device that serves its goal.
What we learned We learned a lot about the functionality of a WiFi shield. Since our device was so heavily reliant on the WiFi shield, we got the opportunity to understand how it interacts with the Arduino board and how it connects with outside programs like Twilio.
What's next In the future, we hope to improve our device in a number of ways. For one, we want to implement the texts only after a set curfew time. We also want to find a more effective way to recognize who's walking past your door (i.e. RA versus friend).