Node-OpenZWave on Raspberry Pi 2

As a continuation of my Open Smart Hub project I have been interested in adding Z-Wave and Zigbee devices to my supported devices and recently decided to swing for Z-Wave devices first. I bought a Z-Wave Z-Stick Series 2 USB Dongle from Aeon Labs and a simple Z-Wave Door Sensor in order to create the basic mesh network with just two devices.
z-wave-usb-stick

Since the Open Smart Hub is based in NodeJS, it only made sense to search for a Node port of the OpenZwave library. I stumbled upon Jonathan Perkin’s port of it to NodeJS (https://github.com/jperkin/node-openzwave)

Unfortunately, it does not work on Windows, and it seems to be having issues with the latest version of NodeJS… But luckily (or coincidentally) the Open Smart Hub runs on a Raspberry Pi 2 running Raspbian and NodeJS v0.10.28.

After the initial setup of my RPi2 with NodeJS, I got to work getting the node-openzwave module on my RPi2. I was seeing build errors when it was trying to install the module, but found a couple of blogs with information that in order to get it to work I might have to install a couple more tools.

sudo apt-get install build-essential make subversion
sudo apt-get install subversion libudev-dev make build-essential git-core python2.7 pkg-config libssl-dev

After that, it worked and I could call “npm install openzwave” and have it install properly.

Note: If you are interested in using it on Mac OSX, you will need to install the drivers for it. Read more about that process in a previous blog post.

OpenSCAD (Required for the Maker)

Today after finishing the prints for the parts I need for my 3D printer model, I realized I had made a huge mistake. I hadn’t checked the measurements for the holes / rods and since I had gone with the US alternatives to the metric measurements, some parts just wouldn’t work. DOH!

This led to my next realization. The open source community provides the files in easily configurable SCAD files not Autodesk files or STL (STL would have been alot more difficult to edit although it can be taken and printed immediately).

In case you didn’t know, the beauty of SCAD files is that they are essentially programs. OpenSCAD is pretty much the open source standard for creating 3D objects before exporting them into STL format. It is a functional description Red and Yellow Cubes SCADlanguage that dictates the characteristics of the object that allows for reusable variables and one configuration file with the power to change your whole print library! Here’s an example that creates these two rectangular blocks:

If you have been reading my blog posts, I had started using Autodesk Fusion 360 and I thought it was one of the best programs for 3D modeling. Little did I know that the open source community didn’t hand out files consumable in Autodesk and the power behind SCAD files in the open source community is how easily the objects can be customized especially since altering a bunch of STL files would take serious time in Autodesk Fusion 360.