Home Automation and Gesture Recognition

In today’s typical smart home, you do not find gesture sensors connected to HA controller. Gesture recognition technology exists, but it’s still too expensive for wide deployments. Some of the examples would be Microsoft Kinect or perhaps Flutter acquired by Google.

For a while, I was experimenting with several ideas on how to add gesture recognition to my sensor’s portfolio. I believe that such sensor could be valuable not only for home automation systems but also for commercial deployments. For instance, in a hospital, if one need to adjust the light level while wearing surgical gloves, gesture would be preferred over dimmer touch.

Inexpensive, embedded gesture sensor technology could replace dimmers and fan controllers but more sophisticated versions could also provide functionality to actually control more than one end-point. Imagine that horizontal gestures will allow selection of devices to be controlled while vertical gestures will actually allow control of the selected device. So, if I wave my hand down the light will slowly dim, until I generate another gesture to stop that action (or until the light would be completely off).

The initial proof of concept was build using optical gesture sensor connected to CC3200 board over the I2C bus. The CC3200 was connected over WiFi to the IP network and the MQTT protocol was used to report events. Actually, there are two ways to  interpret gestures;  CC3200 could decode detected sequence and interpret the event locally and then send it using MQTT to the HA controller. Alternatively, RAW events could be send over MQTT and then a server would interpret them using it’s more powerful CPU. In case of MQTT, or IP connectivity, both options work well, and either one could be selected.

In order to connect to an ordinary HA system, z-wave communication is required. Because of latency of the z-wave network, only local interpretation mechanism is acceptable. In case of z-wave, since we do not need IP connectivity any more, CC3200 is also too much for this system and a smaller processor can be used. Interpreted results will be send over the SPI bus to a z-wave module (radio) and then to your HA controller.

Initially, it will present itself to your HA controller as a light dimmer, but at later point, unique specification will be created in order to allow for wider scope of operation.

I was just notified by z-wave labs that this project was chosen as the Z-Wave Labs contest winner for August 2015. As a winner, I will receive both, software and hardware of the latest generation z-wave (5xx series) which will allow me to complete this project as fully functional z-wave gesture sensor. Big Thank You to Z-Wave Labs and all sponsors