Domotics

This page lists some very general information that I found when I wanted to get started with home automation, domotica in Dutch. Since I live in the Netherlands, this equipment mentioned on this page is what is available in the Netherlands.

To start, you have to make two choices: the protocol that devices use, and the controller that controls the devices. Common protocols are X10, ClickOnClickOff, Z-Wave, ZigBee are common choices, though more recently wifi is used to create an Internet of Things.

Applications Areas
Home automation can be used for the following purposes:
 * Lightning control.
 * Appliance/Power control, e.g. garage door, curtains.
 * Heating, ventilation, and air conditioning (HVAC) control
 * Energy (electricity, gas) management and monitoring, including solar panels power monitoring.
 * Water
 * Security systems, including sensors and IPTV.

Most controllers focus on two or three areas. You may want to articulate your preferences in order to pick a good controller.

General Architecture


Most home automation devices communicate over radio, although some protocols use power lines for communication. Common radio frequencies are around 400 or 800 MHz. This has lower bandwidth than wifi (2.4 or 5 GHz), but better reach. The user typically programs or control the devices from a tablet or PC over the Internet. A gateway is needed to allow communication between the local area network (and Internet) and the home devices. In most cases the gateway is also the controller: the devices that is always on and sends a signal to the devices when it time to switch on or off, and receives signals from sensors such a weather sensor or electricity meter.

The controller can be a appliance (such as Eneco Toon), or a gateway that relays commands send from the cloud (such as Google Nest), or a PC with USB antenna.

The classics

 * X10:2-way communication over power lines (X10 power line) or radio (X10 RF) (433 MHz in Europe, 310 MHz in the USA). X10 was developed in the 1970's and is one of the older protocols for home automation.
 * KNX:A high-end standard used for more professional installations. Devices are not widely available for regular homes.
 * Universal powerline bus (UPB):A standard for communication over power lines over short ranges, based on X10. Not very common, and power-line only.
 * IEC 61334:The industrial variant of UPB. Not very suited for home automation.

