Standalone Bootloader Common#

API and Callbacks for the Standalone Bootloader Common Component.

Code common to both the client and server of the Silicon Labs standalone bootload protocol.

Modules#

Bootloader Protocol

API#

uint8_t

Make bootloader header.

EmberStatus
emberAfPluginStandaloneBootloaderCommonSendMessage(bool isBroadcast, EmberEUI64 targetEui, uint8_t length, uint8_t *message)

Send message.

bool

Check incoming message.

Macros#

#define
MAX_BOOTLOAD_MESSAGE_SIZE (BOOTLOAD_OTA_SIZE + 6)
#define
QUERY_RESPONSE_LENGTH (BOOTLOAD_MESSAGE_OVERHEAD + 11)
#define
#define
#define
#define
#define
BOOTLOAD_AUTH_CHALLENGE_SIZE BOOTLOAD_AUTH_COMMON_SIZE
#define
BOOTLOAD_AUTH_RESPONSE_SIZE BOOTLOAD_AUTH_COMMON_SIZE
#define
QUERY_REQUEST_LENGTH (BOOTLOAD_MESSAGE_OVERHEAD)
#define
LAUNCH_REQUEST_LENGTH (BOOTLOAD_MESSAGE_OVERHEAD + 18)
#define
XMODEM_AUTH_CHALLENGE_LENGTH (BOOTLOAD_MESSAGE_OVERHEAD + 15)
#define
XMODEM_AUTH_CHALLENGE_REQUEST_INDEX (BOOTLOAD_MESSAGE_OVERHEAD)
#define
XMODEM_AUTH_RESPONSE_LENGTH (BOOTLOAD_MESSAGE_OVERHEAD + 16)
#define
#define

API Documentation#

emberAfPluginStandaloneBootloaderCommonMakeHeader#

uint8_t emberAfPluginStandaloneBootloaderCommonMakeHeader (uint8_t *message, uint8_t type)

Make bootloader header.

Parameters
N/Amessage

Ver.: always

N/Atype

Ver.: always

Returns

  • unit8_t


Definition at line 147 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

emberAfPluginStandaloneBootloaderCommonSendMessage#

EmberStatus emberAfPluginStandaloneBootloaderCommonSendMessage (bool isBroadcast, EmberEUI64 targetEui, uint8_t length, uint8_t *message)

Send message.

Parameters
N/AisBroadcast

Ver.: always

N/AtargetEui

Ver.: always

N/Alength

Ver.: always

N/Amessage

Ver.: always

Returns

  • EmberStatus status code


Definition at line 159 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

emberAfPluginStandaloneBootloaderCommonCheckIncomingMessage#

bool emberAfPluginStandaloneBootloaderCommonCheckIncomingMessage (uint8_t length, uint8_t *message)

Check incoming message.

Parameters
N/Alength

Ver.: always

N/Amessage

Ver.: always

Returns

  • bool true is success


Definition at line 172 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

Macro Definition Documentation#

BOOTLOAD_OTA_SIZE#

#define BOOTLOAD_OTA_SIZE
Value:
64

Definition at line 33 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

MAX_BOOTLOAD_MESSAGE_SIZE#

#define MAX_BOOTLOAD_MESSAGE_SIZE
Value:
(BOOTLOAD_OTA_SIZE + 6)

Definition at line 37 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

BOOTLOAD_PROTOCOL_VERSION#

#define BOOTLOAD_PROTOCOL_VERSION
Value:
1

Definition at line 40 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

CHALLENGE_REQUEST_VERSION#

#define CHALLENGE_REQUEST_VERSION
Value:
0x01

Definition at line 43 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

BOOTLOAD_MESSAGE_OVERHEAD#

#define BOOTLOAD_MESSAGE_OVERHEAD
Value:
2

Definition at line 47 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_VERSION#

#define OFFSET_VERSION
Value:
0

Definition at line 50 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_MESSAGE_TYPE#

#define OFFSET_MESSAGE_TYPE
Value:
1

Definition at line 51 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_DEVICE_TYPE#

#define OFFSET_DEVICE_TYPE
Value:
2

Definition at line 52 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_BLOCK_NUMBER#

#define OFFSET_BLOCK_NUMBER
Value:
2

Definition at line 53 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_ERROR_TYPE#

#define OFFSET_ERROR_TYPE
Value:
2

Definition at line 54 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_BLOCK_NUMBER_CHECK#

#define OFFSET_BLOCK_NUMBER_CHECK
Value:
3

Definition at line 55 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_ERROR_BLOCK#

#define OFFSET_ERROR_BLOCK
Value:
3

