Crea OpenThread

Visualizza l'origine su GitHub

Come creare OpenThread

I passaggi per creare OpenThread variano in base alla catena degli strumenti, alla macchina utente e alla piattaforma di destinazione.

Il flusso di lavoro più comune è:

  1. Configura l'ambiente di compilazione e installa la catena di strumenti desiderata:
    1. Per creare direttamente su una macchina, consulta il codelab sulla simulazione per istruzioni dettagliate.
    2. Per usare un container Docker con un ambiente preconfigurato, scarica ed esegui l'immagine OpenThread environment:
      docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash
      
  2. All'interno dell'ambiente scelto, clona il repository Git OpenThread specifico per la piattaforma. Prendendo come esempio CC2538:
    git clone https://github.com/openthread/ot-cc2538.git --recursive
    
  3. Dalla directory principale del repository clonato:
    1. Installa la catena di strumenti:
      ./script/bootstrap
      
    2. Crea la configurazione:
      ./script/build platform-specific-args cmake-options
      
  4. Esegui il flashing del programma binario alla piattaforma di destinazione. Tutti i programmi binari generati si trovano nella località ./build/bin.

Configurazione

Puoi configurare OpenThread per diverse funzionalità e comportamenti durante il processo di compilazione. Le opzioni di configurazione disponibili sono dettagliate nelle seguenti posizioni:

Tipo Località
Costanti di tempo di compilazione Elencato in tutti i file di intestazione in /src/core/config
opzioni build cmake Elencata in openthread/examples/README.md

Esempi di build

Utilizza le opzioni di build cmake per abilitare le funzionalità per la piattaforma. Ad esempio, per creare un programma binario per la piattaforma CC2538 in cui sono abilitati il supporto di Commissioner e Joiner:

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

In alternativa, per creare la piattaforma nRF52840 con la funzionalità di rilevamento di Jam abilitata nel suo repository:

./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON

Programmi binari

I seguenti programmi binari vengono generati in ./build/bin dal processo di compilazione. Per determinare quali programmi binari vengono generati, utilizza i flag con il comando ./script/build. Ad esempio, per creare OpenThread e generare solo il programma binario dell'interfaccia a riga di comando FTD:

./script/build -DOT_APP_CLI=ON -DOT_FTD=ON -DOT_MTD=OFF -DOT_APP_NCP=OFF -DOT_APP_RCP=OFF -DOT_RCP=OFF
Programma binario Descrizione Opzioni
ot-cli-ftd Dispositivo full Thread per progetti SoC -DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd Dispositivo Thread minimo per SoC -DOT_APP_CLI=ON
-DOT_MTD=ON
ot-ncp-ftd Dispositivo full Thread per i progetti NCP (Network Co-Processor) -DOT_APP_NCP=ON
-DOT_FTD=ON
ot-ncp-mtd Dispositivo Thread minimo per i progetti NCP -DOT_APP_NCP=ON
-DOT_MTD=ON
ot-rcp Progettazione di un coprocessore radiofonico (RCP) -DOT_APP_RCP=ON
-DOT_RCP=ON

Per impostazione predefinita, sono attivati tutti i flag sopra indicati. Se disabiliti esplicitamente tutti i flag, le applicazioni non vengono create, ma i file della libreria OpenThread vengono comunque generati in ./build/lib per l'utilizzo in un progetto.

Controlla la directory examples/platforms per vedere quali flag sono supportati da ogni piattaforma. Per maggiori informazioni su FTD e MTD, consulta la pagina Thread Primer. Per ulteriori informazioni sui progetti SoC e NCP, consulta Piattaforme.

Il processo per eseguire il flashing di questi programmi binari varia in base alle piattaforme di esempio. Consulta i README nella cartella di esempio di ogni piattaforma per istruzioni dettagliate.

Daemon OpenThread

OpenThread Daemon (OT Daemon) è una modalità di compilazione OpenThread POSIX che esegue OpenThread come servizio e viene utilizzata con la progettazione RCP. Per scoprire di più su come crearlo e utilizzarlo, consulta la pagina relativa a Daemon OpenThread.

Crea pacchetti di assistenza

I Pacchetti di assistenza (BSP) per la creazione si trovano in /third_party. I BSP sono codice di terze parti aggiuntivo utilizzato da OpenThread su ogni piattaforma, generalmente incluso quando trasferisci OpenThread su una nuova piattaforma hardware.