Small steps. Big impact.


Hack Night at Fitbit


Each month all San Francisco Fitbit employees are invited to join in a hack night project. This casual event is an opportunity for employees to tinker and participate in various fun projects. The first few hack nights focused on learning to solder using various kits from Adafruit and Sparkfun — some favorites were TV-B-Gone, MiniPOV and Electronic Dice. In another other hack night we added physical feedback to our automated build system. In the case of a failed build a robot voice speaks the engineer’s name and blinky lights are fired off.

Our most recent project was a pair of office thermometers that graph real-time temperature readings using an online data graphing service called Cosm. Indoor office temperature tends to fluctuate throughout the day. Many employees are quite vocal (even dramatic) about their temperature experience, “My blood is boiling, I’m a goner for sure” or “Brrrr, I can’t type, I’m shivering too much”. Temperatures In the mid 70s °F seem to please the most people most of the time.

To get a bit of objectivity on the temperature discussion we decided to provide a reference for each of our two San Francisco locations by having real-time temperature readings posted to a place everyone can see, a web page. If you’re interested in trying something like this yourself, just keep reading.

Sample of the temperature data graphs

Geek alert: the rest of the article gets more into the nitty gritty details of this project.

The project parts list:

  • Analog Temperature sensor (TMP36)
  • Electric Imp + April prototyping board
  • USB cable A/MiniB (you probably have this)
  • Breadboard

note: all parts available from for ~$50

The two main components of this project are:

  1. get a continuos stream of temperature readings from the temp sensor
  2. send that stream wirelessly to the Cosm internet service via Electric Imp

(the small black nub in the picture above is the temp sensor)

The temp sensor utilizes 3V provided from April board and has an analog data pin that streams a voltage reading proportional to the temperature. Temp °C = 100 * (reading in V) – 50.

The Electric Imp quickly and easily pairs with your wi-fi network. Then you are linked to their cloud servers where the code that runs on the Imp is stored and edited via their online IDE. They have a nifty way to pair networks via an iPhone/Android app that simply translates your SSID/password into black/white flickering read by a photo sensor on the Imp. They call it the blink up process.

Once the Electric Imp is paired to your network and the breadboard wires are connected correctly, all that is left is to program the Imp in the planner IDE. Some pre-configured ‘nodes’ are provided in the planner IDE. One of these ‘nodes’ happens to be Cosm which made this project much easier to finish.

If you are ready to make this project, visit my post on the Electric Imp Forum. More details and complete instructions can be found on that post.