在 Nordic nRF52840 DK 上安装初始版本的固件 - FreeRTOS
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

在 Nordic nRF52840 DK 上安装初始版本的固件

编写本指南时,假定您已经执行了 Nordic nRF52840-DK 入门无线更新先决条件中的步骤。在尝试 OTA 更新之前,可能需要运行 FreeRTOS 入门中所述的 MQTT 演示项目,以确保主板和工具链设置正确。

将初始出厂映像刷写到主板

  1. 打开 freertos/vendors/nordic/boards/nrf52840-dk/aws_demos/config_files/aws_demo_config.h

  2. #define CONFIG_MQTT_DEMO_ENABLED 替换为 #define democonfigOTA_UPDATE_DEMO_ENABLED

  3. 使用所选的 OTA 更新演示,按照 Nordic nRF52840-DK 入门中概述的相同步骤,构建并刷写映像。

    您应该可以看到类似于如下所示的输出内容。

    9 1285 [OTA Task] [prvSubscribeToJobNotificationTopics] OK: $aws/things/your-thing-name/jobs/notify-next 10 1286 [OTA Task] [OTA_CheckForUpdate] Request #0 11 1289 [OTA Task] [prvParseJSONbyModel] Extracted parameter [ clientToken: 0:your-thing-name ] 12 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: execution 13 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: jobId 14 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: jobDocument 15 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: afr_ota 16 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: streamname 17 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: files 18 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: filepath 19 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: filesize 20 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: fileid 21 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: certfile 22 1289 [OTA Task] [prvParseJSONbyModel] parameter not present: sig-sha256-ecdsa 23 1289 [OTA Task] [prvParseJobDoc] Ignoring job without ID. 24 1289 [OTA Task] [prvOTA_Close] Context->0x3ffbb4a8 25 1290 [OTA] [OTA_AgentInit] Ready. 26 1390 [OTA] State: Ready Received: 1 Queued: 1 Processed: 1 Dropped: 0 27 1490 [OTA] State: Ready Received: 1 Queued: 1 Processed: 1 Dropped: 0 28 1590 [OTA] State: Ready Received: 1 Queued: 1 Processed: 1 Dropped: 0 29 1690 [OTA] State: Ready Received: 1 Queued: 1 Processed: 1 Dropped: 0

    您的主板此时正在侦听 OTA 更新。