1# ESP-BLE-MESH Examples
2
3[ESP-BLE-MESH](../../../components/bt/esp_ble_mesh/) is the official Bluetooth® Mesh stack of Espressif Systems. We will provide long-term support for new features, performance optimization, etc.
4
5Please help note that breaking changes may be introduced into ESP-BLE-MESH on [minor IDF versions](https://docs.espressif.com/projects/esp-idf/en/latest/versions.html).
6
7Note: To use examples in this directory, you need to have Bluetooth enabled in configuration, and either Bluedroid or NimBLE can be selected as the host stack.
8
9# Example Layout
10
11This directory includes examples to demonstrate ESP-BLE-MESH functionality based on [Zephyr Bluetooth Mesh stack](https://github.com/zephyrproject-rtos/zephyr/tree/master/subsys/bluetooth/mesh).
12
13## ble_mesh_console
14
15This example demonstrates how ESP-BLE-MESH uses Console for message transmitting/receiving tests.
16
17## ble_mesh_fast_provision
18
19This example illustrates the solution of ESP-BLE-MESH Fast Provisioning.
20
21#### fast_prov_client
22
23This example shows how ESP32, acting as a BLE Mesh Fast Provisioning Client, provisions other unprovisioned devices and then controls the nodes.
24
25See [fast_prov_client](ble_mesh_fast_provision/fast_prov_client) folder for more details.
26
27#### fast_prov_server
28
29This example illustrates the process that:
301. ESP32 as a BLE Mesh Fast Provisioning Server is provisioned into a node;
312. ESP32 as a Temporary Provisioner provisions other unprovisioned devices.
32
33See [fast_prov_server](ble_mesh_fast_provision/fast_prov_server) folder for more details.
34
35## ble_mesh_node
36
37This example demonstrates how ESP32 acts as a BLE Mesh node with Generic OnOff Server model or Generic OnOff Client model on board.
38
39#### onoff_client
40
41This example shows how ESP32 acts as a BLE Mesh Node with Generic OnOff Client model in the Primary Element.
42
43See [onoff_client](ble_mesh_node/onoff_client) folder for more details.
44
45#### onoff_server
46
47This example shows how ESP32 acts as a BLE Mesh Node with only Generic OnOff Server model in the Primary Element.
48
49See [onoff_server](ble_mesh_node/onoff_server) folder for more details.
50
51## ble_mesh_provisioner
52
53This example shows how ESP32 acts as a BLE Mesh Provisioner and provisions other unprovisioned devices.
54
55See [ble_mesh_provisioner](ble_mesh_provisioner) folder for more details.
56
57## ble_mesh_vendor_model
58
59This example demonstrates how ESP32 acts as a BLE Mesh Provisioner with vendor client model or as a BLE Mesh node with vendor server model.
60
61#### vendor_client
62
63This example shows how ESP32 acts as a BLE Mesh Provisioner with a vendor client model in the Primary Element.
64
65See [vendor_client](ble_mesh_vendor_model/vendor_client) folder for more details.
66
67#### vendor_server
68
69This example shows how ESP32 acts as a BLE Mesh Node with a vendor server model in the Primary Element.
70
71See [vendor_server](ble_mesh_vendor_model/vendor_server) folder for more details.
72
73## ble_mesh_wifi_coexist
74
75This example shows how ESP32 acts as a BLE Mesh Fast Provisioning Server and coexists with Wi-Fi iperf functionality.
76
77See [ble_mesh_wifi_coexist](ble_mesh_wifi_coexist) folder for more details.
78
79# More
80
81See the [README.md](../../README.md) file in the upper level [examples](../../) directory for more information about examples.
82
83