Z-wave sensor switching between C and F

Good find! Most of those parameters aren’t listed in the device’s documentation, which is probably why they aren’t configurable through the OH Thing config. I’ll find another way to set them manually…

I’ll give that a try; might not solve the problem of occasionally flipping formats, but if they’re 95% F instead of C, that would be an improvement. :slight_smile:

The other aspect to this is the firmware version. The zooz article is talking about firmware 1.11. I have one of these devices (firmware 1.9) and do not have the additional parameters (although I have not had the problem in this post either). So two things, if you upgrade the firmware you should have param 18, but the DB should bracket the firmware as =>1.11 and leave the current version as =<1.10, as the earlier versions do not have this parameter. The Zooz site should have the firmware upgrade (if it is possible for the version you have. Make sense?

Good point, I’ll make sure to include that.
The ZSE11 that’s reporting correctly is version 1.21, while the two problematic sensors are 1.30 (the latest from Zooz).

Product Configuration Capabilities looks identical to the data in the Z-Wave JS database (of course without reference to firmware versions …).

https://www.support.getzooz.com/kb/article/711-zse11-q-sensor-change-log/
https://www.support.getzooz.com/kb/article/1003-zse11-q-sensor-advanced-settings/

@apella12
What makes you think that your device (firmware 1.09) doesn’t support parameter #18?

The manual and the comment about optimized temperature reporting in 1.10, but I guess I can’t be positive, without calling Zooz.


Firmware: 1.09

  • S2 Security
  • Advanced settings to adjust motion, temperature, humidity, and light reporting
  • Due to hardware changes made in the following versions, the 1.09 version cannot be updated using the later firmware files

VER. 1.10 (released 10/2021)

Hardware:

  • Optimized motion and temperature reporting

I suspect that all the listed setting will work in 1.09 based on the release note “Advanced settings to adjust motion, temperature, humidity, and light reporting”.

What happens if I add parameters to the device that don’t work on your version? I would assume that, if you don’t try to adjust the parameters then it won’t matter (and even if you do, they would probably just be rejected).

I’ll ask, but you are probably right. If I never delete and rescan it won’t matter anyway. Will update when I find out

Have you contacted Zooz? I’ve had issues with sensors doing similar things and I received updated firmware which helped.

I haven’t, but may once I have more data. Specifically:

  1. Whether it only happens on the two newest devices (running 1.30), or also on the older version 1.21;

  2. Whether is happens with other Z-wave devices in OpenHAB (which Nick_Wilkinson’s post above inidicates, implying that it’s a broader problem than Zooz.

Have you set the Zwave binding log level to debug? You should be able to see the incoming data. And I would shoot an email to Zooz in the meantime. They’re very nice and will help you. It’ll take a little back and forth with them anyway, so you can start in parallel with your own debug.

I’ve added the missing parameters to the database entry, so they should be available once (if) the changes are approved an a new JAR is release.

Normally I just break my own HA system, so exciting to be able to break others’, too! :smiley:

No problem :wink:

@florp - Great to see you have a lead on getting the F/C configuration parameters setup - The is how the ZSE44 works. I somehow skipped over the F/C parameter part of your post when I saw you were having a similar issue to me with the random swings.

I have confirmed on my setup this week that Zooz ZSE44 Temp Sensor and the Honeywell T6 thermostat both randomly drop from 70 F to something that looks like Celsius. I thought the Hue’s outdoor sensor was doing the same thing but it only reports in Celsius and I don’t see any swings in my data. I can’t find anything in the logs yet but I just turned on Z-Wave debug to try and catch the flip-flopping. I believe the raw Z-Wave message is in the debug to see if it is coming from the Z-Wave devices. For awareness I am running OpenHAB 3.3.0 with Unraid/Docker image. If anyone else has ideas on what I should try it would be greatly appreciated.

I also have a ZSE44 (Version 1.2) but for me like the ZSE11 have not experienced this behavior. One thing to try, if not doing already, is to add metadata to the temperature item. Even if the device starts sending degree C instead of degree F, this should be corrected. This is on top of my measurement system set to “US” in OH on startup.
Metadata

Thank you Bob for the suggestion - I have updated this in my configuration and we’ll see if this resolves the ups and downs.

For the more detailed view - I have confirmed that the sensors are providing the temperature in ºC. I don’t know if it is a coincidence or not but both ºC from the sensors come after what seams like OpenHAP polling the sensor for the Temperature with the Tx of the SENSOR_MULTI_ LEVEL_GET in the logs. The ºF reporting from the sensors seem to be from the sensors sending updates to OpenHAB. Not knowing anything about the internals of the Z-Wave binding not sure where to go from here if adding the unit of measure to the item doesn’t work.

Honeywell T6 Thermostate (TH632ZW)

Event Log showing the change to/from the lower number

2023-02-05 20:38:34.623 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'Downstairs_Temp' changed from 70 to 21
2023-02-05 20:42:46.731 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'Downstairs_Temp' changed from 21 to 70

Z-Wave Logs showing the 20:38:34 temperature coming as ºC

Z-Wave Logs showing 20:42:46 temperature coming as ºF

ZSE44 Zooz Temperature Humidity Sensor
Event Log showing the change to/from the lower number

2023-02-05 15:40:31.080 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'TempSensor3_Temp' changed from 70.9 to 21
2023-02-05 17:25:48.446 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'TempSensor3_Temp' changed from 21 to 70.8

Z-Wave Logs showing both events

What’s your Item definition? Is it Number? Or Number:Temperature?

The device does seem a little confused about what country it is in :wink: Anyway it should not matter on the UI or your charts with the metadata addition. I was a little confused by the data. Is it still jumping around after the change I suggested or is this just log information? As noted by @jswim788 if it is number:temperature it should be adjusted by OH.

If it makes you feel any better this is coming from the device. Probably more than you wanted to know: The key byte is the last in the string 31 05 01 (2A or 22). 2A =001/01/010 whereas 22 is 001/00/010. There are three numbers combined, the first three is the “precision” 1 means there is one decimal point. The next two are the scale 01 =F and 00= C and the last three tell how many bytes the value has (in this case 2). So 02 C4 = 708 or 70.8 F.

Lastly, the poll (get) is how frequently you have the device polled (and wake if not powered). With battery devices I only poll and wake once a day to save battery. The unsolicited temperature from the device is how you set the parameters. I have one hour reporting on the ZSE11 because it is on USB and on the ZSE 44 I have 2 degrees F (Params 3 &13).

Great insight into the ZWave protocol. Strange that multiple devices from multiple vendors all report this way. I guess it doesn’t matter if there is a work around that takes care of it. Fingers crossed this will continue to work - I haven’t seen any issues since making the change. It is seemingly random so I am not celebrating for a few more days.

For completeness I changed all of the temperature items from the old version below to the new version below to account for Units of Measurement. I use file definitions so below is a line out of my .items file.

Old

Number TempSensor1_Temp    Temp Sensor 1 Temp"  {channel="zwave:device:62040e4e49:node29:sensor_temperature"}		

New

Number:Temperature TempSensor1_Temp    Temp Sensor 1 Temp [%.1f ºF]"  {channel="zwave:device:62040e4e49:node29:sensor_temperature"}		
1 Like

I can confirm after a few weeks this change has worked and I haven’t seen any dips since.

One issue that people should be aware of is when you make this change rules don’t work the same for these items and will need to be reworked. The wife didn’t like the 541 degree Temprature setting for the furnace. Lucky the T6 ignores these types of requests. See the attached post on details