Test von Border Router testen

Die Einrichtung des GRL-Thread-Test-Harness und des OpenThread-Harness-Automatisierungstools zur Verwendung mit dem OTBR-Gerät (OpenThread Border Router) erfolgt auf dieselbe Weise wie im Leitfaden zur Einrichtung der Zertifizierungsautomatisierung. Verwenden Sie diesen Leitfaden in Verbindung mit den hier beschriebenen Änderungen.

Für ein NCP-Design wie OTBR bietet OpenThread ein OpenThread_WpanCtl.py-Beispiel für eine Thread-Hoststeuerung (THCI), mit der der Test-Harnisch den NCP steuern kann. Es gibt zwei Verbindungsmodi für ein NCP-Gerät:

  • Verbindung mit seriellem Port verwenden (empfohlen für die automatische Erkennung des Test Harness)
  • SSH-Verbindung verwenden

Sofern nicht anders angegeben, finden alle folgenden Installations- und Konfigurationsschritte auf dem Windows-Computer statt, auf dem die GRL-Test-Harness-Software ausgeführt wird. Diese sollte vor dem Fortfahren installiert werden.

THCI-Supportdateien kopieren

Auf dem Windows-Computer muss die neueste Version von THCI installiert sein. Klonen Sie das OpenThread-Repository oder wechseln Sie gegebenenfalls zum main-Zweig:

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

Kopieren Sie die folgenden Dateien aus /tools/harness-thci im geklonten OpenThread-Repository in die angegebenen Verzeichnisse auf dem Windows-Computer:

Quelldatei In Verzeichnis kopieren
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\

Verbindungstyp einrichten

Richten Sie für die Test-Harness-Steuerung des NCP entweder eine serielle Portverbindung oder eine SSH-Verbindung ein.

Aktivieren Sie auf dem Raspberry Pi 3B (RPi3B) den seriellen Port und die Shell für die Anmeldung:

  1. Rufen Sie das Konfigurationsmenü auf:
    sudo raspi-config
  2. Wählen Sie im Konfigurationsmenü 5 Schnittstellenoptionen aus.
  3. Wählen Sie im Menü mit den Optionen für die Schnittstelle P6 Serial Enable/Disable (Serielle Aktivierung/Deaktivierung) aus.
  4. Starten Sie das RPi3B neu.

Auf dem Windows-Computer, auf dem der Test-Harnesstest ausgeführt wird:

OTBR FT232 Verbindung
  1. Laden Sie den FT232-Treiber herunter und installieren Sie ihn.
  2. Schließen Sie den USB-zu-UART-Adapter (FT232) an einen USB-Anschluss des Windows-Computers an.
  3. Den Spannungsschalter an FT232 auf 3,3 V einstellen.
  4. Verbinde FT232 mit den folgenden Pins und Dupont-Linien mit dem RPi3B:
    RPi3B-PIN FT232 Dupont-Linie
    Pin6 GND Weiß
    Pin8 Rxd Gelb
    Pin10 Logo: TXD Rot
  5. Sobald die Verbindung hergestellt ist, starten Sie den Windows-Computer neu.
  6. Suchen Sie mithilfe des Python-Moduls „pySerial“ nach der Hardwarekennzeichnung des seriellen Ports des Geräts:
    1. Installieren Sie pySerial auf dem Windows-Computer.
    2. Verwenden Sie Python in der Windows-Befehlszeile, um alle Hardwarekennungen (VID und PID) für mit dem Computer verbundene Geräte aufzulisten. In dieser Ausgabe ist ein NCP-Gerät mit der Kennzeichnung VID_0403+PID_6001 verbunden.
      python -m serial.tools.list_ports -v
      COM10
          desc: USB Serial Port (COM10)
          hwid: FTDIBUS\VID_0403+PID_6001+AL01WOSZA\0000
    3. Wenn Sie den COM-Port bereits kennen, können Sie einen anderen Befehl verwenden. Wenn der COM-Port beispielsweise COM10 ist:
      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. Aktualisieren Sie die Liste „Gold-Gerät“:
    1. C:\GRL\Thread1.1\Config\Configuration.ini öffnen
    2. Fügen Sie dem Array GoldenDeviceHardwareIds eine OpenThread_WpanCtl-Gruppierung mit der VID und PID der Geräte hinzu:
      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’]}

