Add icon translations to Homekit Controller (#111720)

* Add icon translations to Homekit Controller

* Add icon translations to Homekit Controller
This commit is contained in:
Joost Lekkerkerker 2024-02-28 16:31:09 +01:00 committed by GitHub
parent b6d56d38ba
commit 15cd9c011e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 134 additions and 124 deletions

View file

@ -70,7 +70,6 @@ async def async_setup_entry(
class HomeKitAlarmControlPanelEntity(HomeKitEntity, AlarmControlPanelEntity):
"""Representation of a Homekit Alarm Control Panel."""
_attr_icon = "mdi:security"
_attr_supported_features = (
AlarmControlPanelEntityFeature.ARM_HOME
| AlarmControlPanelEntityFeature.ARM_AWAY

View file

@ -41,7 +41,7 @@ BUTTON_ENTITIES: dict[str, HomeKitButtonEntityDescription] = {
CharacteristicsTypes.VENDOR_HAA_SETUP: HomeKitButtonEntityDescription(
key=CharacteristicsTypes.VENDOR_HAA_SETUP,
name="Setup",
icon="mdi:cog",
translation_key="setup",
entity_category=EntityCategory.CONFIG,
write_value="#HAA@trcmd",
),

View file

@ -0,0 +1,53 @@
{
"entity": {
"button": {
"setup": {
"default": "mdi:cog"
}
},
"number": {
"spray_quantity": {
"default": "mdi:water"
},
"elevation": {
"default": "mdi:elevation-rise"
},
"volume": {
"default": "mdi:volume-high"
},
"duration": {
"default": "mdi:timer"
},
"sensitivity": {
"default": "mdi:knob"
}
},
"select": {
"temperature_display_units": {
"default": "mdi:thermometer"
}
},
"sensor": {
"valve_position": {
"default": "mdi:pipe-valve"
}
},
"switch": {
"pairing_mode": {
"default": "mdi:lock-open"
},
"lock_physical_controls": {
"default": "mdi:lock-open"
},
"mute": {
"default": "mdi:volume-mute"
},
"sleep_mode": {
"default": "mdi:power-sleep"
},
"valve": {
"default": "mdi:water"
}
}
}
}

View file

@ -28,37 +28,37 @@ NUMBER_ENTITIES: dict[str, NumberEntityDescription] = {
CharacteristicsTypes.VENDOR_VOCOLINC_HUMIDIFIER_SPRAY_LEVEL: NumberEntityDescription(
key=CharacteristicsTypes.VENDOR_VOCOLINC_HUMIDIFIER_SPRAY_LEVEL,
name="Spray Quantity",
icon="mdi:water",
translation_key="spray_quantity",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.VENDOR_EVE_DEGREE_ELEVATION: NumberEntityDescription(
key=CharacteristicsTypes.VENDOR_EVE_DEGREE_ELEVATION,
name="Elevation",
icon="mdi:elevation-rise",
translation_key="elevation",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.VENDOR_AQARA_GATEWAY_VOLUME: NumberEntityDescription(
key=CharacteristicsTypes.VENDOR_AQARA_GATEWAY_VOLUME,
name="Volume",
icon="mdi:volume-high",
translation_key="volume",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.VENDOR_AQARA_E1_GATEWAY_VOLUME: NumberEntityDescription(
key=CharacteristicsTypes.VENDOR_AQARA_E1_GATEWAY_VOLUME,
name="Volume",
icon="mdi:volume-high",
translation_key="volume",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.VENDOR_EVE_MOTION_DURATION: NumberEntityDescription(
key=CharacteristicsTypes.VENDOR_EVE_MOTION_DURATION,
name="Duration",
icon="mdi:timer",
translation_key="duration",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.VENDOR_EVE_MOTION_SENSITIVITY: NumberEntityDescription(
key=CharacteristicsTypes.VENDOR_EVE_MOTION_SENSITIVITY,
name="Sensitivity",
icon="mdi:knob",
translation_key="sensitivity",
entity_category=EntityCategory.CONFIG,
),
}

View file

@ -43,7 +43,6 @@ SELECT_ENTITIES: dict[str, HomeKitSelectEntityDescription] = {
key="temperature_display_units",
translation_key="temperature_display_units",
name="Temperature Display Units",
icon="mdi:thermometer",
entity_category=EntityCategory.CONFIG,
choices={
"celsius": TemperatureDisplayUnits.CELSIUS,

View file

@ -358,7 +358,7 @@ SIMPLE_SENSOR: dict[str, HomeKitSensorEntityDescription] = {
CharacteristicsTypes.VENDOR_EVE_THERMO_VALVE_POSITION: HomeKitSensorEntityDescription(
key=CharacteristicsTypes.VENDOR_EVE_THERMO_VALVE_POSITION,
name="Valve position",
icon="mdi:pipe-valve",
translation_key="valve_position",
entity_category=EntityCategory.DIAGNOSTIC,
state_class=SensorStateClass.MEASUREMENT,
native_unit_of_measurement=PERCENTAGE,
@ -520,7 +520,7 @@ class HomeKitBatterySensor(HomeKitSensor):
@property
def is_charging(self) -> bool:
"""Return true if currently charing."""
"""Return true if currently charging."""
# 0 = not charging
# 1 = charging
# 2 = not chargeable

View file

@ -42,31 +42,31 @@ SWITCH_ENTITIES: dict[str, DeclarativeSwitchEntityDescription] = {
CharacteristicsTypes.VENDOR_AQARA_PAIRING_MODE: DeclarativeSwitchEntityDescription(
key=CharacteristicsTypes.VENDOR_AQARA_PAIRING_MODE,
name="Pairing Mode",
icon="mdi:lock-open",
translation_key="pairing_mode",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.VENDOR_AQARA_E1_PAIRING_MODE: DeclarativeSwitchEntityDescription(
key=CharacteristicsTypes.VENDOR_AQARA_E1_PAIRING_MODE,
name="Pairing Mode",
icon="mdi:lock-open",
translation_key="pairing_mode",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.LOCK_PHYSICAL_CONTROLS: DeclarativeSwitchEntityDescription(
key=CharacteristicsTypes.LOCK_PHYSICAL_CONTROLS,
name="Lock Physical Controls",
icon="mdi:lock-open",
translation_key="lock_physical_controls",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.MUTE: DeclarativeSwitchEntityDescription(
key=CharacteristicsTypes.MUTE,
name="Mute",
icon="mdi:volume-mute",
translation_key="mute",
entity_category=EntityCategory.CONFIG,
),
CharacteristicsTypes.VENDOR_AIRVERSA_SLEEP_MODE: DeclarativeSwitchEntityDescription(
key=CharacteristicsTypes.VENDOR_AIRVERSA_SLEEP_MODE,
name="Sleep Mode",
icon="mdi:power-sleep",
translation_key="sleep_mode",
entity_category=EntityCategory.CONFIG,
),
}
@ -104,6 +104,8 @@ class HomeKitSwitch(HomeKitEntity, SwitchEntity):
class HomeKitValve(HomeKitEntity, SwitchEntity):
"""Represents a valve in an irrigation system."""
_attr_translation_key = "valve"
def get_characteristic_types(self) -> list[str]:
"""Define the homekit characteristics the entity cares about."""
return [
@ -121,11 +123,6 @@ class HomeKitValve(HomeKitEntity, SwitchEntity):
"""Turn the specified valve off."""
await self.async_put_characteristics({CharacteristicsTypes.ACTIVE: False})
@property
def icon(self) -> str:
"""Return the icon."""
return "mdi:water"
@property
def is_on(self) -> bool:
"""Return true if device is on."""

View file

@ -474,19 +474,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:lock-open',
'original_icon': None,
'original_name': 'Airversa AP2 1808 Lock Physical Controls',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'lock_physical_controls',
'unique_id': '00:00:00:00:00:00_1_32832_32839',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Airversa AP2 1808 Lock Physical Controls',
'icon': 'mdi:lock-open',
}),
'entity_id': 'switch.airversa_ap2_1808_lock_physical_controls',
'state': 'off',
@ -513,19 +512,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'Airversa AP2 1808 Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_1_32832_32843',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Airversa AP2 1808 Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.airversa_ap2_1808_mute',
'state': 'on',
@ -552,19 +550,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:power-sleep',
'original_icon': None,
'original_name': 'Airversa AP2 1808 Sleep Mode',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'sleep_mode',
'unique_id': '00:00:00:00:00:00_1_32832_32842',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Airversa AP2 1808 Sleep Mode',
'icon': 'mdi:power-sleep',
}),
'entity_id': 'switch.airversa_ap2_1808_sleep_mode',
'state': 'off',
@ -859,19 +856,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'eufyCam2-0000 Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_4_80_83',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'eufyCam2-0000 Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.eufycam2_0000_mute',
'state': 'off',
@ -1091,19 +1087,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'eufyCam2-000A Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_2_80_83',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'eufyCam2-000A Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.eufycam2_000a_mute',
'state': 'off',
@ -1323,19 +1318,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'eufyCam2-000A Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_3_80_83',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'eufyCam2-000A Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.eufycam2_000a_mute_2',
'state': 'off',
@ -1398,7 +1392,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:security',
'original_icon': None,
'original_name': 'Aqara-Hub-E1-00A0 Security System',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -1413,7 +1407,6 @@
'code_arm_required': True,
'code_format': None,
'friendly_name': 'Aqara-Hub-E1-00A0 Security System',
'icon': 'mdi:security',
'supported_features': <AlarmControlPanelEntityFeature: 7>,
}),
'entity_id': 'alarm_control_panel.aqara_hub_e1_00a0_security_system',
@ -1485,19 +1478,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-high',
'original_icon': None,
'original_name': 'Aqara-Hub-E1-00A0 Volume',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'volume',
'unique_id': '00:00:00:00:00:00_1_17_1114116',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Aqara-Hub-E1-00A0 Volume',
'icon': 'mdi:volume-high',
'max': 100,
'min': 0.0,
'mode': <NumberMode.AUTO: 'auto'>,
@ -1528,19 +1520,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:lock-open',
'original_icon': None,
'original_name': 'Aqara-Hub-E1-00A0 Pairing Mode',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'pairing_mode',
'unique_id': '00:00:00:00:00:00_1_17_1114117',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Aqara-Hub-E1-00A0 Pairing Mode',
'icon': 'mdi:lock-open',
}),
'entity_id': 'switch.aqara_hub_e1_00a0_pairing_mode',
'state': 'off',
@ -1757,7 +1748,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:security',
'original_icon': None,
'original_name': 'Aqara Hub-1563 Security System',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -1772,7 +1763,6 @@
'code_arm_required': True,
'code_format': None,
'friendly_name': 'Aqara Hub-1563 Security System',
'icon': 'mdi:security',
'supported_features': <AlarmControlPanelEntityFeature: 7>,
}),
'entity_id': 'alarm_control_panel.aqara_hub_1563_security_system',
@ -1907,19 +1897,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-high',
'original_icon': None,
'original_name': 'Aqara Hub-1563 Volume',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'volume',
'unique_id': '00:00:00:00:00:00_1_65536_65541',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Aqara Hub-1563 Volume',
'icon': 'mdi:volume-high',
'max': 100,
'min': 0.0,
'mode': <NumberMode.AUTO: 'auto'>,
@ -1950,19 +1939,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:lock-open',
'original_icon': None,
'original_name': 'Aqara Hub-1563 Pairing Mode',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'pairing_mode',
'unique_id': '00:00:00:00:00:00_1_65536_65538',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Aqara Hub-1563 Pairing Mode',
'icon': 'mdi:lock-open',
}),
'entity_id': 'switch.aqara_hub_1563_pairing_mode',
'state': 'off',
@ -2496,19 +2484,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'ArloBabyA0 Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_1_300_302',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'ArloBabyA0 Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.arlobabya0_mute',
'state': 'off',
@ -2535,19 +2522,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'ArloBabyA0 Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_1_400_402',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'ArloBabyA0 Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.arlobabya0_mute_2',
'state': 'off',
@ -3450,7 +3436,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': 'HomeW Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -3462,7 +3448,6 @@
'state': dict({
'attributes': dict({
'friendly_name': 'HomeW Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -4197,7 +4182,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': 'HomeW Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -4209,7 +4194,6 @@
'state': dict({
'attributes': dict({
'friendly_name': 'HomeW Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -4583,7 +4567,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': 'HomeW Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -4595,7 +4579,6 @@
'state': dict({
'attributes': dict({
'friendly_name': 'HomeW Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -5339,7 +5322,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': 'My ecobee Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -5351,7 +5334,6 @@
'state': dict({
'attributes': dict({
'friendly_name': 'My ecobee Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -5825,19 +5807,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:elevation-rise',
'original_icon': None,
'original_name': 'Eve Degree AA11 Elevation',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'elevation',
'unique_id': '00:00:00:00:00:00_1_30_33',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Eve Degree AA11 Elevation',
'icon': 'mdi:elevation-rise',
'max': 9000,
'min': -450,
'mode': <NumberMode.AUTO: 'auto'>,
@ -5873,7 +5854,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': 'Eve Degree AA11 Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -5885,7 +5866,6 @@
'state': dict({
'attributes': dict({
'friendly_name': 'Eve Degree AA11 Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -6375,19 +6355,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:lock-open',
'original_icon': None,
'original_name': 'Eve Energy 50FF Lock Physical Controls',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'lock_physical_controls',
'unique_id': '00:00:00:00:00:00_1_28_36',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Eve Energy 50FF Lock Physical Controls',
'icon': 'mdi:lock-open',
}),
'entity_id': 'switch.eve_energy_50ff_lock_physical_controls',
'state': 'off',
@ -6489,19 +6468,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:cog',
'original_icon': None,
'original_name': 'HAA-C718B3 Setup',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'setup',
'unique_id': '00:00:00:00:00:00_1_1010_1012',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'HAA-C718B3 Setup',
'icon': 'mdi:cog',
}),
'entity_id': 'button.haa_c718b3_setup',
'state': 'unknown',
@ -7600,7 +7578,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': '89 Living Room Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -7612,7 +7590,6 @@
'state': dict({
'attributes': dict({
'friendly_name': '89 Living Room Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -9120,7 +9097,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': '89 Living Room Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -9132,7 +9109,6 @@
'state': dict({
'attributes': dict({
'friendly_name': '89 Living Room Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -12909,7 +12885,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': 'Lennox Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -12921,7 +12897,6 @@
'state': dict({
'attributes': dict({
'friendly_name': 'Lennox Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -13173,19 +13148,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'LG webOS TV AF80 Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_1_80_82',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'LG webOS TV AF80 Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.lg_webos_tv_af80_mute',
'state': 'off',
@ -13979,7 +13953,7 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:thermometer',
'original_icon': None,
'original_name': 'Mysa-85dda9 Temperature Display Units',
'platform': 'homekit_controller',
'previous_unique_id': None,
@ -13991,7 +13965,6 @@
'state': dict({
'attributes': dict({
'friendly_name': 'Mysa-85dda9 Temperature Display Units',
'icon': 'mdi:thermometer',
'options': list([
'celsius',
'fahrenheit',
@ -14574,19 +14547,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'Netatmo-Doorbell-g738658 Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_1_51_52',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Netatmo-Doorbell-g738658 Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.netatmo_doorbell_g738658_mute',
'state': 'off',
@ -14613,19 +14585,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:volume-mute',
'original_icon': None,
'original_name': 'Netatmo-Doorbell-g738658 Mute',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'mute',
'unique_id': '00:00:00:00:00:00_1_8_9',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'Netatmo-Doorbell-g738658 Mute',
'icon': 'mdi:volume-mute',
}),
'entity_id': 'switch.netatmo_doorbell_g738658_mute_2',
'state': 'off',
@ -15169,19 +15140,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'RainMachine-00ce4a',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'valve',
'unique_id': '00:00:00:00:00:00_1_512',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'RainMachine-00ce4a',
'icon': 'mdi:water',
'in_use': False,
'is_configured': True,
'remaining_duration': 0,
@ -15211,19 +15181,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'RainMachine-00ce4a',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'valve',
'unique_id': '00:00:00:00:00:00_1_768',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'RainMachine-00ce4a',
'icon': 'mdi:water',
'in_use': False,
'is_configured': True,
'remaining_duration': 0,
@ -15253,19 +15222,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'RainMachine-00ce4a',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'valve',
'unique_id': '00:00:00:00:00:00_1_1024',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'RainMachine-00ce4a',
'icon': 'mdi:water',
'in_use': False,
'is_configured': True,
'remaining_duration': 0,
@ -15295,19 +15263,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'RainMachine-00ce4a',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'valve',
'unique_id': '00:00:00:00:00:00_1_1280',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'RainMachine-00ce4a',
'icon': 'mdi:water',
'in_use': False,
'is_configured': True,
'remaining_duration': 0,
@ -15337,19 +15304,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'RainMachine-00ce4a',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'valve',
'unique_id': '00:00:00:00:00:00_1_1536',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'RainMachine-00ce4a',
'icon': 'mdi:water',
'in_use': False,
'is_configured': True,
'remaining_duration': 0,
@ -15379,19 +15345,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'RainMachine-00ce4a',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'valve',
'unique_id': '00:00:00:00:00:00_1_1792',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'RainMachine-00ce4a',
'icon': 'mdi:water',
'in_use': False,
'is_configured': True,
'remaining_duration': 0,
@ -15421,19 +15386,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'RainMachine-00ce4a',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'valve',
'unique_id': '00:00:00:00:00:00_1_2048',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'RainMachine-00ce4a',
'icon': 'mdi:water',
'in_use': False,
'is_configured': True,
'remaining_duration': 0,
@ -15463,19 +15427,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'RainMachine-00ce4a',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'valve',
'unique_id': '00:00:00:00:00:00_1_2304',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'RainMachine-00ce4a',
'icon': 'mdi:water',
'in_use': False,
'is_configured': True,
'remaining_duration': 0,
@ -17464,19 +17427,18 @@
'options': dict({
}),
'original_device_class': None,
'original_icon': 'mdi:water',
'original_icon': None,
'original_name': 'VOCOlinc-Flowerbud-0d324b Spray Quantity',
'platform': 'homekit_controller',
'previous_unique_id': None,
'supported_features': 0,
'translation_key': None,
'translation_key': 'spray_quantity',
'unique_id': '00:00:00:00:00:00_1_30_38',
'unit_of_measurement': None,
}),
'state': dict({
'attributes': dict({
'friendly_name': 'VOCOlinc-Flowerbud-0d324b Spray Quantity',
'icon': 'mdi:water',
'max': 5,
'min': 1,
'mode': <NumberMode.AUTO: 'auto'>,