Google 致力于为黑人社区推动种族平等。查看具体行动

边界路由器自动化测试框架设置

设置 GRL 线程自动化测试框架和用于与 OpenThread 边界路由器 (OTBR) 设备 (DUT) 的 OpenThread 自动化测试框架自动化工具与认证自动化设置指南中披露政府所要求信息的数量和类型。请将本指南与本文所述的更改结合使用。

对于 OTBR 等 NCP 设计,OpenThread 提供了一个 OpenThread_WpanCtl.py 示例线程主机控制接口 (THCI),允许自动化测试框架控制 NCP。NCP 设备有两种连接模式:

  • 使用串行端口连接(推荐使用自动化测试框架的自动发现功能)
  • 使用 SSH 连接

除非另有说明,否则以下所有安装和配置步骤都发生在运行 GRL 自动化测试框架软件的 Windows 机器上,应继续安装,然后再继续。

复制 THCI 支持文件

确保在 Windows 计算机上安装了最新版本的 THCI。克隆 OpenThread 代码库,或者将其切换到 main 分支:

git clone https://github.com/openthread/openthread
cd openthread
git checkout main

将克隆的 OpenThread 代码库中的 /tools/harness-thci 中的以下文件复制到 Windows 机器的指定目录中:

源文件 复制到目录
deviceInputFields.xml C:\GRL\Thread1.1\Web\data\
OpenThread_WpanCtl.py C:\GRL\Thread1.1\Thread_Harness\THCI\
OpenThread_WpanCtl.png C:\GRL\Thread1.1\Web\images\

设置连接类型

对于 NCP 的自动化测试框架控制,请设置串行端口连接或 SSH 连接。

在 Raspberry Pi 3B (RPi3B) 上,启用串行端口和登录 shell:

  1. 进入配置菜单:
    sudo raspi-config
  2. 在配置菜单中,选择 5 个界面选项
  3. 在“接口选项”菜单中,选择 P6 串行启用/停用
  4. 重启 RPi3B。

在运行自动化测试框架的 Windows 机器上:

OTBR FT232 连接
  1. 下载并安装 FT232 驱动程序
  2. 将 FT232 USB 转 UART 适配器连接到 Windows 计算机上的 USB 插槽。
  3. 将 FT232 上的电压跳线设置为 3.3V。
  4. 使用以下引脚和 Dupont 行将 FT232 连接到 RPi3B:
    RPi3B 引脚 FT232 引脚 双线
    PIN 码 6 加纳盾 白色
    PIN 码 8 RXD 黄色
    图钉 10 TXD 红色
  5. 连接后,重启 Windows 计算机。
  6. 使用 Python pySerial 模块查找设备串行端口硬件标识符:
    1. 在 Windows 机器上安装 pySerial
    2. 在 Windows 命令行中使用 Python 来枚举连接到该机器的设备的所有硬件标识符(VID 和 PID)。在此输出中,连接了一个 NCP 设备,其标识符为 VID_0403+PID_6001
      python -m serial.tools.list_ports -v
      COM10
          desc: USB Serial Port (COM10)
          hwid: FTDIBUS\VID_0403+PID_6001+AL01WOSZA\0000
    3. 如果您已知道 COM 端口,则可以使用其他命令。例如,如果 COM 端口为 COM10
      python -c "import serial.tools.list_ports;print [ports[2] for ports in serial.tools.list_ports.comports() if ports[0] == 'COM10']"
      ['FTDIBUS\VID_0403+PID_6001+AL01WP6MA\0000']
  7. 更新黄金设备列表:
    1. 打开 C:\GRL\Thread1.1\Config\Configuration.ini
    2. 使用设备的 VID 和 PID 向 GoldenDeviceHardwareIds 数组添加 OpenThread_WpanCtl 分组:
      GoldenDeviceHardwareIds = {
      'NXP': ['VID:PID=1FC9:0300','VID:PID=15A2:0300','VID:PID=1366:1015'],
      'SiLabs': 'VID:PID=10C4:8A5E',
      'ARM': 'VID:PID=0D28:0204',
      'OpenThread':['VID:PID=10C4:EA60', 'VID:PID=1915:CAFE'],
      'OpenThread_WpanCtl':['VID_0403+PID_6001’]}

完成所有配置后:

  1. 启动 GRL 自动化测试框架。
  2. Configure Test Bed 页面上,设备/端口现在显示为 OT NCP 设备。

    自动化测试框架启动后,如果 Test Bed 部分未列出 DUT,请通过拖动 OpenThread WpanCtl:wpantund+NCP 手动添加 DUT。设备从支持的硬件部分移动到测试平台部分。拖动后:

    1. 确保已填充正确的串行线路(COM 端口)和速度(比特率)值。
    2. 点击速度字段下方的箭头按钮,在自动化测试框架与 OT NCP 设备之间建立串行连接。
  3. 选中“Supported Hardware”列表下方的 Enable Auto DUT Device Selection 复选框。

  4. 选择目标设备/端口下的设置为 DUT 单选按钮,将 OT NCP 设备设置为 DUT。

OTBR 认证 SSH

SSH 连接

在 RPi3B 上,启用 SSH:

  1. 在启动时启用 SSH 服务:
    sudo systemctl enable ssh
  2. 启动 SSH 服务:
    sudo systemctl start ssh

如需在无头 RPi3B 上启用 SSH,请参阅 Raspberry Pi SSH 文档的第 3 步。

在运行自动化测试框架的 Windows 机器上:

  1. 安装适用于 GRL 的 Python 环境的 Paramiko:
    cd C:\GRL\Python2.7
    python -m pip install --upgrade pip
    python -m pip install paramiko
  2. 启动 GRL 自动化测试框架。
  3. 配置测试平台页面,将OpenThread WpanCtl SSH:wpantund+NCP CANNOT TRANSLATE支持的硬件部分添加到测试平台部分。
  4. 使用 192.168.1.100 为设备填充 IP 插件,使用设备 22 填充 PORT
  5. 点击端口字段下方的箭头按钮,在自动化测试框架与 OT NCP 设备之间建立 SSH 连接。
OTBR 认证 SSH

自动化设置

请参阅认证自动化设置指南中的安装配置步骤,了解如何设置自动化测试框架自动化工具。

运行测试用例

请参阅运行认证测试用例,了解如何在 OTBR DUT 上运行认证测试用例。

问题排查

设备重新启动

如果您需要重新启动 RPi3B,请关闭自动化测试框架软件,并在重新启动完成后至少等待 20 秒,才能再次启动自动化测试框架。

自动化测试框架未能发现边界路由器

使用串行端口连接时,自动化测试框架可能无法发现边界路由器。如果是这种情况,请执行以下操作:

  1. 使用 PuTTY 等工具检查 shell 登录是否适用于串行端口。
    1. 请使用适用于 FT232 设备的 COM 端口,其速度为 115200。
    2. 如果登录失败,请重新启动所有设备,然后重试。
  2. 在 RPi3B 上,检查 wpantund 的状态:
    sudo service wpantund status
    如果状态为“不正常”,请执行以下操作:
    1. 确保装载了 nRF52840 NCP 板:
      ls /dev/tty*
      /dev/ttyACM0
    2. 验证此端口是否与 wpantund 配置匹配:
      // default value in '/etc/wpantund.conf'
      Config:NCP:SocketPath "/dev/ttyACM0"
    3. 重启 wpantund
      sudo service wpantund restart