Sobald die Konfiguration abgeschlossen ist:

  1. Starten Sie den GRL-Test-Harness.
  2. Auf der Seite Testbett konfigurieren wird das Gerät/der Port jetzt als OT NCP-Gerät angezeigt.

    Wenn das DUT nach dem Start des Test-Harnessbereichs nicht im Abschnitt Testbett aufgeführt ist, fügen Sie es manuell hinzu. Ziehen Sie dazu das Gerät OpenThread WpanCtl: wpantund+NCP aus dem Abschnitt Unterstützte Hardware in den Abschnitt Testbett. Nach dem Ziehen:

    1. Prüfen Sie, ob die Werte für die serielle Zeile (COM-Port) und die Geschwindigkeit (Baudrate) ausgefüllt sind.
    2. Klicken Sie auf die Pfeilschaltfläche unter dem Feld Geschwindigkeit, um die serielle Verbindung zwischen dem Test-Harnessgerät und dem OT NCP-Gerät herzustellen.
  3. Klicken Sie unter der Liste Unterstützte Hardware das Kästchen Automatische DUT-Geräteauswahl aktivieren an.

  4. Wählen Sie unter dem Zielgerät/-port das Optionsfeld Als DUT festlegen aus, um das OT NCP-Gerät als DUT festzulegen.

SSH-Zertifizierung für OTBR-Zertifizierung

SSH-Verbindung

Aktivieren Sie im RPi3B SSH:

  1. Aktivieren Sie den SSH-Dienst beim Booten:
    sudo systemctl enable ssh
  2. Starten Sie den SSH-Dienst:
    sudo systemctl start ssh

Informationen zum Aktivieren von SSH in einem monitorlosen RPi3B finden Sie in Schritt 3 der Raspberry Pi SSH-Dokumentation.

Auf dem Windows-Computer, auf dem der Test-Harnesstest ausgeführt wird:

  1. Installieren Sie Paramiko für die Python-Umgebung von GRL:
    cd C:\GRL\Python2.7
    python -m pip install --upgrade pip
    python -m pip install paramiko
  2. Starten Sie den GRL-Test-Harness.
  3. Ziehen Sie auf der Seite Testbett konfigurieren das Gerät OpenThread WpanCtl SSH: wpantund+NCP aus dem Abschnitt Unterstützte Hardware in den Abschnitt Testbett.
  4. Füllen Sie den IP-Add-on mit 192.168.1.100 und den PORT mit 22 für das Gerät.
  5. Klicken Sie auf die Pfeilschaltfläche unter dem Feld PORT, um eine SSH-Verbindung zwischen dem Test-Harnessgerät und dem OT NCP-Gerät herzustellen.
SSH-Zertifizierung für OTBR-Zertifizierung

Automatisierung einrichten

In den Schritten Installieren und Konfigurieren im Leitfaden zur Einrichtung der Zertifizierungsautomatisierung finden Sie eine Anleitung zum Einrichten des Tools zur Hartautomatisierung.

Testfälle ausführen

Hier erfahren Sie, wie Sie Zertifizierungs-Testläufe im OTBR-DUT ausführen.

Fehlerbehebung

Gerät wird neu gestartet

Wenn Sie den RPi3B neu starten müssen, schließen Sie die Test-Harness-Software und warten Sie nach dem Neustart mindestens 20 Sekunden, um den Test-Harness noch einmal zu starten.

Test-Harnisch erkennt Border Router nicht

Wenn Sie eine serielle Portverbindung verwenden, erkennt der Test-Harnisch den Border Router möglicherweise nicht. Trifft das auf Sie zu, haben Sie folgende Möglichkeiten:

  1. Prüfen Sie mit einem Tool wie PuTTY, ob eine Shell-Anmeldung für den seriellen Port funktioniert.
    1. Verwenden Sie den COM-Port für das FT232-Gerät und eine Geschwindigkeit (Baudrate) von 115.200.
    2. Wenn die Anmeldung fehlschlägt, starten Sie alle Geräte neu und versuchen Sie es noch einmal.
  2. Prüfen Sie im RPi3B den Status von wpantund:
    sudo service wpantund status
    Wenn der Status „abnormal“ ist:
    1. Prüfen Sie, ob die nRF52840 NCP-Platine montiert ist:
      ls /dev/tty*
      /dev/ttyACM0
    2. Prüfen Sie, ob dieser Port mit der wpantund-Konfiguration übereinstimmt:
      // default value in '/etc/wpantund.conf'
      Config:NCP:SocketPath "/dev/ttyACM0"
    3. Starten Sie wpantund neu:
      sudo service wpantund restart