Use Enums in EntityDescriptions in Fronius (#60832)

This commit is contained in:
Matthias Alphart 2021-12-02 12:43:59 +01:00 committed by GitHub
parent f2f6602890
commit c0fb1bffce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -9,27 +9,18 @@ import voluptuous as vol
from homeassistant.components.sensor import ( from homeassistant.components.sensor import (
DOMAIN as SENSOR_DOMAIN, DOMAIN as SENSOR_DOMAIN,
PLATFORM_SCHEMA, PLATFORM_SCHEMA,
STATE_CLASS_MEASUREMENT, SensorDeviceClass,
STATE_CLASS_TOTAL_INCREASING,
SensorEntity, SensorEntity,
SensorEntityDescription, SensorEntityDescription,
SensorStateClass,
) )
from homeassistant.config_entries import SOURCE_IMPORT, ConfigEntry from homeassistant.config_entries import SOURCE_IMPORT, ConfigEntry
from homeassistant.const import ( from homeassistant.const import (
CONF_MONITORED_CONDITIONS, CONF_MONITORED_CONDITIONS,
CONF_RESOURCE, CONF_RESOURCE,
DEVICE_CLASS_BATTERY,
DEVICE_CLASS_CURRENT,
DEVICE_CLASS_ENERGY,
DEVICE_CLASS_FREQUENCY,
DEVICE_CLASS_POWER,
DEVICE_CLASS_POWER_FACTOR,
DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE,
ELECTRIC_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT, ELECTRIC_POTENTIAL_VOLT,
ENERGY_WATT_HOUR, ENERGY_WATT_HOUR,
ENTITY_CATEGORY_DIAGNOSTIC,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
PERCENTAGE, PERCENTAGE,
POWER_VOLT_AMPERE, POWER_VOLT_AMPERE,
@ -38,7 +29,7 @@ from homeassistant.const import (
) )
from homeassistant.core import HomeAssistant, callback from homeassistant.core import HomeAssistant, callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity import DeviceInfo from homeassistant.helpers.entity import DeviceInfo, EntityCategory
from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType from homeassistant.helpers.typing import ConfigType
from homeassistant.helpers.update_coordinator import CoordinatorEntity from homeassistant.helpers.update_coordinator import CoordinatorEntity
@ -130,111 +121,111 @@ INVERTER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="energy_day", key="energy_day",
name="Energy day", name="Energy day",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
), ),
SensorEntityDescription( SensorEntityDescription(
key="energy_year", key="energy_year",
name="Energy year", name="Energy year",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
), ),
SensorEntityDescription( SensorEntityDescription(
key="energy_total", key="energy_total",
name="Energy total", name="Energy total",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
), ),
SensorEntityDescription( SensorEntityDescription(
key="frequency_ac", key="frequency_ac",
name="Frequency AC", name="Frequency AC",
native_unit_of_measurement=FREQUENCY_HERTZ, native_unit_of_measurement=FREQUENCY_HERTZ,
device_class=DEVICE_CLASS_FREQUENCY, device_class=SensorDeviceClass.FREQUENCY,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="current_ac", key="current_ac",
name="AC Current", name="AC Current",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
device_class=DEVICE_CLASS_CURRENT, device_class=SensorDeviceClass.CURRENT,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="current_dc", key="current_dc",
name="DC current", name="DC current",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
device_class=DEVICE_CLASS_CURRENT, device_class=SensorDeviceClass.CURRENT,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:current-dc", icon="mdi:current-dc",
), ),
SensorEntityDescription( SensorEntityDescription(
key="current_dc_2", key="current_dc_2",
name="DC Current 2", name="DC Current 2",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
device_class=DEVICE_CLASS_CURRENT, device_class=SensorDeviceClass.CURRENT,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:current-dc", icon="mdi:current-dc",
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_ac", key="power_ac",
name="AC power", name="AC power",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_ac", key="voltage_ac",
name="AC voltage", name="AC voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_dc", key="voltage_dc",
name="DC voltage", name="DC voltage",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:current-dc", icon="mdi:current-dc",
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_dc_2", key="voltage_dc_2",
name="DC voltage 2", name="DC voltage 2",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:current-dc", icon="mdi:current-dc",
), ),
# device status entities # device status entities
SensorEntityDescription( SensorEntityDescription(
key="inverter_state", key="inverter_state",
name="Inverter state", name="Inverter state",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="error_code", key="error_code",
name="Error code", name="Error code",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="status_code", key="status_code",
name="Status code", name="Status code",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="led_state", key="led_state",
name="LED state", name="LED state",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="led_color", key="led_color",
name="LED color", name="LED color",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
] ]
@ -243,19 +234,19 @@ LOGGER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
SensorEntityDescription( SensorEntityDescription(
key="co2_factor", key="co2_factor",
name="CO₂ factor", name="CO₂ factor",
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:molecule-co2", icon="mdi:molecule-co2",
), ),
SensorEntityDescription( SensorEntityDescription(
key="cash_factor", key="cash_factor",
name="Grid export tariff", name="Grid export tariff",
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:cash-plus", icon="mdi:cash-plus",
), ),
SensorEntityDescription( SensorEntityDescription(
key="delivery_factor", key="delivery_factor",
name="Grid import tariff", name="Grid import tariff",
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:cash-minus", icon="mdi:cash-minus",
), ),
] ]
@ -265,31 +256,31 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="current_ac_phase_1", key="current_ac_phase_1",
name="Current AC phase 1", name="Current AC phase 1",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
device_class=DEVICE_CLASS_CURRENT, device_class=SensorDeviceClass.CURRENT,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="current_ac_phase_2", key="current_ac_phase_2",
name="Current AC phase 2", name="Current AC phase 2",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
device_class=DEVICE_CLASS_CURRENT, device_class=SensorDeviceClass.CURRENT,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="current_ac_phase_3", key="current_ac_phase_3",
name="Current AC phase 3", name="Current AC phase 3",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
device_class=DEVICE_CLASS_CURRENT, device_class=SensorDeviceClass.CURRENT,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="energy_reactive_ac_consumed", key="energy_reactive_ac_consumed",
name="Energy reactive AC consumed", name="Energy reactive AC consumed",
native_unit_of_measurement=ENERGY_VOLT_AMPERE_REACTIVE_HOUR, native_unit_of_measurement=ENERGY_VOLT_AMPERE_REACTIVE_HOUR,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
icon="mdi:lightning-bolt-outline", icon="mdi:lightning-bolt-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -297,7 +288,7 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="energy_reactive_ac_produced", key="energy_reactive_ac_produced",
name="Energy reactive AC produced", name="Energy reactive AC produced",
native_unit_of_measurement=ENERGY_VOLT_AMPERE_REACTIVE_HOUR, native_unit_of_measurement=ENERGY_VOLT_AMPERE_REACTIVE_HOUR,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
icon="mdi:lightning-bolt-outline", icon="mdi:lightning-bolt-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -305,49 +296,49 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="energy_real_ac_minus", key="energy_real_ac_minus",
name="Energy real AC minus", name="Energy real AC minus",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="energy_real_ac_plus", key="energy_real_ac_plus",
name="Energy real AC plus", name="Energy real AC plus",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="energy_real_consumed", key="energy_real_consumed",
name="Energy real consumed", name="Energy real consumed",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
), ),
SensorEntityDescription( SensorEntityDescription(
key="energy_real_produced", key="energy_real_produced",
name="Energy real produced", name="Energy real produced",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
), ),
SensorEntityDescription( SensorEntityDescription(
key="frequency_phase_average", key="frequency_phase_average",
name="Frequency phase average", name="Frequency phase average",
native_unit_of_measurement=FREQUENCY_HERTZ, native_unit_of_measurement=FREQUENCY_HERTZ,
device_class=DEVICE_CLASS_FREQUENCY, device_class=SensorDeviceClass.FREQUENCY,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="meter_location", key="meter_location",
name="Meter location", name="Meter location",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_apparent_phase_1", key="power_apparent_phase_1",
name="Power apparent phase 1", name="Power apparent phase 1",
native_unit_of_measurement=POWER_VOLT_AMPERE, native_unit_of_measurement=POWER_VOLT_AMPERE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:flash-outline", icon="mdi:flash-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -355,7 +346,7 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="power_apparent_phase_2", key="power_apparent_phase_2",
name="Power apparent phase 2", name="Power apparent phase 2",
native_unit_of_measurement=POWER_VOLT_AMPERE, native_unit_of_measurement=POWER_VOLT_AMPERE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:flash-outline", icon="mdi:flash-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -363,7 +354,7 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="power_apparent_phase_3", key="power_apparent_phase_3",
name="Power apparent phase 3", name="Power apparent phase 3",
native_unit_of_measurement=POWER_VOLT_AMPERE, native_unit_of_measurement=POWER_VOLT_AMPERE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:flash-outline", icon="mdi:flash-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -371,42 +362,42 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="power_apparent", key="power_apparent",
name="Power apparent", name="Power apparent",
native_unit_of_measurement=POWER_VOLT_AMPERE, native_unit_of_measurement=POWER_VOLT_AMPERE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:flash-outline", icon="mdi:flash-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_factor_phase_1", key="power_factor_phase_1",
name="Power factor phase 1", name="Power factor phase 1",
device_class=DEVICE_CLASS_POWER_FACTOR, device_class=SensorDeviceClass.POWER_FACTOR,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_factor_phase_2", key="power_factor_phase_2",
name="Power factor phase 2", name="Power factor phase 2",
device_class=DEVICE_CLASS_POWER_FACTOR, device_class=SensorDeviceClass.POWER_FACTOR,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_factor_phase_3", key="power_factor_phase_3",
name="Power factor phase 3", name="Power factor phase 3",
device_class=DEVICE_CLASS_POWER_FACTOR, device_class=SensorDeviceClass.POWER_FACTOR,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_factor", key="power_factor",
name="Power factor", name="Power factor",
device_class=DEVICE_CLASS_POWER_FACTOR, device_class=SensorDeviceClass.POWER_FACTOR,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_reactive_phase_1", key="power_reactive_phase_1",
name="Power reactive phase 1", name="Power reactive phase 1",
native_unit_of_measurement=POWER_VOLT_AMPERE_REACTIVE, native_unit_of_measurement=POWER_VOLT_AMPERE_REACTIVE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:flash-outline", icon="mdi:flash-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -414,7 +405,7 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="power_reactive_phase_2", key="power_reactive_phase_2",
name="Power reactive phase 2", name="Power reactive phase 2",
native_unit_of_measurement=POWER_VOLT_AMPERE_REACTIVE, native_unit_of_measurement=POWER_VOLT_AMPERE_REACTIVE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:flash-outline", icon="mdi:flash-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -422,7 +413,7 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="power_reactive_phase_3", key="power_reactive_phase_3",
name="Power reactive phase 3", name="Power reactive phase 3",
native_unit_of_measurement=POWER_VOLT_AMPERE_REACTIVE, native_unit_of_measurement=POWER_VOLT_AMPERE_REACTIVE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:flash-outline", icon="mdi:flash-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -430,7 +421,7 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="power_reactive", key="power_reactive",
name="Power reactive", name="Power reactive",
native_unit_of_measurement=POWER_VOLT_AMPERE_REACTIVE, native_unit_of_measurement=POWER_VOLT_AMPERE_REACTIVE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:flash-outline", icon="mdi:flash-outline",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -438,79 +429,79 @@ METER_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="power_real_phase_1", key="power_real_phase_1",
name="Power real phase 1", name="Power real phase 1",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_real_phase_2", key="power_real_phase_2",
name="Power real phase 2", name="Power real phase 2",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_real_phase_3", key="power_real_phase_3",
name="Power real phase 3", name="Power real phase 3",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_real", key="power_real",
name="Power real", name="Power real",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_ac_phase_1", key="voltage_ac_phase_1",
name="Voltage AC phase 1", name="Voltage AC phase 1",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_ac_phase_2", key="voltage_ac_phase_2",
name="Voltage AC phase 2", name="Voltage AC phase 2",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_ac_phase_3", key="voltage_ac_phase_3",
name="Voltage AC phase 3", name="Voltage AC phase 3",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_ac_phase_to_phase_12", key="voltage_ac_phase_to_phase_12",
name="Voltage AC phase 1-2", name="Voltage AC phase 1-2",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_ac_phase_to_phase_23", key="voltage_ac_phase_to_phase_23",
name="Voltage AC phase 2-3", name="Voltage AC phase 2-3",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_ac_phase_to_phase_31", key="voltage_ac_phase_to_phase_31",
name="Voltage AC phase 3-1", name="Voltage AC phase 3-1",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
] ]
@ -520,37 +511,37 @@ OHMPILOT_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="energy_real_ac_consumed", key="energy_real_ac_consumed",
name="Energy consumed", name="Energy consumed",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_real_ac", key="power_real_ac",
name="Power", name="Power",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="temperature_channel_1", key="temperature_channel_1",
name="Temperature Channel 1", name="Temperature Channel 1",
native_unit_of_measurement=TEMP_CELSIUS, native_unit_of_measurement=TEMP_CELSIUS,
device_class=DEVICE_CLASS_TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="error_code", key="error_code",
name="Error code", name="Error code",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="state_code", key="state_code",
name="State code", name="State code",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="state_message", key="state_message",
name="State message", name="State message",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
] ]
@ -559,71 +550,71 @@ POWER_FLOW_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="energy_day", key="energy_day",
name="Energy day", name="Energy day",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="energy_year", key="energy_year",
name="Energy year", name="Energy year",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="energy_total", key="energy_total",
name="Energy total", name="Energy total",
native_unit_of_measurement=ENERGY_WATT_HOUR, native_unit_of_measurement=ENERGY_WATT_HOUR,
device_class=DEVICE_CLASS_ENERGY, device_class=SensorDeviceClass.ENERGY,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=SensorStateClass.TOTAL_INCREASING,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
SensorEntityDescription( SensorEntityDescription(
key="meter_mode", key="meter_mode",
name="Mode", name="Mode",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_battery", key="power_battery",
name="Power battery", name="Power battery",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_grid", key="power_grid",
name="Power grid", name="Power grid",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_load", key="power_load",
name="Power load", name="Power load",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="power_photovoltaics", key="power_photovoltaics",
name="Power photovoltaics", name="Power photovoltaics",
native_unit_of_measurement=POWER_WATT, native_unit_of_measurement=POWER_WATT,
device_class=DEVICE_CLASS_POWER, device_class=SensorDeviceClass.POWER,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="relative_autonomy", key="relative_autonomy",
name="Relative autonomy", name="Relative autonomy",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:home-circle-outline", icon="mdi:home-circle-outline",
), ),
SensorEntityDescription( SensorEntityDescription(
key="relative_self_consumption", key="relative_self_consumption",
name="Relative self consumption", name="Relative self consumption",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:solar-power", icon="mdi:solar-power",
), ),
] ]
@ -633,36 +624,36 @@ STORAGE_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="capacity_maximum", key="capacity_maximum",
name="Capacity maximum", name="Capacity maximum",
native_unit_of_measurement=ELECTRIC_CHARGE_AMPERE_HOURS, native_unit_of_measurement=ELECTRIC_CHARGE_AMPERE_HOURS,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="capacity_designed", key="capacity_designed",
name="Capacity designed", name="Capacity designed",
native_unit_of_measurement=ELECTRIC_CHARGE_AMPERE_HOURS, native_unit_of_measurement=ELECTRIC_CHARGE_AMPERE_HOURS,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC, entity_category=EntityCategory.DIAGNOSTIC,
), ),
SensorEntityDescription( SensorEntityDescription(
key="current_dc", key="current_dc",
name="Current DC", name="Current DC",
native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE, native_unit_of_measurement=ELECTRIC_CURRENT_AMPERE,
device_class=DEVICE_CLASS_CURRENT, device_class=SensorDeviceClass.CURRENT,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:current-dc", icon="mdi:current-dc",
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_dc", key="voltage_dc",
name="Voltage DC", name="Voltage DC",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:current-dc", icon="mdi:current-dc",
), ),
SensorEntityDescription( SensorEntityDescription(
key="voltage_dc_maximum_cell", key="voltage_dc_maximum_cell",
name="Voltage DC maximum cell", name="Voltage DC maximum cell",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:current-dc", icon="mdi:current-dc",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -670,8 +661,8 @@ STORAGE_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="voltage_dc_minimum_cell", key="voltage_dc_minimum_cell",
name="Voltage DC minimum cell", name="Voltage DC minimum cell",
native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT, native_unit_of_measurement=ELECTRIC_POTENTIAL_VOLT,
device_class=DEVICE_CLASS_VOLTAGE, device_class=SensorDeviceClass.VOLTAGE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
icon="mdi:current-dc", icon="mdi:current-dc",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
), ),
@ -679,15 +670,15 @@ STORAGE_ENTITY_DESCRIPTIONS: list[SensorEntityDescription] = [
key="state_of_charge", key="state_of_charge",
name="State of charge", name="State of charge",
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
device_class=DEVICE_CLASS_BATTERY, device_class=SensorDeviceClass.BATTERY,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
SensorEntityDescription( SensorEntityDescription(
key="temperature_cell", key="temperature_cell",
name="Temperature cell", name="Temperature cell",
native_unit_of_measurement=TEMP_CELSIUS, native_unit_of_measurement=TEMP_CELSIUS,
device_class=DEVICE_CLASS_TEMPERATURE, device_class=SensorDeviceClass.TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT, state_class=SensorStateClass.MEASUREMENT,
), ),
] ]