Konfiguracja jarzma testowego routera granicznego

Konfiguracja narzędzia do automatyzacji testów GRL Thread Harness i OpenThread Harness do użytku z urządzeniem testowanym (DUT) OpenThread Border Router (OTBR) jest taka sama jak w przewodniku konfiguracji automatyzacji certyfikacji. Skorzystaj z tego przewodnika w powiązaniu ze zmianami opisanymi w tym artykule.

W przypadku projektu NCP, takiego jak OTBR, OpenThread udostępnia OpenThread_WpanCtl.py przykładowy interfejs sterowania hostem wątku (THCI), który umożliwia testowemu zestawowi narzędzi sterowanie NCP. Istnieją 2 tryby połączenia urządzenia NCP:

  • użycie połączenia przez port szeregowy (zalecane w przypadku funkcji automatycznego wykrywania w Test Harness),
  • Korzystanie z połączenia SSH

O ile nie zaznaczono inaczej, wszystkie czynności związane z instalacją i konfiguracją są wykonywane na komputerze z systemem Windows, na którym jest uruchomione oprogramowanie GRL Test Harness. Należy je zainstalować przed kontynuacją.

Kopiowanie plików pomocy THCI

Upewnij się, że na komputerze z systemem Windows masz najnowszą wersję THCI. Sklonuj repozytorium OpenThread lub, jeśli już to zrobisz, przełącz się na gałąź main:

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

Skopiuj te pliki z katalogu /tools/harness-thci w sklonowanym repozytorium OpenThread do określonych katalogów na komputerze z systemem Windows:

Plik źródłowy Kopiowanie do katalogu
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\

Skonfiguruj typ połączenia

Aby umożliwić sterowanie NCP za pomocą Test Harness, skonfiguruj połączenie z portem szeregowym lub połączenie SSH.

Na Raspberry Pi 3B (RPi3B) włącz port szeregowy i powłokę logowania:

  1. Otwórz menu konfiguracji:
    sudo raspi-config
  2. W menu konfiguracji wybierz 5 opcji interfejsu.
  3. W menu Opcje interfejsu wybierz Włączanie/wyłączanie interfejsu P6 serial.
  4. Uruchom ponownie RPi3B.

Na komputerze z systemem Windows, na którym działa jarzma testowa:

Połączenie OTBR FT232
  1. Pobierz i zainstaluj sterownik FT232.
  2. Podłącz przejściówkę FT232 USB na UART do gniazda USB w komputerze z systemem Windows.
  3. Ustaw zworkę napięcia na płytce FT232 na 3,3 V.
  4. Połącz moduł FT232 z modułem RPi3B za pomocą tych pinów i przewodów Dupont:
    Kod PIN RPi3B FT232 Pin Dupont Line
    Pin6 GND Biały
    Pin8 RXD Żółty
    Pin10 TXD Czerwony
  5. Po nawiązaniu połączenia uruchom ponownie komputer z systemem Windows.
  6. Znajdź identyfikator sprzętowy portu szeregowego urządzenia, używając modułu Pythona pySerial:
    1. Zainstaluj pySerial na komputerze z systemem Windows.
    2. Użyj Pythona na wierszu poleceń systemu Windows, aby wyliczyć wszystkie identyfikatory sprzętowe (VID i PID) urządzeń połączonych z komputerem. W tym wyjściu widać, że jedno urządzenie NCP jest połączone z identyfikatorem 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. Jeśli znasz już port COM, możesz użyć innego polecenia. Jeśli na przykład port COM to 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. Zaktualizuj listę złotych urządzeń:
    1. Otwórz: C:\GRL\Thread1.1\Config\Configuration.ini
    2. Dodaj do tablicy GoldenDeviceHardwareIds grupy OpenThread_WpanCtl z identyfikatorami VID i PID urządzeń:
      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’]}

