I have two XBee End device with one Router (All Version 8062). When End device wake’s up, it send an IO sample. Immediatly after recepetion of packet (10ms) by router, since wake time is only one second, AT Remote Command is sent to get battery voltage.
Sometime it works, maybe for 10 cycles but always ends up not working and giving me the “Remote Command Transmission Failed” (status 04 on the 97 AT remote command response).
Getting the IO sample from both End device is impeccable.
I have played with the 10ms delay (1 to 100ms) but no luck.
Seems maybe with SO - Bit 8 enabled but what would cause the device not to stay awake for full ST ? (Sleep mode is 5).
Any work around? Solution?
This might not be the problem, but it is a risk. Keep in mind you have a ‘queue’ leaving the ‘router’. So what can happen is this:
- you send the battery query to node A, but it’s sleeping
- the router is blocked now (AT commands block)
- meanwhile node B talks, and the incoming queue isn’t blocked
- so you QUEUE a battery query for node B
- by the time the node-A query times out, node B is already sleeping.
At this point you could be stuck in that EVERYTIME a node sends in its IO, the other sleeping node is consuming the attention of the router.
I’m not sure how to handle this, but if you could handling incoming and outgoing by different threads, then you could detect if the outgoing is blocked and ‘skip’ the battery read to break this cycle.
I am having a similar problem - remote at query commands always return 04.
Did you solve this?