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
743 stars 680 forks source link

[Device Support Request] - iris v1 keyfob 903 #1805

Closed alexisiglesias1 closed 1 year ago

alexisiglesias1 commented 2 years ago

Is your feature request related to a problem? Please describe. i bought a couple of iris v1 keyfob 903, i was thinking i could add them to zha, but they are not supported i did some research and notice on hubitat forums they managed included them, i can provide a test device to the developers since i already have a few.

Describe the solution you'd like i would like to use this device as an arrival sensor, since the v2 version works like that but with less battery, that's why I really would like this one work

Device signature since zha only can see but not add the device this is the only info i have: IEEE: 00:0d:6f:00:02:3a:d9:6b NWK: 0x5a34 ```yaml Paste the device signature here. Don't remove the extra line breaks outside the ``` marks. ```
## System Information version | core-2022.9.7 -- | -- installation_type | Home Assistant OS dev | false hassio | true docker | true user | root virtualenv | false python_version | 3.10.5 os_name | Linux os_version | 5.15.61-v8 arch | aarch64 timezone | America/Chicago config_dir | /config
Home Assistant Cloud logged_in | false -- | -- can_reach_cert_server | ok can_reach_cloud_auth | ok can_reach_cloud | ok
Home Assistant Supervisor host_os | Home Assistant OS 9.0 -- | -- update_channel | stable supervisor_version | supervisor-2022.09.1 agent_version | 1.3.0 docker_version | 20.10.17 disk_total | 28.5 GB disk_used | 6.1 GB healthy | true supported | true board | rpi3-64 supervisor_api | ok version_api | ok installed_addons | Z-Wave JS (0.1.74), Studio Code Server (5.4.0), File editor (5.4.1), Samba share (10.0.0), Plex Media Server (3.1.1), Portainer (2022.9.0), Terminal & SSH (9.6.1)
Dashboards dashboards | 1 -- | -- resources | 0 mode | auto-gen
Recorder oldest_recorder_run | September 28, 2022 at 2:11 PM -- | -- current_recorder_run | September 30, 2022 at 10:23 AM estimated_db_size | 53.86 MiB database_engine | sqlite database_version | 3.38.5
Diagnostic information ```yaml Paste the diagnostic information here. Don't remove the extra line breaks outside the ``` marks. ```
Additional logs ``` Device 0x5a34 (00:0d:6f:00:02:3a:d9:6b) joined the network Device 00:0d:6f:00:02:3a:d9:6b changed id (0xa28d => 0x5a34) [0x5a34] Scheduling initialization [0x5a34] Canceling old initialize call Tries remaining: 3 [0x5a34] Requesting 'Node Descriptor' Tries remaining: 2 [0x5a34] Extending timeout for 0xd8 request ```

Additional context Add any other context or screenshots about the feature request here.

javicalle commented 2 years ago

Without device signature or any other info like pairing logs there's no much that can be done. That is all the pairin log that the device generate?

alexisiglesias1 commented 2 years ago

i was looking for more log this is the only one i could find 2022-10-04 13:27:43.320 INFO (MainThread) [zigpy_znp.zigbee.application] TC device join: ZDO.TCDevInd.Callback(SrcNwk=0x4A8C, SrcIEEE=00:0d:6f:00:02:3a:d9:6b, ParentNwk=0x0000)

alexisiglesias1 commented 2 years ago

this is a post where they describe the process to include them through Xbee http://www.desert-home.com/2015/05/hacking-into-iris-door-sensor-part-3.html this is far complex for my understanding, but i think it has a lot of useful information

alexisiglesias1 commented 2 years ago

https://community.hubitat.com/t/release-alertme-iris-v1-drivers-with-device-presence/86448

and this is the integration used by hubitat https://raw.githubusercontent.com/birdslikewires/hubitat/master/alertme/drivers/alertme_fob.groovy

javicalle commented 2 years ago

And there is some info about getting the info requested:

alexisiglesias1 commented 2 years ago

Thanks @javicalle i will try to get as much info as I can with the debug, im really hoping this can be included I think it's a good device

alexisiglesias1 commented 2 years ago

debug logs:

