Having started home automation using a few Philips Hue lamps and some ESP8266 sensors using OpenHab (now archived), I have moved everything over to Home Assistant (HASS) which I have generally found much easier to use.
Home Controller
As I as was still running OpenHAB 3 on a Raspberry Pi 3 I installed HASS onto my old ODROID C2 which went very well.
HASS also runs MQTT to interface to some sensors, and also Node-RED which allows easy graphical configuration of additional logic to support dynamic timing for lights, etc. I find this somewhat more intuitive than building automations in YAML.
In addition to the automatic elements in HASS, status and control can be achieved via the HASS App for iOS and Android running on our iPhones / iPads, on a spare 10″ Lenova tablet, as well as via Web browsers on our computers.
Lights
It was very important that whatever I did had the maximum WAF (Wife Acceptance Factor) so I did not want to go changing light-switches for remote controlled versions (the lack of a neutral wire in the lighting circuits of our UK home was an issue anyhow). As a result I went for remote controlled lamps instead. I quite liked the Philips Hue system although the lamps are pretty expensive but I found a recommendation for the Innr smart lights which work with the Philips bridge. I bought a Philips Hue Bridge, a Philips remote control switch and several Innr lamps. This bridge easily integrates into the HASS environment, and I use some Node-RED flows as well:
- to bring the outside lights (welcome / drive / front door) on at dusk, and off some time (random) around bed time
- to ensure lights come on dim after we have gone to bed, but bright in “waking” dark hours
Alexa
I linked an Echo Dot to the Home Assistant skill on Amazon, using the Home Assistant Cloud (Nabu Casa), and can control lights verbally: “Alexa kitchen on, please” turns the kitchen light on, and check sensors and other things.
Temperature Sensors
I wanted temperature sensors to use ESP8266 but the WiFi connection is power hungry and I found they did not last very long with batteries. So I looked at alternatives.
-
Battery Operated #1. I built sensors based on MySensors guides using Arduino micro controllers combined with 2.4 GHz radios which can run off two AA batteries for a substantial period by sleeping much of the time. But I had a lot of difficulties with very limited range, probably due to the Chinese clones I was using, so eventually abandoned that.
- Battery Operated #2. I discovered ESP-NOW (official docs here) on the ESP8266 which avoids the overheads of Ethernet and uses direct connection between ESP8266. Had several temperature sensor nodes running, using the EnigmaIOT protocol, and an ESP8266 based gateway which provides an ESP-NOW interface directly with the sensors, and an MQTT over WiFi interface back to Node-RED and OpenHAB. This proved substantially more successful but eventually dropped as I could not get more than 4 or 5 months out of a pair of AA batteries, particularly on the outside sensor.
- Mains Powered Sensors. Finally ended up using ITEAD SONOFF Basic switches as mains-powered ESP8266 and added DS18B20 temperature sensors. These report over MQTT to Node-RED and HASS. Refer to “Setup SONOFF” page for details of using ESPURNA on these devices.
Other ESP8266 Devices
The other ESP8266 devices are ITEAD SONOFF switches used to control some LED strip lights in the kitchen and dining room, and I was working on adding a digital thermostat connected via MQTT back to OpenHab, but that has been abandoned and replaced by a Nest Thermostat.
Notes / Resources
- Programming environment for Home Control
- TODO: put installation documentation for all elements online
- TODO: add details of Node-RED flows [done for Weather and Lights widgets]