Intermittent problem with ATDN command

I am using xBee series 2 with 1 coordinator and 2 routers configured as Zigbee AT & operating in transparent mode.

I always use the ATDNxxxx command at the coordinator to address each router before sending text.

this works well most of the time. However, every now and then I get a situation where I get:

ATDNxxxx ----> (xxxx is the ascii name of the remote Zigbee router)
OK <----
ERROR <----

In the manual it says I should get OK or ERROR as a response to the ATDN command…but I get both.

can anyone advise on a solution or workaround for this situation.


I am trying to reproduce the error. What version are your modules and are there any special settings you are using?


Thanks for the response.

I am using
1 x xBee Pro Series 2 XBP24-ZB
Function Set: Zigbee Coordinator AT
Version: 2CA7

2 x xBee Series 2 XB24-ZB (not pro)
Function Set: Zigbee Router AT
Version: 2CA7

Baud Rate is set to 125000 bps (BD: 1E848)
Routers have DH,DL set to 0 (which means everything is sent to coordinator)

RO:C (Packetisation timeout - I only send 12 byte packets)
GT:2 (Guard Time)
PL:4 (Power level: highest)
PM:1 (boot mode)
ZS: 2 (Zigbee Pro stack profile)

So every second I send a message and get a response to/from one router. The next second the other one. Within 10 cycles I get the error (Usually around cycle 8 or 9, but can be at othr time)

As i am switching to destination every cycle at the coordinator, I issue the +++,ATDNxxx as per my initial post.

The reason for the baud rate of 125000 is because it matches the ability of my controller’s clock rate (my controller cant handle 115kbps accurately.

Finally, if I slow down the rate at which I cycle between routers to say every 5 seconds it has no effect (problem still occurs)

In my testing setup, all units are located within 5 feet of each other.

I haven’t been able to reproduce it on my system yet. (I will try to write the send script I am missing when I have a second.) But my initial guess is that you are sending a bit fast for jumping in and out of command mode. Have you tried doing it in API mode?

My preference is not to use API mode.(implementation will be more complex etc)
I couldnt see any specs/limits for ‘jumping in and out of command mode’.

Any other ideas welcome.

BTW: there is a similar(?) problem reported on the sparkfun forum, but no solution was ever posted. see:>>>;t=34670&amp;p=154754&amp;hilit=atdn#p154754