Logs ```python 2022-10-07 18:35:14.383 DEBUG (MainThread) [zigpy_znp.api] Received command: ZDO.TCDevInd.Callback(SrcNwk=0xE272, SrcIEEE=00:0d:6f:00:02:3a:d9:6b, ParentNwk=0x0000) 2022-10-07 18:35:14.384 INFO (MainThread) [zigpy_znp.zigbee.application] TC device join: ZDO.TCDevInd.Callback(SrcNwk=0xE272, SrcIEEE=00:0d:6f:00:02:3a:d9:6b, ParentNwk=0x0000) 2022-10-07 18:35:14.385 INFO (MainThread) [zigpy.application] Device 0xe272 (00:0d:6f:00:02:3a:d9:6b) joined the network 2022-10-07 18:35:14.386 DEBUG (MainThread) [zigpy.application] Device 00:0d:6f:00:02:3a:d9:6b changed id (0xced4 => 0xe272) 2022-10-07 18:35:14.388 DEBUG (MainThread) [zigpy.device] [0xe272] Scheduling initialization 2022-10-07 18:35:14.390 DEBUG (MainThread) [zigpy.device] [0xe272] Canceling old initialize call 2022-10-07 18:35:14.394 DEBUG (MainThread) [zigpy.util] Tries remaining: 3 2022-10-07 18:35:14.395 INFO (MainThread) [zigpy.device] [0xe272] Requesting 'Node Descriptor' 2022-10-07 18:35:14.396 DEBUG (MainThread) [zigpy.util] Tries remaining: 2 2022-10-07 18:35:14.399 DEBUG (MainThread) [zigpy.device] [0xe272] Extending timeout for 0x28 request 2022-10-07 18:35:14.400 DEBUG (MainThread) [zigpy_znp.zigbee.application] Sending packet ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x0000), src_ep=0, dst=AddrModeAddress(addr_mode=, address=0xE272), dst_ep=0, source_route=None, extended_timeout=True, tsn=40, profile_id=0, cluster_id=, data=Serialized[b'(r\xe2'], tx_options=, radius=0, non_member_radius=0, lqi=None, rssi=None) 2022-10-07 18:35:14.403 DEBUG (MainThread) [zigpy_znp.api] Sending request: ZDO.ExtRouteChk.Req(Dst=0xE272, RtStatus=, Options=) 2022-10-07 18:35:14.419 DEBUG (MainThread) [zigpy_znp.api] Received command: ZDO.ExtRouteChk.Rsp(Status=) 2022-10-07 18:35:14.422 DEBUG (MainThread) [zigpy_znp.api] Sending request: ZDO.ExtRouteDisc.Req(Dst=0xE272, Options=, Radius=30) 2022-10-07 18:35:14.435 DEBUG (MainThread) [zigpy_znp.api] Received command: ZDO.ExtRouteDisc.Rsp(Status=) 2022-10-07 18:35:14.436 DEBUG (MainThread) [zigpy_znp.api] Sending request: AF.DataRequestExt.Req(DstAddrModeAddress=AddrModeAddress(mode=, address=0xE272), DstEndpoint=0, DstPanId=0x0000, SrcEndpoint=0, ClusterId=2, TSN=40, Options=, Radius=0, Data=b'\x28\x72\xE2') 2022-10-07 18:35:14.451 DEBUG (MainThread) [zigpy_znp.api] Received command: AF.DataRequestExt.Rsp(Status=) ```
javicalle commented 2 years ago

And the device signature? Any info about the device? What do you expect to have or what is not working? Are these logs related with the device interaction?

alexisiglesias1 commented 2 years ago

Yes these logs are about the device and I can't get the signature device, because I tried to pair to zha, which is able to find it, zha doesn't add it, that's why I was offering send a sample o the device to one of the developers because I don't have enough knowledge, I dm @dmulcahey but I think he hasn't read my mail, I really appreciate ir you are looking on this @javicalle

javicalle commented 2 years ago

I see the problem. Have you tried to keep awake the device during the pairing process?. Usually short pushing the button or whatever you do to pair the device will work. Attach all the pairing logs from device.

alexisiglesias1 commented 2 years ago

I tried pushing the buttons on different combinations but nothing still not able to add it this is the complete log:

