Zigbee: How to send Route Record?

Hi, I'm developing a device based on nrf52840 and SDK for Thread and Zigbee 3.2.0.

I would like to send Route Record command to the coordinator to be able to see the actual route in the homey developer tools environment.

How can I modify the Light Bulb example to send the Route Record containing the routing table?

Right now the Light Bulb example shows a question mark in the Route column:

Sniffer logs of the Light Bulb example when joining a homey hub:

light_bulb_joining.pcapng

You can compare it with a hue socket (route shown in the route column):

Sniffer logs of the hue socket when joining a homey hub:

hue_socket_joining.pcapng

(I simplified my Zigbee network for better readability. Normally I have more devices in the network.)

Thanks in advance!

Best regards,

Piotr

  • Hello Jørgen,

    I have read the whole thread and many others before I asked my previous question but I’m still not able to find information, why route request command is dropped in case of so simple network made of the coordinator and a router?

    By the way, to keep the question more general and useful for other forum guests I’m referring to the Light Bulb example but in reality I have a ready product waiting for a green light for production.

    Please find attached sniffer logs of the Light Bulb example where no reply to many-to-one route request with no reply can be seen (at the end of the file):

    light_bulb_joining_220929.pcapng

    Additionally please find printed logs of the successful joining:

    As mentioned before, there is only the coordinator and the Light Bulb example in my network. I have analyzed the ZigBee Specification (especially 3.6.3.5.2 Upon Receipt of a Route Request Command Frame) and in my opinion, when there is only the coordinator and one router in the network, the many-to-one route request can be discarded if:

    • there is no routing capacity
    • nwkSymLink is TRUE and there is no entry corresponding to the transmit device in neighbor table, or outgoing cost field of the entry has value 0

    I doubt that there is no routing capacity in case of the Light Bulb example and the outgoing cost is 1. I'm not able to check the nwkSymLink value.

    I can't find the reason why the route requests are not replied?

    Best regards,

    Piotr

  • Hi,

    The older nRF5 SDK v3.2.0 that you use integrates ZBOSS v3.1.0, which does not support this feature.
    You will not be able to certify a device build with nRF5 SDK for Thread and Zigbee v3.2.0, as the Zigbee stack (ZBOSS) in this SDK version is based on Zigbee R21 specifications. You will have to migrate your project to SDK v4.2.0, which supports R22 specifications, in order to go through product certification with CSA.
    I have asked our Zigbee team if it is possible to configure a Route Report packet from the application, but I have not found any APIs that suggests this is possible. I will get back to you if the Zigbee team have some APIs for this that I have missed.
    Best regards,
    Jørgen
Related