Créer un thread

Afficher la source sur GitHub

Créer un objet OpenThread

Les étapes de création d'OpenThread varient en fonction de la chaîne d'outils, de la machine utilisateur et de la plate-forme cible.

Le workflow le plus courant est:

  1. Configurez l'environnement de compilation et installez la chaîne d'outils souhaitée :
    1. Pour créer directement sur une machine,consultez l'atelier de programmation de 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 choisi, 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 du dépôt 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 sont situés dans ./build/bin.

Configuration

Vous pouvez configurer OpenThread pour une fonctionnalité et un comportement différents lors du processus de compilation. Les options de configuration disponibles sont détaillées aux emplacements suivants:

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

Exemples de compilation

Utilisez les options de création cmake pour activer les fonctionnalités de la plate-forme. Par exemple, pour créer le binaire de la plate-forme CC2538 avec le commissaire et la prise en charge de jointure activés:

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

Ou, pour créer la plate-forme nRF52840 avec la fonctionnalité Jam Detection activée 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 quels binaires sont générés, utilisez des indicateurs avec la commande ./script/build. Par exemple, pour créer OpenThread et ne générer que le binaire FTD CLI:

./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 Appareil à thread complet pour les conceptions SoC -DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd Appareil Thread minimal pour les conceptions SoC -DOT_APP_CLI=ON
-DOT_MTD=ON
ot-ncp-ftd Appareil à thread complet pour les conceptions de co-processeurs réseau -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 en 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 la bibliothèque OpenThread sont toujours générés dans ./build/lib pour être utilisés dans un projet.

Consultez l'exemple de fichiers makefile pour chaque plate-forme afin d'identifier les options compatibles avec chaque plate-forme. Pour obtenir plus d'informations sur les FTD et les MTD, consultez la section Thread Primer. Pour en savoir plus sur les conceptions SoC et NCP, consultez la section Plates-formes.

Le processus de mise en mémoire flash de ces binaires varie selon les plates-formes. Pour obtenir des instructions détaillées, consultez les fichiers README dans le dossier d'exemple de chaque plate-forme.

Daemon OpenThread

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

Créer des formules d'assistance

Les formules de support de compilation (BSP) sont disponibles dans /third_party. Les BSP sont du code tiers supplémentaire utilisé par OpenThread sur chaque plate-forme, généralement inclus lors du portage d'OpenThread vers une nouvelle plate-forme matérielle.