Over-the-air firmware/file system upgrade process for Zigbee 3.0 Storage
Digi XBee® 3 Zigbee® RF Module
321
Bytes Fieldname Description
4 Sub-
element
length
The length of the sub-element data (n) in little-endian format.
n Sub-
element
data
The data to be transferred.
Parse the image blocks
To parse the image blocks:
1. Divide the contents of the OTApayload into 48 byte blocks for encrypted networks and 56 byte
blocks for unencrypted networks
2. Create Image Block Requests around the image blocks; see Image Block request.
Note The payload data starts after the OTA header and the first sub-element tag/length. The offset of
the payload data can be found by taking the OTA header length from the OTA header and adding 6 for
the sub-element tag and length.
Storage
The FOTA image blocks are received and stored in a separate internal flash slot that is allotted
exclusively for this purpose. Once all the image bytes are written to the slot, the new image must be
validated by the current application before it can be used.
If the new image is deemed invalid, the running Zigbee firmware rejects the image and continues
operating with the current, valid application.
ZCL OTA messaging
The following figure provides the messaging sequence between the Server (updater node) and the
Client (target node).