Dinamically change router PANID from coordinator with API

Hi everyone,

I’m struggling with a lot of questions:

1- How the coordinator with API firmware can choose a PANID that is not used in other closed networks when it is powered on for the first time?
2- How a microcontroller (arduino) can understand that the local coordinator node has choosed a new PANID?
3- If I know the serial code of a router with API firmware, how can I dinamically set the PANID of the remote router node from the coordinatore node?

Thank you so much in advance,


Per the Zigbee standard, part of the start up process is performing a beacon scan looking for existing PAN’s.

Your process can determine this by querying the ID or OP parameter.

You can only talk to a remote node once is it associated to the network. Until then, you do not have the ability to communicate with a remote module over the air.

I’m thinking about a procedure that, knowing the serial of the remote node, can allow the coordinator to ask the remote node to join its panid. Otherwise there will never be a future when you can buy a washing machine equipped with a xbee node that can dinamically associate to the coordinator node without manually setting the panid on the washing machine, am I right?

Sounds like you are thinking of Smart Energy where a server Enables Joining on a Coordinator for a small period of time. Then the Mac address is provided during association and verified with the server. Yes that can be done using specific commands that are both internal and external to the radios.

Do you have any examples mvut? How is it possible to remotely force the end node to join a certain panid? Can you explain your sentence “that can be done using specific commands that are both internal and external to the radios”? Thank you so much in advance

One way is to simply set the PAN ID on the radio in question. As for the others, I don’t have samples as they were done in a smart energy product that requires Server level auth.