I need to output a minimum 1Khz pulse train out of a digital pin on a remote Xbee using API mode. The coordinator is being driven by an Arduino using serial API commands. My first attempt showed a very slow maximum reliable switching rate of only 2Hz. Any faster input rate resulted in unreliable oputputs until I got up to 200Hz, which resulted in absolutely no output.
So the question is- What is the maximum line passing switching rate using API?
The 900 HP module like any Mesh based product is only going to be able to have a max throughput of about 60bps. (Check the throughput section of the manual for actual rate) . This is not going to give you a rate much above the 2Hz rate you are seeing. If you need higher date rates then I would suggest looking at the XBee 802.15.4 modules or using external processors that can perform the action with minimal data transfers.
Thanks mvut. I also have the Xbee Pro 802.15.4, which I tried before the 900HP. The Pro 802.15.4 specifically states it doesn’t like updates faster than every 20ms. The 900HP says it is happy with updates every 1ms. I wasn’t able to replicate that, probably due to my lack of understanding of all of the API parameters. I have gone back to the Pro 802.15.4 and now I am using ADC inputs and PWM outputs, which easily exceed my speed requirements. I still have problems with my motor control, but since I am no longer trying to directly pass the pulses through Xbee the slow update speed is no longer and issue.