Update firmware via command line

The update_firmware command allows you to update the firmware of the specified device. To update firmware using the XCTU CLI:

  1. Enter the following command syntax. Both -f <file> and -p <port> are required parameters. The rest are optional. The file option must point to an existing firmware description XML file. These files are stored within the XCTU installation path under a folder named radio_firmwares, sorted by protocols or hardware models.
    XCTUcmd update_firmware -f <file> -p <port> [-b <baud_rate>] [-e] [-o] [-h] [-R] [-P] [-v]

    The location of the base call to XCTUcmd executable depends on your operating system:

    • Windows: <installation_directory>/XCTUcmd.exe
    • MacOS X: <installation_directory>/XCTU.app/Contents/MacOS/XCTUcmd
    • Linux: <installation_directory>/XCTUcmd

  1. If the command is executed successfully, the command line prompt returns an error code 0. A return code different than 0 is represented by the error ID. Enter the following command for a list of possible errors:
    XCTUcmd --errorlist

Set options

Use the following options with the update_firmware command:

Option Required/optional Action
-f <file> Required * Specify the firmware file location path.
-p <port> Required Specify the serial port name to be used.
-b <baud_rate> Optional Specify serial connection baud rate to use. [Default 9600]
-e Optional Set parity to even for the serial connection. [Default NONE]
-o Optional Set parity to odd for the serial connection. [Default NONE]
-h Optional Set hardware flow control for the serial connection. [Default NONE]
-R Optional ** Force a device recovery if device cannot be discovered.
-P Optional ** Indicate that the device is a programmable radio. These radios have a baud rate of 115200 by default.
-v Optional Show details about the process being executed.
* File paths containing blank spaces must be quoted.
** These options may trigger an action request event where users will be asked to reset the device.

Examples

For additional guidance, see the following usage examples for the update_firmware command:

Flash XBP24-ZB_23A7_S2B firmware to the device connected to COM7 at 115200 bps and display process details:

XCTUcmd update_firmware -f "C:\Program Files (x86)\Digi\XCTU-NG\radio_firmwares\xbee_zb\XBP24-ZB_23A7_S2B.xml" -p COM7 -b 115200 -v

Flash XBP24-ZB_23A7_S2B firmware to the programmable device connected to COM1 using HW flow control and display process details:

XCTUcmd update_firmware -f "C:\Program Files (x86)\Digi\XCTU-NG\radio_firmwares\xbee_zb\XBP24-ZB_23A7_S2B.xml" -p COM1 -h -P -v

Flash XBP24-ZB_23A7_S2B firmware to the device connected to COM4 and perform a recovery if required:

XCTUcmd update_firmware -f "C:\Program Files (x86)\Digi\XCTU-NG\radio_firmwares\xbee_zb\XBP24-ZB_23A7_S2B.xml" -p COM4 -R