From 8bd0b26a225e1d31bb5de5aff9d0462cb1e3a3de Mon Sep 17 00:00:00 2001 From: RZ Date: Wed, 20 May 2026 20:51:26 +0200 Subject: [PATCH] Add ROOM_TEMPERATURE_LIMIT and correct HVAC state categories Map eco and setback heating states to OFF instead of HEATING --- src/bsblan/constants.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/bsblan/constants.py b/src/bsblan/constants.py index 1a3f81a5..c2d0cd18 100644 --- a/src/bsblan/constants.py +++ b/src/bsblan/constants.py @@ -270,6 +270,10 @@ class HeatingCircuitStatus(IntEnum): FAULT_ERROR = 0x02 STANDBY_1 = 0x19 OFF = 0x76 + DAY_ECO = 0x77 + SETBACK_REDUCED = 0x78 + SETBACK_FROST_PROTECTION = 0x79 + ROOM_TEMPERATURE_LIMIT = 0x7A STANDBY_2 = 0x8C COOLING_OFF = 0x8A COOLING_LOCKED = 0x92 @@ -295,9 +299,6 @@ class HeatingCircuitStatus(IntEnum): SWITCHOFF_OPTIMIZATION = 0x73 HEATING_REDUCED = 0x74 FLOW_FROST_PROTECTION = 0x75 - DAY_ECO = 0x77 - SETBACK_REDUCED = 0x78 - SETBACK_FROST_PROTECTION = 0x79 RESERVED_HEATING_2 = 0x89 # Preheating states @@ -391,6 +392,10 @@ def from_value(cls, value: int) -> HeatingCircuitStatus | None: HeatingCircuitStatus.LOCKED_HEATING_MODE: HVACActionCategory.OFF, HeatingCircuitStatus.LOCKED_GENERATOR: HVACActionCategory.OFF, HeatingCircuitStatus.LOCKED_BUFFER: HVACActionCategory.OFF, + HeatingCircuitStatus.DAY_ECO: HVACActionCategory.OFF, + HeatingCircuitStatus.SETBACK_REDUCED: HVACActionCategory.OFF, + HeatingCircuitStatus.SETBACK_FROST_PROTECTION: HVACActionCategory.OFF, + HeatingCircuitStatus.ROOM_TEMPERATURE_LIMIT: HVACActionCategory.OFF, # Heating states HeatingCircuitStatus.MANUAL_CONTROL: HVACActionCategory.HEATING, HeatingCircuitStatus.OVERRUN: HVACActionCategory.HEATING, @@ -407,9 +412,6 @@ def from_value(cls, value: int) -> HeatingCircuitStatus | None: HeatingCircuitStatus.SWITCHOFF_OPTIMIZATION: HVACActionCategory.HEATING, HeatingCircuitStatus.HEATING_REDUCED: HVACActionCategory.HEATING, HeatingCircuitStatus.FLOW_FROST_PROTECTION: HVACActionCategory.HEATING, - HeatingCircuitStatus.DAY_ECO: HVACActionCategory.HEATING, - HeatingCircuitStatus.SETBACK_REDUCED: HVACActionCategory.HEATING, - HeatingCircuitStatus.SETBACK_FROST_PROTECTION: HVACActionCategory.HEATING, HeatingCircuitStatus.RESERVED_HEATING_2: HVACActionCategory.HEATING, # Preheating states HeatingCircuitStatus.SWITCHON_OPTIMIZATION_QUICK_HEATUP: (