Nico Rikken nico.rikken@fsfe.org, Tue 2014-12-16 09:20:
I'm curious how you conceive the developments in this field, in your country and for your use-case.
My personal perception (Berlin, Germany): - home automation is not wide spread, but there are lot's of offers in electronic stores and it's probably coming - there are different vendors with some systems beeing compatible to each other - almost all (or rather all) products are radio based, signaling via modulation on the power line, or at least an extra wire seems not yet to be state of the art - Higher priced vendors offer "Cloud"-Controlled systems exclusively, the radio signal is encrypted (similar to remote car keys) - Products from cheap vendors are quite hackable and there is a healthy community growing around their products - However unencrypted radio in cheap products and a limited set of data codes means, your neighbours remote will switch your fridge
My opinion is, that lacking standards are not so much the issue, mostly because the technology is so simple that a lack of documentation doesn't so much become an issue yet. Of course that hasn't have to stay true in the future. For me the probem is rather the control architecture of the high end systems. After buying a product users stay dependent on the company's internet servers to talk to their devices and those servers are always in the control flow, being technically able to switch devices and to record the user behaviour. This makes me thing of the teweets cited by David.
This is not stricly a Free Software issue, but has more to do with consumer rights, security, privacy, and even more with self-determination.
== My personal tale: ==
Requirement: switch my audio amplifier on and off from the RasPi/NanaPi/Homeserver, preferably automatically whenever I launch mplayer. Idea: run some ip packet over the existing ethernet in my home to switch some kind of smart wall socket/ junction box. How hard can it be?
Those kind of ethernet junction bars have been around since the nineties. They run a primitive HTTP-Server and you can switch individual sockets by calling the right URL on the server. Simple, cool, failsave. Problem: they somehow failed to get any cheaper ever since the nineties. Prices are between 100 and 200 Euro for a single 6-Socket bar. Ridiculous. There is also a wireless LAN version with a single socket for around 40 Euro.
Looking for home automation systems: More expensive systems come with a control station and comparatively dumb electronics in the power switches. Starter sets cost between 50 and 200 Euro, including a control station and a hand full of wall sockets, light switches, junction boxes, dimmers, etc... All of them advertise easy access via a smartphone. This is what seems to get a lot of buyers interested while it was getting me very scared.
It would be viable to run a web server on the control box and configure a port forwarding on your home router, right? But this wouldn't be as "easy" as in iPhone. To get the advertised behavious even when behind a NAT gateway it is pretty clear what has to happen: The controller box connects to an internet gateway run by the vendor. Joe Normal tells his iPhone to tell a company's gateway server to tell his smart home to switch on the 4000 Watt heating fan. And he doesn't even know. The packaging doesn't mention the vendor provided service in one word!
Can you tell the controller to connect to your own gateway instead? I contemplated setting up a DNS filter to direct it to my own gateway. But does the controler check the vendor's VPN certificate before connecting? (Notice how encryption will work against you in this case!) And even if the connection works, what protocol will the controller speak? Will I actually be able to query device states and send switching commands? It would have been interesting to try. But in order to do that, I would have had to buy one of the devices. And doing so would have meant giving money to what I consider to be the wrong people.
The cheaper solution: Cheap automation systems have the same veriety of end devices as the expensive ones. There are wall sockets, dimmers, even thermostates etc. Control devices come in the form of Light switches (which you simply stick to your wall), door opening sensors, etc. but usually as a remote control. The signaling frequency is at 433 MHz - that's a popular band for RC cars and toys. The devices can be programmed to listen to a set of specific codes. So you can pair different controllers with differnt devices. You can switch all devices individually as well as in self determined groups. Transmitters from the modelbuilding shop can be attached to your computer. There is some Wikis around which list the signal codes (didn't remember the URLs). There is also tutorials on reverse engineering the signal codes using a sound card.
All in all nice friendly toys. I finally went with one of those.
The disadvantage is, that there are only a few dozend signal codes for each system. When my neighbour starts using the same devices I'll have to talk to him and agree on code groups. I recommend against switching high powered devices with this signal. Running the signal over a wire instead would solve this problem, but so far I didn't dare to open the case of the power socket.