Configuring two Xbee Pro 50mW Serie 2B

Hi,

I have buy two xbee Pro 50mW Series 2B and also two arduino xbee shield.

I can´t put this two xbee comunicating correctly:

I use X-CTU software to configue, when i make test/Query the information about modem type is XBP24BSE for each xbee.

I try configuring with the firmware XBP24BSE, Function set in one of them with ZIGBEE SE COORD API Version 3130 and the other ZIGBEE SE ROUTER API Version 3300, i change only PAN ID for the same value (100).

He make the upload sucessfuly and can read the values. When i try the comand +++ for each xbee in terminal of x-ctu i don´t get any response and the range test give me 100% of errors in comunication between my Xbee´s.

If i try the firmware XBP24BZ7 Version 20A7 with function set to ZIGBEE Coordinator AT and router AT (Version 22A7) changing only PAN ID to 100, i can comunicate succesfuly in terminal and in range test but lost a lot of pakackage (97% in 10000 package 1bit).

Can i put i firmware diferent of my modem like i explain in my configuration?how can i reduce the lost package?

Do you know how i can configure the original firmware of my modem (XBP24BSE) to can comunicate with my two xbee´s?

I m sorry for my english, im new in zigbee world and really want to learn how configure correctly this stuff, i bought this xbee because the range (1600m) is fine for my project.

Thanks,

Carlos Tavares

i bought this xbee because the range (1600m) is fine for my project.

The range of the Pro version of the Series 1 models is the same, and they are meant for point-to-point. If possible, I'd return those and get the correct ones to use for point-to-point.

