doc: update ble mesh docs based on the feature and example update
This commit is contained in:
parent
c0597aaf69
commit
e0b6ad0d1a
12 changed files with 116 additions and 73 deletions
BIN
docs/_static/esp-ble-mesh-architecture.png
vendored
BIN
docs/_static/esp-ble-mesh-architecture.png
vendored
Binary file not shown.
Before Width: | Height: | Size: 111 KiB After Width: | Height: | Size: 109 KiB |
2
docs/_static/esp-ble-mesh-architecture.xml
vendored
2
docs/_static/esp-ble-mesh-architecture.xml
vendored
|
@ -1 +1 @@
|
||||||
<mxfile modified="2019-09-22T00:58:06.366Z" host="www.draw.io" agent="Mozilla/5.0 (X11; Linux x86_64; rv:69.0) Gecko/20100101 Firefox/69.0" etag="zTkUVhOzP7skpqIPIslP" version="11.3.0" type="device" pages="1"><diagram id="3T7Fh-tElfW0GhIRTNz5" name="Page-1">5Vtbc6M2FP41fkwHJBDw6EucpJu4nthJZ/vSwSBsdjGiAl/SX1+BhS9I2bAdyck63pkNPhK37zs6Ojd3YH+5vaF+tnggIU46wAi3HTjoAGAayGZ/SsnLTuK4zk4wp3HIJx0Ek/hfXJ/Jpas4xPnJxIKQpIizU2FA0hQHxYnMp5RsTqdFJDm9a+bPsSCYBH4iSv+Mw2Kxk7q2cZDf4ni+qO9sGXxk6deTuSBf+CHZHIngdQf2KSHF7mi57eOkBK/GZXfe8JXR/YNRnBZtTliZsXs9+D15QPco+Tq9f/5r8fcVv8raT1b8hR9wvmCSismcP3nxUsNBySoNcXlFswN7m0Vc4EnmB+XohikAky2KZcKHI5IWnFH2bLC3xrSIGbTdJJ6nTFiQ8gTxPeqHYtPx9kjE3+sGkyUu6AubUo/WGHMlg5B/3xwoAy6XLY7o2pPjczWZ7699QJIdcDDlwI5GkfuYQ9LrdqNk++2P2/4ouYKOgKxaMH0OYsBgw7ScECdJnySEHQ9SkuJyDg34KZB9I+zacVFCZBmKcDdOcTcluDtIgrtn68JdVOhuliVM64qYpIr1+RjxDoChj90oYPK8oOQ7PhpBgYtnkR5d36vwMeZAgrmlC3IgQj6+65SPMGT/X6/Ld9WJe2SX/6S4Vx9+hSP57qOJD8f6zX5nRqzXrPoIFxtCv8fp/Be17DZqadmh7WkC1xbAHZbQVQam3jjZ33v/hZllnXqPzdDGjkzvPeRAHyliwDplwHKgyIAlYQBZmghAonZ/JMz1rYUGE9AxJJZGyoWrazGIXk43CHCefxQyNMCOjJag16GPctBdAfSnLCuxNqbUT/OM0OKS8XfNtmqPdKm9JzBwTzafhgEHtd0CdK2AOjtwRAB3bS4Ydtdqbe+Rqwt4Mb4aYr9YUfyr5AosIJgTAVNThimA2kAVI6ghjXEaalXiKIpAIA1XQzRDtiIltmDDdtR++THcsuAI6LLdJpQZbyYY70y4IshN98NAbqJ2kEOgC3IxIH3Eif9yifrtue+t32KAOqZkWz7zBNP1Raq4W6db31RxbXlHMRI6eCQPfurP8VJ5IkzIAZ9t14RAYsZluya0TF2Ii2HQAfE+xTwho1LXf5hzr5Qfo1eU3/FmhqKse1P5bUf0CqXKb2lzx8V46Asun/gRR7TKPH4CFmBLFrTtskAMiu6e2fenLPQL/Bk4sLy224AuowTE+Kji4I5Bva0WREDY+6nzfD4yG5asEnJeywTE0GpEQlwxsSRM+hmIgK7XmghdMS4Qoy5ek2LO6TrO2V6tvCp1PvfIdt92j4CsEG572qqyrxYBe5i9KosCdCTKzgd5szLoQTHKlVZdHV2BFxADr25YvX9eqfYeeK2AN5sSbOyGlsziuGAGkapUZcPieI6YVIP2OeMxIFYJb7rT6UWzYHktWJAGadpYEKPiHjsqCClKS7TLu12nmM7L1+gTWu7MkwwHccRbds7L03DosY+MJ8OwnWp/brSSGNVHj0kzDfDenSRADLJP92tjPHhSnPp/i6SZGYaRISPJNBzoYUVbemMxQUeypcsWk6fLl4VibNEBKGG37YXxmh3Oy8MbzJZTHNQj7E5Hg5L5p3S2PWnwVEtntDmvefbl64blSbJhdR52cdIerKspps4q/Fg5eCL451m+fE6dmq86n2PIqq3nZlWMmsa9q+7g+RIZaK4qhCSlFBn+nq5sDnzDo798Dhy3JQdmXVZVT4Loyavaxsp6WMz4+cRbWdPsnZdwg9xNlzC5xWP49Sm4iQa3WSHpJ+8nse4m8tdbeno2Q3ugyMO3G46DIUlYG5ocfCnY4gajuEj8P8EO/Xyxv5sC5IEjIC/b3s+KvZihqwv1ihX+5wr1A9TbFepVcyBU7Z22jSm6GJC0SvSudnmiyzf1Z/Wv1rP19204vHXWyy9X34zZfTj9R9I9/ogT7OcMZ2DwvkK1i0ABjKihxaYFZG2ZpkSPgYLqihRIMUszXO3AMziiugBVbSMEdF1p0+tZ0RW7G0bPEyaYFISWPx9WCujHLCEiIN0uFfU3sK+H30FXY0e/JofX/wE=</diagram></mxfile>
|
<mxfile modified="2019-11-27T01:46:07.873Z" host="www.draw.io" agent="Mozilla/5.0 (X11; Linux x86_64; rv:70.0) Gecko/20100101 Firefox/70.0" etag="Div9kEoT7OfzQ736Cges" version="12.3.1" type="device" pages="1"><diagram id="3T7Fh-tElfW0GhIRTNz5" name="Page-1">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</diagram></mxfile>
|
|
@ -308,6 +308,14 @@ Mesh Models are used to implement the specific functions of model in nodes. Serv
|
||||||
- Send ESP-BLE-MESH Sensor Client messages and receive corresponding response messages
|
- Send ESP-BLE-MESH Sensor Client messages and receive corresponding response messages
|
||||||
* - :component_file:`time_scene_client.c <bt/esp_ble_mesh/mesh_models/client/time_scene_client.c>`
|
* - :component_file:`time_scene_client.c <bt/esp_ble_mesh/mesh_models/client/time_scene_client.c>`
|
||||||
- Send ESP-BLE-MESH Time Scene Client messages and receive corresponding response messages
|
- Send ESP-BLE-MESH Time Scene Client messages and receive corresponding response messages
|
||||||
|
* - :component_file:`generic_server.c <bt/esp_ble_mesh/mesh_models/server/generic_server.c>`
|
||||||
|
- Receive ESP-BLE-MESH Generic Client messages and send corresponding response messages
|
||||||
|
* - :component_file:`lighting_server.c <bt/esp_ble_mesh/mesh_models/server/lighting_server.c>`
|
||||||
|
- Receive ESP-BLE-MESH Lighting Client messages and send corresponding response messages
|
||||||
|
* - :component_file:`sensor_server.c <bt/esp_ble_mesh/mesh_models/server/sensor_server.c>`
|
||||||
|
- Receive ESP-BLE-MESH Sensor Client messages and send corresponding response messages
|
||||||
|
* - :component_file:`time_scene_server.c <bt/esp_ble_mesh/mesh_models/server/time_scene_server.c>`
|
||||||
|
- Receive ESP-BLE-MESH Time Scene Client messages and send corresponding response messages
|
||||||
|
|
||||||
2.2 Mesh Bearers Implementation
|
2.2 Mesh Bearers Implementation
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
Espressif ESP-BLE-MESH Feature List
|
ESP-BLE-MESH Feature List
|
||||||
===================================
|
=========================
|
||||||
|
|
||||||
Supported Features
|
Supported Features
|
||||||
------------------
|
------------------
|
||||||
|
@ -22,7 +22,8 @@ Mesh Core
|
||||||
* IV Update Procedure
|
* IV Update Procedure
|
||||||
* Friend
|
* Friend
|
||||||
* Low Power
|
* Low Power
|
||||||
* Proxy
|
* Proxy Server
|
||||||
|
* Proxy Client
|
||||||
|
|
||||||
* Multiple Client Models Run Simultaneously
|
* Multiple Client Models Run Simultaneously
|
||||||
* Support multiple client models send packets to different nodes simultaneously
|
* Support multiple client models send packets to different nodes simultaneously
|
||||||
|
@ -34,13 +35,13 @@ Mesh Core
|
||||||
Mesh Models
|
Mesh Models
|
||||||
"""""""""""
|
"""""""""""
|
||||||
|
|
||||||
* Foundation Models
|
* Foundation models
|
||||||
* Configuration Server Model
|
* Configuration Server model
|
||||||
* Configuration Client Model
|
* Configuration Client model
|
||||||
* Health Server Model
|
* Health Server model
|
||||||
* Health Client Model
|
* Health Client model
|
||||||
|
|
||||||
* Generic Client Models
|
* Generic client models
|
||||||
* Generic OnOff Client
|
* Generic OnOff Client
|
||||||
* Generic Level Client
|
* Generic Level Client
|
||||||
* Generic Default Transition Time Client
|
* Generic Default Transition Time Client
|
||||||
|
@ -50,43 +51,81 @@ Mesh Models
|
||||||
* Generic Location Client
|
* Generic Location Client
|
||||||
* Generic Property Client
|
* Generic Property Client
|
||||||
|
|
||||||
* Sensor Client Models
|
* Sensor client models
|
||||||
* Sensor Client
|
* Sensor Client
|
||||||
|
|
||||||
* Time and Scenes Client Models
|
* Time and Scenes client models
|
||||||
* Time Client
|
* Time Client
|
||||||
* Scene Client
|
* Scene Client
|
||||||
* Scheduler Client
|
* Scheduler Client
|
||||||
|
|
||||||
* Lighting Client Models
|
* Lighting client models
|
||||||
* Light Lightness Client
|
* Light Lightness Client
|
||||||
* Light CTL Client
|
* Light CTL Client
|
||||||
* Light HSL Client
|
* Light HSL Client
|
||||||
* Light xyL Client
|
* Light xyL Client
|
||||||
* Light LC Client
|
* Light LC Client
|
||||||
|
|
||||||
* Generic Server Models
|
* Generic server models
|
||||||
* Generic OnOff Server (Simple)
|
* Generic OnOff Server
|
||||||
|
* Generic Level Server
|
||||||
|
* Generic Default Transition Time Server
|
||||||
|
* Generic Power OnOff Server
|
||||||
|
* Generic Power OnOff Setup Server
|
||||||
|
* Generic Power Level Server
|
||||||
|
* Generic Power Level Setup Server
|
||||||
|
* Generic Battery Server
|
||||||
|
* Generic Location Server
|
||||||
|
* Generic Location Setup Server
|
||||||
|
* Generic User Property Server
|
||||||
|
* Generic Admin Property Server
|
||||||
|
* Generic Manufacturer Property Server
|
||||||
|
* Generic Client Property Server
|
||||||
|
|
||||||
|
* Sensor server models
|
||||||
|
* Sensor Server
|
||||||
|
* Sensor Setup Server
|
||||||
|
|
||||||
|
* Time and Scenes server models
|
||||||
|
* Time Server
|
||||||
|
* Time Setup Server
|
||||||
|
* Scene Server
|
||||||
|
* Scene Setup Server
|
||||||
|
* Scheduler Server
|
||||||
|
* Scheduler Setup Server
|
||||||
|
|
||||||
|
* Lighting server models
|
||||||
|
* Light Lightness Server
|
||||||
|
* Light Lightness Setup Server
|
||||||
|
* Light CTL Server
|
||||||
|
* Light CTL Temperature Server
|
||||||
|
* Light CTL Setup Server
|
||||||
|
* Light HSL Server
|
||||||
|
* Light HSL Hue Server
|
||||||
|
* Light HSL Saturation Server
|
||||||
|
* Light HSL Setup Server
|
||||||
|
* Light xyL Server
|
||||||
|
* Light xyL Setup Server
|
||||||
|
* Light LC Server
|
||||||
|
* Light LC Setup Server
|
||||||
|
|
||||||
Mesh Applications
|
Mesh Applications
|
||||||
"""""""""""""""""
|
"""""""""""""""""
|
||||||
|
|
||||||
* ESP-BLE-MESH Node
|
* ESP-BLE-MESH Node
|
||||||
* :example:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_node/tutorial/Ble_Mesh_Node_Example_Walkthrough.md>`
|
* :example:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_node/onoff_client/tutorial/BLE_Mesh_Node_OnOff_Client_Example_Walkthrough.md>`
|
||||||
|
* :example:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server/tutorial/BLE_Mesh_Node_OnOff_Server_Example_Walkthrough.md>`
|
||||||
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_node>`
|
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_node>`
|
||||||
* ESP-BLE-MESH Node with client model
|
|
||||||
* :example:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_client_model/tutorial/ble_mesh_client_model.md>`
|
|
||||||
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_client_model>`
|
|
||||||
* ESP-BLE-MESH Provisioner
|
* ESP-BLE-MESH Provisioner
|
||||||
* :example:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_provisioner/tutorial/Ble_Mesh_Provisioner_Example_Walkthrough.md>`
|
* :example:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_provisioner/tutorial/BLE_Mesh_Provisioner_Example_Walkthrough.md>`
|
||||||
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_provisioner>`
|
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_provisioner>`
|
||||||
* ESP-BLE-MESH Fast Provisioning
|
* ESP-BLE-MESH Fast Provisioning
|
||||||
* :example:`Fast Provisioning Client Model Tutorial <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_client/tutorial/ble_mesh_fast_provision_client.md>`
|
* :example:`Fast Provisioning Client Model Tutorial <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_client/tutorial/BLE_Mesh_Fast_Prov_Client_Example_Walkthrough.md>`
|
||||||
* :example:`Fast Provisioning Server Model Tutorial <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_server/tutorial/ble_mesh_fast_provision_server.md>`
|
* :example:`Fast Provisioning Server Model Tutorial <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_server/tutorial/BLE_Mesh_Fast_Prov_Server_Example_Walkthrough.md>`
|
||||||
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_fast_provision>`
|
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_fast_provision>`
|
||||||
* `Demo Video <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.4_Demo_Fast_Provision/ESP32_BLE_Mesh_Fast_Provision.mp4>`__
|
* `Demo Video <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.4_Demo_Fast_Provision/ESP32_BLE_Mesh_Fast_Provision.mp4>`__
|
||||||
* ESP-BLE-MESH and Wi-Fi Coexistence
|
* ESP-BLE-MESH and Wi-Fi Coexistence
|
||||||
* :example:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/tutorial/ble_mesh_wifi_coexist.md>`
|
* :example:`Tutorial <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/tutorial/BLE_Mesh_WiFi_Coexist_Example_Walkthrough.md>`
|
||||||
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist>`
|
* :example:`Example <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist>`
|
||||||
* `Demo Video <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.5_Demo_Coexistence/ESP_BLE_MESH_%26_WIFI_Coexistence.mp4>`__
|
* `Demo Video <http://download.espressif.com/BLE_MESH/BLE_Mesh_Demo/V0.5_Demo_Coexistence/ESP_BLE_MESH_%26_WIFI_Coexistence.mp4>`__
|
||||||
* ESP-BLE-MESH Console Commands
|
* ESP-BLE-MESH Console Commands
|
||||||
|
@ -99,15 +138,7 @@ Future Release Features
|
||||||
Mesh Core
|
Mesh Core
|
||||||
"""""""""
|
"""""""""
|
||||||
|
|
||||||
* Proxy Client
|
* Provisioner NVS Storage
|
||||||
|
|
||||||
Mesh Models
|
|
||||||
"""""""""""
|
|
||||||
|
|
||||||
* Generic Server Models
|
|
||||||
* Sensor Server Models
|
|
||||||
* Time and Scenes Server Models
|
|
||||||
* Lighting Server Models
|
|
||||||
|
|
||||||
Mesh Applications
|
Mesh Applications
|
||||||
"""""""""""""""""
|
"""""""""""""""""
|
||||||
|
|
|
@ -2,13 +2,13 @@
|
||||||
ESP-BLE-MESH
|
ESP-BLE-MESH
|
||||||
************
|
************
|
||||||
|
|
||||||
Bluetooth mesh networking enables many-to-many (m:m) device communications and is optimized for creating large-scale device networks.
|
Bluetooth® mesh networking enables many-to-many (m:m) device communications and is optimized for creating large-scale device networks.
|
||||||
|
|
||||||
Devices may relay data to other devices not in direct radio range of the originating device. In this way, mesh networks can span very large physical areas and contain large numbers of devices. It is ideally suited for building automation, sensor networks, and other IoT solutions where tens, hundreds, or thousands of devices need to reliably and securely communicate with one another.
|
Devices may relay data to other devices not in direct radio range of the originating device. In this way, mesh networks can span very large physical areas and contain large numbers of devices. It is ideally suited for building automation, sensor networks, and other IoT solutions where tens, hundreds, or thousands of devices need to reliably and securely communicate with one another.
|
||||||
|
|
||||||
Bluetooth mesh is not a wireless communications technology, but a networking technology. This technology is dependent upon Bluetooth Low Energy (BLE) - a wireless communications protocol stack.
|
Bluetooth mesh is not a wireless communications technology, but a networking technology. This technology is dependent upon Bluetooth Low Energy (BLE) - a wireless communications protocol stack.
|
||||||
|
|
||||||
Built on top of Zephyr ESP-BLE-MESH stack, the ESP-BLE-MESH implementation supports device provisioning and node control. It also supports such node features as Proxy, Relay, Low power and Friend.
|
Built on top of Zephyr Bluetooth Mesh stack, the ESP-BLE-MESH implementation supports device provisioning and node control. It also supports such node features as Proxy, Relay, Low power and Friend.
|
||||||
|
|
||||||
Please see the :doc:`ble-mesh-architecture` for information about the implementation of ESP-BLE-MESH architecture and :doc:`ESP-BLE-MESH API Reference <../../api-reference/bluetooth/esp-ble-mesh>` for information about respective API.
|
Please see the :doc:`ble-mesh-architecture` for information about the implementation of ESP-BLE-MESH architecture and :doc:`ESP-BLE-MESH API Reference <../../api-reference/bluetooth/esp-ble-mesh>` for information about respective API.
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ Hardware:
|
||||||
|
|
||||||
Software:
|
Software:
|
||||||
|
|
||||||
* Example application :example:`bluetooth/esp_ble_mesh/ble_mesh_node` code to load to the ESP32 boards.
|
* Example application :example:`bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server` code to load to the ESP32 boards.
|
||||||
* Mobile App: **nRF Mesh** for Android or iOS. Optionally you can use some other Apps:
|
* Mobile App: **nRF Mesh** for Android or iOS. Optionally you can use some other Apps:
|
||||||
|
|
||||||
- `EspBleMesh <https://github.com/EspressifApp/EspBLEMeshForAndroid/releases/tag/v1.0.0>`_ Android App
|
- `EspBleMesh <https://github.com/EspressifApp/EspBLEMeshForAndroid/releases/tag/v1.0.0>`_ Android App
|
||||||
|
@ -70,12 +70,12 @@ Both `ESP32-DevKitC`_ and `ESP-WROVER-KIT`_ development boards are supported for
|
||||||
Step 2. Configure Software
|
Step 2. Configure Software
|
||||||
""""""""""""""""""""""""""
|
""""""""""""""""""""""""""
|
||||||
|
|
||||||
Enter the :example:`bluetooth/esp_ble_mesh/ble_mesh_node` example directory, run :code:`idf.py menuconfig` to select your board and then run :code:`idf.py build` to compile the example.
|
Enter the :example:`bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server` example directory, run :code:`idf.py menuconfig` to select your board and then run :code:`idf.py build` to compile the example.
|
||||||
|
|
||||||
Step 3. Upload Application to Nodes
|
Step 3. Upload Application to Nodes
|
||||||
"""""""""""""""""""""""""""""""""""
|
"""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
After the :example:`bluetooth/esp_ble_mesh/ble_mesh_node` example is compiled successfully, users can run :code:`idf.py flash` to upload the same generated binary files into each of the three development boards.
|
After the :example:`bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server` example is compiled successfully, users can run :code:`idf.py flash` to upload the same generated binary files into each of the three development boards.
|
||||||
|
|
||||||
Once boards are powered on, the RGB LED on each board should turn **GREEN**.
|
Once boards are powered on, the RGB LED on each board should turn **GREEN**.
|
||||||
|
|
||||||
|
@ -185,7 +185,7 @@ Step 5. Operate Network
|
||||||
|
|
||||||
After all the Generic OnOff Server Models within the three elements are bound with proper AppKey, users can use the App to turn on/off the RGB LED.
|
After all the Generic OnOff Server Models within the three elements are bound with proper AppKey, users can use the App to turn on/off the RGB LED.
|
||||||
|
|
||||||
In the :example:`bluetooth/esp_ble_mesh/ble_mesh_node` example, the first Generic OnOff Server Model is used to control the **RED** color, the second one is used to control the **GREEN** color and the third one is used to control the **BLUE** color.
|
In the :example:`bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server` example, the first Generic OnOff Server Model is used to control the **RED** color, the second one is used to control the **GREEN** color and the third one is used to control the **BLUE** color.
|
||||||
|
|
||||||
.. figure:: ../../../_static/ble-mesh-generic-onoff.png
|
.. figure:: ../../../_static/ble-mesh-generic-onoff.png
|
||||||
:align: center
|
:align: center
|
||||||
|
@ -209,17 +209,17 @@ The following screenshot shows different board with different color on.
|
||||||
ESP-BLE-MESH Examples
|
ESP-BLE-MESH Examples
|
||||||
=====================
|
=====================
|
||||||
|
|
||||||
* :example:`ESP-BLE-MESH Node <bluetooth/esp_ble_mesh/ble_mesh_node/tutorial/Ble_Mesh_Node_Example_Walkthrough.md>` - shows the use of ESP-BLE-MESH as a node device having a Configuration Server model and a Generic OnOff Server model. A ESP-BLE-MESH provisioner can then provision the node and control a RGB LED representing on/off state, see :example:`example code <bluetooth/esp_ble_mesh/ble_mesh_node>`.
|
* :example:`ESP-BLE-MESH Node OnOff Server <bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server/tutorial/BLE_Mesh_Node_OnOff_Server_Example_Walkthrough.md>` - shows the use of ESP-BLE-MESH as a node having a Configuration Server model and a Generic OnOff Server model. A ESP-BLE-MESH Provisioner can then provision the unprovisioned device and control a RGB LED representing on/off state, see :example:`example code <bluetooth/esp_ble_mesh/ble_mesh_node/onoff_server>`.
|
||||||
|
|
||||||
* :example:`ESP-BLE-MESH Client Model <bluetooth/esp_ble_mesh/ble_mesh_client_model/tutorial/ble_mesh_client_model.md>` - shows how a Generic OnOff Client model works within a node. The node has a Configuration Server model, a Generic OnOff Server model and a Generic OnOff Client model, see :example:`example code <bluetooth/esp_ble_mesh/ble_mesh_client_model>`.
|
* :example:`ESP-BLE-MESH Node OnOff Client <bluetooth/esp_ble_mesh/ble_mesh_node/onoff_client/tutorial/BLE_Mesh_Node_OnOff_Client_Example_Waclthrough.md>` - shows how a Generic OnOff Client model works within a node. The node has a Configuration Server model and a Generic OnOff Client model, see :example:`example code <bluetooth/esp_ble_mesh/ble_mesh_node/onoff_client>`.
|
||||||
|
|
||||||
* :example:`ESP-BLE-MESH Provisioner <bluetooth/esp_ble_mesh/ble_mesh_provisioner/tutorial/Ble_Mesh_Provisioner_Example_Walkthrough.md>` - shows how a device can act as a ESP-BLE-MESH provisioner to provision devices. The provisioner has a Configuration Server model, a Configuration Client model and a Generic OnOff Client model, see :example:`example code <bluetooth/esp_ble_mesh/ble_mesh_provisioner>`.
|
* :example:`ESP-BLE-MESH Provisioner <bluetooth/esp_ble_mesh/ble_mesh_provisioner/tutorial/Ble_Mesh_Provisioner_Example_Walkthrough.md>` - shows how a device can act as an ESP-BLE-MESH Provisioner to provision devices. The Provisioner has a Configuration Server model, a Configuration Client model and a Generic OnOff Client model, see :example:`example code <bluetooth/esp_ble_mesh/ble_mesh_provisioner>`.
|
||||||
|
|
||||||
* ESP-BLE-MESH Fast Provisioning - :example:`Client <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_client/tutorial/ble_mesh_fast_provision_client.md>` and :example:`Server <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_server/tutorial/ble_mesh_fast_provision_server.md>` - this demo is used for fast provisioning networks. It takes no more than 60 seconds to provision 100 devices, see :example:`example client code <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_client>` and :example:`example server code <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_server>`.
|
* ESP-BLE-MESH Fast Provisioning - :example:`Client <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_client/tutorial/BLE_Mesh_Fast_Prov_Client_Example_Walkthrough.md>` and :example:`Server <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_server/tutorial/BLE_Mesh_Fast_Prov_Server_Example_Walkthrough.md>` - this example is used for showing how fast provisioning can be used in order to create a mesh network. It takes no more than 60 seconds to provision 100 devices, see :example:`example client code <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_client>` and :example:`example server code <bluetooth/esp_ble_mesh/ble_mesh_fast_provision/ble_mesh_fast_prov_server>`.
|
||||||
|
|
||||||
* :example:`ESP-BLE-MESH and Wi-Fi Coexistence <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/tutorial/ble_mesh_wifi_coexist.md>` - a demo that demonstrates the Wi-Fi and Bluetooth (BLE/BR/EDR) coexistence feature of ESP32. Simply put, users can use the Wi-Fi while operating Bluetooth, see :example:`example code <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist>`.
|
* :example:`ESP-BLE-MESH and Wi-Fi Coexistence <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist/tutorial/BLE_Mesh_WiFi_Coexist_Example_Walkthrough.md>` - an example that demonstrates the Wi-Fi and Bluetooth (BLE/BR/EDR) coexistence feature of ESP32. Simply put, users can use the Wi-Fi while operating Bluetooth, see :example:`example code <bluetooth/esp_ble_mesh/ble_mesh_wifi_coexist>`.
|
||||||
|
|
||||||
* ESP-BLE-MESH Node Console - a demo that implements BLE mesh node basic features. Within this demo a node can be scanned and provisioned by provisioner and reply to get/set message from provisioner, see :example:`example node code <bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node>` and :example:`example provisioner code <bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner>`.
|
* ESP-BLE-MESH Node Console - an example that implements BLE Mesh node basic features. Within this example a node can be scanned and provisioned by Provisioner and reply to get/set message from Provisioner, see :example:`example node code <bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_node>` and :example:`example Provisioner code <bluetooth/esp_ble_mesh/ble_mesh_console/ble_mesh_provisioner>`.
|
||||||
|
|
||||||
|
|
||||||
.. _esp-ble-mesh-demo-videos:
|
.. _esp-ble-mesh-demo-videos:
|
||||||
|
|
|
@ -1,72 +1,76 @@
|
||||||
# ESP BLE Mesh Examples
|
# ESP-BLE-MESH Examples
|
||||||
|
|
||||||
[ESP BLE Mesh]($IDF_PATH/components/bt/esp_ble_mesh/) is the official BLE Mesh stack of Espressif Systems. We will provide long-term support for new features, performance optimization, etc.
|
[ESP-BLE-MESH]($IDF_PATH/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.
|
||||||
|
|
||||||
Please 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).
|
Please 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).
|
||||||
|
|
||||||
Note: To use examples in this directory, you need to have Bluetooth enabled in configuration and Bluedroid selected as the host stack. ESP BLE Mesh will support NimBLE host soon, and currently the integration of NimBLE host with ESP BLE Mesh stack is under development.
|
Note: 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.
|
||||||
|
|
||||||
# Example Layout
|
# Example Layout
|
||||||
|
|
||||||
This directory includes examples to demonstrate BLE Mesh functionality based on Zephyr (https://github.com/zephyrproject-rtos/zephyr) Mesh stack.
|
This 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).
|
||||||
|
|
||||||
## ble_mesh_client_model
|
|
||||||
|
|
||||||
This example shows how ESP32 acts as a BLE Mesh Node with Generic OnOff Client & Server Models in the Primary Element.
|
|
||||||
|
|
||||||
See the [README.md](./ble_mesh_client_model/README.md) file in the example [ble_mesh_client_model](./ble_mesh_client_model/).
|
|
||||||
|
|
||||||
## ble_mesh_console
|
## ble_mesh_console
|
||||||
|
|
||||||
This example demonstrates how ESP BLE Mesh uses Console for message transmitting/receiving tests.
|
This example demonstrates how ESP-BLE-MESH uses Console for message transmitting/receiving tests.
|
||||||
|
|
||||||
### ble_mesh_node
|
#### ble_mesh_node
|
||||||
|
|
||||||
This example shows how ESP32 acts as a BLE Mesh Node and sends vendor messages for testing.
|
This example shows how ESP32 acts as a BLE Mesh Node and sends vendor messages for testing.
|
||||||
|
|
||||||
See the [README.md](./ble_mesh_console/ble_mesh_node/README.md) file in the example [ble_mesh_node](./ble_mesh_console/ble_mesh_node/).
|
See [ble_mesh_node](ble_mesh_console/ble_mesh_node) folder for more details.
|
||||||
|
|
||||||
### ble_mesh_provisioner
|
#### ble_mesh_provisioner
|
||||||
|
|
||||||
This example shows how ESP32 acts as a BLE Mesh Provisioner and sends vendor messages for testing.
|
This example shows how ESP32 acts as a BLE Mesh Provisioner and sends vendor messages for testing.
|
||||||
|
|
||||||
See the [README.md](./ble_mesh_console/ble_mesh_provisioner/README.md) file in the example [ble_mesh_provisioner](./ble_mesh_console/ble_mesh_provisioner/).
|
See [ble_mesh_provisioner](ble_mesh_console/ble_mesh_provisioner) folder for more details.
|
||||||
|
|
||||||
## ble_mesh_fast_provision
|
## ble_mesh_fast_provision
|
||||||
|
|
||||||
This example illustrates the solution of ESP BLE Mesh Fast Provisioning.
|
This example illustrates the solution of ESP-BLE-MESH Fast Provisioning.
|
||||||
|
|
||||||
### ble_mesh_fast_prov_client
|
#### ble_mesh_fast_prov_client
|
||||||
|
|
||||||
This example shows how ESP32, acting as a BLE Mesh Fast Provisioning Client, provisions other unprovisioned devices and then control the nodes.
|
This example shows how ESP32, acting as a BLE Mesh Fast Provisioning Client, provisions other unprovisioned devices and then controls the nodes.
|
||||||
|
|
||||||
See the [README.md](./ble_mesh_fast_provision/ble_mesh_fast_prov_client/README.md) file in the example [ble_mesh_fast_prov_client](./ble_mesh_fast_provision/ble_mesh_fast_prov_client/).
|
See [ble_mesh_fast_prov_client](ble_mesh_fast_provision/ble_mesh_fast_prov_client) folder for more details.
|
||||||
|
|
||||||
### ble_mesh_fast_prov_server
|
#### ble_mesh_fast_prov_server
|
||||||
|
|
||||||
This example illustrates the process that:
|
This example illustrates the process that:
|
||||||
1. Firstly as a BLE Mesh Fast Provisioning Server, ESP32 is provisioned into a Node;
|
1. ESP32 as a BLE Mesh Fast Provisioning Server is provisioned into a node;
|
||||||
2. and then provisions other unprovisioned devices as a Temporary Provisioner.
|
2. ESP32 as a Temporary Provisioner provisions other unprovisioned devices.
|
||||||
|
|
||||||
See the [README.md](./ble_mesh_fast_provision/ble_mesh_fast_prov_server/README.md) file in the example [ble_mesh_fast_prov_server](./ble_mesh_fast_provision/ble_mesh_fast_prov_server/).
|
See [ble_mesh_fast_prov_server](ble_mesh_fast_provision/ble_mesh_fast_prov_server) folder for more details.
|
||||||
|
|
||||||
## ble_mesh_node
|
## ble_mesh_node
|
||||||
|
|
||||||
This example shows how ESP32 acts as a BLE Mesh Node with only Generic OnOff Server Model in the Primary Element.
|
This example demonstrates how ESP32 acts as a BLE Mesh node with Generic OnOff Server model or Generic OnOff Client model on board.
|
||||||
|
|
||||||
See the [README.md](./ble_mesh_node/README.md) file in the example [ble_mesh_node](./ble_mesh_node/).
|
#### onoff_client
|
||||||
|
|
||||||
|
This example shows how ESP32 acts as a BLE Mesh Node with Generic OnOff Client model in the Primary Element.
|
||||||
|
|
||||||
|
See [onoff_client](ble_mesh_node/onoff_client) folder for more details.
|
||||||
|
|
||||||
|
#### onoff_server
|
||||||
|
|
||||||
|
This example shows how ESP32 acts as a BLE Mesh Node with only Generic OnOff Server model in the Primary Element.
|
||||||
|
|
||||||
|
See [onoff_server](ble_mesh_node/onoff_server) folder for more details.
|
||||||
|
|
||||||
## ble_mesh_provisioner
|
## ble_mesh_provisioner
|
||||||
|
|
||||||
This example shows how ESP32 acts as a BLE Mesh Provisioner and provisions other unprovisioned devices.
|
This example shows how ESP32 acts as a BLE Mesh Provisioner and provisions other unprovisioned devices.
|
||||||
|
|
||||||
See the [README.md](./ble_mesh_provisioner/README.md) file in the example [ble_mesh_provisioner](./ble_mesh_provisioner/).
|
See [ble_mesh_provisioner](ble_mesh_provisioner) folder for more details.
|
||||||
|
|
||||||
## ble_mesh_wifi_coexist
|
## ble_mesh_wifi_coexist
|
||||||
|
|
||||||
This example shows how ESP32 acts as a BLE Mesh Fast Provisioning Server and coexists with Wi-Fi iperf functionality.
|
This example shows how ESP32 acts as a BLE Mesh Fast Provisioning Server and coexists with Wi-Fi iperf functionality.
|
||||||
|
|
||||||
See the [README.md](./ble_mesh_wifi_coexist/README.md) file in the example [ble_mesh_wifi_coexist](./ble_mesh_wifi_coexist/).
|
See [ble_mesh_wifi_coexist](ble_mesh_wifi_coexist) folder for more details.
|
||||||
|
|
||||||
# More
|
# More
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue