Z-Wave Binding strange temperature changes


since I’ve been using the Z-Wave binding I keep getting the strange error that the temperature changes to 0E+1 °C (or to 2E+1 °C). My event log is full of this, here is a small excerpt:

2020-05-23 09:14:37.039 [vent.ItemStateChangedEvent] - BZ_Thermostat_SensorTemperature changed from 20.01 °C to 2E+1 °C 2020-05-23 09:19:29.228 [vent.ItemStateChangedEvent] - BZ_Thermostat_SensorTemperature changed from 2E+1 °C to 20.05 °C 2020-05-23 12:01:16.527 [vent.ItemStateChangedEvent] - FL_Motion_SensorTemperature changed from 0E+1 °C to 20.8 °C 2020-05-23 13:00:01.587 [vent.ItemStateChangedEvent] - FL_Motion_SensorTemperature changed from 21.1 °C to 0E+1 °C

This concerns different devices e.g…:

MT02650 Devolo Thermostat (09356) --> BZ_Thermostat_SensorTemperature
PD03Z PIR Motion Sensor with Temperature Sensor --> FL_Motion_SensorTemperature

Greeting Sni

This is perfectly normal - the temperature has changed from 20.01 to 20.00.

This is probably not normal - the temperature has changed from 21.1 to 0.

Probably these are caused by corrupt data from the device, or corrupted “in flight”. Unfortunately there’s not a lot that can be done in the binding to resolve that.

Are the values reported by the devices in this notation or are they interpreted like this by OpenHab?
It would be great if this would be configurable in OpenHab.

At least we can agree, that it does not make much sense for the viewer to write 20.00 in exponential notation, especially when it is only written like this when there are effectively no decimals. I understand the technical background and reason, but it is just useless.

It’s the way OH displays them. edit: It’s not really OH either - it’s the way the Java libs that OH uses displays them rather than OH itself.

It’s not configurable in the logs, but you can display as you like in UIs.

Well, this is simply the way that floating point values are printed by default. It’s just a number - there are lots of ways to print exactly the same number.