ZigBee radio channel change

Hello,

We developed with nRF5240 using nRF5 SDK as zigbee coordinator and I have some questions about channel change mechanism:

  1. By choosing 'coordinator' as network role at startup, is this automatically also the network channel manager as explained in Annex E of Zigbee specification https://zigbeealliance.org/wp-content/uploads/2019/11/docs-05-3474-21-0csg-zigbee-specification.pdf ?
  2. When a high value of transmit failures is detected, is channel scan done? Is channel changed?
  3. Do you manage the reception of Mgmt_NWK_Update_notify? Which actions are performed?
  4. In Zigbee spec about transmit failures, there is written: "the network manager would report to the local application using Mgmt_NWK_Update_notify and the application can force a channel change using the Mgmt_NWK_Update_req.". Do you ever notify application about this through Zigbee signal handler or any callback? Do you implemented a function that I can use to send Mgmt_NWK_Update_req to force channel change?

I've read another question about the same topic:  https://devzone.nordicsemi.com/f/nordic-q-a/94366/zigbee-radio-channel-selection-and-change-during-run-time/398143 
But I couldn't find the answers.

Best regards.

Laura

  • Hello Marte,

    yes these are the logs (file name contains encryption key): Nordic automatically sends nwk update req(pkt 49969, key 8D 80 4F 1B 40 13 3D D9 F3 E3 4B 2F 69 BD 0A B8).pcapng

    This was a stress test with:

    • Coordinator running our application with nRF5 SDK for Thread and Zigbee v4.1.0 and initially in channel 22. Channel mask enabling all Zigbee channel.

    • Nordic nRF52840 DK with radio test FW from Nordic: nRF5 SDK v17.1.0: Radio Test Example
      I started TX sweep with following configurations:

      • Radio mode: Ieee802154_250Kbit

      • Radio TX power: 8 dBm

      • Start Channel: 22

      • End Channel: 23

      • Time on each channel: 99 ms

    • 5 routers joined to the network. They sometimes send Mgmt_NWK_Update_notify to notify about the state of each Zigbee channel.

    Result: After many packet transmissions and after power cycling both coordinator and routers, the coordinator sent a command to move from current channel (22) to channel 24

    I don't know if power cycling was needed, I did it to try to speed up the test which anyway took time.

    In the logs you can see that all routers received the command to move to the new network and executed it. Unfortunately there are other routers that we integrate that do not support the nwk update req for a new channel and they wouldn't be reachable any more if coordinator changes channel.

    Is there a way to disable this feature? I do not want to set the channel mask enabling only one channel but I'd like to leave the coordinator choose the best channel at the beginning, when it is installed, and keep that one. In this way I expect that in an installation with many coordinators, they will be in different channels.

    Thank you

    Laura

  • Hi Laura,

    The coordinator receives Mgmt_NWK_Update_notify commands from one of the devices (0x9970), with information about the energy levels of the different channels. The results of the energy scan shows that channel 24 has the lowest energy level, i.e. the least amount of noise. I also see the same device sending several route failures to the coordinator, but this could also be when you power cycled the device.

    It seems like the Mgmt_NWK_Update_notify caused the coordinator to initiate channel change since the energy levels reported matches with the channel, and I see that the device sent the command before the coordinator sent Mgmt_NWK_Update_req to inform devices of the channel change.

    You can disable processing of Mgmt_NWK_Update_notify command by calling zb_zdo_disable_network_mgmt_channel_update().
    The device will still process Mgmt_NWK_Update_req commands as according to the specification.

    Best regards,
    Marte

  • Hi Laura,

    Please let me know if you still have issues with the channel change after disabling Mgmt_NWK_Update_notify Slight smile

    Best regards,
    Marte

  • Hello Marte,

    I'm not sure if it is working because I left my setup running during the night and I saw that Nordic changed channel and that routers remained in previous channel. I don't have logs. I'll keep this monitored.

    In the meanwhile, do you have any explanations for this? Devices in my setup are the same one listed above.

    Thank you 

    Laura

Related