Maria Paula Saba

Wellness Mirror

Wellness is a mirror that reads a user's quantified self data, like sleep and physical activities, and translates these into different colors and blinking patterns on the mirror's illuminated frame - changing the user's reflection according to his own data.

Live Web,Project Development Studio (Danny Rozin)

Wellness is a mirror that reads quantified self data, more specifically sleep and physical activities from the Fitbit device, and changes its illuminated frame according to the data.

Wellness mirror consists of a regular mirror with a boxed frame and a LED strip that is controlled by an Arduino Yun and a motion sensor that detects if there is someone around. The Yun communicates with a website that gets the user Fitbit data and calculates a state to be displayed in the mirror. In the website, the user can choose different time ranges and get the average if more than one day and visualization modes (overall mood and by percentage).

In overall mood mode, the whole frame has one single color, which is mapped to user sleep duration while blinking patterns are mapped to number of steps. In percentages mode, the full strip represents the 24 hours of a day divided into 5 different sections: minutes of sleep (blue), sedentary (cyan), light active (yellow), fairly active (orange) and very active (red).

This project explores how quantified self data can be translated into more poetic and abstract representations, instead of only numbers, graphs and charts and how we can use daily objects to smoothly add data to our lives.

People interested in Quantified Self (for now, restricted to Fitbit users) and alternative ways of displaying data.

User Scenario
User wakes up and goes to the mirror. It senses the user presence and lights up with user's overall mood data from the previous day. If user wants to see more detailed information or check another day, he opens the web app in his phone and changes to percentage mode. When he leaves, the mirror automatically turns off.

Mirror frame: 100 Neopixels in a LED strip from Adafruit and a PIR motion sensor under a laser cut frosted plexi.

Arduino Yun: connects to the web using the Bridge library and REST API to get values.

Node.js: web server that talks to the Fitbit API, using Temboo for OAuth authentication, to get values, calculates output and post data to the arduino.

Responsive html+css: front-end for selecting time range and visualization mode.