Add aditional sensors for dmaker.airfresh.a1/t2017 to xiaomi_miio (#66370)

This commit is contained in:
Igor Pakhomov 2022-02-21 18:56:34 +02:00 committed by GitHub
parent 5c5f9418ee
commit a4ba511276
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -34,6 +34,7 @@ from homeassistant.const import (
POWER_WATT,
PRESSURE_HPA,
TEMP_CELSIUS,
TIME_DAYS,
TIME_HOURS,
TIME_SECONDS,
VOLUME_CUBIC_METERS,
@ -93,9 +94,15 @@ ATTR_AQI = "aqi"
ATTR_BATTERY = "battery"
ATTR_CARBON_DIOXIDE = "co2"
ATTR_CHARGING = "charging"
ATTR_CONTROL_SPEED = "control_speed"
ATTR_DISPLAY_CLOCK = "display_clock"
ATTR_FAVORITE_SPEED = "favorite_speed"
ATTR_FILTER_LIFE_REMAINING = "filter_life_remaining"
ATTR_FILTER_HOURS_USED = "filter_hours_used"
ATTR_DUST_FILTER_LIFE_REMAINING = "dust_filter_life_remaining"
ATTR_DUST_FILTER_LIFE_REMAINING_DAYS = "dust_filter_life_remaining_days"
ATTR_UPPER_FILTER_LIFE_REMAINING = "upper_filter_life_remaining"
ATTR_UPPER_FILTER_LIFE_REMAINING_DAYS = "upper_filter_life_remaining_days"
ATTR_FILTER_USE = "filter_use"
ATTR_HUMIDITY = "humidity"
ATTR_ILLUMINANCE = "illuminance"
@ -107,6 +114,7 @@ ATTR_NIGHT_MODE = "night_mode"
ATTR_NIGHT_TIME_BEGIN = "night_time_begin"
ATTR_NIGHT_TIME_END = "night_time_end"
ATTR_PM25 = "pm25"
ATTR_PM25_2 = "pm25_2"
ATTR_POWER = "power"
ATTR_PRESSURE = "pressure"
ATTR_PURIFY_VOLUME = "purify_volume"
@ -183,6 +191,22 @@ SENSOR_TYPES = {
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
ATTR_CONTROL_SPEED: XiaomiMiioSensorDescription(
key=ATTR_CONTROL_SPEED,
name="Control Speed",
native_unit_of_measurement="rpm",
icon="mdi:fast-forward",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
ATTR_FAVORITE_SPEED: XiaomiMiioSensorDescription(
key=ATTR_FAVORITE_SPEED,
name="Favorite Speed",
native_unit_of_measurement="rpm",
icon="mdi:fast-forward",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
ATTR_MOTOR_SPEED: XiaomiMiioSensorDescription(
key=ATTR_MOTOR_SPEED,
name="Motor Speed",
@ -235,6 +259,13 @@ SENSOR_TYPES = {
device_class=SensorDeviceClass.PM25,
state_class=SensorStateClass.MEASUREMENT,
),
ATTR_PM25_2: XiaomiMiioSensorDescription(
key=ATTR_PM25,
name="PM2.5",
native_unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
device_class=SensorDeviceClass.PM25,
state_class=SensorStateClass.MEASUREMENT,
),
ATTR_FILTER_LIFE_REMAINING: XiaomiMiioSensorDescription(
key=ATTR_FILTER_LIFE_REMAINING,
name="Filter Life Remaining",
@ -252,6 +283,40 @@ SENSOR_TYPES = {
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
ATTR_DUST_FILTER_LIFE_REMAINING: XiaomiMiioSensorDescription(
key=ATTR_DUST_FILTER_LIFE_REMAINING,
name="Dust filter life remaining",
native_unit_of_measurement=PERCENTAGE,
icon="mdi:air-filter",
state_class=SensorStateClass.MEASUREMENT,
attributes=("filter_type",),
entity_category=EntityCategory.DIAGNOSTIC,
),
ATTR_DUST_FILTER_LIFE_REMAINING_DAYS: XiaomiMiioSensorDescription(
key=ATTR_DUST_FILTER_LIFE_REMAINING_DAYS,
name="Dust filter life remaining days",
native_unit_of_measurement=TIME_DAYS,
icon="mdi:clock-outline",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
ATTR_UPPER_FILTER_LIFE_REMAINING: XiaomiMiioSensorDescription(
key=ATTR_UPPER_FILTER_LIFE_REMAINING,
name="Upper filter life remaining",
native_unit_of_measurement=PERCENTAGE,
icon="mdi:air-filter",
state_class=SensorStateClass.MEASUREMENT,
attributes=("filter_type",),
entity_category=EntityCategory.DIAGNOSTIC,
),
ATTR_UPPER_FILTER_LIFE_REMAINING_DAYS: XiaomiMiioSensorDescription(
key=ATTR_UPPER_FILTER_LIFE_REMAINING_DAYS,
name="Upper filter life remaining days",
native_unit_of_measurement=TIME_DAYS,
icon="mdi:clock-outline",
state_class=SensorStateClass.MEASUREMENT,
entity_category=EntityCategory.DIAGNOSTIC,
),
ATTR_CARBON_DIOXIDE: XiaomiMiioSensorDescription(
key=ATTR_CARBON_DIOXIDE,
name="Carbon Dioxide",
@ -379,11 +444,23 @@ AIRFRESH_SENSORS = (
)
AIRFRESH_SENSORS_A1 = (
ATTR_CARBON_DIOXIDE,
ATTR_DUST_FILTER_LIFE_REMAINING,
ATTR_DUST_FILTER_LIFE_REMAINING_DAYS,
ATTR_PM25_2,
ATTR_TEMPERATURE,
ATTR_CONTROL_SPEED,
ATTR_FAVORITE_SPEED,
)
AIRFRESH_SENSORS_T2017 = (
ATTR_CARBON_DIOXIDE,
ATTR_DUST_FILTER_LIFE_REMAINING,
ATTR_DUST_FILTER_LIFE_REMAINING_DAYS,
ATTR_UPPER_FILTER_LIFE_REMAINING,
ATTR_UPPER_FILTER_LIFE_REMAINING_DAYS,
ATTR_PM25_2,
ATTR_TEMPERATURE,
ATTR_CONTROL_SPEED,
ATTR_FAVORITE_SPEED,
)
FAN_V2_V3_SENSORS = (
ATTR_BATTERY,