Настройка тестового жгута пограничного маршрутизатора

Настройка жгута для тестирования резьбы GRL и инструмента автоматизации жгута OpenThread для использования с тестируемым устройством (DUT) пограничного маршрутизатора OpenThread (OTBR) аналогична руководству по настройке автоматизации сертификации . Используйте это руководство вместе с изменениями, подробно описанными здесь.

Для конструкции NCP, такой как OTBR, OpenThread предоставляет пример OpenThread_WpanCtl.py интерфейса управления хостом потока (THCI) , который позволяет тестовому жгуту управлять NCP. Существует два режима подключения устройства NCP:

  • Использование подключения через последовательный порт (рекомендуется для использования функции автоматического обнаружения тестового жгута)
  • Использование SSH-соединения

Если не указано иное, все описанные ниже шаги по установке и настройке выполняются на компьютере под управлением Windows, на котором установлено программное обеспечение GRL Test Harness, которое необходимо установить перед продолжением.

Копирование файлов поддержки THCI

Убедитесь, что на компьютере с Windows установлена ​​последняя версия THCI. Клонируйте репозиторий OpenThread или, если он у вас уже есть, переключите его в main ветку:

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

Скопируйте следующие файлы из /tools/harness-thci клонированного репозитория OpenThread в указанные каталоги на компьютере с 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 с помощью Test Harness настройте соединение через последовательный порт или соединение SSH.

На Raspberry Pi 3B (RPi3B) включите последовательный порт и оболочку входа:

  1. Войдите в меню конфигурации:
    sudo raspi-config
  2. В меню конфигурации выберите 5 Параметры интерфейса .
  3. В меню «Параметры интерфейса» выберите «P6 Serial Enable/Disable» .
  4. Перезапустите RPi3B.

На компьютере под управлением Windows, на котором работает тестовый жгут:

Подключение OTBR FT232
  1. Загрузите и установите драйвер FT232 .
  2. Подключите адаптер FT232 USB-UART к разъему USB на компьютере под управлением Windows.
  3. Установите перемычку напряжения на FT232 на 3,3 В.
  4. Подключите FT232 к RPi3B, используя следующие контакты и линии Dupont:
    Вывод RPi3B FT232 контактный Дюпон Лайн
    контакт 6 Земля Белый
    контакт 8 прием Желтый
    контакт 10 TXD Красный
  5. После подключения перезагрузите компьютер с Windows.
  6. Найдите аппаратный идентификатор последовательного порта устройства, используя модуль Python pySerial:
    1. Установите pySerial на компьютер с Windows.
    2. Используйте Python в командной строке Windows, чтобы перечислить все идентификаторы оборудования (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. Добавьте группу 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. На странице «Настройка испытательного стенда» устройство/порт теперь отображается как устройство OT NCP.

    Если тестируемое устройство не указано в разделе «Тестовый стенд» после запуска тестового жгута, добавьте его вручную, перетащив устройство OpenThread WpanCtl: wpantund+NCP из раздела «Поддерживаемое оборудование» в раздел «Тестовый стенд» . После перетаскивания:

    1. Убедитесь, что указаны правильные значения последовательной линии (COM-порта) и скорости (скорости передачи данных).
    2. Нажмите кнопку со стрелкой под полем «Скорость» , чтобы установить последовательное соединение между тестовым жгутом и устройством OT NCP.
  3. Установите флажок «Включить автоматический выбор устройства DUT» под списком поддерживаемого оборудования.

  4. Выберите переключатель «Установить как тестируемое устройство» под целевым устройством/портом, чтобы установить устройство OT NCP в качестве тестируемого устройства.

Сертификация OTBR SSH

SSH-соединение

На RPi3B включите SSH:

  1. Включите службу SSH при загрузке:
    sudo systemctl enable ssh
  2. Запустите службу SSH:
    sudo systemctl start ssh

Чтобы включить SSH на безголовом RPi3B, см. шаг 3 документации Raspberry Pi SSH .

На компьютере под управлением Windows, на котором работает тестовый жгут:

  1. Установите Paramiko для среды Python GRL:
    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. Заполните IP-адрес 192.168.1.100 и PORT 22 для устройства.
  5. Нажмите кнопку со стрелкой под полем PORT , чтобы установить SSH-соединение между тестовым жгутом и устройством OT NCP.
Сертификация OTBR SSH

Настройка автоматизации

Инструкции по настройке инструмента автоматизации проводки см. в шагах по установке и настройке в руководстве по настройке автоматизации сертификации.

Запуск тестовых случаев

См. раздел «Выполнение сертификационных тестовых примеров» , чтобы узнать, как запускать сертификационные тестовые сценарии на OTBR DUT.

Поиск неисправностей

Устройство перезагружается

Если вам необходимо перезагрузить RPi3B, закройте программное обеспечение Test Harness и подождите не менее 20 секунд после завершения перезагрузки, чтобы снова запустить Test Harness.

Тестовый жгут не может обнаружить пограничный маршрутизатор

При использовании подключения через последовательный порт тестовый жгут может не обнаружить пограничный маршрутизатор. Если это так:

  1. Проверьте, работает ли вход в Shell для последовательного порта, используя такой инструмент, как PuTTY .
    1. Используйте COM-порт для устройства FT232 и скорость (скорость передачи данных) 115200.
    2. Если вход не удался, перезагрузите все устройства и повторите попытку.
  2. На RPi3B проверьте статус wpantund :
    sudo service wpantund status
    Если статус «ненормальный»:
    1. Убедитесь, что плата NCP nRF52840 установлена:
      ls /dev/tty*
      /dev/ttyACM0
    2. Убедитесь, что этот порт соответствует конфигурации wpantund :
      // default value in '/etc/wpantund.conf'
      Config:NCP:SocketPath "/dev/ttyACM0"
    3. Перезапустите wpantund :
      sudo service wpantund restart