Home Assistant 2021.2 replaces OpenZWave with Z-Wave JS

Disclosure: This post contains affiliate links. If you click through and make a purchase, I’ll earn a commission, at no additional cost to you. Read my full disclosure here.

It’s a new month, and you know what that means: A new version of Home Assistant Core has been released to the public and made available to download. Home Assistant Core 2021.2 brings with it a major change for those invested in the Z-Wave ecosystem as the old integration, which is based on OpenZWave 1.4, is being replaced with Z-Wave JS.


Even if the Z-Wave JS news overshadows everything else, there have also been a few new Home Assistant integrations added, more setups have been moved to the web interface, and one (superfluous) service has been lost. So don’t worry, this article will not just be for those using Z-Wave.

Table of Contents

What’s new in Z-Wave JS?

The previous Z-Wave integration was based on OpenZWave 1.4 and a part of Home Assistant Core itself. But as all the rewrites have shown, Z-Wave is just too complicated and too heavy to be maintained and included in Home Assistant Core. Alongside that, OpenZWave 1.4 is starting to show its age and is no longer properly maintained. It was time for the integration to be rewritten yet again.


A working release of Z-Wave JS was first made available August 18, 2019, and it has since then been gradually gathering steam. Z-Wave JS allows you to control your Z-Wave network from Node.js and is coded only in clean JavaScript. Unbelievably, the Z-Wave JS integration with Home Assistant was created in a single month. Props to the developers for that one.

Bestseller No. 1
Zooz 700 Series Z-Wave Plus Mesh Network Scene Controller...
  • MAIN BUTTON: Connect a 120 V light fixture (up to 150 W for LED's) to control it via Z-Wave or use the main button for...
Bestseller No. 2
Aeotec Smart Home Hub, Works as a SmartThings Hub, Z-Wave...
  • Easiest way to make your home a smart home: Wirelessly connect and control a huge range of smart devices - over 5,000...

How Z-Wave JS work

As with the integration based on OpenZWave, Z-Wave JS is completely decoupled from Home Assistant. While the old integration used MQTT to communicate with Home Assistant, Z-Wave JS uses a WebSocket connection. But what differentiates it is that you will have to run a Z-Wave JS server that sits in between the Z-Wave USB stick and Home Assistant. Luckily though, there is a Docker container available, and the server will be installed automatically once you set up the integration, if you’re running Home Assistant and not just Home Assistant Core.


First reports on Z-Wave JS are claiming that it is much faster and more stable than the previous implementation. One community member has even gone so far as to claim that their response time has been halved when compared to OpenZWave.

Only use Z-Wave JS going forward

The old Z-Wave integration has officially been marked as being deprecated. Those just starting out with Home Assistant should only be using the new Z-Wave JS integration. Existing users can migrate their system but there is no rush, as the old integration won’t be removed anytime soon. That is of course unless you run into issues with newer devices.


The downsides of Z-Wave JS

Not everyone is happy with this development and while the complaints are understandable, the move away from OpenZWave was clearly necessary. The biggest gripe users seem to have is that Z-Wave is no longer built-in to Home Assistant Core. You used to be able to plug in a Z-Wave USB stick and have the integration set up instantly.

Yes, it might be more complicated to set up the Z-Wave integration for those of us running just Home Assistant Core. But if you are using Home Assistant, the container for the server will be set up and configured in the background. Considering that, the setup won’t be much different to what it is now.

If you do decide to continue using the old integration, please be aware that you might not be able to use newer devices. If you are currently experiencing issues when trying to add devices to your network, it might be because they aren’t, and won’t be, configured in OpenZWave.


New integrations: Monitor air, pools, and power

As usual, Home Assistant Core 2021.2 brings with it a few new integrations. That is, of course, besides Z-Wave JS being introduced.

Using the AirNow integration with Home Assistant, you can monitor the AQI in your area and as with most new integration, you can set it up in the web interface without having to touch any code. AirNow reports air quality using the official U.S. Air Quality Index (AQI), a colour-coded index designed to communicate whether air quality is healthy or unhealthy for you.

The Ondilo ICO integration allows you to continuously analyse the water quality of your pool or spa. The current water temperature, the oxydo reduction potential, pH level, and total dissolved solids will be reported back to Home Assistant. The ICO is a small, battery-powered device you simply drop into your pool and connect to using Wi-Fi. This integration can be set up using the web interface.

Huisbaasje is a provider of power meters in The Netherlands. Using this integration, Home Assistant will have access to your current power usage, your current grid power and gas consumption, your power return to the grid, and the daily total energy and gas used.

And finally, DHCP Discovery will allow Home Assistant to watch your network for DHCP requests for supported devices and services. This integration is by default enabled.


The following integrations with Home Assistant have been fully transitioned to the web dashboard. You can remove any existing YAML as it has already been imported as part of a previous release:

Turn an Aqara Water Leak Sensor into an instant rain meter

Bugs get squashed and ESPHome gains support for new displays

Liam Alexander Colman, the author and maintainer of Home Assistant Guides.

About Liam Alexander Colman

Liam Alexander Colman has been using Home Assistant for various projects for quite some time. What started of with a Raspberry Pi quickly became three Raspberry Pis and eventually a full-blown server. I now use Unraid as my operating system, and Home Assistant happily runs in a Docker container. My personal setup includes many Zigbee devices as well as integrations with existing products such as my Android TV box. Read on to find out more on how I got started with Home Assistant.

Leave a comment