Inspiration

When people are having fun, they often forget to keep track of how many drinks they've consumed or how much time has passed between drinks. Controlling alcohol intake can be a large issue, especially alongside drunk driving and sexual assault. Thus, we came up with the Smart Cup in order to help bring this issue more light as well as bring about a solution.

What it does

There are three levels of alcohol intake that are indicated by three different LED lights. Each level indicates an increase of alcohol intake per drink, measured based on the fact that most alcohol comes in 1.5 oz of 40% alcoholic concentration. The Arduino 101 board then send a signal back to the app to track how many times a person has finished a drink and at what intake, at which point the drink resets and the person can re-choose how many drinks they consume. The app then tracks all this data and calculates the person's BAC, based on the weight and biological sex of the person and determines whether or not their levels are getting dangerous and whether others should be notified. The app also allows people to call a Lyft with their home address present so that they can easily get back if they need to.

Those who aren't drinking are also able to choose to support others who are drinking. In this case, the person signs into the app and will be prompted by the app to look for people and colors based on how high and dangerous their BAC is. They can then reach out to help the person and get them back home if necessary.

Also, our cup is built so that the only way to set a drink down is by placing the cup completely upside down so that nothing can get into a drink without the person's knowledge, or without the person letting go of their cup.

How We built it

We used an Arduino 101 to track the number of drinks and the amount of time that has passed since they started drinking. The number of drinks was tracked using an IMU that measured how high the bottom of the glass was lifted to calculate whether or not a drink was fully consumed. The alcohol content of each drink was indicated by LED lights so that the user is aware of how many drinks they are consuming. We then used the internal BLE to send a signal to our app, which was coded in React-Native for iOS apps.

Challenges We ran into

There were limited hardware resources that we could use so some functionality of the cup is a little different than intended. Also, since none of us had ever used React-Native before, learning the syntax and implementing certain features took a longer time. There was also a large experiential difference between team members so distributing tasks was a bit difficult at times.

Accomplishments that We're proud of

Getting the cup to work! And of course, being able to say that we managed to implement an iOS app in a language we had never used before and succeeding was great.

What We learned

While making the app, we learned how to use React-Native as an iOS app developer. This was a huge component of what we learned at the hackathon as none of us had used it before. We also learned that working together and maximizing each person's potential and specialties was very important.

What's next for Smart Cup

For the future development of Smart Cup, we would like to do some more refining and careful problem-solving with the features of both the hardware cup and software app programming. Certain features would include creating a more aesthetically pleasing outer shell around the cup that will contain the hardware so that it isn't as bulky when holding it. We would also have a purse and battery pack for easy carrying as well as a self-closing lid to stop the user from drinking when their BAC reaches a certain level. Also, for the app, we would want to focus more on the design and graphics. In addition, we would want to better develop some of our features in the app, such as our bluetooth function and Lyft ride service, so that it is as accurate and helpful as possible.