Skip to main content

Riding the Z-Wave...

So finally I've got round to buying some new gadgets...and this time its the long awaited attempt at home automation using Z-Wave devices.

Why Z-Wave and not X10?
Tricky choice...Z-Wave uses RF and a mesh network approach with command confirmation - this is the primary reason for going for Z-Wave - rock solid control. Each Z-Wave module is not only a receiver but a repeater too; this means that the controller sends the command to any module in range and it passes it on to any other modules nearby until the command eventually reaches the intended module and vice-versa for the command confirmation response. By "in range" and "nearby" I mean about 30 metres (100ft) The more modules you have the more resilient and robust the command messaging becomes and the messaging is very quick too.

I'd read a lot about X10 and was really impressed by its support for almost anything you want to do; Z-Wave in the UK is poorly supported in terms of variety of modules, currently there is only three types of module available; Appliance module (simple on/off), Lamp module (on/off/dimmer) and a PIR motion detector. X10 also has proper wall light switches the main thing you need to control your lighting - this is a goal of my home automation project so I'm a bit disappointed that Z-Wave hasn't got these available....the good news is they are on the way...allegely! So I ruled out X10 as it looks a little flakey on the underlying technology side - lots of comments in forums about commands going missing and general problems with other electrical appliances interfering with the automation system (as it sends its commands one way over your house power cables) - I want something rock solid and cost effective...there are more expensive alternatives but the cost does rule them out when all I want to do is dabble my toe in the home automation pond.

Taking the plunge...
So I bought the following from LetsAutomate
  • 1 x Appliance module
  • 1 x Lighting module
  • 1 x Master remote control (used to discover and program your modules)
  • 1 x USB PC interface (This allows your PC to control the Z-Wave modules via automation software)
Set up & configuration
You need to register each individual module with the master remote control. Modules can be put into a "group" and these will all respond to the same commands. If you send a group the "On" command all the modules in the group will switch on togther. You can also set "scenes" - these are cross group preset settings that will be sent to the modules in the scene. For instance, you might have a group for the kitchen and another group for the living room. With this you could turn all the lights in each room on/off as one. You may also create a scene that switches two of the kitchen lights to 50% brightness and one of the living room lights to 75% brightness and turns the TV on - scenes can include any module not just lighting modules.

It's a simple affair to register a module with the master remote - just follow the prompts on screen on the master remote. The approach I'm taking is to put each module into its own group (you can have up to 64 groups) so I have control over each individual module and use scenes to control multiple modules. Once the modules are registered you can control them using the master remote - but thats not fun!..The remotes a brick and I want something a little more sexier...

PC integration
To integrate control of the modules with your PC you need to select your automation software and setup the USB controller. As a USB device the controller is doing nothing until you get some drivers for it so I went on the hunt for these and found them on the Homeseer website - download them here. Ok, so unzip these and install then plug in the USB controller - it should pick up the drivers fine - your controller is now registered with your PC for some automation action! From what I gather controllers like the USB or serial PC controller are "dumb" in that you must beam your module configuration from the master remote to them in order for them to recognise the modules. You cannot register the modules directly with these "dumb" controllers - I maybe wrong but this is the impression I get from the documents.

Home Automation Software
This post from MCE guru Chris Lanier prompted me to investigate mControl - this looks like a .NET based MCE/Web home automation application. Trial downloaded and installed and into the Z-Wave configuration tool application. Hit connect and it should find the USB controller ok - look at the messages window at the bottom for confirmation. You will need to beam the master control configuration to the USB controller now - there is a button in the application to "receive configuration" and a menu on the master to "send configuration" - once done the messages window shows a list of your modules. Exit this application and go into Media Centre, more programs...mControl.

I set up my "zones", Kitchen and Living Room. The application module is used to control a radio in the kitchen and the lamp module is in the living room. I had a play with the automation macros and had the living room lamp switching on and off automatically at set times during the day. There is a fairly rich set of events and actions you can perform but more playtime required to investigate further (for instance you can switch a module on/off/dim when you play a DVD in MCE!).

First impressions
My first impressions are excellent...this stuff works really well even with just two modules. Its quick to respond and hasn't broken the bank; all this kit cost about £175 and about 1 hour to setup - the modules are about £35 and when the wall lighting modules get released (please, please soon!) this will be a killer automation system than anyone can use not just geeky me!

I'm going to buy the PIR to install in the garage to provide automatic lighting or possibly intruder alerts (the PIR can be set to email me when in "Alarm" mode!). I'll probably buy another lighting module but thats it until they release the wall switches I think...


Popular posts from this blog

Walk-Thru: Using Wolfpack to automatically deploy and smoke test your system

First, some history... The advent of NuGet has revolutionised many many aspects of the .Net ecosystem; MyGet, Chocolatey & OctopusDeploy to name a few solutions building upon its success bring even more features to the table.

I also spotted that NuGet could solve a problem I was having with my OSS System Monitoring software Wolfpack; essentially this is a core application framework that uses plugins for extension (Wolfpack Contrib) but how to unify, standardise and streamline how these plugins are made available? NuGet to the rescue again - I wrapped the NuGet infrastructure (I deem NuGet to be so ubiquitous and stable that is has transcended into the software "infrastrucuture" hall of fame) with a new OSS project called Sidewinder. Sidewinder allows me to wrap all my little extension and plugins in NuGet packages and deploy them directly from the Wolfpack application - it even allows me to issue a new version of Wolfpack and have Wolfpack update itself, sweet huh?


Geckoboard Countdown Widget v2

v2 is here, now with added colours! This time using the RAG Numbers widget to display your date countdown - as you get nearer the date the number will change from green to amber then red.

The new url is:!
Note 1: notice the new /rag/ path and the msg querystring param.
Note 2: the original v1 url still works

To use this on your Geckoboard add a new "Custom Widget/RAG Numbers" widget. By default the number will turn amber at 10 or less days to go and red at 3 or less days to go however you can change these with the querystring (see below).

Required querystring params
date: "yyyy-mm-dd" format, this is the target date to countdown totz: timezone offset in hours from GMT that you are in. Can be negative if you are behind GMT
Optional querystring params
msg: the label that appears next to the number of days (remember to encode spaces as +). The default is "Days Remaining" if you…

Resharper add-in idea - highlight IDisposable vars

[Update 18th July 2013]
@RobGibbens and Greg Hurlman picked up on this - Rob pointed out that there is an FxCop rule that can do this and Greg suggested a Visual Studio extension. I've had a quick look at the Visual Studio options and it looks like an "Editor Extension" is a good fit....hmmm, Project New, click...doh...dammit I really don't have time for this but it looks a fun little diversion! I'll update here if I get anything working.

[Original Post]
Had an interesting idea for a Visual Studio Resharper add-in the other day but don't have the time to implement it so thought I would put it out might already exist (and hopefully someone can point me in the right direction) or someone will build it (Darren Voisey where are you?!).

The idea is very simple really - when you have a variable for an object that implements IDisposable it gets highlighted or a tell-tale is displayed to let you know it should be disposed or should be wrapped in a using sta…