If you are in an environment with a lot of 2.4GHz radio usage, it is possible that the Zigbee radio will have difficulties on some channels. There are 2 methods for changing the radio channel:
=================================================
The first step is to download a radio configuration utility called X-CTU. I talked about this on the Surveyor Robotics Forum in
http://www.surveyor.com/cgi-bin/yabb2/YaBB.pl?num=1163007842 You can take a look at those instructions, but basically, you should download
http://www.maxstream.net/support/setup_xctu_4.9.8.exe and
http://www.surveyor.com/srvdownload/xbee_v1090.zip Start X-CTU, select the USB radio's com port, set the baud rate to 115200, and hit Test/Query. You should get a message that says
Communication with modem..OK
Modem type = XBP24
Modem firmware version = 1090
Then click on the "Modem Configuration". Click the Read button to get the radio parameters. Under RF Interfacing, you'll see CH-Channel. Change from Channel C to Channel E, then click the Write button.
It's possible that this will fail because X-CTU needs a copy of the radio firmware (v1090). If so, you'll have to click on the "Download new versions.." button. Update source from "File", and locate "xbee_v1090.zip" that you previously downloaded. You'll only have to perform this step once, and when X-CTU runs in the future, it will have already stored v1090 in its own directory.
Once that's settled, click on the "Modem Configuration" tab. Click the Read button to get the radio parameters. Under RF Interfacing. Change from Channel C to Channel E, then click the Write button. Unplug the USB card, pull the radio module from the robot, plug it in place of the radio module on the USB card, click "Write" again, and you should be finished. Reinstall the other radio in the robot, and see if this fixes things.
=================================================
The other method is to use a terminal and some modem commands:
When you have a 115200 baud, 8-bit, no parity, one stop bit terminal connection to the USB radio, type
+++
The USB board should respond
OK
To confirm the current channel, type
ATCH<enter>
The USB board should respond
C
To change the channel to E, type
ATCHE,WR<enter>
This will change the channel and write it to flash memory. You can confirm that the channel was updated by typing
ATCH<enter>
You can then close the programming mode with
ATCN<enter>
Make certain to change the channels of both radios (USB and robot). The range of available channels is 0x0C to 0x18, and the default is 0x0C (you don't have to type the '0'). Note also that the radio will time out of this programming mode fairly quickly if it doesn't receive additional commands. The default timeout is approx 6 seconds
=================================================