Many-to-one routing
A common scenario in a wireless network is when most of the nodes need to communicate with a single node that performs some centralized function. This node is often referred to as a collector or concentrator.
If every XBee in this kind of network had to discover a route before sending data to the collector, the network could easily become inundated with broadcast route discovery messages.
Many-to-one routing is an optimization for this scenario. Rather than require each XBee to perform its own route discovery, the data collector sends a single many-to-one broadcast transmission to establish reverse routes on all devices. Since no responses are generated, network traffic congestion is minimized.
Note Many-to-one routing establishes routing paths from many XBees to one data collector and allows any node in the network to route data to a well known concentrator through a single routing table entry in every device.
In a single many-to-one route discovery operation, the route to the data collector is established in all devices:
- The data collector broadcasts a many-to-one route request message with the target discovery address set to the address of the data collector.
- XBee modules receiving this request store a reverse many-to-one routing table entry to create a path back to the data collector.
- The Zigbee stack on a device uses historical link quality information about each neighbor to select a reliable neighbor for the reverse route.
- The many-to-one route request should be sent periodically to update and refresh the reverse routes in the network.
You can also use Many-to-one routing if there are multiple data collectors in the network. If more than one collector sends a many-to-one broadcast, XBee modules create one reverse routing table entry for each collector.
Enable many-to-one routing
Using many-to-one routing with an XBee-based central collector node is easy: the Many-to-one Route Broadcast Timeout (AR) parameter enables many-to-one broadcasting on an XBee module.
The AR parameter sets a time interval (measured in 10 second units) for sending the many-to-one broadcast transmission. Setting AR to 0xFF di sables many-to-one broadcasting on the device. Setting AR to 0 causes an XBee to immediately send a single a many-to-one broadcast.
Disable many-to-one routing
To disable many-to-one routing in a network:
- Set AR parameter on the central data collector node to 0xFF and save the configuration. This ends the many-to-one broadcast sent by the data collector.
- Broadcast a Software Reset (FR) command to the network and wait for the network to reform. This removes the data collector status as an aggregator from the routing tables.