This section will introduce and explain each of the breakout pins on the XBee adapter. And also show some ways to wire the board up for use with a computer or microcontroller.
This image shows the pinout for the XBee adapter
- 3V pin - this is either an input power pin (if 5V is not provided) or an output from the 250mA regulator if 5V is provided
- DTR - "Data terminal ready" this is a flow control pin used to tell the XBee that the microcontroller or computer host is ready to communicate.
- RST - this pin can be used to reset the XBee. By default it is pulled high by the 10K resistor under the module. To reset, pull this pin low.'
- Ground - common ground for power and signal
- CTS - "Clear to Send" this is a flow control pin that can be used to determine if there is data in the XBee input buffer ready to be read
- 5V - this is the power input pin into the 3.3V regulator. Provide up to 6V that will be linearly converted into 3.3V
- RX - This is the XBee's serial recieve pin. Serial data is sent on this pin into the XBee to be transmitted wirelessly
- TX - This it the XBee's serial transmit pin. Serial data is sent on this pin out of the XBee, after it has been transmitted wirelessly from another module
- RTS - "Ready to Send" this is a flow control pin that can be used to tell the XBee to signal that the computer or microcontroller needs a break from reading serial data.
- see pin #1
The DTR, RTS, RESET and RX pins (going into the XBee) pass through a level converter chip that brings the levels to 3.3V. You can use pretty much anywhere between 2.7 to 5.5V data to communicate with the XBee. The breakout pins on the bottom of the board are not level shifted and you should try to keep data going directly into the XBee pin sunder 3.3V
Often times, wireless modules are used as a bridge between a computer and a microcontroller or sensor. The XBees must also be connected to a computer to perform firmware updates and its often easier to configure the modules (changing the baud rate, configuring network IDs, etc) this way as well.
By far the easiest way to connect to a computer is to use an FTDI cable - use either 3.3V or 5V. These cables have a USB to serial converter chip molded into them and are supported by every OS. Thus configuring or upgrading or connecting is really trivial. Simply plug the cable into the end of the module so that the black wire lines up with GND. There is a white outline showing where the cable connects.
Another method of connecting is using a USB or serial breakout board. Each breakout board is going to be a little different so check the documentation. Make sure the transmit/receive pins are not swapped, etc.
Finally, it is possible to use a de-chipped Arduino to connect an XBee to a computer. Basically, this is just using the FTDI chip on the Arduino to pass the serial data. First, gently pry the microcontroller from its socket using a small flat screwdriver or similar. Try to make sure the pins don't get bent. Put it in a safe place. Preferably in an anti-static bag.
Then connect the +5V pin on the XBee to the 5V line on the Arduino. Do the same for Ground. The TX line from the XBee connects to the TX line on the Arduino (because we're replacing the microcontroller, not talking to it). Same with RX.
If you are planning to try and upgrade the modem - which is pretty common, connect the RTS line to the right hand solder dot to as shown. That's the best connection you can get to the RTS line. If you're not upgrading, then you can skip this wire.