I have a network of 4 XBee ZB OEM RF modules. One is configured as a coordinator with 2141 firmware, the other three are configured as end device with 2941 firmware. The four devices are separated from each other by about 6-8 feet.
I want to sample 3 analog inputs on each end device at a 10 Hz rate. I am setting up each end device with the DL and DH commands with parameter 0 to return data to the coordinator, and the IR command with parameter 100 to return data every 100 ms (10 Hz). A host computer then queries the coordinator for data from the end notes via its serial port.
This initially appears to work fine. But, after a few minutes of running, I find that data is not received from one or more of the end nodes for many (~8 to > 30) seconds at a time. After the long delay the data starts up again. I understand that with the current shipping version of firmware, end devices cannot be made to not sleep. I see that they do sleep for about .3 seconds every 5 seconds (with default settings for ST, SN, and SP) and I loose some data during those periods and that makes sense. But the reason for the long periods of data loss is unclear.
I did verify that the end devices are not sleeping (by monitoring the On/Sleep pin) during the periods of long data loss.
I verified that a single end device talking to a coordinator does not show long periods of data loss. Two end devices does show the problem. Increasing the period of sampling to 500 with two end devices does not appear to show the problem.
Analysis of the amount of data being sent suggests only about 11k bits per second, so I don’t think that I am saturating the RF bandwidth.
Any suggestions on what I can look at?
Edit - I reproduced the problem with 2 end devices and sample period set to 500.
Message was edited by: amann