Sunday, November 1, 2015

ZWave.me breaking my stuff

I'm unhappy with the Z-Wave.me company, mostly because they appear to be going down the "we're connecting you to the cloud whether you like it or not" path that Cisco attempted a few years back.  I spent a few hours this afternoon, dealing with an upgrade that I didn't request.

Years ago, I acquired a RazBerry board for my Raspberry Pi.  It had a very cheesy web front-end that dealt with an unwieldy JSON back-end.  I found the front-end useful only when associating devices with the controller.  I primarily liked the back-end because it allowed me to write code to control the lights in my office (it's also part of my alarm clock).

The update comes with "improved" authentication which no longer works with wget's or curl's authentication mechanisms.  While the front end is much nicer, the upgrade breaks the lighting code that I've written/expanded over the years, including my keyboard controls, the alarm clock, and the turn-everything-off-in-2-minutes control which allows me to leave the room before the lights go out.

If you want to recover the old capabilities, following are the steps I used to roll back the server code (as root, on the RPi):

1) run "/etc/init.d/z-way-server stop"
2) run "cd /opt"
3) run "mv z-way-server old-server"
4) get v1.3.1 of the server from http://razberry.zwave.me/z-way-server/ by running:
"wget http://razberry.zwave.me/z-way-server/z-way-server-RaspberryPiXTools-v1.3.1.tgz"
5) run "tar xvfz z-way-server-RaspberryPiXTools-v1.3.1.tgz"
6) run "/etc/init.d/z-way-server start"
7) point your browser at: http://serverIP:8083/index.html to see if the server is running.  Note: if you point it at only: http://serverIP:8083/ it will auto-forward to http://serverIP:8083/smarthome and complain about not being able to find a file.

After I performed the above, my scripts started working again.