Pages

Tuesday, July 19, 2022

XBee XSC and 3rd Party Interface Boards

 If you connect an XBee S3B module into a third-party interface board (such as the Sparkfun USB Explorer, or Parallax USB Adapter) you will be unable to communicate to the module using X-CTU. If you view the UART of the radio, you will notice a sequential series of numbers being generated. This is because several third-party interface boards have an LED connected to pin 6 of the XBee header. This LED provides an indicator for the RSSI (signal strength) for most XBees.


The XSC (S3B) and XSC (S3) modules have a slightly different pinout than the rest of the XBee product line. Pin 6 is used as a config line rather than an RSSI indicator. A legacy feature on the S3B is a diagnostic tool called "pitch mode", when the config line is pulled low during startup, it starts sequentially counting numbers and outputs it to the UART. This feature was originally used to perform a range test allows further backwards compatibility with the XStream radio.

Because an LED indicator is connected to this config line, the S3B module will enter pitch mode due to the pin being pulled low. There is no way to bypass this mode on the XBee itself. The best solution is to remove the current limiting resistor or LED on the interface board that is tied to pin 6, which will leave the pin unused. Please refer to the manufacturer's schematic of the interface board to locate these components.

Tuesday, November 13, 2012

XBee Obituaries: XBee Returns from the Grave!

XBee: Deceased......or so I thought

You spent hours configuring these modules to work together, trying to get data from sensors or
other I/O devices back to your computer and parsed out as useful information. You decide you don't like the current XBee modules firmware and have seen other versions available that are newer and offer more functionality. You download the new version and then go to flash it to the XBee and BAM!, the module dies.....or so you thought.

Good news. The module can be recovered.....well, most the time. There are cases when the module really is dead.
But let's look a look at a few methods used to recover a "DEAD" module.


Required Hardware and Software

Software:
-X-CTU Version 5.2.7.5(Make sure you choose the option to check the website for updates. This will make sure you have the latest versions of the firmware available for you to write to the modules)
-Applicable USB drivers (if using a USB interface board)
(Drivers can be found on at the following web page: XStream USB drivers)

Hardware:
-"Dead" XBee module
-USB or Serial Interface board (available from Digi or Sparkfun)
note: Digi interface boards are more expensive, but take out the X-factor due to the "known to work" status. I would suggest the USB interface board from Digi. It was the easiest to work with. It's part number is XBIB-U and can be purchased from distributors such as DigiKey, Mouser and directly from Digi, which requires you to call a sales rep.
-USB or Serial Cable


Module Recovery

At this point, you should have all the hardware ready to go. The software should be installed and up-to-date.

  1. Connect the interface board to the computer via appropriate cable (USB or Serial) (If using Serial, connect power as well)
  2. Make sure the XBee module is NOT plugged into the interface board
  3. Open the X-CTU program and select the proper COM port.
  4. The first screen you see in on the PC Settings tab. On this tab please change the baud rate to 38400 and put a check in the "No Baud Change" check box.
  5. Navigate to the Modem Configuration tab
  6. Select the proper modem type, function set and firmware version from the 3 drop down menus located about 1/3 of the way from the top of the window.
  7. Click on the Show Defaults button and put a check in the "Always update firmware" check box.
  8. Click on Write. (Yes, the module is NOT plugged in) An Action Required box will appear. This is good. When this happens, hold in the config/reset switch on the interface board and CAREFULLY plug in the module and then release the config/reset button.
  9. You should now see that box disappear and a progress bar will appear along the bottom of the window. You will see the bar progress and then the box will appear again. This is good. Just hold in the reset switch on the interface board for about 1-2 seconds and then release. The box will disappear and the status at the bottom of the window will show that the write was complete.
  10. Go back to the PC Settings tab and change the baud rate back to 9600 and uncheck the "No baud change" check box.
  11. Click the "Test/Query" button. You should get a clean bill of health.

*Note: There may be times when this process fails. Sometimes simply using a different computer with the afore mentioned tools yields success.

Personally, I have found this process to be the most successful at recovering modules.
Please let me know if any of you have had other experience with recovering modules. This is a blog all about using and understanding these radios that can be quite useful.

**If you are trying to recover an XStick, you will need to make a modification.  This will void the warranty, however.

You can add a reset button as shown in the picture below:








Friday, March 18, 2011

Running RS 422 / 485 on an XTend Digimesh 8053 Network

You find yourself with a bunch of RS-422 / 485 devices located in multiple locations, some of which have no clear line of sight back to your base of operations.......what to do!?
Oh, and just for fun, some of the distances are >1 mile.
Use a wireless mesh network.

I had to create a test for this so I got busy.

