This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Zigbee multi_sensor example has not connect

Hello everyone.

I'm trying out the "Zigbee Multi Sensor Example".
infocenter.nordicsemi.com/.../zigbee_multi_sensor_example.html

I have 2 nRF52840 devices.

I wrote the multi_senror firmware for one device.

examples\zigbee\experimental\multi_sensor

I wrote the CLI firmware to the other one.

examples\zigbee\experimental\cli\cli_agent_router


When both are powered on, the nRF52840 of the multi_sensor firmware outputs the following.


<info> app: Production configuration is not present or invalid (status: -1)
<info> app: Zigbee stack initialized
<info> app: Production configuration is not present or invalid (status: -1)
<info> app: Zigbee stack initialized
<error> app: Failed to join network (status: -1)
<error> app: Failed to join network (status: -1)
<error> app: Failed to join network (status: -1)
<error> app: Failed to join network (status: -1)
<error> app: Failed to join network (status: -1)
<error> app: Failed to join network (status: -1)
<error> app: Failed to join network (status: -1)

The CLI firmware, nRF52840, inputs and outputs the following


> bdb role zc
Coordinator set
Done.
> bdb start
Started coordinator
Done.
> zdo match_desc 0xff 0xff 0xff 0x0104 2 0x0402 0x0403 0
Sending broadcast request.
>
Done.

infocenter.nordicsemi.com/.../zigbee_multi_sensor_example.html

said as

> zdo match_desc 0xff 0xff 0xff 0x0104 2 0x0402 0x0403 0
src_addr=05B9 ep=10
Done.

but I don't get that kind of response.

Any help?


Translated with www.DeepL.com/Translator (free version)

  • Hello,

    I see that you are also working on other examples:

    https://devzone.nordicsemi.com/f/nordic-q-a/60244/zigbee-cli-example-and-light_bulb-example

    Perhaps one of the devices has stored network settings from a previous session (they are stored in flash, so turning off and on again will not delete it). Try to erase the flash of the DK. This can be done using nRF Command Line Tools, and the command: "nrfjprog --eraseall"

    Try to do this both on the coordinator (CLI device) and the multi_sensor device.

    If you intend to do this a lot (for testing), you can change:

    #define ERASE_PERSISTENT_CONFIG           ZB_FALSE
    to
    #define ERASE_PERSISTENT_CONFIG           ZB_TRUE

    near the top of main.c in both examples. This will erase the persistent network storage every time you reset the application.

    Another thing you need to check is that the channel is set correctly on both devices. On the CLI device you set the channel by using the command:

    bdb channel 16 (if you want to use channel 16). In sdk_config.h on the multi_sensor (on both, but particularly the multi_sensor, since you can change the other one on the fly), you can look for 

    #define ZIGBEE_CHANNEL.

    Try to set it to the same as your CLI device. I am not completely sure how the cli example works, but I usually use the bdb channel 16 command even though it is set to this before. If not, I believe it will scan through all channels, and this may take some time. If you use the channel command, you are 100% sure what channel you are using.

    See if any of those help, and let me know if it doesn't.

    Best regards,

    Edvin

  • Hi! Edvin! 

    Thank you for your reply.

    I do "Target" - "Erase All" in Segger Embeddid Studio.

    I get result connect multi_sensor node and cli node. Thank you.

    So, I set ZB_TRUE to #define ERASE_PERSISTENT_CONFIG.

    The multi_sensor node seems to have forgotten its settings every time.

    But, the cli node seems to need "Erase All" work to forget the settings... 

    I will continue to repeat the experiment...

Related