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

Criar OpenThread

Veja o código 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 é o seguinte:

  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 da imagem environment do OpenThread e execute-a:
      docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash
      
  2. Dentro do ambiente escolhido, clone o repositório Git OpenThread específico da plataforma. Veja o exemplo do CC2538:
    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 nos seguintes locais:

Tipo Local
Constantes de tempo de compilação Listado em todos os arquivos principais em /src/core/config
Opções de criação 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 o suporte à Comissão e Combinador ativados:

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

Ou, para criar a plataforma nRF52840 com o recurso Jam Detection 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 a partir do 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 com linha de execução completa para designs SoC -DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd Dispositivo com 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 de linha de execução mínimo para designs de NCP -DOT_APP_NCP=ON
-DOT_MTD=ON
ot-rcp Projeto de coprocessador 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 serão criados, mas os arquivos da biblioteca OpenThread ainda serão gerados em ./build/lib para uso em um projeto.

Veja o exemplo de Makefiles de cada plataforma para ver quais sinalizações são compatíveis com cada plataforma. Para ver mais informações sobre FTDs e MTDs, consulte o Thread Primer. Para saber mais sobre os designs SoC e NCP, consulte Plataformas.

O processo de atualização desses binários varia entre 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 criação do 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, na sigla em inglês) estão disponíveis em /third_party. Os BSPs são códigos de terceiros adicionais usados pelo OpenThread em cada plataforma respectivo, geralmente incluídos ao fazer a portabilidade do OpenThread para uma nova plataforma de hardware.