From 15cd9c011eba69f68b65809cfe41e07eaca27cea Mon Sep 17 00:00:00 2001 From: Joost Lekkerkerker Date: Wed, 28 Feb 2024 16:31:09 +0100 Subject: [PATCH] Add icon translations to Homekit Controller (#111720) * Add icon translations to Homekit Controller * Add icon translations to Homekit Controller --- .../homekit_controller/alarm_control_panel.py | 1 - .../components/homekit_controller/button.py | 2 +- .../components/homekit_controller/icons.json | 53 ++++++ .../components/homekit_controller/number.py | 12 +- .../components/homekit_controller/select.py | 1 - .../components/homekit_controller/sensor.py | 4 +- .../components/homekit_controller/switch.py | 17 +- .../snapshots/test_init.ambr | 168 +++++++----------- 8 files changed, 134 insertions(+), 124 deletions(-) create mode 100644 homeassistant/components/homekit_controller/icons.json diff --git a/homeassistant/components/homekit_controller/alarm_control_panel.py b/homeassistant/components/homekit_controller/alarm_control_panel.py index a741cf54920..f1c2440ce9e 100644 --- a/homeassistant/components/homekit_controller/alarm_control_panel.py +++ b/homeassistant/components/homekit_controller/alarm_control_panel.py @@ -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 diff --git a/homeassistant/components/homekit_controller/button.py b/homeassistant/components/homekit_controller/button.py index b065f4a5a27..a0c61578e66 100644 --- a/homeassistant/components/homekit_controller/button.py +++ b/homeassistant/components/homekit_controller/button.py @@ -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", ), diff --git a/homeassistant/components/homekit_controller/icons.json b/homeassistant/components/homekit_controller/icons.json new file mode 100644 index 00000000000..aeee8dd670a --- /dev/null +++ b/homeassistant/components/homekit_controller/icons.json @@ -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" + } + } + } +} diff --git a/homeassistant/components/homekit_controller/number.py b/homeassistant/components/homekit_controller/number.py index c453efb8219..e2d856126da 100644 --- a/homeassistant/components/homekit_controller/number.py +++ b/homeassistant/components/homekit_controller/number.py @@ -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, ), } diff --git a/homeassistant/components/homekit_controller/select.py b/homeassistant/components/homekit_controller/select.py index c3185bcba55..be1a7313301 100644 --- a/homeassistant/components/homekit_controller/select.py +++ b/homeassistant/components/homekit_controller/select.py @@ -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, diff --git a/homeassistant/components/homekit_controller/sensor.py b/homeassistant/components/homekit_controller/sensor.py index 26476417a56..28bb0cd309c 100644 --- a/homeassistant/components/homekit_controller/sensor.py +++ b/homeassistant/components/homekit_controller/sensor.py @@ -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 diff --git a/homeassistant/components/homekit_controller/switch.py b/homeassistant/components/homekit_controller/switch.py index 2ae19152b93..b7e1b27ef7f 100644 --- a/homeassistant/components/homekit_controller/switch.py +++ b/homeassistant/components/homekit_controller/switch.py @@ -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.""" diff --git a/tests/components/homekit_controller/snapshots/test_init.ambr b/tests/components/homekit_controller/snapshots/test_init.ambr index d5aa44fb163..94e7dd7bc17 100644 --- a/tests/components/homekit_controller/snapshots/test_init.ambr +++ b/tests/components/homekit_controller/snapshots/test_init.ambr @@ -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': , }), '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': , @@ -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': , }), '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': , @@ -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': , @@ -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': ,