Reinstalled homeassistant and now zwave thermostats have no climate entity anymore

Hello Community,

I have an issue with my Devolo zwave thermostats. I migrated to a homeassistant as container setup and now I can’t control my thermostats anymore. When i look at the device in homeassistant, this is what I see (left to right: current homeassistant ui, zwavejsui, old homeassistant ui) I had to combine the images since I can only have one embedded media file:

So before I had the Air temperature sensor and the climate entity, which is now missing.

I tried the whole day to figure out what’s wrong, but I’m stumped. Do you have any suggestions?

Thank you!

Look at associations in zwavejsui. I forget which but lifeline or 0 may be missing. Compare to other zwave devices, shoukd be similar.

Also make sure the entities are not hidden in HA

Try a Re-interview. There’s no multilevel sensor shown in the screenshot (unless it got cutoff), so no temperature entity in HA, and I bet the setpoint information (which is hidden in the screenshot) is invalid.

hmm, I re-interviewed multiple times and always get the same result. Do you mean the setpoint information the zwavejsui?


Here it is, it shows the correct value and setting it also works, I double checked the device. I also checked the logs and the driver is reporting something about an Unknown sensor:

2022-12-23T20:41:03.000Z DRIVER   Network key for S0 configured, enabling S0 security manager...
2022-12-23T20:41:03.001Z DRIVER   At least one network key for S2 configured, enabling S2 security manager...
2022-12-23T20:41:03.011Z DRIVER   driver ready
2022-12-23T20:41:03.012Z DRIVER   Checking for configuration updates...
2022-12-23T20:41:03.119Z CNTRLR   [Node 001] The node is alive.
2022-12-23T20:41:03.196Z CNTRLR   [Node 001] The node is ready to be used
2022-12-23T20:41:03.199Z CNTRLR   [Node 004] The node is asleep.
2022-12-23T20:41:03.316Z CNTRLR   [Node 004] The node is ready to be used
2022-12-23T20:41:03.318Z CNTRLR   [Node 005] The node is asleep.
2022-12-23T20:41:03.401Z CNTRLR   [Node 005] The node is ready to be used
2022-12-23T20:41:03.403Z CNTRLR   [Node 006] The node is asleep.
2022-12-23T20:41:03.495Z CNTRLR   [Node 006] The node is ready to be used
2022-12-23T20:41:03.497Z CNTRLR   [Node 007] The node is asleep.
2022-12-23T20:41:03.600Z CNTRLR   [Node 007] The node is ready to be used
2022-12-23T20:41:03.603Z CNTRLR   [Node 008] The node is asleep.
2022-12-23T20:41:03.798Z CNTRLR   [Node 008] The node is ready to be used
2022-12-23T20:41:03.798Z CNTRLR   All nodes are ready to be used
2022-12-23T20:41:06.094Z DRIVER   No configuration update available...
2022-12-23T20:43:00.407Z SERIAL « 0x0109000400040380032c5a                                            (11 bytes)
2022-12-23T20:43:00.415Z SERIAL » [ACK]                                                                   (0x06)
2022-12-23T20:43:00.421Z CNTRLR   [Node 004] [~] [Battery] level: 44 => 44                          [Endpoint 0]
2022-12-23T20:43:00.425Z CNTRLR   [Node 004] [~] [Battery] isLow: false => false                    [Endpoint 0]
2022-12-23T20:43:00.429Z DRIVER « [Node 004] [REQ] [ApplicationCommand]
                                  └─[BatteryCCReport]
                                      level:  44
                                      is low: false
2022-12-23T20:43:00.503Z SERIAL « 0x010c0004000406430301420834ca                                      (14 bytes)
2022-12-23T20:43:00.506Z SERIAL » [ACK]                                                                   (0x06)
2022-12-23T20:43:00.512Z CNTRLR   [Node 004] [~] [Thermostat Setpoint] setpoint[1]: 21 => 21        [Endpoint 0]
2022-12-23T20:43:00.515Z CNTRLR   [Node 004] [~] [Thermostat Setpoint] setpointScale[1]: [Endpoint 0] [internal]
                                   0 => 0
