BR3W: A Smart Coffee Machine

October 2019 to December 2019

Creative Labs at UCLA


Summary

The goal of this project was to create a smart coffee maker that would be controlled by an app. Users can set preferences such as how much coffee they want and what temperature the coffee should be at from their devices. My role as a software engineer in BR3W was full stack development where I worked on both the front end development with the app as well as backend work such as sending information through Bluetooth to the Arduino.

This was my first project with app development, so at the beginning of the project, I learned to use React Native from my teammates. We chose to use React Native because it allows us to develop apps suitable for both Android devices as well as iOS devices. Additionally, a few of our teammates knew React Native already which was helpful since we only had 8 weeks to develop the project. As with learning any new language, React Native propsed some challenges. For example, with the button objects provided, we weren't able to customize the look of it and thus had to implement a custom method utilizing Touchable Opacities. Additionally, we found out the hard way that React Native is asynchronous. It may optimize some code to perform before others if it would improve the performance of the app, which makes sense but is something we didn't realize. Thus, when the state was not updating as expected, we spent a long time trying to debug this.

My favorite part of this project was just being able to learn from really amazing people! Everyone on our team brought something unique to the team, and I really felt comfortable learning from and working with them. Just from helping out some members of the build team when I had finished my tasks, I got to learn more about how our device worked on the hardware side, allowing me to program the logic of the Arduino more clearly and concisely. Plus, our team was just so passionate to learn and motivated for a common goal which made this experience an unforgettable one :)


Additional Links:


Photo Gallery

part of team with the coffee maker

About half the team + coffee maker!

teammates demoing coffee maker

Teammates demo-ing the coffee maker to students

home screen of app

Home screen for our app

screen when coffee was being made

Screen to show coffee dispensing