A practical and technical look at the state of consumer Internet of Things (IOT) device provisioning by review of readily available devices from the local hardware store.
This past year Australia’s major hardware store Bunnings has engrossed themselves in the Smart Home; both online and instore. On my recent trip to the local store I noticed that they’ve setup a flashy, dedicated and semi-interactive Smart Home section which demonstrates a huge range of devices: switches, weather meters, garden controllers, indoor outdoor lights and voice assistants. The benefits of IOT are all on display but to the plain eye it’s still so hard to see, but obviously there is so much more. There’s a quote on the wall next to a light, “Echo, turn on the pendant”. I say it and a voice responds, “Sorry, I didn’t find a device named pendant”. Puzzling.
Looking at the display I first pick up an ARLEC Grid Connect smart switch and I quickly notice advertisement for Alexa and Google Assistant. This is great! It means control of the device is not fixed to the manufacture’s web application and more importantly using a standardized assistant enables device interoperability, e.g. A single command will turn on multiple devices where each device has a different manufacturer. This is power. The Grid Connect box also advertises availability of both Android and Apple mobile applications for remote control.
I pick up another ARLEC device, it’s an RGB LED powered from 240V mains. Again, the device has the same support for voice assistants and is controllable from the ARLEC mobile application. I imagine that after the adding the first device to the application adding more devices will be relatively straight forward.
There’s another brand of light on the shelf and it’s a fancy design. LED strips about 5cm in length mock an old wired filament. It’s a WIZ LED with white colors from warm to daylight. Again, advertised on the box is its compatibility with both Alexa and Google and again it has its own application as the primary controller. The box also advertises that no hub is needed. I wonder what the benefits are of a hub.
Behind me, the Philips Hue range sits. They’re at least double the price of the other lights, but they do look more professional. They also mandate the use of a hub, potentially adding extra complexity. Next to the Hue’s is the Amazon ECHO range. All in the dedicated Smart Home section of Bunnings.
Here’s where this story starts. I consider myself advanced in technology but I’m staring at this brand-new section and I feel daunted by the huge variety. I’m daunted by the inconsistent and intense marketing. I’m daunted by the unknown configuration challenges that may lie ahead. I decide that I need to get to the bottom of it all. I’ll keep it simple. My aim for this story is to detail exactly how each device manufacture has designed their configuration process from power-on to the first point of remote control.
The Switch, the Light and the Voice assistant.
I ended up walking out of Bunnings with a few ARLEC RGB LED’s, two of the ARLEC Twin Plug Switch’s, the WIZ Filament light and an Echo Dot. Very reasonably priced and with these the possibilities are endless.
Currently My most painful experience at home is managing the old pool filter and chlorinator. Every time I need to turn them on I have to walk out to the pool shed and flick the switch. To make it slightly more annoying there’s only a single on/off switch with a twin plug so If the pool chlorine level is correct I also have to unplug the chlorinator before running the filter. Of course, I could upgrade the pool system but for the price of a switch, well, it may just to the trick.
Our outdoor area has 3 existing 240V flood lights so I’ll place an RGB LED in each of those and I’ve just recently bought a new outdoor dining table so the WIZ Filament will look great in the existing downlight. Also, my partner has strung up fairy lights surrounding the table, so I’ll use the other ARLEC Switch to automate these.
That’s the plan.
From here on I’ll flag a technical part with a Getting Technical sub heading so if you’re only interested in the user perspective you can jump to the next part the story or If you’re like me you can spend forever getting you head around the technical details.
I don’t want the annoyance of remembering which device works with which application. That’s were Alexa will help. Alexa will be the core of my system and all devices will need to bind to Alexa. I’ll set this up first.
Just to be clear, Alexa is Amazons voice service. It can be integrated into many devices. I’ve bought the Echo DOT and that has Alexa pre-integrated. So, when I refer to Alexa it’s because I’m speaking or listening to the DOT, If I refer to the DOT it’s about the speaker itself and if I refer to the Alexa application it’s about the mobile application that interfaces my devices and Alexa.
Inside the Echo Dot box is a small black pamphlet. Quite simple and no stress. Four easy headings with a small amount of text for each. Overview, Step 1, Step 2 and an Optional Step, connection to a speaker which I’ll do another time. Step 1 is power; Step 2 is application. From here I put the instructions down and assume the remaining process to be managed via the application.
Through the Android Play Store I download and install the Alexa App. Android asks for some privileges and after granting the app permission I sign in with my AWS account credentials. The application signup process has been straightforward.
Now to provision the device. Before pairing the device the DOT displays a breathing orange LED to inform the user that no connection has been setup. Alexa asks to select the type of the device it should setup. For me I select Echo Dot and within a few seconds it finds the device named Echo-OEO. A few easy steps later Alexa says, “Your Dot is now connected” and the DOT takes over with and interactive meet and greet. Again, very straight forward, but how did it all work?
Build better voice apps. Get more articles & interviews from voice technology experts at voicetechpodcast.com
The primary provisioning method was via Bluetooth. When I opened the application, Alexa prompted me to turn on Bluetooth. Alexa undertakes device discovery and presents me with the discovered choices, in this case Echo-OEO was presented. After selecting Echo-OEO the DOT starts the connection process and once successful the user passes WIFI credentials across Bluetooth. The DOT then proceeds to access the network and confirm with the AWS DOT cloud service that it has been configured. Once configured the cloud service informs the Alexa app of a successful device setup.
But what if the mobile didn’t have Bluetooth available?
Deregistering is done within the application. The DOT takes a minute to reset information and then boot back to pairing mode. This time around I’ve turn my mobile Bluetooth off. A few erroneous steps later and the Alexa app has determined it cannot use Bluetooth and advises me to connect directly to the Hub; Access point provisioning. Once connected the Alexa directs me back to the Alexa app and the process continues as normal from there.
Provisioning using Bluetooth clearly has the greater advantage as it enables the Alexa application to scan for a device that hasn’t been setup and proactively prompt the user to setup the device.
To The Pool
Pool management is my first problem to tackle and for that I’m going to use the ARLEC Twin Switch. The pamphlet inside is clear “STARTER GUIDE”. There are 12 steps. 1 to 9 are configuring the device within the ARLEC application environment and Steps 10 to 12 are for connecting to the Google Assistant. The pamphlet doesn’t contain any Alexa instructions but refers to Amazon for more information on binding to Alexa. In comparison to the DOT’s pamphlet ARLEC explains their application walk-through step by step.
Summarized, ARLEC’s provisioning steps are as follows: download the application, sign up, power up, pair the device and bind to the voice assistant. ARLEC’s extended documentation may just be a little more work for the majority of users, but it may help a select few.
Provisioning the ARLEC required less steps than the Access Point provisioning mode used by Alexa for their backup method. Eliminating networks switchovers is the big benefit to the user experience in this case and both the DOT and ARLEC achieve it well.
Looking at my router the name of the ARLEC device starts with an ESP_. Which is obviously why they have the great price point. ESP is a well known and respected Chinese IOT device manufacture popular amongst hobbyists but also now mainstream consumer IOT. Looking into the documentation ESP offers two connection methods that fit the lines of this process: ESP-NOW and SmartConfig. SmartConfig is a Texas Instruments proprietary protocol that broadcasts a WIFI sequence encoded in the packet length over the same WIFI channel that the phone is connected to. It’s been around for a while now. The target device listens on all channels and uses the credentials encrypted in the sequence to connect to the network access point. Hence not WIFI connection needed by the device being provisioned. ESP-NOW documentation suggests that the connection occurs only between the mobile and the ESP-NOW device as an access point. The device enters SoftAP mode and negotiates credentials via a broadcast using some existing 802.11 magic. I feel these are largely the same methods to the developer; pass credentials without being on a network so that the device can then connect to the network. I can’t say for sure which method they’ve used without going any deeper and looking into the network activity. And I haven’t gone into the details of SmartConfig to confirm that ESP and TI are using the same methods.
What I find amazing here is the lack of support for this in the underlying WIFI standard. To get the best user experience possible these two companies have engineered their own provisioning method using workarounds within the current standard. I may be wrong here so please leave me a comment if you know anything more.
The Garden Lights
The process of the ARLEC LED setup is identical to the ARLEC Switch but even easier now that the mobile application is already up and running on my phone. The method of entering pairing mode changed slightly though as LED’s don’t have a switch or button. You need to turn the light on and off a few times to enter pairing mode.
The WiZ light, believe it or not utilises the same Smart Pairing method as ARLEC. The WiZ pamphlet says three steps are required for setup, download, pair and enjoy. Like the DOT the WiZ expects the user to be comfortable using the mobile application setup processes.
All third-party devices need to connect to Alexa Application via a skill. The ARLEC, and Wiz Skills are simply searched and added within the application. Once the binding is complete Alexa app automatically detects devices.
Each device manufacture manages asynchronous communication with their devices and they expose a set of functions to Alexa via the Skill interface. This means third party devices may have more functionality than what is exposed to Alexa. e.g The ARLEC application allows you to set more colours than you can select on Alexa for a LED via the skill interface.
tldr — Where are we at
I’ve just reviewed a select range of consumer IOT device; they are all at the affordable end of the smart home spectrum. I didn’t review any systems that use Hubs and I didn’t review other networking standards besides WIFI. But based on the small scope of IOT that I did review, these are my observations…
User experience is everything. All devices are clearly aiming the achieve the best possible experience. From my experience, having Bluetooth available really cleans up the process. All the user needs to do is power up the device and from there onwards the mobile application takes control. Most mobile phones will allow simultaneous use of Bluetooth and WIFI so it’s very achievable. But the low-cost equipment I bought didn’t have Bluetooth.
In common with all devices:
- The primary provisioning method provided the best user experience. No surprises there.
- The primary provisioning method eliminated the need for mobile network configuration changes; hence the phone had a network connection the entire time.
- All devices had a backup method of provisioning; in all cases that was Access Point Provisioning.
- All devices utilised a mobile application for provisioning and the generic process went as follows: Power-up device, install application, detect device with application, enable network access for device, pair device service with voice assistant service.
Although not directly technical I feel the documentation is important. Compared to the ARLEC, written documentation for WiZ and Alexa were minimal. This requires users to be familiar with how a general mobile application setup process works. In my opinion the DOT had a better mobile application walk through process to first setup their device.
By far, the biggest surprise, that I in no way expected to find when I set out on this adventure, was that due to shortcomings of the WIFI standard both Texas Instruments and ESP have “hacked” the standard in order to provide a better provisioning user experiences. I think this demonstrates where IOT is at the end of 2019; room for improvement.
Trying to look forward I wonder what features the next iteration of provisioning will bring? What steps of the process will be simplified, joined or scrapped to improve the user provisioning experience? What will this story be about at the end of 2020?