Please note, that your XBee shield may require you to perform extra steps, so please do further reading before jumping in head first. I am not an expert, so don't blame me if you fry your board.
The following set of steps worked for me:
Step 1: Download and Install X-CTU
The easiest way to setup your XBee module is via the X-CTU software from Digi. It can be downloaded from their site here: http://www.digi.com/support/productdetail?pid=3257
- Select the Diagnostics, Utilities and MIBs section
- Download and install the XCTU 32-bit ver 5.2.7.5 installer (do a virus check after download)
- Please note that this is for Windows platforms only !
- FYI: We will run the software later
Step 2: Upload the bare-minimum script on your Arduino controller
I perform this step to prevent any previous projects from interfering. This may not be necessary, but I tend to do this before wiring up any of my new projects. This is the script I load onto the Arduino:
Bare Minimum Arduino Sketch:
1 2 3 4 5 6 7 | void setup() { } void loop() { } |
Step 3: Connect the Shield to Arduino, and XBee to Shield.
- Disconnect the Arduino UNO from the computer.
- Insert the XBee module into the Shield.
This is the XBee Shield and XBee module side by side
- The pins from the XBee module should slot into the respective headers on the Shield.
This is the XBee module on the XBee Shield
- Connect the XBee shield to the Arduino

- The pins from the XBee shield should slot into the respective headers on the Arduino board.
- Move the little white switch in the corner to USB.
- There are 2 options - USB mode and XBee mode.
- We want USB mode which will allow the computer to communicate with the XBee module
Step 4: Connect Arduino to computer, and run the X-CTU Software
- With the XBee module and Shield connected to the Arduino, and the Shield's white switch in USB mode; connect the Arduino to the computer using a USB cable.
- This Arduino board appears as COM7 on my computer.
- Here is what the X-CTU software looks like when it loads up
- Press the Test / Query button to see if the computer can talk to the XBee module.
- If successful, you should see something like this:
- If you accidentally leave the XBee shield in XBee mode, or if your computer fails to communicate with the XBee module, you may encounter these screens.
If you get a successful Test / Query, then move onto the next step.
Step 5: Read XBee Firmware settings:
We can now try to read the XBee firmware settings by
- Select the Read button to read the XBee firmware settings
Step 6: Download older version of firmware if necessary
- I tried downloading new versions, but this did not seem to work, as the computer could not detect any newer updates available. The problem I had, was that I needed an "older version" of firmware to communicate with the XBee module in order to read/write new settings to it.
- I could not select the firmware version from the drop down boxes, which indicated that this particular firmware version was not installed on my computer. So here is what I did.
- I went back to the Digi site and selected the Firmware update section.
- This provided a link to an FTP site with "previous versions" of firmware.
- Here is a link to the FTP site: ftp://ftp1.digi.com/support/firmware/update/xbee/
- In the X-CTU software, in the Modem Configurations tab, select the "Download new versions button", and select File. Navigate to the zip-file just downloaded and select it.
- The software should tell you that it has updated successfully or something to that effect.
- The modem type and version should now be an available option in the drop down boxes, however, we will continue where we left off (in step 5) and try an read the firmware settings from the XBee module, by pressing the Read button in the Modem Configurations tab on the X-CTU software.
- It should look something like this:
hi..i thx for your post..Do you have part 2 of this? I cant find your 'to be continue' post =(
ReplyDeleteHi Eliza,
DeleteReally sorry that I have not completed this. Have a few just like this one that I am trying to finish, and will get round to it eventually, when I find some time.
I don't know the reason why i still cant find the xbee when it is on the arduino shield for the xbee. And I try to use your way to update the firmware. And it doesn't work. I use the xbee S2 zigbee radio. Can you give me some suggestions?
ReplyDeleteHi Luis:
DeleteHave you seen this document: XCTU Configuration & Test Utility Software
And this one
DeleteThanks a lot, I spent 2 months to connect XBee module by using Arduino. but In all cases I faced that " unable con connect ...". I found the solution here by change mode from XBee to USB.
ReplyDeleteHi Jalawi,
DeleteSometimes it is easy to overlook the easy stuff, when the problem is right in front of us. Happens to me often :)
I bet you will never forget that trick again !
Scott
how to change xbee mode to usb mode? im currently facing the same problem like you. btw im directly connect arduino to zigbee using the wire, pls help me.
Deleteread the tutorial and your question will be answered
DeleteI need the second part of this... D:
ReplyDeleteHi Anonymous.
DeleteI will not get to this until after August. Am studying at the moment.
it's very interesting....plz update the second part!
ReplyDeleteThis is the best Arduino XBee Shield tutorial I've found on the internet. pls finde some hours to complet it, you got already 5 stars for your work :)
ReplyDeleteThanks for your feedback.
DeleteI wish I had the time. Not at the moment - life is a bit busy at the moment.
But hopefully you are now partly on the right track :)
Yea I join the gang saying please find time to continue with these! JD
ReplyDeleteGood Job bro, Keep it up !
ReplyDeletehelo bro, do you have program arduino for xbee? i really need it, may you send me by email? adli20rahman@gmail.com . thanks a lot
ReplyDeleteHi Adli,
ReplyDeleteI don't have any code for Arduino XBee communication at the moment,
But these sites may be useful:
http://arduino.cc/en/Guide/ArduinoXbeeShield
http://www.jeremyblum.com/2011/02/27/arduino-tutorial-9-wireless-communication/
But - worth looking up info specific to the shield and XBee module you are using.
Hello there,
ReplyDeletewhat I must change to configured the XBee? i need more help.
thank you.
hey i need to send data from Xbee explorer and receive it at Arduino and i'm facing a lot of troubles doing that. Please help me with it .
ReplyDeletethank you
Unfortunately, I don't have an XBee explorer - and this type of help is best served within a forum.
DeleteThis blog does lend itself very well for that kind of stuff... please post your issue within the Arduino forum and you are likely to get better help than I could ever give.
nice tutorial, by the way do you know how to read XBee packet data with Arduino?
ReplyDeleteAs far as I know these will allow you to communicate in a manner as if you had a direct serial wire connection between Arduinos. I would just treat it like a Serial connection.
Deletehow know my X-Bee Modem type and modem firmware version??
ReplyDeleteActually,my computer fails to communicate with the XBee module.when I try to Read then getting error like-Failed to enter command mode Unable to read Version (ATVR)Read parameters..Failed.
For download new version, getting error like-The server name or address could not be resolve.
please help me
how know my X-Bee Modem type and modem firmware version??
ReplyDeleteActually,my computer fails to communicate with the XBee module.when I try to Read then getting error like-Failed to enter command mode Unable to read Version (ATVR)Read parameters..Failed.
For download new version, getting error like-The server name or address could not be resolve.
please help me
Hi Scott.
ReplyDeleteHope you have a goo day. Currently I am working on my xbee projects which is wireless sensor network and I do have a problem in connecting the sensor to the funduino v03 shield. I have a lm35 temperature sensor and in configuration i set DI03 as ADC. so where do i connect the sensor to DI03 on funduino v03 shield?