Closed OEHC closed 4 months ago
@OEHC In my busyness, I suspect I lost my window to ask you to test that for me. I would love to know what happens when it drops to -1... my guess is that the same error would be triggered again and it changes the firmware to 4.0.
Conceptually I think your proposal makes sense. TemSen 40, I would expect to report as 20c.
I'm using the gree integration in HA, which works flawlessly most of the time. However, sometimes the temperature is reported 40°C too high. A reload of the integration normally solves the issue and fixes the temperature.
I have a theory of why that is; I have an automation which sets the HVAC to 8°C heating mode (
Pow -> 1, Mod -> 4, StHt -> 1
) if the temperature drops to 3°C. The current firmware on the HVAC, will subtract 3°C from the reported measured temperature (TemSen
), whenever the HVAC is in heating mode, thus resulting in the reported temperature being 0 (TemSen
: 40).Currently, the
version
get set to "4.0", if the reported temperature is lower than or equal toTEMP_OFFSET
. This results in the reported temperature of 0 (TemSen
: 40) triggering the update of the saved version string. https://github.com/cmroche/greeclimate/blob/0e2a0846a2dd4ed5221c5861f5e5cd857a2dca2b/greeclimate/device.py#L275I believe that changing the check to be strictly lower then
TEMP_OFFSET
, would resolve this edge case. I don't know what the HVAC would report, if it "measured" -1°C (eg. if it measures 2°C and I change it to heat mode, which would subtract 3 from the reported temperature). If relevant, I'll happily test it out.Here is a packet containing the HID: