Add and use volume cubic constants (#40106)

This commit is contained in:
springstan 2020-09-15 19:59:26 +02:00 committed by GitHub
parent db582bdc1b
commit 5a12056e59
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 24 additions and 17 deletions

View File

@ -38,10 +38,6 @@ ATTR_POLLUTANT_SYMBOL = "pollutant_symbol"
ATTR_POLLUTANT_UNIT = "pollutant_unit"
ATTR_REGION = "region"
MASS_PARTS_PER_MILLION = "ppm"
MASS_PARTS_PER_BILLION = "ppb"
VOLUME_MICROGRAMS_PER_CUBIC_METER = "µg/m3"
SENSOR_KIND_LEVEL = "air_pollution_level"
SENSOR_KIND_AQI = "air_quality_index"
SENSOR_KIND_POLLUTANT = "main_pollutant"

View File

@ -34,6 +34,7 @@ from homeassistant.const import (
TEMP_CELSIUS,
TIME_DAYS,
TIME_HOURS,
VOLUME_CUBIC_METERS,
)
import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.dispatcher import async_dispatcher_connect
@ -159,14 +160,14 @@ SENSOR_TYPES = {
ATTR_AIR_FLOW_SUPPLY: {
ATTR_DEVICE_CLASS: None,
ATTR_LABEL: "Supply airflow",
ATTR_UNIT: f"/{TIME_HOURS}",
ATTR_UNIT: f"{VOLUME_CUBIC_METERS}/{TIME_HOURS}",
ATTR_ICON: "mdi:fan",
ATTR_ID: SENSOR_FAN_SUPPLY_FLOW,
},
ATTR_AIR_FLOW_EXHAUST: {
ATTR_DEVICE_CLASS: None,
ATTR_LABEL: "Exhaust airflow",
ATTR_UNIT: f"/{TIME_HOURS}",
ATTR_UNIT: f"{VOLUME_CUBIC_METERS}/{TIME_HOURS}",
ATTR_ICON: "mdi:fan",
ATTR_ID: SENSOR_FAN_EXHAUST_FLOW,
},

View File

@ -86,6 +86,8 @@ from homeassistant.const import (
TIME_YEARS,
UV_INDEX,
VOLT,
VOLUME_CUBIC_FEET,
VOLUME_CUBIC_METERS,
VOLUME_GALLONS,
VOLUME_LITERS,
)
@ -316,9 +318,9 @@ UOM_FRIENDLY_NAME = {
"3": f"btu/{TIME_HOURS}",
"4": TEMP_CELSIUS,
"5": LENGTH_CENTIMETERS,
"6": f"{LENGTH_FEET}³",
"7": f"{LENGTH_FEET}³/{TIME_MINUTES}",
"8": "",
"6": VOLUME_CUBIC_FEET,
"7": f"{VOLUME_CUBIC_FEET}/{TIME_MINUTES}",
"8": f"{VOLUME_CUBIC_METERS}",
"9": TIME_DAYS,
"10": TIME_DAYS,
"12": "dB",
@ -347,7 +349,7 @@ UOM_FRIENDLY_NAME = {
"36": "lx",
"37": "mercalli",
"38": LENGTH_METERS,
"39": f"{LENGTH_METERS}³/{TIME_HOURS}",
"39": f"{VOLUME_CUBIC_METERS}/{TIME_HOURS}",
"40": SPEED_METERS_PER_SECOND,
"41": "mA",
"42": TIME_MILLISECONDS,
@ -385,7 +387,7 @@ UOM_FRIENDLY_NAME = {
"83": LENGTH_KILOMETERS,
"85": "",
"86": "kΩ",
"87": f"{LENGTH_METERS}³/{LENGTH_METERS}³",
"87": f"{VOLUME_CUBIC_METERS}/{VOLUME_CUBIC_METERS}",
"88": "Water activity",
"89": "RPM",
"90": FREQUENCY_HERTZ,

View File

@ -15,6 +15,7 @@ from homeassistant.const import (
TEMP_CELSIUS,
TEMP_FAHRENHEIT,
VOLT,
VOLUME_CUBIC_METERS,
)
SENSORS = {
@ -36,7 +37,7 @@ SENSORS = {
"V_KWH": [ENERGY_KILO_WATT_HOUR, None],
"V_LIGHT_LEVEL": [PERCENTAGE, "mdi:white-balance-sunny"],
"V_FLOW": [LENGTH_METERS, "mdi:gauge"],
"V_VOLUME": ["", None],
"V_VOLUME": [f"{VOLUME_CUBIC_METERS}", None],
"V_LEVEL": {
"S_SOUND": ["dB", "mdi:volume-high"],
"S_VIBRATION": [FREQUENCY_HERTZ, None],

View File

@ -1,7 +1,7 @@
"""This platform provides support for sensor data from RainMachine."""
import logging
from homeassistant.const import TEMP_CELSIUS
from homeassistant.const import TEMP_CELSIUS, VOLUME_CUBIC_METERS
from homeassistant.core import callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect
@ -26,7 +26,7 @@ SENSORS = {
TYPE_FLOW_SENSOR_CLICK_M3: (
"Flow Sensor Clicks",
"mdi:water-pump",
"clicks/m^3",
f"clicks/{VOLUME_CUBIC_METERS}",
None,
False,
DATA_PROVISION_SETTINGS,

View File

@ -3,7 +3,13 @@ import logging
import zigpy.zcl.clusters.smartenergy as smartenergy
from homeassistant.const import LENGTH_FEET, POWER_WATT, TIME_HOURS, TIME_SECONDS
from homeassistant.const import (
POWER_WATT,
TIME_HOURS,
TIME_SECONDS,
VOLUME_CUBIC_FEET,
VOLUME_CUBIC_METERS,
)
from homeassistant.core import callback
from .. import registries, typing as zha_typing
@ -61,8 +67,8 @@ class Metering(ZigbeeChannel):
unit_of_measure_map = {
0x00: POWER_WATT,
0x01: f"/{TIME_HOURS}",
0x02: f"{LENGTH_FEET}³/{TIME_HOURS}",
0x01: f"{VOLUME_CUBIC_METERS}/{TIME_HOURS}",
0x02: f"{VOLUME_CUBIC_FEET}/{TIME_HOURS}",
0x03: f"ccf/{TIME_HOURS}",
0x04: f"US gal/{TIME_HOURS}",
0x05: f"IMP gal/{TIME_HOURS}",

View File

@ -422,6 +422,7 @@ PRESSURE_PSI: str = "psi"
VOLUME_LITERS: str = "L"
VOLUME_MILLILITERS: str = "mL"
VOLUME_CUBIC_METERS = f"{LENGTH_METERS}³"
VOLUME_CUBIC_FEET = f"{LENGTH_FEET}³"
VOLUME_GALLONS: str = "gal"
VOLUME_FLUID_OUNCE: str = "fl. oz."