Add "auto" HVAC mode to Advantage Air (#51693)

* Add support for myAuto

* Small bug fixes for myAutoModeEnabled

* Add myauto to test fixture

* Refactor hvac_modes using AC_HVAC_MODES
This commit is contained in:
Brett 2021-06-28 19:21:25 +10:00 committed by GitHub
parent 922b195ebf
commit 486e94e6a5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 8 deletions

View File

@ -6,6 +6,7 @@ from homeassistant.components.climate.const import (
FAN_HIGH,
FAN_LOW,
FAN_MEDIUM,
HVAC_MODE_AUTO,
HVAC_MODE_COOL,
HVAC_MODE_DRY,
HVAC_MODE_FAN_ONLY,
@ -31,9 +32,18 @@ ADVANTAGE_AIR_HVAC_MODES = {
"cool": HVAC_MODE_COOL,
"vent": HVAC_MODE_FAN_ONLY,
"dry": HVAC_MODE_DRY,
"myauto": HVAC_MODE_AUTO,
}
HASS_HVAC_MODES = {v: k for k, v in ADVANTAGE_AIR_HVAC_MODES.items()}
AC_HVAC_MODES = [
HVAC_MODE_OFF,
HVAC_MODE_COOL,
HVAC_MODE_HEAT,
HVAC_MODE_FAN_ONLY,
HVAC_MODE_DRY,
]
ADVANTAGE_AIR_FAN_MODES = {
"auto": FAN_AUTO,
"low": FAN_LOW,
@ -43,13 +53,6 @@ ADVANTAGE_AIR_FAN_MODES = {
HASS_FAN_MODES = {v: k for k, v in ADVANTAGE_AIR_FAN_MODES.items()}
FAN_SPEEDS = {FAN_LOW: 30, FAN_MEDIUM: 60, FAN_HIGH: 100}
AC_HVAC_MODES = [
HVAC_MODE_OFF,
HVAC_MODE_COOL,
HVAC_MODE_HEAT,
HVAC_MODE_FAN_ONLY,
HVAC_MODE_DRY,
]
ADVANTAGE_AIR_SERVICE_SET_MYZONE = "set_myzone"
ZONE_HVAC_MODES = [HVAC_MODE_OFF, HVAC_MODE_FAN_ONLY]
@ -130,6 +133,8 @@ class AdvantageAirAC(AdvantageAirClimateEntity):
@property
def hvac_modes(self):
"""Return the supported HVAC modes."""
if self._ac.get("myAutoModeEnabled"):
return AC_HVAC_MODES + [HVAC_MODE_AUTO]
return AC_HVAC_MODES
@property

View File

@ -100,7 +100,10 @@
"fan": "low",
"filterCleanStatus": 1,
"freshAirStatus": "none",
"mode": "cool",
"mode": "myauto",
"myAutoModeCurrentSetMode": "cool",
"myAutoModeEnabled": true,
"myAutoModeIsRunning": true,
"myZone": 1,
"name": "AC Two",
"setTemp": 24,