diff --git a/homeassistant/components/nexia/climate.py b/homeassistant/components/nexia/climate.py index 20fcf5c6b85..33ad91e1561 100644 --- a/homeassistant/components/nexia/climate.py +++ b/homeassistant/components/nexia/climate.py @@ -391,7 +391,9 @@ class NexiaZone(NexiaThermostatZoneEntity, ClimateEntity): async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: """Set the system mode (Auto, Heat_Cool, Cool, Heat, etc).""" - if hvac_mode == HVACMode.AUTO: + if hvac_mode == HVACMode.OFF: + await self._zone.call_permanent_off() + elif hvac_mode == HVACMode.AUTO: await self._zone.call_return_to_schedule() await self._zone.set_mode(mode=OPERATION_MODE_AUTO) else: diff --git a/homeassistant/components/nexia/manifest.json b/homeassistant/components/nexia/manifest.json index f9ca21d9e0b..4bae2d9a15d 100644 --- a/homeassistant/components/nexia/manifest.json +++ b/homeassistant/components/nexia/manifest.json @@ -1,7 +1,7 @@ { "domain": "nexia", "name": "Nexia/American Standard/Trane", - "requirements": ["nexia==1.0.1"], + "requirements": ["nexia==1.0.2"], "codeowners": ["@bdraco"], "documentation": "https://www.home-assistant.io/integrations/nexia", "config_flow": true, diff --git a/homeassistant/components/nexia/switch.py b/homeassistant/components/nexia/switch.py index 380fea8c4a0..e242032c947 100644 --- a/homeassistant/components/nexia/switch.py +++ b/homeassistant/components/nexia/switch.py @@ -3,6 +3,7 @@ from __future__ import annotations from typing import Any +from nexia.const import OPERATION_MODE_OFF from nexia.home import NexiaHome from nexia.thermostat import NexiaThermostat from nexia.zone import NexiaThermostatZone @@ -58,7 +59,10 @@ class NexiaHoldSwitch(NexiaThermostatZoneEntity, SwitchEntity): async def async_turn_on(self, **kwargs: Any) -> None: """Enable permanent hold.""" - await self._zone.call_permanent_hold() + if self._zone.get_current_mode() == OPERATION_MODE_OFF: + await self._zone.call_permanent_off() + else: + await self._zone.call_permanent_hold() self._signal_zone_update() async def async_turn_off(self, **kwargs: Any) -> None: diff --git a/requirements_all.txt b/requirements_all.txt index 6ea4e85475a..79ba4689352 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -1083,7 +1083,7 @@ nettigo-air-monitor==1.3.0 neurio==0.3.1 # homeassistant.components.nexia -nexia==1.0.1 +nexia==1.0.2 # homeassistant.components.nextcloud nextcloudmonitor==1.1.0 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index b696ce6829e..886c0921e27 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -748,7 +748,7 @@ netmap==0.7.0.2 nettigo-air-monitor==1.3.0 # homeassistant.components.nexia -nexia==1.0.1 +nexia==1.0.2 # homeassistant.components.discord nextcord==2.0.0a8