Thread/openThread 树莓派4+nrf52840 dongle构建BoardRouter边界路由

参考:

https://openthread.io/guides/border-router

https://openthread.io/codelabs/openthread-border-router

OTBR安装

步骤

1.编译生成ot-rcp.hex

$ git clone --recursive https://github.com/openthread/ot-nrf528xx.git
$ cd ot-nrf528xx
$ script/build nrf52840 USB_trans
$ cd /ot-nrf528xx/build/bin
$ arm-none-eabi-objcopy -O ihex ot-rcp ot-rcp.hex

2.将ot-rcp.hex烧录到nrf52840-dongle

3.将nrf52840-dongle通过usb连接树莓派4B,并查看ttyACM端口

$ ls /dev/ttyACM*

4.编译安装OTBR服务

$ git clone https://github.com/openthread/ot-br-posix.git --depth 1
$ cd ot-br-posix
#安装服务依赖
$ ./script/bootstrap
#INFRA_IF_NAME二选一
#如果raspberryPi通过 wifi 联网
$ INFRA_IF_NAME=wlan0 ./script/setup
#如果raspberryPi通过 Ethernet(网线)联网
$ INFRA_IF_NAME=eth0 ./script/setup
#如果为ubuntu。总之查看ip addr,将INFRA_IF_NAME改为对应设备名
INFRA_IF_NAME=enp2s0 ./script/setup

5.配置OTBR服务。

在执行第4步时,默认已经在/etc/default/otbr-agent末尾添加OTBR_AGENT_OPTS="-I wpan0 -B XXX spinel+hdlc+uart:///dev/ttyACMx trel://XXX"

$ cat /etc/default/otbr-agent

XXX应为第4步INFRA_IF_NAME(wlan0或eth0),将ttyACMx应为第3步nrf52840-dongle对应的端口

如果不对应,则修改至对应。

#清空原有设置
$ sudo sed -i 4d /etc/default/otbr-agent
#ttyACM0替换为nrf52840对应的ttyACM端口 trel://eth0替换为trel://wlan0或trel://eth0
$ sudo echo 'OTBR_AGENT_OPTS="-I wpan0 -B eth0 spinel+hdlc+uart:///dev/ttyACM0 trel://eth0"' > /etc/default/otbr-agent

6.重启设备并检查OTBR服务是否正常运行

$ sudo reboot
$ sudo systemctl status
#检查是否包含以下service
avahi-daemon.service
otbr-agent.service
otbr-web.service

在浏览器访问树莓派本地IPv4 地址,查看web GUI。
web GUI

7.创建Thread网络

$ sudo ot-ctl dataset init new
Done
$ sudo ot-ctl dataset commit active
Done
$ sudo ot-ctl ifconfig up
Done
$ sudo ot-ctl thread start
Done
$ sudo ot-ctl state
leader
Done
$ sudo ot-ctl netdata show
Prefixes:
fdf6:8b86:7b15:af34::/64 paos med 0800
Routes:
2001:da8:c000:2021::/64 s med 0800
Services:
44970 5d fd58f9f8765c29bbcb58ab25c4ce22fdd11f s 0800
44970 01 4a04b000000e10 s 0800
Done
$ sudo ot-ctl ipaddr
fd58:f9f8:765c:29bb:0:ff:fe00:fc11
fd58:f9f8:765c:29bb:0:ff:fe00:fc38
fdf6:8b86:7b15:af34:a674:cad7:a010:71f8
fd58:f9f8:765c:29bb:0:ff:fe00:fc10
fd58:f9f8:765c:29bb:0:ff:fe00:fc00
fd58:f9f8:765c:29bb:0:ff:fe00:800
fd58:f9f8:765c:29bb:cb58:ab25:c4ce:22fd
fe80:0:0:0:6499:5c27:c170:171d
Done

在netdata中可以查看到off-mesh-routable (OMR) 前缀fdf6:8b86:7b15:af34::/6

fdf6:8b86:7b15:af34:a674:cad7:a010:71f8即以该前缀开始,可以通过Wi-Fi/Ethernet访问到

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值