My explanation/theory is an (over)simplification, in skimming the linked document along with some additional ChatGPTing:
- Zigbee has 4 routing protocols (Broadcast, Multicast, Unicast and Coordinator discovery) - the example above only uses 2.
- Multicast is used for groups.
- However multicast falls back to broadcast - additionally even when operating “normally” multicast differs from broadcast in how effective the “filtering” is.
- There are going to be some retries.
- Embedded devices are made to a price point, so they likely have limited memory for managing unicast and multicast routing tables.
- Overall performance is going to be specific to your setup / RF conditions.
I have been using “fuzzy” words like “small”, “large” and “effective”, which leads to obvious follow up requests for definitions of those terms.
However we are quickly going to come back to: It’s going to depend upon your setup / conditions - which is why I am not defining said terms.
We can make some generalizations:
- For “small” Zigbee setups - this discussion likely doesn’t matter - because the network will have enough bandwidth that it can waste time transmitting and the user won’t notice.
- There is likely an upper limit so for very “large” networks, performance will likely degrade whatever your do.
TL;DR - My explanation is not accurate, but it’s likely accurate enough that for most people the guidance is going to be - if you are having issues, try removing unnecessary groups and see if things improve.
The documentation says that broadcast messages are transmitted 3 times.
Unicast messages are acknowledged so under good conditions, there will be at least twice (2 times) the number of messages I listed previously, if more retries are required it could be 3, 4, 5, 6 … times that number of messages.
So again an accurate answer is going to require knowledge of your specific setup - if we assume that on average unicast messages are transmitted 3 times then the ratio 3:3 is going to be preserved so my (over)simplification may be good enough.
Given the amount of generalizations I have stated here, a quick eyeballing of the routing map and saying it looks like most devices are around 3 hops away from the coordinator is probably good enough.
