Add device classes in tesla wall connector (#84048)

Addd device classes in tesla wall connector
This commit is contained in:
epenet 2022-12-15 20:00:38 +01:00 committed by GitHub
parent 650d4d7faa
commit 93dd971b39
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -10,11 +10,11 @@ from homeassistant.components.sensor import (
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_WATT_HOUR,
TEMP_CELSIUS,
UnitOfElectricCurrent,
UnitOfElectricPotential,
UnitOfEnergy,
UnitOfFrequency,
UnitOfTemperature,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity import EntityCategory
@ -48,7 +48,7 @@ WALL_CONNECTOR_SENSORS = [
WallConnectorSensorDescription(
key="handle_temp_c",
name=prefix_entity_name("Handle Temperature"),
native_unit_of_measurement=TEMP_CELSIUS,
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: round(data[WALLCONNECTOR_DATA_VITALS].handle_temp_c, 1),
device_class=SensorDeviceClass.TEMPERATURE,
entity_category=EntityCategory.DIAGNOSTIC,
@ -57,7 +57,7 @@ WALL_CONNECTOR_SENSORS = [
WallConnectorSensorDescription(
key="grid_v",
name=prefix_entity_name("Grid Voltage"),
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
native_unit_of_measurement=UnitOfElectricPotential.VOLT,
value_fn=lambda data: round(data[WALLCONNECTOR_DATA_VITALS].grid_v, 1),
device_class=SensorDeviceClass.VOLTAGE,
state_class=SensorStateClass.MEASUREMENT,
@ -75,58 +75,64 @@ WALL_CONNECTOR_SENSORS = [
WallConnectorSensorDescription(
key="current_a_a",
name=prefix_entity_name("Phase A Current"),
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
native_unit_of_measurement=UnitOfElectricCurrent.AMPERE,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].currentA_a,
device_class=SensorDeviceClass.CURRENT,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="current_b_a",
name=prefix_entity_name("Phase B Current"),
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
native_unit_of_measurement=UnitOfElectricCurrent.AMPERE,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].currentB_a,
device_class=SensorDeviceClass.CURRENT,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="current_c_a",
name=prefix_entity_name("Phase C Current"),
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
native_unit_of_measurement=UnitOfElectricCurrent.AMPERE,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].currentC_a,
device_class=SensorDeviceClass.CURRENT,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="voltage_a_v",
name=prefix_entity_name("Phase A Voltage"),
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
native_unit_of_measurement=UnitOfElectricPotential.VOLT,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].voltageA_v,
device_class=SensorDeviceClass.VOLTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="voltage_b_v",
name=prefix_entity_name("Phase B Voltage"),
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
native_unit_of_measurement=UnitOfElectricPotential.VOLT,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].voltageB_v,
device_class=SensorDeviceClass.VOLTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="voltage_c_v",
name=prefix_entity_name("Phase C Voltage"),
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
native_unit_of_measurement=UnitOfElectricPotential.VOLT,
value_fn=lambda data: data[WALLCONNECTOR_DATA_VITALS].voltageC_v,
device_class=SensorDeviceClass.VOLTAGE,
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
WallConnectorSensorDescription(
key="energy_kWh",
name=prefix_entity_name("Energy"),
native_unit_of_measurement=ENERGY_WATT_HOUR,
native_unit_of_measurement=UnitOfEnergy.WATT_HOUR,
value_fn=lambda data: data[WALLCONNECTOR_DATA_LIFETIME].energy_wh,
state_class=SensorStateClass.TOTAL_INCREASING,
device_class=SensorDeviceClass.ENERGY,
state_class=SensorStateClass.TOTAL_INCREASING,
),
]