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.
połączenie przez port szeregowy (zalecane);
Na Raspberry Pi 3B (RPi3B) włącz port szeregowy i powłokę logowania:
- Otwórz menu konfiguracji:
sudo raspi-config
- W menu konfiguracji wybierz 5 opcji interfejsu.
- W menu Opcje interfejsu wybierz Włączanie/wyłączanie interfejsu P6 serial.
- Uruchom ponownie RPi3B.
Na komputerze z systemem Windows, na którym działa jarzma testowa:
- Pobierz i zainstaluj sterownik FT232.
- Podłącz przejściówkę FT232 USB na UART do gniazda USB w komputerze z systemem Windows.
- Ustaw zworkę napięcia na płytce FT232 na 3,3 V.
- 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 - Po nawiązaniu połączenia uruchom ponownie komputer z systemem Windows.
- Znajdź identyfikator sprzętowy portu szeregowego urządzenia, używając modułu Pythona pySerial:
- Zainstaluj pySerial na komputerze z systemem Windows.
- 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
COM10desc: USB Serial Port (COM10)
hwid: FTDIBUS\VID_0403+PID_6001+AL01WOSZA\0000
- 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']
- Zaktualizuj listę złotych urządzeń:
- Otwórz:
C:\GRL\Thread1.1\Config\Configuration.ini
- 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’]}
- Otwórz:
Po zakończeniu konfiguracji:
- Uruchom narzędzie do testowania GRL.
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:
- Sprawdź, czy wartości Serial Line (port COM) i Speed (szybkość transmisji) są prawidłowe.
- 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ść.
Zaznacz pole wyboru Włącz automatyczne wybieranie urządzeń DUT pod listą obsługiwanych urządzeń.
Aby ustawić urządzenie OT NCP jako urządzenie DUT, kliknij przycisk radiowy Ustaw jako DUT pod urządzeniem docelowym lub portem.
Połączenie SSH
Włącz SSH w RPi3B:
- Włącz usługę SSH podczas uruchamiania:
sudo systemctl enable ssh
- 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:
- Zainstaluj Paramiko w środowisku Pythona w GRL:
cd C:\GRL\Python2.7
python -m pip install --upgrade pip
python -m pip install paramiko
- Uruchom test za pomocą narzędzia GRL.
- Na stronie Konfigurowanie testowego łóżka przeciągnij urządzenie OpenThread WpanCtl SSH: wpantund+NCP z sekcji Obsługiwane urządzenia do sekcji Testowe łóżko.
- W przypadku urządzenia wypełnij pole IP addr wartością 192.168.1.100, a pole PORT wartością 22.
- Aby nawiązać połączenie SSH między narzędziem do testowania a urządzeniem OT NCP, kliknij przycisk strzałki pod polem PORT.
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:
- Sprawdź, czy logowanie do powłoki działa w przypadku portu szeregowego, korzystając z narzędzia takiego jak PuTTY.
- Użyj portu COM urządzenia FT232 z szybkością (szybkość transmisji) 115 200.
- Jeśli nie uda się zalogować, zrestartuj wszystkie urządzenia i spróbuj ponownie.
- Sprawdź stan w RPi3B
wpantund
: Jeśli stan to „nieprawidłowy”:sudo service wpantund status
- Upewnij się, że płytka NCP nRF52840 jest zamontowana:
ls /dev/tty*
/dev/ttyACM0 - Sprawdź, czy ten port jest zgodny z konfiguracją
wpantund
:// default value in '/etc/wpantund.conf' Config:NCP:SocketPath "/dev/ttyACM0"
- Uruchom ponownie
wpantund
:sudo service wpantund restart
- Upewnij się, że płytka NCP nRF52840 jest zamontowana: