OTA update of a specific partition on device

0

Hello,

Is there a way to use AWS's Jobs to update only a partition on my device (ESP32-S3). The partition on my device is a filesystem which can be generated into a separate binary file. In my application I sometimes do not need a full firmware update but will need to change files within the filesystem partition. Is this possible with AWS's jobs? Can it possibly be done with specifying the partition address?

kevinah
已提问 10 个月前283 查看次数
1 回答
0

Hi. The AWS IoT OTA mechanism is essentially responsible for securely and reliabily transporting your binary files to your devices. What they are, where you store them, and how you apply them, is largely up to you. The OTA library requires you to provide implementations for numerous platform-specific operations, including these: https://www.freertos.org/Documentation/api-ref/ota-for-aws-iot-embedded-sdk/docs/doxygen/output/html/ota_pal_interface.html. And this is where you can control what is done with each binary.

You can send multiple files in a single OTA update: https://docs.aws.amazon.com/iot/latest/apireference/API_CreateOTAUpdate.html#iot-CreateOTAUpdate-request-files. And each file can have a file name and type: https://docs.aws.amazon.com/iot/latest/apireference/API_OTAUpdateFile.html#iot-Type-OTAUpdateFile-fileName. You can use these to decide how to handle each file.

More generally, a FreeRTOS OTA is just an AWS IoT Job with a pre-defined job document and some additional features layered on top such as code signing. Instead of OTA, you could use jobs directly and have complete freedom to define whatever you want in the job document. OTA however does do some undifferentiated heavy lifting for you, so I would recommend you use it unless it is too restrictive for your needs.

Embedded C SDK: OTA and Job libraries: https://github.com/aws/aws-iot-device-sdk-embedded-C/tree/main/libraries/aws

Embedded C SDK: Demos: https://github.com/aws/aws-iot-device-sdk-embedded-C/tree/main/demos

ESP32-S3 reference implementation: https://github.com/FreeRTOS/iot-reference-esp32c3

profile pictureAWS
专家
Greg_B
已回答 10 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则