Amazon FreeRTOS
User Guide

OTA Tutorial

This section contains a tutorial for updating firmware on devices running Amazon FreeRTOS using OTA updates. However, you can use OTA updates to send files to any devices connected to AWS IoT.

You can use the AWS IoT console or the AWS CLI to create an OTA update. The console is the easiest way to get started with OTA because it does a lot of the work for you. The AWS CLI is useful when you are automating OTA update jobs, working with a large number of devices, or are using devices that have not been qualified for Amazon FreeRTOS. For more information about qualifying devices for Amazon FreeRTOS, see the Amazon FreeRTOS Partners website.

To create an OTA update

  1. Deploy an initial version of your firmware to one or more devices.

  2. Verify that the firmware is running correctly.

  3. When a firmware update is required, make the code changes and build the new image.

  4. If you are manually signing your firmware, sign and then upload the signed firmware image to your Amazon S3 bucket. If you are using Code Signing for AWS IoT, upload your unsigned firmware image to an Amazon S3 bucket.

  5. Create an OTA update.

The Amazon FreeRTOS OTA agent on the device receives the updated firmware image and verifies the digital signature, checksum, and version number of the new image. If the firmware update is verified, the device is reset and, based on application-defined logic, commits the update. If your devices are not running Amazon FreeRTOS, you must implement an OTA agent that runs on your devices.