Belkin WeMo

ImageJust picked up one of these Belkin WeMo switches to try out. I wasn’t worried about the motion-sensing switch version, just the plain single outlet. On opening I expected to find more complicated setup instructions, and thought I would have to set up port forwarding on my router so I could control it over 3G from the phone. Considering the average home user wouldn’t know how to do this, I wondered how they would make this easy to do. However, it doesn’t work this way.

Anyway, it was incredibly easy to set up:

  1. Plug it in. I plugged in a reading lamp as a test. The LED alternately blinked blue and orange. I tried the manual switch and the lamp turned on and off.
  2. Download the WeMo app from the app store. Launch the app, then it asks you to go into Settings to join the phone to the WeMo’s local WiFi network.
  3. The app begins setup and once finished, the single remote switch appears in a list view.
  4. That’s it! At this point you just hit the button in the list item and the light turns on and off.
  5. The app notified that a firmware update was needed, which installed with no problems.

Image 1So, first experiences are favourable. I’m still curious as to how remote control works from outside the WiFi network. I am assuming that the device must be sending requests out to a server somewhere and polling for state changes.

At the moment I’m probably just going to use it to switch the Christmas lights (when they actually get set up). This saves me going outside or down to the garage to switch the powerpoints off. We do have some old-style mechanical timers around but this is far more fun.

Belkin also publish an SDK for WeMo, which is a nice change considering that most manufacturers have no interest in making their devices open or interoperable. Building the demo app for my iPhone immediately finds the configured WeMo outlet and I can switch it from the iOS simulator. I do wonder what security implications this may have, but assume that only devices recognised by my local network can control the WeMo switch. Some testing may be required.

iPhone app

photoXively has a heap of APIs so you can access your feed data in other ways rather than just loading up the web page. I was able to use their sample code to put together a simple iOS app that lets me check the temperature and light levels in my study at any time, from anywhere. It’s nothing fancy but a good proof of concept.

First steps

So I got hold of a Freetronics EtherTen early this year and started getting familiar with it. After getting a multi-colour LED to change colour I hooked up a tempreature sensor and got it reporting temperature as a simple web server. It’s still sitting on my study desk at the moment. To see this remotely on the web I had to figure out how to do port forwarding on my router.

About this time I discovered Cosm, and hacked up a feed so that I could push my data to their site, and thus make the data visible without having to open a port on my network. Cosm turned into Xively, so I rewrote the sketch to incorporate the API changes. You can check the feed here.

photoA bit later I dug out a couple of LDRs and hooked them up so I can measure light level too. There are two because they are different types and I wanted to check their sensitivity. The temperature sensor is hanging off the edge of the desk at the moment.


Here’s a shot of the Xively feed. This is the last 7 days and you can see the daily cycles. Some days the curtains may be closed, and some evenings a light may be on. The light levels are inverted, so when it is bright the resistance and thus the graph drops.