Background#

Provisioning is a process of adding an unprovisioned device to a mesh network managed by a Provisioner. A Provisioner provides the unprovisioned device with provisioning data that allows it to become a mesh node for the initial term. The provisioning data includes a network key, the current IV Index, and the unicast address for each element.

A Provisioner is typically a smart phone or other mobile computing device, but could be also a gateway or even one of the network devices. Although only a single Provisioner is required on a network to do provisioning, multiple Provisioners may be used. The method to share cached data and coordinate across multiple Provisioners is implementation-specific.

To provision an unprovisioned device, the provisioning bearer (PB) must be established between a Provisioner and an unprovisioned device. An unprovisioned device can be identified to a Provisioner by its Device UUID and other supplementary information that may also be provided, such as some manufacturer-related information.

The PB-ADV bearer allows provisioning of an unprovisioned device by using an advertising bearer.

The PB-GATT bearer allows provisioning of an unprovisioned device by using the Mesh Provisioning Service in the GATT. For more details, refer to the Bluetooth Mesh Profile specification (1.1 draft) Chapter 5 Provisioning, the first two pages.

This application note assumes that you are familiar with using Simplicity Studio to create, configure, build, and flash projects to devices. If you are not, see the Quick Start Guide. For more information about the Bluetooth mesh software components, see the Bluetooth® Mesh Stack and Bluetooth® Mesh Configurator User's Guide for SDK v5.0 and Higher.