We were online and came across a post where someone wished that they had a bathroom tile that was also a scale. From this, we thought of displaying the weight on the bathroom mirror. Finally, we realized that we could share much more information through the internet of things.

Also, mornings suck.

What it does

Reflect superimposes information on a reflection of the user, allowing users to multitask. The user has access to the time, date, weather, their calendar, estimated time of arrival to work (Google Maps driven), estimated Uber cost, stocks, news headlines, measured weight, calculated body-mass index, calories burned throughout the day (Google Fit API driven, to be implemented), and an estimated energy level. The user can access all this information at a glance hands-free. The mirror uses a LEAP motion sensor to let the user switch between two panes with a simple swipe.

While you're brushing your teeth, fixing your tie, or doing your hair, you can focus on what's important - the day ahead.

How We built it

Scale - We reverse engineered the scale to push weight readings through a Spark Core to our server. This way, Reflect could receive live data directly. Our team conducted circuit analysis with probes, soldering, and experimentation to build the new circuit and math relationship.

Energy Levels - We researched Myo, its scientific accuracy, and the correlation between EMG data and muscle fatigue in academic research on Pubmed. Through this, we confirmed the feasibility to correlate frequency with muscle fatigue. So, we obtained the data from Myo's eight sensors, ran them through a Fast Fourier Transform, and took the mean of the frequency distribution. Since the frequency reflects the activity of strong and weak motor units in muscles, we can compare the user's means over time to predict how energized they are relative to their past. The % reading is interpreted as '100 - percentile ranking'.

The main interface was done through HTML5, CSS, and JavaScript. A number of APIs (Uber, Google Maps, etc.) were used to support the retrieval of information.

Challenges We ran into

Myo - The Myo documentation was confusing. While we tested the device to verify its functionality and found the necessary libraries but we could not get it to work reliably.

Scale - While reverse engineering the scale, there was no supporting documentation for the internal circuitry. There was a lot of trial and error finding the right pins to interact with to receive the voltage readings from the pressure sensor and correlating the change in voltage with the person's weight.

Accomplishments that We are proud of

As a team, we have put together a full-stack project with a clean UI and smooth UX. We were able to accomplish most of our ambitions and visions for the project idea coming in. We shared cool ideas with other hackers and built on our respective creativity.

What We learned

Many of us were not experts in design, front-end and back-end development so this experience was great for learning new languages and techniques and exploring new areas. We also learned many new APIs.

What's next for Reflect

We hope to get the Myo portion working and build the accuracy of the scale. Also, we would like to get the Google Fit data to be expanded upon.

Built With

Share this project: