This blog post is now deprecated. Please see the updated PC software for nRF OpenMesh.
With the official Bluetooth Mesh nearing release, and Nordic's proprietary nRF Open Mesh, developers need solid tools to develop their mesh-enabled projects. Most of our customers rely on nRF Connect mobile and desktop tools (previously Master Control Panel) to develop their BLE applications. A similar tool is necessary for BLE mesh applications. This is what nRF Connect Mesh (an extension of nRF Connect) offers.
One of Bluetooth's biggest constraints is range. Meshing can increase the range in scenarios where there are many devices (i.e. smart lighting for buildings). Nordic provides the nRF Open Mesh framework to make developing mesh applications very easy on nRF5 series devices, and will soon be releasing an implementation of the official Bluetooth Mesh. This tool will support product development using either of those mesh implementations.
To control the mesh, this tool connects to a Gateway device (nRF5 slave device that is controlled by nRF Connect Mesh via serial interface). You can connect to the Gateway device and control the mesh with no limitations or restrictions. The Gateway device is just like the other nodes on your mesh except it is controlled via serial UART, and does as commanded by nRF Connect Mesh as well as interacting with the other nodes on the mesh, serving as a bridge. nRF Connect Mesh can work with any gateway firmware that has the serial interface enabled, but we provide the official gateway firmware.
Download nRF Connect Mesh Windows. Note: We have OS X and Linux versions and will release these betas early next week. Unzip the folder after the download completes and double click
nrf-connect-mesh.exe. nRF Connect Mesh will open. Plug a few nRF51 development kits or dongles into your PC, program them from nRF Connect Mesh with the official gateway firmware, and follow along with the sections below!
When developing Mesh applications you are working with a lot of devices. You need to be able to easily and efficiently program & run many devices at once. You also need to be able to easily display debug information generated by these devices.
See this blog post for more information on how multi programming and RTT logging are implemented in nRF Connect Mesh.
Imagine you are seeing some strange behavior in your mesh application. To figure out what is going on, you add
SEGGER_RTT_WriteString(CHANNEL_0, "RBC_MESH_EVENT_TYPE_TX\n"); to your code and recompile. You easily program your devices from nRF Connect Mesh and start the RTT logger. But it would suck if you had to provision/initialize every single node to the mesh one at a time. nRF Connect Mesh solves problems like these with Multiple device commands.
Commands like init and reset can be done on many devices at once through nRF Connect.
Upgrading the firmware of all nodes in the mesh is an important feature of nRF Open Mesh. nRF Connect Mesh makes this very easy to test and verify as you are developing. Code signed DFU is built into nRF Open Mesh, and all nodes on the mesh can be upgraded at once while the application is running concurrently with the DFU OTA process running in the background.
Note: We haven't implemented a good progress bar for DFU in nRF Connect Mesh yet. It usually takes around 15 minutes to complete the entire DFU process, and you will have to see the progress by looking at the RTT logs, or just waiting for
You can set/get handles and their values, enable disable flags/tx events and much more via the
Mesh gateway node. Note: click on the small highlighted green box in the logging window to switch between nRF Connect Mesh and RTT logging.
We are very early in the development of this tool so that means we expect there to be some bugs in this release. However, we want your feedback so we can deliver the best tool possible. nRF Connect will be released on GitHub soon, and when that happens this code will be released as well. This tool is built on top of the Node.js platform and React/Redux frameworks and runs on Electron.