Max network size and hops


I want to setup network with one coordinator and many devices working as routers. All the routers will be aligned - they will work in one line.

How many of such devices can I have in the ZigBee network 100, 1000 more ?

If coordinator will send message is there any limit of hops ? I mean if there will be 1000 devices will the message arrive to the last device ?


Another question :

How many end devices can be connected to the ZigBee module in router mode ?

Such questions require ‘opinion’ responses as there is no one-size fits all answer. Thus my opinions …

Anyone wanting more than 100 nodes will probably require a ‘sniffer’ (Many thousands of $$) and the skills to tweak very detailed low-level settings, plus nodes must use API frames only. Forget trying to use AT mode.

We have customers using up to 1000 nodes, but they spend months tweaking their co-processor code to avoid broadcasts and anything which causes variable latency. They build determinism into their protocols to avoid cases where too many nodes try to talk at once - for example after a power failure and cold-systemwide reboot.

Will 1000 nodes ‘hop’ to the end, sure - sometimes. Since ZigBee is unreliable, it only takes 1 of the 1000 nodes to drop the packet and it won’t make it. Plus even with 1000 nodes in a line (say street-lights), you won’t really have 1000 hops. Assuming a node can see from 3 to 5 street-lights down the road, then you could end up with only 150 hops.

Plus they all compete for radio band-width so throughput could be quite dismal with lots of collisions, noise, retries & back-off. If XBee #267 can see 3 nodes in 1 direction and 5 in the other, that doesn’t mean that another dozen XBee ‘out-of-range’ for reliable 802.15.4 comms still won’t cause enough radio-noise to force collisions.

As for the number of children, that is also an opinion question. The exact theoritical number is 10 for a coordintaor and 12 for a common router.

However, you cannot control how child find a parent. So to say “I have 60 sleeping child, thus 5 router-parents is enough” is foolhardy. One child may see 3 parents and select one which you wish it would not, thus denying another child the only parent it can ‘see’. If a full parent detects an orphaned child with no parent, it WILL NOT attempt to move a child away to another parent to accomodate the orphan.

You need to build enough spare capacity into the system to avoid orphans. So I tend to tell people to target 6 to 8 children per parent, which allows for more flexible association and less chance of orphans. Or go with something like DigiMesh which has sleeping-routers and no children.

1 Like