Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

プラットフォーム

Google がリリースした OpenThread は、OpenThread チーム、シリコン ベンダー、コミュニティによって、複数のデバイスとプラットフォームに移植されています。すべての移植プラットフォームのビルド例は、OpenThread リポジトリに含まれています。

ベンダーがサポートするすべてのプラットフォームとコミュニティ ポートの検索可能なリストについては、検索ベンダーをご覧ください。

サポート

各プラットフォームのサポートは時間とともに変わります。一部のプラットフォームには、OpenThread チームによって特定された現在のサポートレベルがタグ付けされます。タグ付けされていないプラットフォームは最近テストされておらず、「制限付きのサポート」の対象と見なされる場合があります。

サポートレベルDescription
サポート対象 フルサポートと基本サポート、および OpenThread を使用するスレッド認定コンポーネント。これらのプラットフォームの多くは OpenThread チームがテストおよび使用しており、デモと Codelab で使用することをおすすめします。
限定的なサポート これらのプラットフォームは完全にテストされておらず、一部の重要な機能が欠落している可能性があります。
サポート対象外 現時点ではサポートされていないため、OpenThread の実行で問題が発生する可能性があります。自己責任で使用してください。

システム アーキテクチャ

OT システム アーキテクチャ

OpenThread は、ポータビリティと柔軟性を念頭に置いて設計されています。コードは移植性に優れた C/C++(C99 と C++11)で、細かな抽象化レイヤにより、システム アーキテクチャに依存しません。この抽象化レイヤは、OpenThread がベアメタルか OS のどちらでも実行できることを意味します。これまで OpenThread は、FreeRTOS、RIOT-OS、Zephyr OS、Linux、macOS 上で稼働することが実証されてきました。

OpenThread のポータビリティは、プラットフォームの機能を前提としません。OpenThread は、高度な無線および暗号機能を使用するためのフックを提供し、メモリ、コード、計算サイクルなどのシステム要件を低減します。これは、プラットフォームごとに行うことができますが、デフォルトの構成のままにすることもできます。

OpenThread には、デベロッパーが必要に応じて機能を有効または無効にする構成可能なビルドシステムがあります。ソースは、デフォルトの GNU ツールチェーン以外にも、IAR や Visual Studio など、他の多くの一般的なツールチェーンと連携するように設計されています。

プラットフォームの設計

OpenThread は、システム オン チップ(SoC)設計とネットワーク コプロセッサ(NCP)設計の両方をサポートしています。

SoC は、RFIC(Thread の場合は 802.15.4)とプロセッサを組み合わせたシングル チップ ソリューションで、OpenThread とアプリケーション レイヤはローカル プロセッサで実行されます。

NCP 設計では、アプリケーション レイヤがホスト プロセッサ上で実行され、標準化されたホスト コントローラ プロトコルを使用して Spinel と呼ばれる OpenThread と通信します。この設計では、OpenThread はラジオ プロセッサまたはホスト プロセッサで動作します。

シングルチップ、スレッドのみ(SoC)

OT 向け SoC アーキテクチャ

この設計では、アプリケーション レイヤと OpenThread は同じプロセッサ上で動作します。このアプリケーションは、OpenThread API と IPv6 スタックを直接使用します。

これは、エンドデバイスで最も一般的な SoC 設計です。1 つのシリコンに高度に統合されているため、コストと消費電力が最も低くなります。

シングルチップ、マルチインターフェース(SoC)

OT 複数 SoC アーキテクチャ

SoC に 802.15.4 と Wi-Fi などの無線通信、または 802.15.4 と Bluetooth Low Energy(BLE)などがあっても、アプリレイヤと OpenThread は同じプロセッサ上で動作します。マルチ インターフェース設計では、OpenThread は未加工の IPv6 データグラム インターフェースを介して共有のサードパーティ IPv6 スタックを利用します。

コプロセッサの設計

OpenThread は、無線コプロセッサ(RCP)とネットワーク コプロセッサ(NCP)の設計をサポートします。詳細については、コプロセッサの設計をご覧ください。

未解決のプラットフォームに関する問題

現在、OpenThread プラットフォームで次の問題がオープンしています。