Zigbee end device with low RSSI removed from the network

Hello,

we implemented Zigbee coordinator. Few end devices left the network and we know that the issue is our side because the same devices work well with other coordinators.

This issue is rare and it happens only with devices that were reporting low RSSI values (we don't know how to replicate the issue and we have no logs).

This issue is similar to the one described here but there is no conclusion there.

We use nrf52840 with nrf5 sdk for thread and Zigbee v4.2.0 without soft device library.

We have the following questions:

  1. Are you aware of any known issue related to described behaviour, with this SDK?
  2. Recently we added the management of ZB_ZDO_SIGNAL_DEVICE_UPDATE in the case where status is ZB_DEVICE_LEFT (zb_zdo_signal_device_update_params_t), previously we just ignored this signal. Can this be the issue?
  3. Can this signal be triggered even if there are no routers in the network?

Best regards.

Laura

Parents
  • Hi,

    This issue is rare and it happens only with devices that were reporting low RSSI values (we don't know how to replicate the issue and we have no logs).

    These make it hard to find the issue. You probably already know, but for the record:
    It would be a lot easier to debug the issue if

    • You were able to reproduce the issue
    • If we got logs from the issue.
    • If we got a sniffer trace from the issue (nRF Sniffer for 802.15.4)
    Are you aware of any known issue related to described behaviour, with this SDK?

    Nothing comes to mind

    Recently we added the management of ZB_ZDO_SIGNAL_DEVICE_UPDATE in the case where status is ZB_DEVICE_LEFT (zb_zdo_signal_device_update_params_t), previously we just ignored this signal. Can this be the issue?

    It should not be an issue, but I suggest that you try to disable it for a test and see if that fails still.

    Can this signal be triggered even if there are no routers in the network?

    It should still be as long as you got Coordinators.

    Are there any Routers in your network?

    Regards,
    Sigurd Hellesvik

  • Hello Sigurd,

    there shouldn't be routers but we are not 100% sure for some setups.

    Considering that we implemented Zigbee coordinator, when should we get ZB_ZDO_SIGNAL_DEVICE_UPDATE with status ZB_DEVICE_LEFT and when we should receive instead ZB_ZDO_SIGNAL_LEAVE_INDICATION with status ZB_NWK_LEAVE_TYPE_RESET ?

    Regards.

    Laura

  • Did some testing, and this is what we see:

    If ZC is parent for a ZED that leaves:

    • ZB_ZDO_SIGNAL_LEAVE_INDICATION is generated on ZC

    If ZR is parent for a ZED that leaves:

    • ZB_ZDO_SIGNAL_LEAVE_INDICATION is generated on ZR
    • ZB_ZDO_SIGNAL_DEVICE_UPDATE is generated on ZE with status 2
    • ZB_ZDO_SIGNAL_DEVICE_UPDATE is generated on ZC with status 2

    It seems like ZB_ZDO_SIGNAL_LEAVE_INDICATION is always generated on the device that is the parent.
    And that ZB_ZDO_SIGNAL_DEVICE_UPDATE is only genreated if a router was the parent.

    Does this answer your question?

  • Hi Sigurd,

    I would like to request you to reopen this ticket as we now have the Zigbee logs for the issue. For this particular ZED that left the network, Nordic Zigbee coordinator was seeing a low RSSI in the range -80 dBm to -95 dBm.  I have attached the log here and here are some details of the log: ZEDLeavesNetwork.pcapng

    Network key:18:25:45:BB:F2:D0:58:C8:8D:0C:2F:7A:C2:A5:BF:C2 (Reverse Order)

    TC Link key: 5A:69:67:42:65:65:41:6C:6C:69:61:6E:63:65:30:39 (Normal Order)

    Packet 293056 - ZED sends rejoin request. 

    Packet 293109 - ZED sends another rejoin request.

    Packet 293116 - Coordinator sends rejoin response with status success.

    Packet 293119 - Coordinator sends rejoin response with status success.

    Packet 293130 - Coordinator sends rejoin response with status success.

    Packet 293134 - ZED sends device announcement packet.

    Packet 293136, 293138, 293139 - ZED sends End Device Timeout Request.

    Packet 293141 - ZED sends Match Descriptor Request for OTA Upgrade cluster in Input Cluster List.

    Packet 293143 - ZED sends device announcement packet.

    Packet 293144 - ZED sends Match Descriptor Request for OTA Upgrade cluster in Input Cluster List.

    Packet 293146 - ZED sends IAS Zone notification.

    Packet 293148, 293149 - ZED sends data request.

    Packet 293151 - Coordinator sends Leave request, with rejoin set to False.

    Let me know if you need any other details to debug this further. Also, please let me know if you prefer to create a new ticket to track this.

    Regards,

    Anusha

  • Hi Anusha,

    It does seem a bit similar to KRKNWK-12017 (the link is for NCS, but Zigbee SDK v4.2.0 uses the same ZBOSS stack as the NCS versions listed there, v3.11). Could you try implementing the workaround listed there?

    we implemented Zigbee coordinator.

    So is the Coordinator the nRF running our Zigbee stack, and the ZEDs are not?

    Regards,

    Elfving

  • Hello Elfving,

    So is the Coordinator the nRF running our Zigbee stack, and the ZEDs are not?

    yes, correct. ZED doesn't implement Nordic Zigbee stack.

    It does seem a bit similar to KRKNWK-12017

    It doesn't seem related in my opinion. The workaround you suggested is intended for a ZED and it activates if signal ZB_ZDO_SIGNAL_LEAVE is triggered. Here instead we implemented Zigbee coordinator (ZC) and signal ZB_ZDO_SIGNAL_LEAVE "is generated when the device itself has left the network by sending leave command" (as per Nordic documentation). So this signal doesn't seem related to our scenario.

    Let me know if you don't agree with my previous statement or if you have any other hint.

    Thank you.

    Laura

Reply
  • Hello Elfving,

    So is the Coordinator the nRF running our Zigbee stack, and the ZEDs are not?

    yes, correct. ZED doesn't implement Nordic Zigbee stack.

    It does seem a bit similar to KRKNWK-12017

    It doesn't seem related in my opinion. The workaround you suggested is intended for a ZED and it activates if signal ZB_ZDO_SIGNAL_LEAVE is triggered. Here instead we implemented Zigbee coordinator (ZC) and signal ZB_ZDO_SIGNAL_LEAVE "is generated when the device itself has left the network by sending leave command" (as per Nordic documentation). So this signal doesn't seem related to our scenario.

    Let me know if you don't agree with my previous statement or if you have any other hint.

    Thank you.

    Laura

Children
No Data
Related