|
XBee Firmware Library
1.6.0
|
Files | |
| file | ota_client.h |
| file | xbee_ota_client.c |
Data Structures | |
| struct | xbee_ota_t |
| Structure for tracking state of over-the-air update. More... | |
Typedefs | |
| typedef struct xbee_ota_t | xbee_ota_t |
| Structure for tracking state of over-the-air update. More... | |
Functions | |
| int | _xbee_ota_transparent_rx (const wpan_envelope_t FAR *envelope, void FAR *context) |
| int | _xbee_ota_xmodem_read (void FAR *context, void FAR *buffer, int16_t bytes) |
| int | _xbee_ota_xmodem_write (void FAR *context, const void FAR *buffer, int16_t bytes) |
| int | xbee_ota_init (xbee_ota_t *ota, wpan_dev_t *dev, const addr64 *target) |
Initialize an xbee_ota_t structure to send firmware updates to target using dev. More... | |
Variables | |
| uint8_t | auth_data [XBEE_OTA_MAX_AUTH_LENGTH] |
| Payload used to initiate update. More... | |
| uint8_t | auth_length |
Number of bytes in auth_data. More... | |
| xbee_cbuf_t cbuf | |
| wpan_dev_t * | dev |
| local device to send updates through More... | |
| uint16_t | flags |
| uint8_t raw [255+XBEE_CBUF_OVERHEAD] | |
| buffer for xbee_cbuf_t structure and bytes received from target More... | |
| union { | |
| xbee_cbuf_t cbuf | |
| uint8_t raw [255+XBEE_CBUF_OVERHEAD] | |
| buffer for xbee_cbuf_t structure and bytes received from target More... | |
| } | rxbuf |
| addr64 | target |
| network device to update More... | |
| xbee_xmodem_state_t | xbxm |
| track state of Xmodem transfer More... | |
Code for a device to send over-the-air firmware updates to a Programmable XBee.
| typedef struct xbee_ota_t xbee_ota_t |
Structure for tracking state of over-the-air update.
| int _xbee_ota_transparent_rx | ( | const wpan_envelope_t FAR * | envelope, |
| void FAR * | context | ||
| ) |
| int _xbee_ota_xmodem_read | ( | void FAR * | context, |
| void FAR * | buffer, | ||
| int16_t | bytes | ||
| ) |
| int _xbee_ota_xmodem_write | ( | void FAR * | context, |
| const void FAR * | buffer, | ||
| int16_t | bytes | ||
| ) |
| int xbee_ota_init | ( | xbee_ota_t * | ota, |
| wpan_dev_t * | dev, | ||
| const addr64 * | target | ||
| ) |
Initialize an xbee_ota_t structure to send firmware updates to target using dev.
Calls xbee_xmodem_tx_init and xbee_xmodem_set_stream (therefore unnecessary to do so in main program).
Note that when performing OTA updates, you MUST use XBEE_XMODEM_FLAG_64 (64-byte xmodem blocks) if calling xbee_xmodem_tx_init directly.
Sends frames to the target to have it start the update cycle.
| [in,out] | ota | state-tracking structure for sending update |
| [in] | dev | device to use for sending update |
| [in] | target | 64-bit address of target device |
| 0 | successfully initialized |
| -EINVAL | invalid parameter passed in |
| uint8_t auth_data[XBEE_OTA_MAX_AUTH_LENGTH] |
Payload used to initiate update.
| uint8_t auth_length |
Number of bytes in auth_data.
track state of circular buffer
track state of circular buffer
| wpan_dev_t* dev |
local device to send updates through
| uint16_t flags |
combination of XBEE_OTA_FLAG_* values
| uint8_t raw[255+XBEE_CBUF_OVERHEAD] |
buffer for xbee_cbuf_t structure and bytes received from target
| uint8_t raw[255+XBEE_CBUF_OVERHEAD] |
buffer for xbee_cbuf_t structure and bytes received from target
| union { ... } rxbuf |
| addr64 target |
network device to update
| xbee_xmodem_state_t xbxm |
track state of Xmodem transfer
1.8.10