STRUIX Projects‎ > ‎

2: Adding an XBEE

Adding an XBEE pad to the STRUIX stack will give your project wireless communication possibilities, including wireless programming!  We'll leverage this setup to wireless program all the CPU boards in the stack in another project.

This configuration gives the same functionality as the Arduino FIO, but in an arguably more rugged and "field deployable" assembly.

READ THE NOTES section (below) and downloadable files for XBEE configuration help.  XBEE's, while extremely useful, can be agonizingly frustrating to configure - both for noobs and old salts alike.  The files section contains X-CTU (Digi's configuration tool) ".pro" files that have been successfully used for pairing XBEEs in this setup - and should also work well for Arduino FIO and others.  Program the STRUIX CPU and PROGrammer XBEE's using these files will give you a bulletproof setup that works the first time! (hopefully - well, at least minimize the frustration anyway :-)

You can download the X-CTU configuration tool from Digi here.  Note:  X-CTU only runs under Windows OS.

What you'll need:

The Power:

1 STRUIX Powerpad

The Brains:


Command & Contol:


1 USB / XBEE adapter + XBEE RF Modem

How to do it:

USB adapter preparation
There is an excellent tutorial on how to modify both the Sparkfun and Adafruit XBEE USB adapters here in the wireless programming section:

Program the USB XBEE radio.

Use the STRUIX XBEE file in the attachments section below.
Program the STRUIX XBEE radio.

Use the STRUIX XBEE CPU file in the attachments section below.
Assemble the PowerPad structure:

Use metal standoffs on the power buss pads.  You can use plastic standoffs everywhere else, unless you are using the TWI bus - in which case use metal standoffs on the SDA & SCL pads to terminate the bus.

Don't forget to hook up the power leads!  With this particular terminal block, the screws will become inaccessible once the stack is assembled.
Add the CPU on the stack
Add the STRUIX XBEE pad to the stack
Plug in the STRUIX XBEE radio
Power on the stack

You may notice the RSSI LED's on both the STRUIX and USB XBEE boards light up for a moment.  This is a good sign - the units are paired.
 Use the Arduino IDE to send an example program (like BLINK) to the stack.

Remember to configure the serial port in the IDE to match your USB XBEE adapter and select the proper board (Lilypad Arduino w/AT-mega 328)
 And... you're done!

The stack is ready to program and interface with you're favorite widget.

Notes about using XBEE radios

  1. Label your XBEEs so you know which ones are which.  Once you get beyond 2 or 3 in a given configuration, save yourself the confusion of which radios are programmed to do what.

  2. Change the Serial.begin() communication rate to 57600.  As of Arduino-21, all the example files are set to use 9600.  57600 is the standard rate used by the bootloader and the XBEEs are programmed to use that rate.  If you don't change the communication rate in your program, at worst case, the Arduino program may start running and FUBAR further programming - in which case you will need to dissassemble the stack and use a wired USB programmer to correct the situation before further wireless programming can be done.

  3. The first time you program the XBEE radios - make sure XCTU is set up to automatically download firmware updates from the web (do this first) and the "always update firmware" box is checked in the modem configuration tab.  This will ensure both radios are up to date and running the same firmware.

  4. Speaking of programming the XBEEs.  The out-of-the-box communication rate is set at 9600.  After you program the radios, the rate will be set at 57600.  If you need to program the radios again, be sure the XCTU rate is changed to 57600 in the PC settings tab.
Project Struix,
Jul 13, 2011, 6:34 AM
Project Struix,
Jul 13, 2011, 6:34 AM
Project Struix,
Jul 13, 2011, 6:34 AM
Project Struix,
Jul 13, 2011, 6:33 AM