XBee + Arduino UNO Timeout problem

I’m having an issue communicating between 2 Xbee’s I’ve recently purchased. One Xbee is mounted on a Sparkfun Xbee Explorer attached to my PC via USB, the other is mounted on a Sparkfun Xbee Shield which is attached to an Arduino UNO. The XBee’s are Series 2.5 versions.

I have configured both XBee’s using x-ctu. I flashed the one attached to the PC as the coordinator and the one attached to the UNO as a router. Both were also updated to their latest firmwares and they’re running with default settings at 9600 baud.

The issue I’m having is communication between the Xbee’s is extremely flaky. I created a simple loop-back sketch on the Arduino which simply prints back what it receives. When I run the range test through x-ctu it occasionally works but times out just as often. Screenshot here http://imgur.com/tCq1Q

If anyone has any suggestions I would appreciate it.

Try increasing the time out limit, that is in the advanced button.

That doesn’t work. It’s the same when running interactively. When typing characters they sometimes come through instantly where other times get ‘stuck’ where there is a delay of up to a few seconds before they come through.

Are the RTS & CTS lines being used (enabled in the parameters) and connected?

Or are they enabled and floating?

There has also been numerous reports of problems caused by the series diode on the XBee’s DIN line on the Explorer boards. I see that the XBee Shield also has this diode. The problem is that the processors output does not pull the DIN line low enough. Search the forum for a number of discussions and fixes.

Another issue is that the XBee’s internal pull-up must be enabled for the DIN line (AT command PR with bit 7 set). The processor’s output can only pull the DIN line low, the diode blocks a logic high so the internal pull-up is required.

waltr:
Are the RTS & CTS lines being used (enabled in the parameters) and connected?

Or are they enabled and floating?

I’m not 100% sure what you mean by this. CTS Flow Control is on by default on DIO7, RTS is off by default on DIO6 on both XBees.

waltr:
Another issue is that the XBee’s internal pull-up must be enabled for the DIN line (AT command PR with bit 7 set). The processor’s output can only pull the DIN line low, the diode blocks a logic high so the internal pull-up is required.

I tried this setting on both XBees as well as just the one connected to the shield. Both variations didn’t work and no loop-back occurred at all :frowning:

I think it’s worth mentioning the issues I’m having seem to be almost identical to the ones described here but the pull up solution doesn’t seem to work for me (granted the XBees I’m using are a different model). viewtopic.php?f=13&t=21832

I suspect the diode on the shield may be the issue. I’d really love to find a solution to this that doesn’t involve potentially breaking the board :\

To clarify the hardware I’m using:

Arduino UNO

XBee Explorer USB: http://www.sparkfun.com/products/8687

XBee Shield: http://www.sparkfun.com/products/9976

2x XBee 2.5: http://www.sparkfun.com/products/8695