Rename and reorganize electric unit constants (#53243)

This commit is contained in:
Marc Mueller 2021-07-20 20:06:23 +02:00 committed by GitHub
parent 6e88428f95
commit 074d762664
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
33 changed files with 244 additions and 178 deletions

View file

@ -8,15 +8,15 @@ from homeassistant.components.sensor import PLATFORM_SCHEMA, SensorEntity
from homeassistant.const import ( from homeassistant.const import (
CONF_RESOURCES, CONF_RESOURCES,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRICAL_VOLT_AMPERE, ELECTRIC_POTENTIAL_VOLT,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
PERCENTAGE, PERCENTAGE,
POWER_VOLT_AMPERE,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_MINUTES, TIME_MINUTES,
TIME_SECONDS, TIME_SECONDS,
VOLT,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -33,7 +33,7 @@ SENSOR_TYPES = {
"badbatts": ["Bad Batteries", "", "mdi:information-outline", None], "badbatts": ["Bad Batteries", "", "mdi:information-outline", None],
"battdate": ["Battery Replaced", "", "mdi:calendar-clock", None], "battdate": ["Battery Replaced", "", "mdi:calendar-clock", None],
"battstat": ["Battery Status", "", "mdi:information-outline", None], "battstat": ["Battery Status", "", "mdi:information-outline", None],
"battv": ["Battery Voltage", VOLT, "mdi:flash", None], "battv": ["Battery Voltage", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"bcharge": ["Battery", PERCENTAGE, "mdi:battery", None], "bcharge": ["Battery", PERCENTAGE, "mdi:battery", None],
"cable": ["Cable Type", "", "mdi:ethernet-cable", None], "cable": ["Cable Type", "", "mdi:ethernet-cable", None],
"cumonbatt": ["Total Time on Battery", "", "mdi:timer-outline", None], "cumonbatt": ["Total Time on Battery", "", "mdi:timer-outline", None],
@ -46,33 +46,33 @@ SENSOR_TYPES = {
"endapc": ["Date and Time", "", "mdi:calendar-clock", None], "endapc": ["Date and Time", "", "mdi:calendar-clock", None],
"extbatts": ["External Batteries", "", "mdi:information-outline", None], "extbatts": ["External Batteries", "", "mdi:information-outline", None],
"firmware": ["Firmware Version", "", "mdi:information-outline", None], "firmware": ["Firmware Version", "", "mdi:information-outline", None],
"hitrans": ["Transfer High", VOLT, "mdi:flash", None], "hitrans": ["Transfer High", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"hostname": ["Hostname", "", "mdi:information-outline", None], "hostname": ["Hostname", "", "mdi:information-outline", None],
"humidity": ["Ambient Humidity", PERCENTAGE, "mdi:water-percent", None], "humidity": ["Ambient Humidity", PERCENTAGE, "mdi:water-percent", None],
"itemp": ["Internal Temperature", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE], "itemp": ["Internal Temperature", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE],
"lastxfer": ["Last Transfer", "", "mdi:transfer", None], "lastxfer": ["Last Transfer", "", "mdi:transfer", None],
"linefail": ["Input Voltage Status", "", "mdi:information-outline", None], "linefail": ["Input Voltage Status", "", "mdi:information-outline", None],
"linefreq": ["Line Frequency", FREQUENCY_HERTZ, "mdi:information-outline", None], "linefreq": ["Line Frequency", FREQUENCY_HERTZ, "mdi:information-outline", None],
"linev": ["Input Voltage", VOLT, "mdi:flash", None], "linev": ["Input Voltage", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"loadpct": ["Load", PERCENTAGE, "mdi:gauge", None], "loadpct": ["Load", PERCENTAGE, "mdi:gauge", None],
"loadapnt": ["Load Apparent Power", PERCENTAGE, "mdi:gauge", None], "loadapnt": ["Load Apparent Power", PERCENTAGE, "mdi:gauge", None],
"lotrans": ["Transfer Low", VOLT, "mdi:flash", None], "lotrans": ["Transfer Low", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"mandate": ["Manufacture Date", "", "mdi:calendar", None], "mandate": ["Manufacture Date", "", "mdi:calendar", None],
"masterupd": ["Master Update", "", "mdi:information-outline", None], "masterupd": ["Master Update", "", "mdi:information-outline", None],
"maxlinev": ["Input Voltage High", VOLT, "mdi:flash", None], "maxlinev": ["Input Voltage High", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"maxtime": ["Battery Timeout", "", "mdi:timer-off-outline", None], "maxtime": ["Battery Timeout", "", "mdi:timer-off-outline", None],
"mbattchg": ["Battery Shutdown", PERCENTAGE, "mdi:battery-alert", None], "mbattchg": ["Battery Shutdown", PERCENTAGE, "mdi:battery-alert", None],
"minlinev": ["Input Voltage Low", VOLT, "mdi:flash", None], "minlinev": ["Input Voltage Low", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"mintimel": ["Shutdown Time", "", "mdi:timer-outline", None], "mintimel": ["Shutdown Time", "", "mdi:timer-outline", None],
"model": ["Model", "", "mdi:information-outline", None], "model": ["Model", "", "mdi:information-outline", None],
"nombattv": ["Battery Nominal Voltage", VOLT, "mdi:flash", None], "nombattv": ["Battery Nominal Voltage", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"nominv": ["Nominal Input Voltage", VOLT, "mdi:flash", None], "nominv": ["Nominal Input Voltage", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"nomoutv": ["Nominal Output Voltage", VOLT, "mdi:flash", None], "nomoutv": ["Nominal Output Voltage", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"nompower": ["Nominal Output Power", POWER_WATT, "mdi:flash", None], "nompower": ["Nominal Output Power", POWER_WATT, "mdi:flash", None],
"nomapnt": ["Nominal Apparent Power", ELECTRICAL_VOLT_AMPERE, "mdi:flash", None], "nomapnt": ["Nominal Apparent Power", POWER_VOLT_AMPERE, "mdi:flash", None],
"numxfers": ["Transfer Count", "", "mdi:counter", None], "numxfers": ["Transfer Count", "", "mdi:counter", None],
"outcurnt": ["Output Current", ELECTRICAL_CURRENT_AMPERE, "mdi:flash", None], "outcurnt": ["Output Current", ELECTRIC_CURRENT_AMPERE, "mdi:flash", None],
"outputv": ["Output Voltage", VOLT, "mdi:flash", None], "outputv": ["Output Voltage", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"reg1": ["Register 1 Fault", "", "mdi:information-outline", None], "reg1": ["Register 1 Fault", "", "mdi:information-outline", None],
"reg2": ["Register 2 Fault", "", "mdi:information-outline", None], "reg2": ["Register 2 Fault", "", "mdi:information-outline", None],
"reg3": ["Register 3 Fault", "", "mdi:information-outline", None], "reg3": ["Register 3 Fault", "", "mdi:information-outline", None],
@ -99,9 +99,9 @@ INFERRED_UNITS = {
" Minutes": TIME_MINUTES, " Minutes": TIME_MINUTES,
" Seconds": TIME_SECONDS, " Seconds": TIME_SECONDS,
" Percent": PERCENTAGE, " Percent": PERCENTAGE,
" Volts": VOLT, " Volts": ELECTRIC_POTENTIAL_VOLT,
" Ampere": ELECTRICAL_CURRENT_AMPERE, " Ampere": ELECTRIC_CURRENT_AMPERE,
" Volt-Ampere": ELECTRICAL_VOLT_AMPERE, " Volt-Ampere": POWER_VOLT_AMPERE,
" Watts": POWER_WATT, " Watts": POWER_WATT,
" Hz": FREQUENCY_HERTZ, " Hz": FREQUENCY_HERTZ,
" C": TEMP_CELSIUS, " C": TEMP_CELSIUS,

View file

@ -7,10 +7,10 @@ from homeassistant.const import (
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
POWER_KILO_WATT, POWER_KILO_WATT,
VOLT,
VOLUME_CUBIC_METERS, VOLUME_CUBIC_METERS,
) )
@ -112,37 +112,37 @@ DEFINITIONS = {
"name": "Current voltage L1", "name": "Current voltage L1",
"enable_default": True, "enable_default": True,
"device_class": DEVICE_CLASS_VOLTAGE, "device_class": DEVICE_CLASS_VOLTAGE,
"unit": VOLT, "unit": ELECTRIC_POTENTIAL_VOLT,
}, },
"dsmr/reading/phase_voltage_l2": { "dsmr/reading/phase_voltage_l2": {
"name": "Current voltage L2", "name": "Current voltage L2",
"enable_default": True, "enable_default": True,
"device_class": DEVICE_CLASS_VOLTAGE, "device_class": DEVICE_CLASS_VOLTAGE,
"unit": VOLT, "unit": ELECTRIC_POTENTIAL_VOLT,
}, },
"dsmr/reading/phase_voltage_l3": { "dsmr/reading/phase_voltage_l3": {
"name": "Current voltage L3", "name": "Current voltage L3",
"enable_default": True, "enable_default": True,
"device_class": DEVICE_CLASS_VOLTAGE, "device_class": DEVICE_CLASS_VOLTAGE,
"unit": VOLT, "unit": ELECTRIC_POTENTIAL_VOLT,
}, },
"dsmr/reading/phase_power_current_l1": { "dsmr/reading/phase_power_current_l1": {
"name": "Phase power current L1", "name": "Phase power current L1",
"enable_default": True, "enable_default": True,
"device_class": DEVICE_CLASS_CURRENT, "device_class": DEVICE_CLASS_CURRENT,
"unit": ELECTRICAL_CURRENT_AMPERE, "unit": ELECTRIC_CURRENT_AMPERE,
}, },
"dsmr/reading/phase_power_current_l2": { "dsmr/reading/phase_power_current_l2": {
"name": "Phase power current L2", "name": "Phase power current L2",
"enable_default": True, "enable_default": True,
"device_class": DEVICE_CLASS_CURRENT, "device_class": DEVICE_CLASS_CURRENT,
"unit": ELECTRICAL_CURRENT_AMPERE, "unit": ELECTRIC_CURRENT_AMPERE,
}, },
"dsmr/reading/phase_power_current_l3": { "dsmr/reading/phase_power_current_l3": {
"name": "Phase power current L3", "name": "Phase power current L3",
"enable_default": True, "enable_default": True,
"device_class": DEVICE_CLASS_CURRENT, "device_class": DEVICE_CLASS_CURRENT,
"unit": ELECTRICAL_CURRENT_AMPERE, "unit": ELECTRIC_CURRENT_AMPERE,
}, },
"dsmr/reading/timestamp": { "dsmr/reading/timestamp": {
"name": "Telegram timestamp", "name": "Telegram timestamp",

View file

@ -9,7 +9,7 @@ from elkm1_lib.util import pretty_const, username
import voluptuous as vol import voluptuous as vol
from homeassistant.components.sensor import SensorEntity from homeassistant.components.sensor import SensorEntity
from homeassistant.const import VOLT from homeassistant.const import ELECTRIC_POTENTIAL_VOLT
from homeassistant.exceptions import HomeAssistantError from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers import entity_platform from homeassistant.helpers import entity_platform
@ -255,7 +255,7 @@ class ElkZone(ElkSensor):
if self._element.definition == ZoneType.TEMPERATURE.value: if self._element.definition == ZoneType.TEMPERATURE.value:
return self._temperature_unit return self._temperature_unit
if self._element.definition == ZoneType.ANALOG_ZONE.value: if self._element.definition == ZoneType.ANALOG_ZONE.value:
return VOLT return ELECTRIC_POTENTIAL_VOLT
return None return None
def _element_changed(self, element, changeset): def _element_changed(self, element, changeset):

View file

@ -10,9 +10,9 @@ from homeassistant.const import (
CONF_DISPLAY_OPTIONS, CONF_DISPLAY_OPTIONS,
CONF_NAME, CONF_NAME,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ELECTRIC_POTENTIAL_VOLT,
PRESSURE_HPA, PRESSURE_HPA,
TEMP_CELSIUS, TEMP_CELSIUS,
VOLT,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.util import Throttle from homeassistant.util import Throttle
@ -37,10 +37,10 @@ SENSOR_TYPES = {
"magnetometer_z": ["magnetometer_z", " ", "mdi:magnet", None], "magnetometer_z": ["magnetometer_z", " ", "mdi:magnet", None],
"temperature": ["temperature", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE], "temperature": ["temperature", TEMP_CELSIUS, None, DEVICE_CLASS_TEMPERATURE],
"pressure": ["pressure", PRESSURE_HPA, "mdi:gauge", None], "pressure": ["pressure", PRESSURE_HPA, "mdi:gauge", None],
"voltage_0": ["voltage_0", VOLT, "mdi:flash", None], "voltage_0": ["voltage_0", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"voltage_1": ["voltage_1", VOLT, "mdi:flash", None], "voltage_1": ["voltage_1", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"voltage_2": ["voltage_2", VOLT, "mdi:flash", None], "voltage_2": ["voltage_2", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"voltage_3": ["voltage_3", VOLT, "mdi:flash", None], "voltage_3": ["voltage_3", ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
} }
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(

View file

@ -20,7 +20,8 @@ from homeassistant.const import (
ATTR_DEVICE_CLASS, ATTR_DEVICE_CLASS,
ATTR_NAME, ATTR_NAME,
ATTR_UNIT_OF_MEASUREMENT, ATTR_UNIT_OF_MEASUREMENT,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_WATT_HOUR, ENERGY_WATT_HOUR,
PERCENTAGE, PERCENTAGE,
POWER_WATT, POWER_WATT,
@ -28,7 +29,6 @@ from homeassistant.const import (
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_MINUTES, TIME_MINUTES,
TIME_SECONDS, TIME_SECONDS,
VOLT,
) )
ATTR_DEFAULT_ENABLED = "default_enabled" ATTR_DEFAULT_ENABLED = "default_enabled"
@ -66,7 +66,7 @@ SENSOR_DICT = {
"ampsIn": { "ampsIn": {
ATTR_NAME: "Amps In", ATTR_NAME: "Amps In",
ATTR_DEVICE_CLASS: DEVICE_CLASS_CURRENT, ATTR_DEVICE_CLASS: DEVICE_CLASS_CURRENT,
ATTR_UNIT_OF_MEASUREMENT: ELECTRICAL_CURRENT_AMPERE, ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_CURRENT_AMPERE,
ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT, ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT,
ATTR_DEFAULT_ENABLED: False, ATTR_DEFAULT_ENABLED: False,
}, },
@ -80,7 +80,7 @@ SENSOR_DICT = {
"ampsOut": { "ampsOut": {
ATTR_NAME: "Amps Out", ATTR_NAME: "Amps Out",
ATTR_DEVICE_CLASS: DEVICE_CLASS_CURRENT, ATTR_DEVICE_CLASS: DEVICE_CLASS_CURRENT,
ATTR_UNIT_OF_MEASUREMENT: ELECTRICAL_CURRENT_AMPERE, ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_CURRENT_AMPERE,
ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT, ATTR_STATE_CLASS: STATE_CLASS_MEASUREMENT,
ATTR_DEFAULT_ENABLED: False, ATTR_DEFAULT_ENABLED: False,
}, },
@ -101,7 +101,7 @@ SENSOR_DICT = {
"volts": { "volts": {
ATTR_NAME: "Volts", ATTR_NAME: "Volts",
ATTR_DEVICE_CLASS: DEVICE_CLASS_VOLTAGE, ATTR_DEVICE_CLASS: DEVICE_CLASS_VOLTAGE,
ATTR_UNIT_OF_MEASUREMENT: VOLT, ATTR_UNIT_OF_MEASUREMENT: ELECTRIC_POTENTIAL_VOLT,
ATTR_DEFAULT_ENABLED: False, ATTR_DEFAULT_ENABLED: False,
}, },
"socPercent": { "socPercent": {

View file

@ -5,11 +5,11 @@ from homeassistant.const import (
CONF_SENSOR_TYPE, CONF_SENSOR_TYPE,
CONF_TEMPERATURE_UNIT, CONF_TEMPERATURE_UNIT,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ELECTRIC_POTENTIAL_VOLT,
POWER_WATT, POWER_WATT,
TIME_HOURS, TIME_HOURS,
TIME_MINUTES, TIME_MINUTES,
TIME_SECONDS, TIME_SECONDS,
VOLT,
) )
from . import ( from . import (
@ -270,7 +270,7 @@ class VoltageSensor(GEMSensor):
"""Entity showing voltage.""" """Entity showing voltage."""
_attr_icon = VOLTAGE_ICON _attr_icon = VOLTAGE_ICON
_attr_unit_of_measurement = VOLT _attr_unit_of_measurement = ELECTRIC_POTENTIAL_VOLT
def __init__(self, monitor_serial_number, number, name): def __init__(self, monitor_serial_number, number, name):
"""Construct the entity.""" """Construct the entity."""

View file

@ -21,14 +21,14 @@ from homeassistant.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
PERCENTAGE, PERCENTAGE,
POWER_KILO_WATT, POWER_KILO_WATT,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
VOLT,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.util import Throttle, dt from homeassistant.util import Throttle, dt
@ -84,13 +84,13 @@ INVERTER_SENSOR_TYPES = {
), ),
"inverter_voltage_input_1": ( "inverter_voltage_input_1": (
"Input 1 voltage", "Input 1 voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vpv1", "vpv1",
{"round": 2, "device_class": DEVICE_CLASS_VOLTAGE}, {"round": 2, "device_class": DEVICE_CLASS_VOLTAGE},
), ),
"inverter_amperage_input_1": ( "inverter_amperage_input_1": (
"Input 1 Amperage", "Input 1 Amperage",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"ipv1", "ipv1",
{"round": 1, "device_class": DEVICE_CLASS_CURRENT}, {"round": 1, "device_class": DEVICE_CLASS_CURRENT},
), ),
@ -102,13 +102,13 @@ INVERTER_SENSOR_TYPES = {
), ),
"inverter_voltage_input_2": ( "inverter_voltage_input_2": (
"Input 2 voltage", "Input 2 voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vpv2", "vpv2",
{"round": 1, "device_class": DEVICE_CLASS_VOLTAGE}, {"round": 1, "device_class": DEVICE_CLASS_VOLTAGE},
), ),
"inverter_amperage_input_2": ( "inverter_amperage_input_2": (
"Input 2 Amperage", "Input 2 Amperage",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"ipv2", "ipv2",
{"round": 1, "device_class": DEVICE_CLASS_CURRENT}, {"round": 1, "device_class": DEVICE_CLASS_CURRENT},
), ),
@ -120,13 +120,13 @@ INVERTER_SENSOR_TYPES = {
), ),
"inverter_voltage_input_3": ( "inverter_voltage_input_3": (
"Input 3 voltage", "Input 3 voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vpv3", "vpv3",
{"round": 1, "device_class": DEVICE_CLASS_VOLTAGE}, {"round": 1, "device_class": DEVICE_CLASS_VOLTAGE},
), ),
"inverter_amperage_input_3": ( "inverter_amperage_input_3": (
"Input 3 Amperage", "Input 3 Amperage",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"ipv3", "ipv3",
{"round": 1, "device_class": DEVICE_CLASS_CURRENT}, {"round": 1, "device_class": DEVICE_CLASS_CURRENT},
), ),
@ -144,13 +144,13 @@ INVERTER_SENSOR_TYPES = {
), ),
"inverter_reactive_voltage": ( "inverter_reactive_voltage": (
"Reactive voltage", "Reactive voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vacr", "vacr",
{"round": 1, "device_class": DEVICE_CLASS_VOLTAGE}, {"round": 1, "device_class": DEVICE_CLASS_VOLTAGE},
), ),
"inverter_inverter_reactive_amperage": ( "inverter_inverter_reactive_amperage": (
"Reactive amperage", "Reactive amperage",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"iacr", "iacr",
{"round": 1, "device_class": DEVICE_CLASS_CURRENT}, {"round": 1, "device_class": DEVICE_CLASS_CURRENT},
), ),
@ -280,13 +280,13 @@ STORAGE_SENSOR_TYPES = {
), ),
"storage_grid_voltage": ( "storage_grid_voltage": (
"AC input voltage", "AC input voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vGrid", "vGrid",
{"round": 2, "device_class": DEVICE_CLASS_VOLTAGE}, {"round": 2, "device_class": DEVICE_CLASS_VOLTAGE},
), ),
"storage_pv_charging_voltage": ( "storage_pv_charging_voltage": (
"PV charging voltage", "PV charging voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vpv", "vpv",
{"round": 2, "device_class": DEVICE_CLASS_VOLTAGE}, {"round": 2, "device_class": DEVICE_CLASS_VOLTAGE},
), ),
@ -298,7 +298,7 @@ STORAGE_SENSOR_TYPES = {
), ),
"storage_output_voltage": ( "storage_output_voltage": (
"Output voltage", "Output voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"outPutVolt", "outPutVolt",
{"round": 2, "device_class": DEVICE_CLASS_VOLTAGE}, {"round": 2, "device_class": DEVICE_CLASS_VOLTAGE},
), ),
@ -310,31 +310,31 @@ STORAGE_SENSOR_TYPES = {
), ),
"storage_current_PV": ( "storage_current_PV": (
"Solar charge current", "Solar charge current",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"iAcCharge", "iAcCharge",
{"round": 2, "device_class": DEVICE_CLASS_CURRENT}, {"round": 2, "device_class": DEVICE_CLASS_CURRENT},
), ),
"storage_current_1": ( "storage_current_1": (
"Solar current to storage", "Solar current to storage",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"iChargePV1", "iChargePV1",
{"round": 2, "device_class": DEVICE_CLASS_CURRENT}, {"round": 2, "device_class": DEVICE_CLASS_CURRENT},
), ),
"storage_grid_amperage_input": ( "storage_grid_amperage_input": (
"Grid charge current", "Grid charge current",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"chgCurr", "chgCurr",
{"round": 2, "device_class": DEVICE_CLASS_CURRENT}, {"round": 2, "device_class": DEVICE_CLASS_CURRENT},
), ),
"storage_grid_out_current": ( "storage_grid_out_current": (
"Grid out current", "Grid out current",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"outPutCurrent", "outPutCurrent",
{"round": 2, "device_class": DEVICE_CLASS_CURRENT}, {"round": 2, "device_class": DEVICE_CLASS_CURRENT},
), ),
"storage_battery_voltage": ( "storage_battery_voltage": (
"Battery voltage", "Battery voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vBat", "vBat",
{"round": 2, "device_class": DEVICE_CLASS_VOLTAGE}, {"round": 2, "device_class": DEVICE_CLASS_VOLTAGE},
), ),
@ -398,19 +398,19 @@ MIX_SENSOR_TYPES = {
), ),
"mix_battery_voltage": ( "mix_battery_voltage": (
"Battery voltage", "Battery voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vbat", "vbat",
{"device_class": DEVICE_CLASS_VOLTAGE}, {"device_class": DEVICE_CLASS_VOLTAGE},
), ),
"mix_pv1_voltage": ( "mix_pv1_voltage": (
"PV1 voltage", "PV1 voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vpv1", "vpv1",
{"device_class": DEVICE_CLASS_VOLTAGE}, {"device_class": DEVICE_CLASS_VOLTAGE},
), ),
"mix_pv2_voltage": ( "mix_pv2_voltage": (
"PV2 voltage", "PV2 voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vpv2", "vpv2",
{"device_class": DEVICE_CLASS_VOLTAGE}, {"device_class": DEVICE_CLASS_VOLTAGE},
), ),
@ -490,7 +490,7 @@ MIX_SENSOR_TYPES = {
), ),
"mix_grid_voltage": ( "mix_grid_voltage": (
"Grid voltage", "Grid voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"vAc1", "vAc1",
{"device_class": DEVICE_CLASS_VOLTAGE}, {"device_class": DEVICE_CLASS_VOLTAGE},
), ),

View file

@ -9,6 +9,7 @@ from homeassistant.const import (
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ELECTRIC_CURRENT_MILLIAMPERE, ELECTRIC_CURRENT_MILLIAMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_WATT_HOUR, ENERGY_WATT_HOUR,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
LENGTH_MILLIMETERS, LENGTH_MILLIMETERS,
@ -18,7 +19,6 @@ from homeassistant.const import (
PRESSURE_HPA, PRESSURE_HPA,
SPEED_KILOMETERS_PER_HOUR, SPEED_KILOMETERS_PER_HOUR,
TEMP_CELSIUS, TEMP_CELSIUS,
VOLT,
VOLUME_CUBIC_METERS, VOLUME_CUBIC_METERS,
) )
@ -49,7 +49,7 @@ HM_UNIT_HA_CAST = {
"BRIGHTNESS": "#", "BRIGHTNESS": "#",
"POWER": POWER_WATT, "POWER": POWER_WATT,
"CURRENT": ELECTRIC_CURRENT_MILLIAMPERE, "CURRENT": ELECTRIC_CURRENT_MILLIAMPERE,
"VOLTAGE": VOLT, "VOLTAGE": ELECTRIC_POTENTIAL_VOLT,
"ENERGY_COUNTER": ENERGY_WATT_HOUR, "ENERGY_COUNTER": ENERGY_WATT_HOUR,
"GAS_POWER": VOLUME_CUBIC_METERS, "GAS_POWER": VOLUME_CUBIC_METERS,
"GAS_ENERGY_COUNTER": VOLUME_CUBIC_METERS, "GAS_ENERGY_COUNTER": VOLUME_CUBIC_METERS,

View file

@ -50,6 +50,7 @@ from homeassistant.const import (
DEGREE, DEGREE,
ELECTRIC_CURRENT_MILLIAMPERE, ELECTRIC_CURRENT_MILLIAMPERE,
ELECTRIC_POTENTIAL_MILLIVOLT, ELECTRIC_POTENTIAL_MILLIVOLT,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
ENERGY_WATT_HOUR, ENERGY_WATT_HOUR,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
@ -102,7 +103,6 @@ from homeassistant.const import (
TIME_SECONDS, TIME_SECONDS,
TIME_YEARS, TIME_YEARS,
UV_INDEX, UV_INDEX,
VOLT,
VOLUME_CUBIC_FEET, VOLUME_CUBIC_FEET,
VOLUME_CUBIC_METERS, VOLUME_CUBIC_METERS,
VOLUME_FLOW_RATE_CUBIC_FEET_PER_MINUTE, VOLUME_FLOW_RATE_CUBIC_FEET_PER_MINUTE,
@ -399,7 +399,7 @@ UOM_FRIENDLY_NAME = {
"65": "SML", "65": "SML",
"69": VOLUME_GALLONS, "69": VOLUME_GALLONS,
"71": UV_INDEX, "71": UV_INDEX,
"72": VOLT, "72": ELECTRIC_POTENTIAL_VOLT,
"73": POWER_WATT, "73": POWER_WATT,
"74": IRRADIATION_WATTS_PER_SQUARE_METER, "74": IRRADIATION_WATTS_PER_SQUARE_METER,
"75": "weekday", "75": "weekday",

View file

@ -6,12 +6,12 @@ from homeassistant.const import (
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_WATT_HOUR, ENERGY_WATT_HOUR,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_SECONDS, TIME_SECONDS,
VOLT,
) )
from .const import DOMAIN, JUICENET_API, JUICENET_COORDINATOR from .const import DOMAIN, JUICENET_API, JUICENET_COORDINATOR
@ -25,10 +25,10 @@ SENSOR_TYPES = {
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
], ],
"voltage": ["Voltage", VOLT, DEVICE_CLASS_VOLTAGE, None], "voltage": ["Voltage", ELECTRIC_POTENTIAL_VOLT, DEVICE_CLASS_VOLTAGE, None],
"amps": [ "amps": [
"Amps", "Amps",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
], ],

View file

@ -2,7 +2,7 @@
from homeassistant.components.sensor import SensorEntity from homeassistant.components.sensor import SensorEntity
from homeassistant.const import ( from homeassistant.const import (
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
) )
@ -23,7 +23,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
"Max Current", "Max Current",
"max_current", "max_current",
"mdi:flash", "mdi:flash",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
), ),
KebaSensor( KebaSensor(
keba, keba,

View file

@ -3,11 +3,11 @@ from itertools import product
from homeassistant.const import ( from homeassistant.const import (
DEGREE, DEGREE,
ELECTRIC_POTENTIAL_VOLT,
PERCENTAGE, PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
TEMP_KELVIN, TEMP_KELVIN,
VOLT,
) )
PLATFORMS = ["binary_sensor", "climate", "cover", "light", "scene", "sensor", "switch"] PLATFORMS = ["binary_sensor", "climate", "cover", "light", "scene", "sensor", "switch"]
@ -171,7 +171,7 @@ VAR_UNITS = [
"PERCENT", "PERCENT",
"PPM", "PPM",
"VOLT", "VOLT",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"AMPERE", "AMPERE",
"AMP", "AMP",
"A", "A",

View file

@ -11,20 +11,20 @@ from homeassistant.const import (
DEGREE, DEGREE,
DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_MILLIVOLT, ELECTRIC_POTENTIAL_MILLIVOLT,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_POTENTIAL_VOLT,
ELECTRICAL_VOLT_AMPERE,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
LENGTH_METERS, LENGTH_METERS,
LIGHT_LUX, LIGHT_LUX,
MASS_KILOGRAMS, MASS_KILOGRAMS,
PERCENTAGE, PERCENTAGE,
POWER_VOLT_AMPERE,
POWER_WATT, POWER_WATT,
SOUND_PRESSURE_DB, SOUND_PRESSURE_DB,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
VOLT,
VOLUME_CUBIC_METERS, VOLUME_CUBIC_METERS,
) )
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
@ -59,13 +59,13 @@ SENSORS: dict[str, list[str | None] | dict[str, list[str | None]]] = {
"S_VIBRATION": [FREQUENCY_HERTZ, None, None], "S_VIBRATION": [FREQUENCY_HERTZ, None, None],
"S_LIGHT_LEVEL": [LIGHT_LUX, "mdi:white-balance-sunny", None], "S_LIGHT_LEVEL": [LIGHT_LUX, "mdi:white-balance-sunny", None],
}, },
"V_VOLTAGE": [VOLT, "mdi:flash", None], "V_VOLTAGE": [ELECTRIC_POTENTIAL_VOLT, "mdi:flash", None],
"V_CURRENT": [ELECTRICAL_CURRENT_AMPERE, "mdi:flash-auto", None], "V_CURRENT": [ELECTRIC_CURRENT_AMPERE, "mdi:flash-auto", None],
"V_PH": ["pH", None, None], "V_PH": ["pH", None, None],
"V_ORP": [ELECTRIC_POTENTIAL_MILLIVOLT, None, None], "V_ORP": [ELECTRIC_POTENTIAL_MILLIVOLT, None, None],
"V_EC": [CONDUCTIVITY, None, None], "V_EC": [CONDUCTIVITY, None, None],
"V_VAR": ["var", None, None], "V_VAR": ["var", None, None],
"V_VA": [ELECTRICAL_VOLT_AMPERE, None, None], "V_VA": [POWER_VOLT_AMPERE, None, None],
} }

View file

@ -7,14 +7,14 @@ from homeassistant.components.sensor import (
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
) )
from homeassistant.const import ( from homeassistant.const import (
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRICAL_VOLT_AMPERE, ELECTRIC_POTENTIAL_VOLT,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
PERCENTAGE, PERCENTAGE,
POWER_VOLT_AMPERE,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_SECONDS, TIME_SECONDS,
VOLT,
) )
DOMAIN = "nut" DOMAIN = "nut"
@ -80,8 +80,8 @@ SENSOR_TYPES = {
"ups.display.language": ["Language", "", "mdi:information-outline", None], "ups.display.language": ["Language", "", "mdi:information-outline", None],
"ups.contacts": ["External Contacts", "", "mdi:information-outline", None], "ups.contacts": ["External Contacts", "", "mdi:information-outline", None],
"ups.efficiency": ["Efficiency", PERCENTAGE, "mdi:gauge", None], "ups.efficiency": ["Efficiency", PERCENTAGE, "mdi:gauge", None],
"ups.power": ["Current Apparent Power", ELECTRICAL_VOLT_AMPERE, "mdi:flash", None], "ups.power": ["Current Apparent Power", POWER_VOLT_AMPERE, "mdi:flash", None],
"ups.power.nominal": ["Nominal Power", ELECTRICAL_VOLT_AMPERE, "mdi:flash", None], "ups.power.nominal": ["Nominal Power", POWER_VOLT_AMPERE, "mdi:flash", None],
"ups.realpower": [ "ups.realpower": [
"Current Real Power", "Current Real Power",
POWER_WATT, POWER_WATT,
@ -121,25 +121,40 @@ SENSOR_TYPES = {
None, None,
], ],
"battery.charger.status": ["Charging Status", "", "mdi:information-outline", None], "battery.charger.status": ["Charging Status", "", "mdi:information-outline", None],
"battery.voltage": ["Battery Voltage", VOLT, None, DEVICE_CLASS_VOLTAGE], "battery.voltage": [
"battery.voltage.nominal": [ "Battery Voltage",
"Nominal Battery Voltage", ELECTRIC_POTENTIAL_VOLT,
VOLT, None,
DEVICE_CLASS_VOLTAGE,
],
"battery.voltage.nominal": [
"Nominal Battery Voltage",
ELECTRIC_POTENTIAL_VOLT,
None,
DEVICE_CLASS_VOLTAGE,
],
"battery.voltage.low": [
"Low Battery Voltage",
ELECTRIC_POTENTIAL_VOLT,
None,
DEVICE_CLASS_VOLTAGE,
],
"battery.voltage.high": [
"High Battery Voltage",
ELECTRIC_POTENTIAL_VOLT,
None, None,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
], ],
"battery.voltage.low": ["Low Battery Voltage", VOLT, None, DEVICE_CLASS_VOLTAGE],
"battery.voltage.high": ["High Battery Voltage", VOLT, None, DEVICE_CLASS_VOLTAGE],
"battery.capacity": ["Battery Capacity", "Ah", "mdi:flash", None], "battery.capacity": ["Battery Capacity", "Ah", "mdi:flash", None],
"battery.current": [ "battery.current": [
"Battery Current", "Battery Current",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"mdi:flash", "mdi:flash",
None, None,
], ],
"battery.current.total": [ "battery.current.total": [
"Total Battery Current", "Total Battery Current",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"mdi:flash", "mdi:flash",
None, None,
], ],
@ -184,18 +199,33 @@ SENSOR_TYPES = {
"mdi:information-outline", "mdi:information-outline",
None, None,
], ],
"input.transfer.low": ["Low Voltage Transfer", VOLT, None, DEVICE_CLASS_VOLTAGE], "input.transfer.low": [
"input.transfer.high": ["High Voltage Transfer", VOLT, None, DEVICE_CLASS_VOLTAGE], "Low Voltage Transfer",
ELECTRIC_POTENTIAL_VOLT,
None,
DEVICE_CLASS_VOLTAGE,
],
"input.transfer.high": [
"High Voltage Transfer",
ELECTRIC_POTENTIAL_VOLT,
None,
DEVICE_CLASS_VOLTAGE,
],
"input.transfer.reason": [ "input.transfer.reason": [
"Voltage Transfer Reason", "Voltage Transfer Reason",
"", "",
"mdi:information-outline", "mdi:information-outline",
None, None,
], ],
"input.voltage": ["Input Voltage", VOLT, None, DEVICE_CLASS_VOLTAGE], "input.voltage": [
"Input Voltage",
ELECTRIC_POTENTIAL_VOLT,
None,
DEVICE_CLASS_VOLTAGE,
],
"input.voltage.nominal": [ "input.voltage.nominal": [
"Nominal Input Voltage", "Nominal Input Voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
None, None,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
], ],
@ -212,17 +242,22 @@ SENSOR_TYPES = {
"mdi:information-outline", "mdi:information-outline",
None, None,
], ],
"output.current": ["Output Current", ELECTRICAL_CURRENT_AMPERE, "mdi:flash", None], "output.current": ["Output Current", ELECTRIC_CURRENT_AMPERE, "mdi:flash", None],
"output.current.nominal": [ "output.current.nominal": [
"Nominal Output Current", "Nominal Output Current",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"mdi:flash", "mdi:flash",
None, None,
], ],
"output.voltage": ["Output Voltage", VOLT, None, DEVICE_CLASS_VOLTAGE], "output.voltage": [
"Output Voltage",
ELECTRIC_POTENTIAL_VOLT,
None,
DEVICE_CLASS_VOLTAGE,
],
"output.voltage.nominal": [ "output.voltage.nominal": [
"Nominal Output Voltage", "Nominal Output Voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
None, None,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
], ],

View file

@ -11,12 +11,12 @@ from homeassistant.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
LIGHT_LUX, LIGHT_LUX,
PERCENTAGE, PERCENTAGE,
PRESSURE_MBAR, PRESSURE_MBAR,
TEMP_CELSIUS, TEMP_CELSIUS,
VOLT,
) )
CONF_MOUNT_DIR = "mount_dir" CONF_MOUNT_DIR = "mount_dir"
@ -55,8 +55,8 @@ SENSOR_TYPES: dict[str, list[str | None]] = {
SENSOR_TYPE_WETNESS: [PERCENTAGE, DEVICE_CLASS_HUMIDITY], SENSOR_TYPE_WETNESS: [PERCENTAGE, DEVICE_CLASS_HUMIDITY],
SENSOR_TYPE_MOISTURE: [PRESSURE_CBAR, DEVICE_CLASS_PRESSURE], SENSOR_TYPE_MOISTURE: [PRESSURE_CBAR, DEVICE_CLASS_PRESSURE],
SENSOR_TYPE_COUNT: ["count", None], SENSOR_TYPE_COUNT: ["count", None],
SENSOR_TYPE_VOLTAGE: [VOLT, DEVICE_CLASS_VOLTAGE], SENSOR_TYPE_VOLTAGE: [ELECTRIC_POTENTIAL_VOLT, DEVICE_CLASS_VOLTAGE],
SENSOR_TYPE_CURRENT: [ELECTRICAL_CURRENT_AMPERE, DEVICE_CLASS_CURRENT], SENSOR_TYPE_CURRENT: [ELECTRIC_CURRENT_AMPERE, DEVICE_CLASS_CURRENT],
SENSOR_TYPE_SENSED: [None, None], SENSOR_TYPE_SENSED: [None, None],
SWITCH_TYPE_LATCH: [None, None], SWITCH_TYPE_LATCH: [None, None],
SWITCH_TYPE_PIO: [None, None], SWITCH_TYPE_PIO: [None, None],

View file

@ -23,7 +23,8 @@ from homeassistant.const import (
CONF_HOST, CONF_HOST,
CONF_PORT, CONF_PORT,
DEGREE, DEGREE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
EVENT_HOMEASSISTANT_STOP, EVENT_HOMEASSISTANT_STOP,
LENGTH_MILLIMETERS, LENGTH_MILLIMETERS,
@ -35,7 +36,6 @@ from homeassistant.const import (
SPEED_METERS_PER_SECOND, SPEED_METERS_PER_SECOND,
TEMP_CELSIUS, TEMP_CELSIUS,
UV_INDEX, UV_INDEX,
VOLT,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -87,11 +87,11 @@ DATA_TYPES = OrderedDict(
("Wind gust", SPEED_METERS_PER_SECOND), ("Wind gust", SPEED_METERS_PER_SECOND),
("Chill", TEMP_CELSIUS), ("Chill", TEMP_CELSIUS),
("Count", "count"), ("Count", "count"),
("Current Ch. 1", ELECTRICAL_CURRENT_AMPERE), ("Current Ch. 1", ELECTRIC_CURRENT_AMPERE),
("Current Ch. 2", ELECTRICAL_CURRENT_AMPERE), ("Current Ch. 2", ELECTRIC_CURRENT_AMPERE),
("Current Ch. 3", ELECTRICAL_CURRENT_AMPERE), ("Current Ch. 3", ELECTRIC_CURRENT_AMPERE),
("Voltage", VOLT), ("Voltage", ELECTRIC_POTENTIAL_VOLT),
("Current", ELECTRICAL_CURRENT_AMPERE), ("Current", ELECTRIC_CURRENT_AMPERE),
("Battery numeric", PERCENTAGE), ("Battery numeric", PERCENTAGE),
("Rssi numeric", SIGNAL_STRENGTH_DECIBELS_MILLIWATT), ("Rssi numeric", SIGNAL_STRENGTH_DECIBELS_MILLIWATT),
] ]

View file

@ -3,9 +3,9 @@ from homeassistant.components.sensor import STATE_CLASS_MEASUREMENT, SensorEntit
from homeassistant.const import ( from homeassistant.const import (
ATTR_ATTRIBUTION, ATTR_ATTRIBUTION,
DEVICE_CLASS_POWER, DEVICE_CLASS_POWER,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
POWER_WATT, POWER_WATT,
VOLT,
) )
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
@ -174,7 +174,7 @@ class SenseActiveSensor(SensorEntity):
class SenseVoltageSensor(SensorEntity): class SenseVoltageSensor(SensorEntity):
"""Implementation of a Sense energy voltage sensor.""" """Implementation of a Sense energy voltage sensor."""
_attr_unit_of_measurement = VOLT _attr_unit_of_measurement = ELECTRIC_POTENTIAL_VOLT
_attr_extra_state_attributes = {ATTR_ATTRIBUTION: ATTRIBUTION} _attr_extra_state_attributes = {ATTR_ATTRIBUTION: ATTRIBUTION}
_attr_icon = ICON _attr_icon = ICON
_attr_should_poll = False _attr_should_poll = False

View file

@ -4,13 +4,13 @@ from homeassistant.components.sensor import SensorEntity
from homeassistant.const import ( from homeassistant.const import (
CONCENTRATION_PARTS_PER_MILLION, CONCENTRATION_PARTS_PER_MILLION,
DEGREE, DEGREE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
LIGHT_LUX, LIGHT_LUX,
PERCENTAGE, PERCENTAGE,
POWER_WATT, POWER_WATT,
SIGNAL_STRENGTH_DECIBELS_MILLIWATT, SIGNAL_STRENGTH_DECIBELS_MILLIWATT,
VOLT,
) )
from .const import SHAIR_MAX_WORK_HOURS from .const import SHAIR_MAX_WORK_HOURS
@ -43,7 +43,7 @@ SENSORS = {
), ),
("emeter", "current"): BlockAttributeDescription( ("emeter", "current"): BlockAttributeDescription(
name="Current", name="Current",
unit=ELECTRICAL_CURRENT_AMPERE, unit=ELECTRIC_CURRENT_AMPERE,
value=lambda value: value, value=lambda value: value,
device_class=sensor.DEVICE_CLASS_CURRENT, device_class=sensor.DEVICE_CLASS_CURRENT,
state_class=sensor.STATE_CLASS_MEASUREMENT, state_class=sensor.STATE_CLASS_MEASUREMENT,
@ -72,7 +72,7 @@ SENSORS = {
), ),
("emeter", "voltage"): BlockAttributeDescription( ("emeter", "voltage"): BlockAttributeDescription(
name="Voltage", name="Voltage",
unit=VOLT, unit=ELECTRIC_POTENTIAL_VOLT,
value=lambda value: round(value, 1), value=lambda value: round(value, 1),
device_class=sensor.DEVICE_CLASS_VOLTAGE, device_class=sensor.DEVICE_CLASS_VOLTAGE,
state_class=sensor.STATE_CLASS_MEASUREMENT, state_class=sensor.STATE_CLASS_MEASUREMENT,
@ -186,7 +186,7 @@ SENSORS = {
), ),
("adc", "adc"): BlockAttributeDescription( ("adc", "adc"): BlockAttributeDescription(
name="ADC", name="ADC",
unit=VOLT, unit=ELECTRIC_POTENTIAL_VOLT,
value=lambda value: round(value, 1), value=lambda value: round(value, 1),
device_class=sensor.DEVICE_CLASS_VOLTAGE, device_class=sensor.DEVICE_CLASS_VOLTAGE,
state_class=sensor.STATE_CLASS_MEASUREMENT, state_class=sensor.STATE_CLASS_MEASUREMENT,

View file

@ -1,6 +1,11 @@
"""Support for monitoring a Smappee energy sensor.""" """Support for monitoring a Smappee energy sensor."""
from homeassistant.components.sensor import SensorEntity from homeassistant.components.sensor import SensorEntity
from homeassistant.const import DEVICE_CLASS_POWER, ENERGY_WATT_HOUR, POWER_WATT, VOLT from homeassistant.const import (
DEVICE_CLASS_POWER,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_WATT_HOUR,
POWER_WATT,
)
from .const import DOMAIN from .const import DOMAIN
@ -93,7 +98,7 @@ VOLTAGE_SENSORS = {
"phase_voltages_a": [ "phase_voltages_a": [
"Phase voltages - A", "Phase voltages - A",
"mdi:flash", "mdi:flash",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"phase_voltage_a", "phase_voltage_a",
None, None,
["ONE", "TWO", "THREE_STAR", "THREE_DELTA"], ["ONE", "TWO", "THREE_STAR", "THREE_DELTA"],
@ -101,7 +106,7 @@ VOLTAGE_SENSORS = {
"phase_voltages_b": [ "phase_voltages_b": [
"Phase voltages - B", "Phase voltages - B",
"mdi:flash", "mdi:flash",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"phase_voltage_b", "phase_voltage_b",
None, None,
["TWO", "THREE_STAR", "THREE_DELTA"], ["TWO", "THREE_STAR", "THREE_DELTA"],
@ -109,7 +114,7 @@ VOLTAGE_SENSORS = {
"phase_voltages_c": [ "phase_voltages_c": [
"Phase voltages - C", "Phase voltages - C",
"mdi:flash", "mdi:flash",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"phase_voltage_c", "phase_voltage_c",
None, None,
["THREE_STAR"], ["THREE_STAR"],
@ -117,7 +122,7 @@ VOLTAGE_SENSORS = {
"line_voltages_a": [ "line_voltages_a": [
"Line voltages - A", "Line voltages - A",
"mdi:flash", "mdi:flash",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"line_voltage_a", "line_voltage_a",
None, None,
["ONE", "TWO", "THREE_STAR", "THREE_DELTA"], ["ONE", "TWO", "THREE_STAR", "THREE_DELTA"],
@ -125,7 +130,7 @@ VOLTAGE_SENSORS = {
"line_voltages_b": [ "line_voltages_b": [
"Line voltages - B", "Line voltages - B",
"mdi:flash", "mdi:flash",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"line_voltage_b", "line_voltage_b",
None, None,
["TWO", "THREE_STAR", "THREE_DELTA"], ["TWO", "THREE_STAR", "THREE_DELTA"],
@ -133,7 +138,7 @@ VOLTAGE_SENSORS = {
"line_voltages_c": [ "line_voltages_c": [
"Line voltages - C", "Line voltages - C",
"mdi:flash", "mdi:flash",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"line_voltage_c", "line_voltage_c",
None, None,
["THREE_STAR", "THREE_DELTA"], ["THREE_STAR", "THREE_DELTA"],

View file

@ -15,6 +15,7 @@ from homeassistant.const import (
DEVICE_CLASS_ILLUMINANCE, DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
LIGHT_LUX, LIGHT_LUX,
MASS_KILOGRAMS, MASS_KILOGRAMS,
@ -22,7 +23,6 @@ from homeassistant.const import (
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
VOLT,
VOLUME_CUBIC_METERS, VOLUME_CUBIC_METERS,
) )
@ -254,7 +254,7 @@ CAPABILITY_TO_SENSORS = {
Map(Attribute.ultraviolet_index, "Ultraviolet Index", None, None) Map(Attribute.ultraviolet_index, "Ultraviolet Index", None, None)
], ],
Capability.voltage_measurement: [ Capability.voltage_measurement: [
Map(Attribute.voltage, "Voltage Measurement", VOLT, None) Map(Attribute.voltage, "Voltage Measurement", ELECTRIC_POTENTIAL_VOLT, None)
], ],
Capability.washer_mode: [Map(Attribute.washer_mode, "Washer Mode", None, None)], Capability.washer_mode: [Map(Attribute.washer_mode, "Washer Mode", None, None)],
Capability.washer_operating_state: [ Capability.washer_operating_state: [

View file

@ -14,13 +14,13 @@ from homeassistant.const import (
CONF_IP_ADDRESS, CONF_IP_ADDRESS,
CONF_NAME, CONF_NAME,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_WATT_HOUR, ENERGY_WATT_HOUR,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
POWER_WATT, POWER_WATT,
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
VOLT,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.util import Throttle from homeassistant.util import Throttle
@ -44,8 +44,20 @@ INVERTER_MODES = (
# Supported sensor types: # Supported sensor types:
# Key: ['json_key', 'name', unit, icon, attribute name] # Key: ['json_key', 'name', unit, icon, attribute name]
SENSOR_TYPES = { SENSOR_TYPES = {
"current_AC_voltage": ["gridvoltage", "Grid Voltage", VOLT, "mdi:current-ac", None], "current_AC_voltage": [
"current_DC_voltage": ["dcvoltage", "DC Voltage", VOLT, "mdi:current-dc", None], "gridvoltage",
"Grid Voltage",
ELECTRIC_POTENTIAL_VOLT,
"mdi:current-ac",
None,
],
"current_DC_voltage": [
"dcvoltage",
"DC Voltage",
ELECTRIC_POTENTIAL_VOLT,
"mdi:current-dc",
None,
],
"current_frequency": [ "current_frequency": [
"gridfrequency", "gridfrequency",
"Grid Frequency", "Grid Frequency",
@ -113,7 +125,7 @@ SENSOR_TYPES = {
"optimizer_current": [ "optimizer_current": [
"optimizercurrent", "optimizercurrent",
"Average Optimizer Current", "Average Optimizer Current",
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
"mdi:solar-panel", "mdi:solar-panel",
None, None,
None, None,
@ -137,7 +149,7 @@ SENSOR_TYPES = {
"optimizer_voltage": [ "optimizer_voltage": [
"optimizervoltage", "optimizervoltage",
"Average Optimizer Voltage", "Average Optimizer Voltage",
VOLT, ELECTRIC_POTENTIAL_VOLT,
"mdi:solar-panel", "mdi:solar-panel",
None, None,
None, None,

View file

@ -1,7 +1,12 @@
"""Constants for the Solar-Log integration.""" """Constants for the Solar-Log integration."""
from datetime import timedelta from datetime import timedelta
from homeassistant.const import ENERGY_KILO_WATT_HOUR, PERCENTAGE, POWER_WATT, VOLT from homeassistant.const import (
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR,
PERCENTAGE,
POWER_WATT,
)
DOMAIN = "solarlog" DOMAIN = "solarlog"
@ -17,8 +22,8 @@ SENSOR_TYPES = {
"time": ["TIME", "last update", None, "mdi:calendar-clock"], "time": ["TIME", "last update", None, "mdi:calendar-clock"],
"power_ac": ["powerAC", "power AC", POWER_WATT, "mdi:solar-power"], "power_ac": ["powerAC", "power AC", POWER_WATT, "mdi:solar-power"],
"power_dc": ["powerDC", "power DC", POWER_WATT, "mdi:solar-power"], "power_dc": ["powerDC", "power DC", POWER_WATT, "mdi:solar-power"],
"voltage_ac": ["voltageAC", "voltage AC", VOLT, "mdi:flash"], "voltage_ac": ["voltageAC", "voltage AC", ELECTRIC_POTENTIAL_VOLT, "mdi:flash"],
"voltage_dc": ["voltageDC", "voltage DC", VOLT, "mdi:flash"], "voltage_dc": ["voltageDC", "voltage DC", ELECTRIC_POTENTIAL_VOLT, "mdi:flash"],
"yield_day": ["yieldDAY", "yield day", ENERGY_KILO_WATT_HOUR, "mdi:solar-power"], "yield_day": ["yieldDAY", "yield day", ENERGY_KILO_WATT_HOUR, "mdi:solar-power"],
"yield_yesterday": [ "yield_yesterday": [
"yieldYESTERDAY", "yieldYESTERDAY",

View file

@ -1,10 +1,10 @@
"""Reads vehicle status from StarLine API.""" """Reads vehicle status from StarLine API."""
from homeassistant.components.sensor import DEVICE_CLASS_TEMPERATURE, SensorEntity from homeassistant.components.sensor import DEVICE_CLASS_TEMPERATURE, SensorEntity
from homeassistant.const import ( from homeassistant.const import (
ELECTRIC_POTENTIAL_VOLT,
LENGTH_KILOMETERS, LENGTH_KILOMETERS,
PERCENTAGE, PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
VOLT,
VOLUME_LITERS, VOLUME_LITERS,
) )
from homeassistant.helpers.icon import icon_for_battery_level, icon_for_signal_level from homeassistant.helpers.icon import icon_for_battery_level, icon_for_signal_level
@ -14,7 +14,7 @@ from .const import DOMAIN
from .entity import StarlineEntity from .entity import StarlineEntity
SENSOR_TYPES = { SENSOR_TYPES = {
"battery": ["Battery", None, VOLT, None], "battery": ["Battery", None, ELECTRIC_POTENTIAL_VOLT, None],
"balance": ["Balance", None, None, "mdi:cash-multiple"], "balance": ["Balance", None, None, "mdi:cash-multiple"],
"ctemp": ["Interior Temperature", DEVICE_CLASS_TEMPERATURE, TEMP_CELSIUS, None], "ctemp": ["Interior Temperature", DEVICE_CLASS_TEMPERATURE, TEMP_CELSIUS, None],
"etemp": ["Engine Temperature", DEVICE_CLASS_TEMPERATURE, TEMP_CELSIUS, None], "etemp": ["Engine Temperature", DEVICE_CLASS_TEMPERATURE, TEMP_CELSIUS, None],

View file

@ -8,13 +8,13 @@ from homeassistant.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ELECTRIC_POTENTIAL_VOLT,
LENGTH_KILOMETERS, LENGTH_KILOMETERS,
LENGTH_MILES, LENGTH_MILES,
PERCENTAGE, PERCENTAGE,
PRESSURE_HPA, PRESSURE_HPA,
TEMP_CELSIUS, TEMP_CELSIUS,
TIME_MINUTES, TIME_MINUTES,
VOLT,
VOLUME_GALLONS, VOLUME_GALLONS,
VOLUME_LITERS, VOLUME_LITERS,
) )
@ -111,7 +111,7 @@ API_GEN_2_SENSORS = [
SENSOR_TYPE: "12V Battery Voltage", SENSOR_TYPE: "12V Battery Voltage",
SENSOR_CLASS: DEVICE_CLASS_VOLTAGE, SENSOR_CLASS: DEVICE_CLASS_VOLTAGE,
SENSOR_FIELD: sc.BATTERY_VOLTAGE, SENSOR_FIELD: sc.BATTERY_VOLTAGE,
SENSOR_UNITS: VOLT, SENSOR_UNITS: ELECTRIC_POTENTIAL_VOLT,
}, },
] ]

View file

@ -12,7 +12,7 @@ from homeassistant.components.sensor import (
SensorEntity, SensorEntity,
) )
from homeassistant.config_entries import ConfigEntry from homeassistant.config_entries import ConfigEntry
from homeassistant.const import ELECTRICAL_CURRENT_AMPERE, POWER_WATT from homeassistant.const import ELECTRIC_CURRENT_AMPERE, POWER_WATT
from homeassistant.core import HomeAssistant, callback from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers import device_registry from homeassistant.helpers import device_registry
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
@ -45,7 +45,7 @@ POWER_SENSORS = {
), ),
"electric_current": AttributeDescription( "electric_current": AttributeDescription(
name="Electric Current", name="Electric Current",
unit=ELECTRICAL_CURRENT_AMPERE, unit=ELECTRIC_CURRENT_AMPERE,
device_class=DEVICE_CLASS_CURRENT, device_class=DEVICE_CLASS_CURRENT,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
), ),

View file

@ -14,10 +14,10 @@ from homeassistant.const import (
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ELECTRIC_POTENTIAL_VOLT,
FREQUENCY_GIGAHERTZ, FREQUENCY_GIGAHERTZ,
PERCENTAGE, PERCENTAGE,
TEMP_CELSIUS, TEMP_CELSIUS,
VOLT,
) )
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator from homeassistant.helpers.update_coordinator import DataUpdateCoordinator
@ -205,7 +205,7 @@ class BridgeCpuVoltageSensor(BridgeSensor):
"CPU Voltage", "CPU Voltage",
None, None,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
VOLT, ELECTRIC_POTENTIAL_VOLT,
False, False,
) )

View file

@ -26,14 +26,15 @@ from homeassistant.const import (
DEVICE_CLASS_SIGNAL_STRENGTH, DEVICE_CLASS_SIGNAL_STRENGTH,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRICAL_VOLT_AMPERE, ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
FREQUENCY_HERTZ, FREQUENCY_HERTZ,
LENGTH_CENTIMETERS, LENGTH_CENTIMETERS,
LIGHT_LUX, LIGHT_LUX,
MASS_KILOGRAMS, MASS_KILOGRAMS,
PERCENTAGE, PERCENTAGE,
POWER_VOLT_AMPERE,
POWER_WATT, POWER_WATT,
PRESSURE_HPA, PRESSURE_HPA,
SIGNAL_STRENGTH_DECIBELS, SIGNAL_STRENGTH_DECIBELS,
@ -44,7 +45,6 @@ from homeassistant.const import (
TEMP_CELSIUS, TEMP_CELSIUS,
TEMP_FAHRENHEIT, TEMP_FAHRENHEIT,
TEMP_KELVIN, TEMP_KELVIN,
VOLT,
) )
from homeassistant.core import HomeAssistant, callback from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect from homeassistant.helpers.dispatcher import async_dispatcher_connect
@ -134,8 +134,8 @@ SENSOR_UNIT_MAP = {
hc.CONCENTRATION_MICROGRAMS_PER_CUBIC_METER: CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, hc.CONCENTRATION_MICROGRAMS_PER_CUBIC_METER: CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
hc.CONCENTRATION_PARTS_PER_BILLION: CONCENTRATION_PARTS_PER_BILLION, hc.CONCENTRATION_PARTS_PER_BILLION: CONCENTRATION_PARTS_PER_BILLION,
hc.CONCENTRATION_PARTS_PER_MILLION: CONCENTRATION_PARTS_PER_MILLION, hc.CONCENTRATION_PARTS_PER_MILLION: CONCENTRATION_PARTS_PER_MILLION,
hc.ELECTRICAL_CURRENT_AMPERE: ELECTRICAL_CURRENT_AMPERE, hc.ELECTRICAL_CURRENT_AMPERE: ELECTRIC_CURRENT_AMPERE,
hc.ELECTRICAL_VOLT_AMPERE: ELECTRICAL_VOLT_AMPERE, hc.ELECTRICAL_VOLT_AMPERE: POWER_VOLT_AMPERE,
hc.ENERGY_KILO_WATT_HOUR: ENERGY_KILO_WATT_HOUR, hc.ENERGY_KILO_WATT_HOUR: ENERGY_KILO_WATT_HOUR,
hc.FREQUENCY_HERTZ: FREQUENCY_HERTZ, hc.FREQUENCY_HERTZ: FREQUENCY_HERTZ,
hc.LENGTH_CENTIMETERS: LENGTH_CENTIMETERS, hc.LENGTH_CENTIMETERS: LENGTH_CENTIMETERS,
@ -152,7 +152,7 @@ SENSOR_UNIT_MAP = {
hc.TEMP_CELSIUS: TEMP_CELSIUS, hc.TEMP_CELSIUS: TEMP_CELSIUS,
hc.TEMP_FAHRENHEIT: TEMP_FAHRENHEIT, hc.TEMP_FAHRENHEIT: TEMP_FAHRENHEIT,
hc.TEMP_KELVIN: TEMP_KELVIN, hc.TEMP_KELVIN: TEMP_KELVIN,
hc.VOLT: VOLT, hc.VOLT: ELECTRIC_POTENTIAL_VOLT,
} }

View file

@ -12,7 +12,13 @@ from homeassistant.components.sensor import (
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
SensorEntity, SensorEntity,
) )
from homeassistant.const import CONF_HOST, CONF_NAME, CONF_PORT, POWER_WATT, VOLT from homeassistant.const import (
CONF_HOST,
CONF_NAME,
CONF_PORT,
ELECTRIC_POTENTIAL_VOLT,
POWER_WATT,
)
from homeassistant.helpers import config_validation as cv from homeassistant.helpers import config_validation as cv
from homeassistant.util import Throttle from homeassistant.util import Throttle
@ -47,7 +53,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
dev = [] dev = []
for mtu in gateway.data: for mtu in gateway.data:
dev.append(Ted5000Sensor(gateway, name, mtu, POWER_WATT)) dev.append(Ted5000Sensor(gateway, name, mtu, POWER_WATT))
dev.append(Ted5000Sensor(gateway, name, mtu, VOLT)) dev.append(Ted5000Sensor(gateway, name, mtu, ELECTRIC_POTENTIAL_VOLT))
add_entities(dev) add_entities(dev)
return True return True
@ -60,7 +66,7 @@ class Ted5000Sensor(SensorEntity):
def __init__(self, gateway, name, mtu, unit): def __init__(self, gateway, name, mtu, unit):
"""Initialize the sensor.""" """Initialize the sensor."""
units = {POWER_WATT: "power", VOLT: "voltage"} units = {POWER_WATT: "power", ELECTRIC_POTENTIAL_VOLT: "voltage"}
self._gateway = gateway self._gateway = gateway
self._name = f"{name} mtu{mtu} {units[unit]}" self._name = f"{name} mtu{mtu} {units[unit]}"
self._mtu = mtu self._mtu = mtu
@ -112,4 +118,7 @@ class Ted5000Gateway:
power = int(doc["LiveData"]["Power"]["MTU%d" % mtu]["PowerNow"]) power = int(doc["LiveData"]["Power"]["MTU%d" % mtu]["PowerNow"])
voltage = int(doc["LiveData"]["Voltage"]["MTU%d" % mtu]["VoltageNow"]) voltage = int(doc["LiveData"]["Voltage"]["MTU%d" % mtu]["VoltageNow"])
self.data[mtu] = {POWER_WATT: power, VOLT: voltage / 10} self.data[mtu] = {
POWER_WATT: power,
ELECTRIC_POTENTIAL_VOLT: voltage / 10,
}

View file

@ -22,12 +22,12 @@ from homeassistant.components.sensor import (
SensorEntity, SensorEntity,
) )
from homeassistant.const import ( from homeassistant.const import (
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
PERCENTAGE, PERCENTAGE,
POWER_WATT, POWER_WATT,
SIGNAL_STRENGTH_DECIBELS, SIGNAL_STRENGTH_DECIBELS,
VOLT,
) )
from homeassistant.core import callback from homeassistant.core import callback
from homeassistant.exceptions import PlatformNotReady from homeassistant.exceptions import PlatformNotReady
@ -126,37 +126,37 @@ RT_SENSOR_MAP: dict[str, TibberSensorMetadata] = {
"voltagePhase1": TibberSensorMetadata( "voltagePhase1": TibberSensorMetadata(
"voltage phase1", "voltage phase1",
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
VOLT, ELECTRIC_POTENTIAL_VOLT,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
), ),
"voltagePhase2": TibberSensorMetadata( "voltagePhase2": TibberSensorMetadata(
"voltage phase2", "voltage phase2",
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
VOLT, ELECTRIC_POTENTIAL_VOLT,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
), ),
"voltagePhase3": TibberSensorMetadata( "voltagePhase3": TibberSensorMetadata(
"voltage phase3", "voltage phase3",
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
VOLT, ELECTRIC_POTENTIAL_VOLT,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
), ),
"currentL1": TibberSensorMetadata( "currentL1": TibberSensorMetadata(
"current L1", "current L1",
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
), ),
"currentL2": TibberSensorMetadata( "currentL2": TibberSensorMetadata(
"current L2", "current L2",
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
), ),
"currentL3": TibberSensorMetadata( "currentL3": TibberSensorMetadata(
"current L3", "current L3",
DEVICE_CLASS_CURRENT, DEVICE_CLASS_CURRENT,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
STATE_CLASS_MEASUREMENT, STATE_CLASS_MEASUREMENT,
), ),
"signalStrength": TibberSensorMetadata( "signalStrength": TibberSensorMetadata(

View file

@ -3,7 +3,7 @@ from homeassistant.const import (
CONF_ICON, CONF_ICON,
CONF_NAME, CONF_NAME,
CONF_UNIT_OF_MEASUREMENT, CONF_UNIT_OF_MEASUREMENT,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ENERGY_KILO_WATT_HOUR, ENERGY_KILO_WATT_HOUR,
LENGTH_KILOMETERS, LENGTH_KILOMETERS,
PERCENTAGE, PERCENTAGE,
@ -30,7 +30,7 @@ CONF_SENSOR_TYPES = {
CONF_ICON: "mdi:ev-station", CONF_ICON: "mdi:ev-station",
CONF_NAME: "Max Available Power", CONF_NAME: "Max Available Power",
CONF_ROUND: 0, CONF_ROUND: 0,
CONF_UNIT_OF_MEASUREMENT: ELECTRICAL_CURRENT_AMPERE, CONF_UNIT_OF_MEASUREMENT: ELECTRIC_CURRENT_AMPERE,
STATE_UNAVAILABLE: False, STATE_UNAVAILABLE: False,
}, },
"charging_speed": { "charging_speed": {

View file

@ -11,9 +11,9 @@ from homeassistant.const import (
ATTR_VOLTAGE, ATTR_VOLTAGE,
CONF_PASSWORD, CONF_PASSWORD,
CONF_USERNAME, CONF_USERNAME,
ELECTRIC_POTENTIAL_VOLT,
PERCENTAGE, PERCENTAGE,
SIGNAL_STRENGTH_DECIBELS_MILLIWATT, SIGNAL_STRENGTH_DECIBELS_MILLIWATT,
VOLT,
) )
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.dispatcher import dispatcher_send from homeassistant.helpers.dispatcher import dispatcher_send
@ -276,7 +276,7 @@ class WirelessTagBaseSensor(Entity):
"""Return the state attributes.""" """Return the state attributes."""
return { return {
ATTR_BATTERY_LEVEL: int(self._tag.battery_remaining * 100), ATTR_BATTERY_LEVEL: int(self._tag.battery_remaining * 100),
ATTR_VOLTAGE: f"{self._tag.battery_volts:.2f}{VOLT}", ATTR_VOLTAGE: f"{self._tag.battery_volts:.2f}{ELECTRIC_POTENTIAL_VOLT}",
ATTR_TAG_SIGNAL_STRENGTH: f"{self._tag.signal_strength}{SIGNAL_STRENGTH_DECIBELS_MILLIWATT}", ATTR_TAG_SIGNAL_STRENGTH: f"{self._tag.signal_strength}{SIGNAL_STRENGTH_DECIBELS_MILLIWATT}",
ATTR_TAG_OUT_OF_RANGE: not self._tag.is_in_range, ATTR_TAG_OUT_OF_RANGE: not self._tag.is_in_range,
ATTR_TAG_POWER_CONSUMPTION: f"{self._tag.power_consumption:.2f}{PERCENTAGE}", ATTR_TAG_POWER_CONSUMPTION: f"{self._tag.power_consumption:.2f}{PERCENTAGE}",

View file

@ -401,19 +401,19 @@ ATTR_TEMPERATURE: Final = "temperature"
# Power units # Power units
POWER_WATT: Final = "W" POWER_WATT: Final = "W"
POWER_KILO_WATT: Final = "kW" POWER_KILO_WATT: Final = "kW"
POWER_VOLT_AMPERE: Final = "VA"
# Voltage units
VOLT: Final = "V"
# Energy units # Energy units
ENERGY_WATT_HOUR: Final = "Wh" ENERGY_WATT_HOUR: Final = "Wh"
ENERGY_KILO_WATT_HOUR: Final = "kWh" ENERGY_KILO_WATT_HOUR: Final = "kWh"
# Electrical units # Electric_current units
ELECTRIC_CURRENT_MILLIAMPERE: Final = "mA" ELECTRIC_CURRENT_MILLIAMPERE: Final = "mA"
ELECTRICAL_CURRENT_AMPERE: Final = "A" ELECTRIC_CURRENT_AMPERE: Final = "A"
ELECTRICAL_VOLT_AMPERE: Final = "VA"
# Electric_potential units
ELECTRIC_POTENTIAL_MILLIVOLT: Final = "mV" ELECTRIC_POTENTIAL_MILLIVOLT: Final = "mV"
ELECTRIC_POTENTIAL_VOLT: Final = "V"
# Degree units # Degree units
DEGREE: Final = "°" DEGREE: Final = "°"

View file

@ -14,14 +14,14 @@ from homeassistant.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_VOLTAGE, DEVICE_CLASS_VOLTAGE,
ELECTRICAL_CURRENT_AMPERE, ELECTRIC_CURRENT_AMPERE,
ELECTRIC_POTENTIAL_VOLT,
LIGHT_LUX, LIGHT_LUX,
PERCENTAGE, PERCENTAGE,
PRESSURE_MBAR, PRESSURE_MBAR,
STATE_OFF, STATE_OFF,
STATE_ON, STATE_ON,
TEMP_CELSIUS, TEMP_CELSIUS,
VOLT,
) )
MOCK_OWPROXY_DEVICES = { MOCK_OWPROXY_DEVICES = {
@ -347,7 +347,7 @@ MOCK_OWPROXY_DEVICES = {
"unique_id": "/26.111111111111/VAD", "unique_id": "/26.111111111111/VAD",
"injected_value": b" 2.97", "injected_value": b" 2.97",
"result": "3.0", "result": "3.0",
"unit": VOLT, "unit": ELECTRIC_POTENTIAL_VOLT,
"class": DEVICE_CLASS_VOLTAGE, "class": DEVICE_CLASS_VOLTAGE,
"disabled": True, "disabled": True,
}, },
@ -356,7 +356,7 @@ MOCK_OWPROXY_DEVICES = {
"unique_id": "/26.111111111111/VDD", "unique_id": "/26.111111111111/VDD",
"injected_value": b" 4.74", "injected_value": b" 4.74",
"result": "4.7", "result": "4.7",
"unit": VOLT, "unit": ELECTRIC_POTENTIAL_VOLT,
"class": DEVICE_CLASS_VOLTAGE, "class": DEVICE_CLASS_VOLTAGE,
"disabled": True, "disabled": True,
}, },
@ -365,7 +365,7 @@ MOCK_OWPROXY_DEVICES = {
"unique_id": "/26.111111111111/IAD", "unique_id": "/26.111111111111/IAD",
"injected_value": b" 1", "injected_value": b" 1",
"result": "1.0", "result": "1.0",
"unit": ELECTRICAL_CURRENT_AMPERE, "unit": ELECTRIC_CURRENT_AMPERE,
"class": DEVICE_CLASS_CURRENT, "class": DEVICE_CLASS_CURRENT,
"disabled": True, "disabled": True,
}, },