The Co-ordinator is responsible for starting a ZigBee network. Network initialisation involves the following steps:
1. Search for a Radio Channel
The Co-ordinator first searches for a suitable radio channel (usually the one which has least activity). This search can be limited to those channels that are known to be usable - for example, by avoiding frequencies in which it is known that a wireless LAN is operating.
2. Assign PAN ID
The Co-ordinator starts the network, assigning a PAN ID (Personal Area Network identifier) to the network. The PAN ID can be pre-determined, or can be obtained dynamically by detecting other networks operating in the same frequency channel and choosing a PAN ID that does not conflict with theirs.
At this stage, the Co-ordinator also assigns a network (short) address to itself. Usually, this is the address 0x0000.
3. Start the Network
The Co-ordinator then finishes configuring itself and starts itself in Co-ordinator mode. It is then ready to respond to queries from other devices that wish to join the network.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Joining a ZigBee Network
Once the network has been created by the Co-ordinator, other devices (Routers and End Devices) can join the network. Both Routers and the Co-ordinator have the capability to allow other nodes to join the network. The join process is as follows:
1. Search for Network
The new node first scans the available channels to find operating networks and identifies which one it should join. Multiple networks may operate in the same channel and are differentiated by their PAN IDs.
2. Select Parent
The node may be able to ‘see’ multiple Routers and a Co-ordinator from the same network, in which case it selects which one it should connect to. Usually, this is the one with the best signal.
3. Send Join Request
The node then sends a message to the relevant Router or Co-ordinator asking to join the network.
4. Accept of Reject Join