I have been developing some test code for the XBEE digimesh modules operating in API mode 2 (with escape characters).
The hardware consists of two modules: an xbee development board as the receiver and an XBEE module on a custom PCB as the transmitter. The receiver was set to AT mode whilst the transmitter is set to API mode 2.
When the network is switched on, operation is healthy for a couple of minutes, after some time transmission suddenly stops. I can confirm that the transmitter XBEE continues to receive API packets; I can confirm, using the API packet builder tool, that the packets are accurate, yet the receiver outputs nothing.
I tried sending the same packet using another xbee module setup similarly to the original transmitter and it works perfectly even when tried at the same point the other one stops working.
I then pasued the software of the MCU on board the transmitter, and whilst the board was still powered, I removed the XBEE and put it on again (to reset the XBEE only) and when I resume the MCU operations, the network is healthy once again.
Is there some register which I need to read, possibly in command mode, just to confirm that the XBEE is ready to receive another API packet? Cause it seems to me that the XBEE is crashing, maybe since I am overloading something (data rate is actually quite slow: 4Hz max)..
A typical packet that I send is:
7e 00 4d 10 00 00 7d 33 a2 00 40 da e8 a4 ff fe 00 00 3c 2a 48 49 53 30 30 30 30 31 44 ff ff ff ff 3a 00 00 00 00 00 00 00 0f 42 e6 53 ff ff ff fe b4 00 00 00 00 00 00 00 18 4b ce 64 00 00 00 7d 31 a7 00 00 00 00 00 00 00 00 00 00 00 2a 3e 0d 0a dd
Thanks for your time.