January 24, 2009 AT 8:49 pm

Wattcher! For when you want to watch your Watts

(Last week, Phil T. & I entered our prototype networked power meter “Tweet-a-watt” into the Greener Gadget competition here in New York. After much demand for how to do such a thing, I’ve decided to post up this work in progress)

[flickr 3218483639 ]

This project documents my adventures in learning how to wire up my home for wireless power monitoring. I live in a rented apartment so I don’t have hacking-access to a meter or breaker panel. Since I’m still very interested in measuring my power usage on a long term basis, I will build wireless outlet reporters. Building your own power monitor isn’t too tough and can save money but I’m not a fan of sticking my fingers into 120V power. Instead, I’ll build on the existing Kill-a-watt power monitor, which works great and is available at my local hardware store.

My plan is to have each room connected to a 6-outlet power strip which powers all the devices in that room (each kill-a-watt can measure up to 15A, or about 1800W, which is plenty!). That way I can track room-by-room usage, for example “kitchen”, “bedroom”, “workbench”, and “office”.

This project will show how to:

snag data from a Kill-a-Watt power meter

use an XBee to read analog sensor data remotely

put XBees into low power sleep mode

have multiple sensors transmit to one receiver

parse XBee sensor data using python on a home computer and/or an Arduino-type thing

utilize Google App Engine ‘cloud computing’ to store that data and display it for later analysis

11 Comments

That is really nifty. I was just messing with collecting home energy usage data last month and stumbled upon the fact that google spreadsheets allows you to insert data from external sources and tie that to visualization gadgets. Once you bang out a script that outputs your data as csv, you could display it like those sexy google finance-like graphs with about 5 minutes of work.

Nice project! This is something I’ve been intending to get around to doing, myself.

One suggestion: Add one chip and a few external components to insert an RMS-to-DC converter between each sensor tap point and the XBee input.
Then you can drop the sample rate to something like once per second, and not have to track the waveforms. An AD737 goes for $6 to $12 at DigiKey.

One reason to venture into that is to “possibly” display a larger data set. Right now the browser chokes while chewing through anything more than a few thousand data points. I don’t know if it’s the visualization code or the ajax in the background querying data from Google spreadsheets which is pulling the data from my machine. However, I personally find developing in javascript to be quite unpleasant and try to avoid it if I can.