在 Texas Instruments CC3220SF-LAUNCHXL 上下载、构建、刷写并运行 FreeRTOS OTA 演示 - FreeRTOS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

在 Texas Instruments CC3220SF-LAUNCHXL 上下载、构建、刷写并运行 FreeRTOS OTA 演示

重要

该参考集成托管在已弃用的 Amazon-FreeRTOS 存储库中。当您创建新项目时,我们建议从此处开始。如果您已经有一个基于现已弃用的 Amazon-FreeRTOS 存储库的 FreeRTOS 项目,请参阅 Amazon-FreeRTOS Github 存储库迁移指南

下载 FreeRTOS 和 OTA 演示代码
构建演示应用程序
  1. 按照 开始使用 FreeRTOS中的说明进行操作,将 aws_demos 项目导入 Code Composer Studio,为主板配置 Amazon IoT 终端节点、Wi-Fi SSID 和密码,以及私有密钥和证书。

  2. 打开 freertos/vendors/vendor/boards/board/aws_demos/config_files/aws_demo_config.h,注释掉 #define CONFIG_CORE_MQTT_MUTUAL_AUTH_DEMO_ENABLED 并定义 CONFIG_OTA_MQTT_UPDATE_DEMO_ENABLEDCONFIG_OTA_HTTP_UPDATE_DEMO_ENABLED

  3. 构建解决方案,并确保其构建没有错误。

  4. 启动终端模拟器,并使用以下设置连接到主板:

    • 波特率:115200

    • 数据位:8

    • 奇偶校验:无

    • 停止位:1

  5. 在主板上运行项目,确认它可以连接到 Wi-Fi 和 Amazon IoT MQTT 消息代理。

终端模拟器在运行时应当显示类似以下内容的文本:

0 1000 [Tmr Svc] Simple Link task created Device came up in Station mode 1 2534 [Tmr Svc] Write certificate... 2 5486 [Tmr Svc] [ERROR] Failed to destroy object. PKCS11_PAL_DestroyObject failed. 3 5486 [Tmr Svc] Write certificate... 4 5776 [Tmr Svc] Security alert threshold = 15 5 5776 [Tmr Svc] Current number of alerts = 1 6 5778 [Tmr Svc] Running Demos. 7 5779 [iot_thread] [INFO ][DEMO][5779] ---------STARTING DEMO--------- 8 5779 [iot_thread] [INFO ][INIT][5779] SDK successfully initialized. Device came up in Station mode [WLAN EVENT] STA Connected to the AP: afrlab-pepper , BSSID: 74:83:c2:b4:46:27 [NETAPP EVENT] IP acquired by the device Device has connected to afrlab-pepper Device IP Address is 192.168.36.176 9 8283 [iot_thread] [INFO ][DEMO][8282] Successfully initialized the demo. Network type for the demo: 1 10 8283 [iot_thread] [INFO] OTA over MQTT demo, Application version 0.9.0 11 8283 [iot_thread] [INFO] Creating a TLS connection to <endpoint>-ats.iot.us-west-2.amazonaws.com:8883. 12 8852 [iot_thread] [INFO] Creating an MQTT connection to <endpoint>-ats.iot.us-west-2.amazonaws.com. 13 8914 [iot_thread] [INFO] Packet received. ReceivedBytes=2. 14 8914 [iot_thread] [INFO] CONNACK session present bit not set. 15 8914 [iot_thread] [INFO] Connection accepted. 16 8914 [iot_thread] [INFO] Received MQTT CONNACK successfully from broker. 17 8914 [iot_thread] [INFO] MQTT connection established with the broker. 18 8915 [iot_thread] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 19 8953 [OTA Agent T] [INFO] Current State=[RequestingJob], Event=[Start], New state=[RequestingJob] 20 9008 [MQTT Agent ] [INFO] Packet received. ReceivedBytes=3. 21 9015 [OTA Agent T] [INFO] SUBSCRIBED to topic $aws/things/__test_infra_thing73/jobs/notify-next to broker. 22 9015 [OTA Agent T] [INFO] Subscribed to MQTT topic: $aws/things/__test_infra_thing73/jobs/notify-next 23 9504 [MQTT Agent ] [INFO] Publishing message to $aws/things/__test_infra_thing73/jobs/$next/get. 24 9535 [MQTT Agent ] [INFO] Packet received. ReceivedBytes=2. 25 9535 [MQTT Agent ] [INFO] Ack packet deserialized with result: MQTTSuccess. 26 9536 [MQTT Agent ] [INFO] State record updated. New state=MQTTPublishDone. 27 9537 [OTA Agent T] [INFO] Sent PUBLISH packet to broker $aws/things/__test_infra_thing73/jobs/$next/get to broker. 28 9537 [OTA Agent T] [WARN] OTA Timer handle NULL for Timerid=0, can't stop. 29 9537 [OTA Agent T] [INFO] Current State=[WaitingForJob], Event=[RequestJobDocument], New state=[WaitingForJob] 30 9539 [MQTT Agent ] [INFO] Packet received. ReceivedBytes=120. 31 9539 [MQTT Agent ] [INFO] De-serialized incoming PUBLISH packet: DeserializerResult=MQTTSuccess. 32 9540 [MQTT Agent ] [INFO] State record updated. New state=MQTTPublishDone. 33 9540 [MQTT Agent ] [INFO] Received job message callback, size 62. 34 9616 [OTA Agent T] [INFO] Failed job document content check: Required job document parameter was not extracted: parameter=execution 35 9616 [OTA Agent T] [INFO] Failed job document content check: Required job document parameter was not extracted: parameter=execution.jobId 36 9617 [OTA Agent T] [INFO] Failed job document content check: Required job document parameter was not extracted: parameter=execution.jobDocument 37 9617 [OTA Agent T] [INFO] Failed job document content check: Required job document parameter was not extracted: parameter=execution.jobDocument.afr_ota 38 9617 [OTA Agent T] [INFO] Failed job document content check: Required job document parameter was not extracted: parameter=execution.jobDocument.afr_ota.protocols 39 9618 [OTA Agent T] [INFO] Failed job document content check: Required job document parameter was not extracted: parameter=execution.jobDocument.afr_ota.files 40 9618 [OTA Agent T] [INFO] Failed job document content check: Required job document parameter was not extracted: parameter=filesize 41 9618 [OTA Agent T] [INFO] Failed job document content check: Required job document parameter was not extracted: parameter=fileid 42 9619 [OTA Agent T] [INFO] Failed to parse JSON document as AFR_OTA job: DocParseErr_t=7 43 9619 [OTA Agent T] [INFO] No active job available in received job document: OtaJobParseErr_t=OtaJobParseErrNoActiveJobs 44 9619 [OTA Agent T] [ERROR] Failed to execute state transition handler: Handler returned error: OtaErr_t=OtaErrJobParserError 45 9620 [OTA Agent T] [INFO] Current State=[WaitingForJob], Event=[ReceivedJobDocument], New state=[CreatingFile] 46 9915 [iot_thread] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 47 10915 [iot_thread] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 48 11915 [iot_thread] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 49 12915 [iot_thread] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 50 13915 [iot_thread] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0 51 14915 [iot_thread] [INFO] Received: 0 Queued: 0 Processed: 0 Dropped: 0