海狸黑色

查看 GitHub 上的源代码

OpenThread 边界路由器 (OTBR) 支持 BeagleBone Black (BBB) 平台。

硬件要求:

  • 用于供电的外部 5V AC 适配器
  • 容量不小于 8GB 的 microSD 卡(本指南中称为“uSD 卡”)
  • 支持在 RCP 设计中使用 Thread 网络连接的 OpenThread 平台(例如 TI CC2652

启用步骤:

  1. 下载并安装操作系统。
  2. 为 OTBR 准备 Debian 环境
  3. (可选)启用 Wi-Fi
  4. 构建和安装 OTBR

下载并安装操作系统

  1. 下载适用于 BeagleBone 的最新 Debian IoT 映像
    • 本指南使用的版本为 bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz
  2. 按照 BeagleBone 入门指南在 uSD 卡上安装操作系统映像。
  3. 启动 BeagleBone 并通过 SSH 连接到设备。
    • 建议通过本地以太网连接。
    • 在本指南的后面部分,我们将停用 cloud9 IDE。
    • 本指南将更改 BeagleBone 网络接口的状态,请注意您的安全 shell 会话可能会断开连接。
    • 新型 BeagleBone 引导加载程序默认会从 uSD 卡运行,但某些 BeagleBone Black 设备可能会尝试从内部 eMMC 启动。在这种情况下,请务必按下 BOOT 按钮。

如需详细了解 BeagleBone,请参阅 BeagleBoard 支持页面

为 OTBR 准备 Debian 环境

uSD BeagleBone 映像的文件系统限制为 4GB,以适合大多数 uSD 卡。展开分区以使用整个存储容量。

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

如果我们在这里直接 stop connman,则会中断 SSH 会话,因为网络接口由 connman 管理。而是将系统配置为在下次启动时生效。现在,重启 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

由于存在固定冲突,因此 BeagleBone 默认无法识别 BBONE-GATEWAY-CAPE。使用命令 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

请重新启动,以确保网络管理器可以看到新界面。

sudo shutdown -r now

重新登录后,您可以运行 ifconfignmcli 来查看新的 wlan 界面。

请务必在下一步中将 NETWORK_MANAGER=1NETWORK_MANAGER_WIFI=1 选项传递给设置脚本,才能使用 Network Manager。

构建和安装 OTBR

如需了解如何构建和安装 OTBR,请参阅构建和配置