name=Standalone Bootloader Client
category=Standalone Bootloader

description=Implementation of the Ember standalone, 1-hop, over-the-air bootloader client.  This code DOES NOT do the actual bootload.  That is left to the actual bootloader (the serial-uart-ota variant), which must be loaded on the chip.  However it handles a request by a neighboring device to initiate a 1-hop over-the-air bootload.  After receiving a request to bootload, the client will send a random challenge that the client expects the neighbor to encrypt with the client's manufacturer bootload key (TOKEN_MFG_BOOTLOAD_AES_KEY).  Upon receiving the correctly encrypted response, the client will launch the standalone bootloader and be ready to receive a new image from the neighbor via an Xmodem transfer.  This works for either the SOC or Host configurations.  However for the host configuration this protocol will only bootload the NCP, and will not bootload the host.  This is not a Zigbee certifiable protocol.

# Any string is allowable here.  Generally it is either: Production Ready, Test Tool, or Requires Extending
qualityString=Production Ready
# This must be one of the following:  productionReady, testTool, extensionNeeded
quality=production

includedByDefault=false

sourceFiles=standalone-bootloader-client.c, standalone-bootloader-client-cli.c
sourceFilesSoc=standalone-bootloader-client-soc.c
sourceFilesHost=standalone-bootloader-client-host.c

implementedCallbacks=emberAfPluginStandaloneBootloaderCommonIncomingMessageCallback

requiredPlugins=standalone-bootloader-common
events=myEvent

options=countdownTimeSeconds

countdownTimeSeconds.name=Countdown to Bootload (in seconds)
countdownTimeSeconds.description=The amount of time the client will wait before launching the bootloader.
countdownTimeSeconds.type=NUMBER:0,5
countdownTimeSeconds.default=1

