.. | |||
CMakeLists.txt | Loading last commit info... | ||
Makefile.am | |||
README.md | |||
cli_uart.cpp | |||
ftd.cmake | |||
main.c | |||
mtd.cmake |
OpenThread CLI Example
This example application exposes OpenThread configuration and management APIs via a simple command-line interface. The steps below take you through the minimal steps required to ping one emulated Thread device from another emulated Thread device.
1. Build
$ cd <path-to-openthread>
$ ./bootstrap
$ make -f examples/Makefile-simulation
2. Start node 1
Spawn the process:
$ cd <path-to-openthread>/output/<platform>/bin
$ ./ot-cli-ftd 1
Generate, view, and commit a new Active Operational Dataset:
> dataset init new
Done
> dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 0x07fff800
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
Bring up the IPv6 interface:
> ifconfig up
Done
Start Thread protocol operation:
> thread start
Done
Wait a few seconds and verify that the device has become a Thread Leader:
> state
leader
Done
View IPv6 addresses assigned to Node 1's Thread interface:
> ipaddr
fd3d:b50b:f96d:722d:0:ff:fe00:fc00
fd3d:b50b:f96d:722d:0:ff:fe00:c00
fd3d:b50b:f96d:722d:7a73:bff6:9093:9117
fe80:0:0:0:6c41:9001:f3d6:4148
Done
2. Start node 2
Spawn the process:
$ cd <path-to-openthread>/output/<platform>/bin
$ ./ot-cli-ftd 2
Configure Thread Network Key from Node 1's Active Operational Dataset:
> dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Done
> dataset commit active
Done
Bring up the IPv6 interface:
> ifconfig up
Done
Start Thread protocol operation:
> thread start
Done
Wait a few seconds and verify that the device has become a Thread Child or Router:
> state
child
Done
3. Ping Node 1 from Node 2
> ping fd3d:b50b:f96d:722d:7a73:bff6:9093:9117
16 bytes from fd3d:b50b:f96d:722d:558:f56b:d688:799: icmp_seq=1 hlim=64 time=24ms
4. Explore More
See the OpenThread CLI Reference README.md to explore more.