Skip to content

Home Automation System Based on the Home Assistant

The Home Assistant can be a great base for the home automation system. In this post, I’ll show you my first Home Assistant configuration for a couple of devices.

Why the Home Assistant as a smart home system?

  • First of all, Home Assistant is an open-source project that is actively developed and has a strong community.
  • Its main advantage is the ability to integrate multiple devices from different vendors. Of course, there are systems like Google Home or Apple HomeKit which can integrate devices from different vendors, but their possible integrations are very limited in comparison to the Home Assistant.
  • What else, the Home Assistant has a really good-looking frontend in the form of Lovelace dashboards, which can be configured through a user interface or YAML files. Moreover, it that can be extended with custom components. Such components are written by many developers and then published on GitHub. But of course, you can create your components with basic knowledge of JavaScript, HTML, and some CSS.
  • The Home Assistant operates locally without the need for cloud, so it can be run locally without external access which improves safety. If you want to preserve external access to the system, then configuration with a VPN will be still very safe.
  • It is primarily written in Python, enabling the creation of custom backend components in this language.
  • Automations can be created easily through a user interface or YAML files, using as a simple set of rules and actions.

My example Home Assistant configuration – the first version

I have set up a basic configuration of a Home Assistant system for several devices such as lights, sensors, media, and air purifiers. The used hardware is listed below.

The complete system configuration can be found on the GitHub repository – mdrwiega/home_assistant_config.

Installation

There are several options for installing Home Assistant (HA). For example, it can be used ready Linux-based system with pre-installed Home Assistant, the docker image, or manual installation from packages. More details about HA installation methods can be found at home-assistant.io/installation.

I chose to use the docker image with HA, for its simplicity and portability. I had in mind that the server can be switched even between different architectures (arm, amd64) with minimal effort.

And this turned out to be a good choice because as I initially ran the system on a small, single-board computer Asus Tinker Board. But later moved to a higher-performance server base on amd64 architecture with an SSD for better performance and robustness.

Dashboard views

The smart home system user interface consists of a few views. The first is the main view and two others are used for the configuration and maintenance of the devices.

Main view

Devices configuration/maintenance

Server and network

Software

Integrations

Application Integration Description
Windy.com iframe Weather map
Airly.com airly Outdoors air quality
Met.no Weather Forecast Card Forecast (Meteorologisk institutt)
SpeedTest.com speedtestdotnet Monitoring of the internet speed

Custom cards – Lovelace dashboard

Hardware

Lights

Device Connectivity Integration Description
Yeelight Ceiling Light (YLXD01YL) WiFi/Bluetooth yeelight 32 cm, 1800 lm, 28W, 2700-6500K
Yeelight Ceiling Light (Jiaoyue 480, YLXD05YL) WiFi/Bluetooth yeelight 48 cm, 2200 lm, 34W, 2700-6500K

Air Purifiers/Humidifiers

Device Connectivity Integration Description
Xiaomi Air Purifier 2S WiFi xiaomi_miio <=288 m3/h, 21-37 m2, 31-66 dB, 1,5-31 W, HEPA
Xiaomi Air Purifier 4 WiFi xiaomi_miio <=400 m3/h, <50m2, 32-63 dB, <30W, HEPA H13, Ionizer
Smartmi Evaporative Humidifier WiFi xiaomi_miio 240 ml/h, 4l tank, 34-47 dB, <40m2, 8W

Sensors

Device Connectivity Integration Description
Xiaomi Temperature & Humidity 2 Bluetooth (BLE) Xiaomi BLE resolution: 0.1 oC 1% RH

Vacuum Cleaners

Device Connectivity Integration Description
Xiaomi Roborock S5 WiFi xiaomi_miio Cleaning robot with lidar

Media

Device Connectivity Integration Description
Ikea Symfonisk Speaker (Sonos) WiFi Sonos Smart speaker
Samsung TV UE55NU7172 WiFi samsungtv Tizen based

Network

Device Connectivity Integration Description
TP-Link Archer C7 (AC1750) Eth/WiFi Router, 1750 Mb/s a/b/g/n/ac, 2.4/5 GHz

Others

Device Connectivity Integration Description
C&H Veritas WiFi gree Air conditioner, 3.5 kW power
Brother DCP-1610W WiFi brother Laser printer
Linak desk Bluetooth linak_desk Electrical desk with adjustable height

Conclusion

Home Assistant is a powerful system for creating a smart home. It can be easily configured and it provides a wide range of features and integrations.

The next topic is reliability which is a key value behind the smart home system. Based on my experience, I think the Home Assistant is reliable if configured correctly. I would recommend disabling automatic updates as some of them contains breaking changes. So, if you need to update the system it is better to do it aware. Another thing is related to server reliability. That is why I wouldn’t recommend the installation of the Home Assistant on single-board computers equipped only with an SD memory cards interface. I have found that the running system can quickly cause memory card failure. For better reliability, I recommend using a system with an HHD or SSD.

Links

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.