core: Sensor temperature reading doesn't match Z-wave reported value
The problem
A new Zooz ZSE40 700 series multi-sensor is reporting a temperature reading 90 degrees F higher than ambient temp. After a hub reboot (no waking of the device, just a hub reboot) the reported temp came back into reality for a couple hours and then shot back up to about 90 degrees over. The device’s temp reading follows the ups and downs during the day but are always about 90 degrees higher than ambient temp.
This is where it gets even more interesting. Looking at the Z-wave JS logs I can find the device’s logging and the reported temp is accurate. So while the z-wave communication suggests accurate readings, somewhere after that the temp reading gets ~90 degrees added to it.
Attached is an image of the history report for the device. Attached is the z-wave JS log showing the accurate temp being sent. Attached is the device page showing the bad reading.
What version of Home Assistant Core has the issue?
2021.12.3
What was the last working version of Home Assistant Core?
No response
What type of installation are you running?
Home Assistant OS
Integration causing the issue
Z-wave JS (possibly)
Link to integration documentation on our website
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
2021-12-18T23:21:22.831Z SERIAL « 0x011000040025083105014a1ba03105bb008d (18 bytes)
2021-12-18T23:21:22.832Z CNTRLR [Node 037] [Multilevel Sensor] Air temperature: metadata updated [Endpoint 0]
2021-12-18T23:21:22.833Z CNTRLR [Node 037] [~] [Multilevel Sensor] Air temperature: 70.14 => 70.7 [Endpoint 0]
2021-12-18T23:21:22.833Z SERIAL » [ACK] (0x06)
2021-12-18T23:21:22.834Z DRIVER « [Node 037] [REQ] [ApplicationCommand]
└─[MultilevelSensorCCReport]
type: Air temperature
scale: Fahrenheit
value: 70.72
Additional information
This is the first 700 series z-wave device I have installed. I have 2 dozen other z-wave devices working fine, including 4 other temp\humidity sensors. All devices are z-wave plus. The device in question is about 25 feet from the hub with no barriers other than a closet wall.
Hub hardware is an Intel NUC10i7, Samsung 970 EVO Plus SSD, 16 GB DDR4, Zooz Z-Wave Plus S2 USB stick.
All HA updates and integration updates have been applied. Nothing in the HA logs looks out of the ordinary.
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 30 (13 by maintainers)
I think the unit of measurement of the entity is static after the entity has been created. If the unit in the driver changes during runtime, then HA does not recognize that, and so if the initial unit was fixed to C, any new F values would be incorrectly converted. The unit should either not be fixed, or HA should properly handle the
"metadata updated"
event, if the driver is properly sending that. Currently HA ignores that event if the value ID has already been discovered.A restart of HA should also fix it if the units change.
zwave_js_dump.txt
I should have thought of including a network dump. It is attached here renamed with a txt extension.