Bluetooth: Mesh


This sample demonstrates Bluetooth Mesh functionality. It has several standard Mesh models, and supports provisioning over both the Advertising and the GATT Provisioning Bearers (i.e. PB-ADV and PB-GATT). The application also needs a functioning serial console, since that’s used for the Out-of-Band provisioning procedure.


  • A board with Bluetooth LE support, or
  • QEMU with BlueZ running on the host

Building and Running

This sample can be found under samples/bluetooth/mesh in the Zephyr tree.

See bluetooth samples section for details on how to run the sample inside QEMU.

For other boards, build and flash the application as follows:

# On Linux/macOS
cd $ZEPHYR_BASE/samples/bluetooth/mesh
mkdir build && cd build
# On Windows
cd %ZEPHYR_BASE%\samples\bluetooth\mesh
mkdir build & cd build
cmake -GNinja -DBOARD=<board> ..
ninja flash

Refer to your board’s documentation for alternative flash instructions if your board doesn’t support the flash target.