One-Way Peer to Peer Networks
These protocols both use radio at 433.92 MHz, and are one-way protocols. They are cheap. The downside is that the distance is limited (max. 20 meter indoors), there is no confirmation that a packet has arrived (and thus no retransmission if it hasn't), and there is no security.


 * LightwaveRF:Created by a UK-company JSJS Design in 2011. Also supported by Siemens.
 * COCO/KAKU:ClickOnClickOff (COCO) or KlikAanKlikUit (KAKU) is a popular Dutch brand. There are two protocol variants; both use 433 MHz radio. The first protocol was a simplified version of X10, and had limited addresses. The newer protocol has a long unique device ID.

Due to its simplicity both protocols are readily supported by a wide range of devices (e.g. antennas in USB dongles, or Arduino RF modules) and open source projects.

Two-Way Peer to Peer Networks

 * DECT-ULE:DECT ultra low energy. The protocol is commonly used for cordless phones, and for some baby monitors. It operates in the (regulated) 2.4 MHz band, which has less collisions than in the overused 2.4 GHz band.
 * M-Bus:Meter Bus, a European standard (EN 13757) for wired (EN 13757-2) or wireless (EN 13757-4) communication. Mainly used for communication between a smart gas meter and a smart electricity meter in the meter cupboard, with the electricity meter acting as the master.

Mesh Network Protocols
These protocols all feature 2-way communication, which means that each command is acknowledged by a device. Also, devices can act as routers, and forward commands to devices which would otherwise be unreachable by a controller. Another advantage is that in particular Z-wave and Zigbee only use little power. The longer reach and higher reliability come at a draw-back: a higher price.


 * INSTEON:INSTEON supports both radio-frequency and powerline transmission, and is backward compatible with X10. It is popular in the USA.
 * Z-wave:Z-Wave uses radio at 868.42 MHz (908.42 MHz in the USA) and was developed by Zen-sys/Sigma Designs. It is a proprietary protocol, although the MAC/PHY layer is now standardised as ITU-T G.9959. There are many available products. Z-Wave plus is a standard with improved range, power use and bandwidth. At the time of writing a few devices are available, but no gateways for the European region yet.
 * Zigbee:ZIgbee is an open standard, whose MAC/PHY layer is standardised as IEEE 802.15.4. It operates on the same frequencies as Z-Wave (868.42 MHz in Europe, 908.42 MHz in the USA). Despite the standardisation of the MAC/PHY layer, the applications are often not compatible due to differences higher in the protocol stack.

The Modern Ones
There are efforts to use existing technologies to control home devices. The two main design criteria seem Internet-integration and low power requirements.


 * Bluetooth Low Energy:Most smart phones and tablets support Blue Tooth Low Energy (also marketed as Blue Tooth Smart), and slowly some home automation systems appear that can be controlled by BlueTooth. At the moment, the disadvantage is that there is no permanent controller: once out of reach, a smart phone can no longer control the device. It is expected that controllers that bridge Bluetooth LE with the network will emerge.
 * 6LoWPAN / Thread:IPv6 over Low power Wireless Personal Area Networks (6LoWPAN) overcomes the wifi power obstacle by specifying IPv6 transmission over IEEE 802.15.4, the same protocol as ZigBee. The Thread consortium adds some higher layer protocols, and claims a device can be powered for a year with a single AA battery. With regular wifi, it would run out in a few days.
 * Wifi:Since wireless Internet is so ubiquitous, it is naturally to connect home devices to the network directly. Unfortunately, wifi requires a high amount of power, which is not suitable for most home automation devices. Cheap low-power wifi chips, such as the ESP8266 have been introduced in fall 2014, and have gained consideral momentum in the hobby scene.

The Internet of Things Networks
The above networks are all Local Area Networks (LANs), with low power, low bandwidth and short range. However, most Internet of Things (IoT) networks use a LPWAN, a low power Wide Area Network, with (indeed) low power, low bandwidth and long range. It works in the field, so it may work in your home too. Of course, security may be a concern, just like when you connect your local network with a controller in the cloud.


 * Longe Range Wide Area Network (LoRa):LoRa (the transmission protocol) and LoRaWAN (the message format) is designed for public Internet of Things (IoT) sensor network, and has antennas with a range of 2.5 to 15 kilometers. It is designed to run up to 10 year on a single battery charge. The technology is owned by chip manufacturer Semtech, but it formed the LoRa alliance to allow operators to build their own LoRa networks. In fact, you don't even need to be part of the LoRa alliance to build a LoRa network. The Things Network build a fairly large not-for-profit community, so that consumers can easily build and share their LoRa networks.
 * Sigfox:Sigfox uses a technology similar to LoRa. The Sigfox technology may scale a bit better than LoRa. Unfortunately, the Sigfox technology is tightly controlled by a single company, Sigfox. From a business point of view, this makes it a less attractive alternative.
 * LTE-M:LTE-M runs on existing 4G (LTE) networks. This makes it easy to roll out, since there are already so many existing 4G networks.

Note that these are not the only IoT networks out there. In the excellent article LoRa vs LTE-M vs Sigfox, Nick Hun also mentions Ingenu, SilverSpring’s Starfish, Cyan’s Cynet, Accellus, Telensa, nwave, and Waviot.

Well-known Brands

 * Eneco Toon uses Z-Wave (it is a rebranded Prodrive - ED2.0 Display with Quby software). It's an heating system, with support for OpenTherm. It does not yet interface with radiator valves or a weather station.
 * Home Wizard uses KAKU/COCO
 * Philips Hue lamps use Zigbee (although it is possible to connect to controllers over wifi with the Hue Bridge)
 * Belkin Wemo uses regular wifi
 * Apple Homekit uses Bluetooth LE. At the moment of writing, Homekit has very limited functionality. The HomeKit APIs can only be used when an app is active or open in the foreground; there is no such thing (currently) as an app using HomeKit that works in the background without user interaction.
 * Google Nest uses 6LoWPAN/Thread on the lower layer, and Weave as application layer protocol.
 * Control4 uses Zigbee
 * Gira uses KNX
 * Gigaset Elements uses DECT-ULE (DECT ultra low energy). Not suprisingly, if you know that Gigaset is Siemens cordless phone spin-off company.
 * Elgato Eve uses Bluetooth.

Internet of Things Protocols
Wifi is commonly used for "Internet of Things" (IoT) devices. There are multiple choices of message passing protocols to use on top of wifi. The following list is in order of popularity for IoT devices at time of this writing (early 2016):

Communication between product to product is a key challenge in the implementation of Internet of Things protocol. Below is the overview of some of the key protocols. All protocols are stateless message passing protocols.


 * MQTT (Message Queue Telemetry Transport):A light-weight binary publish-subscribe protocol on top of TCP/IP. Used in conjunction with a broker (proxy). Designed for sensors are always active, but consume very little power. Limited security, usernames and passwords can be used, and TLS may be used on TCP layer.
 * CoAP (Constrained Application Protocol):Binary protocol on top of UDP/IP. REST webservice-like architecture. Designed for sensors are always active, but consume little power. No security, although Datagram Transport Layer Security (DLTS) may be used on UDP layer.
 * REST (REpresentational State Transfer) API:Text-based protocol. Web services using HTTP GET/POST requests. Devices sleep most of the time, unless they wake to push communication. Very scalable architecture.
 * AMQP (Advanced Message Queuing Protocol):binary message passing protocol. Very versatile, supporting different architectures. Has more feaures and is more secure compared to MQTT, but is therefor harder to implement.
 * XMPP (Extensible Messaging and Presence Protocol): XML-based protocol for message passing. Originally developped for use in chat applications. Disadvantages for use in IoT are the verbosity of XML, and that for secury (encrypted) transport, both end-points must be both online to negotiate a shared secret. This makes it less suitable for deployment on a low-power sensor network.

Further reading:
 * MQTT Vs CoAP Vs REST API
 * Exploring the Protocols of IoT, discussing MQTT and CoAP.
 * A Comparison of AMQP and MQTT by Raphael Cohn (StormHQ).

My Protocol of Choice
My protocol of choice would be Z-Wave, mostly because of it's reliability and long range, partly because of the mesh-network functionality. Z-Wave seems to have better compatibility compared to ZigBee, both in hardware devices and open source software.

If you're looking into cheap devices, and care less about distance or reliability, X10 variants such as KAKU are easily supported with a wide range of 433 MHz transmitters, and likely work well for most homes.

My love for IPv6 makes me interested in 6LoWPAN. The technology seems solid, and I hope that low-power wifi chipset will be produced for these products. However, the technology still needs to gain more momentum. The push is certainly there by the Thread group. I'm a bit worried that these vendor will mostly use it to connect home automation devices to the cloud. Nest Labs, founding father of the Thread Group was purchased by Google for 3.2 billion dollars.

Out-of-the-Box Solutions
There are many controllers. Once you have decided on the protocol, there are a few appliances with build-in controller. If you like to control an appliance with a tablet, it wouldn't hurt to check out the iOS or Android apps first (assuming that it is an app, as opposed to a website you view).


 * An excellent multiprotocol controller is the Homey, which supports Z-Wave, Zigbee (partially), COCO, and has also NFC, Infrared and voice input. It has an active community to integrate with other inputs and outputs.
 * If the protocol of your choice is Z-Wave, have a look the list of Z-Wave gateways.
 * The Vera (previously: Mi Casa Verde) controllers are well-known, and easily customizable (it uses OpenWRT as OS and you can create lua scripts from the GUI, or log in with SSH).
 * The Fibaro Home Center is another good choice. The Home Center 2 also supports Lua. The Home Center Lite does not.
 * The Zipato Zipbox supports Z-Wave by default, and has extensions for ZigBee and KNX. Zipato is a cloud-based solution.
 * If the protocol of your choice is ZigBee, you first have to figure out which of the protocol variants of ZigBee you are interested in. Good luck, you need it!

Do-It-Yourself Solutions
If you don't want an appliance, but rather a do-it-yourself solution, I recommend the following hardware:


 * RFXCOM transceivers. These devices can talk a whole slew of X10-like protocols, including X10 and KAKU/COCO. It does not support ZigBee or Z-Wave. RFXCOM can be controlled over the local network, but has no graphical user interface.
 * HomeSeer controllers. These typically support X10, Z-Wave and INSTEON. ZigBee is not supported.

For a graphical user interface, the following software projects are of interest:


 * OpenHAB, a vendor and technology agnostic open source automation software for your home. It is written in Java, and interfaces to different hardware drivers using OSGi. Modules exist for KNX, Insteon, Z-Wave, and RFXCOM.
 * DomotiGa, a Dutch open source project on Linux with interfaces to a whole slew of protocols (ZigBee is a notable exception). DomotiGa is able to commmunicate with Z-Wave using either Open Z-Wave or RaZberry.
 * Digital Home Server, an open source project on Windows, particular aimed at controlling the RFXCOM gateway using the xPL protocol.

Neither of these software suites can communicate with ZigBee.

Shops

 * I may remove this section later

A few seemingly good shops are: hashop.nl, robbshop.nl. bwired.nl heeft een veel grotere lijst: http://www.bwired.nl/domoticalinks.asp (schijnbaar ietwat verouderd).

For interface with P1 of energymeter: see http://www.energieverbruiksmanagers.nl/