Azure Percept DK 设备故障排除

重要

Azure Percept DK 停用:

更新 2023 年 2 月 22 日: 此处现已提供 Percept DK 视觉和音频附件组件 (也称为视觉和音频 SOM) 的固件更新,并使附件组件能够在停用日期之后继续运行。

Azure Percept 公共预览版将不断发展,以支持新的边缘设备平台和开发人员体验。 在这一发展过程中,Azure Percept DK 和 Audio Accessory 以及相关支持 Percept DK 的服务将于 2023 年 3 月 30 日停用。

自 2023 年 3 月 30 日起,Azure Percept DK 和 Audio Accessory 将不再受任何 Azure 服务的支持,包括 Azure Percept Studio、OS 更新、容器更新、查看 Web 流和自定义视觉集成。 Microsoft 将不再提供客户成功支持和任何相关的支持服务。 有关详细信息,请访问停用通知博客文章

此故障排除文章的目的是帮助 Azure Percept DK 用户快速解决其开发工具包的常见问题。 它还提供了有关如何在需要额外支持时收集日志的指导。

日志收集

本部分将针对要收集哪些日志以及如何收集它们提供指导。

如何收集日志

  1. 通过 SSH 连接到开发工具包。

  2. 在 SSH 终端窗口中运行所需的命令。 有关日志收集命令的列表,请参阅下一部分。

  3. 若要将任何输出重定向到 .txt 文件以做进一步分析,请使用以下语法:

    sudo [command] > [file name].txt
    
  4. 更改 .txt 文件的权限,以便可以复制它:

    sudo chmod 666 [file name].txt
    
  5. 通过 SCP 将文件复制到主机电脑:

    scp [remote username]@[IP address]:[remote file path]/[file name].txt [local host file path]
    

    [local host file path] 是指主机电脑上要将 .txt 文件复制到的位置。 [remote username] 是指在安装体验过程中选择的 SSH 用户名。

日志类型和命令

日志用途 何时收集它 Command
支持包 - 提供大多数客户支持请求所需的一组日志。 在请求支持时收集。 sudo iotedge support-bundle --since 1h

“--since 1h”可以更改为任何时间跨度,例如“6h”(6 小时)、“6d”(6 天)或“6m”(6 分钟)
OOBE 日志 - 记录关于安装体验的详细信息。 在安装体验过程中发现问题时收集。 sudo journalctl -u oobe -b
edgeAgent 日志 - 记录设备上运行的所有模块的版本号。 当一个或多个模块不工作时收集。 sudo iotedge logs edgeAgent
模块容器日志 - 记录有关特定 IoT Edge 模块容器的详细信息 发现模块出现问题时收集 sudo iotedge logs [container name]
网络日志 - 一组涵盖 Wi-Fi 服务和网络堆栈的日志。 在发现 Wi-Fi 或网络问题时收集。 sudo journalctl -u hostapd.service -u wpa_supplicant.service -u ztpd.service -u systemd-networkd > network_log.txt

cat /etc/os-release && cat /etc/os-subrelease && cat /etc/adu-version && rpm -q ztpd > system_ver.txt

同时运行这两个命令。 每个命令收集多个日志,并将这些日志置于单个输出中。

警告

support-bundle 命令的输出可能包含主机、设备和模块名称、模块记录的信息,等等。如果在公共论坛中共享输出,请注意这一点。

命令疑难解答

下面是一组命令,可用于排查开发工具包中可能发现的问题。 若要运行这些命令,必须先通过 SSH 连接到开发工具包。

有关 Azure IoT Edge 命令的详细信息,请参阅 Azure IoT Edge 设备故障排除文档

函数 何时使用 Command
检查开发工具包上的软件版本。 在需要确认开发工具包上的软件版本时使用。 cat /etc/os-release && cat /etc/os-subrelease && cat /etc/adu-version
检查开发工具包的温度 在你认为开发工具包可能过热的情况下使用。 cat /sys/class/thermal/thermal_zone0/temp
检查开发工具包的遥测 ID 在需要了解开发工具包的唯一遥测标识符的情况下使用。 sudo azure-device-health-id
检查 IoT Edge 的状态 在连接到云的 IoT Edge 模块出现问题时使用。 sudo iotedge check
重启 Azure IoT Edge 安全守护程序 在 IoT Edge 无响应或无法正常工作时使用。 sudo systemctl restart iotedge
列出已部署的 Azure IoT Edge 模块 在需要查看开发工具包上部署的所有模块时使用 sudo iotedge list
显示指定文件系统中的可用空间/总空间 在需要了解开发工具包上的可用存储时使用。 df [option] [file]
显示开发工具包的 IP 和接口信息 在需要了解开发工具包的 IP 地址时使用。 ip route get 1.1.1.1
仅显示开发工具包的 IP 地址 在仅需要开发工具包的 IP 地址而不需要其他接口信息时使用。 ip route get 1.1.1.1 | awk '{print $7}'
ifconfig [interface]

USB 更新错误

错误: 解决方案:
通过 UUU 更新 USB 闪存期间发生 LIBUSB_ERROR_XXX 此错误是由于 UUU 更新期间 USB 连接失败而导致的。 如果 USB 电缆未正确连接到电脑或 Percept DK 承载板上的 USB 端口,则会出现这种形式的错误。 尝试拔下再重新连接 USB 数据线的两端,然后轻轻摇晃数据线以确保连接稳固。

清理 Azure Percept DK 上的硬盘空间

有两个组件占用了 Azure Percept DK 上的硬盘空间:Docker 容器日志和 Docker 容器本身。 为了确保容器日志不会占用全部硬盘空间,Azure Percept DK 内置了日志轮换功能,可以在生成新日志时轮换掉任何旧日志。

对于 Docker 容器数量导致硬盘空间问题的情况,可以按照以下步骤删除未使用的容器:

  1. 通过 SSH 连接到开发工具包
  2. 运行以下命令:docker system prune

这将删除所有未使用的容器、网络、映像和可选卷。 有关更多详细信息,请转到此页

Azure Percept DK 承载板 LED 状态

承载板外壳的顶部有三个小型 LED。 LED 1 的旁边印刷了云图标,LED 2 的旁边印刷了 Wi-Fi 图标,LED 3 的旁边印刷了感叹号图标。 有关每种 LED 状态的信息,请参阅下表。

LED 状态 说明
LED 1(IoT 中心) 点亮(纯色) 设备已连接到 IoT 中心。
LED 2 (Wi-Fi) 缓慢闪烁 设备已准备好由 Wi-Fi Easy Connect 进行配置,并在向配置器通告其存在性。
LED 2 (Wi-Fi) 快速闪烁 身份验证成功,设备关联正在进行。
LED 2 (Wi-Fi) 点亮(纯色) 身份验证和关联成功;设备已连接到 Wi-Fi 网络。
LED 3 NA LED 未使用。