Compiler OpenThread

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Afficher la source sur GitHub

Créer OpenThread

La procédure de création d'OpenThread varie en fonction de la chaîne d'outils, de la machine utilisateur et de la plate-forme cible.

Voici le workflow le plus courant:

  1. Configurez l'environnement de compilation et installez la chaîne d'outils souhaitée :
    1. Pour créer directement des applications sur une machine, consultez l'atelier de programmation sur la simulation pour obtenir des instructions détaillées.
    2. Pour utiliser un conteneur Docker avec un environnement préconfiguré,téléchargez et exécutez l'image OpenThread environment :
      docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash
      
  2. Dans l'environnement de votre choix, clonez le dépôt Git OpenThread spécifique à la plate-forme. Prenons l'exemple de CC2538 :
    git clone https://github.com/openthread/ot-cc2538.git --recursive
    
  3. À partir du répertoire racine cloné :
    1. Installez la chaîne d'outils :
      ./script/bootstrap
      
    2. Créez la configuration :
      ./script/build platform-specific-args cmake-options
      
  4. Flashez le binaire souhaité sur la plate-forme cible. Tous les binaires générés se trouvent dans ./build/bin.

Configuration

Vous pouvez configurer OpenThread pour différentes fonctionnalités et comportements pendant le processus de compilation. Les options de configuration disponibles sont détaillées aux emplacements suivants:

Type Emplacement
Constantes de compilation Référencé dans tous les fichiers d'en-tête de /src/core/config
Options de compilation cmake Référencé dans openthread/examples/README.md

Exemples de compilation

Utilisez les options de compilation cmake pour activer les fonctionnalités de la plate-forme. Par exemple, pour créer le binaire de la plate-forme CC2538 avec l'assistance du Commissioner et de Joiner activée:

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

Vous pouvez également créer la plate-forme nRF52840 en activant la fonctionnalité Jam Detection dans son dépôt:

./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON

Binaires

Les binaires suivants sont générés dans ./build/bin à partir du processus de compilation. Pour déterminer les binaires générés, utilisez les options avec la commande ./script/build. Par exemple, pour créer OpenThread et ne générer que le binaire de la 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
Binaire Description Options
ot-cli-ftd Modèle Thread complet pour les SoC -DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd Appareil Thread minimal pour la conception sur SoC -DOT_APP_CLI=ON
-DOT_MTD=ON
ot-ncp-ftd Appareil à thread complet pour les conceptions de co-processeur de réseau (NCP) -DOT_APP_NCP=ON
-DOT_FTD=ON
ot-ncp-mtd Appareil Thread minimal pour les conceptions NCP -DOT_APP_NCP=ON
-DOT_MTD=ON
ot-rcp Conception de co-processeurs radio (RCP) -DOT_APP_RCP=ON
-DOT_RCP=ON

Par défaut, tous les indicateurs ci-dessus sont activés. Si vous désactivez explicitement toutes les options, les applications ne sont pas créées, mais les fichiers de bibliothèque OpenThread sont toujours générés dans ./build/lib pour être utilisés dans un projet.

Consultez le répertoire examples/platforms pour identifier les options compatibles avec chaque plate-forme. Pour en savoir plus sur les FTD et les MTD, consultez la page Thread Primer. Pour en savoir plus sur les conceptions SoC et NCP, consultez la page Plates-formes.

La procédure de flashage des binaires varie selon les exemples de plates-formes. Pour obtenir des instructions détaillées, consultez les fichiers README dans l'exemple de dossier de chaque plate-forme.

Daemon OpenThread

Le daemon OpenThread (OT Daemon) est un mode de compilation POSIX OpenThread qui exécute OpenThread en tant que service et est utilisé avec la conception RCP. Pour en savoir plus sur sa création et son utilisation, consultez le daemon OpenThread.

Créer des formules d'assistance

Les formules d'assistance pour la compilation sont disponibles dans /third_party. Les BSP sont des codes tiers supplémentaires utilisés par OpenThread sur chaque plate-forme. Ils sont généralement inclus lors du portage d'OpenThread vers une nouvelle plate-forme matérielle.