I couldn’t get my 2 Arduinos with an XBee shield to talk to each other, despite the instructions on the Arduino site.
The XBee shields I obtained use a XBee series 2 module, while the instructions on the Arduino site are for the older XBee module.
After configuring one of my XBee modules as coordinator, the XBee modules were able to communicate with each other.
You need the X-CTU configuration program to configure an XBee series 2 module as coordinator. To connect the XBee module to your PC, you’ve to:
1) remove the ATmega µp from the Arduino board (remember the orientation of the ATmega chip to put it back afterwards):
2: set the jumpers on the XBee shield to USB:
3) Connect the XBee shield to the Arduino, and then connect the Arduino via USB to your computer, run the X-CTU configuration program and read the configuration:
4) Select the coordinator function set and write it to the XBee module:
When the XBee module has restarted and if your other XBee module is powered on, you’ll see the LEDs of both modules starting to flash, indicating they formed a WPAN network.
After configuring the XBee module, revert to the original hardware configuration: disconnect the Arduino board from your PC, set the jumpers on the XBee shield back to XBee and reinsert your ATmega µp in the Arduino board (watch out for the polarity of the chip).
Now I’m able to run the simple example successfully.