Po zakończeniu konfiguracji:

  1. Uruchom narzędzie do testowania GRL.
  2. Na stronie Konfigurowanie testu urządzenie/port jest teraz wyświetlane jako urządzenie OT NCP.

    Jeśli po uruchomieniu testowego zestawu narzędzi urządzenie DUT nie jest wymienione w sekcji Test Bed, dodaj je ręcznie, przeciągając urządzenie OpenThread WpanCtl: wpantund+NCP z sekcji Obsługiwane urządzenia do sekcji Test Bed. Po przeciągnięciu:

    1. Sprawdź, czy wartości Serial Line (port COM) i Speed (szybkość transmisji) są prawidłowe.
    2. Aby nawiązać połączenie szeregowe między urządzeniem Test Harness a urządzeniem OT NCP, kliknij przycisk strzałki pod polem Prędkość.
  3. Zaznacz pole wyboru Włącz automatyczne wybieranie urządzeń DUT pod listą obsługiwanych urządzeń.

  4. Aby ustawić urządzenie OT NCP jako urządzenie DUT, kliknij przycisk radiowy Ustaw jako DUT pod urządzeniem docelowym lub portem.

Certyfikat OTBR SSH

Połączenie SSH

Włącz SSH w RPi3B:

  1. Włącz usługę SSH podczas uruchamiania:
    sudo systemctl enable ssh
  2. Uruchom usługę SSH:
    sudo systemctl start ssh

Aby włączyć SSH w RPi3B bez interfejsu graficznego, zobacz krok 3 w dokumentacji Raspberry Pi SSH.

Na komputerze z systemem Windows, na którym działa Test Harness:

  1. Zainstaluj Paramiko w środowisku Pythona w GRL:
    cd C:\GRL\Python2.7
    python -m pip install --upgrade pip
    python -m pip install paramiko
  2. Uruchom test za pomocą narzędzia GRL.
  3. Na stronie Konfigurowanie testowego łóżka przeciągnij urządzenie OpenThread WpanCtl SSH: wpantund+NCP z sekcji Obsługiwane urządzenia do sekcji Testowe łóżko.
  4. W przypadku urządzenia wypełnij pole IP addr wartością 192.168.1.100, a pole PORT wartością 22.
  5. Aby nawiązać połączenie SSH między narzędziem do testowania a urządzeniem OT NCP, kliknij przycisk strzałki pod polem PORT.
Certyfikat OTBR – SSH

Konfiguracja automatyzacji

Instrukcje konfigurowania narzędzia Harness Automation Tool znajdziesz w krokach instalacji i konfiguracji w przewodniku po konfiguracji automatyzacji certyfikacji.

Uruchamianie elementów testowania

Aby dowiedzieć się, jak uruchamiać przypadki testowe certyfikacji w ramach testów typu „wszystko w jednym miejscu”, zapoznaj się z artykułem Uruchamianie przypadków testowych certyfikacji.

Rozwiązywanie problemów

Ponowne uruchamianie urządzenia

Jeśli musisz ponownie uruchomić RPi3B, zamknij oprogramowanie Test Harness i poczekaj co najmniej 20 sekund od momentu ponownego uruchomienia, aby ponownie uruchomić Test Harness.

Test Harness nie wykrywa routera Border Router

Podczas korzystania z portu szeregowego narzędzie Test Harness może nie wykryć routera brzegowego. W takim przypadku:

  1. Sprawdź, czy logowanie do powłoki działa w przypadku portu szeregowego, korzystając z narzędzia takiego jak PuTTY.
    1. Użyj portu COM urządzenia FT232 z szybkością (szybkość transmisji) 115 200.
    2. Jeśli nie uda się zalogować, zrestartuj wszystkie urządzenia i spróbuj ponownie.
  2. Sprawdź stan w RPi3B wpantund:
    sudo service wpantund status
    Jeśli stan to „nieprawidłowy”:
    1. Upewnij się, że płytka NCP nRF52840 jest zamontowana:
      ls /dev/tty*
      /dev/ttyACM0
    2. Sprawdź, czy ten port jest zgodny z konfiguracją wpantund:
      // default value in '/etc/wpantund.conf'
      Config:NCP:SocketPath "/dev/ttyACM0"
    3. Uruchom ponownie wpantund:
      sudo service wpantund restart