Add entity category to Xiaomi Miio (#57719)

This commit is contained in:
Maciej Bieniek 2021-10-15 02:31:25 +02:00 committed by GitHub
parent e34aed743c
commit b0ff28ceb4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 51 additions and 1 deletions

View file

@ -11,6 +11,7 @@ from homeassistant.components.binary_sensor import (
BinarySensorEntity, BinarySensorEntity,
BinarySensorEntityDescription, BinarySensorEntityDescription,
) )
from homeassistant.const import ENTITY_CATEGORY_DIAGNOSTIC
from . import VacuumCoordinatorDataAttributes from . import VacuumCoordinatorDataAttributes
from .const import ( from .const import (
@ -50,6 +51,7 @@ BINARY_SENSOR_TYPES = (
key=ATTR_NO_WATER, key=ATTR_NO_WATER,
name="Water Tank Empty", name="Water Tank Empty",
icon="mdi:water-off-outline", icon="mdi:water-off-outline",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
XiaomiMiioBinarySensorDescription( XiaomiMiioBinarySensorDescription(
key=ATTR_WATER_TANK_DETACHED, key=ATTR_WATER_TANK_DETACHED,
@ -57,11 +59,13 @@ BINARY_SENSOR_TYPES = (
icon="mdi:car-coolant-level", icon="mdi:car-coolant-level",
device_class=DEVICE_CLASS_CONNECTIVITY, device_class=DEVICE_CLASS_CONNECTIVITY,
value=lambda value: not value, value=lambda value: not value,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
XiaomiMiioBinarySensorDescription( XiaomiMiioBinarySensorDescription(
key=ATTR_POWERSUPPLY_ATTACHED, key=ATTR_POWERSUPPLY_ATTACHED,
name="Power Supply", name="Power Supply",
device_class=DEVICE_CLASS_PLUG, device_class=DEVICE_CLASS_PLUG,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
) )
@ -75,6 +79,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.status, parent_key=VacuumCoordinatorDataAttributes.status,
entity_registry_enabled_default=True, entity_registry_enabled_default=True,
device_class=DEVICE_CLASS_CONNECTIVITY, device_class=DEVICE_CLASS_CONNECTIVITY,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_WATER_BOX_ATTACHED: XiaomiMiioBinarySensorDescription( ATTR_WATER_BOX_ATTACHED: XiaomiMiioBinarySensorDescription(
key=ATTR_WATER_BOX_ATTACHED, key=ATTR_WATER_BOX_ATTACHED,
@ -83,6 +88,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.status, parent_key=VacuumCoordinatorDataAttributes.status,
entity_registry_enabled_default=True, entity_registry_enabled_default=True,
device_class=DEVICE_CLASS_CONNECTIVITY, device_class=DEVICE_CLASS_CONNECTIVITY,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_WATER_SHORTAGE: XiaomiMiioBinarySensorDescription( ATTR_WATER_SHORTAGE: XiaomiMiioBinarySensorDescription(
key=ATTR_WATER_SHORTAGE, key=ATTR_WATER_SHORTAGE,
@ -91,6 +97,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.status, parent_key=VacuumCoordinatorDataAttributes.status,
entity_registry_enabled_default=True, entity_registry_enabled_default=True,
device_class=DEVICE_CLASS_PROBLEM, device_class=DEVICE_CLASS_PROBLEM,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
} }

View file

@ -5,7 +5,7 @@ from dataclasses import dataclass
from enum import Enum from enum import Enum
from homeassistant.components.number import NumberEntity, NumberEntityDescription from homeassistant.components.number import NumberEntity, NumberEntityDescription
from homeassistant.const import DEGREE, TIME_MINUTES from homeassistant.const import DEGREE, ENTITY_CATEGORY_CONFIG, TIME_MINUTES
from homeassistant.core import callback from homeassistant.core import callback
from .const import ( from .const import (
@ -108,6 +108,7 @@ NUMBER_TYPES = {
step=10, step=10,
available_with_device_off=False, available_with_device_off=False,
method="async_set_motor_speed", method="async_set_motor_speed",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
FEATURE_SET_FAVORITE_LEVEL: XiaomiMiioNumberDescription( FEATURE_SET_FAVORITE_LEVEL: XiaomiMiioNumberDescription(
key=ATTR_FAVORITE_LEVEL, key=ATTR_FAVORITE_LEVEL,
@ -117,6 +118,7 @@ NUMBER_TYPES = {
max_value=17, max_value=17,
step=1, step=1,
method="async_set_favorite_level", method="async_set_favorite_level",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
FEATURE_SET_FAN_LEVEL: XiaomiMiioNumberDescription( FEATURE_SET_FAN_LEVEL: XiaomiMiioNumberDescription(
key=ATTR_FAN_LEVEL, key=ATTR_FAN_LEVEL,
@ -126,6 +128,7 @@ NUMBER_TYPES = {
max_value=3, max_value=3,
step=1, step=1,
method="async_set_fan_level", method="async_set_fan_level",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
FEATURE_SET_VOLUME: XiaomiMiioNumberDescription( FEATURE_SET_VOLUME: XiaomiMiioNumberDescription(
key=ATTR_VOLUME, key=ATTR_VOLUME,
@ -135,6 +138,7 @@ NUMBER_TYPES = {
max_value=100, max_value=100,
step=1, step=1,
method="async_set_volume", method="async_set_volume",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
FEATURE_SET_OSCILLATION_ANGLE: XiaomiMiioNumberDescription( FEATURE_SET_OSCILLATION_ANGLE: XiaomiMiioNumberDescription(
key=ATTR_OSCILLATION_ANGLE, key=ATTR_OSCILLATION_ANGLE,
@ -145,6 +149,7 @@ NUMBER_TYPES = {
max_value=120, max_value=120,
step=1, step=1,
method="async_set_oscillation_angle", method="async_set_oscillation_angle",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
FEATURE_SET_DELAY_OFF_COUNTDOWN: XiaomiMiioNumberDescription( FEATURE_SET_DELAY_OFF_COUNTDOWN: XiaomiMiioNumberDescription(
key=ATTR_DELAY_OFF_COUNTDOWN, key=ATTR_DELAY_OFF_COUNTDOWN,
@ -155,6 +160,7 @@ NUMBER_TYPES = {
max_value=480, max_value=480,
step=1, step=1,
method="async_set_delay_off_countdown", method="async_set_delay_off_countdown",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
FEATURE_SET_LED_BRIGHTNESS_LEVEL: XiaomiMiioNumberDescription( FEATURE_SET_LED_BRIGHTNESS_LEVEL: XiaomiMiioNumberDescription(
key=ATTR_LED_BRIGHTNESS_LEVEL, key=ATTR_LED_BRIGHTNESS_LEVEL,
@ -164,6 +170,7 @@ NUMBER_TYPES = {
max_value=8, max_value=8,
step=1, step=1,
method="async_set_led_brightness_level", method="async_set_led_brightness_level",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
FEATURE_SET_FAVORITE_RPM: XiaomiMiioNumberDescription( FEATURE_SET_FAVORITE_RPM: XiaomiMiioNumberDescription(
key=ATTR_FAVORITE_RPM, key=ATTR_FAVORITE_RPM,
@ -174,6 +181,7 @@ NUMBER_TYPES = {
max_value=2300, max_value=2300,
step=10, step=10,
method="async_set_favorite_rpm", method="async_set_favorite_rpm",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
} }

View file

@ -12,6 +12,7 @@ from miio.airpurifier_miot import LedBrightness as AirpurifierMiotLedBrightness
from miio.fan import LedBrightness as FanLedBrightness from miio.fan import LedBrightness as FanLedBrightness
from homeassistant.components.select import SelectEntity, SelectEntityDescription from homeassistant.components.select import SelectEntity, SelectEntityDescription
from homeassistant.const import ENTITY_CATEGORY_CONFIG
from homeassistant.core import callback from homeassistant.core import callback
from .const import ( from .const import (
@ -63,6 +64,7 @@ SELECTOR_TYPES = {
icon="mdi:brightness-6", icon="mdi:brightness-6",
device_class="xiaomi_miio__led_brightness", device_class="xiaomi_miio__led_brightness",
options=("bright", "dim", "off"), options=("bright", "dim", "off"),
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
} }

View file

@ -38,6 +38,7 @@ from homeassistant.const import (
DEVICE_CLASS_PRESSURE, DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE, DEVICE_CLASS_TEMPERATURE,
DEVICE_CLASS_TIMESTAMP, DEVICE_CLASS_TIMESTAMP,
ENTITY_CATEGORY_DIAGNOSTIC,
LIGHT_LUX, LIGHT_LUX,
PERCENTAGE, PERCENTAGE,
POWER_WATT, POWER_WATT,
@ -172,6 +173,7 @@ SENSOR_TYPES = {
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
icon="mdi:water-check", icon="mdi:water-check",
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_ACTUAL_SPEED: XiaomiMiioSensorDescription( ATTR_ACTUAL_SPEED: XiaomiMiioSensorDescription(
key=ATTR_ACTUAL_SPEED, key=ATTR_ACTUAL_SPEED,
@ -179,6 +181,7 @@ SENSOR_TYPES = {
native_unit_of_measurement="rpm", native_unit_of_measurement="rpm",
icon="mdi:fast-forward", icon="mdi:fast-forward",
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_MOTOR_SPEED: XiaomiMiioSensorDescription( ATTR_MOTOR_SPEED: XiaomiMiioSensorDescription(
key=ATTR_MOTOR_SPEED, key=ATTR_MOTOR_SPEED,
@ -186,6 +189,7 @@ SENSOR_TYPES = {
native_unit_of_measurement="rpm", native_unit_of_measurement="rpm",
icon="mdi:fast-forward", icon="mdi:fast-forward",
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_MOTOR2_SPEED: XiaomiMiioSensorDescription( ATTR_MOTOR2_SPEED: XiaomiMiioSensorDescription(
key=ATTR_MOTOR2_SPEED, key=ATTR_MOTOR2_SPEED,
@ -193,6 +197,7 @@ SENSOR_TYPES = {
native_unit_of_measurement="rpm", native_unit_of_measurement="rpm",
icon="mdi:fast-forward", icon="mdi:fast-forward",
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_USE_TIME: XiaomiMiioSensorDescription( ATTR_USE_TIME: XiaomiMiioSensorDescription(
key=ATTR_USE_TIME, key=ATTR_USE_TIME,
@ -201,6 +206,7 @@ SENSOR_TYPES = {
icon="mdi:progress-clock", icon="mdi:progress-clock",
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=STATE_CLASS_TOTAL_INCREASING,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_ILLUMINANCE: XiaomiMiioSensorDescription( ATTR_ILLUMINANCE: XiaomiMiioSensorDescription(
key=ATTR_ILLUMINANCE, key=ATTR_ILLUMINANCE,
@ -236,6 +242,7 @@ SENSOR_TYPES = {
icon="mdi:air-filter", icon="mdi:air-filter",
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
attributes=("filter_type",), attributes=("filter_type",),
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_FILTER_USE: XiaomiMiioSensorDescription( ATTR_FILTER_USE: XiaomiMiioSensorDescription(
key=ATTR_FILTER_HOURS_USED, key=ATTR_FILTER_HOURS_USED,
@ -243,6 +250,7 @@ SENSOR_TYPES = {
native_unit_of_measurement=TIME_HOURS, native_unit_of_measurement=TIME_HOURS,
icon="mdi:clock-outline", icon="mdi:clock-outline",
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_CARBON_DIOXIDE: XiaomiMiioSensorDescription( ATTR_CARBON_DIOXIDE: XiaomiMiioSensorDescription(
key=ATTR_CARBON_DIOXIDE, key=ATTR_CARBON_DIOXIDE,
@ -258,6 +266,7 @@ SENSOR_TYPES = {
device_class=DEVICE_CLASS_GAS, device_class=DEVICE_CLASS_GAS,
state_class=STATE_CLASS_TOTAL_INCREASING, state_class=STATE_CLASS_TOTAL_INCREASING,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
ATTR_BATTERY: XiaomiMiioSensorDescription( ATTR_BATTERY: XiaomiMiioSensorDescription(
key=ATTR_BATTERY, key=ATTR_BATTERY,
@ -265,6 +274,7 @@ SENSOR_TYPES = {
native_unit_of_measurement=PERCENTAGE, native_unit_of_measurement=PERCENTAGE,
device_class=DEVICE_CLASS_BATTERY, device_class=DEVICE_CLASS_BATTERY,
state_class=STATE_CLASS_MEASUREMENT, state_class=STATE_CLASS_MEASUREMENT,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
} }
@ -391,6 +401,7 @@ VACUUM_SENSORS = {
device_class=DEVICE_CLASS_TIMESTAMP, device_class=DEVICE_CLASS_TIMESTAMP,
parent_key=VacuumCoordinatorDataAttributes.dnd_status, parent_key=VacuumCoordinatorDataAttributes.dnd_status,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"dnd_{ATTR_DND_END}": XiaomiMiioSensorDescription( f"dnd_{ATTR_DND_END}": XiaomiMiioSensorDescription(
key=ATTR_DND_END, key=ATTR_DND_END,
@ -399,6 +410,7 @@ VACUUM_SENSORS = {
device_class=DEVICE_CLASS_TIMESTAMP, device_class=DEVICE_CLASS_TIMESTAMP,
parent_key=VacuumCoordinatorDataAttributes.dnd_status, parent_key=VacuumCoordinatorDataAttributes.dnd_status,
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"last_clean_{ATTR_LAST_CLEAN_START}": XiaomiMiioSensorDescription( f"last_clean_{ATTR_LAST_CLEAN_START}": XiaomiMiioSensorDescription(
key=ATTR_LAST_CLEAN_START, key=ATTR_LAST_CLEAN_START,
@ -406,6 +418,7 @@ VACUUM_SENSORS = {
name="Last Clean Start", name="Last Clean Start",
device_class=DEVICE_CLASS_TIMESTAMP, device_class=DEVICE_CLASS_TIMESTAMP,
parent_key=VacuumCoordinatorDataAttributes.last_clean_details, parent_key=VacuumCoordinatorDataAttributes.last_clean_details,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"last_clean_{ATTR_LAST_CLEAN_END}": XiaomiMiioSensorDescription( f"last_clean_{ATTR_LAST_CLEAN_END}": XiaomiMiioSensorDescription(
key=ATTR_LAST_CLEAN_END, key=ATTR_LAST_CLEAN_END,
@ -413,6 +426,7 @@ VACUUM_SENSORS = {
device_class=DEVICE_CLASS_TIMESTAMP, device_class=DEVICE_CLASS_TIMESTAMP,
parent_key=VacuumCoordinatorDataAttributes.last_clean_details, parent_key=VacuumCoordinatorDataAttributes.last_clean_details,
name="Last Clean End", name="Last Clean End",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"last_clean_{ATTR_LAST_CLEAN_TIME}": XiaomiMiioSensorDescription( f"last_clean_{ATTR_LAST_CLEAN_TIME}": XiaomiMiioSensorDescription(
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
@ -420,6 +434,7 @@ VACUUM_SENSORS = {
key=ATTR_LAST_CLEAN_TIME, key=ATTR_LAST_CLEAN_TIME,
parent_key=VacuumCoordinatorDataAttributes.last_clean_details, parent_key=VacuumCoordinatorDataAttributes.last_clean_details,
name="Last Clean Duration", name="Last Clean Duration",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"last_clean_{ATTR_LAST_CLEAN_AREA}": XiaomiMiioSensorDescription( f"last_clean_{ATTR_LAST_CLEAN_AREA}": XiaomiMiioSensorDescription(
native_unit_of_measurement=AREA_SQUARE_METERS, native_unit_of_measurement=AREA_SQUARE_METERS,
@ -427,6 +442,7 @@ VACUUM_SENSORS = {
key=ATTR_LAST_CLEAN_AREA, key=ATTR_LAST_CLEAN_AREA,
parent_key=VacuumCoordinatorDataAttributes.last_clean_details, parent_key=VacuumCoordinatorDataAttributes.last_clean_details,
name="Last Clean Area", name="Last Clean Area",
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"clean_history_{ATTR_CLEAN_HISTORY_TOTAL_DURATION}": XiaomiMiioSensorDescription( f"clean_history_{ATTR_CLEAN_HISTORY_TOTAL_DURATION}": XiaomiMiioSensorDescription(
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
@ -435,6 +451,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.clean_history_status, parent_key=VacuumCoordinatorDataAttributes.clean_history_status,
name="Total duration", name="Total duration",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"clean_history_{ATTR_CLEAN_HISTORY_TOTAL_AREA}": XiaomiMiioSensorDescription( f"clean_history_{ATTR_CLEAN_HISTORY_TOTAL_AREA}": XiaomiMiioSensorDescription(
native_unit_of_measurement=AREA_SQUARE_METERS, native_unit_of_measurement=AREA_SQUARE_METERS,
@ -443,6 +460,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.clean_history_status, parent_key=VacuumCoordinatorDataAttributes.clean_history_status,
name="Total Clean Area", name="Total Clean Area",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"clean_history_{ATTR_CLEAN_HISTORY_COUNT}": XiaomiMiioSensorDescription( f"clean_history_{ATTR_CLEAN_HISTORY_COUNT}": XiaomiMiioSensorDescription(
native_unit_of_measurement="", native_unit_of_measurement="",
@ -452,6 +470,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.clean_history_status, parent_key=VacuumCoordinatorDataAttributes.clean_history_status,
name="Total Clean Count", name="Total Clean Count",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"clean_history_{ATTR_CLEAN_HISTORY_DUST_COLLECTION_COUNT}": XiaomiMiioSensorDescription( f"clean_history_{ATTR_CLEAN_HISTORY_DUST_COLLECTION_COUNT}": XiaomiMiioSensorDescription(
native_unit_of_measurement="", native_unit_of_measurement="",
@ -461,6 +480,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.clean_history_status, parent_key=VacuumCoordinatorDataAttributes.clean_history_status,
name="Total Dust Collection Count", name="Total Dust Collection Count",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"consumable_{ATTR_CONSUMABLE_STATUS_MAIN_BRUSH_LEFT}": XiaomiMiioSensorDescription( f"consumable_{ATTR_CONSUMABLE_STATUS_MAIN_BRUSH_LEFT}": XiaomiMiioSensorDescription(
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
@ -469,6 +489,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.consumable_status, parent_key=VacuumCoordinatorDataAttributes.consumable_status,
name="Main Brush Left", name="Main Brush Left",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"consumable_{ATTR_CONSUMABLE_STATUS_SIDE_BRUSH_LEFT}": XiaomiMiioSensorDescription( f"consumable_{ATTR_CONSUMABLE_STATUS_SIDE_BRUSH_LEFT}": XiaomiMiioSensorDescription(
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
@ -477,6 +498,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.consumable_status, parent_key=VacuumCoordinatorDataAttributes.consumable_status,
name="Side Brush Left", name="Side Brush Left",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"consumable_{ATTR_CONSUMABLE_STATUS_FILTER_LEFT}": XiaomiMiioSensorDescription( f"consumable_{ATTR_CONSUMABLE_STATUS_FILTER_LEFT}": XiaomiMiioSensorDescription(
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
@ -485,6 +507,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.consumable_status, parent_key=VacuumCoordinatorDataAttributes.consumable_status,
name="Filter Left", name="Filter Left",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
f"consumable_{ATTR_CONSUMABLE_STATUS_SENSOR_DIRTY_LEFT}": XiaomiMiioSensorDescription( f"consumable_{ATTR_CONSUMABLE_STATUS_SENSOR_DIRTY_LEFT}": XiaomiMiioSensorDescription(
native_unit_of_measurement=TIME_SECONDS, native_unit_of_measurement=TIME_SECONDS,
@ -493,6 +516,7 @@ VACUUM_SENSORS = {
parent_key=VacuumCoordinatorDataAttributes.consumable_status, parent_key=VacuumCoordinatorDataAttributes.consumable_status,
name="Sensor Dirty Left", name="Sensor Dirty Left",
entity_registry_enabled_default=False, entity_registry_enabled_default=False,
entity_category=ENTITY_CATEGORY_DIAGNOSTIC,
), ),
} }

View file

@ -22,6 +22,7 @@ from homeassistant.const import (
ATTR_TEMPERATURE, ATTR_TEMPERATURE,
CONF_HOST, CONF_HOST,
CONF_TOKEN, CONF_TOKEN,
ENTITY_CATEGORY_CONFIG,
) )
from homeassistant.core import callback from homeassistant.core import callback
import homeassistant.helpers.config_validation as cv import homeassistant.helpers.config_validation as cv
@ -206,6 +207,7 @@ SWITCH_TYPES = (
icon="mdi:volume-high", icon="mdi:volume-high",
method_on="async_set_buzzer_on", method_on="async_set_buzzer_on",
method_off="async_set_buzzer_off", method_off="async_set_buzzer_off",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
XiaomiMiioSwitchDescription( XiaomiMiioSwitchDescription(
key=ATTR_CHILD_LOCK, key=ATTR_CHILD_LOCK,
@ -214,6 +216,7 @@ SWITCH_TYPES = (
icon="mdi:lock", icon="mdi:lock",
method_on="async_set_child_lock_on", method_on="async_set_child_lock_on",
method_off="async_set_child_lock_off", method_off="async_set_child_lock_off",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
XiaomiMiioSwitchDescription( XiaomiMiioSwitchDescription(
key=ATTR_DRY, key=ATTR_DRY,
@ -222,6 +225,7 @@ SWITCH_TYPES = (
icon="mdi:hair-dryer", icon="mdi:hair-dryer",
method_on="async_set_dry_on", method_on="async_set_dry_on",
method_off="async_set_dry_off", method_off="async_set_dry_off",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
XiaomiMiioSwitchDescription( XiaomiMiioSwitchDescription(
key=ATTR_CLEAN, key=ATTR_CLEAN,
@ -231,6 +235,7 @@ SWITCH_TYPES = (
method_on="async_set_clean_on", method_on="async_set_clean_on",
method_off="async_set_clean_off", method_off="async_set_clean_off",
available_with_device_off=False, available_with_device_off=False,
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
XiaomiMiioSwitchDescription( XiaomiMiioSwitchDescription(
key=ATTR_LED, key=ATTR_LED,
@ -239,6 +244,7 @@ SWITCH_TYPES = (
icon="mdi:led-outline", icon="mdi:led-outline",
method_on="async_set_led_on", method_on="async_set_led_on",
method_off="async_set_led_off", method_off="async_set_led_off",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
XiaomiMiioSwitchDescription( XiaomiMiioSwitchDescription(
key=ATTR_LEARN_MODE, key=ATTR_LEARN_MODE,
@ -247,6 +253,7 @@ SWITCH_TYPES = (
icon="mdi:school-outline", icon="mdi:school-outline",
method_on="async_set_learn_mode_on", method_on="async_set_learn_mode_on",
method_off="async_set_learn_mode_off", method_off="async_set_learn_mode_off",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
XiaomiMiioSwitchDescription( XiaomiMiioSwitchDescription(
key=ATTR_AUTO_DETECT, key=ATTR_AUTO_DETECT,
@ -254,6 +261,7 @@ SWITCH_TYPES = (
name="Auto Detect", name="Auto Detect",
method_on="async_set_auto_detect_on", method_on="async_set_auto_detect_on",
method_off="async_set_auto_detect_off", method_off="async_set_auto_detect_off",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
XiaomiMiioSwitchDescription( XiaomiMiioSwitchDescription(
key=ATTR_IONIZER, key=ATTR_IONIZER,
@ -262,6 +270,7 @@ SWITCH_TYPES = (
icon="mdi:shimmer", icon="mdi:shimmer",
method_on="async_set_ionizer_on", method_on="async_set_ionizer_on",
method_off="async_set_ionizer_off", method_off="async_set_ionizer_off",
entity_category=ENTITY_CATEGORY_CONFIG,
), ),
) )