One of the challenges for Building and Home Automation particularly in Australia and UK is the design of automation technology lags behind modern integration, network and communication architectures by decades. This article focuses on breathing new life into those systems leveraging the Amazon Echo.
Common building and home automation systems in Australia such as Clipsal’s CBUS2 solution as well as the Ness / Elk security automation platform have been conceptually great ideas but due to primitive and expensive interfaces built without usability in mind. (due to their design era) Today these market leading automation products haven’t really changed how most people interact with either the home or office buildings and hence most people don’t really know they exist.
Clipsal, in particular, had focused all its effort on high cost solutionsretailing from hundreds of dollars for basic LCD control switches (or DLTs as per image to the right)
If you want a touch interface then cost moves up to thousands of dollars and the technology originally started at black and white screens and use single touch panels. (Or in simple terms don’t work like a phone touch screen at all)
From a usability viewpoint having the automation but still using an old fashioned approach to controlling the home or office don’t really “add” much value from the users view especially for the cost outlay. Yes there are some benefits, particularly for rewriting and “global” functions like turning power off at night but overall the wow factor has been pretty low, which is probably why mainly office builds have automation in the building design today (energy management) and few homes.To set the scene using a classical CBUS2 automation a person still physically walks up to a “light switch” and
- presses the button to turn “things” on,
- presses and holds the button to dim or
- press again turn off lights.
Get the idea?
These controls are unusual and non-intuitive to many people. The dimming in particularly required explanation to anyone not already familiar with it. Add to this the switches were mostly “unlabelled” except for the higher cost LCD displays adding to the user confusion. For new users its by no means natural, though it is at least novel. As the most cost effective switches are typically in 4-8 button panels with unlabelled buttons few homes use labelled switch outside of common rooms so you always see people pressing all 8 buttons on a switch to work out which light is the one they want!
So introduction over.
Let’s discuss why I bring in Amazon Echo to the conversation!
The Amazon Echo which I managed to get hold of prior to its official release really surprised me in its capability. It is essentially a black cylinder / speaker integrating to a speech driven AI engine up in the AWS Cloud.
Within a few hours of experimenting with it the potential of this platform was pretty obvious. Built by a company not normally associated with either speech recognition or AI, it had already passed the “big boys” in this space in what it could do and how well it could do it (e.g. apple, google and specialist speech recognition companies at the time echo came out were building gimmick concepts like siri)
The “alpha” version of the Amazon Echo could already isolate discrete conversations and response to the user even with background conversations happening plus it was able to handle accents that I couldn’t even interpret myself. Given it wasn’t even available in Australia (and not specifically programmed for our accents) that was impressive.
Anyway a few months later once I had gotten my hands on an official Echo (a dot and a tap) I was keen to explore if it was possible to extend the Echo to act as an interface to one or both of the automation systems and do away with the archaic CBUS approach to lighting control.
My initial difficulty was getting my head around how Amazon had designed the interface and APIs and how this might work with an automation system that was designed probably 20 years ago.
After some late night research I stumbled on a series of smaller developers discussions talking about smaller parts of the problem. One developer had realised that extending the support for Phillips hue was a possibility (started to code a hue emulator), another discussed using something called MQTT for messaging automation controls and others covering various problems that all needed solving to get the echo talking to a local tcp/ip based automation system.
After some effort and late nights I hooked together about a dozen various bits of code and proceeded to translate CBUS commands to MQTT instructions (the tedious task). I found some node.js code that then allowed me to translate this to serial instructions against the automation gateway, then further work showing how to bypass other problematic gaps in CBUS’s approach to automation, plus the earlier developers had not understood how CBUS performs rounding functions. There were further mistakes in the code but with some patience I got them sorted in the end.
I found a great framework called openHAB that allowed me to structure the MQTT commands and link these to a web interface avoiding further coding of a GUI.
The biggest pain to my surprise was finding a working MQTT server for windows (starting with windows just for now)
The next step was proving I could issues MQTT commands to CBUS which was a major milestone. With this done I was ready for the key challenge of tricking the Echo into thinking the CBUS system was a Phillips hue. After running the device discovery for probably the 50th time finally it reported lighting devices discovered and then the magic happened.
“Alexa turn on Christmas lights”
And finally success!
After a bit of tuning soon the whole family joined in the fun. The interface even in this early state was sufficiently functional to respond to most commands. My girls thought it was some kind of star trek trick and we immediately discovered benefits such as turning on the bench lights by voice while our hands were dirty while cooking.
As a bonus I was then able to get a basic interface going on my pebble smart watch exposing up the rest of the lighting commands for watch control!
Still lots to go including rebuilding it to run on a raspberry pi and introducing new commands to handle dimming, temperature, blinds, air conditioning and so on and new features coming out Amazon that I’m keen to leverage.
Overall it demonstrates its possible to leverage these older automation technologies and bring new life to them plus shows to me that innovation doesn’t always come from the source you might think it will come from.
The so called big players have taken notice with other products like Google Home making significant efforts to out do the Echo so it will be interesting to see whether the innovator, the giants or both end being successful or if this is yet another fab. I personally don’t think it will be a fab and I think voice control in the home will continue to grow.