Software User Manual - Argos 3D-P320
Last change: 2 February 2016
Version 0.14
© Bluetechnix 2016
Page 15 | 70
Addr
Field
Type
Value
Description
0x2B: Flash extrinsic calibration file
0x04
SubCommand
Uint8
Refer to table
Indicates which flash to write to
0x05
Status
Uint8
Ignored
0x06
Flags
Uint16
Refer to table
Optional flags
3)
0x08
Length
Uint32 (high
byte first)
<# of bytes to
write>
The size of the binary file to flash
0x0C
FlashAddress
Uint32 (high
byte first)
<Flash
Address>
Ignored
0x10
Reserved (42
bytes)
Uint8[]
Ignored
0x3A
DataCrc32
Uint32 (high
byte first)
<CRC32
checksum>
Checksum over <Data>
2)
0x3E
HeaderCrc16
Uint16 (high
byte first)
<CRC16
checksum>
Checksum over 60 bytes of Header: 0x02 –
0x3D
1)
0x40
Data
Uint8[]
<binary loader
file>
The file to flash as a binary byte stream
Table 3-12: Flash update command frame
Note 1): For the CRC16 calculation the CRC-CCITT is used (Polynom: 0x1021, start value: 0). Please ask the
Bluetechnix support for an implementation example of the CRC-CCITT.
Note 2): For the CRC32 calculation the CRC-32 is used (Polynom: 0x04C11DB7, start value: 0xFFFFFFFF).
Please ask the Bluetechnix support for an implementation example of the CRC-32.
Note 3): The DataCrc32 is mandatory, the appropriate flag must be set to 0.
Response frame
Addr
Field
Type
Value
Description
0x00
Preamble
Uint16 (high
byte first)
0xA1EC
Unique identifier, start of header
0x02
ProtocolVersion
Uint8
0x03
This document refers to protocol version
V3.0
0x03
Command
Uint8
0x0B or 0x0C
0x0B: Flash boot loader
0x0C: Flash Application
0x04
SubCommand
Uint8
Refer to table
Indicates which flash to write to
0x05
Status
Uint8
Refer to table
Result code
0x06
Flags
Uint16
Refer to table
Optional flags
0x08
Length
Uint32 (high
byte first)
0x0
No <Data> present
0x0C
HeaderData0
Uint8
Ignored
0x0D
HeaderData1
Uint8
Ignored
0x0E
HeaderData2
Uint8
Ignored
0x0F
HeaderData3
Uint8
Ignored
0x10
Reserved (42
bytes)
Uint8[]
Ignored
0x3A
DataCrc32
Uint32 (high
byte first)
0x0
No data present after header.
0x3E
HeaderCrc16
Uint16 (high
byte first)
<CRC16
checksum>
Checksum over 60 bytes of Header: 0x02 –
0x3D
1)
Table 3-13: Flash update response frame