To accomplish this, I used the following:

    List of components:

  1. 2 x B&B RS-232 to RS-422/485 Converter (Model: 4WSD9R)
  2. 2 x Digi RS-232 / 422 / 485 Interface Board (Model: XTIB-R)
  3. 1 x Digi USB Interface Board (Model: XTIB-U)
  4. 3 x Digi XTend Module (Model: XT09-MI) (FW: 8053)
  5. 4 x RJ485 to Serial adapter
  6. 2 x Cat5e patch cable
  7. 2 x Computer with RS-232 ports and XCTU installed (a terminal program can be used in lieu of XCTU)
  8. 2 x Standard Serial Cable (RS-232 with DB9 connector)


    The Setup

    This test has 3 parts to it:

    1

    RS-232

    2

    RS-485 4 Wire

    3

    RS-422 4 Wire

    To begin the test, the first thing that must be done is to ensure all components are

    setup for RS-485 4 wire.

    Each module must have the CS parameter set to 3, just in case the DIP switches don't initialize the change of this parameter automatically.

    All modules are set to the same Modem VID, Channel and all use the broadcast mode for their addressing. (please refer to attached profiles)

    2 computers were used that had XCTU loaded and all firmware libraries updated to the latest firmware versions to ensure that the modules could be read properly.

    The 3 profiles are included for test purposes. These can be loaded into X-CTU and uploaded to the modules to ensure exact replication of test parameters.



NOW TO THE TEST!!!!!!


    The Test: Part 1 (RS-232)


    This part only requires radios, computers and RS-232 serial cables for hardware.


    This test was conducted as follows:

  1. Load each module, while in RS232 mode, with appropriate profile. (XT09 DIP switch settings will be 1,5,6 ON for this portion of the test)
  2. Test communications between the Base and the Remote, leaving the
  3. Repeater out of the equation. This was done by opening the terminal on each computer and passing packets of characters back and forth.

  4. Remove Antenna from Base and Remote radios. Verify that communication is NON-functional.(These radios have no antennae and their power setting (PL) is a 0)
  5. Power on the Repeater Node.(This node has an antenna and power setting (PL) of 4)
  6. Start transmitting data from Base to Remote. (There will be a delay at the beginning. This is due to the network establishing routes + the latency of having a repeating node in a network)
  7. Transmit from Remote to Base for 2 way communication verification.



    The Test: Part 2 (RS-485 4 Wire)

    This part only requires all hardware components listed above..

    This test was conducted as follows:

  1. XT09 DIP switch settings will be 2,5,6 ON for this portion of the test
  2. Connect ALL hardware as shown on the diagram.
  3. B&B adapter will have DIP switch 1 ON, the rest OFF.
  4. Test communications between the Base and the Remote, leaving the
  5. Repeater out of the equation. This was done by opening the terminal on each computer and passing packets of characters back and forth.

  6. Remove Antenna from Base and Remote radios. Verify that communication is NON-functional (These radios have no antennae and their power setting (PL) is a 0)
  7. Power on the Repeater Node (This node has an antenna and power setting (PL) of 4)
  8. Start transmitting data from Base to Remote. (There will be a delay at the beginning. This is due to the network establishing routes + the latency of having a repeating node in a network)
  9. Transmit from Remote to Base for 2 way communication verification.

    The Test: Part 3 (RS-422 4 Wire)

    This part only requires all hardware components listed above..

    This test was conducted as follows:

  1. XT09 DIP switch settings will be 2,5,6 ON for this portion of the test
  2. Connect ALL hardware as shown on the diagram.
  3. B&B adapter will have ALL DIP switches OFF.
  4. Test communications between the Base and the Remote, leaving the
  5. Repeater out of the equation. This was done by opening the terminal on each computer and passing packets of characters back and forth.

  6. Remove Antenna from Base and Remote radios. Verify that communication is NON-functional (These radios have no antennae and their power setting (PL) is a 0)
  7. Power on the Repeater Node (This node has an antenna and power setting (PL) of 4)
  8. Start transmitting data from Base to Remote. (There will be a delay at the beginning. This is due to the network establishing routes + the latency of having a repeating node in a network)
  9. Transmit from Remote to Base for 2 way communication verification.






Wednesday, May 26, 2010

Do I have the latest firmware?

I have had a few questions regarding firmware upgrades or more specifically, how do I know that I have the latest versions of firmware available to flash to my modules.
This is a relatively easy question, because the guys @ Digi decided to make it simple to update X-CTU's firmware "library" via some built in updater.
  1. Open X-CTU
  2. Navigate to the Modem Configuration tab
  3. Click on the "Download New Versions....." button
  4. Click on the "Web" button (This will download any firmware updates that aren't already in your X-CTU library)
Once X-CTU is finished updating, you can change the firmware on your radio. This is done by doing the following:
  1. Connect a Digi radio to your PC via USB or Serial connection
  2. Open X-CTU and make sure you select the appropriate baud rate and COM port
  3. Navigate to the Modem Configuration tab
  4. Click on the "Read" button (This will populate the white space below with all the parameters applicable to the radio. It will also populate the 3 drop down menus that are located about 1/3 of the way from the top of the window. The drop down menu on the right is where you will see new versions of the firmware.)
  5. Select the version you wish to update to from the right-hand drop down menu, put a check mark in the "Always update firmware" check box.
  6. Click on the "Write" button. (You should now see a progress bar along the bottom)
  7. Once the firmware is written, you will see a completed status where the progress bar was. Now click on the "Read" button and look to see if the new firmware version appear in that right-hand drop down menu.
  8. Your done!
See, that wasn't so bad. Now there have been issues when using an older version of X-CTU (5.1.0.0 and older don't update from the server any more, but 5.1.4.1 and newer do)