As freshmen ourselves, we were inspired to look at practical problems faced by your average college student. Living in the close quarters inherent inside of college dorms involves managing noise levels for the benefit of your hall mates, while also balancing your own needs for some banging background music. No one wants to be the resident who hears the knock on the door from their RA telling them they need to turn the music down, and with the RAD speaker you won't have to be!
What it does
The RAD speaker (with built in RA detection) works dually as a motion and sound sensor, in order to control the volume of your Bluetooth speaker. The motion sensor component detects whether someone is passing by your door, sending a message to your phone letting the user know to turn down the music. The sound sensor portion of our dual speaker controller uses a microphone to sense whether the volume of the music is too loud and automatically turns it down accordingly.
How we built it
The Motion Sensor: our motion sensor uses an Ardiuno Uno with an ultrasonic ping sensor connected through wiring to an Adafruit Bluefruit Friend Bluetooth module. The ping sensor detects a value of distance sending it back to the computer, which is programmed to send a message over Bluetooth to the users phone through the UArt app if the distance read is less than around 2ft.
The Sound Sensor: our sound sensor uses an Arduino Leonardo , which unlike the Uno has keyboard interaction capabilities, and a microphone sensor. The microphone sends back values of noise levels to a connected computer. We then created a program that would interact with the keyboard to turn down its volume when the microphone detected a value above a certain noise decibel. This works using the 'keyboard.writes' functionality of the Arduino Leonardo, which we used to control the 'up' and 'down' arrows of the computer which can change the volume of the computer and, therefore, the volume of a connected Bluetooth speaker.
Challenges we ran into
The main challenge we faced during the development of the RAD speaker was in the varying capabilities of our two Arduinos. When we first began implementing our project's design the plan was to build both the sound and motion sensors with our Arduino Uno and have both be connected through Bluetooth where each would control the volume of the speaker. Eventually after many failed attempts we realized that the the Uno did not have keyboard interaction capabilities, so if we wanted to control the volume using a keyboard we would have to use a Leonardo. The only problem with this solution was that the Leonardo did not interact with our Bluetooth module, so our ultimate solution was to treat our two sensors as two separate components of the same overall project, with our motion sensor using Bluetooth and our sound sensor controlling the keyboard.
Accomplishments that we're proud of
We are especially proud of getting our Leonardo to communicate with the computer keyboard, largely because it was the most time-consuming portion of our project, and it was a skill we learned and implemented outside of the structured labs we completed over the course of the semester.
What we learned
We learned a lot about how to interface between many different devices, communicating between our Arduino, sensors, phone devices, and computers. Outside of the technicalities of the project, we learned a lot about how a project changes and over the course of building the RAD speaker.
What's next for The RAD Speaker
A next step for the RAD speaker is to work on the overall look and structure of the device, including a way to mount the sensors to the outside of a dorm door, as well as a way to allow the microphone sensor to work without having to be attached to a computer.