I have recently become interested in home automation. Mostly because I like to play with technology, not becuase of any real pressing need for it.

I decided to pick up some Z-Wave equipment at the recommendation of my friend Bob.

I purchased the following:

The Aeon Labs ZStick

Aeon Labs Z-Stick

And a GE 45603 Socket

GE Zwave Outlet

The first step is to associate the dongle with the socket. This is done easily. Just plug the outlet into the wall and walk up to it with the dongle in your hand. Press the button on the dongle, and then after the light begins to blink, press the button on the socket. The dongle will blip and then resume the slow pulsing. That's it, you now have a mesh z-wave network of two nodes.

Then take your dongle and plug it into the machine you plan to use as your OpenHAB server. This can be anything that will run Java most likely. I used an old tower I had on hand and slapped CentOS 7 on it.

Install Oracle's Java via RPM (jdk-8u25-linux-x64.rpm):

# yum install jdk-8u25-linux-x64.rpm

Then pull down the latest OpenHAB. You'll need the Runtime Core and the Addons archives.

Sock OpenHAB on the server under /opt:

# mkdir /opt/openhab
# cd /opt/openhab
# wget https://github.com/openhab/openhab/releases/download/v1.6.1/distribution-1.6.1-runtime.zip
# unzip distribution-1.6.1-runtime.zip
# cd ..
# mkdir addons-openhab
# cd addons-openhab
# wget https://github.com/openhab/openhab/releases/download/v1.6.1/distribution-1.6.1-addons.zip
# unzip distribution-1.6.1-addons.zip
# cp org.openhab.binding.zwave-1.6.1.jar ../openhab/addons/

Now we have the code deployed, and our z-wave bindings in place. Let's finish up the configuration and fire this up.

First openhab.cfg

# cd /opt/openhab/configurations
# cp openhab_default.cfg openhab.cfg
# vim openhab.cfg

Find out where Linux put that guy.

# dmesg | grep cp210x\ converter\ now\ attached
[    6.237436] usb 6-2: cp210x converter now attached to ttyUSB0

Alright, now that we have that change the following line:

zwave:port=/dev/ttyUSB0

Now, let's create our items file

# vim /opt/openhab/configurations/items/default.items

And add this.

Switch Z_socket1 "Christmas Tree" (Lights) {zwave="2:command=SWITCH_BINARY"}

Now, let's edit the sitemap so we can manipulate that item using the web interface

# vim /opt/openhab/configurations/sitemaps/default.sitemap

And add this.

sitemap default label="Main Menu"
{
  Frame label="Christmas Lights" {
    Switch item=Z_socket1 label="Christmas Tree" icon="switch"
  }
}

Now fire up the server and navigate to the web interface.

# cd /opt/openhab/
# bash start.sh

You should now be able to navigate to http://yourhost:8080 and there should be an on/off switch for you to play with.

OpenHAB Gui

Certainly not plug and play. But if you're technically savvy, this should get you up and running.

Next up you can start to write rules for controlling your home.