Home Assistant Unofficial Reference 2024.12.1
const.py
Go to the documentation of this file.
1 """Constants for EQ3 Bluetooth Smart Radiator Valves."""
2 
3 from enum import Enum
4 
5 from eq3btsmart.const import OperationMode
6 
8  PRESET_AWAY,
9  PRESET_BOOST,
10  PRESET_COMFORT,
11  PRESET_ECO,
12  PRESET_NONE,
13  HVACMode,
14 )
15 
16 DOMAIN = "eq3btsmart"
17 
18 MANUFACTURER = "eQ-3 AG"
19 DEVICE_MODEL = "CC-RT-BLE-EQ"
20 
21 ENTITY_KEY_DST = "dst"
22 ENTITY_KEY_BATTERY = "battery"
23 ENTITY_KEY_WINDOW = "window"
24 ENTITY_KEY_LOCK = "lock"
25 ENTITY_KEY_BOOST = "boost"
26 ENTITY_KEY_AWAY = "away"
27 ENTITY_KEY_COMFORT = "comfort"
28 ENTITY_KEY_ECO = "eco"
29 ENTITY_KEY_OFFSET = "offset"
30 ENTITY_KEY_WINDOW_OPEN_TEMPERATURE = "window_open_temperature"
31 ENTITY_KEY_WINDOW_OPEN_TIMEOUT = "window_open_timeout"
32 ENTITY_KEY_VALVE = "valve"
33 ENTITY_KEY_AWAY_UNTIL = "away_until"
34 
35 GET_DEVICE_TIMEOUT = 5 # seconds
36 
37 EQ_TO_HA_HVAC: dict[OperationMode, HVACMode] = {
38  OperationMode.OFF: HVACMode.OFF,
39  OperationMode.ON: HVACMode.HEAT,
40  OperationMode.AUTO: HVACMode.AUTO,
41  OperationMode.MANUAL: HVACMode.HEAT,
42 }
43 
44 HA_TO_EQ_HVAC = {
45  HVACMode.OFF: OperationMode.OFF,
46  HVACMode.AUTO: OperationMode.AUTO,
47  HVACMode.HEAT: OperationMode.MANUAL,
48 }
49 
50 
51 class Preset(str, Enum):
52  """Preset modes for the eQ-3 radiator valve."""
53 
54  NONE = PRESET_NONE
55  ECO = PRESET_ECO
56  COMFORT = PRESET_COMFORT
57  BOOST = PRESET_BOOST
58  AWAY = PRESET_AWAY
59  OPEN = "Open"
60  LOW_BATTERY = "Low Battery"
61  WINDOW_OPEN = "Window"
62 
63 
65  """Selector for current temperature."""
66 
67  NOTHING = "NOTHING"
68  UI = "UI"
69  DEVICE = "DEVICE"
70  VALVE = "VALVE"
71  ENTITY = "ENTITY"
72 
73 
75  """Selector for target temperature."""
76 
77  TARGET = "TARGET"
78  LAST_REPORTED = "LAST_REPORTED"
79 
80 
81 DEFAULT_CURRENT_TEMP_SELECTOR = CurrentTemperatureSelector.DEVICE
82 DEFAULT_TARGET_TEMP_SELECTOR = TargetTemperatureSelector.TARGET
83 DEFAULT_SCAN_INTERVAL = 10 # seconds
84 
85 SIGNAL_THERMOSTAT_DISCONNECTED = f"{DOMAIN}.thermostat_disconnected"
86 SIGNAL_THERMOSTAT_CONNECTED = f"{DOMAIN}.thermostat_connected"
87 
88 EQ3BT_STEP = 0.5