Logs ```python Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x0000), src_ep=0, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=0, source_route=None, extended_timeout=False, tsn=4, profile_id=0, cluster_id=32822, data=Serialized[b'\x04\x00'], tx_options=, radius=0, non_member_radius=0, lqi=None, rssi=None) [0x0000:zdo] ZDO request ZDOCmd.Mgmt_Permit_Joining_rsp: [] [0x0000:zdo] No handler for ZDO request:ZDOCmd.Mgmt_Permit_Joining_rsp([]) [0x8F75](ZB-CL01): Device seen - marking the device available and resetting counter [0x8F75](ZB-CL01): Update device availability - device available: True - new availability: True - changed: False [0x334F](lumi.sensor_motion.aq2): Device seen - marking the device available and resetting counter [0x334F](lumi.sensor_motion.aq2): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x9E1D), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18}\n\x00\x00%\x87\xa3\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x9E1D:1:0x0702] Received ZCL frame: b'\x18}\n\x00\x00%\x87\xa3\x00\x00\x00\x00' [0x9E1D:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=125, command_id=10, *direction=, *is_reply=True) [0x9E1D:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=41863))]) [0x9E1D:1:0x0702] Received command 0x0A (TSN 125): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=41863))]) [0x9E1D:1:0x0702] Attribute report received: current_summ_delivered=41863 Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x44CC), src_ep=2, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=32, data=Serialized[b'\x19o\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x44CC:2:0x0020] Received ZCL frame: b'\x19o\x00' [0x44CC:2:0x0020] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=True, *is_general=False, *is_reply=True), tsn=111, command_id=0, *direction=, *is_reply=True) [0x44CC:2:0x0020] Decoded ZCL frame: PollControl:checkin() [0x44CC:2:0x0020] Received command 0x00 (TSN 111): checkin() [0x44CC:2:0x0020] No explicit handler for cluster command 0x00: checkin() [0x44CC:2:0x0020]: Received 111 tsn command 'checkin': checkin() [0x44CC:2:0x0020] Sending request header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=False, direction=, disable_default_response=0, reserved=0, *is_cluster=True, *is_general=False, *is_reply=False), tsn=111, command_id=0, *direction=, *is_reply=False) [0x44CC:2:0x0020] Sending request: checkin_response(start_fast_polling=, fast_poll_timeout=8) [0x44cc] Extending timeout for 0x6f request [0xB963](lumi.remote.b1acn01): Device seen - marking the device available and resetting counter [0xB963](lumi.remote.b1acn01): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x44CC), src_ep=2, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=32, data=Serialized[b'\x18o\x0b\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=134, rssi=None) [0x44CC:2:0x0020] Received ZCL frame: b'\x18o\x0b\x00\x00' [0x44CC:2:0x0020] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=111, command_id=11, *direction=, *is_reply=True) [0x44CC:2:0x0020] Decoded ZCL frame: PollControl:Default_Response(command_id=0, status=) [0x44CC:2:0x0020]: executed 'checkin_response' command with args: '(True, 8)' kwargs: '{'tsn': 111}' result: Default_Response(command_id=0, status=) [0x44CC:2:0x0020] Sending request header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=False, direction=, disable_default_response=0, reserved=0, *is_cluster=True, *is_general=False, *is_reply=False), tsn=158, command_id=2, *direction=, *is_reply=False) [0x44CC:2:0x0020] Sending request: set_long_poll_interval(new_long_poll_interval=24) [0x44cc] Extending timeout for 0x9e request Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x44CC), src_ep=2, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=32, data=Serialized[b'\x18\x9e\x0b\x02\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x44CC:2:0x0020] Received ZCL frame: b'\x18\x9e\x0b\x02\x00' [0x44CC:2:0x0020] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=158, command_id=11, *direction=, *is_reply=True) [0x44CC:2:0x0020] Decoded ZCL frame: PollControl:Default_Response(command_id=2, status=) [0x44CC:2:0x0020]: executed 'set_long_poll_interval' command with args: '(24,)' kwargs: '{}' result: Default_Response(command_id=2, status=) [0x44CC:2:0x0020] Sending request header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=False, direction=, disable_default_response=0, reserved=0, *is_cluster=True, *is_general=False, *is_reply=False), tsn=159, command_id=1, *direction=, *is_reply=False) [0x44CC:2:0x0020] Sending request: fast_poll_stop() [0x44cc] Extending timeout for 0x9f request Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x78DF), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\x08\n\x00\x00%\xaeJ\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=134, rssi=None) [0x78DF:1:0x0702] Received ZCL frame: b'\x18\x08\n\x00\x00%\xaeJ\x00\x00\x00\x00' [0x78DF:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=8, command_id=10, *direction=, *is_reply=True) [0x78DF:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=19118))]) [0x78DF:1:0x0702] Received command 0x0A (TSN 8): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=19118))]) [0x78DF:1:0x0702] Attribute report received: current_summ_delivered=19118 Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x44CC), src_ep=2, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=32, data=Serialized[b'\x18\x9f\x0b\x01\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x44CC:2:0x0020] Received ZCL frame: b'\x18\x9f\x0b\x01\x00' [0x44CC:2:0x0020] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=159, command_id=11, *direction=, *is_reply=True) [0x44CC:2:0x0020] Decoded ZCL frame: PollControl:Default_Response(command_id=1, status=) [0x44CC:2:0x0020]: executed 'fast_poll_stop' command with args: '()' kwargs: '{}' result: Default_Response(command_id=1, status=) [0x4213](E21-N13A): Device seen - marking the device available and resetting counter [0x4213](E21-N13A): Update device availability - device available: True - new availability: True - changed: False New device 0x0b34 (00:0d:6f:00:02:3a:d9:6b) joined the network [0x0b34] Scheduling initialization Tries remaining: 3 [0x0b34] Requesting 'Node Descriptor' Tries remaining: 2 [0x0b34] Extending timeout for 0xa0 request Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x38E6), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=64704, data=Serialized[b'\x18\xcb\n\xf7\x00A-\x03(\x1b\x05!.\x00\x08!6\x01\n!\x00\x00\x0c \x14\x10 \x01\x12 \x00e \x00f \x03g \x00h \x00i \x01j \x01k \x03'], tx_options=, radius=29, non_member_radius=0, lqi=94, rssi=None) [0x38E6:1:0xfcc0] Received ZCL frame: b'\x18\xcb\n\xf7\x00A-\x03(\x1b\x05!.\x00\x08!6\x01\n!\x00\x00\x0c \x14\x10 \x01\x12 \x00e \x00f \x03g \x00h \x00i \x01j \x01k \x03' [0x38E6:1:0xfcc0] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=203, command_id=10, *direction=, *is_reply=True) [0x38E6:1:0xfcc0] Decoded ZCL frame: OppleCluster:Report_Attributes(attribute_reports=[Attribute(attrid=0x00F7, value=TypeValue(type=LVBytes, value=b'\x03(\x1b\x05!.\x00\x08!6\x01\n!\x00\x00\x0c \x14\x10 \x01\x12 \x00e \x00f \x03g \x00h \x00i \x01j \x01k \x03'))]) [0x38E6:1:0xfcc0] Received command 0x0A (TSN 203): Report_Attributes(attribute_reports=[Attribute(attrid=0x00F7, value=TypeValue(type=LVBytes, value=b'\x03(\x1b\x05!.\x00\x08!6\x01\n!\x00\x00\x0c \x14\x10 \x01\x12 \x00e \x00f \x03g \x00h \x00i \x01j \x01k \x03'))]) [0x38E6:1:0xfcc0] Attribute report received: 0x00F7=b'\x03(\x1b\x05!.\x00\x08!6\x01\n!\x00\x00\x0c \x14\x10 \x01\x12 \x00e \x00f \x03g \x00h \x00i \x01j \x01k \x03' [0xCA57](ZB-CL01): Device seen - marking the device available and resetting counter [0xCA57](ZB-CL01): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x4213), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\x0b\n\x00\x00%_\x93\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x4213:1:0x0702] Received ZCL frame: b'\x18\x0b\n\x00\x00%_\x93\x00\x00\x00\x00' [0x4213:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=11, command_id=10, *direction=, *is_reply=True) [0x4213:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=37727))]) [0x4213:1:0x0702] Received command 0x0A (TSN 11): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=37727))]) [0x4213:1:0x0702] Attribute report received: current_summ_delivered=37727 [0x614C](lumi.plug.maus01): Device seen - marking the device available and resetting counter [0x614C](lumi.plug.maus01): Update device availability - device available: True - new availability: True - changed: False [0xFABC](SML001): Device seen - marking the device available and resetting counter [0xFABC](SML001): Update device availability - device available: True - new availability: True - changed: False [0x8AD5](TS0011): Device seen - marking the device available and resetting counter [0x8AD5](TS0011): Update device availability - device available: True - new availability: True - changed: False [0x5053](lumi.weather): Device seen - marking the device available and resetting counter [0x5053](lumi.weather): Update device availability - device available: True - new availability: True - changed: False Tries remaining: 1 [0x0b34] Extending timeout for 0xa1 request [0x08FD](E21-N13A): Device seen - marking the device available and resetting counter [0x08FD](E21-N13A): Update device availability - device available: True - new availability: True - changed: False [0x79C7](lumi.sensor_magnet.aq2): Device seen - marking the device available and resetting counter [0x79C7](lumi.sensor_magnet.aq2): Update device availability - device available: True - new availability: True - changed: False Device 0x0b34 (00:0d:6f:00:02:3a:d9:6b) joined the network [0x0b34] Scheduling initialization [0x0b34] Canceling old initialize call Tries remaining: 3 [0x0b34] Requesting 'Node Descriptor' Tries remaining: 2 [0x0b34] Extending timeout for 0xa2 request Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0xDA77), src_ep=2, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1, data=Serialized[b'\x18\xf1\n!\x00 \xc8'], tx_options=, radius=28, non_member_radius=0, lqi=76, rssi=None) [0xDA77:2:0x0001] Received ZCL frame: b'\x18\xf1\n!\x00 \xc8' [0xDA77:2:0x0001] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=241, command_id=10, *direction=, *is_reply=True) [0xDA77:2:0x0001] Decoded ZCL frame: PowerConfiguration:Report_Attributes(attribute_reports=[Attribute(attrid=0x0021, value=TypeValue(type=uint8_t, value=200))]) [0xDA77:2:0x0001] Received command 0x0A (TSN 241): Report_Attributes(attribute_reports=[Attribute(attrid=0x0021, value=TypeValue(type=uint8_t, value=200))]) [0xDA77:2:0x0001] Attribute report received: battery_percentage_remaining=200 [0xB36C](lumi.remote.b1acn01): Device seen - marking the device available and resetting counter [0xB36C](lumi.remote.b1acn01): Update device availability - device available: True - new availability: True - changed: False [0xDA77](SML001): Device seen - marking the device available and resetting counter [0xDA77](SML001): Update device availability - device available: True - new availability: True - changed: False [0xA8EF](lumi.sensor_magnet.aq2): Device seen - marking the device available and resetting counter [0xA8EF](lumi.sensor_magnet.aq2): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x78DF), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\t\n\x00\x00%\xafJ\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=131, rssi=None) [0x78DF:1:0x0702] Received ZCL frame: b'\x18\t\n\x00\x00%\xafJ\x00\x00\x00\x00' [0x78DF:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=9, command_id=10, *direction=, *is_reply=True) [0x78DF:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=19119))]) [0x78DF:1:0x0702] Received command 0x0A (TSN 9): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=19119))]) [0x78DF:1:0x0702] Attribute report received: current_summ_delivered=19119 [0x44CC](SMARTCODE_CONVERT_GEN1): Device seen - marking the device available and resetting counter [0x44CC](SMARTCODE_CONVERT_GEN1): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x9E1D), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18~\n\x00\x00%\x88\xa3\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=134, rssi=None) [0x9E1D:1:0x0702] Received ZCL frame: b'\x18~\n\x00\x00%\x88\xa3\x00\x00\x00\x00' [0x9E1D:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=126, command_id=10, *direction=, *is_reply=True) [0x9E1D:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=41864))]) [0x9E1D:1:0x0702] Received command 0x0A (TSN 126): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=41864))]) [0x9E1D:1:0x0702] Attribute report received: current_summ_delivered=41864 [0x9E1D](E21-N13A): Device seen - marking the device available and resetting counter [0x9E1D](E21-N13A): Update device availability - device available: True - new availability: True - changed: False [0x4E44](DS01): Device seen - marking the device available and resetting counter [0x4E44](DS01): Update device availability - device available: True - new availability: True - changed: False [0x38E6](lumi.motion.ac01): Device seen - marking the device available and resetting counter [0x38E6](lumi.motion.ac01): Update device availability - device available: True - new availability: True - changed: False [0x75CB](DS01): Device seen - marking the device available and resetting counter [0x75CB](DS01): Update device availability - device available: True - new availability: True - changed: False [0xF3A1](TS0012): Device seen - marking the device available and resetting counter [0xF3A1](TS0012): Update device availability - device available: True - new availability: True - changed: False [0x8619](lumi.sensor_motion.aq2): Device seen - marking the device available and resetting counter [0x8619](lumi.sensor_motion.aq2): Update device availability - device available: True - new availability: True - changed: False [0x78DF](E21-N13A): Device seen - marking the device available and resetting counter [0x78DF](E21-N13A): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x78DF), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=6, data=Serialized[b'\x18\n\n\x00\x00\x10\x01'], tx_options=, radius=28, non_member_radius=0, lqi=134, rssi=None) [0x78DF:1:0x0006] Received ZCL frame: b'\x18\n\n\x00\x00\x10\x01' [0x78DF:1:0x0006] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=10, command_id=10, *direction=, *is_reply=True) [0x78DF:1:0x0006] Decoded ZCL frame: OnOff:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=Bool, value=))]) [0x78DF:1:0x0006] Received command 0x0A (TSN 10): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=Bool, value=))]) [0x78DF:1:0x0006] Attribute report received: on_off= Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x78DF), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\x0b\n\x00\x04*W\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=127, rssi=None) [0x78DF:1:0x0702] Received ZCL frame: b'\x18\x0b\n\x00\x04*W\x00\x00' [0x78DF:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=11, command_id=10, *direction=, *is_reply=True) [0x78DF:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0400, value=TypeValue(type=int24s, value=87))]) [0x78DF:1:0x0702] Received command 0x0A (TSN 11): Report_Attributes(attribute_reports=[Attribute(attrid=0x0400, value=TypeValue(type=int24s, value=87))]) [0x78DF:1:0x0702] Attribute report received: instantaneous_demand=87 [0x8F75](ZB-CL01): Device seen - marking the device available and resetting counter [0x8F75](ZB-CL01): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x4213), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\x0c\n\x00\x00%`\x93\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x4213:1:0x0702] Received ZCL frame: b'\x18\x0c\n\x00\x00%`\x93\x00\x00\x00\x00' [0x4213:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=12, command_id=10, *direction=, *is_reply=True) [0x4213:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=37728))]) [0x4213:1:0x0702] Received command 0x0A (TSN 12): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=37728))]) [0x4213:1:0x0702] Attribute report received: current_summ_delivered=37728 [0x3798](button): Device seen - marking the device available and resetting counter [0x3798](button): Update device availability - device available: True - new availability: True - changed: False [0x9254](DS01): Device seen - marking the device available and resetting counter [0x9254](DS01): Update device availability - device available: True - new availability: True - changed: False Tries remaining: 1 [0x0b34] Extending timeout for 0xa3 request Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x4213), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=6, data=Serialized[b'\x18\r\n\x00\x00\x10\x01'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x4213:1:0x0006] Received ZCL frame: b'\x18\r\n\x00\x00\x10\x01' [0x4213:1:0x0006] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=13, command_id=10, *direction=, *is_reply=True) [0x4213:1:0x0006] Decoded ZCL frame: OnOff:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=Bool, value=))]) [0x4213:1:0x0006] Received command 0x0A (TSN 13): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=Bool, value=))]) [0x4213:1:0x0006] Attribute report received: on_off= Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x4213), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\x0e\n\x00\x04*W\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x4213:1:0x0702] Received ZCL frame: b'\x18\x0e\n\x00\x04*W\x00\x00' [0x4213:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=14, command_id=10, *direction=, *is_reply=True) [0x4213:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0400, value=TypeValue(type=int24s, value=87))]) [0x4213:1:0x0702] Received command 0x0A (TSN 14): Report_Attributes(attribute_reports=[Attribute(attrid=0x0400, value=TypeValue(type=int24s, value=87))]) [0x4213:1:0x0702] Attribute report received: instantaneous_demand=87 [0x4213](E21-N13A): Device seen - marking the device available and resetting counter [0x4213](E21-N13A): Update device availability - device available: True - new availability: True - changed: False light.bedlamp_rigth_forceonlight: polling current state [0x8F75:1:0x0006] Sending request header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=False, direction=, disable_default_response=0, reserved=0, *is_cluster=False, *is_general=True, *is_reply=False), tsn=164, command_id=, *direction=, *is_reply=False) [0x8F75:1:0x0006] Sending request: Read_Attributes(attribute_ids=[0]) [0x334F](lumi.sensor_motion.aq2): Device seen - marking the device available and resetting counter [0x334F](lumi.sensor_motion.aq2): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x8F75), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=6, data=Serialized[b'\x18\xa4\x01\x00\x00\x00\x10\x00'], tx_options=, radius=29, non_member_radius=0, lqi=76, rssi=None) [0x8F75:1:0x0006] Received ZCL frame: b'\x18\xa4\x01\x00\x00\x00\x10\x00' [0x8F75:1:0x0006] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=164, command_id=1, *direction=, *is_reply=True) [0x8F75:1:0x0006] Decoded ZCL frame: OnOff:Read_Attributes_rsp(status_records=[ReadAttributeRecord(attrid=0x0000, status=, value=TypeValue(type=Bool, value=))]) [0x8F75:1:0x0008] Sending request header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=False, direction=, disable_default_response=0, reserved=0, *is_cluster=False, *is_general=True, *is_reply=False), tsn=165, command_id=, *direction=, *is_reply=False) [0x8F75:1:0x0008] Sending request: Read_Attributes(attribute_ids=[0]) Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x8F75), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=8, data=Serialized[b'\x18\xa5\x01\x00\x00\x00 \x1a'], tx_options=, radius=29, non_member_radius=0, lqi=80, rssi=None) [0x8F75:1:0x0008] Received ZCL frame: b'\x18\xa5\x01\x00\x00\x00 \x1a' [0x8F75:1:0x0008] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=165, command_id=1, *direction=, *is_reply=True) [0x8F75:1:0x0008] Decoded ZCL frame: LevelControl:Read_Attributes_rsp(status_records=[ReadAttributeRecord(attrid=0x0000, status=, value=TypeValue(type=uint8_t, value=26))]) [0x8F75:1:0x0008]: received attribute: 0 update with value: 26 [0x8F75:1:0x0300]: Reading attributes in chunks: ['color_mode', 'current_x', 'current_y', 'enhanced_current_hue', 'current_saturation'] [0x8F75:1:0x0300] Sending request header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=False, direction=, disable_default_response=0, reserved=0, *is_cluster=False, *is_general=True, *is_reply=False), tsn=166, command_id=, *direction=, *is_reply=False) [0x8F75:1:0x0300] Sending request: Read_Attributes(attribute_ids=[8, 3, 4, 16384, 1]) Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x8F75), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=768, data=Serialized[b'\x18\xa6\x01\x08\x00\x000\x02\x03\x00\x00!ka\x04\x00\x00!}`\x00@\x00!\x00\x00\x01\x00\x00 \x00'], tx_options=, radius=29, non_member_radius=0, lqi=76, rssi=None) [0x8F75:1:0x0300] Received ZCL frame: b'\x18\xa6\x01\x08\x00\x000\x02\x03\x00\x00!ka\x04\x00\x00!}`\x00@\x00!\x00\x00\x01\x00\x00 \x00' [0x8F75:1:0x0300] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=166, command_id=1, *direction=, *is_reply=True) [0x8F75:1:0x0300] Decoded ZCL frame: Color:Read_Attributes_rsp(status_records=[ReadAttributeRecord(attrid=0x0008, status=, value=TypeValue(type=enum8, value=)), ReadAttributeRecord(attrid=0x0003, status=, value=TypeValue(type=uint16_t, value=24939)), ReadAttributeRecord(attrid=0x0004, status=, value=TypeValue(type=uint16_t, value=24701)), ReadAttributeRecord(attrid=0x4000, status=, value=TypeValue(type=uint16_t, value=0)), ReadAttributeRecord(attrid=0x0001, status=, value=TypeValue(type=uint8_t, value=0))]) [0x8F75:1:0x0300]: Reading attributes in chunks: ['color_temperature', 'color_loop_active'] [0x8F75:1:0x0300] Sending request header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=False, direction=, disable_default_response=0, reserved=0, *is_cluster=False, *is_general=True, *is_reply=False), tsn=167, command_id=, *direction=, *is_reply=False) [0x8F75:1:0x0300] Sending request: Read_Attributes(attribute_ids=[7, 16386]) Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x8F75), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=768, data=Serialized[b'\x18\xa7\x01\x07\x00\x00!(\x01\x02@\x00 \x00'], tx_options=, radius=29, non_member_radius=0, lqi=83, rssi=None) [0x8F75:1:0x0300] Received ZCL frame: b'\x18\xa7\x01\x07\x00\x00!(\x01\x02@\x00 \x00' [0x8F75:1:0x0300] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=167, command_id=1, *direction=, *is_reply=True) [0x8F75:1:0x0300] Decoded ZCL frame: Color:Read_Attributes_rsp(status_records=[ReadAttributeRecord(attrid=0x0007, status=, value=TypeValue(type=uint16_t, value=296)), ReadAttributeRecord(attrid=0x4002, status=, value=TypeValue(type=uint8_t, value=0))]) [0xB963](lumi.remote.b1acn01): Device seen - marking the device available and resetting counter [0xB963](lumi.remote.b1acn01): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x78DF), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\x0c\n\x00\x00%\xb0J\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x78DF:1:0x0702] Received ZCL frame: b'\x18\x0c\n\x00\x00%\xb0J\x00\x00\x00\x00' [0x78DF:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=12, command_id=10, *direction=, *is_reply=True) [0x78DF:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=19120))]) [0x78DF:1:0x0702] Received command 0x0A (TSN 12): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=19120))]) [0x78DF:1:0x0702] Attribute report received: current_summ_delivered=19120 Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x9E1D), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\x7f\n\x00\x00%\x89\xa3\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=134, rssi=None) [0x9E1D:1:0x0702] Received ZCL frame: b'\x18\x7f\n\x00\x00%\x89\xa3\x00\x00\x00\x00' [0x9E1D:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=127, command_id=10, *direction=, *is_reply=True) [0x9E1D:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=41865))]) [0x9E1D:1:0x0702] Received command 0x0A (TSN 127): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=41865))]) [0x9E1D:1:0x0702] Attribute report received: current_summ_delivered=41865 Tries remaining: 2 [0x0b34] Requesting 'Node Descriptor' Tries remaining: 2 [0x0b34] Extending timeout for 0xa8 request [0xCA57](ZB-CL01): Device seen - marking the device available and resetting counter [0xCA57](ZB-CL01): Update device availability - device available: True - new availability: True - changed: False [0x614C](lumi.plug.maus01): Device seen - marking the device available and resetting counter [0x614C](lumi.plug.maus01): Update device availability - device available: True - new availability: True - changed: False [0xFABC](SML001): Device seen - marking the device available and resetting counter [0xFABC](SML001): Update device availability - device available: True - new availability: True - changed: False [0x8AD5](TS0011): Device seen - marking the device available and resetting counter [0x8AD5](TS0011): Update device availability - device available: True - new availability: True - changed: False [0x5053](lumi.weather): Device seen - marking the device available and resetting counter [0x5053](lumi.weather): Update device availability - device available: True - new availability: True - changed: False [0x08FD](E21-N13A): Device seen - marking the device available and resetting counter [0x08FD](E21-N13A): Update device availability - device available: True - new availability: True - changed: False [0x79C7](lumi.sensor_magnet.aq2): Device seen - marking the device available and resetting counter [0x79C7](lumi.sensor_magnet.aq2): Update device availability - device available: True - new availability: True - changed: False Received a packet: ZigbeePacket(src=AddrModeAddress(addr_mode=, address=0x4213), src_ep=1, dst=AddrModeAddress(addr_mode=, address=0x0000), dst_ep=1, source_route=None, extended_timeout=False, tsn=0, profile_id=260, cluster_id=1794, data=Serialized[b'\x18\x0f\n\x00\x00%a\x93\x00\x00\x00\x00'], tx_options=, radius=28, non_member_radius=0, lqi=138, rssi=None) [0x4213:1:0x0702] Received ZCL frame: b'\x18\x0f\n\x00\x00%a\x93\x00\x00\x00\x00' [0x4213:1:0x0702] Decoded ZCL frame header: ZCLHeader(frame_control=FrameControl(frame_type=, is_manufacturer_specific=0, direction=, disable_default_response=1, reserved=0, *is_cluster=False, *is_general=True, *is_reply=True), tsn=15, command_id=10, *direction=, *is_reply=True) [0x4213:1:0x0702] Decoded ZCL frame: Metering:Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=37729))]) [0x4213:1:0x0702] Received command 0x0A (TSN 15): Report_Attributes(attribute_reports=[Attribute(attrid=0x0000, value=TypeValue(type=uint48_t, value=37729))]) [0x4213:1:0x0702] Attribute report received: current_summ_delivered=37729 ```
alexisiglesias1 commented 2 years ago

New device 0x0b34 (00:0d:6f:00:02:3a:d9:6b) joined the network this is the device btw the device is a key fob with two buttons (iris key fob 903). The v2 version is supported with zha with the same functions but less battery, which is this https://zigbee.blakadder.com/Centralite_3450.htm

mbaran5 commented 2 years ago

The KEY903 uses the same proprietary protocol as all of the other Iris V1 stuff. Looking at the main zigpy repo - I see a 2 year old issue where it wasn’t feasible to add support for the custom zigbee clusters those devices use.

https://github.com/zigpy/zigpy/issues/132

I’d love to see a custom quirk for it, as I’ve got a boatload of DWS800 sensors that only work today on Hubitat.

This is a public repo of all of the AlertMe/Irisv1 devices and their groovy formatted handlers.

https://github.com/birdslikewires/hubitat/tree/master/alertme/drivers

I’m unsure if there’s additional support required by the platform for these to work, as I’ve never seen any other platform make use.

alexisiglesias1 commented 2 years ago

this user made some advance https://github.com/zigpy/zigpy/issues/121 but definitely have not idea how to implement it.

alexisiglesias1 commented 2 years ago

This is the iris's source code the published back when they close the platform https://github.com/arcus-smart-home/arcusios

Hedda commented 2 years ago

i bought a couple of iris v1 keyfob 903

Is that specific device listed on Zigbee Alliance Certifies Products, Zigbee2MQTT supported devices, or Blakadder's databases?

https://csa-iot.org/csa-iot_products/

https://www.zigbee2mqtt.io/supported-devices/

https://zigbee.blakadder.com/

I only see that Zigbee2MQTT and Blakadder currently list Iris Smart Fob Model 3450-L

https://www.zigbee2mqtt.io/devices/3450-L.html

https://zigbee.blakadder.com/Iris_3450-L.html

Hubitat docs at least looks to have some basic info on how to activate join-mode on IRIS V1 Keyfob KEY903

https://docs.hubitat.com/index.php?title=Join_and_Reset_Instructions_v1#IRIS

Brand | Device | Product Number | Device Type | Protocol -- | -- | -- | -- | -- IRIS | V1 Keyfob | KEY903 | Presence Sensor | Zigbee

Factory Reset

  1. Insert the supplied access tool into the small opening at the top of the key fob. Gently pry open the case to reveal the battery compartment.
  2. Remove the battery for at least 10 seconds. Reinsert the battery.
  3. Within 10 seconds of reinserting the battery, press either button 8 times in a row, once per second. The lights on the key fob should begin to flash.
    • NOTE: The LED can be dim, if you're in a well lighted area this light could be difficult to see.

Join the Zigbee Network

  1. Perform a factory reset before attempting to pair.
  2. From the Hubitat Web Interface home page, select Zigbee on the Device Discovery page to start device discovery.
  3. Insert the supplied access tool into the small opening at the top of the key fob. Gently pry open the case to reveal the battery compartment.
  4. Insert the battery in the correct orientation. The fob will light up and start flashing as it begins searching for your hub.
    • NOTE: The LED can be dim, if you're in a well lighted area this light could be difficult to see.
  5. Wait for the device to be added into the system, successful pairing will be confirmed by Hubitat Elevation™
  6. Watch the status in the device details page to confirm proper operation.

Leaving the Zigbee Network

  1. From the device's details page, select Remove Device, then Remove
  2. Insert the supplied access tool into the small opening at the top of the key fob. Gently pry open the case to reveal the battery compartment.
  3. Remove the battery for at least 10 seconds. Reinsert the battery.
  4. Within 10 seconds of reinserting the battery, press either button 8 times in a row, once per second. The lights on the key fob should begin to flash.
    • NOTE: The LED can be dim, if you're in a well lighted area this light could be difficult to see.
Brand
alexisiglesias1 commented 2 years ago

Thanks @Hedda, sadly the device seams that is not part of those database, I tried the method describe by Hubitat but I can't make it join zha. Zha is able to discover the device and tried to make it join but after a couple minutes just stop the searching.

github-actions[bot] commented 1 year ago

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.