Google 致力于为黑人社区推动种族平等。查看具体行动

验证端口

在 GitHub 上查看源代码

若要验证 OpenThread 是否成功连接到新的硬件平台示例,需要进行基本验证。

针对目标平台进行编译

通过为目标平台编译示例 OpenThread 应用来演示成功的构建。

./script/build efr32mg12 -DBOARD=brd4161a

与 CLI 交互

通过与 CLI 进行交互来演示 OpenThread 的成功执行和 UART 功能。

打开一个连接到 /dev/ttyACM0 的终端(串行端口设置:115200 8-N-1)。输入 help 可查看命令列表。

help
help
autostart
bufferinfo
...
version
whitelist

构建线程网络

通过构建线程网络并验证节点已转换为主要服务器状态来演示成功的协议计时器。

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

请稍等几秒钟...

state
leader
Done

挂接第二个节点

使用与第一个节点相同的线程网络密钥和 PAN ID,将第二个节点连接到新建立的线程网络,以证明电台通信成功:

dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Done
dataset panid 0x8f28
Done
dataset commit active
Done
routerselectionjitter 1
Done
ifconfig up
Done
thread start
Done

请稍等几秒钟...

state
router
Done

在设备之间执行 ping 操作

通过发送/接收 ICMPv6 Echo 请求/响应消息,演示数据路径的成功通信。

列出领导者的所有 IPv6 地址:

ipaddr
fdde:ad00:beef:0:0:ff:fe00:fc00
fdde:ad00:beef:0:0:ff:fe00:800
fdde:ad00:beef:0:5b:3bcd:deff:7786
fe80:0:0:0:6447:6e10:cf7:ee29
Done

将 ICMPv6 ping 从路由器发送到领导者的 Mesh-Local EID IPv6 地址:

ping fdde:ad00:beef:0:5b:3bcd:deff:7786
16 bytes from fdde:ad00:beef:0:5b:3bcd:deff:7786: icmp_seq=1 hlim=64 time=24ms

重置设备并验证重新连接

重置设备并验证重新连接到同一网络,而无需用户干预,从而展示非易失性功能。

启动线程网络:

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

等待几秒钟,并验证活动数据集是否已存储在非易失性存储空间中:

dataset active
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done

重置设备:

reset
ifconfig up
Done
thread start
Done

等待几秒钟,并验证设备是否已成功重新连接到网络:

panid
0x8f28
Done
state
router
Done

验证随机数生成

通过执行 factoryreset 命令并验证新的随机扩展地址来演示随机数生成过程。

extaddr
a660421703f3fdc3
Done
factoryreset

请稍等几秒钟...

extaddr
9a8ed90715a5f7b6
Done