I have 2 Xbee Pro 900HP modules that I am trying to do some basic testing on. I have both connected to separate PCs using xplorers and have had no trouble accessing the modules with XCTU. Both have the latest 8071 digimesh firmware.
The only changes I have made from defaults is setting the destination address HI/LO. However, I have tried with the default settings here as well. All serial and PAN ID settings are identical on both devices at 9600 baud and 8-none-1.
As for my test procedure, I am simply opening the serial console on each PC in XCTU and connecting to both devices. I then create an ASCII packet that says “Hello Module A”. I then send the packet. I have tried sending a single packet and sending a sequence of 100 or so.
Now that you know what I’m trying to accomplish, do you see any reason this wouldn’t work? Is the digimesh too weak? Can I configure the modules better for direct 1-to-1 serial communication? Thank you in advance for any assistance.
How far apart are the radios?
What are you using for antennas?
What is the full part number of the modules you are working with?
What did you set the DL and DH to? What are the actual values?
Thanks for answering.
A couple feet from each other
Xbee-PRO 900HP S3B - f/w v8071
First off, lower the PL command on both radios. Next, the SH is actually 0013A200 so make sure that you add the leading 00’s in the DH field.
00 gets erased when I read settings after i have written the 00 so i don’t think they are required. The power level does not seem to make a difference either. Also, when I attempt to discover nodes in the same network, none show up. These xbees should be in same network as soon as they are powered on within range of each other and with default settings, correct?
Ok, I have successfully gotten the xbees to exchange a few packets. However, it is only a few, and then the xbees seem to completely stop talking to each other. Any idea why I cannot build robust communication? These should be able to send data miles, I would think a few inches apart on my bench should be working flawlessly.
Adjust the Channel mask as well. Make sure that you are skipping every other channel and that both radios have the same values.
What should I set the channel mask to?
I would suggest skipping every other channel or every 2 channels so that you use more than the first 20 frequencies.
You can try 0xAAAAAAAAAA which is every other channel.
Still no improvement
Is this a common issue?
Also, is this the recommended f/w:
XBP9B-DM - Xbee PRO 900HP 200K - 8074
I assume DM tells me it is configured for digimesh? Is this best for 2 modules? Other options are DP and XC
Ultimately, I am trying to transmit Serial data via UART, one way. But at the moment I am trying to establish basic, reliable communication between the xbees using xplorer modules.
Thanks for the continuing assistance. I’m usual pretty capable when configuring electronics, for someone who doesn’t do it professionally. Seems like it should’ve been simple to establish this communication with these xbees. However, I do not have the knowledge of xbees to determine what’s going wrong. Glad you all are here!!
Digi Mesh or DM is not the best firmware necessarily for a point to point connection. As you noted, the DP version most certainly could be used. You might be able to improve things by setting the TO command to 0x40.
No this is not normal. Most folks never have to do much beyond setting the DL and DH fields for small networks.
What are you mounting the radios on? What data rate are you trying to operate at? Are you using CTS and RTS flow control?
OK, I have also tried the DP version with similar results, sometimes I get a few packets then nothing after. I will try the TO command.
Thats what I figured. These are brand new PRO series modules. I really want to like them.
Radios are sitting on a wood table with two PCs, each connected to an xbee explorer via USB. They are less than a foot from each other. I have tried multiple PL settings(including lowest) to see if I am over or under powering the signal. No improvements. 9600 Baud.
On my final project assembly I had not planned to use cts and rts flow control. On my current bench I assumed the xplorer/usb/xctu connection would provide flow control(Plus I can see the cts icon flashing appropriately on serial console)
In addition, I noticed today that the LEDs on the xplorers blink appropriately when I send a packet(s) from one module
As for the CE setting, I have tried several combinations. Default is 0 - Standard Router. What is the best configuration for a 2 module setup?
Just simply having them at default settings except for setting the DL/DH, PL and TO commands will allow them to communicate with each other.
Where did you get the usb driver from for your Spark Fun explorer boards?
You do need to have them more than 1ft apart at the default power level. Even at the lowest power level, the antennas should be no less than 3ft apart.
Never assume that the explorer has CTS and RTS flow control. You need to check with the manufacture of the board directly. I can say this as I know that the older versions of that board simply only had VCC, GND, DI and DO connected.
Ideally, I only want VCC, GND, DI and DO connections. The manual says it is capable of this. Will I need anything else?
Figured it out! One of my USB adapters, a funduino I ordered from eBay, has a bad connection along pins 1-10. I eventually found that when I apply a bit of pressure I get successful packet transfers! I will replace and test further.
Thanks for your time mvut. I understand the modules much better now. Now I just have to hope that the simple serial data I will be passing does not require flow control.
Yes, the perils of buying on ebay.
If you are starting out, it pays to buy the “genuine” items to start with, like Arduino Uno and Sparkfun (there are others) Explorer. Plus you get support. The Arduino forum is full of problems similar to yours.
It saves a lot grief and time in the long run.
Once you are happy that things are working, then try cheaper versions.