Definition at line 56 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_IMAGE_CONTENT#

#define OFFSET_IMAGE_CONTENT
Value:
4

Definition at line 57 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QUERY_RESPONSE_LENGTH#

#define QUERY_RESPONSE_LENGTH
Value:
(BOOTLOAD_MESSAGE_OVERHEAD + 11)

Definition at line 69 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QRESP_OFFSET_BL_ACTIVE#

#define QRESP_OFFSET_BL_ACTIVE
Value:
2

Definition at line 70 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QRESP_OFFSET_MFG_ID#

#define QRESP_OFFSET_MFG_ID
Value:
3

Definition at line 71 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QRESP_OFFSET_HARDWARE_TAG#

#define QRESP_OFFSET_HARDWARE_TAG
Value:
5

Definition at line 72 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QRESP_OFFSET_BL_CAPS#

#define QRESP_OFFSET_BL_CAPS
Value:
21

Definition at line 73 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QRESP_OFFSET_PLATFORM#

#define QRESP_OFFSET_PLATFORM
Value:
22

Definition at line 74 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QRESP_OFFSET_MICRO#

#define QRESP_OFFSET_MICRO
Value:
23

Definition at line 75 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QRESP_OFFSET_PHY#

#define QRESP_OFFSET_PHY
Value:
24

Definition at line 76 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QRESP_OFFSET_BL_VERSION#

#define QRESP_OFFSET_BL_VERSION
Value:
25

Definition at line 77 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_MFG_ID#

#define OFFSET_MFG_ID
Value:
2

Definition at line 80 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_HARDWARE_TAG#

#define OFFSET_HARDWARE_TAG
Value:
4

Definition at line 81 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_AUTH_CHALLENGE#

#define OFFSET_AUTH_CHALLENGE
Value:
2

Definition at line 84 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

OFFSET_AUTH_RESPONSE#

#define OFFSET_AUTH_RESPONSE
Value:
2

Definition at line 87 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_QUERY#

#define XMODEM_QUERY
Value:
0x51

Definition at line 92 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_QRESP#

#define XMODEM_QRESP
Value:
0x52

Definition at line 93 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_CC#

#define XMODEM_CC
Value:
0x03

Definition at line 94 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_LAUNCH_REQUEST#

#define XMODEM_LAUNCH_REQUEST
Value:
0x4c

Definition at line 95 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_AUTH_CHALLENGE#

#define XMODEM_AUTH_CHALLENGE
Value:
0x63

Definition at line 96 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_AUTH_RESPONSE#

#define XMODEM_AUTH_RESPONSE
Value:
0x72

Definition at line 97 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

BOOTLOAD_AUTH_COMMON_SIZE#

#define BOOTLOAD_AUTH_COMMON_SIZE
Value:
16

Definition at line 100 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

BOOTLOAD_AUTH_CHALLENGE_SIZE#

#define BOOTLOAD_AUTH_CHALLENGE_SIZE
Value:
BOOTLOAD_AUTH_COMMON_SIZE

Definition at line 101 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

BOOTLOAD_AUTH_RESPONSE_SIZE#

#define BOOTLOAD_AUTH_RESPONSE_SIZE
Value:
BOOTLOAD_AUTH_COMMON_SIZE

Definition at line 102 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

QUERY_REQUEST_LENGTH#

#define QUERY_REQUEST_LENGTH
Value:
(BOOTLOAD_MESSAGE_OVERHEAD)

Definition at line 106 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

LAUNCH_REQUEST_LENGTH#

#define LAUNCH_REQUEST_LENGTH
Value:
(BOOTLOAD_MESSAGE_OVERHEAD + 18)

Definition at line 112 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_AUTH_CHALLENGE_LENGTH#

#define XMODEM_AUTH_CHALLENGE_LENGTH
Value:
(BOOTLOAD_MESSAGE_OVERHEAD + 15)

Definition at line 124 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_AUTH_CHALLENGE_REQUEST_INDEX#

#define XMODEM_AUTH_CHALLENGE_REQUEST_INDEX
Value:
(BOOTLOAD_MESSAGE_OVERHEAD)

Definition at line 125 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

XMODEM_AUTH_RESPONSE_LENGTH#

#define XMODEM_AUTH_RESPONSE_LENGTH
Value:
(BOOTLOAD_MESSAGE_OVERHEAD + 16)

Definition at line 130 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

bootloadPrintln#

#define bootloadPrintln
Value:
(...)

Definition at line 132 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h

bootloadPrint#

#define bootloadPrint
Value:
(...)

Definition at line 133 of file app/framework/plugin/standalone-bootloader-common/bootloader-protocol.h