
La mise en service nécessite un appareil doté du rôle "Commissaire" et un appareil avec le rôle "Joiner". Le commissaire est un appareil Thread dans un réseau Thread existant, ou un appareil externe au réseau Thread (par exemple, un téléphone mobile) qui joue le rôle de Commissaire. L'outil Joiner est l'appareil qui souhaite rejoindre le réseau Thread.
Un commissaire à fils de discussion permet d'authentifier un appareil sur le réseau. Il ne transfère ni n'est propriétaire des identifiants réseau Thread, tels que la clé réseau.
Ce guide traite de la mise en service basique de réseau maillé, sans commissaire externe ou routeur frontalier. Pour savoir comment utiliser un Commissaire externe, consultez la page Commissions dans le thread externe.
Pour voir un exemple de mise en service à l'aide d'appareils virtuels, consultez l'atelier de programmation sur la simulation OpenThread.
Activer les rôles
Pour activer les rôles "Commissaire" et "Joiner", utilisez les options cmake suivantes:
Option | Description |
---|---|
-DOT_COMMISSIONER=ON |
Active le rôle de commissaire |
-DOT_JOINER=ON |
Active le rôle Joiner |
Par exemple, pour créer la plate-forme exemple CC2538 en tant que jointure uniquement:
./script/build -DOT_JOINER=ON
Flashez chaque binaire sur l'appareil souhaité. L'un a le rôle de commissaire, l'autre en tant que joigneur.
Vous trouverez des instructions spécifiques sur la création et le flash des plates-formes compatibles dans le dépôt OpenThread de chaque plate-forme. Pour trouver le dépôt, consultez l'organisation GitHub OpenThread.
Créer un réseau
Créez un réseau sur l'appareil agissant en tant que commissaire:
dataset init new
Donedataset
Active Timestamp: 1 Channel: 13 Channel Mask: 07fff800 Ext PAN ID: d63e8e3e495ebbc3 Mesh Local Prefix: fd3d:b50b:f96d:722d/64 Network Key: dfd34f0f05cad978ec4e32b0413038ff Network Name: OpenThread-8f28 PAN ID: 0x8f28 PSKc: c23a76e98f1a6483639b1ac1271e2e27 Security Policy: 0, onrcb Donedataset commit active
Doneifconfig up
Donethread start
Done
Patientez quelques secondes, puis vérifiez que l'appareil est devenu un leader de fil de discussion:
state
leader
Done
Démarrer le rôle du commissaire
Sur cet appareil, démarrez le rôle de commissaire:
commissioner start
Done
Utilisez le caractère générique * pour autoriser n'importe quel Joiner avec les identifiants de jointure spécifiés à s'ajouter au réseau. L'identifiant de jointure sert à générer la clé pré-partagée pour l'appareil (PSKd, ainsi que l'ID PAN étendu et le nom du réseau). La clé prépartagée est ensuite utilisée pour authentifier un appareil lors de la mise en service Thread. Les identifiants de jointure doivent être propres à chaque appareil.
commissioner joiner add * J01NME
Done
Limiter à une jointure spécifique
Pour limiter la mise en service à un appareil Joiner spécifique, utilisez le paramètre eui64
, qui correspond à l'IEEE EUI-64 attribuée par l'appareil.
Sur l'appareil servant de jointure, obtenez l'EUI-64:
eui64
2f57d222545271f1
Done
Utilisez cette valeur au lieu du caractère générique * dans la commande commissioner joiner
de l'appareil du commissaire:
commissioner joiner add 2f57d222545271f1 J01NME
Done
Créer le rôle Joiner
Sur l'appareil servant de jointure, effectuez un rétablissement de la configuration d'usine, puis activez le rôle Joiner avec les mêmes identifiants de jointure spécifiés sur le commissaire:
factoryreset
ifconfig up
Donejoiner start J01NME
Done
Attendez quelques secondes de confirmation:
Join success!
L'appareil Joiner s'est authentifié auprès du commissaire et a reçu les identifiants réseau Thread.
Lancez maintenant Thread sur l'appareil Joiner:
thread start
Done
Valider l'authentification
Vérifiez l'état de l'appareil Joiner pour vous assurer qu'il a bien rejoint le réseau. L'état passe de l'enfant au routeur en deux minutes:
state
child Done ...state
router Done