Just how cold is that window? Winter monitoring with the TI Sensortag, Node-RED, and Freeboard

SensorTag

Our living room has lovely (old) wooden windows. When it's cold, the windows get cold. Last year we got some lovely thermal curtains to insulate.

I thought I'd use some of the equipment I had to see just how cold the windows were and how much warmer the curtains are to the touch.

The setup:

Macbook Air running OS X 10.9 (Mavericks), Node-RED 0.9.1, Freeboard, TI Sensortag. I'm using RabbitMQ as my MQTT message passing system, but that's not strictly necessary for this application.

The Macbook has support for Bluetooth Low Energy (BLE) which is what the Sensortag talks. Support for BLE in Node-RED is provided by the "noble" module, which the "sensortag" module uses to communicate with the device. Freeboard is a visualization dashboard with some simple widgets to display data coming to it.

This report on how to use the Freeboard dashboard with Node-RED has all of the difficult parts. It provides a websocket listener for Freeboard, and you use the built-in websocket transmitter on Node-RED. There's a very tiny bit of logic to pull apart the data coming off the Sensortag; it could probably be less if I were more clever.

The Node-RED code looks like this

Screen Shot 2015-01-27 at 10.00.33 PM

and the very simple dashboard I put together to test this looks like this

Screen Shot 2015-01-27 at 9.07.09 PM

There's a catch to using the TI Sensortag; it sometimes turns itself off, to save battery. To correct this you can install new firmware on the device to disable the battery saving mode. The folks at MyWeatherCenter provide a link to their firmware which deals with the issue, at the cost of lower battery life.

The results: the windows are way, way colder than the inside air (about 45 degrees), but the curtains read much warmer (about 60 degrees). Thermal curtains for the win!