home-assistant/core · error · HomeAssistantError
Failed to set system {self.entity_id}: {error}
Error message
Failed to set system {self.entity_id}: {error} What it means
HomeAssistantError raised by AirzoneSystemEntity._async_update_sys_params when the local API call set_sys_parameters() fails with AirzoneError. It wraps system-level settings (API_SYSTEM_ID plus params) sent to the WebServer; the entity_id and underlying library error are included so the UI shows which system failed and why.
Source
Thrown at homeassistant/components/airzone/entity.py:104
def get_airzone_value(self, key: str) -> Any:
"""Return system value by key."""
value = None
if system := self.coordinator.data[AZD_SYSTEMS].get(self.system_id):
if key in system:
value = system[key]
return value
async def _async_update_sys_params(self, params: dict[str, Any]) -> None:
"""Send system parameters to API."""
_params = {
API_SYSTEM_ID: self.system_id,
**params,
}
_LOGGER.debug("update_sys_params=%s", _params)
try:
await self.coordinator.airzone.set_sys_parameters(_params)
except AirzoneError as error:
raise HomeAssistantError(
f"Failed to set system {self.entity_id}: {error}"
) from error
self.coordinator.async_set_updated_data(self.coordinator.airzone.data())
class AirzoneHotWaterEntity(AirzoneEntity):
"""Define an Airzone Hot Water entity."""
def __init__(
self,
coordinator: AirzoneUpdateCoordinator,
entry: ConfigEntry,
) -> None:
"""Initialize."""
super().__init__(coordinator)
self._attr_device_info = DeviceInfo(View on GitHub (pinned to 58a3fdb3ea)
Solutions
- Check the underlying library message ({error}) — it usually states whether it is connectivity or parameter rejection.
- Retry the action once the device responds (verify with a manual poll); transient failures are common with the local HTTP API.
- If parameter rejection, choose a value the Airzone system accepts (check the WebServer UI for allowed ranges).
- Reload the integration if failures persist to re-sync coordinator state.
Defensive patterns
Strategy: try-catch
Try / catch
from homeassistant.exceptions import HomeAssistantError
try:
await entity._async_update_sys_params(params)
except HomeAssistantError as err:
_LOGGER.error("System write failed: %s", err) Prevention
- Validate parameter ranges against the WebServer UI before writing.
- Space out system-level writes from coordinator refreshes.
- Log the embedded library error to classify connectivity vs. rejection.
When it happens
Trigger: Calling a service that mutates system settings — e.g. setting the aux heater limit, changeover mode, or system-level sensor via select/switch/number entities backed by _async_update_sys_params — while the WebServer returns an error (HTTP failure, invalid parameter, device offline).
Common situations: User flips a system-level select/switch right as the coordinator refresh happens; device briefly unreachable; parameter rejected by firmware (value out of accepted range).
Related errors
- Failed to set DHW: {error}
- Failed to set zone {self.entity_id}: {error}
- Mode can't be changed on slave zone {self.entity_id}
- cannot_connect
- {error}
AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14).
Data as JSON: /api/errors/b2c38a9ff8fb27a4.
Report an issue: GitHub.