docs/en/api-reference/bluetooth/esp-ble-mesh.rst
.. note::
The current ESP-BLE-MESH v1.1 related code is a preview version, so the Mesh Protocol v1.1 related Structures, MACROs, and APIs involved in the code may be changed.
With various features of ESP-BLE-MESH, users can create a managed flooding mesh network for several scenarios, such as lighting, sensor and etc.
For an ESP32 to join and work on a ESP-BLE-MESH network, it must be provisioned firstly. By provisioning, the ESP32, as an unprovisioned device, will join the ESP-BLE-MESH network and become a ESP-BLE-MESH node, communicating with other nodes within or beyond the radio range.
Apart from ESP-BLE-MESH nodes, inside ESP-BLE-MESH network, there is also ESP32 that works as ESP-BLE-MESH provisioner, which could provision unprovisioned devices into ESP-BLE-MESH nodes and configure the nodes with various features.
For information how to start using ESP32 and ESP-BLE-MESH, please see the Section :ref:getting-started-with-ble-mesh. If you are interested in information on ESP-BLE-MESH architecture, including some details of software implementation, please see Section :doc:../../api-guides/esp-ble-mesh/ble-mesh-architecture.
Please refer to Sections :ref:esp-ble-mesh-examples and :ref:esp-ble-mesh-demo-videos.
ESP-BLE-MESH APIs are divided into the following parts:
ESP-BLE-MESH Definitions_ESP-BLE-MESH Core API Reference_ESP-BLE-MESH Models API Reference_ESP-BLE-MESH (v1.1) Core API Reference_This section contains only one header file, which lists the following items of ESP-BLE-MESH.
.. include-build-file:: inc/esp_ble_mesh_defs.inc
This section contains ESP-BLE-MESH Core related APIs, which can be used to initialize ESP-BLE-MESH stack, provision, send/publish messages, etc.
This API reference covers six components:
ESP-BLE-MESH Stack Initialization_Reading of Local Data Information_Low Power Operation (Updating)_Send/Publish Messages, add Local AppKey, etc._ESP-BLE-MESH Node/Provisioner Provisioning_ESP-BLE-MESH GATT Proxy Server_ESP-BLE-MESH Stack Initialization ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_common_api.inc
Reading of Local Data Information ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_local_data_operation_api.inc
Coexist with BLE
.. include-build-file:: inc/esp_ble_mesh_ble_api.inc
Low Power Operation (Updating) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_low_power_api.inc
Send/Publish Messages, Add Local AppKey, Etc. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_networking_api.inc
ESP-BLE-MESH Node/Provisioner Provisioning ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_provisioning_api.inc
ESP-BLE-MESH GATT Proxy Server ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_proxy_api.inc
This section contains ESP-BLE-MESH Model related APIs, event types, event parameters, etc.
There are six categories of models:
Configuration Client/Server Models_Health Client/Server Models_Generic Client/Server Models_Sensor Client/Server Models_Time and Scenes Client/Server Models_Lighting Client/Server Models_.. note::
Definitions related to Server Models are being updated, and will be released soon.
Configuration Client/Server Models ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_config_model_api.inc
Health Client/Server Models ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_health_model_api.inc
Generic Client/Server Models ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_generic_model_api.inc
Sensor Client/Server Models ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_sensor_model_api.inc
Time and Scenes Client/Server Models ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_time_scene_model_api.inc
Lighting Client/Server Models ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_lighting_model_api.inc
.. note::
This section is a preview version, so the related structures, macros, and APIs may be changed.
This section contains ESP-BLE-MESH v1.1 Core related APIs, event types, event parameters, etc.
This API reference covers 10 components:
Remote Provisioning_Directed Forwarding_Subnet Bridge Configuration_Mesh Private Beacon_On-Demand Private Proxy_SAR Configuration_Solicitation PDU RPL Configuration_Opcodes Aggregator_Large Composition Data_Composition and Metadata_Remote Provisioning ^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_rpr_model_api.inc
Directed Forwarding ^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_df_model_api.inc
Subnet Bridge Configuration ^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_brc_model_api.inc
Mesh Private Beacon ^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_prb_model_api.inc
On-Demand Private Proxy ^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_odp_model_api.inc
SAR Configuration ^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_sar_model_api.inc
Solicitation PDU RPL Configuration ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_srpl_model_api.inc
Opcodes Aggregator ^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_agg_model_api.inc
Large Composition Data ^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_lcd_model_api.inc
Composition and Metadata ^^^^^^^^^^^^^^^^^^^^^^^^
.. include-build-file:: inc/esp_ble_mesh_cm_data_api.inc
Device Firmware Update
.. include-build-file:: inc/esp_ble_mesh_dfu_model_api.inc
Device Firmware Slots
.. include-build-file:: inc/esp_ble_mesh_dfu_slot_api.inc