Bootloader#

EmberZNet bootload API.

See bootload.h for source code.

Functions#

sl_status_t
sl_zigbee_send_bootload_message(bool broadcast, sl_802154_long_addr_t destEui64, uint8_t messageLength, uint8_t *messageContents)

Transmit the given bootload message to a neighboring node using a specific 802.15.4 header that allows the EmberZNet stack and the Ember bootloader to recognize the message but will not interfere with other Zigbee stacks.

void
sl_zigbee_incoming_bootload_message_handler(sl_802154_long_addr_t longId, sl_zigbee_rx_packet_info_t *packetInfo, uint8_t messageLength, uint8_t *messageContents)

Invoked by the EmberZNet stack when a bootload message is received. If the application includes sl_zigbee_incoming_bootload_message_handler(), it must define SL_ZIGBEE_APPLICATION_HAS_BOOTLOAD_HANDLERS in its CONFIGURATION_HEADER.

void
sl_zigbee_bootload_transmit_complete_handler(sl_status_t status, uint8_t messageLength, uint8_t *messageContents)

Invoked by the EmberZNet stack when the MAC has finished transmitting a bootload message. If the application includes this callback, it must define SL_ZIGBEE_APPLICATION_HAS_BOOTLOAD_HANDLERS in its CONFIGURATION_HEADER.

Function Documentation#

sl_zigbee_send_bootload_message#

sl_status_t sl_zigbee_send_bootload_message (bool broadcast, sl_802154_long_addr_t destEui64, uint8_t messageLength, uint8_t * messageContents)

Transmit the given bootload message to a neighboring node using a specific 802.15.4 header that allows the EmberZNet stack and the Ember bootloader to recognize the message but will not interfere with other Zigbee stacks.

Parameters
N/Abroadcast

If true, the destination address and PAN ID are both set to the broadcast address.

N/AdestEui64

The EUI64 of the target node. Ignored if the broadcast field is set to true.

N/AmessageLength

Length of the message to be sent.

N/AmessageContents

The bootloader message to send.

Returns

  • ::SL_STATUS_OK if the message was successfully submitted to the transmit queue, and ::SL_STATUS_FAIL otherwise.


Definition at line 46 of file stack/include/bootload.h

sl_zigbee_incoming_bootload_message_handler#

void sl_zigbee_incoming_bootload_message_handler (sl_802154_long_addr_t longId, sl_zigbee_rx_packet_info_t * packetInfo, uint8_t messageLength, uint8_t * messageContents)

Invoked by the EmberZNet stack when a bootload message is received. If the application includes sl_zigbee_incoming_bootload_message_handler(), it must define SL_ZIGBEE_APPLICATION_HAS_BOOTLOAD_HANDLERS in its CONFIGURATION_HEADER.

Parameters
N/AlongId

The EUI64 of the sending node.

N/ApacketInfo

Information about the incoming packet.

N/AmessageLength

Length of the bootload message that was sent.

N/AmessageContents

The bootload message that was sent.


Definition at line 65 of file stack/include/bootload.h

sl_zigbee_bootload_transmit_complete_handler#

void sl_zigbee_bootload_transmit_complete_handler (sl_status_t status, uint8_t messageLength, uint8_t * messageContents)

Invoked by the EmberZNet stack when the MAC has finished transmitting a bootload message. If the application includes this callback, it must define SL_ZIGBEE_APPLICATION_HAS_BOOTLOAD_HANDLERS in its CONFIGURATION_HEADER.

Parameters
N/Astatus

::SL_STATUS_OK if the transmission was successful, or ::SL_STATUS_ZIGBEE_DELIVERY_FAILED if not.

N/AmessageLength

Length of the message that was sent.

N/AmessageContents

The message that was sent.


Definition at line 83 of file stack/include/bootload.h