Xbee shield communication problem

Hi guys--

Anybody had a similar problem? I just purchased one of nkc's xbee shields, assembled it, and connected it to the unchipped arduino and attempted to change its parameters. I used Tom Igoe's processing sketch for serial communication between the xbee and the mac (takes care of the carriage return / "enter" key thing), but I can't seem to communicate with the xbee module. My understanding is that after every parameter correctly entered, it's supposed to confirm by responding "OK." I enter command mode by pressing "+++" and get an "OK" back, but it won't respond to any of the other commands I send it.

The power light blinks on and off regularly as well-- so do you guys think this is some kind of user error in the assembly or maybe something else on the software side ? Any help would be appreciated.

Thanks!

-Ryan

I'm receiving the same issue. I haven't solved it yet unfortunately.

What I have done is removed the XBee Shield from the equation till I figure out why the XBee isn't responding correctly.

On an unchipped Arduino board I've got: Arduino 3.3V -- XBee pin 1 (Vcc) Arduino pin 0 (RX) -- XBee pin 2 (TX) Arduino pin 1 (TX) -- XBee pin 3 (RX) Arduino GND -- XBee pin 10 Indicator LEDs on XBee pins 6 (Signal), 13 (Power), 15 (Indicator)

+++ responds with OK ATMY - no reponse ATID - no response (unless I turn on a second XBee then it responds with 3332)

Also tried +++,ATID and +++,ATID\r to no avail.

If I get anywhere with this I'll be sure to post. I've had a couple helpful hints already from this messageboard.

Just got it working. I was unable to get the serial connection working through Arduino IDE, Processing, or Tom Igoe's script. The moment I changed to Terminal (I'm on OS X if that makes any difference) everything responded perfectly.

I tried it with Arduino IDE and it doesn't work. It works fine with X-CTU terminal mode. You need a terminal emulation software that sends each character as soon as it is typed.

So in Terminal, how do you go about addressing the port that the arduino is plugged into to communicate with the xbee? glad you found something that worked-- please share!

I’m running on OS X. I think a PC should be roughly the same, except that you would locate the COM port associated with the USB.

  • Open Terminal, type “ls /dev/tty.*” for a list of ports. Locate the USB port where the XBee is situated.
  • Type “screen /dev/tty.usb[port] 9600”. 9600 is the default baud, if you’ve changed it, put in the proper baud rate here
  • Within screen, “+++” should respond “OK”
  • If you wait 10 seconds it will silently drop out of command mode, so perform all your commands before the timeout occurs. If it does timeout, just type in “+++” again.
  • Perform your settings configurations. ie. ATID should respond “1111”. To set the ID, type “ATID1234”. “ATID” now should report “1234”.
  • “ATWR” writes the configuration setting to the XBee.
  • “ATCN” closes command mode.
  • The rest of the settings can be found in the XBee spec sheet PDF.
  • “Ctrl-A :quit” to quit from screen.

For ease of configuring an XBee, I haven't seen anything better than the X-CTU tool. You can download it from the Maxstream site (or Digi I think they call themselves). Once it was hooked up with my Arduino and XBee shield, it worked like a dream. I was able to easily talk to the XBee device, and using the modem configuration tab, easily read and set all of the configurable XBee values. Much easier than trying to do it via the Arduino IDE or Hyperterminal or whatever.

For ease of configuring an XBee, I haven't seen anything better than the X-CTU tool. You can download it from the Maxstream site (or Digi I think they call themselves). Once it was hooked up with my Arduino and XBee shield, it worked like a dream. I was able to easily talk to the XBee device, and using the modem configuration tab, easily read and set all of the configurable XBee values. Much easier than trying to do it via the Arduino IDE or Hyperterminal or whatever.

You are right... unfortunately I think X-CTU only runs on Windows.