Valid Generic HTML
SPDX-License-Identifier
CC-BY-SA-4.0

Home Automation Upgrade (2022)

James F. Carter <jimc@jfcarter.net>, 2022-12-16

I have a small set of smart switches (Z-Wave) controlling mostly lamps. I'm currently using Domoticz (version 2.0.2276) as the control software. This is seriously back version, because the Z-Wave integration was kicked out of version 3.x due to a political issue, which I take to be that Z-Wave is proprietary and its library is not 100% open source. However, modern (2022) Domoticz once again has Z-Wave support.

One of my switches died. I was not able to get the replacement to be recognized by Domoticz, i.e. paired with the Z-Wave controller. [In hindsight, this was my fault, not Domoticz's.] I have been meaning to replace Domoticz with something upgradable and I decided that now is the time. After research I decided on Home Assistant.

Abbreviations and Jargon Words

These jargon words are used in Home Assistant documentation:

Comparison of Home Automation Software

The probable market leading home automation software packages are Amazon's Alexa, Google Home, Apple's HomeKit, or various other closed source items. I'm rejecting them out of hand due to privacy concerns; specifically:

So a hard requirement for jimc is open source software with local hosting of everything. A Google search for home automation comparison in 2022 reveals that current interest is focused on: (product names link to their home sites)

Lots of Comparison Articles

OpenHAB vs Home Assistant — Find the Difference?

September 7, 2021, by JOSNA on ElectronicsHub.

OpenHAB is in Java. Inception 2010. Advantages: It has a lot of extensions. It supports zillions of devices, communication protocols, etc. It runs on all kinds of UNIX, and Microsoft Windows. Among the comm protocols are ZigBee (IEEE 802.15.4) and Z-Wave (proprietary). The author rates positively the documentation and user community.

Drawbacks: Because OpenHAB does so much, the user needs to do a lot of work to learn it all. The author warns that you need prior knowledge for hassle-free usage. Updates require the command line. It's a memory pig; a Raspberry Pi 3 (1Gb RAM) may run out of memory.

Home Assistant is in Python-3; Apache-2.0 license. Inception 2013. Advantages: It can federate with Google Assistant and Alexa. (Jimc believes OpenHAB can do this also.) Software distribution from GitHub. Flexible and customizable automation rules. One click updates. Good documentation. Active user community.

Drawbacks: Case sensitivity and configuration syntax can trip you up. New users may find it overwhelming at first.

Author's evaluation point by point:

Aspect OpenHAB Home Assistant
Configuration: OpenHAB takes 20-30 minutes, good documentation. H-A during setup can discover all existing devices. (Jimc says: configure Z-Wave radio first.) One-click installation, so they say. Good docs.
Updates: OpenHAB is complex and time consuming; looks like the update is installed like an add-on package. H-A: just click a button on the UI.
Supported devices: OpenHAB supports 792 kinds of devices from 111 vendors. H-A has about 1400 components presumably meaning supported devices.
Automation rules: OpenHAB extension language. H-A has a choice of 2 extension languages.
User Interface: OpenHAB has one. H-A is praised by the author for having a UI that is more user friendly and less complex than OpenHAB.
Mobile App: OpenHAB has them for iOS and Android; it is easy to use and user-friendly. H-A is similar but the author says it's slightly less developed than OpenHAB.
Add-ons: OpenHAB has extensive add-ons, e.g. Twitter notifications. It can use several databases including MySQL but not PostgreSQL. H-A has fewer, and the only ones I recognize are the DHCP server and Git puller. Other articles mention a lot more add-ons for H-A. No database engine is mentioned. (From docs: SQLite is the default but MySQL/MariaDB can be used for big systems.)
Conclusion: OpenHAB is more customizable at the cost of a steeper learning curve. H-A is easier to use and to set up, particularly for the beginner.

Jimc's conclusion: I should give serious consideration to Home Assistant.

Best of open source smart home: Home Assistant vs OpenHAB

By Alex Brice, February 28, 2018, on Smart Home University.

We have selected Home Assistant as the overall winner. This is due to a number of reasons, but more powerful automation engine, friendlier UI, more powerful integrations and stronger community being the main ones. Saying that, OpenHAB has a number of winning aspects and the victory was only by a thin margin. (In 2018.)

Updated in 2022-05-xx: He has continued with H-A and has $2K of smart devices and over 100 automation routines.

He has a lot of very detailed comparisons of different aspects such as the automation languages (Xtend vs YAML). His overall winner is still H-A.

Home Assistant vs OpenHAB - Which one is better?

By Lewis Barclay, Aug 20, 2020, on Everything Smart Home.

This author's take on the two programs is similar to previous authors. They have good and bad points, but H-A's ease of use makes it the winner for him. As for stability, H-A has never failed him (in about 2020-2022, 1.5 years) except once he filled up his disc with something. He doesn't have the long term history with OpenHAB so he can't really rate its stability.

He gives a link to his set of articles Getting Started with Home Assistant. Their main focus is on deploying the pre-stuffed image on Raspberry Pi.

OpenHAB vs Home Assistant vs Domoticz: The Ultimate Fight

by David C, 2020-04-16, on SmartHome Blog.

He recommends putting the winning software on a Raspberry Pi. Jimc is not taking that advice; Jacinth, my main router, an Intel NUC6CAYH (Celeron), runs 24/7 and does a lot of this kind of service in my house.

Installation: OpenHAB is very easy, particularly on the pre-stuffed RPi image called OpenHabian. 20-40 minutes work. H-A is also easy, only 10 minutes using their image. Domoticz is slightly less straightforward because there's no image.

Configuration: A pox on all their houses! For OpenHAB and H-A both, you will be stuck editing files, so he says. Domoticz can be configured with the web UI, but it's not very intuitive, he says. [Jimc note: I got my Home Assistant configured without editing files, only snooping to see what they were doing.]

Flexibility: Similarly, he rates all three poorly.

Community of Users: OpenHAB's community is the most active and most helpful. H-A's community is growing (jimc says: likely this comment is from before 2020). Domoticz has substantially fewer users than the other two.

Pace of development: Author concentrates on adding new devices. OpenHAB is quite slow because of a rigorous approval process, which helps stability. H-A is much faster (and sometimes the integrations have bugs). Domoticz definitely lags behind.

Automation: OpenHAB can do anything you want, but the Xbase syntax is not the easiest one to deal with. H-A's YAML is by far worse. Domoticz uses LUA which I find very clean and powerful. But he says learning Python is probably a lot more practical than learning LUA.

Conclusion: Domoticz users are moving to OpenHAB or H-A. H-A is developing fast and the UI is going to have a good WAF (Wife Acceptance Factor). OpenHAB is amazingly flexible. If you don't mind a slightly steeper learning curve, OpenHAB is the way to go.

From the first posted comment that caught my eye, by Philip (2020-03-21): Hi There! I have tried OpenHAB some times ago, and the main thing that makes me change to another one is: JAVA. If all is going nice it's OK don't touch the f…ing working thing! But it's always so complicated, so heavy, so hard to tweak, so hard to understand why it's not working.

I think I have a feel now for the available products, and can stop reading blog posts.

Preliminary Planning

Years ago I installed Domoticz-2.0 for OpenSuSE Tumbleweed off a SuSE community repository, and I was planning to do the same this time. Available packages for Tumbleweed on OpenSuSE at the time of writing (2022-12-xx) are:

My evaluation of the three candidates goes like this:

To install Domoticz you just install the package and its dependencies. H-A is not so simple; it is designed for both security and maintainability, and the kind of cowboy programming that I followed with Domoticz is not going to cut it. H-A has four levels of installation, ordered from easiest to hardest, all but one of which I tried (in reverse order):

If You Are Thinking of Changing Protocols

I found this useful discussion comparing the major communication protocols for home automation: ZigBee vs Z-Wave vs WiFi (OP CO_4x4, 2021-12-xx). He's doing an upgrade and refurb campaign on his IoT Devices, and wonders if changing the communication technology might be a good idea. He got 130 responses. The consensus is that each has its strengths and weaknesses, and the environment makes a difference too. Almost nobody uses a single technology. But here's kind of the majority opinion:

Tidbit about CHIP/Matter, from the Wikipedia article about Matter. Amazon, Apple, Google, Samsung, and the ZigBee Alliance set up the CHIP project to come up with a new home automation standard. Wire protocol up to layer 4 is generic IP. The normal paradigm is local control; an off-site rendezvous server in the cloud is not preferred, i.e. no internet connection required (usually). Spec version 1.0 was published on 2022-10-04. Version 2.0 is promised around 2024-03-xx, with minor versions coming out about every 6 months.

The article doesn't say anything about layer 1 protocols, i.e. the operating frequency, but the presence of ZigBee in the alliance suggests that 2.4GHz Wi-Fi and IEEE 802.15.4 are likely to be included. Several devices including hubs were mentioned as having received firmware updates that added support for the Matter protocol.

Installing Home Assistant Operating System

The first step is to configure a virtual machine (KVM) for it to run on. Why don't I use the H-A Container image, you ask. Because I absolutely require add-ons: all my Devices are Z-Wave, with an Aeotec Z-Stick Gen5, which has official and community drivers in the form of add-on daemons, and H-A Container can't do add-ons. In forum posts, respondents often point out that add-ons frequently are available as Docker images and this is the way to go if you're running the Docker image of H-A Container. But I have no experience with Docker and I'm already leery of H-A Container on Docker, and I'm even more leery of add-ons on Docker. Therefore the next try is going to be H-A Operating System in a VM .

Here is the generic procedure to set up the VM. The following is From the H-A Installation page; follow the Linux link. Steps:

Onboarding: Configuring Home Assistant

Retrying Home Assistant Supervised

It's stupid to try to jailbreak H-A OS; I really should make H-A Supervised work in my own context. I'm sure there's no actual dependency on Debian, just that the developers can't deal with a zillion idiosyncratic distros with version skew on everything.

Reviving Orion

Orion is my name, IP addresses, etc. for a machine that I'm setting up. My plan is to create a new VM on Jacinth under this name, install H-A on it, (shut down H-A OS on Dragon), restore my backup and see that it works, and then rename it to Dragon replacing the old one. The first step is to clone Dragon's VM as Orion. documented in a separate writeup,

Activating Home Assistant Supervised

Home Assistant installation on Linux. Find the Home Assistant Supervised section at the bottom. Check out the requirements, then proceed to the installer documentation. Remember that we have (or should have) SuSE's tweaked home-assistant package already installed.

Requirements checklist:

They require these additional items:

The H-A-Supervised installer. Following along in the instructions:

Conclusion

I made progress in the effort to get H-A Supervised running on Orion, but as they warned, that project was turning into a time sink. When I found by accident during a software update of H-A OS that it was doing a Debian update as well, that dispelled my major objection to using H-A OS, and I decided to live with that (and turn my attention to another high priority item). H-A OS is performing reliably for me, and my needs are modest, so Dragon with H-A OS now has a permanent place on my main router Jacinth.