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.
Smartening up, Part I
I always wanted a smart home. I don't have a particular use for it, I just think it's cool that I can yell at my living room and it will obey me. And since next month I'll be moving to an empty flat, it is truly now or never.
This is the first post detailing what I hope will be a painless experience and what I know will be a long list of frustrations. Today I will detail my general plan, and in future entries I'll let you know how it all goes.
My aspirations for this first stage are modest: I want to be able to control the lights in key spaces just by talking to a device. Not just turn them on and off, mind you, but also dimming the lights to certain levels. I also would like to have a smart mirror with my morning information (to-do and weather, mostly), but that is more of a stretch goal.
Starting from the top, I need smart light bulbs. Originally I planned on going with Ikea's TRÅDFRI light bulbs for their price, but I decided against them because they don't seem to play too well with open platforms and because they require an extra hub. I settled instead for the middle-priced Philips WiZ because they connect directly over WiFi (unlike it's expensive cousins from the Philips Hue line). I would have loved to use the cheap Hama smart lighting options, but my past experience with this company gives me little hope of their protocols being open or, for that matter, good.
Another factor in favor of WiZ was that they are supported by OpenHab thanks to the heroic work of one volunteer. Once it is properly configured I expect I'll be able to add complex commands like "dim the lights to 60% after 17:00 if it's winter" and stuff like that.
The voice commands will be handled by Mycroft, the privacy-focused alternative to Alexa and friends. I would really like to buy a Mark II, but given their delivery times I fear that I'll have to install my own version first (probably in my old notebook) and eventually migrate. Lucky for me, Mycroft and OpenHab are good friends.
The final part is networking. If you are familiar with my blog you may know how much I care for privacy, which is typically a problem when you want to install hardware that monitors your home 24/7. Therefore, all of the above-mentioned services will run in their own isolated LAN with no connection to the internet. Mycroft may get an exception depending on whether I would like to ask it about the weather, but everything else will stay isolated. This would also guarantee that I don't lose control of my lights when my internet is down. I have long ago flashed my WiFi router with dd-wrt which allows me to have multiple networks and define who can talk to whom.
Progress so far
Given that I already have the light bulbs, I tried to set them up using the Android WiZ app. This did not work: one key step of setting up the light bulbs is to register them on the cloud (for whatever reason), and the closed network made this impossible. I am fine in principle with the light bulbs phoning home once and then never again (combined with a VPN, the information they would expose would be minimal), but for that I would need internet and I still don't have any. I have also decided that two rooms will get "dumb" lights: the kitchen and the bathroom. These rooms are not "chill" rooms but rather "be there with a purpose and then leave" rooms, so there's no point in doing much with them.
And finally, one issue I have not yet decided is what to do about the microphone. Placing a Mycroft in the hallway would mean that I always need to yell at it, but I don't like the idea of my neighbors knowing that I turned on my lights at 3 AM and I doubt my neighbors would like it either. My best alternative so far is a small portable microphone - I read an interview sometime in the 90s about how Bill Gates' mansion was controlled with pins you were supposed to wear, and that seems reasonable enough to me. But I have yet to find something small enough.
If I decide to go for the smart mirror, this guide seems like the way to go: I already have a Raspberry Pi I'm not using (used to be my NAS server) and an old laptop screen, and it's mirror film approavh is cheaper than those using two-way glass. The annoying part would be finding the appropriate control circuits for the screen, which is a can I've been kicking down the road for a couple years now.
I also would like Mycroft to play my music, but that would require me to install a NAS and set all networking correctly, which was not fun with all devices in the same network and will probably not be fun here.
I'll let you know how this all works out.