From 54fb4df3aa0d51391589d4f61ca77122ebd7522f Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Thu, 8 Dec 2022 19:33:02 +0100 Subject: [PATCH] Update opentherm_gw sensor definitions (#83533) * Move sensor definitions to platform * Use new unit enums * Update device classes * Minimize changes --- .../components/opentherm_gw/const.py | 82 +++++++++---------- 1 file changed, 40 insertions(+), 42 deletions(-) diff --git a/homeassistant/components/opentherm_gw/const.py b/homeassistant/components/opentherm_gw/const.py index d72469759f1a..1532b7877406 100644 --- a/homeassistant/components/opentherm_gw/const.py +++ b/homeassistant/components/opentherm_gw/const.py @@ -7,10 +7,11 @@ from homeassistant.components.binary_sensor import BinarySensorDeviceClass from homeassistant.components.sensor import SensorDeviceClass from homeassistant.const import ( PERCENTAGE, - PRESSURE_BAR, - TEMP_CELSIUS, - TIME_HOURS, - TIME_MINUTES, + UnitOfPower, + UnitOfPressure, + UnitOfTemperature, + UnitOfTime, + UnitOfVolume, ) ATTR_GW_ID = "gateway_id" @@ -50,9 +51,6 @@ TRANSLATE_SOURCE = { gw_vars.THERMOSTAT: "Thermostat", } -UNIT_KW = "kW" -UNIT_L_MIN = f"L/{TIME_MINUTES}" - BINARY_SENSOR_INFO: dict[str, list] = { # [device_class, friendly_name format, [status source, ...]] gw_vars.DATA_MASTER_CH_ENABLED: [ @@ -219,7 +217,7 @@ SENSOR_INFO: dict[str, list] = { # [device_class, unit, friendly_name, [status source, ...]] gw_vars.DATA_CONTROL_SETPOINT: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Control Setpoint {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], @@ -249,13 +247,13 @@ SENSOR_INFO: dict[str, list] = { ], gw_vars.DATA_CONTROL_SETPOINT_2: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Control Setpoint 2 {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_ROOM_SETPOINT_OVRD: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Room Setpoint Override {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], @@ -266,8 +264,8 @@ SENSOR_INFO: dict[str, list] = { [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_SLAVE_MAX_CAPACITY: [ - None, - UNIT_KW, + SensorDeviceClass.POWER, + UnitOfPower.KILO_WATT, "Boiler Maximum Capacity {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], @@ -279,7 +277,7 @@ SENSOR_INFO: dict[str, list] = { ], gw_vars.DATA_ROOM_SETPOINT: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Room Setpoint {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], @@ -290,116 +288,116 @@ SENSOR_INFO: dict[str, list] = { [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_CH_WATER_PRESS: [ - None, - PRESSURE_BAR, + SensorDeviceClass.PRESSURE, + UnitOfPressure.BAR, "Central Heating Water Pressure {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_DHW_FLOW_RATE: [ None, - UNIT_L_MIN, + f"{UnitOfVolume.LITERS}/{UnitOfTime.MINUTES}", "Hot Water Flow Rate {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_ROOM_SETPOINT_2: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Room Setpoint 2 {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_ROOM_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Room Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_CH_WATER_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Central Heating Water Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_DHW_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Hot Water Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_OUTSIDE_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Outside Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_RETURN_WATER_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Return Water Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_SOLAR_STORAGE_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Solar Storage Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_SOLAR_COLL_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Solar Collector Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_CH_WATER_TEMP_2: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Central Heating 2 Water Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_DHW_TEMP_2: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Hot Water 2 Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_EXHAUST_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Exhaust Temperature {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_SLAVE_DHW_MAX_SETP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Hot Water Maximum Setpoint {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_SLAVE_DHW_MIN_SETP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Hot Water Minimum Setpoint {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_SLAVE_CH_MAX_SETP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Boiler Maximum Central Heating Setpoint {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_SLAVE_CH_MIN_SETP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Boiler Minimum Central Heating Setpoint {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_DHW_SETPOINT: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Hot Water Setpoint {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_MAX_CH_SETPOINT: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Maximum Central Heating Setpoint {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], @@ -434,26 +432,26 @@ SENSOR_INFO: dict[str, list] = { [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_TOTAL_BURNER_HOURS: [ - None, - TIME_HOURS, + SensorDeviceClass.DURATION, + UnitOfTime.HOURS, "Total Burner Hours {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_CH_PUMP_HOURS: [ - None, - TIME_HOURS, + SensorDeviceClass.DURATION, + UnitOfTime.HOURS, "Central Heating Pump Hours {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_DHW_PUMP_HOURS: [ - None, - TIME_HOURS, + SensorDeviceClass.DURATION, + UnitOfTime.HOURS, "Hot Water Pump Hours {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], gw_vars.DATA_DHW_BURNER_HOURS: [ - None, - TIME_HOURS, + SensorDeviceClass.DURATION, + UnitOfTime.HOURS, "Hot Water Burner Hours {}", [gw_vars.BOILER, gw_vars.THERMOSTAT], ], @@ -513,7 +511,7 @@ SENSOR_INFO: dict[str, list] = { gw_vars.OTGW_GPIO_B: [None, None, "Gateway GPIO B Mode {}", [gw_vars.OTGW]], gw_vars.OTGW_SB_TEMP: [ SensorDeviceClass.TEMPERATURE, - TEMP_CELSIUS, + UnitOfTemperature.CELSIUS, "Gateway Setback Temperature {}", [gw_vars.OTGW], ],