From cd175f679f654a4da06bc1c7b3042f83ef8d71cf Mon Sep 17 00:00:00 2001 From: Brett Adams Date: Wed, 4 Oct 2023 18:05:44 +1000 Subject: [PATCH] Fix temperature when myZone is in use for Advantage air (#101316) --- homeassistant/components/advantage_air/climate.py | 7 +++++++ homeassistant/components/advantage_air/entity.py | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/homeassistant/components/advantage_air/climate.py b/homeassistant/components/advantage_air/climate.py index fa9f609ba10..cda123f62ee 100644 --- a/homeassistant/components/advantage_air/climate.py +++ b/homeassistant/components/advantage_air/climate.py @@ -125,6 +125,13 @@ class AdvantageAirAC(AdvantageAirAcEntity, ClimateEntity): @property def target_temperature(self) -> float | None: """Return the current target temperature.""" + # If the system is in MyZone mode, and a zone is set, return that temperature instead. + if ( + self._ac["myZone"] > 0 + and not self._ac.get(ADVANTAGE_AIR_MYAUTO_ENABLED) + and not self._ac.get(ADVANTAGE_AIR_MYTEMP_ENABLED) + ): + return self._myzone["setTemp"] return self._ac["setTemp"] @property diff --git a/homeassistant/components/advantage_air/entity.py b/homeassistant/components/advantage_air/entity.py index 00750fb4e94..b300a677793 100644 --- a/homeassistant/components/advantage_air/entity.py +++ b/homeassistant/components/advantage_air/entity.py @@ -62,6 +62,12 @@ class AdvantageAirAcEntity(AdvantageAirEntity): def _ac(self) -> dict[str, Any]: return self.coordinator.data["aircons"][self.ac_key]["info"] + @property + def _myzone(self) -> dict[str, Any]: + return self.coordinator.data["aircons"][self.ac_key]["zones"].get( + f"z{self._ac['myZone']:02}" + ) + class AdvantageAirZoneEntity(AdvantageAirAcEntity): """Parent class for Advantage Air Zone Entities."""