Zooz ZEN22 V3.0

Just installed 3 ZEN22 V3.0 switches, however home assistant is reporting them as V2.0. I have confirmed that I did purchase, and received V3.0’s. I was able to verify everything with receipts, packaging and behavior of the switch at the physical button. The config parameters are all off as well.

Any ideas why it’s misreported?

The “Zooz ZEN22 Dimmer V2” is just a name in the OZW database, it doesn’t actually correspond to a version. The name is based on a product type and product id. Zooz has apparently re-used the same product type & ID for versions 2 and 3 of the switch. See https://github.com/OpenZWave/open-zwave/blob/3d6374c831998595744cc34ef862a80ee51973c9/config/manufacturer_specific.xml#L2257

At the bottom of your screenshot is the “application version” 3.01, which might correspond to the product “V3.0”. You’d have to confirm with Zooz if the switch version is the same as the application version.

I don’t quite get your point? The manual for the switch I bought clearly shows the parameters available, HA shows something different. And that something matches up with the V2 of this switch. I can manually write the the parameters that should be listed using the call service. There is obviously a problem with the version identified by HA or OZW. In other words this is still clearly a problem.

Also if I try to adjust the ramp rate control it doesn’t change anything because the parameter is incorrect. Again showing that something is a miss.

You should really read up on how device config files work.

Every Z-Wave device has a manufacturer ID, product type ID and product ID. The Zooz ZEN22 2.0 has product type ID b112 and product ID 1f1c, as specified in the manufacturer_specific.xml file (the device database):

	<Manufacturer id="027a" name="Zooz">
		<Product type="0003" id="0082" name="ZSE08 Contact Sensor" config="zooz/zse08.xml" />
		<Product type="0003" id="0083" name="ZSE09 Mini Sensor" config="zooz/zse09.xml" />
		<Product type="b112" id="1f1c" name="ZEN22 Dimmer V2" config="zooz/zen22v2.xml"/>

“ZEN22 Dimmer V2” is the name OpenZWave gives the device with that combination of product type and id. The configuration parameters are loaded from the file zooz/zen22v2.xml. Since your V3.0 device is showing up as “ZEN22 Dimmer V2”, and you are certain it is V3.0 not V2.0, it means the device has product type b112 and id 1f1c, because that’s the only way your device would be named that way (which you can confirm by looking in the zwcfg*.xml file in the HA config dir). That means Zooz is using the same product type ID and product ID for V3.0 as it did for V2.0.

The only way to work around this is to either change the contents of the zen22v2.xml file and update it for v3.0, or replace it with a new file (e.g. zen22v3.xml). The link from above explains how to do that. You will have to create your own, or find someone else who has, because new ones are not being generated for OpenZWave 1.4 (which HA uses). OpenZWave also does not have the capability to handle different versions of the same product (at least v1.4). It’s unfortunate Zooz re-used the ID numbers. The v1.0 of the ZEN22 has a different product id (and manufacturer ID too).

Wow, assume much?

So they kepted the same product id when they updated the firmware… sounds like a flaw with zwave or atleast OZW that it can’t handle firmware changes with in the product.

Adding Zooz’s reply to my inquire:

"Hi ********,

We’ve tried updating the library with a new config file for VER. 3.0 before but the developer came across an issue with the library version so we couldn’t even send a submission that would overwrite the VER. 2.0 config file. Unfortunately, Home Assistant unlike all other platforms we’ve worked with, doesn’t display firmware versions for the devices so it’s not possible to create config files based on a firmware version for example."

Were you ever able to solve this problem? I just installed one Zen22 and I have the exact same issue. Were you able to add/edit your zwcfg*.xml or manufacturer_specific.xml?

Nope, I’m only able to configure it via zwave service calls.

So using the set_config_parameter service works for you? I couldn’t even get that to work. I wonder if I need to update the firmware on the switch.

I reached out to Zooz support about this in September. Their response:

We have been trying to add the latest firmware versions by working with one of the developers, but because there have been some changes to the Home Assistant platform, he hasn’t been able to accomplish this yet. We have created custom files for the entries, however.

They suggested manually replacing my ZEN22 OpenZWave config file with the one posted here. This has worked well for me.

The file you need to replace is [hass config]/z-wave/open-zwave/config/zooz/zen22v2.xml.

Honestly, I don’t remember the exact steps I took to do this. I’d recommend the following:

  1. Remove the switches from your network.
  2. Replace the config file.
  3. Reboot Home Assistant.
  4. Add the switches to the network.

If you’re feeling brave, you can also probably edit the zwcfg_.xml file in your hass config directory.

And just about every other vendor on the market uses new ID’s when they release major new versions. Might want to point that out to them for exactly this reason.

I’ve never had anyone from Zooz reach out to me. If your still in contact with them maybe ask them to open a issue on the OZW github project.

1 Like

Was thinking about buying some of these… maybe not now.