监控 FUOTA 任务和添加到该任务的设备的状态并进行故障排除
在配置无线设备并创建了可能要使用的任何多播组之后,可以通过执行以下步骤启动 FUOTA 会话。
FUOTA 任务状态
您的 FUOTA 任务可以在 AWS Management Console 中显示下列状态消息。
-
待定
此状态表示您已经创建了 FUOTA 任务,但还没有固件更新会话。创建任务后,您将看到显示此状态消息。在此期间,您可以更新 FUOTA 任务, 关联 或者取消设备或多播组与任务的关联。在状态从Pending(待定)更改后,无法将其他设备添加到任务中。
-
等待 FUOTA 会话
您的设备已经成功 添加 到 FUOTA 任务,当您的任务有已调度固件更新会话时,您将看到显示此状态消息。在此期间,您无法更新或将设备添加到 FUOTA 会话。如果您取消 FUOTA 会话,群组状态将更改为 Pending(待定。)
-
在 FUOTA 会话中
当 FUOTA 会话开始时,您将看到显示此状态消息。碎片会话开始,您的终端设备收集碎片、重建固件映像、将新固件版本与原始版本进行比较,然后应用新映像。
-
Fuota 已完成
在您的终端设备向 适用于 LoRaWAN 的 AWS IoT Core 报告已应用新的固件映像,或会话超时时,FUOTA 会话被标记为已完成,您将看到显示此状态。
在以下任何情况下,您还会显示看到此状态,因此请务必检查固件更新是否已正确应用于设备。
-
当 FUOTA 任务状态为等待 FUOTA 会话,并且存在 S3 存储桶错误时,例如指向 S3 存储桶中映像文件的链接不正确或 适用于 LoRaWAN 的 AWS IoT Core 没有足够的权限来访问存储桶中的文件。
-
当 FUOTA 任务状态为等待 FUOTA 会话,并且有启动 FUOTA 会话的请求时,但是没有从 FUOTA 任务中的设备或多播组收到响应。
-
当 FUOTA 任务状态为 FUOTA 会话中时,并且设备或多播组在一段时间内没有发送任何碎片,这导致会话超时。
-
-
等待删除
如果删除处于任何其他状态的 FUOTA 任务,会显示此状态。这是永久性操作,无法撤消。此操作可能需要时间,在 FUOTA 任务删除之前,任务状态为 Delete waiting(删除等待)。FUOTA 任务进入此状态后,无法转换到其他状态。
FUOTA 任务中设备的状态
FUOTA 任务中的设备可以在 AWS Management Console 中显示下列状态消息。您可以将鼠标悬停在每条状态消息上获取表示内容的更多信息
-
初次
在 FUOTA 会话的开始时间,适用于 LoRaWAN 的 AWS IoT Core 检查您的设备是否有固件更新支持的软件包。如果您的设备有支持的软件包,该设备的 FUOTA 会话将启动。固件映像已碎片化,碎片将发送到您的设备。看到显示此状态时,表示设备的 FUOTA 会话尚未启动。
-
不支持的程序包
如果设备不支持 FUOTA 软件包,您将看到显示此状态。如果不支持固件更新包,设备的 FUOTA 会话将无法启动。要纠正该错误,请检查设备的固件是否可以使用 FUOTA 接收固件更新。
-
不受支持碎片算法
FUOTA 会话开始时,适用于 LoRaWAN 的 AWS IoT Core 为设备设置碎片会话。如果您看到显示此状态,表示使用的碎片算法类型无法应用于设备的固件更新。出现错误的原因是您的设备没有支持的 FUOTA 软件包。要纠正该错误,请检查设备的固件是否可以使用 FUOTA 接收固件更新。
-
内存不足
适用于 LoRaWAN 的 AWS IoT Core 发送映像碎片之后,您的终端设备收集映像碎片并从这些碎片中重建二进制映像。当设备没有足够的内存来组装固件映像的传入碎片时,会显示此状态,这可能会导致固件更新会话过早结束。要纠正错误,请检查设备的硬件是否可以接收此更新。如果您的设备无法接收此更新,请使用增量映像更新固件。
-
不受支持碎片索引
碎片索引标识了四个同时可能出现的碎片会话中的一个。如果您的设备不支持指定的碎片索引值,会显示此状态。要纠正这个错误,可以执行下列操作。
-
为设备启动新的 FUOTA 任务。
-
如果错误仍然存在,请将从单播模式切换到多播模式。
-
如果错误仍未纠正,请检查设备固件。
-
-
内存错误
此状态表示您的设备在接收来自 适用于 LoRaWAN 的 AWS IoT Core 传入的片段时出现了内存错误。如果发生此错误,您的设备可能无法接收此更新。要纠正错误,请检查设备的硬件是否可以接收此更新。如果需要,请使用增量映像更新设备固件。
-
错误描述符
您的设备不支持指定的描述符。描述符是描述在碎片会话期间传输的文件的字段。如果您看到此错误,请联系 AWS Support 中心
。 -
会话计数重播
此状态表示您的设备之前使用过此会话计数。要纠正该错误,请启动设备的 FUOTA 新任务。
-
缺少碎片
当您的设备从 适用于 LoRaWAN 的 AWS IoT Core 中收集图像碎片时,它从独立的编码碎片中重建新的固件映像。如果您的设备尚未收到所有碎片,无法重建新映像,您将看到此状态。要纠正该错误,请启动设备的 FUOTA 新任务。
-
MIC 错误
当您的设备从收集的碎片中重建新固件映像时,会执行 MIC(消息完整性检查)来验证映像的真实性以及是否来自正确的来源。如果您的设备在重新组装碎片后检测到麦克风中不匹配,会显示此状态。要纠正该错误,请启动设备的 FUOTA 新任务。
-
成功
您的设备 FUOTA 会话成功。
注意
尽管此状态消息表示设备已从碎片中重建映像并进行了验证,但设备将状态报告到时,设备固件可能尚未更新到 适用于 LoRaWAN 的 AWS IoT Core。检查您的设备固件是否已更新。
后续步骤
您已经了解了 FUOTA 任务及其设备的不同状态以及如何解决问题。有关每个状态的更多信息,请参阅 loraWAN 碎片化数据块传输规范,TS004-1.0.0