arachnetech / homebridge-mqttthing

A plugin for Homebridge allowing the integration of many different accessory types using MQTT.
Apache License 2.0
462 stars 104 forks source link

getCurrentTemperature limit bug heaterCooler #392

Open rbswift opened 3 years ago

rbswift commented 3 years ago

I use the heaterCooler accessory with "minTemperature": 18, "maxTemperature": 25 because I never need to set values outside that range and it makes the HomeKit controls more useable.

Unfortunately these limits seem to also be applied to getCurrentTemperature which means even if my room is 35 degrees, it only shows as 25 degrees in the HomeKit accessory.

This seems to be a bug in the plugin but maybe it's homebridge. Please let me know if I should report it there.

Also, it seems like temperatureSensor inputs like 21.21 degrees need to be pre-rounded to nearest 0.5 degrees. Would it be possible to do this in the plugin so the config can be a bit simpler?

rbswift commented 3 years ago

I just found this behaviour is actually noted in the documentation.

minTemperature and maxTemperature may optionally be used to change the minimum and maximum heating and cooling target and temperatures that can be set from Homekit (and also affect current temperature range).

Is this a limitation of HomeKit? It seems odd to limit display of the actual temperature to whatever the control limits of the target setting is.

Even if this cant be changed then rounding to 0.5 would still be a great change. Cheers

Stoischo commented 9 months ago

I ran into the same issue. I want to use thermostat for an outdoor sauna. I would have to set the limits from -25 to 105 degree Celsius to see the actual temperature too, which is senseless. The only solution is to create an additional temperatureSensor, which is listening on the same mqtt topic as the getCurrentTemperature parameter. But this doesn't solve the issue that you get tons of log messages like "Ignoring invalid value [...]" :-(