My system is a coordinator an 30 routers (they can be 90) separated 15 m straight forward. The problem is that i cant test my system before installing.
Now im using the API transmit command to send a message through the mesh (i indicate the 64-bit adress). I am afraid because of the delay that this command is going to suffer because eache time i send data it has to find the route. Do you think that my system is going to be a mess or maybe the delay is going to be large but the system is not going to fall.
I have carefully read the datasheet and I have encountered the following questions to inprove my system:
- For my application of a coordinator and 30 routers is very interesting choice “many-to-one routing” because the 30 routers only send data to the coordinator. I wonder if the last router on my network would be able to keep the direction of 30 routers in the stack.
- To turn the “many-to-one routing” I have understood that you have to change the AR record to lower value than 0xFF (AR should be set on only one device to enable many-toone routing to the device y the AR command must be set less than 0xFF on a data collector device (the device implementing source routing) to send periodic many-to-one route request transmissions) but do I have to activate something in the routers ?
- On the other hand, source routing would me very well but on page 47 tells me that you can only store a route of 10 hops ( “The XBee canbuffer one source route that includes up to 10 hops (excluding source and destination).” ). However, the API command “Create Source Route” It does not put any restriction on the Create Source Route API command.
- By default the log is 30 NH and indicates that it is enough for 8 hops. In my case that would bring about. 120 (30 hops).
- If you leave BH to 0x00 indicates that it going to use the maximum number of hops. What is the maximum number?
Thanks a lot!!
Just a quick note to consider. This is an example to think about. Your end router will not use each router between itself and the coordinator to “Hop”. Since you have 30 routers in a line and they are 15 meters apart that gives a total distance of 450 meters. If you are using the non-pro xbee outside you have an aproximate range of 120 meters. This means that the end router will only require 4 hops to get the data to the coordinator.
So all the routers are going to use the minimum nº of hops?
Regarding your questions, many-to-one and source routing are not needed unless your application will communicate with more than 40 devices. For example, if you have a coordinator and 40 (or less) devices, you shouldn’t need many-to-one or source routing.
1-3) If you have a network with more than 40 devices (that are sending or receiving data), many-to-one routing should be enabled on the coordinator (or whichever device is communicating with all others) by setting AR < 0xFF. This will create routes from all the remote devices back to the device that sends the many-to-one broadcast. (This device is typically called the data concentrator or collector.) When many-to-one routing is enabled, the remote devices transmit a source route to the concentrator any time they send data to the concentrator. (No configuration is required on the remote devices to enable sending source routes. Once they receive a many-to-one route request from a device, they will send source routes prior to each transmission to that device.) This provides the concentrator with a route to each device. (The application should store these routes.) When the concentrator needs to send data to one of the remotes, it should first send a Create Source Route API frame (ID 0x21) to the UART of the concentrator, then send the data transmission with the 0x10 or 0x11 frame. One easy way to collect routes for all devices is to send a many to one route request (set AR < 0xFF), then send an ATND command. Again, many-to-one and source routing is recommended if the network may scale to more than about 40 devices. Many to one and source routing should be used together - many-to-one routes data into the concentrator, and source routing routes data out into the devices in the network.
The NH command sets the unicast timeout (how long the XBee waits to receive a network acknowledgment).
The maximum broadcast radius (BH) is 30.
The number of hops is dependent on the link quality between hops while trying to keep the hops to a minimum.
Message was edited by: fordcf2000
> Regarding your questions, many-to-one and source
> routing are not needed unless your application will
> communicate with more than 40 devices. For example,
> if you have a coordinator and 40 (or less) devices,
> you shouldn’t need many-to-one or source routing.
Where do you take that 40 devices value from? Is this a practical value obtained empiricaly?
I have an application occasionnally suffering from what seems to be address/route discovery filling the bandwidth. I have one coordinator acting as a data collector, and up to 32 remote devices sending data every 10s. interval. Sometimes (every hour or so) the coordinator has to send something to the remotes. This seems to induce network failure, where no device can send its periodic message to the coordinator. Only a coordinator reset seems to fix it.
Do you think I am in a situation requiring “many to one” and “source routing”?