邊界路由器測試控制設定

設定 GRL 執行緒測試工具及 OpenThread Harness 自動化工具 與 OpenThread 邊界路由器 (OTBR) 使用測試的裝置 (DUT) 是 與認證自動化設定相同 指南。請將該指南與 這裡會詳細說明變更內容

針對 OTBR 等 NCP 設計,OpenThread 提供 OpenThread_WpanCtl.py 執行緒主機控制介面範例 (THCI) 允許測試控制工具控制 NCP系統提供兩種連線模式 NCP 裝置:

  • 使用序列埠連線 (建議用於測試控制工具的 自動探索功能)
  • 使用 SSH 連線

除非另有註明,否則以下所有安裝與設定步驟都在 執行 GRL Test Harness 軟體的 Windows 機器 才會繼續安裝。

複製 THCI 支援檔案

確認 Windows 電腦上已安裝最新版本的 THCI。複製 OpenThread 存放區;若您已有,請將其切換至 main 分支版本:

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

從以下位置複製下列檔案: /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. 在 Interface Options 選單中選取「P6 Serial 啟用/停用」
  4. 重新啟動 RPi3B。

在執行 Test Harness 的 Windows 電腦上:

OTBR FT232 連線
  1. 下載並安裝 FT232 驅動程式
  2. 將 FT232 USB 轉 UART 轉接頭連接至 Windows 電腦的 USB 插槽。
  3. 將 FT232 的電壓跳躍器設為 3.3V。
  4. 使用下列針腳和 Dupont 線條,將 FT232 連接至 RPi3B:
    RPi3B 綁定版 FT232 PIN 碼 偽線
    Pin6 GND 白色
    Pin8 RXD 黃色
    Pin10 TXD 紅色
  5. 連線後,重新啟動 Windows 電腦。
  6. 使用 Python pySerial 找出裝置序列埠硬體 ID 模組:
    1. 安裝 pySerial Windows 機器
    2. 在 Windows 指令列中使用 Python 列舉所有硬體 裝置識別碼 (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. 更新黃金裝置清單:
    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 裝置。

    如果測試控管工具後方的「Test Bed」部分沒有列出 DUT 若要手動新增,請拖曳 OpenThread WpanCtl: wpantund+NCP 裝置,從支援的硬體測試 床鋪區段。拖曳後:

    1. 確認序號 (COM 通訊埠) 和速度 (波音率) 正確無誤 填入其值。
    2. 按一下「Speed」欄位下方的箭頭按鈕,即可建立序列 測試 Harness 與 OT NCP 裝置之間的連線。
  3. 在「支援」部分下方,勾選「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 說明文件

在執行 Test Harness 的 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 裝置, 「測試 Bed」部分。
  4. 在「IP addr」中填入 192.168.1.100,並在 PORT 中填入 22 裝置。
  5. 按一下「PORT」PORT欄位下方的箭頭按鈕來建立 SSH 測試 Harness 與 OT NCP 裝置之間的連線。
OTBR 憑證 SSH

自動化設定

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

執行測試案例

詳情請參閱「執行認證測試案例」一文。 ,在 OTBR DUT 上執行認證測試案例。

疑難排解

裝置重新啟動

如需重新啟動 RPi3B,請關閉 Test Harness 軟體並等待 重新啟動完成後至少 20 秒即可再次啟動測試工具。

測試 Harness 無法找出邊界路由器

使用序列埠連線時,測試控制工具可能無法發現 邊界路由器。出現這種情況時:

  1. 使用以下工具檢查 Shell 登入功能是否適用於序列埠: PuTTY
    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