I have several Z-Wave device, TZ69E, unfortunately homeassistant does not support them correctly.
I am able to add them via Z-Wave JS addon and can see the power and energy values, however the initial never change unless I force a refresh. I have solved this using the ‘Z-Wave: Refresh value(s) of a Z-Wave entity’ service and a timer.
The problem I have is that I am unable to control the switch, I tried using the ‘Z-Wave: Set a value on a Z-Wave device (Advanced)’ service but it fails saying unknown error.
For the set value service, you would use targetValue, if it actually exists (but then you should have a switch). currentValue is read-only and reflects the current state.
I have the switch entity, but like the other items its state never changes unless I do a manual refresh.
If I operate the switch entity, the changes are not reflected on the actual switch.
I have been working on this on and off for a couple of years.
I have just added a TZ88E and have compared the json files for the devices, as you hinted in your reply the whole targetValue section is missing. Is there a way to edit the json file and add this section?
There seems like there is something quirky in the way this device reports the switch. Per the developer of zwavejs’ in the linked notes below on this switch “it identifies as a Binary Switch type, but then claims NOT to support the Binary Switch CC”
There was an update to zwavejs to work around this and get the tz69g working. That update might not have applied to the tz69e version you are using.
You might have to do custom device configuration to get the tz69g device config to point to the tz69e version as well. This would require zwavejsui instead of the default zwavejs addon. Custom configuration instructions are linked below.
There’s some more instructions and screen shots for the Custom device configuration on this thread (zwavejsui was formerly called zwavejs2mqtt but they are the same program)
I’m not sure I have the skills to do this myself, I did come across the TZ69G solution but had no idea how to implement it.
The TZ69E worked perfectly on Vera, but I’m migrating my devices to homeassistant, perhaps they will have to stay on Vera.
Vera doesn’t send energy information to homeassistant but at least the switch works, I am however able to extract energy using the REST function so it looks like I will be unable to retire my Vera just yet.
It’s not really the fault of homeassistant/zwavejs for this problem. Zwave has standards and command classes as part of its protocols, and zwavejs (which is the zwave Integration used by home assistant), relies on the reported command classes to setup and manage control of a device. The core of the issue is the device isn’t properly following the zwave standard by not reporting the Binary Switch CC. All zwave devices must be certified by the zwave alliance, and I’m surprised this one made it through certification with this issue.
Vera must have some way of working around this. Zwavejs can be made to work for it as demonstrated by the corrections made to tge tz69g.
The custom config would basically point the existing tz69g “fix” to also work on your device. Yes it is a bit complex, so if you’re not able to do that, I would at least follow freshcoast’s suggestion and file a new issue with zwavejs to get the developers to support your exact model of switch. In your new issue, I would be sure to post logs from the time of inclusion or reinterview and also link/refrence the other solved github issue to yours.