Manage equivalent sensor units for recorder

This commit is contained in:
jbouwh 2025-05-21 07:42:40 +00:00
parent 35926344ea
commit 2f1b4bbecd
2 changed files with 15 additions and 1 deletions

View File

@ -28,9 +28,13 @@ from homeassistant.components.recorder.models import (
)
from homeassistant.const import (
ATTR_UNIT_OF_MEASUREMENT,
CONCENTRATION_MICROGRAMS_PER_CUBIC_FOOT,
REVOLUTIONS_PER_MINUTE,
UnitOfElectricPotential,
UnitOfIrradiance,
UnitOfMass,
UnitOfSoundPressure,
UnitOfTime,
UnitOfVolume,
)
from homeassistant.core import HomeAssistant, State, callback, split_entity_id
@ -47,8 +51,10 @@ from homeassistant.util.hass_dict import HassKey
from .const import (
ATTR_LAST_RESET,
ATTR_STATE_CLASS,
CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
DOMAIN,
SensorStateClass,
UnitOfConductivity,
UnitOfVolumeFlowRate,
)
@ -79,6 +85,14 @@ EQUIVALENT_UNITS = {
"ft3": UnitOfVolume.CUBIC_FEET,
"m3": UnitOfVolume.CUBIC_METERS,
"ft³/m": UnitOfVolumeFlowRate.CUBIC_FEET_PER_MINUTE,
"\u00b5Sv/h": "μSv/h", # aranet: radiation rate
"\u00b5S/cm": UnitOfConductivity.MICROSIEMENS_PER_CM,
"\u00b5V": UnitOfElectricPotential.MICROVOLT,
"\u00b5g/ft³": CONCENTRATION_MICROGRAMS_PER_CUBIC_FOOT,
"\u00b5g/m³": CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
"\u00b5mol/s⋅m²": "μmol/s⋅m²", # fyta: light
"\u0065g": UnitOfMass.MICROGRAMS,
"\u00b5s": UnitOfTime.MICROSECONDS,
}

View File

@ -839,7 +839,7 @@ class UnitOfConductivity(
# Deprecated aliases
SIEMENS = "S/cm"
"""Deprecated: Please use UnitOfConductivity.SIEMENS_PER_CM"""
MICROSIEMENS = "μS/cm" # 'b'\xce\xbcS/cm'
MICROSIEMENS = "μS/cm" # "μ" == "\u03bc"
"""Deprecated: Please use UnitOfConductivity.MICROSIEMENS_PER_CM"""
MILLISIEMENS = "mS/cm"
"""Deprecated: Please use UnitOfConductivity.MILLISIEMENS_PER_CM"""