Blind date going south? Caught in an uncomfortable conversation with a weird person at a party? Everyone has been there, but how can you politely excuse yourself without drawing too much attention? More seriously, how can you discreetly alert a friend or law enforcement when you are in a threatening situation? These were the questions we tried to answer.
What it does
Get Out is based on the idea of a wearable Bluetooth device that allows you to either fake a phone call on your own phone or call an external number after a certain amount of time has passed. The wearable device is equipped with a toggle switch and a push button, and communicates to an application on the user's phone. The toggle switch allows the user to switch between modes (faking a call on their own personal phone or contacting an external number). To start the timer for the device, the user presses the push button once. To disable the timer, the user can push the button again before the timeout period ends. After the timeout period expires, the ringtone is set off, or an external phone call is made to a predetermined phone number. To terminate the ringtone, the user presses the button twice. Logically, to end the external phone call the user ends the call as normal. If the button is quickly double pressed while in the external contact mode, a text is sent to the predetermined number.
How we built it
Our wearable device is simulated by a Bluetooth-enabled Arduino 101, a toggle switch, and a push button, all connected to a breadboard. Our Arduino code recognizes seven states determined by the user: Toggle state "A", with either zero, one, or two button pushes within the timer window, and toggle state "B", with either zero, one, or two button pushes in the timer window, or a quick double push of the button. The sketch then sends a hex value representation of the current state (i.e 0xA0, 0xB1, etc) to the application over Bluetooth. The phone app reads in this input and determines the appropriate action.
Challenges we ran into
Java Bluetooth API with Android. 'Nuf said.
Accomplishments that we're proud of
Coming into this hackathon, we did not have any pre-formed ideas in mind. Therefore, to come up with this project, refine the implementation, and create the functionality that we have achieved exceeded our expectations.
What we learned
In creating this project, we were able to interact with new Arduino hardware that none of us had used before, as well as explore the
hell intricacies of Bluetooth Android-java code.
What's next for Get Out
As of right now, the phone app is more back-end and not intended for interfacing with the user. In the future, goals for this project include improving the user interface, allowing the user to set the length of the timer, as well as the phone number called. With a more appealing UI, the functionality of the physical switch could also be implemented in the phone app to be determined by the user. Another addition to this project could potentially include connecting the app to a server, allowing another person with an echo or other prompting device to check on the status of the user through the server interface. With the new texting capability, the ability to text the geo-location as well.