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

Problem of connection between Nordic's zigbee device and other Zigbee device

Hi,

I have a problem with a specific Zigbee certified device that I can't connect to my Nordic device.

When trying to connect to the device, I go to see the status:


void zboss_signal_handler(zb_uint8_t param)
{
    zb_zdo_app_signal_hdr_t  * p_sg_p = NULL;
    zb_zdo_app_signal_type_t   sig    = zb_get_app_signal(param, &p_sg_p);
    zb_ret_t                   status = ZB_GET_APP_SIGNAL_STATUS(param);
    zb_bool_t                  comm_status;

    switch (sig)
    {
        case ZB_BDB_SIGNAL_DEVICE_FIRST_START:
        case ZB_BDB_SIGNAL_DEVICE_REBOOT:
            
            if (status == RET_OK)
                        {
                NRF_LOG_INFO("Joined network successfully");
                bsp_board_led_on(ZIGBEE_NETWORK_STATE_LED);
            }

and it is equal to -1, so it is not RET_OK.

It's the first time that I have this problem of interoperability. Is it necessary to do something specific so that the Nordic device is visible from any other Zigbee device?

Best regards,

Raffaela

Parents Reply
  • Hi Marjeris,

    I finally found the formt that you asked to me. I'm using a coordinator that support netowrk steering commissioning. I'm not sure that they interchange keys but what I see is that the status that is calculated in this way is equivalent to 0xffff and not 0x0000. 

    zb_ret_t                   status = ZB_GET_APP_SIGNAL_STATUS(param);

    Tha last packet was a mistake, sorry. 

    I hope that the file help you to understand better the problem.

    Thank you and best regards,

    RaffaelaSniffer_20191106.pcapng 

Children
  • Hi Raffaela,

    Unfortunately, I didn't get so much information from the sniffer log. It looks like the router with long address f4:ce:36:49:80:94:a3:59 sends an association request to the coordinator and gets a association response from the coordinator but I don't see they are exchanging keys, then the router goes out of the network and sents an new association request again and gets a new short address...

    All the packets in the sniffer logs are also marked with "Bad FCS" which is strange, but I don't know if this is because of exporting the sniffer logs to Wireshark from another sniffer... It also seems like Wireshark was no able to decrypt all packets because there is not a key transfer between the devices.

    It would have been better if you could sniff using a nRF52840 dongle together with our sniffer software.

    You could try to check if you are erasing the persistance storage of the light bulb example each time you try to connect to the coordinator? Try doing a "nrfjprog --eraseall" and flash the DK again with the light_bulb example with zigbee_erase_persistent_storage set to ZB_FALSE. Try also to erase the stored information about the router in the coordinator and sniffing the association phase again.

    I have asked this before but could you give more details about what type of 3rd party coordinator you are using? Name and type information could be useful so I can report this internally.

    Best regards,

    Marjeris

  • Hi Marjeris,

    I didn't use Wireshark but I used Ubiqua Protocol Analyzer.

    Yes, I was erasing the persistance storage but I changed and I set ZB_FALSE not ZB_TRUE, but there is not difference. 

    The other thing that I noticed is that the incoming buffer is empty; I printed the buffer in this point:

    p_buffer = (zb_buf_t *)ZB_BUF_FROM_REF(param);

    This is the buffer that I saw:

    0000000000000000000000000000000000000000000000000000000000000000000000005000000000000000000000000000000000000000000000000000000000000000000000000000

    The Coordinator that I'm using is this:

    GWA1502 - 2-channel contact interface Zigbee, 230V AC

    Zigbee 3.0
    Remote Control
    GEWISS S.p.A.

    Best regards,

    Raffaela

  • Hi Raffaela,

    I read the user manual of the GWA1502 but didn't find so much useful information. It says you should do a factory reset before making the GWA1502 a coordinator, have you tried that?

    It's difficult to see what is happening without good sniffer traces. Are you able to set up our nRF Sniffer for 802.15.4 together with for example a nRF52840 dongle or a nRF52840 DK and sniff the traffic between the GWA1502 coordinator and the light bulb example?

    About the buffer being empty it all will depend where do you take the buffer from? If you simply allocate one, there is no point in printing its contents. If you get the buffer from the radio (through zigbee stack/endpoint), you may parse and print the contents of the incomming packet.

    Please take a look at components\zigbee\common\zigbee_logger_eprxcl.c, which we use in the CLI example to parse and print buffers.

    Best regards,

    Marjeris

  • Hi Marjeris,

    I did a factory reset before making the GWA1502 a coordinator.

    I set up your Sniffer and I send you the log ok?

    Thank you and best regards,

    RaffaelaGewiss Nordic.pcapng

  • Hi Raffaela,

    Thanks for the sniffer traces. I see that the joining procedure is started but not completed, but I am not sure why this is hapening. Do you also have the log output from the light_bulb example and can you attach them?

    I am a little unsure about what the "Many-to-One route request" send from the coordinator is for, but I am wondering if this is a legacy Zigbee PRO command. Have you tried setting zb_bdb_set_legacy_device_support(1)?

    Best regards,

    Marjeris

Related