A configuração do arcabouço de testes da linha de execução GRL e a ferramenta de automação Harness Harness do OpenThread para uso com o dispositivo em teste (DUT, na sigla em inglês) OpenThread Border Router (OTT) é igual ao Guia de configuração de automação da certificação. Use esse guia em conjunto com as mudanças detalhadas aqui.
Para um design de NCP como o OTBR, o OpenThread fornece uma OpenThread_WpanCtl.py
Exemplo de interface de controle de host de linha de execução
(THCI)
que permite que o arcabouço de testes controle o NCP. Há dois modos de conexão
para um dispositivo NCP:
- Usar uma conexão de porta serial, recomendada para o uso do recurso de descoberta automática do Harness de teste.
- Com uma conexão SSH
A menos que indicado de outra forma, todas as etapas de instalação e configuração abaixo ocorrem na máquina Windows que executa o software GRL Test Harness, que precisa ser instalado antes de continuar.
Copiar arquivos de suporte THCI
Verifique se você tem a versão mais recente do THCI no computador Windows. Clone o
repositório do OpenThread ou, se já tiver feito isso, alterne-o para a ramificação main
:
git clone https://github.com/openthread/openthread
cd openthread
git checkout main
Copie os seguintes arquivos de
/tools/harness-thci
no repositório OpenThread clonado para os diretórios especificados na máquina
Windows:
Arquivo de origem | Copiar no diretório |
---|---|
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\ |
Configurar tipo de conexão
Para o controle de Harness de teste do NCP, configure uma conexão de porta serial ou uma conexão SSH.
Conexão da porta serial (recomendado)
No Raspberry Pi 3B (RPi3B), ative a porta serial e o shell de login:
- Acesse o menu de configuração:
sudo raspi-config
- No menu de configuração, selecione 5 Opções de interface.
- No menu "Interface Options", selecione P6 Serial Enable/Disable.
- Reinicie o RPi3B.
No computador Windows que executa o arcabouço de testes:

- Faça o download do driver FT232.
- Conecte o adaptador USB FT232 ao UART em um slot USB do computador Windows.
- Defina o jumper de tensão no FT232 para 3,3V.
- Conecte o FT232 ao RPi3B usando os seguintes pinos e linhas Dupont:
Alfinete RPi3B Alfinete FT232 Linha dupont Pin6 NÍVEL Branca Alfinete Rxd Amarelo Pin10 TXd- Ruivo - Depois de conectado, reinicie o computador Windows.
- Localize o identificador de hardware da porta serial do dispositivo usando o módulo pySerial do Python:
- Instale o pySerial na máquina Windows.
- Use o Python na linha de comando do Windows para enumerar todos os identificadores de hardware (VID e PID) para dispositivos conectados à máquina. Nesta saída, um dispositivo NCP está conectado, com um identificador de
VID_0403+PID_6001
.python -m serial.tools.list_ports -v
COM10desc: USB Serial Port (COM10)
hwid: FTDIBUS\VID_0403+PID_6001+AL01WOSZA\0000
- Se você já conhece a porta COM, pode usar um comando diferente. Por
exemplo, se a porta COM for
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']
- Atualize a lista de dispositivos Golden:
- Abrir
C:\GRL\Thread1.1\Config\Configuration.ini
- Adicione um agrupamento OpenThread_WpanCtl à matriz
GoldenDeviceHardwareIds
com o VID e o PID dos dispositivos: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’]}
- Abrir
Assim que toda a configuração for concluída:
- Inicie o arcabouço de testes do GRL.
Na página Configure Test Bed, o dispositivo/porta agora aparece como um dispositivo OT NCP.
Se o DUT não estiver listado na seção Test Bed depois que o arcabouço de testes for iniciado, adicione-o manualmente arrastando o dispositivo OpenThread WpanCtl: wpantund+NCP da seção Supported Hardware para a seção Test Bed. Após arrastar:
- Verifique se os valores corretos de Linha de série (porta COM) e Velocidade (taxa baud) estão preenchidos.
- Clique no botão de seta abaixo do campo Speed para estabelecer a conexão serial entre o arcabouço de testes e o dispositivo OT NCP.
Marque a caixa de seleção Enable Auto DUT Device Selection abaixo da lista "Hardware compatível".
Selecione o botão de opção Definir como DUT no dispositivo/porta para definir o dispositivo OT NCP como o DUT.

Conexão SSH
No RPi3B, ative o SSH:
- Ative o serviço SSH na inicialização:
sudo systemctl enable ssh
- Inicie o serviço SSH:
sudo systemctl start ssh
Para ativar o SSH em um RPi3B headless, consulte a Etapa 3 da documentação do SSH do Raspberry Pi.
No computador Windows que executa o arcabouço de testes:
- Instale o Paramiko para o ambiente Python do GRL:
cd C:\GRL\Python2.7
python -m pip install --upgrade pip
python -m pip install paramiko
- Inicie o arcabouço de testes do GRL.
- Na página Configure Test Bed, arraste o dispositivo OpenThread WpanCtl SSH: wpantund+NCP da seção Supported Hardware para a seção Test Bed.
- Preencha o adicionador de IP com 192.168.1.100 e PORT com 22 para o dispositivo.
- Clique no botão de seta abaixo do campo PORT para estabelecer uma conexão SSH entre o arcabouço de testes e o dispositivo OT NCP.

Configuração de automação
Consulte as etapas Instalar e Configurar no guia de configuração da automação de certificação para ver instruções sobre como configurar a ferramenta de automação do Harness.
Executar casos de teste
Consulte Como executar casos de teste de certificação para saber como executar casos de teste de certificação no OTBR DUT.
Solucionar problemas
Reinicializações do dispositivo
Se você precisar reiniciar o RPi3B, feche o software Test Harness e aguarde pelo menos 20 segundos após a conclusão da reinicialização para iniciar o Test Harness novamente.
O arcabouço de testes não conseguiu descobrir o roteador de borda
Ao usar uma conexão de porta serial, o arcabouço de testes pode não descobrir o roteador de borda. Se esse for o caso:
- Verifique se um login do Shell funciona para a porta serial, usando uma ferramenta como
PuTTY.
- Use a porta COM para o dispositivo FT232 e uma velocidade (baud rate) de 115200.
- Se o login falhar, reinicialize todos os dispositivos e tente novamente.
- No RPi3B, verifique o status do
wpantund
:
Se o status for "abnormal":sudo service wpantund status
- Confira se a placa NCP nRF52840 está ativada:
ls /dev/tty*
/dev/ttyACM0 - Valide se esta porta corresponde à configuração de
wpantund
:// default value in '/etc/wpantund.conf' Config:NCP:SocketPath "/dev/ttyACM0"
- Reinicie
wpantund
:sudo service wpantund restart
- Confira se a placa NCP nRF52840 está ativada: