Criar OpenThread

Veja o código-fonte no GitHub

Como criar o OpenThread

As etapas para criar o OpenThread variam de acordo com o conjunto de ferramentas, a máquina do usuário e a plataforma de destino.

O fluxo de trabalho mais comum é:

  1. Configure o ambiente de build e instale o conjunto de ferramentas desejado:
    1. Para criar diretamente em uma máquina, consulte o Codelab de simulação e veja instruções detalhadas.
    2. Para usar um contêiner do Docker com um ambiente pré-configurado, faça o download e execute a imagem environment do OpenThread:
      docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash
      
  2. No ambiente escolhido, clone o repositório do Git do OpenThread específico da plataforma. Veja o CC2538 como exemplo:
    git clone https://github.com/openthread/ot-cc2538.git --recursive
    
  3. No diretório raiz do repositório clonado:
    1. Instale o conjunto de ferramentas:
      ./script/bootstrap
      
    2. Crie a configuração:
      ./script/build platform-specific-args cmake-options
      
  4. Atualize o binário desejado na plataforma de destino. Todos os binários gerados estão localizados em ./build/bin.

Configuração

Você pode configurar o OpenThread para diferentes funcionalidades e comportamentos durante o processo de compilação. As opções de configuração disponíveis estão detalhadas nestes locais:

Tipo Local
Constantes de tempo de compilação Listado em todos os arquivos principais em /src/core/config
Opções de build do CMake Listado em openthread/examples/README.md

Exemplos de build

Use as opções de build do CMake para ativar a funcionalidade para a plataforma. Por exemplo, para criar o binário da plataforma CC2538 com suporte ao Commissioner e Joiner ativado:

./script/build -DOT_COMMISSIONER=ON -DOT_JOINER=ON

Ou, para criar a plataforma nRF52840 com o recurso de detecção de Jam ativado no repositório:

./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON

Binários

Os binários a seguir são gerados em ./build/bin com base no processo de compilação. Para determinar quais binários são gerados, use sinalizações com o comando ./script/build. Por exemplo, para criar o OpenThread e gerar apenas o binário da CLI FTD:

./script/build -DOT_APP_CLI=ON -DOT_FTD=ON -DOT_MTD=OFF -DOT_APP_NCP=OFF -DOT_APP_RCP=OFF -DOT_RCP=OFF
Binário Descrição Opções
ot-cli-ftd Dispositivo Thread completo para designs SoC -DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd Dispositivo Thread mínimo para designs SoC -DOT_APP_CLI=ON
-DOT_MTD=ON
ot-ncp-ftd Dispositivo com linha de execução completa para designs de coprocessador de rede (NCP, na sigla em inglês) -DOT_APP_NCP=ON
-DOT_FTD=ON
ot-ncp-mtd Dispositivo Thread mínimo para designs de NCP -DOT_APP_NCP=ON
-DOT_MTD=ON
ot-rcp Design de processador de rádio (RCP) -DOT_APP_RCP=ON
-DOT_RCP=ON

Por padrão, todas as sinalizações acima estão ativadas. Se você desativar explicitamente todas as sinalizações, os aplicativos não vão ser criados, mas os arquivos da biblioteca do OpenThread ainda serão gerados em ./build/lib para uso em um projeto.

Verifique o diretório examples/platforms para ver quais sinalizações são aceitas por plataforma. Para mais informações sobre FTDs e MTDs, consulte o Thread Primer. Para saber mais sobre os designs de SoC e NCP, consulte Plataformas.

O processo para atualizar esses binários varia de acordo com as plataformas de exemplo. Consulte os READMEs na pasta de exemplo de cada plataforma para ver instruções detalhadas.

Daemon do OpenThread

O OpenThread Daemon (OT Daemon) é um modo de compilação OpenThread POSIX que executa o OpenThread como um serviço e é usado com o design RCP. Para mais informações sobre como criar e usar, consulte OpenThread Daemon.

Criar pacotes de suporte

Os pacotes de suporte de compilação (BSPs) são encontrados em /third_party. Os BSPs são códigos extras de terceiros usados pelo OpenThread em cada plataforma, geralmente incluídos ao fazer a portabilidade do OpenThread para uma nova plataforma de hardware.