What's Home Assistant and why should home automation enthusiasts consider it?

Did you ever wish that Alexa or Google Assistant was able to let you have a smart home instead of just a bunch of smart things? It would be awesome to wake up to fresh coffee, have the news playing on a TV or radio, the toaster pre-heated and the temperature adjusted correctly and all the other things we can use smart gadgets to do, but have it do them automatically based on the time you set your alarm clock. How about dimming the room lights, turning on any back lighting on a monitor or display, and making everything cozy when you start playing a movie?

These are relatively simple tasks that should be able to be strung together and just work instead of us having to open 10 different apps and make 10 different adjustments individually. Isn't that what we all imagined when we decided to start having an automated home?

You can, and you can even do a lot more with a good automation hub. And a good automation hub doesn't have to be expensive because you can use the Home Assistant platform on something as cheap as a Raspberry Pi and bring your home setup into the 21st century for about $50.

What is an Automation Hub?

It's a smart appliance that can hook into other smart devices and issue commands that you've setup under the circumstances you've setup.

We have a basic example of an inexpensive hub with Samsung's SmartThings. With the SmartThings software you can set up schedules or commands driven by an event (event as in it's cold outside, not event as in a concert or movie premiere) and individual smart devices can work together and be smart like they are supposed to be.

An Automation Hub is probably what you expected from your Echo or Google Home and didn't really get.

The Home Assistant platform works the same way. You let it find all the smart things on your local Wi-Fi network, connect with the ones it can control, and gives you a simple interface to make them act as a group based on when and how you want the single command to trigger. What makes Home Assistant great is that it isn't trying to focus on a single brand of smart products. Most of the gadgets you already have will work, and connecting to network services like IFTTT is straightforward and simple.

It installs on any always-connected operating system that can support Python 3 apps and it's very small and lightweight. This makes it great if you want to use a Rasberry Pi as a small and inexpensive Automation hub.

Why do I want this?

Maybe you don't. It's important to remember that Home Assistant can't control anything itself. It only acts as a master device that can tell other services like Philips Hue or Nest to do something. If you don't have any existing smart devices you won't see Home Assistant do anything. But if you have already invested in one or more smart devices, it's a really great way to extend the features and functionality that won't cost a lot of money.

Home Assistant is easy to use and setting it up is inexpensive.

It's also a local service, which means it's not going to send any data to the cloud, even if it has to retrieve data from the internet. The routines and commands you set up are for your eyes only. It's also pretty easy to "program" routines using a web interface hosted locally from the Home Assistant program. That's important because a service like this can get extremely complicated if you want to program extensive routines, so having the interface nice and simple makes doing it a lot easier.

I think anyone with more that a couple smart gadgets and even a slight interest in taking the next step really needs to check Home Assistant out.

Jerry Hildenbrand
Senior Editor — Google Ecosystem

Jerry is an amateur woodworker and struggling shade tree mechanic. There's nothing he can't take apart, but many things he can't reassemble. You'll find him writing and speaking his loud opinion on Android Central and occasionally on Twitter.

12 Comments
  • I came across this awhile ago and it's an awesome DIY solution.
  • If you have Belkin Wemo and TP-Link Kasa smart switches, I highly recommend Automation Manager. It offers a ton of flexibility, and the developer is constantly adding features and responds quickly to feedback. All you need to run AM is an old Android device, which you leave at home as your server, and I gather that it now runs on Android TV (though I don't have one to test that myself). You can set up remote access to your AM server via Google Drive, and trigger switches and events using IFTTT and Tasker. It can get a little complicated, but no more than setting up Home Assistant on a Raspberry Pi.
  • I've been using Home Assistant for over a year. It's great to start out on a Raspberry Pi, but if your automation routines start growing in complexity, I suggest upgrading to a PC-based host running Ubuntu Server 16.04 and using the Home Assistant Docker package. I was seeing slow-downs with the Raspberry Pi 3 - most notably delays in lights turning on when walking into a room. The hardest part is coding the routines. There is a steep learning curve, but once you get it, it becomes much easier. The routines use YAML, and it's very particular about spacing. You have to indent with 2 space, and you can't use TABS unless you've programmed them to insert spaces instead. I suggest the Atom YAML editor. [edit] The article mentions editing from the web interface. If that is possible, I haven't figured it out. I created a SAMBA share and just access the files through the network that way. [/edit] I run my setup on an old Core2Duo processor system with 8GB RAM. I also host a Plex server and a Minecraft pocket server along with my Host-Assistant docker. I'm planning to build an i5 mini-ITX system to replace it as I need something quieter. An Intel NUC would be a great host machine. If this is new to you though, start off with the Pi setup. You can migrate your YAML files to the new system just by copying them. I have a combo of Hue lights, Hue motion sensors, TP-link plugs, Nest thermostat, MagicLED strip lights, and a Xiaomi gateway with door sensors and wireless switches.
  • Here's what you're looking for to alter your configs from within home assistant. https://www.home-assistant.io/docs/configuration/ Also make sure you check out node-red it's Soo much simpler than editing yaml. It's a graphical editor that links in with home assistant. Once it's installed you just use that for all of your automations. I really wish HA would implement something like node red directly into HA. Well hope this helps. Hit me up if you need help.
  • How does this compare to Openhab? I've been looking into Openhab on a Raspberry Pi but I've also seen Home Assistant and was wondering what the advantages and disadvantages between the two are.
  • Can it make phonecalls on a digital landline? I'm looking for an assistant for my elderly but fiercely independent mother. If she falls, I need her to be able to yell, "OK Google (or Alexa, or whatever), call 9-1-1" and have the call come through on the speaker. Without this feature, these assistants are not sufficiently functional.
  • I'm pretty sure that both Google Home and Amazon Echo devices have that capability built in, so not sure why you'd need Home Assistant to do that.
  • This is already possible with both Google Home and Amazon Echo. The Google Home let's you put in your actual cell number for caller ID, but you cannot receive calls on the Google Home. With the Amazon Echo you can get an addon box that connects to a land line so you can use the Echo to make hands free calls on your home phone... For people how actually still have one.
  • I've been using home assistant for about half a year now. First on a pi zero (way too weak) and now on a pi 3 (as hassio) and I've gotta say it works quite well. It does still have a steep leaning curve for learning how the yaml files work (it's just not possible to do everything from the interface (yet)). For the automations I found it was easier to use appdaemon instead of the standard automation interface, that is, if you know python. But there's soo much integration, anything is possible with it!
  • https://www.home-assistant.io/docs/configuration/
  • Can anyone recommend a good starting point for Home Assistant? I have started to look at this but am very much a noob. I'm interested in what can be done with this but it needs to be in simple words! How about a series of articles on Android Central?
  • I would suggest checking out the home assistant forums, they also have a discord chat for any random questions that usually get answered very quick. Reddit is another good source there is an entire subreddit dedicated to home assistant. I get on Reddit and help out some of the new guys some times. So come join in the convo.