Philips Hue API Hacking

Here it is! My Python client for the Philips Hue system is done.

The Short:

It's available on Github.

Sample Usage:

from hue import Hue
h = Hue() # Initialize the class
h.station_ip = "" # your base station IP
h.get_state() # Authenticate, bootstrap your lighting system
# The first time, you have a minute between calling get_state() and pushing
# the button on your base station to authenticate your machine. It should
# Log and tell you if that is going to happen or not.
l = h.lights.get('l3') # get bulb #3
l.bri(0) # Dimmest
l.bri(255) # Brightest ...


WeMo API Hacking

WeMo Hacking part two!

In short! It works! miranda, with some tweaks and fixes is a good tool for tinkering with your Belkin WeMo switch with Python. I'd suggest starting with my toolkit here:

The WeMo is communicating over pretty standard UPnP, though like anything else, it has some quirks.

It wanted a very specific namespace string for the SOAP envelope that contained a trailing slash and Miranda wasn't sending that.

I also added the same User-Agent that the mobile app uses for the HTTP (via UDP for UPnP) headers, and fixed the ...


Things I Know about the WeMo boxes

I'm working on hacking my wemo. I'd like to determine how it talks back and forth over the network. What I know at this time is that when the mobile app is running both the mobile app and the wemo device are talking over UPnP

Belkin WeMo Switch

I had to turn off UPnP on my router to use the following tools. I determined the protocol was UPnP by jumping onto my DD-WRT router, installing tcpdump and capturing several packet dumps and examining them.

The best thing UPnP analysis tool I found was miranda. You can get it ...


PyCon Starcraft II Recap

Saturday night we had the first PyCon Starcraft II Tournament. This was a joint effort between myself and Daniel Lindsley, with the help of Christian Metts, the PyCon organizers (Doug Napoleone in particular) and lots of open source software.

16 competitors from unranked through platinum competed for next-to-nothing in prizes.

We ended up writing a bit of custom software to assist. We also started on Tuesday, so it was rougher than I would have liked. It's all up on


I promised some players that the first matches would be geared to be even. This ...


Issac Kelly