MODBUS Climate

I have problem with Thermostat connected with MODBUS - it have different scales for “current temperature” (scale = 0.1, 20.5C => 205) and “target_temp_register” (scale = 0.5, 20.5C => 41).
But current implementation have only one “scale” (0.1 in my case).

Is it possible to add one more “configuration variable”, let’s say “target_temp_scale” that should be applied for both Reading (Value = temp_register * target_temp_scale) and Writing (Value = temp_register / target_temp_scale) from/to Thermostat?

In my case “target_temp_scale” should be 0.5:
20.5 C at Thermostat shown as 4.1 C at home assistant.
When read setpoint: 41 * 0.5 = 20.5 C
When write setpoint: 20.5 / 0.5 = 4.1 C

For backward compatibility, the “target_temp_scale” should be equal to “scale”.


Did you find a solution for this issue ? I have similar with my device, current temperature is with scale 0,1 but set with scale 1, so I have to have value with hundred to set it with correct scale.


Sorry, but I still have not found any work around for this…