The commands in this section facilitate over the air (OTA) server of the application operating on the Module. These commands have been implemented per the ZigBee HA 1.2 guidelines.
( PH:0xB0, SH:0x00 ) - OTA Image Notification Command
Overview
The OTA Image Notification Command frame is sent from the Host to the Module.
Payload
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Target Device Node ID |
2..9 | EUI64 Address | Target Device EUI64. All 0xFF indicates broadcast |
10 | Endpoint | 0xFF indicates a request on all endpoints. |
11 | Payload Type | 0x00 = Query jitter *Manufacturer Code, Payload Type, and File Version fields are omitted or included depending on the value of this field. i.e 0x00 - all must be omitted, 0x01 - image type and file version are omitted, 0x02 - only file version is omitted |
12 | Query Jitter | |
(13,14) | Manufacturer Code | Optional field, it is needed for payload type 0x01-0x03 |
(15,16) | Image Type | Unused - for backwards compatibility. Set to 0x0000 |
(17..20) | File Version | Will contain the value initially set in the Query Next Image Response / OTA Query Next Image Response frames by the Host. |
Effect on Receipt
The Module will send an Image Notify ZCL command either broadcast or unicast depending on the received serial frame.
Allowed Context
All Contexts.
Sent By Host/Module
Host.
( PH:0xB0, SH:0x01 ) - OTA Query Next Image Request Command
Overview
The OTA Query Next Image Request frame is sent from the Module to the Host.
Payload
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Request OTA Device Node ID |
2..9 | EUI64 Address | Request OTA Device EUI64 |
10 | Endpoint | Request OTA Device Endpoint |
11 | Field Control | 8-bit Bitmap |
12,13 | Manufacturer Code | |
14,15 | Image Type | Unused - for backwards compatibility. Set to 0x0000 |
16..19 | File Version | Optional. Number used here will be echoed back in all subsequent frames for the transaction. For example, this field can be used by the Host to differentiate multiple concurrent updates, or for any other purpose the Host requires. |
(20,21) | Hardware Version | Optional. Bit 0 of "Field Control" must equal "1" to use this optional field. |
Effect on Receipt
The Host shall send an OTA Query Next Image Response frame in return.
Allowed Context
All Contexts.
Sent By Host/Module
Module.
( PH:0xB0, SH:0x02 ) - OTA Query Next Image Response Command
Overview
The OTA Query Next Image Response frame is sent from the Host to the Module. The Module relays the frame to the OTA target device. If the target EUI64 is the module’s own EUI64, the module will process it locally.
Payload
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Target Device Node ID. 0xFFFF indicates that the EUI64 is used |
2..9 | EUI64 Address | Target Device EUI64 |
10 | Endpoint | Target Device Endpoint |
11 | Status | 0x00 – Success |
12,13 | Manufacturer Code | |
14,15 | Image Type | Unused - for backwards compatibility. Set to 0x0000 |
16..19 | File Version | Will contain the value initially set in the Query Next Image Response / OTA Query Next Image Response frames by the Host. |
20..23 | Image Size |
Effect on Receipt
None
Allowed Context
All Contexts.
Sent By Host/Module
Host.
( PH:0xB0, SH:0x03 ) - OTA Image Block Request Command
Overview
The OTA Image Block Request frame is sent from the Module to the Host. The Module expects to receive an OTA Image Block Response frame in response.
Payload
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Request OTA Device Node ID |
2..9 | EUI64 Address | Request OTA Device EUI64 |
10 | Endpoint | Request OTA Device Endpoint |
11 | Field Control | 8-bit Bitmap |
12,13 | Manufacturer Code | |
14,15 | Image Type | Unused - for backwards compatibility. Set to 0x0000 |
16..19 | File Version | Will contain the value initially set in the Query Next Image Response / OTA Query Next Image Response frames by the Host. |
20..23 | File Offset | |
24 | Maximum Data Size | N < 50 |
Effect on Receipt
The Host must process and respond to Image Block Request messages until the Module sends a Upgrade End Request
The Host must set status to MALFORMED_COMMAND (0x80) and return a 0 length data block if the Image Offset is outside the range of the file length.
Allowed Context
All Contexts.
Sent By Host/Module
Module.
( PH:0xB0, SH:0x05 ) - OTA Image Block Response Command
Overview
The OTA Image Block Response frame is sent from the Host to the Module. The Module relays the frame to the OTA target device. If the target EUI64 is the module’s own EUI64, the module will process it locally.
There are three possible return values for the OTA Image Block Response: Success, Wait for Data, and Abort. The payload differs for each one.
Payload
For OTA Image Block Response Command on Success
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Target Device Node ID. 0xFFFF indicates that the EUI64 is used. |
2..9 | EUI64 Address | Target Device EUI64. |
10 | Endpoint | 0xFF indicates a request on all endpoints. |
11 | Status | 0x00 = Success |
12,13 | Manufacturer Code | |
14,15 | Image Type | Unused - for backwards compatibility. Set to 0x0000 |
16..19 | File Version | Will contain the value initially set in the Query Next Image Response / OTA Query Next Image Response frames by the Host. |
20..23 | File Offset | |
24 | Data Size | N < 50 |
25..(24+N) | Data |
For OTA Image Block Response Command on Wait for Data
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Target Device Node ID. 0xFFFF indicates that the EUI64 is used. |
2..9 | EUI64 Address | Target Device EUI64. |
10 | Endpoint | Target Device Endpoint |
11 | Status | 0x97 = Wait for Data |
12..15 | Current UTC Time | The current UTC time |
16..19 | Request Time | The UTC time the client should retry the request |
20 | Checksum LSB | The least significant byte of the 16-bit CS. |
21 | Checksum MSB | The most significant byte of the 16-bit CS. |
For OTA Image Block Response Command on Abort
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Target Device Node ID. 0xFFFF indicates that the EUI64 is used |
2..9 | EUI64 Address | Target Device EUI64 |
10 | Endpoint | Target Device Endpoint |
11 | Status | 0x95 = Abort |
Effect on Receipt
None.
Allowed Context
All Contexts.
Sent By Host/Module
Host.
( PH:0xB0, SH:0x06 ) - OTA Upgrade End Request Command
Overview
The Upgrade End Request frame is sent from the Module to the Host.
Payload
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Request OTA Device Node ID |
2..9 | EUI64 Address | Request OTA Device EUI64 |
10 | Endpoint | Request OTA Device Endpoint |
11 | Status | 0x00 – Success |
12,13 | Manufacturer Code | |
14,15 | Image Type | Unused - for backwards compatibility. Set to 0x0000 |
16..19 | File Version | Will contain the value initially set in the Query Next Image Response / OTA Query Next Image Response frames by the Host. |
Effect on Receipt
The Host shall send an Upgrade End Response frame in response.
Allowed Context
All Contexts.
Sent By Host/Module
Module.
( PH:0xB0, SH:0x07 ) - OTA Upgrade End Response Command
Overview
The OTA Upgrade End Response frame is sent from the Host to the Module in response to an OTA Upgrade End Request with success status. The Module relays the frame to the OTA target device. If the target EUI64 is the module’s own EUI64, the module will process it locally,
Payload
Byte Index | Field Name | Notes |
---|---|---|
0,1 | Node ID | Target Device Node ID. 0xFFFF indicates that the EUI64 is used. |
2..9 | EUI64 Address | Target Device EUI64. All 0xFF indicates broadcast |
10 | Endpoint | 0xFF indicates a request on all endpoints. |
11,12 | Manufacturer Code | |
13,14 | Image Type | Unused - for backwards compatibility. Set to 0x0000 |
15..18 | File Version | Will contain the value initially set in the Query Next Image Response / OTA Query Next Image Response frames by the Host. |
19..22 | Current Time | |
23..26 | Upgrade Time |
Effect on Receipt
None.
Allowed Context
All Contexts.
Sent By Host/Module
Host.