邊界路由器測試健全度設定

設定要與 OpenThread 邊界路由器 (OTBR) 測試的裝置 (DUT) 搭配使用的 GRL 執行緒測試健全度和 OpenThread 健全性自動化工具認證自動化設定指南的 Google Ads 新帳戶重新申請驗證。請將本指南與這裡提及的變更搭配使用。

如果是 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) 上,啟用序列埠和登入殼層:

  1. 輸入設定選單:
    sudo raspi-config
  2. 在設定選單中,選取 [5 Interface Options]
  3. 在「並連接選項」選單中,選取 [P6 序列啟用/停用]。
  4. 重新啟動 RPi3B。

在執行測試健康狀態的 Windows 電腦上執行下列步驟:

OTBR FT232 連線
  1. 下載並安裝 FT232 驅動程式
  2. 將 FT232 USB 轉 UART 轉接器至 Windows 電腦上的 USB 插槽。
  3. 將 FT232 上的電頻跳線設為 3.3V。
  4. 使用以下圖釘和杜拜線條將 FT232 連線至 RPi3B:
    RPi3B PIN 碼 FT232 PIN 碼 防線
    PIN 碼 6 GND 白色
    Pin8 鍵 RXD 黃色
    PIN 碼 10 德州 紅色
  5. 連線後,請重新啟動 Windows 電腦。
  6. 使用 Python pySerial 模組尋找裝置序列埠硬體 ID:
    1. 在 Windows 電腦上安裝 pySerial
    2. 在 Windows 指令列中使用 Python 來列舉與機器連線的裝置的所有硬體 ID (VID 和 PID)。在這個輸出內容中,連接了一個 NCP 裝置,其 ID 為 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. 更新 Golden Device 清單:
    1. 開啟「C:\GRL\Thread1.1\Config\Configuration.ini
    2. OpenThread_WpanCtl 群組新增至 GoldenDeviceHardwareIds 陣列,其中列出裝置的 VID 和 PID:
      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 裝置。

    測試開始後,如果 DUT 未列於「測試 B」部分中,請拖曳 OpenThread WpanCtl: wpantund+NCP 來手動新增裝置從「支援的硬體」專區的「測試版」部分顯示。拖曳後:

    1. 確認系統填入的是正確的序列行 (COM 通訊埠) 和速度 (波特率) 值。
    2. 按一下「速度」欄位下方的箭頭按鈕,在測試健康狀態和 OT NCP 裝置之間建立序列連線。
  3. 在「支援的硬體」清單下方,選取 [啟用自動 DUT 裝置選取功能] 核取方塊。

  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裝置支援的硬體測試床區段。
  4. 將 192.168.1.100 的 IP 地址填入 Port 的 Port 值為 22;
  5. 按一下 [Port] (通訊埠) 欄位下方的箭頭按鈕,在測試控管和 OT NCP 裝置之間建立 SSH 連線。
OTBR 認證 SSH

自動化設定

請參閱認證自動化設定指南中的安裝設定步驟,瞭解如何設定亮度自動化工具。

執行測試案例

如要瞭解如何在 OTBR DUT 上執行認證測試案例,請參閱執行認證測試案例

疑難排解

裝置重新啟動

如果您需要重新啟動 RPi3B,請關閉測試健康狀態軟體,並在重新啟動後等待 20 秒,再次啟動測試健康狀態。

測試健康狀態檢查無法找到邊界路由器

使用序列埠連線時,測試健康狀態可能會找不到邊界路由器。在這種情況下:

  1. 使用 PuTTY 等工具,檢查 SSH 登入是否適用於序列埠。
    1. FT232 裝置的 COM 連接埠速度為 115200。
    2. 如果登入失敗,請重新啟動所有裝置,然後再試一次。
  2. 在 RPi3B 上,檢查 wpantund 的狀態:
    sudo service wpantund status
    如果狀態為「abnormal」:
    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