Discover how to use ZWave JS in Home Assistant, one of the most reliable and complete wireless technologies to unify your smart home.
How to install ZWave JS in Home Assistant
For a smart home, there is a popular wireless technology that is, in my opinion, one of the most reliable and comprehensive.
This is Z-Wave technology.
Z-Wave technology is currently in the shadow of Zigbee technology, as Zigbee was adopted by many brands and we have very low prices, which was one of the reasons why Z-Wave has lost momentum.
But this Z-Wave technology is still a reference for a reliable installation. In addition, there are some companies that offer complete Z-Wave devices at very interesting prices, such as Zooz, Neo or Shelly, which can facilitate its adoption.
So today, let’s find out how to install ZWave JS in Home Assistant and use some Z-Wave devices.
Z-Wave has evolved over the years, with Z-Wave 100, 300, 500, 700 and 800 versions, offering more and more communication range, more speed, more security and lower power consumption.
In my example, I will use the Zooz ZST39 dongle, which uses Z-Wave 800 series technology, so we will be able to enjoy the latest improvements with Z-Wave 800 devices.
But Z-Wave is also designed to be backwards compatible, so we can use other Z-Wave devices with older versions.
In addition, this dongle is attractively priced at 34.95 euros and is an excellent compromise, which is why it is currently one of the most popular dongles on the market.
If you want other alternatives, you can see the Home Assistant documentation where they recommend different models.
I am going to connect this ZST39 dongle to the Home Assistant Green home automation hub, which is a home automation hub that can be installed in a few minutes, being a very interesting option to get started with Home Assistant.
I simply plug my ZST39 dongle into one of the Home Assistant Green USB ports.
Now, we need to access the Home Assistant interface, for example, with http://homeassistant.local:8123/.
Go to the “Settings” tab.
Now, click on “Add-ons”.
And click on “Shop for accessories”.
Search for “Z-Wave JS”.
And we can install this Z-Wave JS add-on.
Now, we must wait a moment for Z-Wave JS to install correctly and, once installed, we go to “Configuration”.
And we should see our Z-Wave USB dongle detected.
In my case, I have both the Z-Wave Zooz dongle and the SkyConnect Zigbee dongle.
But by being able to see their names, I can mark the Zooz dongle, which is the right one for Z-Wave.
And I click on “Save”.
Now, if we go to “Information”, we can click on “Start”.
After a few seconds, Z-Wave JS should be working, so we will be able to include our smart devices that use this Z-Wave technology.
How to include a Z-Wave device?
Before we start, you should know that a very, very common mistake made by users is to think that a Z-Wave device is usually compatible with a Z-Wave home automation hub. This is not the case.
Prior integration is needed, so be very careful.
Although Home Assistant is one of the solutions that offers a wide range of compatibility, I recommend going to https://devices.zwave-js.io/ to check if the device you want is compatible with Z-Wave JS.
And before including a device, we must go to “Settings”.
“Devices and services”.
And click on “Add integration”.
Search for “Z-Wave”.
And click on “Finish”.
Now, we are going to be able to launch Z-Wave inclusions. To do this, go to “Settings” and “Devices and services”. Click on “Add integration”.
And to “Add a Z-Wave device”.
A new window appears where we can choose between including the device following the instructions in the manual that usually comes in the packaging or scanning the QR code if this Z-Wave device is compatible with SmartStart.
So we can start integrating Z-Wave devices one by one.
Important! In order to successfully integrate each Z-Wave device, I recommend that you do it a few centimetres away from the home automation hub, especially if this device is to be included in S2.
Each device has a different method of inclusion.
It can be simply plugged into the mains and it automatically goes into association mode.
Or you have to press its association button once, three times or even press and hold it down.
You should read the documentation, as each device has its own method.
And it should be noted that if the device integrates the S2 security method for inclusion, a method that offers better quality at the security level, you must enter the first 5 digits corresponding to the unique key called DSK, which was assigned to each Z-Wave device compatible with this S2 security level.
This key is usually found on a label on the packaging or on the device with a QR code and a series of numbers.
This method of inclusion allows securely encrypted network keys to be exchanged between the home automation hub and the device.
In my example, I will include from ZWave JS in Home Assistant:
- A motion sensor that also measures temperature, humidity and brightness from Neo.
- A battery operated wall switch with integrated buttons from Zooz.
- A plug with consumption measurement from the Neo brand.
- A Danalock lock.
- A Heatit battery-operated thermostat.
- An ON/OFF module with Shelly dry contact.
How to use devices with ZWave JS in Home Assistant
Now that I have my Z-Wave devices linked thanks to ZWave JS in Home Assistant, I have control in my interface.
I can interact with each device by modifying the temperature of the thermostat.
I can activate or deactivate the plug.
I can open or close the lock.
And I can see the different measurements and the status of the sensors.
Also, we can view the logs to know all the activities of the device, which is another interesting detail to know when it was activated, deactivated a plug, when a door was opened or closed and much more.
And at the level of sensor measurements, we can view histories to keep track of each measurement over time, for example, to know the evolution of the temperature of an area of our house.
Or the humidity level.
Another interesting and very powerful detail with this Z-Wave technology is that the devices often have multiple parameters.
These parameters allow you to customise the use of your devices.
For example, you can decide to lock the thermostat display.
So that no user can physically change the temperature from the thermostat.
You can also configure that if there is a power cut, when the power comes back on, your socket will return to its previous state.
Another example would be to change the colour of the LED when you press a button on the switch.
In short, each device can be customised according to your tastes.
Of course, once you have all your devices linked with ZWave JS in Home Assistant, the magic of a smart home is being able to make different devices interact with each other.
A motion sensor can turn on a light during the night if it detects your movement.
Or it can activate the siren when you are outside your home and alert you that a person has been detected.
There are infinite possible scenes and your imagination will be your limit.