OpenThread Border Router(OTBR)は、BeagleBone Black(BBB)プラットフォームをサポートしています。
ハードウェア要件:
- 電源用の外部 5 V AC アダプター
- 8 GB 以上の microSD カード(このガイドでは「uSD カード」)
- RCP 設計での Thread ネットワーク接続用にサポートされている OpenThread プラットフォーム(TI CC2652 など)
有効にする手順:
- OS をダウンロードしてインストールします。
- OTBR 用の Debian 環境の準備
- (省略可)Wi-Fi を有効にする
- OTBR のビルドとインストール
OS をダウンロードしてインストールする
- BeagleBone 用の最新の Debian IoT イメージをダウンロードします。
- このガイドで使用したバージョンは
bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz
です。
- このガイドで使用したバージョンは
- BeagleBone スタートガイドに沿って、OS イメージを uSD カードにインストールします。
- BeagleBone を起動し、デバイスに SSH で接続します。
- ローカルのイーサネット ベースのネットワーク経由での接続をおすすめします。
- cloud9 IDE は、このガイドの後半で無効にします。
- このガイドでは、BeagleBone ネットワーク インターフェースの状態を変更します。セキュア シェル セッションが切断される可能性があることに注意してください。
- 最新の BeagleBone ブートローダはデフォルトで uSD カードから実行されますが、一部の BeagleBone Black デバイスは内部 eMMC から起動しようとする場合があります。この場合、必ず BOOT ボタンを押してください。
BeagleBone の詳細については、BeagleBoard サポートページをご覧ください。
OTBR 用に Debian 環境を準備する
uSD BeagleBone イメージのファイルシステムは、ほとんどの uSD カードに収まるように 4 GB に制限されています。パーティションを拡張して、ストレージ容量全体を使用できるようにします。
sudo /opt/scripts/tools/grow_partition.sh
ファイル システムの拡張方法を確認するには、そのヘルパー スクリプトをご覧ください。この新しいファイル システム定義を使用するには、BeagleBone を再起動して再ログインする必要があります。
sudo shutdown -r now
これにより、SSH セッションが終了します。ログインし直したら、OTBR コードの作成に進みます。
(省略可)Wi-Fi を有効にする
BeagleBone に再度ログインしたら、Network Manager をインストールします。
sudo apt-get update
sudo apt-get install network-manager
次に、connman
を無効にして network-manager
を有効にします。
sudo systemctl disable connman
sudo systemctl enable network-manager
ここで connman を直接 stop
すると、ネットワーク インターフェースが connman によって管理されているため、SSH セッションが中断されます。代わりに、次回の起動時に有効になるようにシステムを構成します。Beaglebone を再起動して、再度ログインします。
sudo shutdown -r now
ネットワーク マネージャーに DNS ネームサーバーが設定されていない可能性があります。sudo vim /etc/resolv.conf
コマンドを使用して resolv.conf
を編集し、内容に Google DNS と Cloudflare DNS が含まれていることを確認します。
nameserver 8.8.8.8 nameserver 1.1.1.1
再起動して、Network Manager が正しく設定されていることを確認します。
sudo shutdown -r now
WiLink 8 モジュールは、実行時に MAC アドレスを変更することを好みません。ネットワーク マネージャーは、スキャン時にこの操作を試みます。sudo vim
/etc/NetworkManager/NetworkManager.conf
コマンドを使用して NetworkManager.conf
を編集し、次の行を追加します。
[device] wifi.scan-rand-mac-address=no
ピンの競合により、BBONE-GATEWAY-CAPE
はデフォルトで BeagleBone で認識されません。sudo vim /boot/uEnv.txt
コマンドを使用して uEnv.txt
を編集し、構成を手動で追加します。次の行が一致していることを確認します。
#Custom Cape dtb_overlay=/lib/firmware/BB-GATEWAY-WL1837-00A0.dtbo # #Disable auto loading of virtual capes (emmc/video/wireless/adc) disable_uboot_overlay_emmc=1 disable_uboot_overlay_video=1 disable_uboot_overlay_audio=1 disable_uboot_overlay_wireless=1 disable_uboot_overlay_adc=1
BeagleBone wilink 設定スクリプトは、デフォルトで connman を使用して Wi-Fi AP アクティビティを有効にしようとします。sudo
vim /etc/default/bb-wl18xx
コマンドを使用してデフォルトの構成フォルダを編集し、変数が次のように一致していることを確認します。
TETHER_ENABLED=no USE_CONNMAN_TETHER=no
再起動して、Network Manager が新しいインターフェースを認識していることを確認します。
sudo shutdown -r now
再びログインしたら、ifconfig
または nmcli
を実行して新しい wlan
インターフェースを表示します。
ネットワーク マネージャーを使用するには、次の手順でセットアップ スクリプトにオプション NETWORK_MANAGER=1
と NETWORK_MANAGER_WIFI=1
を渡してください。
OTBR のビルドとインストール
OTBR のビルドとインストールの手順については、ビルドと構成をご覧ください。