请求提供Nordic nrf52840 DK上运行OpenThread的基础教程
入门nRF52840上的OpenThread:从0到1的最简路径
一、先搞定基础准备
- 确认你的nRF52840开发板型号(比如nRF52840 DK),nRF52840原生支持802.15.4,无需额外硬件
- 安装必备工具:
nRF Command Line Tools(用于烧录固件)、CMake+Ninja(编译OpenThread源码)、Python3(辅助脚本运行) - 克隆OpenThread官方仓库到本地,直接用
main分支的稳定版本即可,不用纠结复杂分支
二、最简上手:编译并运行基础Thread节点
编译独立模式CLI固件
打开终端,进入OpenThread仓库根目录,执行以下命令:cd examples/thread/cli/nrf52840 cmake -B build -GNinja -DBOARD=nrf52840dk ninja -C build编译完成后,
build/bin目录会生成ot-cli-factory.hex(带出厂配置)和ot-cli-app.hex两个固件烧录固件到开发板
用USB连接nRF52840 DK到电脑,执行烧录命令:nrfjprog --program build/bin/ot-cli-factory.hex --chiperase -f nrf52 nrfjprog --reset -f nrf52验证基础组网功能
用串口工具(比如minicom、PuTTY)连接开发板串口(波特率115200,8N1),输入命令验证:state输出
disabled表示节点就绪,接着输入启动组网命令:dataset init new dataset commit active ifconfig up thread start等待3-5秒后输入
state,如果输出leader或router,说明节点已成功组建Thread网络
三、搞明白Coprocessor到底是什么
- Coprocessor(协处理器)模式下,nRF52840只负责处理Thread协议栈的底层逻辑,主控制器(比如另一个MCU、树莓派)通过UART/SPI发送AT指令来控制网络
- 你之前接触的echo示例如果是基于coprocessor的,主控制器负责生成echo请求/响应,nRF52840只做数据的网络转发
- 入门阶段完全不用碰协处理器,先把独立模式的节点跑通,再考虑这种分工架构
四、简化echo示例的运行思路
如果想跑echo示例,先从独立模式版本入手:
- 编译烧录echo server:进入
examples/apps/echo/server/nrf52840,用相同的CMake命令编译,烧录到一块nRF52840 - 编译烧录echo client:进入
examples/apps/echo/client/nrf52840,编译后烧录到另一块nRF52840(或同一板卡重新烧录) - 两个节点都启动Thread网络后,在client的串口输入:
server的IPv6地址可以通过在server串口输入echo server <server节点的IPv6地址>ipaddr获取,收到响应就说明echo功能正常运行
五、基础配置核心要点
- Dataset:Thread网络的核心配置(PAN ID、网络密钥、信道等),
dataset init new生成默认配置,dataset active查看当前生效配置 - ifconfig:控制网络接口开关,
ifconfig up开启接口,ifconfig down关闭 - thread start:启动Thread协议栈,节点开始参与组网
内容的提问来源于stack exchange,提问作者Thomas Stefan
相关产品推荐
相关产品推荐

