In most of the projects the XBee modules appear as interfaces, serving only for the wireless connection, but the they can do much more, they have seven analog input channels, nine digital I/O channels and two PWM outputs, it is almost like a micro controller the difference is that you can’t actually load your own control firmware, this needs to run on the PC, but this can be taken as a feature used in your advance since you can make complicated applications in any language and communicate over the serial port. The USB to serial converter should be a problem because the operating system will use it as a virtual serial port, no USB programming required.
With this advanced inputs and outputs you could make complicated robotics applications, smart sensors, and even closed loop systems, not being limited by the code size and speed only your imagination is the limit.
These features of the XBee are available only with the latest firmware version 10A1, if your module is older than you need to update the firmware.
Standalone XBee: [Link]
This is a popular and simple breakout board for XBee, optimized for breadboard mounting and gateway applications, in other ways when you use it only as an interface. It can be directly connected to the FTDI cable or to a de-chipped Arduino board, the breakout board has all the components needed to interface with 5V boards, don’t forget that the XBee needs 3,3V.
There is also a detailed tutorial how to install and use the usb to serial converter and how to configure and test the XBee module, where you can set the XBee parameters which are also explained in details.
Great guide, you can’t go wrong using it.
XBee breakout board: [Link]
More and more applications are emerging with the XBee module, and the Arduino developers are the most dynamic users, but most of the projects take some basic things as granted, like connecting the two boards. Since the XBee needs 3,3V and all the inputs must be limited to 3,3V otherwise you can damage the XBee module and the outputs will deliver no more then 3,3V which can lead to communication problems. The project presented here solve this problem and gives you two solutions one with voltage level translators and one with a simple resistive divider.
Beside the schematics you will find a step by step tutorial how to make the connections and the configurations, and ideas for future improvements, like using a switching regulator or a rechargeable Li-ION cell.
Before you make any XBee project, my advise is to read trough this interfacing tutorial.
XBee with Arduino: [Link]
The XBee devices are based on the ZigBee protocol, which was developed for short range wireless communication, especially for home automation systems, this project is a perfect example for its designed purpose. The device is a smart socket, which measures the momentary power consumption and sends it to a host or server, which logs the data for further use. Although the measuring device used is bought as is, and doesn’t has any switching element so you can’t switch off the load remotely.
The real potential of XBee isn’t even scratched with this project, so feel free to improve the original idea, the smart outlet is a great idea, but beside the monitoring some control functions should be added.
With the analog inputs and digital outputs including two PWM channels of the XBee it would be easy to build more advanced loggers or home automation systems without micro controller, the software runs on the PC and the XBee acts like hardware interface.
XBee power monitor: [Link]
Have you ever been annoyed by the fact that you mounted the pcb and needed to update the firmware? Dismantle everything, connect to the programmer or just to the serial cable if you have bootloader installed already, not to mention if your hardware controls some power device like a motor, then you need to be careful not to fry your PC’s serial interface or the motherboard, the solution is simple and available, use a wireless connection.
The guys from Sparkfun made a robust and yet compact communication protocol which can be used via wireless link to download the firmware, they use the XBee module which is a Zigbee to serial converter, they mounted the XBee on to the usb to serial converter board and there you have it, simple and robust wireless link which can be used also for debug purposes. The bootloader is written in C, and the PC program in visual basic, the XBee modules can be replaced with any wireless solution, I will most certainly try it with some bluetooth modules.
Wireless bootloader for AVR: [Link]