My Story with Home Automation and Home Assistant

Home Assistant

Background

So, my Home Automation journey starts like may others: I bought one smart plug.

Some of the wiring decisions made while building my house make no sense. In my family room, the light switch controlled an outlet in the very back of the room. But that wasn't a good place for the lamp for the room. The lamp needed to be way across the room where there is no switch-controlled-outlet.

I bought a Wemo Mini Smart Plug 3-pack. I removed the long-ass extension cable I had running along the wall (and across a doorway) from the lamp to the switched-outlet. Then we could turn on the lamp with, "Hey Google, turn on the lamp." And it was glorious!

The next thing we realized was that we could control our Google Chromecast with our Google Home and use it to turn the TV on and off. Another big win!

Epiphany

One day, I could not remember what I had called the Chromecast. I yelled, "Hey Google, turn on the Family Room TV." Nope. "Hey Google, turn on the Downstairs TV." Nope. And, out of frustration, "Hey Google, turn on the God Damn TV!" Obviously that didn't work. But, why not? We don't have kids. And then it hit me, I should name the Chromecast: God Damn TV!

I swear, it never gets old: "Hey Google, turn on the God Damn TV." "OK, turning on the God Damn TV."

A Modest Start

During the lock down in 2020, my wife and I decided to paint our family room. As we were wrapping things up, we noticed that the old switch/outlet covers didn't look right any more. And I thought that I should replace the switches and outlets too with more modern hardware.

AND I CAN MAKE IT SMART!

So I ended up buying a bunch of TP Link Kasa light switches and outlets. At one point, I had replaced all of the light switches and several outlets with Kasa devices. Then I wanted to start doing some automation. The Kasa Smart App allowed for scheduling lights, so I scheduled a couple lights to come on automatically. Additionally, I have a pair of lights on the back of my house that are individually controlled and I wanted them to work as a pair: either switch would turn both lights on or off. The Kasa app allowed me to do that. But the Kasa app had a limitation of only 3 automations like that.

Research

I started looking into what options I had to be able to do more automations: IFTTT, Home Assistant, Google Assistant, Amazon Alexa, and OpenHAB. There are others, but I didn't look into any of them:

  • IFTTT sucks because it's super slow and they only allow three applets for free.
  • I tried OpenHAB and I couldn't wrap my head around it.
  • Back then, Google Assistant didn't have all of the features it does even now.
  • I don't own any Amazon Alexa devices.
  • Then I tried Home Assistant

Home Assistant

I had a Raspberry Pi 4b lying around so I installed Home Assistant on it. I believe it was around Home Assistant version 0.117.x time frame (November 2020).

I fell in love. I set up my switches and outlets. Set up some automations and had things working great in no time.

Progress

I will document some of the cool things I've done in Home Assistant, but here are a few things:

Hardware:

  • Migrated from Docker-based HA install on RPI4 to Home Assistant OS running in a VM in QEMU on Debian Server on an i5 Intel NUC.
    • I felt like Home Assistant OS is easier for someone non-technical (like my wife) to manage should something happen to me.
  • Bought Home Assistant Blue to migrate HAOS to from the VM
    • Compared to running in a VM on the NUC, the HA Blue is slow!
  • Bought a Dell Optiplex 3040 i5 desktop to run HAOS on.
    • Slightly slower than the i5 NUC, but MUCH faster than the Blue.

Protocols:

  • Wifi/Cloud: I started with Wemo devices (controlled by Google Assistant). They were not reliable.
  • Wifi/Cloud/Local-polling: I bought a bunch of TP Link Kasa devices, but had some problems with them to be documented later.
  • Wifi/Tasmota(Local): I bought a TreatLife (Tuya) Fan/Light controller for two of my fans, loaded them up with Tasmota, and LOVE them.
  • Wifi/Tasmota(Local): Replaced all Wemo and Kasa devices with Treatlife (or similar) devices and loaded them with Tasmota.
  • Zigbee: I bought a bunch of Zigbee devices like buttons, door/window, temperature, water leak, and motion sensors.
  • Wifi/Tasmota(local): I built a few Wemos D1 Mini Tasmota devices for infrared remotes, infrared receivers, buttons, and current monitors.

Zigbee

  • I started with a Conbee II stick running deCONZ
  • I bought a Sonoff Zigbee Wifi Bridge and loaded with Tasmota to use ZHA in Home Assistant
  • I settled on a Slaesh CR2652RB Zigbee stick for Zigbee2MQTT
    • This is the solution I'm using now and am very happy with it

Conclusion

I will continue to document my Home Automation journey hoping it will inspire others.