![]() |
| RabbitCore RCM4500W User's Manual |
Appendix D. Additional Configuration Instructions
Appendix D provides information on how to find the latest firmware for the ZigBee modem and the Digi® XBee USB used as the ZigBee coordinator, and how to install the firmware.
D.1 ZigBee Modem Firmware Downloads
By default, the RCM4510W is shipped from the factory with firmware to operate as either a router or as an end device in a mesh network. You will need to run the
MODEMFWLOAD.Csample program in the Dynamic CSAMPLES\RCM4500Wfolder to download the firmware needed to operate the RCM4510W as a coordinator.
Once you have successfully loaded the firmware, compile and run another sample program to make sure the
MODEMFWLOAD.Csample program does not inadvertently reload (or partially reload) the firmware.If you are uploading firmware because you upgraded to a more recent Dynamic C release, remember to recompile your applications using the new version of Dynamic C once you have uploaded the new firmware.
D.1.1 Dynamic C v. 10.21 (RCM4510W preview and standard versions)
Encrypted libraries have been created within Dynamic C for the two types of firmware. The two libraries provided are in the
LIB\Rabbit4000\RCM4xxx\RCM45xxW_XBee_firmwarefolder.
- A Dynamic C library of the type
XB24-B_ZigBee_11....LIBis used for a coordinator RCM4510W.
- A Dynamic C library of the type
XB24-B_ZigBee_13....LIBis used for an end device/router RCM4510W.Make the following modifications to the
MODEMFWLOAD.Csample program.before you run it according to whether you will be using the RCM4510W as a coordinator, a router, or an end device.
#define ZIGBEE_COORDINATOR
- Uncomment either of the following two lines if you will be using the RCM4510W as a router or an end-device. The same firmware will be uploaded to the RCM4510W regardless of which line is commented out.
#define ZIGBEE_ROUTER
#define ZIGBEE_ENDDEVD.1.2 Dynamic C v. 10.11 (RCM4510W preview version only)
The coordinator and router/end-device firmware is provided in the Dynamic C
SAMPLES\RCM4500W\MODEMFWfolder.
- Firmware of the type
XB24-B_ZigBee_11....eblis used for a coordinator RCM4510W.
- Firmware of the type
XB24-B_ZigBee_13....eblis used for an end device/router RCM4510W.When you use the bootloader function, you will have to provide a file read function that supplies the binary image in record sizes specified by the
xmodemprotocol. The read function will have the following prototype.
char *fileread(int recordNumber, int recordSize)The function will return the address of a buffer containing the data. A NULL return signifies the end of the file.
Before you compile and run this sample program, modify the
ximportstatement to point to the binary image file you will be downloading.
#ximport "MODEMFW/Coordinator/XB24-B_ZigBee_1118.ebl" zb_ebl_fileIn this example, the
XB24-B_ZigBee_1118.eblfile is in the Dynamic CSAMPLES\RCM4500W\MODEMFW\Coordinatorfolder. If you downloaded a firmware update to another location on your hard drive, you would change the directory path accordingly as in the following example.
#ximport "/temp/XB24-B_ZigBee_1118.ebl" zb_ebl_fileTo see the details of what is happening while the sample program runs, you should
#definethe following.
#define ZB_VERBOSE
#define XMODEM_DEBUGD.2 Digi® XBee USB Configuration
You may experience difficulty when you use the ZigBee sample programs and the Digi® XBee USB with the default settings if you are working simultaneously with more than one ZigBee coordinator.
Section 6.2.1 explains how to set up the RCM4510W configuration patterns for the sample programs via macros in the Dynamic C
LIB\Rabbit4000\ZigBee\XBEE_API.LIBlibrary folder.Channel mask defaults to 0x1FFE, i.e., all 16 possible channels via the macro in the Dynamic C
LIB\Rabbit4000\ZigBee\XBEE_API.LIBlibrary.
#define DEFAULT_CHANNELS ZB_DEFAULT_CHANNELSFor example, to limit the channels to three channels, the macro would read as follows.
#define DEFAULT_CHANNELS 0x000EPAN ID the network ID. Defaults to 0x0234 via the macro in the Dynamic C
LIB\Rabbit4000\ZigBee\XBEE_API.LIBlibrary. Change the PAN ID if you are developing simultaneously with more than one ZigBee coordinator.
#define DEFAULT_PANID 0x0234The same configurations must then be applied to the Digi® XBee USB via MaxStream's X-CTU utility. If you have not previously used this utility, install it from the Dynamic C
Utilities\X-CTUfolder by double-clickingSetup_x-ctu.exe,Continue the following steps with the Digi® XBee USB connected to your PC's USB port. Since the ZigBee Utility
ZB_Demo1.exewill conflict with X-CTU, first close the ZigBee Utility if it is running.
- Start X-CTU from the desktop icon and set the "PC Settings" tab to 9600 baud, HARDWARE flow control, 8 data bits, parity NONE, 1 stop bit.
- On the "PC Settings" tab, check the "Enable API" box under "Host Setup."
- On the "PC Settings" tab, select the "USB Serial Port" corresponding to the USB serial port the Digi® XBee USB is connected to and click "Test/Query." You should see a response showing the Modem Type (XB 24 B) and the firmware version. Click OK.
Note that several USB serial ports could be listed. If you select a serial port without the Digi® XBee USB connected, the X-CTU response to "Test/Query." will be "communication with modem ... OK," but the modem type will be unknown, and the firmware version will be blank.
If you a get a message that X-CTU is unable to open the COM port, verify that you selected the COM port with the "USB Serial Port," then try unplugging the Digi® XBee USB from the USB slot and plugging it back in. Now click "Test/Query" again.
- Under the "Modem Configuration" tab click the "Read" button. X-CTU will now display the networking and I/O parameters for the Digi® XBee USB being used as the ZigBee coordinator.
Function Set: SERIES 2 ZIGBEE COORDINATOR API (do not select other settings)
Version: the latest version of the firmware
- Now change the networking parameters to match the parameters in the Dynamic C
LIB\Rabbit4000\ZigBee\XBEE_API.LIBlibrary.(D) CH - Operating Channel this is the operating channel you could see when you ran the
API_TEST.Csample program in the Dynamic CSAMPLES\RCM4500Wfolder by entering the command c CH <Enter>. This channel information cannot be changed from the X-CTU utility.(0234) ID - Pan ID set the new PAN ID that follows 0x.
(1FFE) SC - Scan Channels - set the new value for the channels to scan, E, for example, to match the new setting in the macro.
#define DEFAULT_CHANNELS 0x000ED.2.1 Additional Reference Information
Check MaxStream's Web site for the latest information and documentation on the XBee Series 2 ZigBee modem, the X-CTU utility, and the Digi® XBee USB. Note that the XBee and the XBee PRO RF modules are presently not compatible with the XBee Series 2 ZigBee modem used with the RCM4510W, but the general documentation about ZigBee and the use of AT commands for the XBee and the XBee PRO RF modules is relevant until documentation for the XBee Series 2 becomes available.
D.2.2 Update Digi® XBee USB Firmware
The firmware version used by the Digi® XBee USB must correspond to the firmware version installed on the RCM4510W. If you have updated the RCM4510W firmware (or you have a need to re-install the firmware on the Digi® XBee USB), the corresponding firmware for the Digi® XBee USB is in the Dynamic C
Utilities\X-CTU\MODEMFWfolder.
- Start X-CTU from the desktop icon and set the "PC Settings" tab to 9600 baud, HARDWARE flow control, 8 data bits, parity NONE, 1 stop bit.
- On the "PC Settings" tab, check the "Enable API" box under "Host Setup."
- On the "PC Settings" tab, select the "USB Serial Port" and click "Test/Query." You should see a response showing the Modem Type (XB 24 B) and the firmware version. Click OK.
Note that several USB serial ports could be listed. If you select a serial port without the Digi® XBee USB connected, the X-CTU response to "Test/Query." will be "communication with modem ... OK," but the modem type will be unknown, and the firmware version will be blank.
If you a get a message that X-CTU is unable to open the COM port, verify that you selected the COM port with the "USB Serial Port," then try unplugging the Digi® XBee USB from the USB slot and plugging it back in. Now click "Test/Query" again.
- Under the "Modem Configuration" tab click the "Read" button. X-CTU will now display the networking and I/O parameters for the Digi® XBee USB.
Function Set: SERIES 2 ZIGBEE COORDINATOR API (do not select other settings)
Version: the latest version of the firmware
- Under the "Modem Configuration" tab click the "Download new versions..." button, select "File," and browse to the
Utilities\X-CTU\MODEMFWsubfolder, then click "Open" when you have sele4cted the firmware. (Do not select "Web," which will allow you to find the file on a Web site.) Remember to select firmware of the typeXB24-B_ZigBee_11....zipthat is used for a coordinator.The X-CTU utility will display an Update Summary box. Click "OK," and then click "Done."
- Click the "Read" button, select XB24-B as the Modem type; select ZIGBEE COORDINATOR API as the Function Set, and 11... as the Version, then click "Write."
- When the process is complete set the PANID, NI, and other parameters to the values you were using before the firmware was upgraded.
| Rabbit Semiconductor www.rabbit.com |