OpenThread Border Router(OTBR)は現在、Radio Co-processor(RCP)と Network Co-Processor(NCP)の両方の設計をサポートしています。OTBR にはどちらのデザインも選択できます。
この手順が完了すると、選択した設計で Full Thread Device(FTD)として機能する OTBR が作成されます。
必要なもの
- Thread ボーダー ルーター用の Raspberry Pi。
- 2 個の Nordic Semiconductor nRF52840 USB ドングル(1 個は Co-Processor 用、1 個は Thread エンドデバイス用)。
nRF52840 USB ドングルのファームウェアをビルドする場合は、フラグ -DOT_BOOTLOADER=USB を使用する必要があります。このフラグは、プリインストールされたブートローダーの正しいメモリマップを構成し、USB DFU トリガーを有効にするために、RCP と NCP の両方の設計で必要です。フラグがない場合、コンパイルされたファームウェアをドングルに読み込むことはできません。
コプロセッサ ファームウェアをビルドして書き込む
選択したデザインに応じて、手順に沿って操作します。
RCP の設計
RCP 設計では、OTBR は IEEE 802.15.4 無線に依存して Thread メッセージを送受信します。
nRF52840 ボードと OpenThread で Thread ネットワークを構築する Codelab のステップ 4 に沿って、nRF52840 RCP デバイスをビルドしてフラッシュします。
NCP の設計
NCP 設計では、完全な Thread スタックが 802.15.4 無線チップで実行されます。
次の手順に沿って、前の手順でクローンを作成した ot-nrf528xx リポジトリから NCP ファームウェアをビルドします。
script/build nrf52840 USB_trans \
-DOT_THREAD_VERSION=1.3 \
-DOT_APP_CLI=OFF \
-DOT_APP_RCP=OFF \
-DOT_RCP=OFF \
-DOT_MTD=OFF \
-DOT_BORDER_ROUTER=ON \
-DOT_BORDER_ROUTING=ON \
-DOT_NCP_INFRA_IF=ON \
-DOT_SRP_SERVER=ON \
-DOT_SRP_ADV_PROXY=ON \
-DOT_PLATFORM_DNSSD=ON \
-DOT_NCP_DNSSD=ON \
-DOT_ECDSA=ON \
-DOT_SERVICE=ON \
-DOT_BACKBONE_ROUTER=ON \
-DOT_BACKBONE_ROUTER_MULTICAST_ROUTING=ON \
-DOT_NCP_CLI_STREAM=ON次に、RCP 設計と同じ手順で、ファームウェアを 16 進形式に変換してフラッシュします。
Raspberry Pi を準備する
RPi に Raspberry Pi OS をインストールします。パソコン版と Lite 版のどちらでも動作します。
インストールが完了したら、RPi を起動してターミナル ウィンドウを開き、システムを更新します。
sudo apt-get updatesudo apt-get upgrade
コプロセッサを取り付ける
コプロセッサ デバイスを Raspberry Pi に取り付けます。
/devを確認して、コプロセッサ デバイスのシリアルポート名を特定します。ls /dev/tty*/dev/ttyACMO
Raspberry Pi に OTBR をインストールする
Docker を使用して OTBR をインストールするには、OTBR Docker インストール ガイドに沿って操作します。
Linux ホストに OTBR をネイティブにインストールするには、OTBR ネイティブ インストール ガイドに沿って操作します。