home-assistant/core · error · HomeAssistantError
set_temperature_error
set_temperature_error
Error message
An error occurred while setting the temperature
What it means
HomeAssistantError raised by the bsblan water-heater entity when `client.set_hot_water(SetHotWaterParam(nominal_setpoint=temperature))` raises BSBLANError, translation key `set_temperature_error`. It makes `water_heater.set_temperature` fail visibly instead of silently keeping stale state; a coordinator refresh follows on success only.
Source
Thrown at homeassistant/components/bsblan/water_heater.py:172
@property
@override
def target_temperature(self) -> float | None:
"""Return the temperature we try to reach."""
if (target_temp := self._dhw.nominal_setpoint) is None:
return None
return target_temp.value
@override
async def async_set_temperature(self, **kwargs: Any) -> None:
"""Set new target temperature."""
temperature = kwargs.get(ATTR_TEMPERATURE)
try:
await self.coordinator.client.set_hot_water(
SetHotWaterParam(nominal_setpoint=temperature)
)
except BSBLANError as err:
raise HomeAssistantError(
translation_domain=DOMAIN,
translation_key="set_temperature_error",
) from err
await self.coordinator.async_request_refresh()
@override
async def async_set_operation_mode(self, operation_mode: str) -> None:
"""Set new operation mode."""
# Base class validates operation_mode is in operation_list before calling
bsblan_mode = HA_TO_BSBLAN_OPERATION_MODE[operation_mode]
try:
# Send numeric value as string - BSB-LAN API expects numeric mode values
await self.coordinator.client.set_hot_water(
SetHotWaterParam(operating_mode=str(bsblan_mode))
)
except BSBLANError as err:
raise HomeAssistantError(View on GitHub (pinned to 58a3fdb3ea)
Solutions
- Retry once the device is confirmed online (state data updating).
- Keep values within the water-heater entity's min/max temperature attributes.
- If persistent, test the same parameter write in the BSB-LAN web UI to see the device-side rejection reason.
Defensive patterns
Strategy: try-catch
Try / catch
try:
await client.set_hot_water(SetHotWaterParam(nominal_setpoint=temp))
except BSBLANError as err:
raise HomeAssistantError(translation_domain=DOMAIN, translation_key="set_temperature_error") from err Prevention
- Clamp desired temperatures to the entity's min/max attributes in automations.
- Condition DHW temperature changes on the water heater being available.
- Retry once after connectivity is restored rather than stacking multiple writes.
When it happens
Trigger: Calling `water_heater.set_temperature` on a bsblan water heater while the device is unreachable, or writing a nominal setpoint outside the range the device accepts for DHW.
Common situations: Device offline when an automation or dashboard card pushes a new DHW temperature; setpoints outside the boiler's configured min/max; serial bus congestion from simultaneous polling.
Related errors
- set_schedule_failed
- set_operation_mode_error
- set_data_error
- not_a_water_heater_device
- Operation mode not supported
AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14).
Data as JSON: /api/errors/51378b3449398544.
Report an issue: GitHub.