I started experimenting with Philips Hue in December 2017, I was quickly impressed by how easy it was to automate and add functionality to my day with Hue. I had no previous experience with home automation, my knowledge within the space of IoT in general was limited to some tinkering with an Arduino Uno.

Fast forward into January/February of 2018, I was looking to add more functionality to a very modest home automation setup (the setup still only consisted of Philips Hue lights, but now included a bedroom and a kitchen). I browsed several kits from various vendors, but they all had the same problems:

  • It was proprietary only.
  • Locked you into an ecosystem.
  • Came with custom apps (some quite hideous).

So I turned to google in hopes of finding a smarthub that could talk across all protocols, was open-source, and had integrations which could connect it to proprietary devices.

Enter Home Assistant!

This is exactly what a smarthub in the age of home automation should be:

  • It has an easy install process (but you’re still required to be somewhat technically savvy).
  • Has integrations for pretty much any device from any vendor you’ve heard of, called Components.
  • Open-source!
  • Runs flawlessly on cheap hardware such as Raspberry PI (I recommend version 3 model B which includes wifi).
  • Finds most devices connected to your wifi through the auto-discovery feature.
  • Has a powerful interface for automation, scripting, events, services and customization.
  • Offers a beautiful dashboard built using Polymer and Material Design.
  • And (since I am a fan of newer web technologies) the frontend is a Progressive Web App, this means it can be installed to your homescreen on selected operating systems.
  • The list goes on…

The interface

The control panel is as previously mentioned a web application. This means you can access it from any browser on any device connected to your wifi (it can also be customized to be reachable from outside your network). No more dedicated apps restricting access to specific device/OS combinations. The control panel is also built to scale to any device

mobile control panel


Let’s start with the overview: overview Overview displays all connected devices and their current status. It also displays your automations and whether they are enabled or not.


map Can be set up to track devices and their locations, in addition to setting up zones. I personally have not found much use for this yet (the map itself is not shown in this post).


logbook Logbook diplays all activity for all your devices. It also displays what automations has triggered and when.


history History is similar to logbook, but displays activity on a timeline for each device connected.


hassio This tab I believe is dedicated to installations of hass.io.


configuration Finally we have configuration, where all your scripting/automation and customization lives. It also might show components that have their own configuration options (Such as the Z-Wave component).


When it comes to installation you have two choices:

  • Standalone, requires manual setup of OS on your device in addition to a Python installation.
  • Hass.io, an all-in-one solution that is it’s own OS.

The differences are listed in-depth in the official documentation.

Closing thoughts

What really stands out after having used Home Assistant for several months is the ease of use, the amount of integrations available, good documentation, and a great community. There is a lot of great content and tutorials posted by the community, including a dedicated podcast discussing the latest updates and changes.

The future of Home Assistant

The founder of Home Assistant was hired last year by Ubiquiti Networks to work on Home Assistant full-time. The project will remain open-source and Ubiquiti Networks will not have any influence over the direction of the project, which was also discussed in episode 23 of the Home Assistant podcast. This is something I believe will greatly improve the speed and quality of the project going forward.