Unwanted "Leave" command from coordinator

Hello, I developed for my customer, a ZigBee coordinator in last 2019, using nRF5 SDK for Thread and Zigbee v3.2.0.
Now my customer has this issue:
- End Node connected via router, if router deads, the coordinator rejoin it but after few time send "leave" command to end node
Here attached WireShark log file of ZigBee radio communication
Some details:
- end node has NW address E3DF
- router has NW address D01B
- at line 14631 and following, the router deads
- at line 14680 starting end node routing search
- at line 14747 and followings rejon procedure
- at line 14850 Coordinator sends LEAVE command to end node E3DF

What is happened? Why Coordinator sends "Leave" command?
How can we avoid this unwanted behaviour?

Many thanks for your help!

Abele

Parents Reply
  • Kennet,

    My customer is very worried, his coordinators is on field form over one year and in last months it have are several cases of this "unwanted leave"
    If this could help, seems that this issue is more frequent when one router dies and the coordinator try to rejon the end node, but really it happens sometime also for other reasons.
    In any case, could you help me to to update to SDK 4.2?
    What and how I have to do?
    How many hard could be?
    Could you suggest some step to do?
    Please note that to develop coordinator I started from CLI example ... there are someone in Nordic that can see my project to suggest best way to upgrade it?

    Many thanks for your patience

    Regards

Children
  • I believe both the nRF5 SDK and T&Z releases should have some migration information in the release notes or as a separate document. Though you may first need to look at the first major release update (e.g. 4.0 or 16.0), since that kind of information is typically there.

    Kenneth

  • Kennet, 
    as you know, the guide is only a brief summary how to migrate standard examples, but in my use case I used CLI example on SDK 3.2 as base for my project, to which I have done a lot changes.
    Then, sure I will read guide, but perphaps I will need technical support by Nordic to best understand and to solve possible difficulties and issues.
    Surely the developer teams has some suggests and indications how to make migration more easily.
    Could I have these helps?
    Thanks

    PS there are chances to migrate only the ZBOSS stack v3.1.0 to ZBOSS stack v3.3.0, and not all SDK?

    Abele

  • ... I taked a look to new SDK 4.2 ... it hasn't IAR EWARM project!!!
    My actual project is under IAR EWARM 8.30

  • Hi Abele,

    abe said:
    PS there are chances to migrate only the ZBOSS stack v3.1.0 to ZBOSS stack v3.3.0, and not all SDK?

    You must migrate the entire SDK if you are to migrate.

    abe said:
    it hasn't IAR EWARM project!!!

    Support for IAR and Keil was removed in v4.2. You can use either GCC or SES.

    I have an update from the developers:

    1. Migration from SDK v3.2 to SDK v4.X requires factory reset.
    2. For start I would suggest customer reproduces this issue and collects ZBOSS trace logs so maybe we can have an idea why is this happening in the first place.
      Also, can the same issue be reproduced with an unmodified coordinator or CLI example?
      Could customer also describe how their application works as this is based on the CLI sample?
      How big is this network? How many nodes are there?
    3. I have seen that the customer's coordinator device behaves in a strange manner - Link status is being sent 2 or even 3 times more frequent than it is supposed to - I don't have good explanation for this but it's concerning.
    4. I have seen that customer has some issues with the device - ZBOSS asserts were triggered which results in zb_nrf52840_abort() being called.
      https://devzone.nordicsemi.com/f/nordic-q-a/85117/zb_nrf52840_abort-function
      Have these issues been solved already?
      Also, was the device programmed to reset itself after zb_nrf52840_abort() is invoked in the customer's application?
    5. If customer is willing to share application's source code we may have a quick look at it. Making sure that there are no "unholy" things done or some shenanigans may be a good start.

    Best regards,

    Marte

  • You must migrate the entire SDK if you are to migrate.

    then it is not possible to update only Zboss Stack? I have already done it from 3.0.0 to 3.1,0

    reproduces this issue and collects ZBOSS trace logs

    Zboss log need to be enabled (how we can do it?) and then we can try to reproduce the issue and register data. We must also "fisically" connect the serial out that is not provided on our boards

    Could customer also describe how their application works as this is based on the CLI sample?

    In general, from  CLI sample is used only the Coordinator code part, in order to join on network some kind of end nodes.
    This brief summary of functionallity:
    - Start steering command to accept end node on network
    - FDS memory handle to store End Node data (such as cluster endpoint attributes values and so on)
    - BLE gatt used to read and write some ZigBee attributes
    - some attributes configured on autoreporting (tipically for ON/OFF status for bulbs and smart plug) and charge level for battery powered end nodes (such as door sensor, pusbutton, motion sensor ...)

    How big is this network? How many nodes are there?

    The networks we are using are 5 to 10 end nodes

    Link status is being sent 2 or even 3 times more frequent than it is supposed

    This is same on CLI original example of SDK3.2

    ZBOSS asserts were triggered which results in zb_nrf52840_abort() being called.

    Yes solved

    If customer is willing to share application's source code

    I will ask to you if it agree your request

    Also, can the same issue be reproduced with an unmodified coordinator or CLI example?

    This is not very simple to test ... but could you help us anyway to find the issue?

    Thanks for help

    Abele

Related