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 スタートガイドに沿って、uSD カードに OS イメージをインストールします。
- BeagleBone を起動し、デバイスに SSH 接続します。
- ローカル イーサネット ベースのネットワーク経由で接続することをおすすめします。
- cloud9 IDE はこのガイドの後半で無効にします。
- このガイドでは、BeagleBone ネットワーク インターフェースの状態を変更するため、Secure Shell セッションが切断される可能性があることに注意します。
- 最新の BeagleBone ブートローダーは、デフォルトでは uSD カードから実行されますが、一部の BeagleBone Black デバイスは、内部 eMMC から起動しようとすることがあります。この場合は、必ずブートボタンを押してください。
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
再起動して、ネットワーク マネージャーが正しく設定されていることを確認します。
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 リンク設定スクリプトは、デフォルトで connman を使用して Wi-Fi AP アクティビティを有効にします。sudo
vim /etc/default/bb-wl18xx
コマンドを使用してデフォルトの構成フォルダを編集し、変数が以下のとおり一致していることを確認します。
TETHER_ENABLED=no USE_CONNMAN_TETHER=no
ネットワーク マネージャーを再起動して、新しいインターフェースを認識できることを確認します。
sudo shutdown -r now
再度ログインしたら、ifconfig
または nmcli
を実行して、新しい wlan
インターフェースを表示できます。
Network Manager を使用するには、次のステップで NETWORK_MANAGER=1
オプションと NETWORK_MANAGER_WIFI=1
オプションを設定スクリプトに渡すことを忘れないでください。
OTBR のビルドとインストール
OTBR のビルドとインストールの手順については、ビルドと構成をご覧ください。