Hi all,
I have this really strange problem, which I can find no reasonable answer to.
I have just got Xbee-Pro modules, and as far as i can see on the sticker, they are called XBP24-AWI001. I have looked arround on the forums and I think this might be rev.1 modules. am I right??
The problem is that I cannot program them. well, one of the modules has been somewhat programmed, beacuse now the serial port keeps sending garbage to me.
When i start X-CTU using the settings: 9600,none,8,none,1 i cannot query the modules, but when i check the flag ‘enable API’ i can get the serialnumber from the modules…
Nw i would really like to get some firmware onto the modules. the problem is now, that i don’t exactly know which firmware i should use?? I have tried some different firmwares and sometimes the programming starts but it has never ended successfully…
I don’t have a dev. board, i have just connected Din and Dout to my serial port and the CTS to 3,3V and DTR to 0V. I found a topic that posted this as a quick way to enable programming on the modules. I have however also tried connecting the DTR and CTS correctly to the port, but i have had no luck so far.
I keep getting the error ‘lost contact with modem’ no matter what I do.
I have also tried the option to turn of the module, start firmware update and wait for the reset box to appear, turn on the module and release reset… no luck either…
When i open X-CTU and try to program the modules, i have to check the box ‘Use API’ to even get a reading from the modules… When i try to load a firmware with default setting onto a module i get following error:
Getting modem type…OK
Programming modem…Detected baud rate difference.
Make sure PC and modem baud rate is set correctly
Incompatable modem selected for programming
Write Parameters…Failed
Am i just trying to download a wrong image onto the module??? and i that is the case which firmware should i use? I know that the firmware depends on the specific module, but i can’t find anywhere what kind of module i really have :S Any help would be appreciated!
There isn’t really much necessary infomration on the dev board,except the 232 to 3V TTL level shifter, and regulated input voltage at 3.3V. Hopefully you haven’t damaged the module already.
DIN DOUT VCC and GND are the only connections necessary to be able to Read and Write to the radio.
Once you get to the point where you can communicate with the radio, you will also need to connect DTR and RTS (NOT CTS as you mentioned above). This will allow you to upload new firmware to the module if necessary.
I know the development boards aren’t cheap, but if you can get one I’d recommend it. It’ll save you a lot of hassle while you’re getting to grips with the modules.
Failing that, Digi do have on their website the schematics for the boards. You can use that as a basis for your own circuit, including the level shifting.
I’ve never dared to try connecting an XBee directly to my own serial port, but I did once try that with a device that generated a 5V logic signal and it worked fine. You say your module responded when you selected API mode, so at least it hasn’t blown up. Still, I would follow mvut’s advice and use a level shifter.
You might find my “Unofficial FAQ” worth a look if you haven’t already checked it out. I think a couple of the topics in there are relevant to your question. It’s at http://www.jsjf.demon.co.uk/xbee/xbee.html
Sorry, My apologies to all of you! I am using a level shifter, I have no intention of ruining my precius modules
After all, I’m just a humble student working on a tight budget…
I am using the breakout board from Sparkfun with a built-in 5V to 3.3V supply.
I have connected the Din to my serial port (Dout)
and Dout to the Din on the serial port
Sort of Null-modem’ish, or am I completely mistaken?
I think my real problem is that I am very confused about the DTR and RTS signals… What should they by connected to on my serial port? (again they will be connected through a level shifter
I’m not sure if the null pinning is necessary or not. The XBee datalines are DCE in nature, but I guess this really depends on what the Sparkfun board is doing with them.
Does the Sparkfun dev board have a DCE or DTE serial interface? That should give you your answer.
If the Sparkfun board is DCE (like the Digi XBIB), then DTR and RTS would connect to the serial lines of the same name on the comm port site. If Sparkfun is DTE, then DTR would normally drive DCD and DSR, and RTS would normally drive CTS in a standard null configuration.
Without any checkboxes enabled, i just get a ‘Unable to communicate with modem’ error.
If i turn on ‘Enable API’ i can get following information:
‘Communication with modem…OK’
‘Modem type = Name unknown (ID = 42949672481228492)’
'Modem firmware version = ’
I think that there is no firmware on the modules… I just don’t know how to get it on there.
If i try to read parameters off the module i always get a ‘baud rate diffference detected’ error… Is that a specific sign??
You’ll find that by checking the “Enable API” box, you’ll get that same output whether or not a module is actually on your dev board. The only time this box should be checked is if you have the AP parameter enabled.
If you are still talking about the “XBP24-AWI001” that you mentioned in the first post, let’s try loading new firmware on it.
To do this, go to PC Settings in XCTU and set it for 9600 8N1 hardware flow, make sure the “Enable API” is UNchecked.
Next, go to the Modem Configuration tab, and for Modem Type chose XBP-24, for Function Set chose XBEE PRO 802.15.4, for Version chose 10E6 (if possible, otherwise something in the 1xCx branch). Check the box for “Always Update Firmware”, then hit Write.
Hopefully you’ll be able to write new firmware on this module.
Hans,
Hope Admin’s instructions get your module going.
On the [QUOTE]
If i turn on ‘Enable API’ i can get following information:
‘Communication with modem…OK’
‘Modem type = Name unknown (ID = 42949672481228492)’
'Modem firmware version = '[QUOTE]
message. This is what I get with a XB-ZB coordinator module when the X-CTU baud rate was wrong (API firmware at 115kb with XCTU set at 9600b). That one took a few minutes to figure out.
I got a new breakout board from sparkfun - one with embedded USB-to-serial interface. Apparently my hardware skills are not that good after all… Anyway, i got the modules programmed now and all is good.
Thanks for the quick responses