2022-12-23T20:43:00.517Z DRIVER « [Node 004] [REQ] [ApplicationCommand]
                                  └─[ThermostatSetpointCCReport]
                                      setpoint type: Heating
                                      value:         21 undefined
2022-12-23T20:43:00.594Z SERIAL « 0x010a00040004044608007fc0                                          (12 bytes)
2022-12-23T20:43:00.598Z SERIAL » [ACK]                                                                   (0x06)
2022-12-23T20:43:00.600Z CNTRLR   [Node 004] [~] [Climate Control Schedule] overrideType: 0 => 0    [Endpoint 0]
2022-12-23T20:43:00.602Z CNTRLR   [Node 004] [~] [Climate Control Schedule] overrideState: "Unused" [Endpoint 0]
                                   => "Unused"
2022-12-23T20:43:00.606Z DRIVER « [Node 004] [REQ] [ApplicationCommand]
                                  └─[ClimateControlScheduleCCOverrideReport]
                                      override type:  None
                                      override state: Unused
2022-12-23T20:43:00.615Z SERIAL « 0x010c00040004063105014208870d                                      (14 bytes)
2022-12-23T20:43:00.693Z SERIAL » [ACK]                                                                   (0x06)
2022-12-23T20:43:00.697Z DRIVER   dropping CC with invalid values (Reason: Unknown sensor type 0x01 or corrupted
                                   data)

I checked and the entities are not hidden. Are these the associations you meant?


I can’t select anything there.

First problem:

2022-12-23T20:43:00.503Z SERIAL « 0x010c0004000406430301420834ca                                      (14 bytes)
2022-12-23T20:43:00.506Z SERIAL » [ACK]                                                                   (0x06)
2022-12-23T20:43:00.512Z CNTRLR   [Node 004] [~] [Thermostat Setpoint] setpoint[1]: 21 => 21        [Endpoint 0]
2022-12-23T20:43:00.515Z CNTRLR   [Node 004] [~] [Thermostat Setpoint] setpointScale[1]: [Endpoint 0] [internal]
                                   0 => 0
2022-12-23T20:43:00.517Z DRIVER « [Node 004] [REQ] [ApplicationCommand]
                                  └─[ThermostatSetpointCCReport]
                                      setpoint type: Heating
                                      value:         21 undefined

The heating setpoint is missing a unit. It should say value: 21 °C. Because the unit is missing (undefined), HA doesn’t create the climate entity. The payload is correct (it says Heating setpoint, 21.00 C), so it seems to be a problem of the driver looking up the unit.

Second problem:

2022-12-23T20:43:00.615Z SERIAL « 0x010c00040004063105014208870d                                      (14 bytes)
2022-12-23T20:43:00.693Z SERIAL » [ACK]                                                                   (0x06)
2022-12-23T20:43:00.697Z DRIVER   dropping CC with invalid values (Reason: Unknown sensor type 0x01 or corrupted
                                   data)

This is a temperature report, but the driver can’t figure out the sensor type, so it completely drops it. As a result, there’s no temperature sensor in HA. Sensor type 0x01 is an Air Temperature sensor value, and the payload is correct (it says Air temperature sensor, 21.83 C), so another case of the driver failing to lookup metadata (sensor type).

Given the two same issues, I suspect you have a corrupt installation resulting in the metadata lookup failures. Check for exceptions in the Z-Wave JS UI application logs, usually these would be seen at the beginning of startup.

With Docker, you can stop the container and completely delete the .config-db directory from your store volume (e.g. cd store && rm -rf .config-db). Re-start Z-Wave JS UI (the config db will be regenerated) and re-interview the device. Monitor both application and driver logs for exceptions and errors. Hopefully that fixes it.

Yesss, deleting the .config-db and reinterviewing worked! Thank you so much, thanks :slight_smile:

So to conclude, this is what I did:
Stopped the container, mounted the store volume to a plain alpine container, exec’d into it and deleted the .config-db directory, restarted z-wave js ui and reinterviewed the devices.

2 Likes