Piattaforme

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

La funzionalità OpenThread rilasciata da Google è stata trasferita su diversi dispositivi e piattaforme dal team di OpenThread, dai fornitori di chip di silicio e dalla community. Gli esempi di build per tutte le piattaforme trasferite sono inclusi nel repository OpenThread.

Consulta l'articolo Cercare fornitori per un elenco disponibile per la ricerca di tutte le piattaforme supportate dai fornitori e delle porte della community.

Assistenza

Il supporto per ogni piattaforma varia nel tempo. Alcune piattaforme sono contrassegnate con il livello di assistenza attuale identificato dal team di OpenThread. Le piattaforme non codificate non sono state testate di recente e potrebbero essere considerate come "Supporto Limitato".

Livello di assistenzaDescrizione
Supportato Assistenza completa e di base, nonché qualsiasi componente certificato Thread che utilizza OpenThread. Molte di queste piattaforme sono state testate e utilizzate dal team di OpenThread e sono consigliate per l'uso nelle nostre demo e nei codelab.
Assistenza limitata Queste piattaforme non sono state completamente testate e potrebbero non contenere alcune funzionalità chiave.
Non supportato Attualmente non supportato e potrebbe presentare problemi con l'esecuzione di OpenThread. Scegli questo approccio a tuo rischio e pericolo.

Architettura di sistema

Architettura di sistema OT

OpenThread è progettato per la portabilità e la flessibilità. Il codice è portatile C/C++ (C99 e C++11) che è indipendente dall'architettura del sistema a causa di un livello di astrazione ristretto. Questo livello di astrazione significa che OpenThread può essere eseguito su bare-metal o su un sistema operativo. A oggi, è stato dimostrato che OpenThread è in esecuzione su FreeRTOS, RIOT-OS, Zephyr OS, Linux e macOS.

La natura portabile di OpenThread non presuppone ipotesi sulle funzioni della piattaforma. OpenThread fornisce i hook per utilizzare funzionalità radio e di crittografia avanzate, riducendo i requisiti di sistema, ad esempio memoria, codice e cicli di calcolo. È possibile farlo per ogni piattaforma, mantenendo la possibilità di impostare una configurazione standard come predefinita.

OpenThread dispone di un sistema di compilazione configurabile con cui uno sviluppatore può attivare o disattivare le funzionalità in base alle esigenze. Oltre alla catena di strumenti GNU predefinita, la sorgente è progettata per funzionare con una serie di altre catene di strumenti note, come IAR e Visual Studio.

Progettazione di piattaforme

OpenThread supporta i progetti SoC (System-on-Chip) e di coprocessore di rete.

Un SoC è una soluzione a chip singolo che ha la combinazione di RFIC (802.15.4 nel caso di Thread) e processore, in cui OpenThread e il livello dell'applicazione vengono eseguiti sul processore locale.

In una progettazione NCP, il livello dell'applicazione viene eseguito su un processore host e comunica con OpenThread tramite una connessione seriale utilizzando un protocollo standard host-controller chiamato Spinel. In questo progetto, OpenThread può essere eseguito sul processore radio o host.

Chip singolo, solo thread (SoC)

Architettura SoC OT

In questo progetto, il livello dell'applicazione e OpenThread vengono eseguiti sullo stesso processore. L'applicazione utilizza direttamente le API OpenThread e lo stack IPv6.

Si tratta del design SoC più comunemente utilizzato per i dispositivi finali. Essendo altamente integrato in un singolo silicio, ha il costo più basso e il consumo energetico più basso.

Chip singolo, interfaccia multipla (SoC)

Architettura SoC multipla OT

Quando un SoC ha più radio, ad esempio 802.15.4 e Wi-Fi o 802.15.4 e Bluetooth Low Energy (BLE), il livello dell'applicazione e OpenThread continuano a essere eseguiti sullo stesso processore. Nel design di più interfacce, OpenThread utilizza lo stack IPv6 di terze parti condiviso tramite un'interfaccia datagram IPv6 non elaborata.

Progetti per co-processori

OpenThread supporta i progetti Radio Co-Processor (RCP) e Network Co-Processor (NCP). Per ulteriori informazioni, consulta Co-processors Designs.

Problemi con piattaforme aperte

Al momento, sono aperti i seguenti problemi per le piattaforme OpenThread: