I live out in the country near Lexington, Kentucky.  A few years ago my wife told me that I either needed to build a barn to store bicycles, or get a divorce.  So, I built a barn – well, actually, I had a barn built.  The barn has been great, except for one major pain in the neck.  Invariably I look out the window at bed time and find that my son has left the damn lights on.  It is incredibly annoying to go outside in the dead of winter, or even summer, in your pajamas to turn out the lights.

photo (8)
The barn from my window… in the dark with the lights on

After rejecting the Adrian Peterson method (wake up the kid, beat him, and then send him outside to turn off the lights), I settled on the another answer: connecting the barn lights to the Internet.  I considered a number of different alternatives, but after talking with a friend of mine, Eric Ryherd at Express Controls, he convinced me to implement a Zwave home automation system.

Zwave is a proprietary 900ish MHz radio system (radio, protocol, etc), low bandwidth (100kb/s) that was designed for home automation.  The “ish” is a result of the 900 MHz band not being regulated the same way in all countries.  As a result, there are three different radios configurations to cover the world.  Zwave has a number of attributes which make it excellent for home automation including:

  • Long battery life (>6 months)
  • Low latency
  • A true, simple mesh network
  • A single dictatorial company (Sigma Designs) controlling the protocol and certification (resulting in strong standardization)
  • Range in excess of 100 feet
  • Easy client-to-server binding

The flip side is that:

  • A single dictatorial company controls the standard and the silicon (resulting in insanely expensive development kits, restrictive license agreements etc)
  • Multiple radios required to work around the world

The other interesting thing about Zwave is that Lowe’s has made Zwave part of their Iris home automation system.  This means that you can purchase some Zwave stuff at almost any of their locations – including Georgetown, Kentucky.

You can read more about Zwave at:

For the initial implementation I bought:

The HomeTroller Zee is a Raspberry Pi based system.  The Raspberry Pi comes pre-installed with Linux, the ZStick device drivers, and the Zwave management webserver.

Included in the package is:


In order to bridge between the Zwave world and the Internet world the kit includes an Aeotec Zstick 2.  This device has two functions:

  1. It is a battery powered installation device.  You can walk around with the device, press the button to start the pairing process, press the target device pairing button, which will result in the target and the stick being paired i.e. the target device is now part of the Zwave network.  Then, when you plug the Zstick into the Raspberry Pi USB port, you can then upload all of the paired devices into your Zwave network configuration.
  2. It is a USB dongle that provides the Raspberry Pi with a Zwave radio interface.

For my implementation, the overall system architecture looks like this:



The barn lights are connected to the GE switch (via normal 120v house wiring).  The GE Switch communicates to the ZStick via Zwave  radio.  The Zstick communicates to the RPi via a USB->Uart connection.  The RPi talks to the internet via Wifi (routers etc.)

In the next post I will describe the HomeTroller Zee installation.

Recommended Posts


  1. I recommend you to try Synapse wirelesses modules:

    I’ve had project with these modules in my previous job (before Cypress) . This is very interesting solution. As programming language is used Python, also there is possibility for over-the-air programming and debugging. All you need is create short python script with Synapse APIs.

    Synapse Wireless General Overview:

    Links on Digi-Key:

Leave a Reply to Vasyl Yosypenko Cancel reply

Your email address will not be published. Required fields are marked *