How to achieve Smart Home nirvana (or, home automation without subscription)

What comes to mind when you think of a Smart Home? Wi-Fi enabled light bulbs, video doorbells, cloud-connected robot vacuums, or smart fridges perhaps? Brands like Google/Nest or everything enabled with Amazon’s Alexa? While often providing some genuine convenience, these devices are also usually designed to invite and lock users into manufacturers’ ecosystems. Create a cool piece of hardware, you’ll make one sale. Create a cool piece of hardware that extracts recurring monthly service fees for cloud storage or to unlock extra functionality, and you’ll have sales for life.

Compounding our collective frustration, these ecosystems are often incompatible with each other and require multiple different apps for control. Not only are subscriptions and upselling part of the game, the underlying business models for these products are built around planned obsolescence and mining user data.

Luckily, aspirational smart home folks in 2021 have at least one viable alternative: Home Assistant. This piece of open-source software is the proverbial ring “that in the darkness binds them.” It is the glue for smart home gear spanning all sorts of manufacturers from behemoths like Google to minnows like Shelly. It’s a project that has set out to change all of the smart home pitfalls listed above by putting local control, privacy, and interoperability first.

An example of a Home Assistant dashboard used to monitor an RV.
Enlarge / An example of a Home Assistant dashboard used to monitor an RV.

By acting as a single configuration point for multiple ecosystems, Home Assistant is in a uniquely powerful place in the modern Smart Home. It is aware of the state of every entity in your home and can therefore do useful things like close the garage door if you left it open when you went to bed or left your defined home zone. I will never tire of having the lights automatically fade up one hour before sunset either.

If this sounds too good to be true—all the benefits of a smart home without the downside associated with off-the-shelf solutions—today is the day to see for yourself. Let’s walk through the building blocks required to put together your own self-hosted, subscription-free home automation system. Using the Home Assistant project as a foundation, we’ll cover some must haves for new tech, highlight some of our favorite open-source home automation projects, and give you a quick primer on how to put all of it together.

Home Assistant, the basics

Considering the title of this article, this note is a bit awkward. But when you initially choose to build out your smart home with the Home Assistant project, there is an optional $5 per month subscription. This is administered by the company behind the project, Nabu Casa, which was founded in 2018 to ensure the Home Assistant project remained sustainable. For the company, these fees allow Nabu Casa to pay a small number of staff. For you, the $5 per month fee enables your local Home Assistant instance to effortlessly work with popular cloud services like Google Home or Amazon Alexa, and it also permits access to Home Assistant from anywhere with minimal setup. That said, it is definitely possible to mirror both of these functions without the subscription by using a reverse proxy yourself if you like.

While there are other choices in this space such as Domoticz, OpenHAB or Gladys, Home Assistant will be our focus today because it’s free, open and has a *huge* community behind it. At the time of writing, it has over 1700 integrations with all manner of devices, services, and hardware supported. Plus, it’s a regular feature of Github’s trending page too.

Versatility is the true magic of Home Assistant. In effect, it speaks 1700 different languages and brings them all into one place. Build a Smart Home ecosystem with Home Assistant at its core, and devices from completely different ecosystems can finally talk to each other. Would you like the lights to automatically turn off when you turn the kettle on? With Home Assistant, you can do that!

Let’s look at a more realistic example of a useful automation based on this principle. Say you have two sets of lights on totally different circuits that you always want to be in sync, perhaps downstairs and upstairs hallway lighting. With Home Assistant monitoring the state of these entities, it can react and do things automatically. In other words, if light1 is on, then turn on light2.

Time for some key terminology: Home Assistant performs such actions when certain conditions are met or triggers occur. This allows the construction of complex logic such as “turn down the thermostat, ensure doors are locked, and all lights are off when the sun is below the horizon and no motion is detected for one hour or guest mode is not enabled.” Consider how many apps you’d have to open to do all that by yourself: an app for the thermostat, a smart lock, and motion detection via a camera or sensor at least.

Without some Home Assistant glue in the middle, most home devices aren’t really “smart” or “connected.” They are remotely controllable, which is an important pre- requisite for being automated, but that should not be conflated with automation.

Automation is your house reacting to the time of day, the weather, your presence, and so on without need to manually activate the devices every time. With Home Assistant flexing all its muscles, in theory it’s possible to build a home where you shouldn’t need to touch a light switch or a thermostat because your automations are created with enough care and thought.