本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建 OTA 更新(Amazon IoT 控制台)
-
在Amazon IoT控制台的导航窗格中,在 “管理” 下选择 “远程操作”,然后选择 “作业”。
-
请选择 Create job (创建任务)。
-
在 “作业类型” 下,选择 “创建 FreeRTOS OTA 更新J ob”,然后选择 “下一步”。
-
在 Job 属性中,输入 Job 名称和(可选)输入作业描述,然后选择下一步。
-
可以将一个 OTA 更新部署到单个设备或一组设备。在 “要更新的设备” 下,从下拉列表中选择一个或多个事物或事物组。
-
在 “选择文件传输协议” 下,选择 HTTP 或 MQTT,或者同时选择两者,以允许每台设备确定要使用的协议。
-
在 “签名” 并选择您的文件下,选择 “为我签署新文件”。
-
在代码签名配置文件下,选择创建新的配置文件。
-
在 Create a code signing profile (创建代码签名配置文件) 中,为代码签名配置文件输入名称。
-
在 Device hardware platform (设备硬件平台) 下,选择硬件平台。
注意 此列表中仅显示已获得 FreeRTOS 资格的硬件平台。如果您正在测试不符合条件的平台,并且使用 ECDSA P-256 SHA-256 密码套件进行签名,则可以选择 Windows 模拟器代码签名配置文件以生成兼容签名。如果使用不符合条件的平台,并且使用 ECDSA P-256 SHA-256 以外的密码套件进行签名,您可以使用 Code Signing for Amazon IoT,也可以自行对固件更新进行签名。有关更多信息,请参阅对固件更新进行数字签名:
-
在代码签名证书下,选择选择现有证书,然后选择以前导入的证书,或者选择导入新的代码签名证书,选择您的文件并选择导入以导入新证书。
-
在 Pathname of code signing certificate on device (设备上代码签名证书的路径名) 下,输入代码签名证书在设备上的完全限定路径名称。对于大多数设备,您可以将此字段留空。对于 Windows 模拟器以及将证书放在特定文件位置的设备,请在此处输入路径名。
重要 在 Texas Instruments CC3220SF-LAUNCHXL 上,如果代码签名证书位于文件系统的根目录下,请勿在文件名前面包含前导正斜杠 (
/
)。否则,OTA 更新将在身份验证过程中失败,且产生file not found
错误。 -
选择 Create (创建)。
-
-
在 “文件” 下选择 “选择现有文件”,然后选择 “浏览 S3”。将显示您的 Amazon S3 存储桶的列表。选择包含固件更新的存储桶,然后在存储桶中选择固件更新。
注意 Microchip Curiosity PIC32MZEF 演示项目将产生两个二进制映像,其默认名称为
mplab.production.bin
和mplab.production.ota.bin
。如果要上传映像用于 OTA 更新,请使用第二个文件。 -
在设备上文件的路径名下,输入设备上 OTA 任务将复制固件映像的位置的完全限定路径名。此位置因平台而异。
重要 在 Texas Instruments CC3220SF-LAUNCHXL 上,由于安全限制原因,固件映像路径名必须为
/sys/mcuflashimg.bin
。 -
打开文件类型并输入 0-255 范围内的整数值。您输入的文件类型将添加到传送到 MCU 的Job 文档中。MCU 固件/软件开发人员对如何处理此值拥有完全所有权。可能的场景包括具有辅助处理器的 MCU,其固件可以独立于主处理器进行更新。当设备收到 OTA 更新任务时,它可以使用文件类型来识别更新适用于哪个处理器。
-
在 IAM 角色下,根据中的说明选择一个角色创建 OTA 更新服务角色。
-
选择 Next(下一步)。
-
为 OTA 更新作业输入 ID 和描述。
-
在 Job type (作业类型) 下,选择 Your job will complete after deploying to the selected devices/groups (snapshot) (您的作业将在部署到所选设备/组后完成 (快照))。
-
为作业选择任何适当的可选配置(作业执行推出、作业中止、作业执行超时和标签)。
-
选择 Create(创建)。
选择以前签署的固件映像
-
在 Select and sign your firmware image (选择并签署固件映像) 下,选择 Select a previously signed firmware image (选择以前签署的固件映像)。
-
在 Pathname of firmware image on device (设备上固件映像的路径名) 下,输入设备上 OTA 作业要将固件映像复制到的位置的完全限定路径名称。此位置因平台而异。
-
在 Previous code signing job (原有的代码签名作业) 下,选择 Select (选择),然后选择用来签署用于 OTA 更新的固件映像的上一个代码签名作业。
使用自定义的已签署固件映像
-
在 Select and sign your firmware image (选择并签署固件映像) 下,选择 Use my custom signed firmware image (使用我的自定义已签署固件映像)。
-
在 Pathname of code signing certificate on device (设备上代码签名证书的路径名) 下,输入代码签名证书在设备上的完全限定路径名称。对于大多数设备,您可以将此字段留空。对于 Windows 模拟器以及将证书放在特定文件位置的设备,请在此处输入路径名。
-
在 Pathname of firmware image on device (设备上固件映像的路径名) 下,输入设备上 OTA 作业要将固件映像复制到的位置的完全限定路径名称。此位置因平台而异。
-
在 Signature (签名) 下,粘贴 PEM 格式的签名。
-
在 Original hash algorithm (原始哈希算法) 下,选择在创建文件签名时所使用的哈希算法。
-
在 Original encryption algorithm (原始加密算法) 下,选择在创建文件签名时所使用的算法。
-
在 Amazon S3 中选择您的固件映像下,选择 Amazon S3 存储桶和 Amazon S3 存储桶中的签名固件映像。
指定代码签名信息后,为更新指定 OTA 更新作业类型、服务角色和 ID。
请勿在 OTA 更新的作业 ID 中使用任何个人身份信息。个人身份信息示例包括:
-
名称。
-
IP 地址。
-
电子邮件地址。
-
位置。
-
银行详细信息。
-
医疗信息。
-
在 Job type (作业类型) 下,选择 Your job will complete after deploying to the selected devices/groups (snapshot) (您的作业将在部署到所选设备/组后完成 (快照))。
-
在 IAM role for OTA update job (OTA 更新作业的 IAM 角色) 下,选择 OTA 服务角色。
-
为作业输入字母数字形式的 ID,然后选择 Create (创建)。
作业将出现在 Amazon IoT 控制台中,且其状态为 IN PROGRESS。
-
Amazon IoT 控制台不会自动更新作业的状态。刷新浏览器可以查看更新。
将串行 UART 终端连接到设备。您应当看到输出表明设备正在下载更新后的固件。
设备在下载完更新后的固件之后,将重新启动,然后安装固件。在 UART 终端中可以看到所发生的情况。
有关说明如何使用控制台创建 OTA 更新的教程,请参阅Over-the-air 更新演示应用程序。