O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Comissionamento em malha

Ver fonte no GitHub

Comissário e Marceneiro

O comissionamento requer um dispositivo com a função de Comissário e um dispositivo com a função de Joiner. O Comissário é um dispositivo Thread em uma rede Thread existente ou um dispositivo externo à rede Thread (como um telefone celular) que desempenha a função de Comissário. O Joiner é o dispositivo que deseja ingressar na rede Thread.

Um Thread Commissioner é usado para autenticar um dispositivo na rede. Ele não transfere ou possui credenciais de rede Thread, como a chave de rede.

Este guia cobre o comissionamento básico em malha sem um Comissário externo ou Roteador de Fronteira. Para saber como usar um Comissário externo, consulte Comissionamento de rosca externa .

Para obter um exemplo de comissionamento usando dispositivos virtuais, consulte o OpenThread Simulation Codelab .

Ativar funções

Para habilitar as funções de Comissário e Associado, use as seguintes opções de cmake:

Opção Descrição
-DOT_COMMISSIONER=ON Habilita a função de Comissário
-DOT_JOINER=ON Habilita a função Joiner

Por exemplo, para construir a plataforma de exemplo CC2538 para uso apenas como Joiner:

./script/build -DOT_JOINER=ON

Flash cada binário para o dispositivo desejado. Um dispositivo serve como Comissário, o outro como Marceneiro.

Instruções específicas sobre como construir e atualizar plataformas suportadas podem ser encontradas no repositório OpenThread de cada plataforma. Consulte a organização OpenThread GitHub para encontrar o repositório.

Crie uma rede

Crie uma rede no dispositivo atuando como Comissário:

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

Aguarde alguns segundos e verifique se o dispositivo se tornou um Thread Leader:

state
leader
Done

Iniciar a função de Comissário

Nesse mesmo dispositivo, inicie a função de Comissário:

commissioner start
Done

Use o curinga * para permitir que qualquer Joiner com a Credencial de Joiner especificada seja comissionado na rede. A credencial do Joiner é usada (junto com o Extended PAN ID e o nome da rede) para gerar a chave pré-compartilhada para o dispositivo (PSKd). O PSKd é então usado para autenticar um dispositivo durante o Thread Commissioning. A Credencial do Joiner deve ser exclusiva para cada dispositivo.

commissioner joiner add * J01NME
Done

Restringir a um Joiner específico

Para restringir o comissionamento a um dispositivo Joiner específico, use o parâmetro eui64 , que é o IEEE EUI-64 atribuído de fábrica ao dispositivo.

No dispositivo que serve como Joiner, obtenha o EUI-64:

eui64
2f57d222545271f1
Done

Use esse valor em vez do caractere curinga * no comando commissioner joiner no dispositivo do comissário:

commissioner joiner add 2f57d222545271f1 J01NME
Done

Iniciar a função de Marceneiro

No dispositivo que serve como Joiner, execute uma redefinição de fábrica e ative a função Joiner com a mesma Credencial de Joiner especificada no Commissioner:

factoryreset
ifconfig up
Done
joiner start J01NME
Done

Aguarde alguns segundos para confirmação:

Join success!

O dispositivo Joiner autenticou-se com sucesso com o Comissário e recebeu as credenciais da Thread Network.

Agora inicie o Thread no dispositivo Joiner:

thread start
Done

Validar autenticação

Verifique o estado no dispositivo Joiner, para validar que ele se juntou à rede. Em dois minutos, o estado muda de filho para roteador:

state
child
Done
...
state
router
Done