This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RE: CC2538-CC2592EMK: Router sending leave request to end device.

Guru 14805 points
Other Parts Discussed in Thread: CC2538-CC2592EMK, Z-STACK, CC2650

 device sends mac data req continuously 

then it send orphan notification in packet no.- 38097,

rejoin request in packet no.-38130

rejoin response with association successful  in packet  -38251,38254

then why ZNP send leave in packet -38271,38288

  • Turned this into a new post, please provide the sniffer log (previous attachment was corrupted/missing) and remind me what Stack you are using for the ZC and ZED.

    Regards,
    Ryan
  • data req orphan rejoin req rejoin resp leave.rar

    z-stack 3.0 for ZNP and ZR (cc2538-cc2592emk)

    Z-stack 1.2.2a for  ZED (cc2650)

  • If BDB_DEFAULT_TC_REQUIRE_KEY_EXCHANGE is defined as true (default) then the end device is being requested to leave since no TC Link Key update procedure is initiated by the end device upon joining. The timeout for which this must occur is determined by BDB_DEFAULT_TC_REQUIRE_KEY_EXCHANGE. This is most likely not an issue since the device was successfully on the network before.

    There are several MAC ACKs missing and difficulty between the ZC and ZED communicating as shown by the multiple rejoin requests followed by a 25s delay before the rejoin response. The data polls cease during this time, what timeout values are used? Compare this to the last time (32041, 32046) which showed a valid MAC ACK only took half a second for association, the packets are the exact same in both instances and yet a device announce immediately followed instead of a leave request. There appears to be difficulty in communicating between devices.

    Regards,
    Ryan
  • "The data polls cease during this time, what timeout values are used?"

    1) what do you mean by data poll cease ?
    2) which timeout values you are asking about?
  • I feel that there are too many packets missing to properly evaluate this issue. What I can guess is that the rejoin response is not acknowledged, causing the parent to send a leave request instead of device announce. Your network retry settings can help determine why the rejoin response is only attempted once.

    Regards,
    Ryan
  • 1) you mean to say that after rejoin response ZED is not sending device announcement hence ZC is sending leave request?
    2) how can I verify network retry setting?
    3) this issue I have observed mainly with MTO routing
  • 1) ZED is not acknowledging rejoin response, coordinator sends the device announce.
    2) f8wConfig.cfg, nwk_globals.h, ZGlobals.h
    3) We've discussed MTO routing in your other posts.

    Regards,
    Ryan
  • Network retry settings are as shown below -

    -DAPSC_MAX_FRAME_RETRIES=5
    MAX_POLL_FAILURE_RETRIES 1
    MAX_DATA_RETRIES 2
    MAX_BCAST_RETRIES 2

    what modification should i do ??
  • Since Rejoin Response is not an APS packet, poll, or broadcast I would suggest trying MAX_DATA_RETRIES. But you need to figure out why your ZED is not acknowledging. Can you provide new or refreshed sniffer logs? Why does the link status of your ZC not have any list entries?

    Regards,
    Ryan
  • I have some observations during testing-
    1) sometime it happens that packet is transmitted but disappears in air or not demodulated by receiving devices , this can be possibility that ZED is not acknowledging.But is it desired that if rejoin response is not acknowledged by ZED then ZR/ZC will send leave request?
    2) Also during rejoin if ZED sends rejoin request to any router other then its previous PARENT ROUTER then the new router will send leave request with rejoin true.
    3) Link status contains only routers in the list entries-and in 72EC pan there is no router only zc and zed
  • 1) Having just received a rejoin request the ZR/ZC would expect an acknowledgement of the rejoin response from the ZED, similar to other Zigbee packet transactions. Upon not receiving one the routing device assumes an error was made and sends a leave request to clean up the association.
    2) You will need to provide a log of this behavior, if a parent device is polled by an end device which is not its child (due to being expired or not being its child at all) then the parent device must request this end device to leave the network with rejoin set to TRUE so that this device can rejoin the network and find a new parent (which could be the same router or another one). Device and parent announcements help routing devices determine if their children have been picked up by other parents or not.
    3) My mistake, I was confusing it with Pan ID 0x0F7C.

    Edit: Thread closed unless more information is provided.

    Regards,
    Ryan