Select particular end-device to send data.

Hi all,
I’m a newbe in XBee. I have three XB24-B modems. One of them is a coordinator using the function set ZIGBEE COORDINATOR AT. The other two are
end devices using the function set ZIGBEE ROUTER/END DEVICE AT. The coordinator is connection to a microcontroller (pic18F452). I want to send data to one end device at a time. All the end devices are also connected with PIC18F452. Currently I’m using AT command to enter the command mode and set the DL address of the desired end device in the coordinator with the ATDL command. My question is whether this is the proper way to do it, or is there any other better way.

Thanks in advance.

You will find using API mode on the coordinator (COR) simplifies your task IF your design is only that the COR talks to either of the remotes & the remotes just reply to the COR. You’ll find having to manually ‘break’ into command mode between packets error prone. Plus you get no feedback in At mode - in API mode you’ll get a TX Status response from the COR stating that the packet was handed off or not.

in ZigBee, the DH/DL 0/0 is a short hand for ‘return to COR’, which makes that part of your job easy even in AT mode.

Thanks for the reply.
As i have stated earlier,l i’m a newbie in this field, i haven’t used API mode yet. I have started reading about it after reading your reply. Can you please suggest me a good link about API tutorial.
Furthermore my end devices won’t reply to the coordinator immediately. They will send notifications to the coordinator every once in a while. Can i track which end device sent the notification using API mode?

Well, there is this stuff, which might be more Python oriented:

If you just do a web search for digi xbee api code you will find a variety of online open-source projects based in C, C++, Java and so on. ‘’ for example has several.

Thanks a lot for the help.