From 0f53bac1310325e14e44ccee53bf8c1b9fc8aca5 Mon Sep 17 00:00:00 2001 From: zigpy-review-bot <286747149+zigpy-review-bot@users.noreply.github.com> Date: Thu, 25 Jun 2026 23:07:24 +0200 Subject: [PATCH] Remove hardcoded Inovelli entities now provided by zha-quirks The Inovelli VZM switch/select/number/sensor configuration entities were hard-coded in the ZHA library and matched on the Inovelli manufacturer cluster (0xFC31). They are now declared by the zha-quirks v2 device handlers (InovelliQuirkBuilder), so the library copies are removed to avoid creating duplicate entities. The quirks v2 entities reuse the exact unique_ids these classes produced (suffix "64561-"), so existing Home Assistant entities are preserved. The Inovelli virtual bind/init entities and the INOVELLI_CLUSTER constant are kept. Regenerated the Inovelli device snapshots (entity classes change from the removed Inovelli* classes to the generic quirks v2 entity classes; unique_ids are unchanged) and added VZM32-SN and VZM36 snapshots. Requires a zha-quirks release containing the Inovelli v2 entity port; this must land in the same ZHA release that bumps the zha-quirks pin. --- .../devices/inovelli-vzm30-sn-0x01100100.json | 1213 +++++++- tests/data/devices/inovelli-vzm30-sn.json | 814 +++++- .../devices/inovelli-vzm31-sn-0x01020212.json | 418 ++- .../devices/inovelli-vzm32-sn-0x0103000a.json | 2427 +++++++++++++++++ .../devices/inovelli-vzm35-sn-0x02020107.json | 254 +- tests/data/devices/inovelli-vzm36.json | 2025 ++++++++++++++ zha/application/platforms/number/__init__.py | 416 --- zha/application/platforms/select.py | 170 -- zha/application/platforms/sensor/__init__.py | 41 - zha/application/platforms/switch.py | 182 -- 10 files changed, 6838 insertions(+), 1122 deletions(-) create mode 100644 tests/data/devices/inovelli-vzm32-sn-0x0103000a.json create mode 100644 tests/data/devices/inovelli-vzm36.json diff --git a/tests/data/devices/inovelli-vzm30-sn-0x01100100.json b/tests/data/devices/inovelli-vzm30-sn-0x01100100.json index caa7ceec6..ddf49d615 100644 --- a/tests/data/devices/inovelli-vzm30-sn-0x01100100.json +++ b/tests/data/devices/inovelli-vzm30-sn-0x01100100.json @@ -851,6 +851,688 @@ } ], "number": [ + { + "info_object": { + "fallback_name": "Automatic switch shutoff timer", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-auto_off_timer", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "auto_off_timer", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 32767, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Button delay", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-button_delay", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "button_delay", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 9, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local default dimming level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-default_level_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "default_level_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote default dimming level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-default_level_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "default_level_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local dimming down speed", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-dimming_speed_down_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_down_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote dimming down speed", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-dimming_speed_down_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_down_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local dimming up speed", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-dimming_speed_up_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_up_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote dimming up speed", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-dimming_speed_up_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_up_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 126, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Double tap down level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-double_tap_down_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "double_tap_down_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Double tap up level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-double_tap_up_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "double_tap_up_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED off color", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_color_when_off", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_color_when_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on color", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_color_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_color_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED off intensity", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_intensity_when_off", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_intensity_when_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 100, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on intensity", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_intensity_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_intensity_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 100, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Load level indicator timeout", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-load_level_indicator_timeout", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "load_level_indicator_timeout", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 11, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Maximum load dimming level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-maximum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "maximum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Minimum load dimming level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-minimum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "minimum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 1, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local ramp rate off to on", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-ramp_rate_off_to_on_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_off_to_on_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote ramp rate off to on", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-ramp_rate_off_to_on_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_off_to_on_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local ramp rate on to off", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-ramp_rate_on_to_off_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_on_to_off_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote ramp rate on to off", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-ramp_rate_on_to_off_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_on_to_off_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Start-up default dimming level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-state_after_power_restored", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "state_after_power_restored", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, { "info_object": { "fallback_name": null, @@ -918,9 +1600,106 @@ "fallback_name": null, "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-8-on_off_transition_time", "migrate_unique_ids": [], - "platform": "number", - "class_name": "OnOffTransitionTimeConfigurationEntity", - "translation_key": "on_off_transition_time", + "platform": "number", + "class_name": "OnOffTransitionTimeConfigurationEntity", + "translation_key": "on_off_transition_time", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 65535, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "OnOffTransitionTimeConfigurationEntity", + "available": true, + "state": 0 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-8-start_up_current_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "StartUpCurrentLevelConfigurationEntity", + "translation_key": "start_up_current_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "StartUpCurrentLevelConfigurationEntity", + "available": true, + "state": 255 + } + } + ], + "select": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-6-StartUpOnOff", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "StartupOnOffSelectEntity", + "translation_key": "start_up_on_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "StartUpOnOff", + "options": [ + "Off", + "On", + "Toggle", + "PreviousValue" + ] + }, + "state": { + "class_name": "StartupOnOffSelectEntity", + "available": true, + "state": "PreviousValue" + } + }, + { + "info_object": { + "fallback_name": "Increased non-neutral output", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-increased_non_neutral_output", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "increased_non_neutral_output", "translation_placeholders": null, "device_class": null, "state_class": null, @@ -932,26 +1711,26 @@ "endpoint_id": 1, "available": true, "group_id": null, - "mode": "auto", - "native_max_value": 65535, - "native_min_value": 0, - "native_step": 1.0, - "native_unit_of_measurement": null + "enum": "InovelliNonNeutralOutput", + "options": [ + "Low", + "High" + ] }, "state": { - "class_name": "OnOffTransitionTimeConfigurationEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, - "state": 0 + "state": null } }, { "info_object": { - "fallback_name": null, - "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-8-start_up_current_level", + "fallback_name": "LED scaling mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_scaling_mode", "migrate_unique_ids": [], - "platform": "number", - "class_name": "StartUpCurrentLevelConfigurationEntity", - "translation_key": "start_up_current_level", + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "led_scaling_mode", "translation_placeholders": null, "device_class": null, "state_class": null, @@ -963,28 +1742,26 @@ "endpoint_id": 1, "available": true, "group_id": null, - "mode": "auto", - "native_max_value": 255, - "native_min_value": 0, - "native_step": 1.0, - "native_unit_of_measurement": null + "enum": "InovelliLedScalingMode", + "options": [ + "VZM31SN", + "LZW31SN" + ] }, "state": { - "class_name": "StartUpCurrentLevelConfigurationEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, - "state": 255 + "state": null } - } - ], - "select": [ + }, { "info_object": { - "fallback_name": null, - "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-6-StartUpOnOff", + "fallback_name": "Output mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-output_mode", "migrate_unique_ids": [], "platform": "select", - "class_name": "StartupOnOffSelectEntity", - "translation_key": "start_up_on_off", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "output_mode", "translation_placeholders": null, "device_class": null, "state_class": null, @@ -996,18 +1773,16 @@ "endpoint_id": 1, "available": true, "group_id": null, - "enum": "StartUpOnOff", + "enum": "InovelliOutputMode", "options": [ - "Off", - "On", - "Toggle", - "PreviousValue" + "Dimmer", + "OnOff" ] }, "state": { - "class_name": "StartupOnOffSelectEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, - "state": "PreviousValue" + "state": null } } ], @@ -1202,11 +1977,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Internal temperature", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561", "migrate_unique_ids": [], "platform": "sensor", - "class_name": "InovelliInternalTemperature", + "class_name": "Sensor", "translation_key": "internal_temp_monitor", "translation_placeholders": null, "device_class": "temperature", @@ -1223,18 +1998,18 @@ "unit": "\u00b0C" }, "state": { - "class_name": "InovelliInternalTemperature", + "class_name": "Sensor", "available": true, "state": 31 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Overheat protection", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-overheated", "migrate_unique_ids": [], "platform": "sensor", - "class_name": "InovelliOverheated", + "class_name": "EnumSensor", "translation_key": "overheated", "translation_placeholders": null, "device_class": "enum", @@ -1251,7 +2026,7 @@ "unit": null }, "state": { - "class_name": "InovelliOverheated", + "class_name": "EnumSensor", "available": true, "state": "Normal" } @@ -1313,6 +2088,360 @@ } } ], + "switch": [ + { + "info_object": { + "fallback_name": "Aux switch scenes", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-aux_switch_scenes", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "aux_switch_scenes", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "aux_switch_scenes", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Binding off to on sync level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-binding_off_to_on_sync_level", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "binding_off_to_on_sync_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "binding_off_to_on_sync_level", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Disable config 2x tap to clear notifications", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-disable_clear_notifications_double_tap", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "disable_clear_notifications_double_tap", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "disable_clear_notifications_double_tap", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Double tap down enabled", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-double_tap_down_enabled", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "double_tap_down_enabled", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "double_tap_down_enabled", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Double tap up enabled", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-double_tap_up_enabled", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "double_tap_up_enabled", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "double_tap_up_enabled", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Firmware progress LED", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-firmware_progress_led", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "firmware_progress_led", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "firmware_progress_led", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Invert switch", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-invert_switch", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "invert_switch", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "invert_switch", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Local protection", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-local_protection", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "local_protection", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "local_protection", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Only 1 LED mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-on_off_led_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "one_led_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "on_off_led_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Disable relay click in on off mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-relay_click_in_on_off_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "relay_click_in_on_off_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "relay_click_in_on_off_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Smart bulb mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-smart_bulb_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "smart_bulb_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "smart_bulb_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + } + ], "update": [ { "info_object": { diff --git a/tests/data/devices/inovelli-vzm30-sn.json b/tests/data/devices/inovelli-vzm30-sn.json index d01a0181b..19e089bfd 100644 --- a/tests/data/devices/inovelli-vzm30-sn.json +++ b/tests/data/devices/inovelli-vzm30-sn.json @@ -1003,11 +1003,11 @@ "number": [ { "info_object": { - "fallback_name": null, + "fallback_name": "Automatic switch shutoff timer", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-auto_off_timer", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliAutoShutoffTimer", + "class_name": "NumberConfigurationEntity", "translation_key": "auto_off_timer", "translation_placeholders": null, "device_class": null, @@ -1027,18 +1027,49 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliAutoShutoffTimer", + "class_name": "NumberConfigurationEntity", "available": true, "state": 0 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Button delay", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-button_delay", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "button_delay", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 9, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local default dimming level", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-default_level_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "default_level_local", "translation_placeholders": null, "device_class": null, @@ -1058,18 +1089,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote default dimming level", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-default_level_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "default_level_remote", "translation_placeholders": null, "device_class": null, @@ -1089,18 +1120,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local dimming down speed", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-dimming_speed_down_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_down_local", "translation_placeholders": null, "device_class": null, @@ -1120,18 +1151,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote dimming down speed", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-dimming_speed_down_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_down_remote", "translation_placeholders": null, "device_class": null, @@ -1151,18 +1182,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local dimming up speed", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-dimming_speed_up_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_up_local", "translation_placeholders": null, "device_class": null, @@ -1182,18 +1213,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote dimming up speed", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-dimming_speed_up_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_up_remote", "translation_placeholders": null, "device_class": null, @@ -1213,18 +1244,204 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 25 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Double tap down level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-double_tap_down_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "double_tap_down_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Double tap up level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-double_tap_up_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "double_tap_up_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED off color", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_color_when_off", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_color_when_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on color", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_color_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_color_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED off intensity", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_intensity_when_off", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_intensity_when_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 100, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on intensity", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_intensity_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_intensity_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 100, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Load level indicator timeout", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-load_level_indicator_timeout", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLoadLevelIndicatorTimeout", + "class_name": "NumberConfigurationEntity", "translation_key": "load_level_indicator_timeout", "translation_placeholders": null, "device_class": null, @@ -1244,18 +1461,80 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLoadLevelIndicatorTimeout", + "class_name": "NumberConfigurationEntity", "available": true, "state": 11 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Maximum load dimming level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-maximum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "maximum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Minimum load dimming level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-minimum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "minimum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 1, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local ramp rate off to on", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-ramp_rate_off_to_on_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalRampRateOffToOn", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_off_to_on_local", "translation_placeholders": null, "device_class": null, @@ -1275,18 +1554,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalRampRateOffToOn", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote ramp rate off to on", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-ramp_rate_off_to_on_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingSpeedOffToOn", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_off_to_on_remote", "translation_placeholders": null, "device_class": null, @@ -1306,18 +1585,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingSpeedOffToOn", + "class_name": "NumberConfigurationEntity", "available": true, "state": 0 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local ramp rate on to off", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-ramp_rate_on_to_off_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalRampRateOnToOff", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_on_to_off_local", "translation_placeholders": null, "device_class": null, @@ -1337,18 +1616,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalRampRateOnToOff", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote ramp rate on to off", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-ramp_rate_on_to_off_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingSpeedOnToOff", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_on_to_off_remote", "translation_placeholders": null, "device_class": null, @@ -1368,18 +1647,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingSpeedOnToOff", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Start-up default dimming level", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-state_after_power_restored", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliStartupDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "state_after_power_restored", "translation_placeholders": null, "device_class": null, @@ -1399,7 +1678,7 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliStartupDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } @@ -1562,24 +1841,117 @@ "available": true, "state": "PreviousValue" } - } - ], - "sensor": [ + }, { "info_object": { - "fallback_name": null, - "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-0-lqi", + "fallback_name": "Increased non-neutral output", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-increased_non_neutral_output", "migrate_unique_ids": [], - "platform": "sensor", - "class_name": "LQISensor", - "translation_key": "lqi", + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "increased_non_neutral_output", "translation_placeholders": null, "device_class": null, - "state_class": "measurement", - "entity_category": "diagnostic", - "entity_registry_enabled_default": false, - "enabled": true, - "primary": false, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliNonNeutralOutput", + "options": [ + "Low", + "High" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "LED scaling mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-led_scaling_mode", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "led_scaling_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliLedScalingMode", + "options": [ + "VZM31SN", + "LZW31SN" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Output mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-output_mode", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "output_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliOutputMode", + "options": [ + "Dimmer", + "OnOff" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + } + ], + "sensor": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-0-lqi", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "LQISensor", + "translation_key": "lqi", + "translation_placeholders": null, + "device_class": null, + "state_class": "measurement", + "entity_category": "diagnostic", + "entity_registry_enabled_default": false, + "enabled": true, + "primary": false, "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", "endpoint_id": 1, "available": true, @@ -1755,11 +2127,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Internal temperature", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561", "migrate_unique_ids": [], "platform": "sensor", - "class_name": "InovelliInternalTemperature", + "class_name": "Sensor", "translation_key": "internal_temp_monitor", "translation_placeholders": null, "device_class": "temperature", @@ -1776,18 +2148,18 @@ "unit": "\u00b0C" }, "state": { - "class_name": "InovelliInternalTemperature", + "class_name": "Sensor", "available": true, "state": null } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Overheat protection", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-overheated", "migrate_unique_ids": [], "platform": "sensor", - "class_name": "InovelliOverheated", + "class_name": "EnumSensor", "translation_key": "overheated", "translation_placeholders": null, "device_class": "enum", @@ -1804,7 +2176,7 @@ "unit": null }, "state": { - "class_name": "InovelliOverheated", + "class_name": "EnumSensor", "available": true, "state": null } @@ -1869,11 +2241,203 @@ "switch": [ { "info_object": { - "fallback_name": null, + "fallback_name": "Aux switch scenes", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-aux_switch_scenes", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "aux_switch_scenes", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "aux_switch_scenes", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Binding off to on sync level", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-binding_off_to_on_sync_level", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "binding_off_to_on_sync_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "binding_off_to_on_sync_level", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Disable config 2x tap to clear notifications", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-disable_clear_notifications_double_tap", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "disable_clear_notifications_double_tap", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "disable_clear_notifications_double_tap", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Double tap down enabled", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-double_tap_down_enabled", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "double_tap_down_enabled", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "double_tap_down_enabled", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Double tap up enabled", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-double_tap_up_enabled", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "double_tap_up_enabled", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "double_tap_up_enabled", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Firmware progress LED", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-firmware_progress_led", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "firmware_progress_led", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "firmware_progress_led", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Invert switch", "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-invert_switch", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliInvertSwitch", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "invert_switch", "translation_placeholders": null, "device_class": null, @@ -1893,7 +2457,135 @@ "on_value": 1 }, "state": { - "class_name": "InovelliInvertSwitch", + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Local protection", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-local_protection", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "local_protection", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "local_protection", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Only 1 LED mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-on_off_led_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "one_led_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "on_off_led_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Disable relay click in on off mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-relay_click_in_on_off_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "relay_click_in_on_off_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "relay_click_in_on_off_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Smart bulb mode", + "unique_id": "ab:cd:ef:12:9a:d6:cb:e7-1-64561-smart_bulb_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "smart_bulb_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:9a:d6:cb:e7", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "smart_bulb_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false diff --git a/tests/data/devices/inovelli-vzm31-sn-0x01020212.json b/tests/data/devices/inovelli-vzm31-sn-0x01020212.json index b4966d36c..c3a5e9ae7 100644 --- a/tests/data/devices/inovelli-vzm31-sn-0x01020212.json +++ b/tests/data/devices/inovelli-vzm31-sn-0x01020212.json @@ -981,11 +981,11 @@ "number": [ { "info_object": { - "fallback_name": null, + "fallback_name": "Automatic switch shutoff timer", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-auto_off_timer", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliAutoShutoffTimer", + "class_name": "NumberConfigurationEntity", "translation_key": "auto_off_timer", "translation_placeholders": null, "device_class": null, @@ -1005,18 +1005,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliAutoShutoffTimer", + "class_name": "NumberConfigurationEntity", "available": true, "state": 0 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Button delay", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-button_delay", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliButtonDelay", + "class_name": "NumberConfigurationEntity", "translation_key": "button_delay", "translation_placeholders": null, "device_class": null, @@ -1036,18 +1036,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliButtonDelay", + "class_name": "NumberConfigurationEntity", "available": true, "state": 1 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local default dimming level", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-default_level_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "default_level_local", "translation_placeholders": null, "device_class": null, @@ -1067,18 +1067,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote default dimming level", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-default_level_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "default_level_remote", "translation_placeholders": null, "device_class": null, @@ -1098,18 +1098,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local dimming down speed", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-dimming_speed_down_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_down_local", "translation_placeholders": null, "device_class": null, @@ -1129,18 +1129,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote dimming down speed", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-dimming_speed_down_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_down_remote", "translation_placeholders": null, "device_class": null, @@ -1160,18 +1160,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local dimming up speed", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-dimming_speed_up_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_up_local", "translation_placeholders": null, "device_class": null, @@ -1191,18 +1191,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote dimming up speed", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-dimming_speed_up_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_up_remote", "translation_placeholders": null, "device_class": null, @@ -1222,18 +1222,80 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 25 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Double tap down level", + "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-double_tap_down_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "double_tap_down_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:dc:41:3c:40", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Double tap up level", + "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-double_tap_up_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "double_tap_up_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:dc:41:3c:40", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED off color", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-led_color_when_off", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDefaultAllLEDOffColor", + "class_name": "NumberConfigurationEntity", "translation_key": "led_color_when_off", "translation_placeholders": null, "device_class": null, @@ -1253,18 +1315,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDefaultAllLEDOffColor", + "class_name": "NumberConfigurationEntity", "available": true, "state": 170 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Default all LED on color", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-led_color_when_on", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDefaultAllLEDOnColor", + "class_name": "NumberConfigurationEntity", "translation_key": "led_color_when_on", "translation_placeholders": null, "device_class": null, @@ -1284,18 +1346,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDefaultAllLEDOnColor", + "class_name": "NumberConfigurationEntity", "available": true, "state": 170 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Default all LED off intensity", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-led_intensity_when_off", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDefaultAllLEDOffIntensity", + "class_name": "NumberConfigurationEntity", "translation_key": "led_intensity_when_off", "translation_placeholders": null, "device_class": null, @@ -1315,18 +1377,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDefaultAllLEDOffIntensity", + "class_name": "NumberConfigurationEntity", "available": true, "state": 1 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Default all LED on intensity", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-led_intensity_when_on", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDefaultAllLEDOnIntensity", + "class_name": "NumberConfigurationEntity", "translation_key": "led_intensity_when_on", "translation_placeholders": null, "device_class": null, @@ -1346,18 +1408,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDefaultAllLEDOnIntensity", + "class_name": "NumberConfigurationEntity", "available": true, "state": 33 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Load level indicator timeout", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-load_level_indicator_timeout", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLoadLevelIndicatorTimeout", + "class_name": "NumberConfigurationEntity", "translation_key": "load_level_indicator_timeout", "translation_placeholders": null, "device_class": null, @@ -1377,18 +1439,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLoadLevelIndicatorTimeout", + "class_name": "NumberConfigurationEntity", "available": true, "state": 11 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Maximum load dimming level", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-maximum_level", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliMaximumLoadDimmingLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "maximum_level", "translation_placeholders": null, "device_class": null, @@ -1408,18 +1470,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliMaximumLoadDimmingLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Minimum load dimming level", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-minimum_level", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliMinimumLoadDimmingLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "minimum_level", "translation_placeholders": null, "device_class": null, @@ -1439,18 +1501,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliMinimumLoadDimmingLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 1 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local ramp rate off to on", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-ramp_rate_off_to_on_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalRampRateOffToOn", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_off_to_on_local", "translation_placeholders": null, "device_class": null, @@ -1470,18 +1532,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalRampRateOffToOn", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote ramp rate off to on", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-ramp_rate_off_to_on_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingSpeedOffToOn", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_off_to_on_remote", "translation_placeholders": null, "device_class": null, @@ -1501,18 +1563,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingSpeedOffToOn", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local ramp rate on to off", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-ramp_rate_on_to_off_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalRampRateOnToOff", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_on_to_off_local", "translation_placeholders": null, "device_class": null, @@ -1532,18 +1594,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalRampRateOnToOff", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote ramp rate on to off", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-ramp_rate_on_to_off_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingSpeedOnToOff", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_on_to_off_remote", "translation_placeholders": null, "device_class": null, @@ -1563,18 +1625,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingSpeedOnToOff", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Start-up default dimming level", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-state_after_power_restored", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliStartupDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "state_after_power_restored", "translation_placeholders": null, "device_class": null, @@ -1594,7 +1656,7 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliStartupDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } @@ -1729,11 +1791,42 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Increased non-neutral output", + "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-increased_non_neutral_output", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "increased_non_neutral_output", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:dc:41:3c:40", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliNonNeutralOutput", + "options": [ + "Low", + "High" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Dimming mode", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-leading_or_trailing_edge", "migrate_unique_ids": [], "platform": "select", - "class_name": "InovelliDimmingModeEntity", + "class_name": "ZCLEnumSelectEntity", "translation_key": "leading_or_trailing_edge", "translation_placeholders": null, "device_class": null, @@ -1753,18 +1846,49 @@ ] }, "state": { - "class_name": "InovelliDimmingModeEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, "state": "LeadingEdge" } }, { "info_object": { - "fallback_name": null, + "fallback_name": "LED scaling mode", + "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-led_scaling_mode", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "led_scaling_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:dc:41:3c:40", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliLedScalingMode", + "options": [ + "VZM31SN", + "LZW31SN" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Output mode", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-output_mode", "migrate_unique_ids": [], "platform": "select", - "class_name": "InovelliOutputModeEntity", + "class_name": "ZCLEnumSelectEntity", "translation_key": "output_mode", "translation_placeholders": null, "device_class": null, @@ -1784,18 +1908,18 @@ ] }, "state": { - "class_name": "InovelliOutputModeEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, "state": "OnOff" } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Switch type", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-switch_type", "migrate_unique_ids": [], "platform": "select", - "class_name": "InovelliSwitchTypeEntity", + "class_name": "ZCLEnumSelectEntity", "translation_key": "switch_type", "translation_placeholders": null, "device_class": null, @@ -1817,7 +1941,7 @@ ] }, "state": { - "class_name": "InovelliSwitchTypeEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, "state": "Single Pole" } @@ -1950,11 +2074,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Internal temperature", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561", "migrate_unique_ids": [], "platform": "sensor", - "class_name": "InovelliInternalTemperature", + "class_name": "Sensor", "translation_key": "internal_temp_monitor", "translation_placeholders": null, "device_class": "temperature", @@ -1971,18 +2095,18 @@ "unit": "\u00b0C" }, "state": { - "class_name": "InovelliInternalTemperature", + "class_name": "Sensor", "available": true, "state": 39 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Overheat protection", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-overheated", "migrate_unique_ids": [], "platform": "sensor", - "class_name": "InovelliOverheated", + "class_name": "EnumSensor", "translation_key": "overheated", "translation_placeholders": null, "device_class": "enum", @@ -1999,7 +2123,7 @@ "unit": null }, "state": { - "class_name": "InovelliOverheated", + "class_name": "EnumSensor", "available": true, "state": "Normal" } @@ -2008,11 +2132,75 @@ "switch": [ { "info_object": { - "fallback_name": null, + "fallback_name": "Aux switch scenes", + "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-aux_switch_scenes", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "aux_switch_scenes", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:dc:41:3c:40", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "aux_switch_scenes", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Binding off to on sync level", + "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-binding_off_to_on_sync_level", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "binding_off_to_on_sync_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:dc:41:3c:40", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "binding_off_to_on_sync_level", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Disable config 2x tap to clear notifications", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-disable_clear_notifications_double_tap", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliDisableDoubleTapClearNotificationsMode", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "disable_clear_notifications_double_tap", "translation_placeholders": null, "device_class": null, @@ -2032,7 +2220,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliDisableDoubleTapClearNotificationsMode", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -2040,11 +2228,43 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Double tap down enabled", + "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-double_tap_down_enabled", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "double_tap_down_enabled", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:dc:41:3c:40", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "double_tap_down_enabled", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Double tap up enabled", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-double_tap_up_enabled", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliDoubleTapUpEnabled", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "double_tap_up_enabled", "translation_placeholders": null, "device_class": null, @@ -2064,7 +2284,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliDoubleTapUpEnabled", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -2072,11 +2292,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Firmware progress LED", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-firmware_progress_led", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliFirmwareProgressLED", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "firmware_progress_led", "translation_placeholders": null, "device_class": null, @@ -2096,7 +2316,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliFirmwareProgressLED", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": true, "inverted": false @@ -2104,11 +2324,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Invert switch", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-invert_switch", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliInvertSwitch", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "invert_switch", "translation_placeholders": null, "device_class": null, @@ -2128,7 +2348,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliInvertSwitch", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -2136,11 +2356,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local protection", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-local_protection", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliLocalProtection", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "local_protection", "translation_placeholders": null, "device_class": null, @@ -2160,7 +2380,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliLocalProtection", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -2168,11 +2388,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Only 1 LED mode", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-on_off_led_mode", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliOnOffLEDMode", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "one_led_mode", "translation_placeholders": null, "device_class": null, @@ -2192,7 +2412,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliOnOffLEDMode", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -2200,11 +2420,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Disable relay click in on off mode", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-relay_click_in_on_off_mode", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliRelayClickInOnOffMode", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "relay_click_in_on_off_mode", "translation_placeholders": null, "device_class": null, @@ -2224,7 +2444,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliRelayClickInOnOffMode", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -2232,11 +2452,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Smart bulb mode", "unique_id": "ab:cd:ef:12:dc:41:3c:40-1-64561-smart_bulb_mode", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliSmartBulbMode", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "smart_bulb_mode", "translation_placeholders": null, "device_class": null, @@ -2256,7 +2476,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliSmartBulbMode", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false diff --git a/tests/data/devices/inovelli-vzm32-sn-0x0103000a.json b/tests/data/devices/inovelli-vzm32-sn-0x0103000a.json new file mode 100644 index 000000000..11837f5bb --- /dev/null +++ b/tests/data/devices/inovelli-vzm32-sn-0x0103000a.json @@ -0,0 +1,2427 @@ +{ + "version": 2, + "ieee": "ab:cd:ef:12:59:98:78:6f", + "nwk": "0x3F36", + "manufacturer": "Inovelli", + "model": "VZM32-SN", + "friendly_manufacturer": "Inovelli", + "friendly_model": "VZM32-SN", + "name": "Inovelli VZM32-SN", + "quirk_applied": true, + "quirk_class": "zhaquirks.inovelli.VZM32SN:(Inovelli / VZM32-SN)", + "exposes_features": [], + "manufacturer_code": 4655, + "power_source": "Mains", + "lqi": null, + "rssi": null, + "last_seen": "2025-12-02T17:16:26.590588+00:00", + "available": true, + "device_type": "Router", + "active_coordinator": false, + "node_descriptor": { + "logical_type": "Router", + "complex_descriptor_available": false, + "user_descriptor_available": false, + "reserved": 0, + "aps_flags": 0, + "frequency_band": 8, + "mac_capability_flags": 142, + "manufacturer_code": 4655, + "maximum_buffer_size": 82, + "maximum_incoming_transfer_size": 500, + "server_mask": 11264, + "maximum_outgoing_transfer_size": 500, + "descriptor_capability_field": 0 + }, + "endpoints": { + "1": { + "profile_id": 260, + "device_type": { + "name": "DIMMABLE_LIGHT", + "id": 257 + }, + "in_clusters": [ + { + "cluster_id": "0x0000", + "endpoint_attribute": "basic", + "attributes": [ + { + "id": "0x0004", + "name": "manufacturer", + "zcl_type": "string", + "value": "Inovelli" + }, + { + "id": "0x0005", + "name": "model", + "zcl_type": "string", + "value": "VZM32-SN" + }, + { + "id": "0x4000", + "name": "sw_build_id", + "zcl_type": "string", + "value": "0.10" + } + ] + }, + { + "cluster_id": "0x0003", + "endpoint_attribute": "identify", + "attributes": [] + }, + { + "cluster_id": "0x0004", + "endpoint_attribute": "groups", + "attributes": [] + }, + { + "cluster_id": "0x0005", + "endpoint_attribute": "scenes", + "attributes": [] + }, + { + "cluster_id": "0x0006", + "endpoint_attribute": "on_off", + "attributes": [ + { + "id": "0x0000", + "name": "on_off", + "zcl_type": "bool", + "value": 0 + }, + { + "id": "0x4003", + "name": "start_up_on_off", + "zcl_type": "enum8", + "value": 255 + } + ] + }, + { + "cluster_id": "0x0008", + "endpoint_attribute": "level", + "attributes": [ + { + "id": "0x0000", + "name": "current_level", + "zcl_type": "uint8", + "value": 239 + }, + { + "id": "0x0014", + "name": "default_move_rate", + "zcl_type": "uint8", + "value": 0 + }, + { + "id": "0x0013", + "name": "off_transition_time", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0011", + "name": "on_level", + "zcl_type": "uint8", + "value": 255 + }, + { + "id": "0x0010", + "name": "on_off_transition_time", + "zcl_type": "uint16", + "value": 0 + }, + { + "id": "0x0012", + "name": "on_transition_time", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x4000", + "name": "start_up_current_level", + "zcl_type": "uint8", + "value": 255 + } + ] + }, + { + "cluster_id": "0x0400", + "endpoint_attribute": "illuminance", + "attributes": [ + { + "id": "0x0000", + "name": "measured_value", + "zcl_type": "uint16", + "value": 3011 + } + ] + }, + { + "cluster_id": "0x0406", + "endpoint_attribute": "occupancy", + "attributes": [ + { + "id": "0x0000", + "name": "occupancy", + "zcl_type": "map8", + "value": 1 + } + ] + }, + { + "cluster_id": "0x0702", + "endpoint_attribute": "smartenergy_metering", + "attributes": [ + { + "id": "0x0000", + "name": "current_summ_delivered", + "zcl_type": "uint48", + "value": 0 + }, + { + "id": "0x0001", + "name": "current_summ_received", + "zcl_type": "uint48", + "unsupported": true + }, + { + "id": "0x0100", + "name": "current_tier1_summ_delivered", + "zcl_type": "uint48", + "unsupported": true + }, + { + "id": "0x0102", + "name": "current_tier2_summ_delivered", + "zcl_type": "uint48", + "unsupported": true + }, + { + "id": "0x0104", + "name": "current_tier3_summ_delivered", + "zcl_type": "uint48", + "unsupported": true + }, + { + "id": "0x0106", + "name": "current_tier4_summ_delivered", + "zcl_type": "uint48", + "unsupported": true + }, + { + "id": "0x0108", + "name": "current_tier5_summ_delivered", + "zcl_type": "uint48", + "unsupported": true + }, + { + "id": "0x010a", + "name": "current_tier6_summ_delivered", + "zcl_type": "uint48", + "unsupported": true + }, + { + "id": "0x0304", + "name": "demand_formatting", + "zcl_type": "map8", + "unsupported": true + }, + { + "id": "0x0302", + "name": "divisor", + "zcl_type": "uint24", + "value": 100 + }, + { + "id": "0x0400", + "name": "instantaneous_demand", + "zcl_type": "int24", + "unsupported": true + }, + { + "id": "0x0306", + "name": "metering_device_type", + "zcl_type": "map8", + "value": 0 + }, + { + "id": "0x0301", + "name": "multiplier", + "zcl_type": "uint24", + "value": 1 + }, + { + "id": "0x0200", + "name": "status", + "zcl_type": "map8", + "value": 0 + }, + { + "id": "0x0303", + "name": "summation_formatting", + "zcl_type": "map8", + "value": 66 + }, + { + "id": "0x0300", + "name": "unit_of_measure", + "zcl_type": "enum8", + "value": 0 + } + ] + }, + { + "cluster_id": "0x0b04", + "endpoint_attribute": "electrical_measurement", + "attributes": [ + { + "id": "0x0603", + "name": "ac_current_divisor", + "zcl_type": "uint16", + "value": 99 + }, + { + "id": "0x0602", + "name": "ac_current_multiplier", + "zcl_type": "uint16", + "value": 1 + }, + { + "id": "0x0300", + "name": "ac_frequency", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0401", + "name": "ac_frequency_divisor", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0302", + "name": "ac_frequency_max", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0400", + "name": "ac_frequency_multiplier", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0605", + "name": "ac_power_divisor", + "zcl_type": "uint16", + "value": 10 + }, + { + "id": "0x0604", + "name": "ac_power_multiplier", + "zcl_type": "uint16", + "value": 1 + }, + { + "id": "0x0601", + "name": "ac_voltage_divisor", + "zcl_type": "uint16", + "value": 10 + }, + { + "id": "0x0600", + "name": "ac_voltage_multiplier", + "zcl_type": "uint16", + "value": 1 + }, + { + "id": "0x050b", + "name": "active_power", + "zcl_type": "int16", + "value": 0 + }, + { + "id": "0x050d", + "name": "active_power_max", + "zcl_type": "int16", + "unsupported": true + }, + { + "id": "0x090d", + "name": "active_power_max_ph_b", + "zcl_type": "int16", + "unsupported": true + }, + { + "id": "0x0a0d", + "name": "active_power_max_ph_c", + "zcl_type": "int16", + "unsupported": true + }, + { + "id": "0x090b", + "name": "active_power_ph_b", + "zcl_type": "int16", + "unsupported": true + }, + { + "id": "0x0a0b", + "name": "active_power_ph_c", + "zcl_type": "int16", + "unsupported": true + }, + { + "id": "0x050f", + "name": "apparent_power", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0000", + "name": "measurement_type", + "zcl_type": "map32", + "unsupported": true + }, + { + "id": "0x0403", + "name": "power_divisor", + "zcl_type": "uint32", + "unsupported": true + }, + { + "id": "0x0510", + "name": "power_factor", + "zcl_type": "int8", + "unsupported": true + }, + { + "id": "0x0910", + "name": "power_factor_ph_b", + "zcl_type": "int8", + "unsupported": true + }, + { + "id": "0x0a10", + "name": "power_factor_ph_c", + "zcl_type": "int8", + "unsupported": true + }, + { + "id": "0x0402", + "name": "power_multiplier", + "zcl_type": "uint32", + "unsupported": true + }, + { + "id": "0x0508", + "name": "rms_current", + "zcl_type": "uint16", + "value": 0 + }, + { + "id": "0x050a", + "name": "rms_current_max", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x090a", + "name": "rms_current_max_ph_b", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0a0a", + "name": "rms_current_max_ph_c", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0908", + "name": "rms_current_ph_b", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0a08", + "name": "rms_current_ph_c", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0505", + "name": "rms_voltage", + "zcl_type": "uint16", + "value": 887 + }, + { + "id": "0x0507", + "name": "rms_voltage_max", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0907", + "name": "rms_voltage_max_ph_b", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0a07", + "name": "rms_voltage_max_ph_c", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0905", + "name": "rms_voltage_ph_b", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0a05", + "name": "rms_voltage_ph_c", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0304", + "name": "total_active_power", + "zcl_type": "int32", + "unsupported": true + } + ] + }, + { + "cluster_id": "0x0b05", + "endpoint_attribute": "diagnostic", + "attributes": [] + }, + { + "cluster_id": "0xfc31", + "endpoint_attribute": "inovelli_vzm31sn_cluster", + "attributes": [ + { + "id": "0x0102", + "name": "output_mode", + "zcl_type": "bool", + "value": 0 + }, + { + "id": "0x0034", + "name": "smart_bulb_mode", + "zcl_type": "bool", + "value": 0 + } + ] + }, + { + "cluster_id": "0xfc32", + "endpoint_attribute": "inovelli_vzm32snmmwave_cluster", + "attributes": [] + }, + { + "cluster_id": "0xfc57", + "endpoint_attribute": "works_with_all_hubs", + "attributes": [] + } + ], + "out_clusters": [ + { + "cluster_id": "0x0019", + "endpoint_attribute": "ota", + "attributes": [ + { + "id": "0x0002", + "name": "current_file_version", + "zcl_type": "uint32", + "value": 16973834 + } + ] + } + ] + }, + "2": { + "profile_id": 260, + "device_type": { + "name": "DIMMER_SWITCH", + "id": 260 + }, + "in_clusters": [ + { + "cluster_id": "0x0000", + "endpoint_attribute": "basic", + "attributes": [] + }, + { + "cluster_id": "0x0003", + "endpoint_attribute": "identify", + "attributes": [] + }, + { + "cluster_id": "0x0004", + "endpoint_attribute": "groups", + "attributes": [] + }, + { + "cluster_id": "0x0005", + "endpoint_attribute": "scenes", + "attributes": [] + } + ], + "out_clusters": [ + { + "cluster_id": "0x0003", + "endpoint_attribute": "identify", + "attributes": [] + }, + { + "cluster_id": "0x0006", + "endpoint_attribute": "on_off", + "attributes": [] + }, + { + "cluster_id": "0x0008", + "endpoint_attribute": "level", + "attributes": [] + }, + { + "cluster_id": "0xfc31", + "endpoint_attribute": "inovelli_vzm31sn_cluster", + "attributes": [] + } + ] + }, + "3": { + "profile_id": 260, + "device_type": { + "name": "DIMMER_SWITCH", + "id": 260 + }, + "in_clusters": [ + { + "cluster_id": "0x0000", + "endpoint_attribute": "basic", + "attributes": [] + }, + { + "cluster_id": "0x0003", + "endpoint_attribute": "identify", + "attributes": [] + }, + { + "cluster_id": "0x0004", + "endpoint_attribute": "groups", + "attributes": [] + }, + { + "cluster_id": "0x0005", + "endpoint_attribute": "scenes", + "attributes": [] + } + ], + "out_clusters": [ + { + "cluster_id": "0x0003", + "endpoint_attribute": "identify", + "attributes": [] + }, + { + "cluster_id": "0x0006", + "endpoint_attribute": "on_off", + "attributes": [] + }, + { + "cluster_id": "0x0008", + "endpoint_attribute": "level", + "attributes": [] + } + ] + }, + "242": { + "profile_id": 41440, + "device_type": { + "name": "PROXY_BASIC", + "id": 97 + }, + "in_clusters": [], + "out_clusters": [ + { + "cluster_id": "0x0021", + "endpoint_attribute": "green_power", + "attributes": [] + } + ] + } + }, + "original_signature": { + "manufacturer": "Inovelli", + "model": "VZM32-SN", + "node_desc": { + "logical_type": 1, + "complex_descriptor_available": 0, + "user_descriptor_available": 0, + "reserved": 0, + "aps_flags": 0, + "frequency_band": 8, + "mac_capability_flags": 142, + "manufacturer_code": 4655, + "maximum_buffer_size": 82, + "maximum_incoming_transfer_size": 500, + "server_mask": 11264, + "maximum_outgoing_transfer_size": 500, + "descriptor_capability_field": 0 + }, + "endpoints": { + "1": { + "profile_id": "0x0104", + "device_type": "0x0101", + "input_clusters": [ + "0x0000", + "0x0003", + "0x0004", + "0x0005", + "0x0006", + "0x0008", + "0x0400", + "0x0406", + "0x0702", + "0x0b04", + "0x0b05", + "0xfc31", + "0xfc32", + "0xfc57" + ], + "output_clusters": [ + "0x0019" + ] + }, + "2": { + "profile_id": "0x0104", + "device_type": "0x0104", + "input_clusters": [ + "0x0000", + "0x0003", + "0x0004", + "0x0005" + ], + "output_clusters": [ + "0x0003", + "0x0006", + "0x0008", + "0xfc31" + ] + }, + "3": { + "profile_id": "0x0104", + "device_type": "0x0104", + "input_clusters": [ + "0x0000", + "0x0003", + "0x0004", + "0x0005" + ], + "output_clusters": [ + "0x0003", + "0x0006", + "0x0008" + ] + }, + "242": { + "profile_id": "0xa1e0", + "device_type": "0x0061", + "input_clusters": [], + "output_clusters": [ + "0x0021" + ] + } + } + }, + "zha_lib_entities": { + "binary_sensor": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-1030", + "migrate_unique_ids": [], + "platform": "binary_sensor", + "class_name": "Occupancy", + "translation_key": null, + "translation_placeholders": null, + "device_class": "occupancy", + "state_class": null, + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "occupancy" + }, + "state": { + "class_name": "Occupancy", + "available": true, + "state": true + } + } + ], + "button": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-3", + "migrate_unique_ids": [], + "platform": "button", + "class_name": "IdentifyButton", + "translation_key": null, + "translation_placeholders": null, + "device_class": "identify", + "state_class": null, + "entity_category": "diagnostic", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "command": "identify", + "args": [ + 5 + ], + "kwargs": {} + }, + "state": { + "class_name": "IdentifyButton", + "available": true + } + } + ], + "light": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1", + "migrate_unique_ids": [], + "platform": "light", + "class_name": "Light", + "translation_key": "light", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": true, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "effect_list": [ + "off" + ], + "supported_features": 40, + "min_mireds": 153, + "max_mireds": 500 + }, + "state": { + "class_name": "Light", + "available": true, + "on": false, + "brightness": 239, + "xy_color": null, + "color_temp": null, + "effect_list": [ + "off" + ], + "effect": "off", + "supported_features": 40, + "color_mode": "brightness", + "supported_color_modes": [ + "brightness", + "onoff" + ], + "off_with_transition": false, + "off_brightness": null + }, + "extra_state_attributes": [ + "off_brightness", + "off_with_transition" + ] + } + ], + "number": [ + { + "info_object": { + "fallback_name": "Automatic switch shutoff timer", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-auto_off_timer", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "auto_off_timer", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 32767, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Button delay", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-button_delay", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "button_delay", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 9, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local default dimming level", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-default_level_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "default_level_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote default dimming level", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-default_level_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "default_level_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local dimming down speed", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-dimming_speed_down_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_down_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote dimming down speed", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-dimming_speed_down_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_down_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local dimming up speed", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-dimming_speed_up_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_up_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote dimming up speed", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-dimming_speed_up_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_up_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 126, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Double tap down level", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-double_tap_down_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "double_tap_down_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Double tap up level", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-double_tap_up_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "double_tap_up_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED off color", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-led_color_when_off", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_color_when_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on color", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-led_color_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_color_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED off intensity", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-led_intensity_when_off", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_intensity_when_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 100, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on intensity", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-led_intensity_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_intensity_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 100, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Load level indicator timeout", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-load_level_indicator_timeout", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "load_level_indicator_timeout", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 11, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Maximum load dimming level", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-maximum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "maximum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Minimum load dimming level", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-minimum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "minimum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 1, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local ramp rate off to on", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-ramp_rate_off_to_on_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_off_to_on_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote ramp rate off to on", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-ramp_rate_off_to_on_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_off_to_on_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Local ramp rate on to off", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-ramp_rate_on_to_off_local", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_on_to_off_local", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote ramp rate on to off", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-ramp_rate_on_to_off_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_on_to_off_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Start-up default dimming level", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-state_after_power_restored", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "state_after_power_restored", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-8-default_move_rate", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "DefaultMoveRateConfigurationEntity", + "translation_key": "default_move_rate", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": false, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "DefaultMoveRateConfigurationEntity", + "available": true, + "state": 0 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-8-on_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "OnLevelConfigurationEntity", + "translation_key": "on_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "OnLevelConfigurationEntity", + "available": true, + "state": 255 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-8-on_off_transition_time", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "OnOffTransitionTimeConfigurationEntity", + "translation_key": "on_off_transition_time", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 65535, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "OnOffTransitionTimeConfigurationEntity", + "available": true, + "state": 0 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-8-start_up_current_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "StartUpCurrentLevelConfigurationEntity", + "translation_key": "start_up_current_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "StartUpCurrentLevelConfigurationEntity", + "available": true, + "state": 255 + } + } + ], + "select": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-6-StartUpOnOff", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "StartupOnOffSelectEntity", + "translation_key": "start_up_on_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "StartUpOnOff", + "options": [ + "Off", + "On", + "Toggle", + "PreviousValue" + ] + }, + "state": { + "class_name": "StartupOnOffSelectEntity", + "available": true, + "state": "PreviousValue" + } + }, + { + "info_object": { + "fallback_name": "Increased non-neutral output", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-increased_non_neutral_output", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "increased_non_neutral_output", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliNonNeutralOutput", + "options": [ + "Low", + "High" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "LED scaling mode", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-led_scaling_mode", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "led_scaling_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliLedScalingMode", + "options": [ + "VZM31SN", + "LZW31SN" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Output mode", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-output_mode", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "output_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliOutputMode", + "options": [ + "Dimmer", + "OnOff" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": "Dimmer" + } + } + ], + "sensor": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-0-lqi", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "LQISensor", + "translation_key": "lqi", + "translation_placeholders": null, + "device_class": null, + "state_class": "measurement", + "entity_category": "diagnostic", + "entity_registry_enabled_default": false, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": null + }, + "state": { + "class_name": "LQISensor", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-0-rssi", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "RSSISensor", + "translation_key": "rssi", + "translation_placeholders": null, + "device_class": "signal_strength", + "state_class": "measurement", + "entity_category": "diagnostic", + "entity_registry_enabled_default": false, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": "dBm" + }, + "state": { + "class_name": "RSSISensor", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-1024", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "Illuminance", + "translation_key": null, + "translation_placeholders": null, + "device_class": "illuminance", + "state_class": "measurement", + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": "lx" + }, + "state": { + "class_name": "Illuminance", + "available": true, + "state": 2 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-1794-summation_delivered", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "SmartEnergySummation", + "translation_key": "summation_delivered", + "translation_placeholders": null, + "device_class": "energy", + "state_class": "total_increasing", + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": 3, + "unit": "kWh" + }, + "state": { + "class_name": "SmartEnergySummation", + "available": true, + "state": 0.0, + "device_type": "Electric Metering", + "status": "NO_ALARMS", + "zcl_unit_of_measurement": 0 + }, + "extra_state_attributes": [ + "device_type", + "status", + "zcl_unit_of_measurement" + ] + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-2820", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "ElectricalMeasurementActivePower", + "translation_key": null, + "translation_placeholders": null, + "device_class": "power", + "state_class": "measurement", + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": 1, + "unit": "W" + }, + "state": { + "class_name": "ElectricalMeasurementActivePower", + "available": true, + "state": 0.0 + }, + "extra_state_attributes": [ + "active_power_max", + "measurement_type" + ] + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-2820-rms_current", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "ElectricalMeasurementRMSCurrent", + "translation_key": null, + "translation_placeholders": null, + "device_class": "current", + "state_class": "measurement", + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": 2, + "unit": "A" + }, + "state": { + "class_name": "ElectricalMeasurementRMSCurrent", + "available": true, + "state": 0.0 + }, + "extra_state_attributes": [ + "measurement_type", + "rms_current_max" + ] + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-2820-rms_voltage", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "ElectricalMeasurementRMSVoltage", + "translation_key": null, + "translation_placeholders": null, + "device_class": "voltage", + "state_class": "measurement", + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": 1, + "unit": "V" + }, + "state": { + "class_name": "ElectricalMeasurementRMSVoltage", + "available": true, + "state": 88.7 + }, + "extra_state_attributes": [ + "measurement_type", + "rms_voltage_max" + ] + }, + { + "info_object": { + "fallback_name": "Internal temperature", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "Sensor", + "translation_key": "internal_temp_monitor", + "translation_placeholders": null, + "device_class": "temperature", + "state_class": "measurement", + "entity_category": "diagnostic", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": "\u00b0C" + }, + "state": { + "class_name": "Sensor", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Overheat protection", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-overheated", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "EnumSensor", + "translation_key": "overheated", + "translation_placeholders": null, + "device_class": "enum", + "state_class": null, + "entity_category": "diagnostic", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": null + }, + "state": { + "class_name": "EnumSensor", + "available": true, + "state": null + } + } + ], + "switch": [ + { + "info_object": { + "fallback_name": "Aux switch scenes", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-aux_switch_scenes", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "aux_switch_scenes", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "aux_switch_scenes", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Binding off to on sync level", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-binding_off_to_on_sync_level", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "binding_off_to_on_sync_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "binding_off_to_on_sync_level", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Disable config 2x tap to clear notifications", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-disable_clear_notifications_double_tap", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "disable_clear_notifications_double_tap", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "disable_clear_notifications_double_tap", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Double tap down enabled", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-double_tap_down_enabled", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "double_tap_down_enabled", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "double_tap_down_enabled", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Double tap up enabled", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-double_tap_up_enabled", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "double_tap_up_enabled", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "double_tap_up_enabled", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Firmware progress LED", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-firmware_progress_led", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "firmware_progress_led", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "firmware_progress_led", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Invert switch", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-invert_switch", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "invert_switch", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "invert_switch", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Local protection", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-local_protection", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "local_protection", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "local_protection", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Only 1 LED mode", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-on_off_led_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "one_led_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "on_off_led_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Smart bulb mode", + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-64561-smart_bulb_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "smart_bulb_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "smart_bulb_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + } + ], + "update": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:59:98:78:6f-1-25-firmware_update", + "migrate_unique_ids": [], + "platform": "update", + "class_name": "FirmwareUpdateEntity", + "translation_key": null, + "translation_placeholders": null, + "device_class": "firmware", + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:59:98:78:6f", + "endpoint_id": 1, + "available": true, + "group_id": null, + "supported_features": 7 + }, + "state": { + "class_name": "FirmwareUpdateEntity", + "available": true, + "installed_version": "0x0103000a", + "in_progress": false, + "update_percentage": null, + "latest_version": null, + "release_summary": null, + "release_notes": null, + "release_url": null + } + } + ] + }, + "neighbors": [], + "routes": [] +} \ No newline at end of file diff --git a/tests/data/devices/inovelli-vzm35-sn-0x02020107.json b/tests/data/devices/inovelli-vzm35-sn-0x02020107.json index 701127f07..1952e7b79 100644 --- a/tests/data/devices/inovelli-vzm35-sn-0x02020107.json +++ b/tests/data/devices/inovelli-vzm35-sn-0x02020107.json @@ -642,11 +642,11 @@ "number": [ { "info_object": { - "fallback_name": null, + "fallback_name": "Automatic switch shutoff timer", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-auto_off_timer", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliAutoShutoffTimer", + "class_name": "NumberConfigurationEntity", "translation_key": "auto_off_timer", "translation_placeholders": null, "device_class": null, @@ -666,18 +666,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliAutoShutoffTimer", + "class_name": "NumberConfigurationEntity", "available": true, "state": 3600 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Button delay", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-button_delay", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliButtonDelay", + "class_name": "NumberConfigurationEntity", "translation_key": "button_delay", "translation_placeholders": null, "device_class": null, @@ -697,18 +697,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliButtonDelay", + "class_name": "NumberConfigurationEntity", "available": true, "state": 5 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local default dimming level", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-default_level_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "default_level_local", "translation_placeholders": null, "device_class": null, @@ -728,18 +728,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote default dimming level", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-default_level_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "default_level_remote", "translation_placeholders": null, "device_class": null, @@ -759,18 +759,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local dimming down speed", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-dimming_speed_down_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_down_local", "translation_placeholders": null, "device_class": null, @@ -790,18 +790,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote dimming down speed", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-dimming_speed_down_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_down_remote", "translation_placeholders": null, "device_class": null, @@ -821,18 +821,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingDownSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local dimming up speed", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-dimming_speed_up_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_up_local", "translation_placeholders": null, "device_class": null, @@ -852,18 +852,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote dimming up speed", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-dimming_speed_up_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "translation_key": "dimming_speed_up_remote", "translation_placeholders": null, "device_class": null, @@ -883,18 +883,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingUpSpeed", + "class_name": "NumberConfigurationEntity", "available": true, "state": 25 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Double tap down level", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-double_tap_down_level", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDoubleTapDownLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "double_tap_down_level", "translation_placeholders": null, "device_class": null, @@ -914,18 +914,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDoubleTapDownLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 2 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Double tap up level", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-double_tap_up_level", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDoubleTapUpLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "double_tap_up_level", "translation_placeholders": null, "device_class": null, @@ -945,18 +945,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDoubleTapUpLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 254 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Default all LED off color", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-led_color_when_off", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDefaultAllLEDOffColor", + "class_name": "NumberConfigurationEntity", "translation_key": "led_color_when_off", "translation_placeholders": null, "device_class": null, @@ -976,18 +976,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDefaultAllLEDOffColor", + "class_name": "NumberConfigurationEntity", "available": true, "state": 170 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Default all LED on color", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-led_color_when_on", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDefaultAllLEDOnColor", + "class_name": "NumberConfigurationEntity", "translation_key": "led_color_when_on", "translation_placeholders": null, "device_class": null, @@ -1007,18 +1007,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDefaultAllLEDOnColor", + "class_name": "NumberConfigurationEntity", "available": true, "state": 170 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Default all LED off intensity", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-led_intensity_when_off", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDefaultAllLEDOffIntensity", + "class_name": "NumberConfigurationEntity", "translation_key": "led_intensity_when_off", "translation_placeholders": null, "device_class": null, @@ -1038,18 +1038,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDefaultAllLEDOffIntensity", + "class_name": "NumberConfigurationEntity", "available": true, "state": 1 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Default all LED on intensity", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-led_intensity_when_on", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliDefaultAllLEDOnIntensity", + "class_name": "NumberConfigurationEntity", "translation_key": "led_intensity_when_on", "translation_placeholders": null, "device_class": null, @@ -1069,18 +1069,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliDefaultAllLEDOnIntensity", + "class_name": "NumberConfigurationEntity", "available": true, "state": 33 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Load level indicator timeout", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-load_level_indicator_timeout", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLoadLevelIndicatorTimeout", + "class_name": "NumberConfigurationEntity", "translation_key": "load_level_indicator_timeout", "translation_placeholders": null, "device_class": null, @@ -1100,18 +1100,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLoadLevelIndicatorTimeout", + "class_name": "NumberConfigurationEntity", "available": true, "state": 11 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Maximum load dimming level", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-maximum_level", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliMaximumLoadDimmingLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "maximum_level", "translation_placeholders": null, "device_class": null, @@ -1131,18 +1131,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliMaximumLoadDimmingLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Minimum load dimming level", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-minimum_level", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliMinimumLoadDimmingLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "minimum_level", "translation_placeholders": null, "device_class": null, @@ -1162,18 +1162,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliMinimumLoadDimmingLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 254 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Quick start time", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-quick_start_time", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliQuickStartTime", + "class_name": "NumberConfigurationEntity", "translation_key": "quick_start_time", "translation_placeholders": null, "device_class": null, @@ -1193,18 +1193,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliQuickStartTime", + "class_name": "NumberConfigurationEntity", "available": true, "state": 0 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local ramp rate off to on", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-ramp_rate_off_to_on_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalRampRateOffToOn", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_off_to_on_local", "translation_placeholders": null, "device_class": null, @@ -1224,18 +1224,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalRampRateOffToOn", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote ramp rate off to on", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-ramp_rate_off_to_on_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingSpeedOffToOn", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_off_to_on_remote", "translation_placeholders": null, "device_class": null, @@ -1255,18 +1255,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingSpeedOffToOn", + "class_name": "NumberConfigurationEntity", "available": true, "state": 0 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local ramp rate on to off", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-ramp_rate_on_to_off_local", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliLocalRampRateOnToOff", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_on_to_off_local", "translation_placeholders": null, "device_class": null, @@ -1286,18 +1286,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliLocalRampRateOnToOff", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Remote ramp rate on to off", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-ramp_rate_on_to_off_remote", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliRemoteDimmingSpeedOnToOff", + "class_name": "NumberConfigurationEntity", "translation_key": "ramp_rate_on_to_off_remote", "translation_placeholders": null, "device_class": null, @@ -1317,18 +1317,18 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliRemoteDimmingSpeedOnToOff", + "class_name": "NumberConfigurationEntity", "available": true, "state": 127 } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Start-up default dimming level", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-state_after_power_restored", "migrate_unique_ids": [], "platform": "number", - "class_name": "InovelliStartupDefaultLevel", + "class_name": "NumberConfigurationEntity", "translation_key": "state_after_power_restored", "translation_placeholders": null, "device_class": null, @@ -1348,7 +1348,7 @@ "native_unit_of_measurement": null }, "state": { - "class_name": "InovelliStartupDefaultLevel", + "class_name": "NumberConfigurationEntity", "available": true, "state": 255 } @@ -1483,11 +1483,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Output mode", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-output_mode", "migrate_unique_ids": [], "platform": "select", - "class_name": "InovelliOutputModeEntity", + "class_name": "ZCLEnumSelectEntity", "translation_key": "output_mode", "translation_placeholders": null, "device_class": null, @@ -1507,18 +1507,18 @@ ] }, "state": { - "class_name": "InovelliOutputModeEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, "state": "OnOff" } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Smart fan LED display levels", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-smart_fan_led_display_levels", "migrate_unique_ids": [], "platform": "select", - "class_name": "InovelliFanLedScalingModeEntity", + "class_name": "ZCLEnumSelectEntity", "translation_key": "smart_fan_led_display_levels", "translation_placeholders": null, "device_class": null, @@ -1547,18 +1547,18 @@ ] }, "state": { - "class_name": "InovelliFanLedScalingModeEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, "state": "Adaptive" } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Switch type", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-switch_type", "migrate_unique_ids": [], "platform": "select", - "class_name": "InovelliFanSwitchTypeEntity", + "class_name": "ZCLEnumSelectEntity", "translation_key": "switch_type", "translation_placeholders": null, "device_class": null, @@ -1578,7 +1578,7 @@ ] }, "state": { - "class_name": "InovelliFanSwitchTypeEntity", + "class_name": "ZCLEnumSelectEntity", "available": true, "state": "Load Only" } @@ -1643,11 +1643,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Internal temperature", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561", "migrate_unique_ids": [], "platform": "sensor", - "class_name": "InovelliInternalTemperature", + "class_name": "Sensor", "translation_key": "internal_temp_monitor", "translation_placeholders": null, "device_class": "temperature", @@ -1664,18 +1664,18 @@ "unit": "\u00b0C" }, "state": { - "class_name": "InovelliInternalTemperature", + "class_name": "Sensor", "available": true, "state": null } }, { "info_object": { - "fallback_name": null, + "fallback_name": "Overheat protection", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-overheated", "migrate_unique_ids": [], "platform": "sensor", - "class_name": "InovelliOverheated", + "class_name": "EnumSensor", "translation_key": "overheated", "translation_placeholders": null, "device_class": "enum", @@ -1692,7 +1692,7 @@ "unit": null }, "state": { - "class_name": "InovelliOverheated", + "class_name": "EnumSensor", "available": true, "state": "Normal" } @@ -1701,11 +1701,11 @@ "switch": [ { "info_object": { - "fallback_name": null, + "fallback_name": "Aux switch scenes", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-aux_switch_scenes", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliAuxSwitchScenes", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "aux_switch_scenes", "translation_placeholders": null, "device_class": null, @@ -1725,7 +1725,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliAuxSwitchScenes", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -1733,11 +1733,43 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Disable config 2x tap to clear notifications", + "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-disable_clear_notifications_double_tap", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "disable_clear_notifications_double_tap", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:03:3d:90:21", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "disable_clear_notifications_double_tap", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Double tap down enabled", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-double_tap_down_enabled", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliDoubleTapDownEnabled", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "double_tap_down_enabled", "translation_placeholders": null, "device_class": null, @@ -1757,7 +1789,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliDoubleTapDownEnabled", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -1765,11 +1797,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Double tap up enabled", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-double_tap_up_enabled", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliDoubleTapUpEnabled", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "double_tap_up_enabled", "translation_placeholders": null, "device_class": null, @@ -1789,7 +1821,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliDoubleTapUpEnabled", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -1797,11 +1829,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Firmware progress LED", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-firmware_progress_led", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliFirmwareProgressLED", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "firmware_progress_led", "translation_placeholders": null, "device_class": null, @@ -1821,7 +1853,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliFirmwareProgressLED", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": true, "inverted": false @@ -1829,11 +1861,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Invert switch", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-invert_switch", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliInvertSwitch", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "invert_switch", "translation_placeholders": null, "device_class": null, @@ -1853,7 +1885,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliInvertSwitch", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -1861,11 +1893,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Local protection", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-local_protection", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliLocalProtection", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "local_protection", "translation_placeholders": null, "device_class": null, @@ -1885,7 +1917,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliLocalProtection", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -1893,11 +1925,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Only 1 LED mode", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-on_off_led_mode", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliOnOffLEDMode", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "one_led_mode", "translation_placeholders": null, "device_class": null, @@ -1917,7 +1949,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliOnOffLEDMode", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -1925,11 +1957,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Smart bulb mode", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-smart_bulb_mode", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliSmartBulbMode", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "smart_bulb_mode", "translation_placeholders": null, "device_class": null, @@ -1949,7 +1981,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliSmartBulbMode", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false @@ -1957,11 +1989,11 @@ }, { "info_object": { - "fallback_name": null, + "fallback_name": "Smart fan mode", "unique_id": "ab:cd:ef:12:03:3d:90:21-1-64561-smart_fan_mode", "migrate_unique_ids": [], "platform": "switch", - "class_name": "InovelliSmartFanMode", + "class_name": "ConfigurableAttributeSwitch", "translation_key": "smart_fan_mode", "translation_placeholders": null, "device_class": null, @@ -1981,7 +2013,7 @@ "on_value": 1 }, "state": { - "class_name": "InovelliSmartFanMode", + "class_name": "ConfigurableAttributeSwitch", "available": true, "state": false, "inverted": false diff --git a/tests/data/devices/inovelli-vzm36.json b/tests/data/devices/inovelli-vzm36.json new file mode 100644 index 000000000..e7bfb3881 --- /dev/null +++ b/tests/data/devices/inovelli-vzm36.json @@ -0,0 +1,2025 @@ +{ + "version": 2, + "ieee": "ab:cd:ef:12:25:9f:47:fc", + "nwk": "0x253A", + "manufacturer": "Inovelli", + "model": "VZM36", + "friendly_manufacturer": "Inovelli", + "friendly_model": "VZM36", + "name": "Inovelli VZM36", + "quirk_applied": true, + "quirk_class": "zhaquirks.inovelli.VZM36:(Inovelli / VZM36)", + "exposes_features": [], + "manufacturer_code": 4655, + "power_source": "Mains", + "lqi": null, + "rssi": null, + "last_seen": "2025-11-24T04:45:21.574337+00:00", + "available": true, + "device_type": "Router", + "active_coordinator": false, + "node_descriptor": { + "logical_type": "Router", + "complex_descriptor_available": false, + "user_descriptor_available": false, + "reserved": 0, + "aps_flags": 0, + "frequency_band": 8, + "mac_capability_flags": 142, + "manufacturer_code": 4655, + "maximum_buffer_size": 82, + "maximum_incoming_transfer_size": 500, + "server_mask": 11264, + "maximum_outgoing_transfer_size": 500, + "descriptor_capability_field": 0 + }, + "endpoints": { + "1": { + "profile_id": 260, + "device_type": { + "name": "DIMMABLE_LIGHT", + "id": 257 + }, + "in_clusters": [ + { + "cluster_id": "0x0000", + "endpoint_attribute": "basic", + "attributes": [ + { + "id": "0x0004", + "name": "manufacturer", + "zcl_type": "string", + "value": "Inovelli" + }, + { + "id": "0x0005", + "name": "model", + "zcl_type": "string", + "value": "VZM36" + }, + { + "id": "0x4000", + "name": "sw_build_id", + "zcl_type": "string", + "value": "1.00" + } + ] + }, + { + "cluster_id": "0x0003", + "endpoint_attribute": "identify", + "attributes": [] + }, + { + "cluster_id": "0x0004", + "endpoint_attribute": "groups", + "attributes": [] + }, + { + "cluster_id": "0x0005", + "endpoint_attribute": "scenes", + "attributes": [] + }, + { + "cluster_id": "0x0006", + "endpoint_attribute": "on_off", + "attributes": [ + { + "id": "0x0000", + "name": "on_off", + "zcl_type": "bool", + "value": 0 + }, + { + "id": "0x4003", + "name": "start_up_on_off", + "zcl_type": "enum8", + "value": 255 + } + ] + }, + { + "cluster_id": "0x0008", + "endpoint_attribute": "level", + "attributes": [ + { + "id": "0x0000", + "name": "current_level", + "zcl_type": "uint8", + "value": 128 + }, + { + "id": "0x0014", + "name": "default_move_rate", + "zcl_type": "uint8", + "value": 0 + }, + { + "id": "0x0013", + "name": "off_transition_time", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0011", + "name": "on_level", + "zcl_type": "uint8", + "value": 255 + }, + { + "id": "0x0010", + "name": "on_off_transition_time", + "zcl_type": "uint16", + "value": 25 + }, + { + "id": "0x0012", + "name": "on_transition_time", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x4000", + "name": "start_up_current_level", + "zcl_type": "uint8", + "value": 255 + } + ] + }, + { + "cluster_id": "0x0b05", + "endpoint_attribute": "diagnostic", + "attributes": [] + }, + { + "cluster_id": "0x1000", + "endpoint_attribute": "lightlink", + "attributes": [] + }, + { + "cluster_id": "0xfc31", + "endpoint_attribute": "inovelli_vzm31sn_cluster", + "attributes": [] + }, + { + "cluster_id": "0xfc57", + "endpoint_attribute": "works_with_all_hubs", + "attributes": [] + } + ], + "out_clusters": [ + { + "cluster_id": "0x0019", + "endpoint_attribute": "ota", + "attributes": [ + { + "id": "0x0002", + "name": "current_file_version", + "zcl_type": "uint32", + "unsupported": true + } + ] + } + ] + }, + "2": { + "profile_id": 260, + "device_type": { + "name": "DIMMABLE_LIGHT", + "id": 257 + }, + "in_clusters": [ + { + "cluster_id": "0x0000", + "endpoint_attribute": "basic", + "attributes": [] + }, + { + "cluster_id": "0x0003", + "endpoint_attribute": "identify", + "attributes": [] + }, + { + "cluster_id": "0x0004", + "endpoint_attribute": "groups", + "attributes": [] + }, + { + "cluster_id": "0x0005", + "endpoint_attribute": "scenes", + "attributes": [] + }, + { + "cluster_id": "0x0006", + "endpoint_attribute": "on_off", + "attributes": [ + { + "id": "0x0000", + "name": "on_off", + "zcl_type": "bool", + "value": 0 + }, + { + "id": "0x4003", + "name": "start_up_on_off", + "zcl_type": "enum8", + "value": 255 + } + ] + }, + { + "cluster_id": "0x0008", + "endpoint_attribute": "level", + "attributes": [ + { + "id": "0x0000", + "name": "current_level", + "zcl_type": "uint8", + "value": 83 + }, + { + "id": "0x0014", + "name": "default_move_rate", + "zcl_type": "uint8", + "value": 0 + }, + { + "id": "0x0013", + "name": "off_transition_time", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x0011", + "name": "on_level", + "zcl_type": "uint8", + "value": 255 + }, + { + "id": "0x0010", + "name": "on_off_transition_time", + "zcl_type": "uint16", + "value": 25 + }, + { + "id": "0x0012", + "name": "on_transition_time", + "zcl_type": "uint16", + "unsupported": true + }, + { + "id": "0x4000", + "name": "start_up_current_level", + "zcl_type": "uint8", + "value": 255 + } + ] + }, + { + "cluster_id": "0x0202", + "endpoint_attribute": "fan", + "attributes": [ + { + "id": "0x0000", + "name": "fan_mode", + "zcl_type": "enum8", + "value": 0 + }, + { + "id": "0x0001", + "name": "fan_mode_sequence", + "zcl_type": "enum8", + "value": 2 + } + ] + }, + { + "cluster_id": "0x0b05", + "endpoint_attribute": "diagnostic", + "attributes": [] + }, + { + "cluster_id": "0x1000", + "endpoint_attribute": "lightlink", + "attributes": [] + }, + { + "cluster_id": "0xfc31", + "endpoint_attribute": "inovelli_vzm31sn_cluster", + "attributes": [] + } + ], + "out_clusters": [ + { + "cluster_id": "0x0019", + "endpoint_attribute": "ota", + "attributes": [ + { + "id": "0x0002", + "name": "current_file_version", + "zcl_type": "uint32", + "unsupported": true + } + ] + } + ] + }, + "242": { + "profile_id": 41440, + "device_type": { + "name": "PROXY_BASIC", + "id": 97 + }, + "in_clusters": [], + "out_clusters": [ + { + "cluster_id": "0x0021", + "endpoint_attribute": "green_power", + "attributes": [] + } + ] + } + }, + "original_signature": { + "manufacturer": "Inovelli", + "model": "VZM36", + "node_desc": { + "logical_type": 1, + "complex_descriptor_available": 0, + "user_descriptor_available": 0, + "reserved": 0, + "aps_flags": 0, + "frequency_band": 8, + "mac_capability_flags": 142, + "manufacturer_code": 4655, + "maximum_buffer_size": 82, + "maximum_incoming_transfer_size": 500, + "server_mask": 11264, + "maximum_outgoing_transfer_size": 500, + "descriptor_capability_field": 0 + }, + "endpoints": { + "1": { + "profile_id": "0x0104", + "device_type": "0x0101", + "input_clusters": [ + "0x0000", + "0x0003", + "0x0004", + "0x0005", + "0x0006", + "0x0008", + "0x0b05", + "0x1000", + "0xfc31", + "0xfc57" + ], + "output_clusters": [ + "0x0019" + ] + }, + "2": { + "profile_id": "0x0104", + "device_type": "0x0101", + "input_clusters": [ + "0x0000", + "0x0003", + "0x0004", + "0x0005", + "0x0006", + "0x0008", + "0x0202", + "0x0b05", + "0x1000", + "0xfc31" + ], + "output_clusters": [ + "0x0019" + ] + }, + "242": { + "profile_id": "0xa1e0", + "device_type": "0x0061", + "input_clusters": [], + "output_clusters": [ + "0x0021" + ] + } + } + }, + "zha_lib_entities": { + "button": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-3", + "migrate_unique_ids": [], + "platform": "button", + "class_name": "IdentifyButton", + "translation_key": null, + "translation_placeholders": null, + "device_class": "identify", + "state_class": null, + "entity_category": "diagnostic", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "command": "identify", + "args": [ + 5 + ], + "kwargs": {} + }, + "state": { + "class_name": "IdentifyButton", + "available": true + } + } + ], + "fan": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-514", + "migrate_unique_ids": [], + "platform": "fan", + "class_name": "Fan", + "translation_key": "fan", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "preset_modes": [ + "on", + "auto", + "smart" + ], + "supported_features": 49, + "speed_count": 3, + "speed_list": [ + "off", + "low", + "medium", + "high", + "on", + "auto", + "smart" + ] + }, + "state": { + "class_name": "Fan", + "available": true, + "preset_mode": null, + "percentage": 0, + "is_on": false, + "speed": "off" + } + } + ], + "light": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1", + "migrate_unique_ids": [], + "platform": "light", + "class_name": "Light", + "translation_key": "light", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "effect_list": [ + "off" + ], + "supported_features": 40, + "min_mireds": 153, + "max_mireds": 500 + }, + "state": { + "class_name": "Light", + "available": true, + "on": false, + "brightness": 128, + "xy_color": null, + "color_temp": null, + "effect_list": [ + "off" + ], + "effect": "off", + "supported_features": 40, + "color_mode": "brightness", + "supported_color_modes": [ + "brightness", + "onoff" + ], + "off_with_transition": false, + "off_brightness": null + }, + "extra_state_attributes": [ + "off_brightness", + "off_with_transition" + ] + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2", + "migrate_unique_ids": [], + "platform": "light", + "class_name": "Light", + "translation_key": "light", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": null, + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "effect_list": [ + "off" + ], + "supported_features": 40, + "min_mireds": 153, + "max_mireds": 500 + }, + "state": { + "class_name": "Light", + "available": true, + "on": false, + "brightness": 83, + "xy_color": null, + "color_temp": null, + "effect_list": [ + "off" + ], + "effect": "off", + "supported_features": 40, + "color_mode": "brightness", + "supported_color_modes": [ + "brightness", + "onoff" + ], + "off_with_transition": false, + "off_brightness": null + }, + "extra_state_attributes": [ + "off_brightness", + "off_with_transition" + ] + } + ], + "number": [ + { + "info_object": { + "fallback_name": "Automatic switch shutoff timer", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-auto_off_timer", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "auto_off_timer", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 32767, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote default dimming level", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-default_level_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "default_level_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote dimming down speed", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-dimming_speed_down_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_down_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote dimming up speed", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-dimming_speed_up_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_up_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 126, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on color", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-led_color_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_color_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on intensity", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-led_intensity_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_intensity_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 100, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Maximum load dimming level", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-maximum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "maximum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Minimum load dimming level", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-minimum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "minimum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 1, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote ramp rate off to on", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-ramp_rate_off_to_on_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_off_to_on_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote ramp rate on to off", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-ramp_rate_on_to_off_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_on_to_off_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Start-up default dimming level", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-state_after_power_restored", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "state_after_power_restored", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-8-default_move_rate", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "DefaultMoveRateConfigurationEntity", + "translation_key": "default_move_rate", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": false, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "DefaultMoveRateConfigurationEntity", + "available": true, + "state": 0 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-8-on_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "OnLevelConfigurationEntity", + "translation_key": "on_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "OnLevelConfigurationEntity", + "available": true, + "state": 255 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-8-on_off_transition_time", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "OnOffTransitionTimeConfigurationEntity", + "translation_key": "on_off_transition_time", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 65535, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "OnOffTransitionTimeConfigurationEntity", + "available": true, + "state": 25 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-8-start_up_current_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "StartUpCurrentLevelConfigurationEntity", + "translation_key": "start_up_current_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "StartUpCurrentLevelConfigurationEntity", + "available": true, + "state": 255 + } + }, + { + "info_object": { + "fallback_name": "Automatic switch shutoff timer", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-auto_off_timer", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "auto_off_timer", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 32767, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote default dimming level", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-default_level_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "default_level_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote dimming down speed", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-dimming_speed_down_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_down_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote dimming up speed", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-dimming_speed_up_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "dimming_speed_up_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 126, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on color", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-led_color_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_color_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Default all LED on intensity", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-led_intensity_when_on", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "led_intensity_when_on", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 100, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Maximum load dimming level", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-maximum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "maximum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 2, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Minimum load dimming level", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-minimum_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "minimum_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 1, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote ramp rate off to on", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-ramp_rate_off_to_on_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_off_to_on_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Remote ramp rate on to off", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-ramp_rate_on_to_off_remote", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "ramp_rate_on_to_off_remote", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 127, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Start-up default dimming level", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-state_after_power_restored", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "NumberConfigurationEntity", + "translation_key": "state_after_power_restored", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "NumberConfigurationEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-8-default_move_rate", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "DefaultMoveRateConfigurationEntity", + "translation_key": "default_move_rate", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": false, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 254, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "DefaultMoveRateConfigurationEntity", + "available": true, + "state": 0 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-8-on_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "OnLevelConfigurationEntity", + "translation_key": "on_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "OnLevelConfigurationEntity", + "available": true, + "state": 255 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-8-on_off_transition_time", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "OnOffTransitionTimeConfigurationEntity", + "translation_key": "on_off_transition_time", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 65535, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "OnOffTransitionTimeConfigurationEntity", + "available": true, + "state": 25 + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-8-start_up_current_level", + "migrate_unique_ids": [], + "platform": "number", + "class_name": "StartUpCurrentLevelConfigurationEntity", + "translation_key": "start_up_current_level", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "mode": "auto", + "native_max_value": 255, + "native_min_value": 0, + "native_step": 1.0, + "native_unit_of_measurement": null + }, + "state": { + "class_name": "StartUpCurrentLevelConfigurationEntity", + "available": true, + "state": 255 + } + } + ], + "select": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-6-StartUpOnOff", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "StartupOnOffSelectEntity", + "translation_key": "start_up_on_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "StartUpOnOff", + "options": [ + "Off", + "On", + "Toggle", + "PreviousValue" + ] + }, + "state": { + "class_name": "StartupOnOffSelectEntity", + "available": true, + "state": "PreviousValue" + } + }, + { + "info_object": { + "fallback_name": "Increased non-neutral output", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-increased_non_neutral_output", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "increased_non_neutral_output", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliNonNeutralOutput", + "options": [ + "Low", + "High" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Dimming mode", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-leading_or_trailing_edge", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "leading_or_trailing_edge", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliDimmingMode", + "options": [ + "LeadingEdge", + "TrailingEdge" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Output mode", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-output_mode", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "output_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "enum": "InovelliOutputMode", + "options": [ + "Dimmer", + "OnOff" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-6-StartUpOnOff", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "StartupOnOffSelectEntity", + "translation_key": "start_up_on_off", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "enum": "StartUpOnOff", + "options": [ + "Off", + "On", + "Toggle", + "PreviousValue" + ] + }, + "state": { + "class_name": "StartupOnOffSelectEntity", + "available": true, + "state": "PreviousValue" + } + }, + { + "info_object": { + "fallback_name": "Output mode", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-output_mode", + "migrate_unique_ids": [], + "platform": "select", + "class_name": "ZCLEnumSelectEntity", + "translation_key": "output_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "enum": "InovelliOutputMode", + "options": [ + "Dimmer", + "OnOff" + ] + }, + "state": { + "class_name": "ZCLEnumSelectEntity", + "available": true, + "state": null + } + } + ], + "sensor": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-0-lqi", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "LQISensor", + "translation_key": "lqi", + "translation_placeholders": null, + "device_class": null, + "state_class": "measurement", + "entity_category": "diagnostic", + "entity_registry_enabled_default": false, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": null + }, + "state": { + "class_name": "LQISensor", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-0-rssi", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "RSSISensor", + "translation_key": "rssi", + "translation_placeholders": null, + "device_class": "signal_strength", + "state_class": "measurement", + "entity_category": "diagnostic", + "entity_registry_enabled_default": false, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": "dBm" + }, + "state": { + "class_name": "RSSISensor", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Internal temperature", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "Sensor", + "translation_key": "internal_temp_monitor", + "translation_placeholders": null, + "device_class": "temperature", + "state_class": "measurement", + "entity_category": "diagnostic", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": "\u00b0C" + }, + "state": { + "class_name": "Sensor", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Overheat protection", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-overheated", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "EnumSensor", + "translation_key": "overheated", + "translation_placeholders": null, + "device_class": "enum", + "state_class": null, + "entity_category": "diagnostic", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": null + }, + "state": { + "class_name": "EnumSensor", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Internal temperature", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "Sensor", + "translation_key": "internal_temp_monitor", + "translation_placeholders": null, + "device_class": "temperature", + "state_class": "measurement", + "entity_category": "diagnostic", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": "\u00b0C" + }, + "state": { + "class_name": "Sensor", + "available": true, + "state": null + } + }, + { + "info_object": { + "fallback_name": "Overheat protection", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-overheated", + "migrate_unique_ids": [], + "platform": "sensor", + "class_name": "EnumSensor", + "translation_key": "overheated", + "translation_placeholders": null, + "device_class": "enum", + "state_class": null, + "entity_category": "diagnostic", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "suggested_display_precision": null, + "unit": null + }, + "state": { + "class_name": "EnumSensor", + "available": true, + "state": null + } + } + ], + "switch": [ + { + "info_object": { + "fallback_name": "Smart bulb mode", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-64561-smart_bulb_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "smart_bulb_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "attribute_name": "smart_bulb_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + }, + { + "info_object": { + "fallback_name": "Smart bulb mode", + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-64561-smart_bulb_mode", + "migrate_unique_ids": [], + "platform": "switch", + "class_name": "ConfigurableAttributeSwitch", + "translation_key": "smart_bulb_mode", + "translation_placeholders": null, + "device_class": null, + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "attribute_name": "smart_bulb_mode", + "invert_attribute_name": null, + "force_inverted": false, + "off_value": 0, + "on_value": 1 + }, + "state": { + "class_name": "ConfigurableAttributeSwitch", + "available": true, + "state": false, + "inverted": false + } + } + ], + "update": [ + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-1-25-firmware_update", + "migrate_unique_ids": [], + "platform": "update", + "class_name": "FirmwareUpdateEntity", + "translation_key": null, + "translation_placeholders": null, + "device_class": "firmware", + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 1, + "available": true, + "group_id": null, + "supported_features": 7 + }, + "state": { + "class_name": "FirmwareUpdateEntity", + "available": true, + "installed_version": null, + "in_progress": false, + "update_percentage": null, + "latest_version": null, + "release_summary": null, + "release_notes": null, + "release_url": null + } + }, + { + "info_object": { + "fallback_name": null, + "unique_id": "ab:cd:ef:12:25:9f:47:fc-2-25-firmware_update", + "migrate_unique_ids": [], + "platform": "update", + "class_name": "FirmwareUpdateEntity", + "translation_key": null, + "translation_placeholders": null, + "device_class": "firmware", + "state_class": null, + "entity_category": "config", + "entity_registry_enabled_default": true, + "enabled": true, + "primary": false, + "device_ieee": "ab:cd:ef:12:25:9f:47:fc", + "endpoint_id": 2, + "available": true, + "group_id": null, + "supported_features": 7 + }, + "state": { + "class_name": "FirmwareUpdateEntity", + "available": true, + "installed_version": null, + "in_progress": false, + "update_percentage": null, + "latest_version": null, + "release_summary": null, + "release_notes": null, + "release_url": null + } + } + ] + }, + "neighbors": [], + "routes": [] +} \ No newline at end of file diff --git a/zha/application/platforms/number/__init__.py b/zha/application/platforms/number/__init__.py index 40f4f8e84..55a0eb36a 100644 --- a/zha/application/platforms/number/__init__.py +++ b/zha/application/platforms/number/__init__.py @@ -34,7 +34,6 @@ ) from zha.application.platforms.const import ( IKEA_AIR_PURIFIER_CLUSTER, - INOVELLI_CLUSTER, SINOPE_MANUFACTURER_CLUSTER, TUYA_MANUFACTURER_CLUSTER, ) @@ -790,421 +789,6 @@ class TiRouterTransmitPower(NumberConfigurationEntity): } -@register_entity(INOVELLI_CLUSTER) -class InovelliRemoteDimmingUpSpeed(NumberConfigurationEntity): - """Inovelli remote dimming up speed configuration entity.""" - - _unique_id_suffix = "dimming_speed_up_remote" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 126 - _attribute_name = "dimming_speed_up_remote" - _attr_translation_key: str = "dimming_speed_up_remote" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliButtonDelay(NumberConfigurationEntity): - """Inovelli button delay configuration entity.""" - - _unique_id_suffix = "button_delay" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 9 - _attribute_name = "button_delay" - _attr_translation_key: str = "button_delay" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliLocalDimmingUpSpeed(NumberConfigurationEntity): - """Inovelli local dimming up speed configuration entity.""" - - _unique_id_suffix = "dimming_speed_up_local" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 127 - _attribute_name = "dimming_speed_up_local" - _attr_translation_key: str = "dimming_speed_up_local" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliLocalRampRateOffToOn(NumberConfigurationEntity): - """Inovelli off to on local ramp rate configuration entity.""" - - _unique_id_suffix = "ramp_rate_off_to_on_local" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 127 - _attribute_name = "ramp_rate_off_to_on_local" - _attr_translation_key: str = "ramp_rate_off_to_on_local" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliRemoteDimmingSpeedOffToOn(NumberConfigurationEntity): - """Inovelli off to on remote ramp rate configuration entity.""" - - _unique_id_suffix = "ramp_rate_off_to_on_remote" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 127 - _attribute_name = "ramp_rate_off_to_on_remote" - _attr_translation_key: str = "ramp_rate_off_to_on_remote" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliRemoteDimmingDownSpeed(NumberConfigurationEntity): - """Inovelli remote dimming down speed configuration entity.""" - - _unique_id_suffix = "dimming_speed_down_remote" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 127 - _attribute_name = "dimming_speed_down_remote" - _attr_translation_key: str = "dimming_speed_down_remote" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliLocalDimmingDownSpeed(NumberConfigurationEntity): - """Inovelli local dimming down speed configuration entity.""" - - _unique_id_suffix = "dimming_speed_down_local" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 127 - _attribute_name = "dimming_speed_down_local" - _attr_translation_key: str = "dimming_speed_down_local" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliLocalRampRateOnToOff(NumberConfigurationEntity): - """Inovelli local on to off ramp rate configuration entity.""" - - _unique_id_suffix = "ramp_rate_on_to_off_local" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 127 - _attribute_name = "ramp_rate_on_to_off_local" - _attr_translation_key: str = "ramp_rate_on_to_off_local" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliRemoteDimmingSpeedOnToOff(NumberConfigurationEntity): - """Inovelli remote on to off ramp rate configuration entity.""" - - _unique_id_suffix = "ramp_rate_on_to_off_remote" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 127 - _attribute_name = "ramp_rate_on_to_off_remote" - _attr_translation_key: str = "ramp_rate_on_to_off_remote" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliMinimumLoadDimmingLevel(NumberConfigurationEntity): - """Inovelli minimum load dimming level configuration entity.""" - - _unique_id_suffix = "minimum_level" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 1 - _attr_native_max_value: float = 254 - _attribute_name = "minimum_level" - _attr_translation_key: str = "minimum_level" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliMaximumLoadDimmingLevel(NumberConfigurationEntity): - """Inovelli maximum load dimming level configuration entity.""" - - _unique_id_suffix = "maximum_level" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 2 - _attr_native_max_value: float = 255 - _attribute_name = "maximum_level" - _attr_translation_key: str = "maximum_level" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliAutoShutoffTimer(NumberConfigurationEntity): - """Inovelli automatic switch shutoff timer configuration entity.""" - - _unique_id_suffix = "auto_off_timer" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 32767 - _attribute_name = "auto_off_timer" - _attr_translation_key: str = "auto_off_timer" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliLocalDefaultLevel(NumberConfigurationEntity): - """Inovelli local default dimming/fan level configuration entity.""" - - _unique_id_suffix = "default_level_local" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 255 - _attribute_name = "default_level_local" - _attr_translation_key: str = "default_level_local" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliRemoteDefaultLevel(NumberConfigurationEntity): - """Inovelli remote default dimming/fan level configuration entity.""" - - _unique_id_suffix = "default_level_remote" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 255 - _attribute_name = "default_level_remote" - _attr_translation_key: str = "default_level_remote" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliStartupDefaultLevel(NumberConfigurationEntity): - """Inovelli start-up default dimming/fan level configuration entity.""" - - _unique_id_suffix = "state_after_power_restored" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 255 - _attribute_name = "state_after_power_restored" - _attr_translation_key: str = "state_after_power_restored" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliQuickStartTime(NumberConfigurationEntity): - """Inovelli fan quick start time configuration entity.""" - - _unique_id_suffix = "quick_start_time" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 10 - _attribute_name = "quick_start_time" - _attr_translation_key: str = "quick_start_time" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - models=frozenset({"VZM35-SN"}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliLoadLevelIndicatorTimeout(NumberConfigurationEntity): - """Inovelli load level indicator timeout configuration entity.""" - - _unique_id_suffix = "load_level_indicator_timeout" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 11 - _attribute_name = "load_level_indicator_timeout" - _attr_translation_key: str = "load_level_indicator_timeout" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDefaultAllLEDOnColor(NumberConfigurationEntity): - """Inovelli default all led color when on configuration entity.""" - - _unique_id_suffix = "led_color_when_on" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 255 - _attribute_name = "led_color_when_on" - _attr_translation_key: str = "led_color_when_on" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDefaultAllLEDOffColor(NumberConfigurationEntity): - """Inovelli default all led color when off configuration entity.""" - - _unique_id_suffix = "led_color_when_off" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 255 - _attribute_name = "led_color_when_off" - _attr_translation_key: str = "led_color_when_off" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDefaultAllLEDOnIntensity(NumberConfigurationEntity): - """Inovelli default all led intensity when on configuration entity.""" - - _unique_id_suffix = "led_intensity_when_on" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 100 - _attribute_name = "led_intensity_when_on" - _attr_translation_key: str = "led_intensity_when_on" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDefaultAllLEDOffIntensity(NumberConfigurationEntity): - """Inovelli default all led intensity when off configuration entity.""" - - _unique_id_suffix = "led_intensity_when_off" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 100 - _attribute_name = "led_intensity_when_off" - _attr_translation_key: str = "led_intensity_when_off" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDoubleTapUpLevel(NumberConfigurationEntity): - """Inovelli double tap up level configuration entity.""" - - _unique_id_suffix = "double_tap_up_level" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 2 - _attr_native_max_value: float = 254 - _attribute_name = "double_tap_up_level" - _attr_translation_key: str = "double_tap_up_level" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDoubleTapDownLevel(NumberConfigurationEntity): - """Inovelli double tap down level configuration entity.""" - - _unique_id_suffix = "double_tap_down_level" - _attr_entity_category = EntityCategory.CONFIG - _attr_native_min_value: float = 0 - _attr_native_max_value: float = 254 - _attribute_name = "double_tap_down_level" - _attr_translation_key: str = "double_tap_down_level" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - @register_entity(AQARA_OPPLE_CLUSTER) class AqaraPetFeederServingSize(NumberConfigurationEntity): """Aqara pet feeder serving size configuration entity.""" diff --git a/zha/application/platforms/select.py b/zha/application/platforms/select.py index 5131bf6c6..5d70f5e8e 100644 --- a/zha/application/platforms/select.py +++ b/zha/application/platforms/select.py @@ -41,7 +41,6 @@ register_entity, ) from zha.application.platforms.const import ( - INOVELLI_CLUSTER, SINOPE_MANUFACTURER_CLUSTER, TUYA_MANUFACTURER_CLUSTER, ) @@ -701,175 +700,6 @@ class AqaraT2RelayDecoupledMode(ZCLEnumSelectEntity): ) -class InovelliOutputMode(types.enum1): - """Inovelli output mode.""" - - Dimmer = 0x00 - OnOff = 0x01 - - -@register_entity(INOVELLI_CLUSTER) -class InovelliOutputModeEntity(ZCLEnumSelectEntity): - """Inovelli output mode control.""" - - _unique_id_suffix = "output_mode" - _attribute_name = "output_mode" - _enum = InovelliOutputMode - _attr_translation_key: str = "output_mode" - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -class InovelliSwitchType(types.enum8): - """Inovelli switch mode.""" - - Single_Pole = 0x00 - Three_Way_Dumb = 0x01 - Three_Way_AUX = 0x02 - Single_Pole_Full_Sine = 0x03 - - -@register_entity(INOVELLI_CLUSTER) -class InovelliSwitchTypeEntity(ZCLEnumSelectEntity): - """Inovelli switch type control.""" - - _unique_id_suffix = "switch_type" - _attribute_name = "switch_type" - _enum = InovelliSwitchType - _attr_translation_key: str = "switch_type" - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - models=frozenset({"VZM31-SN"}), - ) - - -class InovelliFanSwitchType(types.enum1): - """Inovelli fan switch mode.""" - - Load_Only = 0x00 - Three_Way_AUX = 0x01 - - -@register_entity(INOVELLI_CLUSTER) -class InovelliFanSwitchTypeEntity(ZCLEnumSelectEntity): - """Inovelli fan switch type control.""" - - _unique_id_suffix = "switch_type" - _attribute_name = "switch_type" - _enum = InovelliFanSwitchType - _attr_translation_key: str = "switch_type" - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - models=frozenset({"VZM35-SN"}), - ) - - -class InovelliLedScalingMode(types.enum1): - """Inovelli led mode.""" - - VZM31SN = 0x00 - LZW31SN = 0x01 - - -@register_entity(INOVELLI_CLUSTER) -class InovelliLedScalingModeEntity(ZCLEnumSelectEntity): - """Inovelli led mode control.""" - - _unique_id_suffix = "led_scaling_mode" - _attribute_name = "led_scaling_mode" - _enum = InovelliLedScalingMode - _attr_translation_key: str = "led_scaling_mode" - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -class InovelliFanLedScalingMode(types.enum8): - """Inovelli fan led mode.""" - - VZM31SN = 0x00 - Grade_1 = 0x01 - Grade_2 = 0x02 - Grade_3 = 0x03 - Grade_4 = 0x04 - Grade_5 = 0x05 - Grade_6 = 0x06 - Grade_7 = 0x07 - Grade_8 = 0x08 - Grade_9 = 0x09 - Adaptive = 0x0A - - -@register_entity(INOVELLI_CLUSTER) -class InovelliFanLedScalingModeEntity(ZCLEnumSelectEntity): - """Inovelli fan switch led mode control.""" - - _unique_id_suffix = "smart_fan_led_display_levels" - _attribute_name = "smart_fan_led_display_levels" - _enum = InovelliFanLedScalingMode - _attr_translation_key: str = "smart_fan_led_display_levels" - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - models=frozenset({"VZM35-SN"}), - ) - - -class InovelliNonNeutralOutput(types.enum1): - """Inovelli non neutral output selection.""" - - Low = 0x00 - High = 0x01 - - -@register_entity(INOVELLI_CLUSTER) -class InovelliNonNeutralOutputEntity(ZCLEnumSelectEntity): - """Inovelli non neutral output control.""" - - _unique_id_suffix = "increased_non_neutral_output" - _attribute_name = "increased_non_neutral_output" - _enum = InovelliNonNeutralOutput - _attr_translation_key: str = "increased_non_neutral_output" - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -class InovelliDimmingMode(types.enum1): - """Inovelli dimming mode selection.""" - - LeadingEdge = 0x00 - TrailingEdge = 0x01 - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDimmingModeEntity(ZCLEnumSelectEntity): - """Inovelli dimming mode control.""" - - _unique_id_suffix = "leading_or_trailing_edge" - _attribute_name = "leading_or_trailing_edge" - _enum = InovelliDimmingMode - _attr_translation_key: str = "leading_or_trailing_edge" - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - models=frozenset({"VZM31-SN", "VZM36"}), - ) - - class AqaraFeedingMode(types.enum8): """Feeding mode.""" diff --git a/zha/application/platforms/sensor/__init__.py b/zha/application/platforms/sensor/__init__.py index 5ac490b1b..b5c390b79 100644 --- a/zha/application/platforms/sensor/__init__.py +++ b/zha/application/platforms/sensor/__init__.py @@ -72,7 +72,6 @@ from zha.application.platforms.climate.const import HVACAction from zha.application.platforms.const import ( IKEA_AIR_PURIFIER_CLUSTER, - INOVELLI_CLUSTER, SMARTTHINGS_HUMIDITY_CLUSTER, SONOFF_CLUSTER, TUYA_MANUFACTURER_CLUSTER, @@ -2703,46 +2702,6 @@ class DeviceTemperature(Sensor): } -@register_entity(INOVELLI_CLUSTER) -class InovelliInternalTemperature(Sensor): - """Switch Internal Temperature Sensor.""" - - _attribute_name = "internal_temp_monitor" - _attr_device_class: SensorDeviceClass = SensorDeviceClass.TEMPERATURE - _attr_state_class: SensorStateClass = SensorStateClass.MEASUREMENT - _attr_translation_key: str = "internal_temp_monitor" - _attr_native_unit_of_measurement = UnitOfTemperature.CELSIUS - _attr_entity_category = EntityCategory.DIAGNOSTIC - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -class InovelliOverheatedState(types.enum8): - """Inovelli overheat protection state.""" - - Normal = 0x00 - Overheated = 0x01 - - -@register_entity(INOVELLI_CLUSTER) -class InovelliOverheated(EnumSensor): - """Sensor that displays the overheat protection state.""" - - _attribute_name = "overheated" - _unique_id_suffix = "overheated" - _attr_translation_key: str = "overheated" - _enum = InovelliOverheatedState - _attr_entity_category = EntityCategory.DIAGNOSTIC - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - @register_entity(CarbonDioxideConcentrationCluster.cluster_id) class CarbonDioxideConcentration(Sensor): """Carbon Dioxide Concentration sensor.""" diff --git a/zha/application/platforms/switch.py b/zha/application/platforms/switch.py index a6474a2ce..18052fe73 100644 --- a/zha/application/platforms/switch.py +++ b/zha/application/platforms/switch.py @@ -40,7 +40,6 @@ ) from zha.application.platforms.const import ( IKEA_AIR_PURIFIER_CLUSTER, - INOVELLI_CLUSTER, SINOPE_MANUFACTURER_CLUSTER, TUYA_MANUFACTURER_CLUSTER, ) @@ -663,187 +662,6 @@ class DisableLed(ConfigurableAttributeSwitch): ) -@register_entity(INOVELLI_CLUSTER) -class InovelliInvertSwitch(ConfigurableAttributeSwitch): - """Inovelli invert switch control.""" - - _unique_id_suffix = "invert_switch" - _attribute_name = "invert_switch" - _attr_translation_key = "invert_switch" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliSmartBulbMode(ConfigurableAttributeSwitch): - """Inovelli smart bulb mode control.""" - - _unique_id_suffix = "smart_bulb_mode" - _attribute_name = "smart_bulb_mode" - _attr_translation_key = "smart_bulb_mode" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliSmartFanMode(ConfigurableAttributeSwitch): - """Inovelli smart fan mode control.""" - - _unique_id_suffix = "smart_fan_mode" - _attribute_name = "smart_fan_mode" - _attr_translation_key = "smart_fan_mode" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - models=frozenset({"VZM35-SN"}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDoubleTapUpEnabled(ConfigurableAttributeSwitch): - """Inovelli double tap up enabled.""" - - _unique_id_suffix = "double_tap_up_enabled" - _attribute_name = "double_tap_up_enabled" - _attr_translation_key = "double_tap_up_enabled" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDoubleTapDownEnabled(ConfigurableAttributeSwitch): - """Inovelli double tap down enabled.""" - - _unique_id_suffix = "double_tap_down_enabled" - _attribute_name = "double_tap_down_enabled" - _attr_translation_key = "double_tap_down_enabled" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliAuxSwitchScenes(ConfigurableAttributeSwitch): - """Inovelli unique aux switch scenes.""" - - _unique_id_suffix = "aux_switch_scenes" - _attribute_name = "aux_switch_scenes" - _attr_translation_key = "aux_switch_scenes" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliBindingOffToOnSyncLevel(ConfigurableAttributeSwitch): - """Inovelli send move to level with on/off to bound devices.""" - - _unique_id_suffix = "binding_off_to_on_sync_level" - _attribute_name = "binding_off_to_on_sync_level" - _attr_translation_key = "binding_off_to_on_sync_level" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliLocalProtection(ConfigurableAttributeSwitch): - """Inovelli local protection control.""" - - _unique_id_suffix = "local_protection" - _attribute_name = "local_protection" - _attr_translation_key = "local_protection" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliOnOffLEDMode(ConfigurableAttributeSwitch): - """Inovelli only 1 LED mode control.""" - - _unique_id_suffix = "on_off_led_mode" - _attribute_name = "on_off_led_mode" - _attr_translation_key = "one_led_mode" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliFirmwareProgressLED(ConfigurableAttributeSwitch): - """Inovelli firmware progress LED control.""" - - _unique_id_suffix = "firmware_progress_led" - _attribute_name = "firmware_progress_led" - _attr_translation_key = "firmware_progress_led" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliRelayClickInOnOffMode(ConfigurableAttributeSwitch): - """Inovelli relay click in on off mode control.""" - - _unique_id_suffix = "relay_click_in_on_off_mode" - _attribute_name = "relay_click_in_on_off_mode" - _attr_translation_key = "relay_click_in_on_off_mode" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - -@register_entity(INOVELLI_CLUSTER) -class InovelliDisableDoubleTapClearNotificationsMode(ConfigurableAttributeSwitch): - """Inovelli disable clear notifications double tap control.""" - - _unique_id_suffix = "disable_clear_notifications_double_tap" - _attribute_name = "disable_clear_notifications_double_tap" - _attr_translation_key = "disable_clear_notifications_double_tap" - - _cluster_id = INOVELLI_CLUSTER - - _cluster_match = ClusterMatch( - server_clusters=frozenset({INOVELLI_CLUSTER}), - ) - - @register_entity(AQARA_OPPLE_CLUSTER) class AqaraPetFeederLEDIndicator(ConfigurableAttributeSwitch): """Representation of a LED indicator configuration entity."""