Modèles de co-processeurs

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

Les co-processeurs sont compatibles avec OpenThread. Lorsque vous créez des exemples OpenThread, une image de micrologiciel pour chaque conception de coprocesseur est créée automatiquement. Pour en savoir plus, consultez la section Binaries.

Coprocesseur (RCP)

Architecture OT RCP

Dans une conception RCP, le cœur d'OpenThread réside sur le processeur hôte avec seulement une couche MAC minimale et un contrôleur sur l'appareil équipé de la radio Thread. Le processeur hôte ne dort généralement pas dans cette conception, en partie pour garantir la fiabilité du réseau Thread.

La communication entre le RCP et le processeur hôte est gérée par OpenThread Daemon via une interface SPI sur le protocole Spinnaker.

L'avantage est qu'OpenThread peut utiliser les ressources du processeur plus puissant.

Cette conception est utile pour les appareils moins sensibles aux contraintes d'alimentation. Par exemple, l'outil de traitement hôte est toujours activé pour une vidéo.

Le routeur de bordure OpenThread est compatible avec une conception RCP. Pour plus d'informations, consultez la page Routeur de bordure OpenThread.

Pour créer un système RCP, reportez-vous aux ateliers de programmation suivants:

Créer un réseau Thread avec un routeur de bordure nRF52840

Coprocesseur (NCP) du réseau

Architecture OTN NCP

La conception NCP standard dispose de fonctionnalités Thread sur le SoC et exécute la couche d'application sur un processeur hôte, qui est généralement plus capable (mais nécessite plus de puissance) que l'appareil OpenThread.

La communication entre le NCP et le processeur hôte est gérée par wpantund via une interface série, généralement à l'aide de SPI ou d'UART, via le protocole Spinel.

L'avantage de cette conception est que l'hôte à haute puissance peut dormir tandis que l'appareil OpenThread de faible puissance reste actif pour conserver sa place dans le réseau Thread. De plus, comme le SoC n'est pas lié à la couche d'application, le développement et le test des applications sont indépendants de la version OpenThread.

Cette conception est utile pour les passerelles et les appareils ayant d'autres exigences en termes de traitement, comme les caméras IP et les haut-parleurs.

Protocole Spinel

Spinel est un protocole de gestion général permettant à un appareil hôte de communiquer avec un coprocesseur et de le gérer. Initialement conçu pour accepter les NCP basés sur des threads, Spinel a été conçu avec une approche multicouche qui permet de l'adapter facilement à d'autres technologies réseau à l'avenir. Il est utilisé avec les conceptions RCP et NCP.

Ce protocole est inclus avec OpenThread sur /src/lib/spinel. Un outil CLI Python appelé Pyspinel est disponible à des fins de test.

Pour en savoir plus, consultez la section Internet-Project for the Spinel Host-Controller Protocol (Brouillon de l'Internet pour le protocole hôte-contrôleur Spinel).