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

[nRF52840 + zigbee] How to know whether ZED is jointed to ZR or ZC ?

Hi,

I am developing zigbee solutions for sensor monitoring.

situation a)

ZC(1)------------ZR(2)--------------ZED(3)

situation b)

ZC(1)------------ZR(2)

    |

   +--------------ZED(3)

I have known that ZED is joined ZR or ZC.

I have some questions about joining.

1)  If ZED(3) is power on and ZED is joined ZR, ZED is joined to ZR all the time ?

2) If ZED is re-powered, ZED can join to ZC directly ?

3) How does ZED know that it is joined to ZR or ZC ?

Another question.

Is there way to communicate between ZC(1) and ZC(2) with different PAN-ID by zigbee protocol ?

ZC(1) --PANID_a

  |  <-- zigbee communiction

ZC(2) --PANID_b

Thanks.

  • First ZED is connected to (joined) ZR or ZC.

    At that time ZED want to know the parent short address.

    If ZED joined to ZR, ZED retrieve the ZR's short address.

    If ZED joined to ZC, ZED retrieves the ZC's short address(In this case, parent address will be zero).

  • Hi.

    Sorry that I misunderstood you.

    I've looked around and there is no direct API for getting the short address to a parent node from a ZED.

    You could try to call zb_zdo_mgmt_lqi_req destined to itself (child node), this will give you zb_zdo_neighbor_table_record_t. The response should then be parsed and you can search for entry with type_flags corresponding to the parent node you're looking for.

    I haven't tried this myself and I don't have any more details right now so I will need to ask around if this is a approach you would want to try.

    Best regards,

    Andreas

Related