I understand your point, but i buy this by internet, and if i change for serie one is more $ to expand:(

I make some test and can give me 100% of good in test range using XBP24BZ7, i have change the values of destination adress High and Low on both of them with values of each SH and SL.

But i don´t understand why the firmware i used with 100% sucess is diferent with the firmware the test/query give me.

Do you undersdand my question?do you think i can connect third Xbee with this technic?

In x-ctu, make sure that you have the 'enable API' clicked and that the 'use escape characters' button is selected. These are under the PC Settings tab.
Also in x-ctu, under the modem configuration tab, make sure that AP is set to 2.

Duckie

Do you undersdand my question?

No, I'm sorry I don't. I never had any success with Series 2 models. I gave up and returned them Jack Christensen is our resident expert on Series 2 models.

do you think i can connect third Xbee with this technic?

Yes. Three or more is what the Series 2 models are designed for.

Couple things:

(1) XBees will not respond to +++ when running the API firmware, only to valid API frames.

(2) The range test requires setting the the loopback cluster ID on the transmitting node (CI = 0x12). See chapter 6 in the Product Manual for a few more details. It sounds like they were communicating OK in AT mode. I wouldn't worry about the range test "failures" if the test isn't set up correctly.

This stuff isn't that hard, but there certainly are a lot of ways to set it up incorrectly. I've just started working on a blog post which will explain configuring point-to-point communication for two S2 modules. Unfortunately it may take a little while yet before I post it.

I'm not clear what your preferred interface is, AT or API?

To run a loopback/range test, I recommend using a module with AT firmware as the source node, connected directly to X-CTU with a suitable adapter/FTDI interface.

Configure the module with X-CTU as explained below (from the Product Manual). Then use the range test functionality in X-CTU.

To send data to the loopback cluster ID on the data endpoint of a remote device, set the CI command value to
0x12. The SE and DE commands should be set to 0xE8 (default value). The DH and DL commands should be set
to the address of the remote (0 for the coordinator, or the 64-bit address of the remote). After exiting command
mode, any received serial characters will be transmitted to the remote device, and returned to the sender.

I've just started working on a blog post which will explain configuring point-to-point communication for two S2 modules. Unfortunately it may take a little while yet before I post it.

Please do. Something developed and tested, by someone that knows what they are doing, is sorely needed.

API and AT mode stuff would be great.

Really thanks for your help, i make some progress:

with firmware XBP24BZ7 in AT mode with correct settings i have 100% good package in test range (20000 package 32bits).

I'm not clear what your preferred interface is, AT or API?

Im not sure about benefits to use AT or API, im new in xbee world sorry:( im learning at this point, i want use this two xbee to comunicate between two arduino uno for an Robot (One for robot chassis and other one for commands). i have third xbee and want to use this connected in PC with usb explorer shield to comunicate to other two arduino by xbee network to send sketch and send comands. With actual configuration i think i can´t add this third Xbee, it´s mandatory use API mode for more of than 2 xbee?

Jack Christensen sorry for my questions, but can you explain the diff between AT and API? and why i use a firmware diferent of original modem of my xbee´s?it is normal operation?

ok i understand the principal diference of AT and API: AT for two Xbee´s and API for a network to more than 2 xbee´s:)

The next step is to try configure the api mode for three xbee

i have make the configuration for API mode but i think is not working:

I trying with only two xbee´s

Set both xbee with XBP24BSE with one of them in ZIGBEE SE COORD API and the other in ZIGBEE ROUTER SE API, i enable in PC Settings ENABLE API and USE ESCAPE CHARACTERS in both, i change PAN ID to the same number (100) on both and change the value AP - API ENABLE to 2 on both.

I try the test range but give me 100% of errors:(

In range test, it´s mandatory to put the destination adress? the rssi is always at -104

To do a range test in API mode, the proper API frame needs to be sent to the module sending the test data. Again I refer to the Product Manual. I hope you have downloaded it and are studying it, get it here.

Send an Explicit Addressing ZigBee Command API frame (0x11) using 0x12 as the cluster ID and 0xE8 as the source and destination endpoint. Data packets received by the remote will be echoed back to the sender.

This can be done in X-CTU but it is a manual and tedious process to build up the proper frame, calculate the checksum, etc. If it were me, I don't think I'd worry about it at this point, it's extremely unlikely that there is an issue in this area.

I am a huge fan of Andrew Rapp's XBee library for use with API mode. If, after reading the product manual, you decide that API mode is for you, be sure to get it. (IMHO API mode is almost always the right answer, but indeed there is a learning curve.)

PaulS:

I've just started working on a blog post which will explain configuring point-to-point communication for two S2 modules. Unfortunately it may take a little while yet before I post it.

Please do. Something developed and tested, by someone that knows what they are doing, is sorely needed.

API and AT mode stuff would be great.

Indeed. Only so many hours you know. The initial thing I'm working on will just be a simple AT mode chat between two S2 modules. It only requires a few parameters to be set, but I'm going into excruciating detail, including a lot of background information, etc., so it's looking more like a chapter in a book. But maybe then it can serve as a foundation for more advanced topics. Maybe I'll call it "Series 2 XBees for the Absolute Beginner" (is that already trademarked?)

hi,

After some tests im stay with actual config in AT mode, just comunicating with 2 xbee, i have bought in amazon a great book about zigbee from faruk faludi "Building Wireless Sensor Networks with Zigbee, Xbee, Arduino and processing" i m waiting to receive the book to study the API mode for future projects.

At this moment i have another little problem, in one side i have one arduino, one xbee shield (libelium), the xbee and one ardumoto, on other side i have on arduino, one xbee shield (libelium), the xbee and on joystick shield (Sparkfun). The problem is because the design configuration of xbee shield i can´t put toghether all the shields, i need to use wire between arduino to xbee shield and between ardumoto, the same thing on other side with joystick shield. do know how can i do something better without using wires?choosing other xbee shield from sparkfun for exemple?

im thinking to replace the xbee shield from libeluim to xbee wireless proto shield (xbee) from sparkfun, with this i think can put the arduino, after that the wireless proto shield with xbee and at final the ardumoto:)

Faludi's book is very good. I've stayed away from shields, my personal favorite is AFI's XBee Adapter kit, which I can either plug into a breadboard or directly into an FTDI cable or breakout board to configure the XBee with X-CTU. There are some wires involved that way but such is life.

Hi everyone,
I know this post is a while back, but I'm facing similar troubles.

I'm trying to get my 2 XBP24BZ7 to talk to each other by setting them up
as coordinator and router AT; however, they won't talk to each other.
I made sure that DH and DL are the ones from the other, that PANID and
Scan Channels are the same, yet no communication. I connected the router
to Arduino and the coordinator vie USB Dongle to the computer and tried to send a simple message to the Terminal but there
is nothing coming in to the Terminal.

If you had similar problems and know what's usually the problem, I would
appreciate your help.

Thanks

My recommendation is that you get a second USB Explorer/dongle. Take the Arduino/XBee shield completely out of the picture. Get one radio, connected to one version of X-CTU talking to the other radio, connected to another version of X-CTU before you even unwrap the Arduino or XBee shield.

I connected the router to Arduino

With duct tape? Super glue? Used bubble gum?