Posted on (read in 3 minutes)

Tags: home-automation homeassistant

Given that I work in the technology sector, it should be no surprise that I have an interest in home automation. I’ve toyed with it on and off for years, but finally seem to be making progress with a system that actually does what I want. In this post, I’m hoping to kick start a series of posts that document my journey and setup with home automation. Currently, that entails my Home Assistant-based hub and all the devices it integrates together.

In the beginning, there was X10. In the late ‘90s, I remember when a new piece of open source software called BottleRocket burst onto the scene. It promised the ability to control your X10 FireCracker and thus be able to turn your lamps and appliances on and off via a serial device connected to your Linux machine. This intrigued me, but I never actually took the plunge and got one. This is probably because I was in my late teens, wrapping up high school and getting ready to head off to college. I didn’t have the time or, you know, a house to do it. But this is when I saw the future and knew that someday, I would embrace it. Well, the future is here.

Since then, X10 has been supplanted by newer and fancier protocols like Z-wave and Zigbee. Not only that, there are a plethora of proprietary protocols that piggyback on RF, Wi-Fi, or Ethernet. In my house, I have a mix of all of these. Unfortunately, none of these things have any extensive native integration. This means that you’re left with a bunch of devices hat can’t communicate, collaborate, and combine into a system greater than its parts. Enter the smart home hub.

Originally, I tried an open source piece of software called openHAB to provide a bridge between all of my different types of devices. It was okay, however I never really felt it was the solution for me. Scripting it wasn’t very intuitive and it was written in Java. The web user interface was also pretty boring; basically a bunch of nested menus with switches and buttons. It was entirely serviceable, but not nice looking.

After openHAB, I tried the SmartThings version 2 hub. SmartThings is a commercial product. It is a hardware hub that natively supports Z-wave and Zigbee. It comes with a mobile app for your phone where you do the majority of setup and control. At least at the time, there was no desktop application or end-user web interface. To use it, you needed the app. Another issue I had with it was that it was a cloud-first product. The company promised to support more and more local processing, but the majority of automations actually ran in the SmartThings cloud. As such, it was slower due to the round trip time to the cloud and it wouldn’t work at all if my Internet was down. Worse yet, when I was using the product they were in the middle of resolving some scaling issues. There were times when my automations didn’t run at all.

After striking out with both openHAB and SmartThings, I accidentally stumbled upon Home Assistant.