Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Update to make sure temperature settings to thermostats are a whole round number by adding math.round calculation
I discussed this problem on this issue - Koenkk/zigbee2mqtt#10619
The temperature being published to the thermostat needs to be a 4 digit whole number. The temperature is in celcius, and the decimal point is moved over two places to determine the whole number that is published to the thermostat. The prior calculation took the celcius temperature and just multiplied it by 100, but this was not always producing a whole number, resulting in log errors like in the log below where a value like 1944.0000000000002 was trying to be published and failed. This resulted in the thermostat's temperature not updating:
Adding the additional Math.round makes sure that a whole number is published to the set point to eliminate this error.