Smartening up, Part II
In my previous entry about home automation I mentioned that I was ready to start plugging things into other things and connecting everything to a central computer running OpenHab. This is the story about how everything went wrong.
Things starting going badly from the get go when I discovered that whatever "vectoring" is it has rendered my DSL router obsolete. Only two (available) modems had the right technology: a TP-Link TD-W9960v and a Fritz!Box 7530 AX. I should have gone with TP-Link, but alas, I did not: I decided against the TP-Link because it was not supported by OpenWRT, but failed to notice that the other one was not supported either.
The reason I regret my choice is because the Fritz!Box router provides DSL, Telephone, Wifi, WLAN Mesh, Media server, NAS, some type of IoT compatibility, it updates automatically, and who knows what else out of the box. I have never owned any other device with such a large attack surface, and yet I am expected to put all of my data in it and then plug it to the internet? Yeah, no. I disabled everything instead, plugging all of my devices to my old router (which uses dd-wrt after OpenWrt dropped its support for it), relegated the Fritz!Box to a mere modem, and added every network access restriction I know to keep the later from entering my internal network.
Speaking of my old router, setting up sub-networks in dd-wrt was like pulling teeth thanks to my favorite internet problem: documentation that still refers to older, deprecated versions of software that nonetheless rank stupidly high in search engines because they have been around forever. In my case, all links pointed to this complicated method that has been improved by this much simpler method. Do you know how frustrating it is to debug network errors when bad configuration means you can no longer access the thing you are debugging? Because I do.
This is the only part that worked as intended, only to realize that what I thought I wanted is not what I actually needed.
I configured the lights to use their own Guest WiFi network that, once I'm done, will be disconnected from the internet entirely. That part worked well, and in fact I am typing way after midnight with the "candlelight" setting just because I can. The tricky part was the dilemma that came afterwards.
In order to work properly, the lights remain "on" all the time (to receive commands) and you turn them on/off via software. So what happens if I enter a room without my phone? At this moment I have three choices: * I can go back, pick my phone, unlock it, turn on the light, and then turn it off once I leave * I can turn the light off and then on again, turning the lights on. I then need to leave them on and turn them off via software once I have my phone back. * I can stay in the dark and convince myself that this is fine.
The solution to this problem is a small remote control I can keep on me all the time and turn lights on and off with as many programmable buttons as smart lights. I know this is a good solution because every single compatible remote is currently sold out.
Even before lights became an issue, my dream was to control my heating to turn it on when I get up and turn it off shortly after. My first step was to buy a cheap Bosch thermostat. This was a bad choice, as Bosch equipment require a central hub with constant internet connection. If you want to turn off your heating you have to send your request to Bosch headquarters, who in turn will tell your hub to tell your heating that it should turn off. Good thing I only bought one.
My second attempt was an Eurotronic Spirit Z-Wave plus. These devices connect via Z-Wave, a protocol that requires a dongle instead of internet connection. My research suggested an Aeotec Z-Stick, which would have been a fine choice if I had stuck to v5. Instead, I bought the newest v7 (newer is always better, right?) which has known compatibility issues and whose firmware can only be upgraded using Windows (a luxury I no longer have). So I bought a v5 and all those problems went away. Both the v5 stick and the Bosch thermostat will be landing on eBay eventually.
All of my equipment was supposed to be controlled with OpenHab, an experience that so far has been mixed: when it works it works great, but when it doesn't it is quite difficult to find out why. That compatibility problem I mentioned above regarding Z-Wave? All I found in the forums (before giving another stick a try) was the suggestion that my thermostat was asleep and that all I had to do was sit next to it and keep it awake for an indeterminate time until it worked. Once I changed the stick, however, everything worked just fine.
I installed OpenHab in my old laptop, where things worked mostly fine. But once I decided to move it to its own Raspberry Pi (using the OpenHabian distro) it all fell into pieces: my Pi is too underpowered, the memory card too slow, and the default Java installer doesn't support my architecture. So not only do I need a new dongle, but also a new Raspberry Pi.
Progress and next steps
The next steps are getting a proper Raspberry Pi, a remote control, and make everything talk to everything else. I still have some hopes for OpenHab - the thermostat have eventually been detected, the lights worked just fine, and the new old Z-Wave dongle does its job. I could look deeper into its voice recognition functions, but since my plan was installing Mycroft I might as well stick to that.
With the working up I have finally been able to re-plug my TV. The TV is old-ish and therefore controlled with a Raspberry Pi 3 running OSMC, with all of its content coming either from YouTube or the NAS (which I have once again turned on). This is not technically part of the smart home, but it is worth mentioning anyway. And no, I am not re-purposing this Raspberry Pi for OpenHab.
And last but not least, a word of caution: living in a non-functioning house (well, apartment) is exhausting, and I do not recommend following my steps until you know things will work fine.
I'll keep you updated.