Running hass.io on a RPi 3 with a Zooz ZST10 zwave stick. I have been migrating my zwave devices from SmartThings and so far it has been going pretty well. When I added the tstat it comes up with 4 devices in the overview, none make sense or work correctly. Any ideas how to fix it? OpenZWave is supposed to support it as of April 7 (see https://github.com/OpenZWave/open-zwave/pull/1757).
Those entities represent the ZWave Thermostat Setpoints, for the thermostat modes supported by the thermostat. In HA, the setpoints are individually represented, instead of being combined into a single climate entity. You have to control them separately, so to adjust the heating temperature you’d have to modify a heat entity, and to adjust A/C you’d modify a cool entity. There is also the custom dual thermostat which can combine two separate entities.
As for the names, they are provided by OpenZWave. unused_3 is setpoint ID 3, which has no use. Here are the list of setpoints from the spec (available here):
Obviously the cool_1 setpoint is used for cooling. Not sure about the Dry and Moist modes, because the manual says it measures humidity but does not control it. Are you sure you don’t have a heat_1 entity either? If you go to the Integrations->ZWave panel, what are the entities listed for that node?
There is also some information about this thermostat in the Smartthings forum. The posted device handler code only recognizes the Heating and Cooling setpoint/modes, so the unused, dry and moist can probably just be ignored. The device handler also enables polling of the device every 5 minutes, which is not great. You might want to see what happens in HA if you adjust the temperature on the thermostat itself, do the setpoint values change, or do you also need to enable polling?
Thanks for the fast reply!
The modules in the zwave entities are as follows, I don’t seem to have heating entity at all. Do you think something went wrong adding it?
Can you copy/paste the contents of your zwcfg*.xml file for that node? If you haven’t already, you’ll need to save the config file (can be done from the zwave control panel).
I had to edit the zwcfg file to include the cooling entity when I discovered mine, not sure why it didn’t populate. Here is what that section ended up looking like.
I have no bearing on what that means. I probably modified the request flags to 5 when I added cooling, but otherwise didn’t mess with that line. It was a few months ago and everything has worked since, so I have forgotten some of the details.
You’ve got me. Normally I would use SSH to get files but apparently that add-on doesn’t work in hass.io. I’ll keep mucking with it and hopefully come up with some means to get to my config files.
I use Node RED, don’t use the yaml config file. I assume you can edit it through the web interface. Don’t see a way to get to the zwave config through web interface.
I added the ssh, copied my public key into the config and it wouldn’t work. Noticed a note in the add-on says it doesn’t work with hass.io.
I had to change my openzwave config file. The thermostat actually supports Heat Econ and Cool Econ commands (puts the thermostat in away mode). There was a breaking change in 0.96.x with the Econ modes; it will be resolved in 0.97.
The Samba share worked great. Was able to mod the zwcfg file with the above config items. Whenever I reboot Hass, the config file reverts to the non-working version.
You can only modify the OpenZWave file when home assistant is shutdown. You can stop home assistant within settings, make the changes and then restart it.
FWIW, the reason the setpoints are detected incorrectly is because a) OZW is using Interpretation B to parse the setpoint bitmask, when it appears this thermostat is reporting with Interpretation A, and b) there is an off-by-one problem with the set bits. If you left shift the set bits by one (or the indices) and use Interpretation A it works out correctly.