Distribute the new application

The first phase of performing an over-the-air update on a device is transferring the new firmware file to the target node. Load the new firmware image in the target node's GPM prior to installation. XBee/XBee-PRO SX RF Modules use an encrypted binary (.ebin) file for both serial and over-the-air firmware updates. These firmware files are available on the Digi Support website and via XCTU.

Send the contents of the .ebin file to the target device using general purpose memory WRITE commands. Erase the entire GPM prior to beginning an upload of an .ebin file. The contents of the .ebin file should be stored in order in the appropriate GPM memory blocks. The number of bytes that are sent in an individual GPM WRITE frame is flexible and can be catered to the user application.

Example

The example firmware version has an .ebin file of 55,141 bytes in length. Based on network traffic, we determine that sending a 128 byte packet every 30 seconds minimizes network disruption. For this reason, you would divide and address the .ebin as follows:

GPM_BLOCK_NUM

GPM_START_INDEX

GPM_NUM_BYTES

.ebin bytes

0

0

128

0 to 127

0

128

128

128 to 255

0

256

128

256 to 383

0

384

128

384 to 511

1

0

128

512 to 639

1

128

128

640 to 767

-

-

-

-

-

-

-

-

-

-

-

-

107

0

 

54784 to 54911

107

128

 

54912 to 55039

107

256

101

55040 to 55140