zigpy / zha-device-handlers

ZHA device handlers bridge the functionality gap created when manufacturers deviate from the ZCL specification, handling deviations and exceptions by parsing custom messages to and from Zigbee devices.
Apache License 2.0
739 stars 675 forks source link

[Device Support Request] IKEA inspelning power monitoring smart plug #3374

Open gllmlbrt opened 2 weeks ago

gllmlbrt commented 2 weeks ago

Problem description

New IKEA inspelning power monitoring smart plug pairs fine and has all the entities in Hass. However power and voltage are reported divided by factor 10.

Solution description

An adjustment of the voltage and power (as a result energy calculation) via a quirk?

Screenshots/Video

Screenshots/Video ![20240920_192819](https://github.com/user-attachments/assets/923c2b36-95d8-4bdc-9aed-e6c24469dad5) ![Screenshot_20240920_192229_Home Assistant](https://github.com/user-attachments/assets/749ce2f8-424e-4621-80cb-43a8a45f8578) ![Screenshot_20240920_192304_Home Assistant](https://github.com/user-attachments/assets/0affc7af-34e4-47e4-9059-18c788568c28)

Device Signature

Device signature ``` { "node_descriptor": { "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": 4476, "maximum_buffer_size": 82, "maximum_incoming_transfer_size": 82, "server_mask": 11264, "maximum_outgoing_transfer_size": 82, "descriptor_capability_field": 0 }, "endpoints": { "1": { "profile_id": "0x0104", "device_type": "0x010a", "input_clusters": [ "0x0000", "0x0003", "0x0004", "0x0005", "0x0006", "0x0008", "0x0702", "0x0b04", "0x1000", "0xfc7c", "0xfc85" ], "output_clusters": [ "0x0019" ] }, "242": { "profile_id": "0xa1e0", "device_type": "0x0061", "input_clusters": [ "0x0021" ], "output_clusters": [ "0x0021" ] } }, "manufacturer": "IKEA of Sweden", "model": "INSPELNING Smart plug", "class": "zigpy.device.Device" ```

Diagnostic information

Diagnostic information ``` { "home_assistant": { "installation_type": "Home Assistant OS", "version": "2024.9.2", "dev": false, "hassio": true, "virtualenv": false, "python_version": "3.12.4", "docker": true, "arch": "aarch64", "timezone": "Europe/Copenhagen", "os_name": "Linux", "os_version": "6.6.46-haos", "supervisor": "2024.09.1", "host_os": "Home Assistant OS 13.1", "docker_version": "26.1.4", "chassis": "embedded", "run_as_root": true }, "integration_manifest": { "domain": "zha", "name": "Zigbee Home Automation", "after_dependencies": [ "onboarding", "usb" ], "codeowners": [ "dmulcahey", "adminiuga", "puddly", "TheJulianJES" ], "config_flow": true, "dependencies": [ "file_upload" ], "documentation": "https://www.home-assistant.io/integrations/zha", "iot_class": "local_polling", "loggers": [ "aiosqlite", "bellows", "crccheck", "pure_pcapy3", "zhaquirks", "zigpy", "zigpy_deconz", "zigpy_xbee", "zigpy_zigate", "zigpy_znp", "zha", "universal_silabs_flasher" ], "requirements": [ "universal-silabs-flasher==0.0.22", "zha==0.0.33" ], "usb": [ { "vid": "10C4", "pid": "EA60", "description": "*2652*", "known_devices": [ "slae.sh cc2652rb stick" ] }, { "vid": "10C4", "pid": "EA60", "description": "*slzb-07*", "known_devices": [ "smlight slzb-07" ] }, { "vid": "1A86", "pid": "55D4", "description": "*sonoff*plus*", "known_devices": [ "sonoff zigbee dongle plus v2" ] }, { "vid": "10C4", "pid": "EA60", "description": "*sonoff*plus*", "known_devices": [ "sonoff zigbee dongle plus" ] }, { "vid": "10C4", "pid": "EA60", "description": "*tubeszb*", "known_devices": [ "TubesZB Coordinator" ] }, { "vid": "1A86", "pid": "7523", "description": "*tubeszb*", "known_devices": [ "TubesZB Coordinator" ] }, { "vid": "1A86", "pid": "7523", "description": "*zigstar*", "known_devices": [ "ZigStar Coordinators" ] }, { "vid": "1CF1", "pid": "0030", "description": "*conbee*", "known_devices": [ "Conbee II" ] }, { "vid": "0403", "pid": "6015", "description": "*conbee*", "known_devices": [ "Conbee III" ] }, { "vid": "10C4", "pid": "8A2A", "description": "*zigbee*", "known_devices": [ "Nortek HUSBZB-1" ] }, { "vid": "0403", "pid": "6015", "description": "*zigate*", "known_devices": [ "ZiGate+" ] }, { "vid": "10C4", "pid": "EA60", "description": "*zigate*", "known_devices": [ "ZiGate" ] }, { "vid": "10C4", "pid": "8B34", "description": "*bv 2010/10*", "known_devices": [ "Bitron Video AV2010/10" ] } ], "zeroconf": [ { "type": "_esphomelib._tcp.local.", "name": "tube*" }, { "type": "_zigate-zigbee-gateway._tcp.local.", "name": "*zigate*" }, { "type": "_zigstar_gw._tcp.local.", "name": "*zigstar*" }, { "type": "_uzg-01._tcp.local.", "name": "uzg-01*" }, { "type": "_slzb-06._tcp.local.", "name": "slzb-06*" }, { "type": "_xzg._tcp.local.", "name": "xzg*" }, { "type": "_czc._tcp.local.", "name": "czc*" } ], "is_built_in": true }, "setup_times": { "null": { "setup": 0.00011784600792452693 }, "c9eb75c7f6c827c4f46baa75ee4c0d68": { "wait_import_platforms": -0.03136135300155729, "config_entry_setup": 28.257591036963277 } }, "data": { "ieee": "**REDACTED**", "nwk": 13641, "manufacturer": "IKEA of Sweden", "model": "INSPELNING Smart plug", "name": "IKEA of Sweden INSPELNING Smart plug", "quirk_applied": false, "quirk_class": "zigpy.device.Device", "quirk_id": null, "manufacturer_code": 4476, "power_source": "Mains", "lqi": 168, "rssi": -58, "last_seen": "2024-09-20T20:02:08", "available": true, "device_type": "Router", "signature": { "node_descriptor": { "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": 4476, "maximum_buffer_size": 82, "maximum_incoming_transfer_size": 82, "server_mask": 11264, "maximum_outgoing_transfer_size": 82, "descriptor_capability_field": 0 }, "endpoints": { "1": { "profile_id": "0x0104", "device_type": "0x010a", "input_clusters": [ "0x0000", "0x0003", "0x0004", "0x0005", "0x0006", "0x0008", "0x0702", "0x0b04", "0x1000", "0xfc7c", "0xfc85" ], "output_clusters": [ "0x0019" ] }, "242": { "profile_id": "0xa1e0", "device_type": "0x0061", "input_clusters": [ "0x0021" ], "output_clusters": [ "0x0021" ] } }, "manufacturer": "IKEA of Sweden", "model": "INSPELNING Smart plug" }, "active_coordinator": false, "entities": [ { "entity_id": "button.ikea_of_sweden_inspelning_smart_plug_identify", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "number.ikea_of_sweden_inspelning_smart_plug_on_off_transition_time", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "number.ikea_of_sweden_inspelning_smart_plug_on_level", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "number.ikea_of_sweden_inspelning_smart_plug_start_up_current_level", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "select.ikea_of_sweden_inspelning_smart_plug_start_up_behavior", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "sensor.ikea_of_sweden_inspelning_smart_plug_current", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "sensor.ikea_of_sweden_inspelning_smart_plug_voltage", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "sensor.ikea_of_sweden_inspelning_smart_plug_rssi", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "sensor.ikea_of_sweden_inspelning_smart_plug_lqi", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "sensor.ikea_of_sweden_inspelning_smart_plug_power", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "sensor.ikea_of_sweden_inspelning_smart_plug_summation_delivered", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "switch.ikea_of_sweden_inspelning_smart_plug_switch", "name": "IKEA of Sweden INSPELNING Smart plug" }, { "entity_id": "update.ikea_of_sweden_inspelning_smart_plug_firmware", "name": "IKEA of Sweden INSPELNING Smart plug" } ], "neighbors": [], "routes": [], "endpoint_names": [ { "name": "ON_OFF_PLUG_IN_UNIT" }, { "name": "PROXY_BASIC" } ], "user_given_name": null, "device_reg_id": "8256d7bb4e4c5266459baa20095e302a", "area_id": "summerhouse", "cluster_details": { "1": { "device_type": { "name": "ON_OFF_PLUG_IN_UNIT", "id": 266 }, "profile_id": 260, "in_clusters": { "0x0000": { "endpoint_attribute": "basic", "attributes": { "0x0013": { "attribute": "ZCLAttributeDef(id=0x0013, name='alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0001": { "attribute": "ZCLAttributeDef(id=0x0001, name='app_version', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0xfffd": { "attribute": "ZCLAttributeDef(id=0xFFFD, name='cluster_revision', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0006": { "attribute": "ZCLAttributeDef(id=0x0006, name='date_code', type=.LimitedCharString'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0012": { "attribute": "ZCLAttributeDef(id=0x0012, name='device_enabled', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0014": { "attribute": "ZCLAttributeDef(id=0x0014, name='disable_local_config', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0008": { "attribute": "ZCLAttributeDef(id=0x0008, name='generic_device_class', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0009": { "attribute": "ZCLAttributeDef(id=0x0009, name='generic_device_type', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0003": { "attribute": "ZCLAttributeDef(id=0x0003, name='hw_version', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0010": { "attribute": "ZCLAttributeDef(id=0x0010, name='location_desc', type=.LimitedCharString'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0004": { "attribute": "ZCLAttributeDef(id=0x0004, name='manufacturer', type=.LimitedCharString'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": "IKEA of Sweden" }, "0x000c": { "attribute": "ZCLAttributeDef(id=0x000C, name='manufacturer_version_details', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0005": { "attribute": "ZCLAttributeDef(id=0x0005, name='model', type=.LimitedCharString'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": "INSPELNING Smart plug" }, "0x0011": { "attribute": "ZCLAttributeDef(id=0x0011, name='physical_env', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0007": { "attribute": "ZCLAttributeDef(id=0x0007, name='power_source', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x000a": { "attribute": "ZCLAttributeDef(id=0x000A, name='product_code', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000e": { "attribute": "ZCLAttributeDef(id=0x000E, name='product_label', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000b": { "attribute": "ZCLAttributeDef(id=0x000B, name='product_url', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0xfffe": { "attribute": "ZCLAttributeDef(id=0xFFFE, name='reporting_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000d": { "attribute": "ZCLAttributeDef(id=0x000D, name='serial_number', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0002": { "attribute": "ZCLAttributeDef(id=0x0002, name='stack_version', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x4000": { "attribute": "ZCLAttributeDef(id=0x4000, name='sw_build_id', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='zcl_version', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null } }, "unsupported_attributes": [] }, "0x0003": { "endpoint_attribute": "identify", "attributes": { "0xfffd": { "attribute": "ZCLAttributeDef(id=0xFFFD, name='cluster_revision', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='identify_time', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0xfffe": { "attribute": "ZCLAttributeDef(id=0xFFFE, name='reporting_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null } }, "unsupported_attributes": [] }, "0x0004": { "endpoint_attribute": "groups", "attributes": { "0xfffd": { "attribute": "ZCLAttributeDef(id=0xFFFD, name='cluster_revision', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='name_support', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0xfffe": { "attribute": "ZCLAttributeDef(id=0xFFFE, name='reporting_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null } }, "unsupported_attributes": [] }, "0x0005": { "endpoint_attribute": "scenes", "attributes": { "0xfffd": { "attribute": "ZCLAttributeDef(id=0xFFFD, name='cluster_revision', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='count', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0002": { "attribute": "ZCLAttributeDef(id=0x0002, name='current_group', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0001": { "attribute": "ZCLAttributeDef(id=0x0001, name='current_scene', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0005": { "attribute": "ZCLAttributeDef(id=0x0005, name='last_configured_by', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0004": { "attribute": "ZCLAttributeDef(id=0x0004, name='name_support', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0xfffe": { "attribute": "ZCLAttributeDef(id=0xFFFE, name='reporting_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0003": { "attribute": "ZCLAttributeDef(id=0x0003, name='scene_valid', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null } }, "unsupported_attributes": [] }, "0x0006": { "endpoint_attribute": "on_off", "attributes": { "0xfffd": { "attribute": "ZCLAttributeDef(id=0xFFFD, name='cluster_revision', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x4000": { "attribute": "ZCLAttributeDef(id=0x4000, name='global_scene_control', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x4002": { "attribute": "ZCLAttributeDef(id=0x4002, name='off_wait_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='on_off', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": 1 }, "0x4001": { "attribute": "ZCLAttributeDef(id=0x4001, name='on_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0xfffe": { "attribute": "ZCLAttributeDef(id=0xFFFE, name='reporting_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x4003": { "attribute": "ZCLAttributeDef(id=0x4003, name='start_up_on_off', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 255 } }, "unsupported_attributes": [] }, "0x0008": { "endpoint_attribute": "level", "attributes": { "0xfffd": { "attribute": "ZCLAttributeDef(id=0xFFFD, name='cluster_revision', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0004": { "attribute": "ZCLAttributeDef(id=0x0004, name='current_frequency', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='current_level', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": 127 }, "0x0014": { "attribute": "ZCLAttributeDef(id=0x0014, name='default_move_rate', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0006": { "attribute": "ZCLAttributeDef(id=0x0006, name='max_frequency', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0003": { "attribute": "ZCLAttributeDef(id=0x0003, name='max_level', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0005": { "attribute": "ZCLAttributeDef(id=0x0005, name='min_frequency', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0002": { "attribute": "ZCLAttributeDef(id=0x0002, name='min_level', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0013": { "attribute": "ZCLAttributeDef(id=0x0013, name='off_transition_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0011": { "attribute": "ZCLAttributeDef(id=0x0011, name='on_level', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 255 }, "0x0010": { "attribute": "ZCLAttributeDef(id=0x0010, name='on_off_transition_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 0 }, "0x0012": { "attribute": "ZCLAttributeDef(id=0x0012, name='on_transition_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000f": { "attribute": "ZCLAttributeDef(id=0x000F, name='options', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0001": { "attribute": "ZCLAttributeDef(id=0x0001, name='remaining_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0xfffe": { "attribute": "ZCLAttributeDef(id=0xFFFE, name='reporting_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x4000": { "attribute": "ZCLAttributeDef(id=0x4000, name='start_up_current_level', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 255 } }, "unsupported_attributes": [ 18, 19, 20, "default_move_rate", "off_transition_time", "on_transition_time" ] }, "0x0702": { "endpoint_attribute": "smartenergy_metering", "attributes": { "0x0020": { "attribute": "ZCLAttributeDef(id=0x0020, name='active_register_tier_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0021": { "attribute": "ZCLAttributeDef(id=0x0021, name='active_register_tier_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0314": { "attribute": "ZCLAttributeDef(id=0x0314, name='alternative_consumption_formatting', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0313": { "attribute": "ZCLAttributeDef(id=0x0313, name='alternative_demand_formatting', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0312": { "attribute": "ZCLAttributeDef(id=0x0312, name='alternative_unit_of_measure', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a00": { "attribute": "ZCLAttributeDef(id=0x0A00, name='bill_to_date', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a01": { "attribute": "ZCLAttributeDef(id=0x0A01, name='bill_to_date_time_stamp', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0019": { "attribute": "ZCLAttributeDef(id=0x0019, name='control_temperature', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0413": { "attribute": "ZCLAttributeDef(id=0x0413, name='cur_month_max_energy_carr_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0414": { "attribute": "ZCLAttributeDef(id=0x0414, name='cur_month_min_energy_carr_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0405": { "attribute": "ZCLAttributeDef(id=0x0405, name='cur_part_profile_int_start_time_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0406": { "attribute": "ZCLAttributeDef(id=0x0406, name='cur_part_profile_int_start_time_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0407": { "attribute": "ZCLAttributeDef(id=0x0407, name='cur_part_profile_int_value_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0408": { "attribute": "ZCLAttributeDef(id=0x0408, name='cur_part_profile_int_value_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0415": { "attribute": "ZCLAttributeDef(id=0x0415, name='cur_year_max_energy_carr_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0416": { "attribute": "ZCLAttributeDef(id=0x0416, name='cur_year_min_energy_carr_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000e": { "attribute": "ZCLAttributeDef(id=0x000E, name='current_block', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000c": { "attribute": "ZCLAttributeDef(id=0x000C, name='current_block_period_consump_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x001d": { "attribute": "ZCLAttributeDef(id=0x001D, name='current_block_period_consump_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x001e": { "attribute": "ZCLAttributeDef(id=0x001E, name='current_block_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x040d": { "attribute": "ZCLAttributeDef(id=0x040D, name='current_day_max_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0409": { "attribute": "ZCLAttributeDef(id=0x0409, name='current_day_max_pressure', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x040a": { "attribute": "ZCLAttributeDef(id=0x040A, name='current_day_min_pressure', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0600": { "attribute": "ZCLAttributeDef(id=0x0600, name='current_demand_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x001a": { "attribute": "ZCLAttributeDef(id=0x001A, name='current_in_energy_carrier_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0015": { "attribute": "ZCLAttributeDef(id=0x0015, name='current_in_energy_carrier_summ', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0002": { "attribute": "ZCLAttributeDef(id=0x0002, name='current_max_demand_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0008": { "attribute": "ZCLAttributeDef(id=0x0008, name='current_max_demand_delivered_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0003": { "attribute": "ZCLAttributeDef(id=0x0003, name='current_max_demand_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0009": { "attribute": "ZCLAttributeDef(id=0x0009, name='current_max_demand_received_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0206": { "attribute": "ZCLAttributeDef(id=0x0206, name='current_meter_id', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x040f": { "attribute": "ZCLAttributeDef(id=0x040F, name='current_month_max_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x001b": { "attribute": "ZCLAttributeDef(id=0x001B, name='current_out_energy_carrier_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0016": { "attribute": "ZCLAttributeDef(id=0x0016, name='current_out_energy_carrier_summ', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='current_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 15 }, "0x0001": { "attribute": "ZCLAttributeDef(id=0x0001, name='current_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0112": { "attribute": "ZCLAttributeDef(id=0x0112, name='current_tier10_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0113": { "attribute": "ZCLAttributeDef(id=0x0113, name='current_tier10_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0114": { "attribute": "ZCLAttributeDef(id=0x0114, name='current_tier11_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0115": { "attribute": "ZCLAttributeDef(id=0x0115, name='current_tier11_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0116": { "attribute": "ZCLAttributeDef(id=0x0116, name='current_tier12_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0117": { "attribute": "ZCLAttributeDef(id=0x0117, name='current_tier12_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0118": { "attribute": "ZCLAttributeDef(id=0x0118, name='current_tier13_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0119": { "attribute": "ZCLAttributeDef(id=0x0119, name='current_tier13_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x011a": { "attribute": "ZCLAttributeDef(id=0x011A, name='current_tier14_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x011b": { "attribute": "ZCLAttributeDef(id=0x011B, name='current_tier14_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x011c": { "attribute": "ZCLAttributeDef(id=0x011C, name='current_tier15_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x011d": { "attribute": "ZCLAttributeDef(id=0x011D, name='current_tier15_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0100": { "attribute": "ZCLAttributeDef(id=0x0100, name='current_tier1_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0101": { "attribute": "ZCLAttributeDef(id=0x0101, name='current_tier1_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0102": { "attribute": "ZCLAttributeDef(id=0x0102, name='current_tier2_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0103": { "attribute": "ZCLAttributeDef(id=0x0103, name='current_tier2_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0104": { "attribute": "ZCLAttributeDef(id=0x0104, name='current_tier3_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0105": { "attribute": "ZCLAttributeDef(id=0x0105, name='current_tier3_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0106": { "attribute": "ZCLAttributeDef(id=0x0106, name='current_tier4_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0107": { "attribute": "ZCLAttributeDef(id=0x0107, name='current_tier4_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0108": { "attribute": "ZCLAttributeDef(id=0x0108, name='current_tier5_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0109": { "attribute": "ZCLAttributeDef(id=0x0109, name='current_tier5_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x010a": { "attribute": "ZCLAttributeDef(id=0x010A, name='current_tier6_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x010b": { "attribute": "ZCLAttributeDef(id=0x010B, name='current_tier6_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x010c": { "attribute": "ZCLAttributeDef(id=0x010C, name='current_tier7_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x010d": { "attribute": "ZCLAttributeDef(id=0x010D, name='current_tier7_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x010e": { "attribute": "ZCLAttributeDef(id=0x010E, name='current_tier8_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x010f": { "attribute": "ZCLAttributeDef(id=0x010F, name='current_tier8_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0110": { "attribute": "ZCLAttributeDef(id=0x0110, name='current_tier9_summ_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0111": { "attribute": "ZCLAttributeDef(id=0x0111, name='current_tier9_summ_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0410": { "attribute": "ZCLAttributeDef(id=0x0410, name='current_year_max_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0401": { "attribute": "ZCLAttributeDef(id=0x0401, name='currentday_consump_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0402": { "attribute": "ZCLAttributeDef(id=0x0402, name='currentday_consump_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0411": { "attribute": "ZCLAttributeDef(id=0x0411, name='currentday_max_energy_carr_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0311": { "attribute": "ZCLAttributeDef(id=0x0311, name='customer_id_number', type=.LimitedLVBytes'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000d": { "attribute": "ZCLAttributeDef(id=0x000D, name='daily_consump_target', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0005": { "attribute": "ZCLAttributeDef(id=0x0005, name='daily_freeze_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000a": { "attribute": "ZCLAttributeDef(id=0x000A, name='default_update_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0304": { "attribute": "ZCLAttributeDef(id=0x0304, name='demand_formatting', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0602": { "attribute": "ZCLAttributeDef(id=0x0602, name='demand_integration_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0601": { "attribute": "ZCLAttributeDef(id=0x0601, name='demand_limit', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0604": { "attribute": "ZCLAttributeDef(id=0x0604, name='demand_limit_arm_duration', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0004": { "attribute": "ZCLAttributeDef(id=0x0004, name='dft_summ', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x001f": { "attribute": "ZCLAttributeDef(id=0x001F, name='dft_summation_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0302": { "attribute": "ZCLAttributeDef(id=0x0302, name='divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 1000 }, "0x0801": { "attribute": "ZCLAttributeDef(id=0x0801, name='electricity_alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030b": { "attribute": "ZCLAttributeDef(id=0x030B, name='energy_carrier_demand_formatting', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030a": { "attribute": "ZCLAttributeDef(id=0x030A, name='energy_carrier_summ_formatting', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0309": { "attribute": "ZCLAttributeDef(id=0x0309, name='energy_carrier_unit_of_meas', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0806": { "attribute": "ZCLAttributeDef(id=0x0806, name='extended_generic_alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0204": { "attribute": "ZCLAttributeDef(id=0x0204, name='extended_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000b": { "attribute": "ZCLAttributeDef(id=0x000B, name='fast_poll_update_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0013": { "attribute": "ZCLAttributeDef(id=0x0013, name='flow_restriction', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0805": { "attribute": "ZCLAttributeDef(id=0x0805, name='gas_specific_alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0802": { "attribute": "ZCLAttributeDef(id=0x0802, name='gen_flow_pressure_alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0800": { "attribute": "ZCLAttributeDef(id=0x0800, name='generic_alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0804": { "attribute": "ZCLAttributeDef(id=0x0804, name='heat_cool_specific_alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0305": { "attribute": "ZCLAttributeDef(id=0x0305, name='historical_consump_formatting', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0203": { "attribute": "ZCLAttributeDef(id=0x0203, name='hours_in_fault', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0202": { "attribute": "ZCLAttributeDef(id=0x0202, name='hours_in_operation', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0207": { "attribute": "ZCLAttributeDef(id=0x0207, name='iambient_consumption_indicator', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0017": { "attribute": "ZCLAttributeDef(id=0x0017, name='inlet_temperature', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0400": { "attribute": "ZCLAttributeDef(id=0x0400, name='instantaneous_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0022": { "attribute": "ZCLAttributeDef(id=0x0022, name='last_block_switch_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0807": { "attribute": "ZCLAttributeDef(id=0x0807, name='manufacture_alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0500": { "attribute": "ZCLAttributeDef(id=0x0500, name='max_number_of_periods_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0308": { "attribute": "ZCLAttributeDef(id=0x0308, name='meter_serial_number', type=.LimitedLVBytes'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0306": { "attribute": "ZCLAttributeDef(id=0x0306, name='metering_device_type', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 0 }, "0x030e": { "attribute": "ZCLAttributeDef(id=0x030E, name='module_serial_number', type=.LimitedLVBytes'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0301": { "attribute": "ZCLAttributeDef(id=0x0301, name='multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 1 }, "0x0603": { "attribute": "ZCLAttributeDef(id=0x0603, name='number_of_demand_subintervals', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030f": { "attribute": "ZCLAttributeDef(id=0x030F, name='operating_tariff_label_delivered', type=.LimitedLVBytes'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0310": { "attribute": "ZCLAttributeDef(id=0x0310, name='operating_tariff_label_received', type=.LimitedLVBytes'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0018": { "attribute": "ZCLAttributeDef(id=0x0018, name='outlet_temperature', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0006": { "attribute": "ZCLAttributeDef(id=0x0006, name='power_factor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0011": { "attribute": "ZCLAttributeDef(id=0x0011, name='preset_reading_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x040e": { "attribute": "ZCLAttributeDef(id=0x040E, name='previous_day_max_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x040b": { "attribute": "ZCLAttributeDef(id=0x040B, name='previous_day_max_pressure', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x040c": { "attribute": "ZCLAttributeDef(id=0x040C, name='previous_day_min_pressure', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0403": { "attribute": "ZCLAttributeDef(id=0x0403, name='previousday_consump_delivered', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0404": { "attribute": "ZCLAttributeDef(id=0x0404, name='previousday_consump_received', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0412": { "attribute": "ZCLAttributeDef(id=0x0412, name='previousday_max_energy_carr_demand', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000f": { "attribute": "ZCLAttributeDef(id=0x000F, name='profile_interval_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a02": { "attribute": "ZCLAttributeDef(id=0x0A02, name='projected_bill', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a03": { "attribute": "ZCLAttributeDef(id=0x0A03, name='projected_bill_time_stamp', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0007": { "attribute": "ZCLAttributeDef(id=0x0007, name='reading_snapshot_time', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0201": { "attribute": "ZCLAttributeDef(id=0x0201, name='remaining_battery_life', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0205": { "attribute": "ZCLAttributeDef(id=0x0205, name='remaining_battery_life_days', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0307": { "attribute": "ZCLAttributeDef(id=0x0307, name='site_id', type=.LimitedLVBytes'>, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0200": { "attribute": "ZCLAttributeDef(id=0x0200, name='status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 0 }, "0x0303": { "attribute": "ZCLAttributeDef(id=0x0303, name='summation_formatting', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 251 }, "0x0014": { "attribute": "ZCLAttributeDef(id=0x0014, name='supply_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030d": { "attribute": "ZCLAttributeDef(id=0x030D, name='temperature_formatting', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030c": { "attribute": "ZCLAttributeDef(id=0x030C, name='temperature_unit_of_measure', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0300": { "attribute": "ZCLAttributeDef(id=0x0300, name='unit_of_measure', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 0 }, "0x0012": { "attribute": "ZCLAttributeDef(id=0x0012, name='volume_per_report', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0803": { "attribute": "ZCLAttributeDef(id=0x0803, name='water_specific_alarm_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null } }, "unsupported_attributes": [ 1, 256, 258, 260, 262, 264, 266, 772, 1024, "current_summ_received", "current_tier1_summ_delivered", "current_tier2_summ_delivered", "current_tier3_summ_delivered", "current_tier4_summ_delivered", "current_tier5_summ_delivered", "current_tier6_summ_delivered", "demand_formatting", "instantaneous_demand" ] }, "0x0b04": { "endpoint_attribute": "electrical_measurement", "attributes": { "0x0803": { "attribute": "ZCLAttributeDef(id=0x0803, name='ac_active_power_overload', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0800": { "attribute": "ZCLAttributeDef(id=0x0800, name='ac_alarms_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0603": { "attribute": "ZCLAttributeDef(id=0x0603, name='ac_current_divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 1000 }, "0x0602": { "attribute": "ZCLAttributeDef(id=0x0602, name='ac_current_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 1 }, "0x0802": { "attribute": "ZCLAttributeDef(id=0x0802, name='ac_current_overload', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0300": { "attribute": "ZCLAttributeDef(id=0x0300, name='ac_frequency', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0401": { "attribute": "ZCLAttributeDef(id=0x0401, name='ac_frequency_divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0302": { "attribute": "ZCLAttributeDef(id=0x0302, name='ac_frequency_max', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0301": { "attribute": "ZCLAttributeDef(id=0x0301, name='ac_frequency_min', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0400": { "attribute": "ZCLAttributeDef(id=0x0400, name='ac_frequency_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0605": { "attribute": "ZCLAttributeDef(id=0x0605, name='ac_power_divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 10 }, "0x0604": { "attribute": "ZCLAttributeDef(id=0x0604, name='ac_power_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 1 }, "0x0804": { "attribute": "ZCLAttributeDef(id=0x0804, name='ac_reactive_power_overload', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0601": { "attribute": "ZCLAttributeDef(id=0x0601, name='ac_voltage_divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 10 }, "0x0600": { "attribute": "ZCLAttributeDef(id=0x0600, name='ac_voltage_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 1 }, "0x0801": { "attribute": "ZCLAttributeDef(id=0x0801, name='ac_voltage_overload', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0902": { "attribute": "ZCLAttributeDef(id=0x0902, name='active_current_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a02": { "attribute": "ZCLAttributeDef(id=0x0A02, name='active_current_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x050b": { "attribute": "ZCLAttributeDef(id=0x050B, name='active_power', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 0 }, "0x050d": { "attribute": "ZCLAttributeDef(id=0x050D, name='active_power_max', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x090d": { "attribute": "ZCLAttributeDef(id=0x090D, name='active_power_max_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a0d": { "attribute": "ZCLAttributeDef(id=0x0A0D, name='active_power_max_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x050c": { "attribute": "ZCLAttributeDef(id=0x050C, name='active_power_min', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x090c": { "attribute": "ZCLAttributeDef(id=0x090C, name='active_power_min_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a0c": { "attribute": "ZCLAttributeDef(id=0x0A0C, name='active_power_min_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x090b": { "attribute": "ZCLAttributeDef(id=0x090B, name='active_power_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a0b": { "attribute": "ZCLAttributeDef(id=0x0A0B, name='active_power_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x050f": { "attribute": "ZCLAttributeDef(id=0x050F, name='apparent_power', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x090f": { "attribute": "ZCLAttributeDef(id=0x090F, name='apparent_power_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a0f": { "attribute": "ZCLAttributeDef(id=0x0A0F, name='apparent_power_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0805": { "attribute": "ZCLAttributeDef(id=0x0805, name='average_rms_over_voltage', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0512": { "attribute": "ZCLAttributeDef(id=0x0512, name='average_rms_over_voltage_counter', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0912": { "attribute": "ZCLAttributeDef(id=0x0912, name='average_rms_over_voltage_counter_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a12": { "attribute": "ZCLAttributeDef(id=0x0A12, name='average_rms_over_voltage_counter_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0806": { "attribute": "ZCLAttributeDef(id=0x0806, name='average_rms_under_voltage', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0513": { "attribute": "ZCLAttributeDef(id=0x0513, name='average_rms_under_voltage_counter', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0511": { "attribute": "ZCLAttributeDef(id=0x0511, name='average_rms_voltage_meas_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a11": { "attribute": "ZCLAttributeDef(id=0x0A11, name='average_rms_voltage_meas_period_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0911": { "attribute": "ZCLAttributeDef(id=0x0911, name='average_rms_voltage_measure_period_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0913": { "attribute": "ZCLAttributeDef(id=0x0913, name='average_under_voltage_counter_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a13": { "attribute": "ZCLAttributeDef(id=0x0A13, name='average_under_voltage_counter_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0xfffd": { "attribute": "ZCLAttributeDef(id=0xFFFD, name='cluster_revision', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0103": { "attribute": "ZCLAttributeDef(id=0x0103, name='dc_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0203": { "attribute": "ZCLAttributeDef(id=0x0203, name='dc_current_divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0105": { "attribute": "ZCLAttributeDef(id=0x0105, name='dc_current_max', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0104": { "attribute": "ZCLAttributeDef(id=0x0104, name='dc_current_min', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0202": { "attribute": "ZCLAttributeDef(id=0x0202, name='dc_current_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0702": { "attribute": "ZCLAttributeDef(id=0x0702, name='dc_current_overload', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0700": { "attribute": "ZCLAttributeDef(id=0x0700, name='dc_overload_alarms_mask', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0106": { "attribute": "ZCLAttributeDef(id=0x0106, name='dc_power', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0205": { "attribute": "ZCLAttributeDef(id=0x0205, name='dc_power_divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0108": { "attribute": "ZCLAttributeDef(id=0x0108, name='dc_power_max', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0107": { "attribute": "ZCLAttributeDef(id=0x0107, name='dc_power_min', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0204": { "attribute": "ZCLAttributeDef(id=0x0204, name='dc_power_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0100": { "attribute": "ZCLAttributeDef(id=0x0100, name='dc_voltage', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0201": { "attribute": "ZCLAttributeDef(id=0x0201, name='dc_voltage_divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0102": { "attribute": "ZCLAttributeDef(id=0x0102, name='dc_voltage_max', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0101": { "attribute": "ZCLAttributeDef(id=0x0101, name='dc_voltage_min', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0200": { "attribute": "ZCLAttributeDef(id=0x0200, name='dc_voltage_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0701": { "attribute": "ZCLAttributeDef(id=0x0701, name='dc_voltage_overload', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0404": { "attribute": "ZCLAttributeDef(id=0x0404, name='harmonic_current_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0502": { "attribute": "ZCLAttributeDef(id=0x0502, name='instantaneous_active_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0501": { "attribute": "ZCLAttributeDef(id=0x0501, name='instantaneous_line_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0504": { "attribute": "ZCLAttributeDef(id=0x0504, name='instantaneous_power', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0503": { "attribute": "ZCLAttributeDef(id=0x0503, name='instantaneous_reactive_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0500": { "attribute": "ZCLAttributeDef(id=0x0500, name='instantaneous_voltage', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0901": { "attribute": "ZCLAttributeDef(id=0x0901, name='line_current_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a01": { "attribute": "ZCLAttributeDef(id=0x0A01, name='line_current_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030c": { "attribute": "ZCLAttributeDef(id=0x030C, name='meas11th_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0307": { "attribute": "ZCLAttributeDef(id=0x0307, name='meas1st_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0308": { "attribute": "ZCLAttributeDef(id=0x0308, name='meas3rd_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0309": { "attribute": "ZCLAttributeDef(id=0x0309, name='meas5th_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030a": { "attribute": "ZCLAttributeDef(id=0x030A, name='meas7th_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030b": { "attribute": "ZCLAttributeDef(id=0x030B, name='meas9th_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0312": { "attribute": "ZCLAttributeDef(id=0x0312, name='meas_phase11th_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030d": { "attribute": "ZCLAttributeDef(id=0x030D, name='meas_phase1st_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030e": { "attribute": "ZCLAttributeDef(id=0x030E, name='meas_phase3rd_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x030f": { "attribute": "ZCLAttributeDef(id=0x030F, name='meas_phase5th_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0310": { "attribute": "ZCLAttributeDef(id=0x0310, name='meas_phase7th_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0311": { "attribute": "ZCLAttributeDef(id=0x0311, name='meas_phase9th_harmonic_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='measurement_type', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": 9 }, "0x0303": { "attribute": "ZCLAttributeDef(id=0x0303, name='neutral_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0405": { "attribute": "ZCLAttributeDef(id=0x0405, name='phase_harmonic_current_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0403": { "attribute": "ZCLAttributeDef(id=0x0403, name='power_divisor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0510": { "attribute": "ZCLAttributeDef(id=0x0510, name='power_factor', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0910": { "attribute": "ZCLAttributeDef(id=0x0910, name='power_factor_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a10": { "attribute": "ZCLAttributeDef(id=0x0A10, name='power_factor_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0402": { "attribute": "ZCLAttributeDef(id=0x0402, name='power_multiplier', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0903": { "attribute": "ZCLAttributeDef(id=0x0903, name='reactive_current_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a03": { "attribute": "ZCLAttributeDef(id=0x0A03, name='reactive_current_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x050e": { "attribute": "ZCLAttributeDef(id=0x050E, name='reactive_power', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x090e": { "attribute": "ZCLAttributeDef(id=0x090E, name='reactive_power_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a0e": { "attribute": "ZCLAttributeDef(id=0x0A0E, name='reactive_power_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0xfffe": { "attribute": "ZCLAttributeDef(id=0xFFFE, name='reporting_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0508": { "attribute": "ZCLAttributeDef(id=0x0508, name='rms_current', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 3 }, "0x050a": { "attribute": "ZCLAttributeDef(id=0x050A, name='rms_current_max', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x090a": { "attribute": "ZCLAttributeDef(id=0x090A, name='rms_current_max_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a0a": { "attribute": "ZCLAttributeDef(id=0x0A0A, name='rms_current_max_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0509": { "attribute": "ZCLAttributeDef(id=0x0509, name='rms_current_min', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0909": { "attribute": "ZCLAttributeDef(id=0x0909, name='rms_current_min_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a09": { "attribute": "ZCLAttributeDef(id=0x0A09, name='rms_current_min_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0908": { "attribute": "ZCLAttributeDef(id=0x0908, name='rms_current_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a08": { "attribute": "ZCLAttributeDef(id=0x0A08, name='rms_current_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0807": { "attribute": "ZCLAttributeDef(id=0x0807, name='rms_extreme_over_voltage', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0514": { "attribute": "ZCLAttributeDef(id=0x0514, name='rms_extreme_over_voltage_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0914": { "attribute": "ZCLAttributeDef(id=0x0914, name='rms_extreme_over_voltage_period_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a14": { "attribute": "ZCLAttributeDef(id=0x0A14, name='rms_extreme_over_voltage_period_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0808": { "attribute": "ZCLAttributeDef(id=0x0808, name='rms_extreme_under_voltage', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0515": { "attribute": "ZCLAttributeDef(id=0x0515, name='rms_extreme_under_voltage_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0915": { "attribute": "ZCLAttributeDef(id=0x0915, name='rms_extreme_under_voltage_period_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a15": { "attribute": "ZCLAttributeDef(id=0x0A15, name='rms_extreme_under_voltage_period_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0505": { "attribute": "ZCLAttributeDef(id=0x0505, name='rms_voltage', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 233 }, "0x0507": { "attribute": "ZCLAttributeDef(id=0x0507, name='rms_voltage_max', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0907": { "attribute": "ZCLAttributeDef(id=0x0907, name='rms_voltage_max_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a07": { "attribute": "ZCLAttributeDef(id=0x0A07, name='rms_voltage_max_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0506": { "attribute": "ZCLAttributeDef(id=0x0506, name='rms_voltage_min', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0906": { "attribute": "ZCLAttributeDef(id=0x0906, name='rms_voltage_min_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a06": { "attribute": "ZCLAttributeDef(id=0x0A06, name='rms_voltage_min_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0905": { "attribute": "ZCLAttributeDef(id=0x0905, name='rms_voltage_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a05": { "attribute": "ZCLAttributeDef(id=0x0A05, name='rms_voltage_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0809": { "attribute": "ZCLAttributeDef(id=0x0809, name='rms_voltage_sag', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0516": { "attribute": "ZCLAttributeDef(id=0x0516, name='rms_voltage_sag_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0916": { "attribute": "ZCLAttributeDef(id=0x0916, name='rms_voltage_sag_period_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a16": { "attribute": "ZCLAttributeDef(id=0x0A16, name='rms_voltage_sag_period_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x080a": { "attribute": "ZCLAttributeDef(id=0x080A, name='rms_voltage_swell', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0517": { "attribute": "ZCLAttributeDef(id=0x0517, name='rms_voltage_swell_period', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0917": { "attribute": "ZCLAttributeDef(id=0x0917, name='rms_voltage_swell_period_ph_b', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0a17": { "attribute": "ZCLAttributeDef(id=0x0A17, name='rms_voltage_swell_period_ph_c', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0304": { "attribute": "ZCLAttributeDef(id=0x0304, name='total_active_power', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0306": { "attribute": "ZCLAttributeDef(id=0x0306, name='total_apparent_power', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0305": { "attribute": "ZCLAttributeDef(id=0x0305, name='total_reactive_power', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null } }, "unsupported_attributes": [ 768, 770, 1024, 1025, 1026, 1027, 1287, 1290, 1293, 1295, 1296, "ac_frequency", "ac_frequency_divisor", "ac_frequency_max", "ac_frequency_multiplier", "active_power_max", "apparent_power", "power_divisor", "power_factor", "power_multiplier", "rms_current_max", "rms_voltage_max" ] }, "0x1000": { "endpoint_attribute": "lightlink", "attributes": {}, "unsupported_attributes": [] }, "0xfc7c": { "endpoint_attribute": "manufacturer_specific", "attributes": {}, "unsupported_attributes": [] }, "0xfc85": { "endpoint_attribute": "manufacturer_specific", "attributes": {}, "unsupported_attributes": [] } }, "out_clusters": { "0x0019": { "endpoint_attribute": "ota", "attributes": { "0xfffd": { "attribute": "ZCLAttributeDef(id=0xFFFD, name='cluster_revision', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0002": { "attribute": "ZCLAttributeDef(id=0x0002, name='current_file_version', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": 33816628 }, "0x0003": { "attribute": "ZCLAttributeDef(id=0x0003, name='current_zigbee_stack_version', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0004": { "attribute": "ZCLAttributeDef(id=0x0004, name='downloaded_file_version', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0005": { "attribute": "ZCLAttributeDef(id=0x0005, name='downloaded_zigbee_stack_version', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0001": { "attribute": "ZCLAttributeDef(id=0x0001, name='file_offset', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000a": { "attribute": "ZCLAttributeDef(id=0x000A, name='image_stamp', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0008": { "attribute": "ZCLAttributeDef(id=0x0008, name='image_type_id', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0006": { "attribute": "ZCLAttributeDef(id=0x0006, name='image_upgrade_status', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x0007": { "attribute": "ZCLAttributeDef(id=0x0007, name='manufacturer_id', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0009": { "attribute": "ZCLAttributeDef(id=0x0009, name='minimum_block_req_delay', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0xfffe": { "attribute": "ZCLAttributeDef(id=0xFFFE, name='reporting_status', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x000b": { "attribute": "ZCLAttributeDef(id=0x000B, name='upgrade_activation_policy', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null }, "0x0000": { "attribute": "ZCLAttributeDef(id=0x0000, name='upgrade_server_id', type=, zcl_type=, access=, mandatory=True, is_manufacturer_specific=False)", "value": null }, "0x000c": { "attribute": "ZCLAttributeDef(id=0x000C, name='upgrade_timeout_policy', type=, zcl_type=, access=, mandatory=False, is_manufacturer_specific=False)", "value": null } }, "unsupported_attributes": [] } } }, "242": { "device_type": { "name": "PROXY_BASIC", "id": 97 }, "profile_id": 41440, "in_clusters": { "0x0021": { "endpoint_attribute": "green_power", "attributes": {}, "unsupported_attributes": [] } }, "out_clusters": { "0x0021": { "endpoint_attribute": "green_power", "attributes": {}, "unsupported_attributes": [] } } } } } } ```
cristiangauma commented 2 weeks ago

I've just bought this smart plug, and the values appear to be correct on my Home-Assistant instance.

imagen

parrel commented 2 weeks ago

I just bought this plug as well, and I have the same problem.

@cristiangauma can you share your firmware version?

saversux commented 2 weeks ago

I had the same problem, updated the firmware with ZHA OTA to 0x02040045 and this fixed the issue. It displays the correct voltage now

parrel commented 2 weeks ago

@saversux is there a way to force an update?

saversux commented 2 weeks ago

If you have Tradfri OTA activated it should display the update in the updates section. @parrel

You need to set this in your configurations.yaml

zha:
  zigpy_config:
    ota:
      ikea_provider: true
parrel commented 2 weeks ago

I have that but for some reason it says 0x02040034 is the latest version.

gllmlbrt commented 2 weeks ago

I had the same problem, updated the firmware with ZHA OTA to 0x02040045 and this fixed the issue. It displays the correct voltage now

I read on other threads about Z2MQTT that the new firmware fixes the voltage indeed, but still has the wrong Power. Can you confirm whether it fixes both, by testing a power reading you know for sure ?

saversux commented 2 weeks ago

@gllmlbrt just tested it with a USB-C charger that has a display for the power output. The power output in watts of the plug matches the reported number on the charger.

Additional learning: it seems to push updates very frequent, much faster than Tuya TS011F.

image

gllmlbrt commented 2 weeks ago

Just got it upgrded to 0x02040045 and it all displays as expected. Will clost the issue.

MattWestb commented 2 weeks ago

The OTA is only in Dirigera feed. If like updating with local file download this from the index of Dirigera OTA feed: https://fw.ota.homesmart.ikea.com/files/inspelning-smart-plug-soc_release_prod_v33816645_02579ff4-6fec-42f6-8957-4048def87def.ota

Meta data in the signed file:

IKEA of Sweden
INSPELNING Smart Plug 
20240801
E2132
www.ikea.com
2.4.45
cristiangauma commented 2 weeks ago

Sorry, I forgot to confirm that yes, once I added the smart plug to homeassistant, a firmware upgrade notification appeared asking to upgrade to 0x02040045. The screenshot that I shared before was after upgrading. Before upgrading I didn't check the entities, as the first thing that I did is to upgrade to the latest firmware.

folfy commented 2 weeks ago

THe Z2M community seems to be on to the topic of the bad power reading already, I also noticed that it's off only for loads >=1000W. Seems to be an auto-ranging feature of the plug, see my comment on Z2M thread.

So it seems we need to check/update the ac_power_divisor on every update of the power-value, and reflect it in the shown value accordingly.

@gllmlbrt maybe you wanna reopen this topic?

Also I opened PR #3379 to remove the level controls from the configuration panel.

gllmlbrt commented 2 weeks ago

Re opened for visibility until the power values are 100% confirmed to be OK.

jasimancas commented 4 hours ago

I have the same problem, I have updated the firwmare and from 22.7V I have gone to 227V, that part corrected (Voltage), but the part of W (Power) when it passes 999V makes an erroneous division.

I know it is reported, but the interpretation error comes from the way the device works? or from the way zigpy manages the data? I mean, it doesn't follow a standard (or at least the same as other sockets).

It's more for knowledge :)

Thanks!!