nRF5 SDK for Thread and Zigbee v1.0.0
nRF Thread Topology Monitor

nRF Thread Topology Monitor is a desktop application that helps to visualize the current network topology. The application requires a serial connection to an nRF52840 Development Kit with Nordic’s Thread solution.

Supported devices:

Supported operating systems:

Installation

In Windows, it is required to install nRF Command Line Tools, which include the SEGGER J-Link software. See nRF5x Command Line Tools. In Linux, it is required to install the SEGGER J-Link software. If you do not have it installed already, download and install the software from J-Link Download page or from your distrubution package manager.

Follow these steps to install nRF Thread Topology Monitor:

  1. Navigate to nRF5 SDK for Thread web page and download the following package: nRF_TTM-win32-x64_v0.11.0-1.alpha (for Windows) or nRF_TTM-linux-x64_v0.11.0-1.alpha.tar.gz (for Linux).
  2. Extract the package suitable for the operating system that you are using.
  3. Run the nRF Thread Topology Monitor executable file to start the application.

After starting nRF Thread Topology Monitor, you will see the main window of the application. It consists of the following elements:

ttm_application_window.png
Main application window

Viewing network topology

nRF Thread Topology Monitor requires a serial port connection to a local nRF52840 Development Kit. The nRF SoC on the development kit is controlled by nRF Thread Topology Monitor which sends OpenThread CLI commands to it over serial port. Therefore, it must be programmed using the OpenThread CLI example.

Note that nRF Thread Topology Monitor filters serial ports to show only those with J-Link support. Therefore, only nRF52840 Development Kits that are communicated over J-Link UART can be used with the application.

Follow these steps to set up a local device:

  1. Connect a development kit to the computer via USB.
  2. Use nrfjprog (from nRF5x Command Line Tools v9.2.0 or newer) to flash the nRF SoC with the OpenThread CLI example:
    nrfjprog -f NRF52 --program <InstallFolder>/examples/thread/cli/uart/hex/thread_cli_pca10056.hex --chiperase
    nrfjprog -f NRF52 -r
  1. In the navigation bar, click Select serial port.
  2. Select the serial port with the device that you want to use.
    Note
    When the serial port is selected, the Select serial port menu shows the name of the selected port.
  3. Click Start scan to attach the nRF SoC to the Thread network and to start polling nodes to get information on the current topology. nRF Thread Topology Monitor will start to communicate with a node using OpenThread serial CLI. After a couple of seconds, topology of the Thread network will appear in the central area of the application.

If the nRF SoC is the first Thread device in the network, it will become a Leader, as shown in the figure below.

ttm_leader.png
First Thread Leader being connected

After other Thread devices have been attached to the network, nRF Thread Topology Monitor will visualize them as shown in the figure below.

Note
  • Click a Thread device to show its parameters.
  • Use the mouse scroll to zoom in and zoom out of the network topology.
ttm_nodes.png
Visualization of other Thread nodes in the network

Configuration

The panel to the right of the main application window contains a Configuration section. Because nRF SoC acts as an OpenThread CLI device, you must configure the basic Operational Dataset. During this configuration, you can specify the following parameters of the Thread Network:

Interacting with nodes

nRF Thread Topology Monitor allows to select a specific node in a Thread network and perform operations on it:

ttm_device_parameters.png
Device parameters

Principle of operation

The background process of nRF Thread Topology Monitor communicates with nRF SoC using OpenThread CLI, sending commands described in OpenThread CLI Reference.

The application first attaches the nRF SoC to the network and then periodically retrieves the current list of routers. Each router is polled by sending the standard Thread diagnostic messages (MGMT_DIAG.req). In response, routers in the network send their current link set (current connected neighbors), child table, and basic network parameters, such as Network Address or Extended MAC Address.

Troubleshooting


Documentation feedback | Developer Zone | Subscribe | Updated