esp-idf/examples/bluetooth/esp_ble_mesh
Felipe Neves a3c90bf59a freertos: merged freertos 10 kernel files into IDF
freertos/port: update the port files and split into xtensa and riscv ports

freertos: separated cpu files from rest of the kernel sources

freertos/port_xtensa: separated private include files into a folder

freertos/tasks: added task create pinned to core function do not break current IDF API

freertos/tasks: mimiced task create pinned function into tasks.c to do not break the IDF API.

freertos: freertos component now compiling

freertos: freertos component now building

freertos: moved critical sections outside from FR kernel section to portable section

portmacro_xtensa: add void indentifier on functions that take no arguments

freertos: fix critical sections implementation to match with their function prototype

freertos: add cmake changes of freertos into make

freertos: remove portDONT_DISCARD attribute from switch context function, it was breaking the docs building.

freertos: fix conflicitng types of vApplicationSleep function

license: update the license of freertos

freertos: Doxygen comments refactored to render them correctly on docs

freertos: added new functions of freertos into the documentation

freertos: added message buffers and stream buffers to documentation

sysview: update freertos system view to the compatible with version 10

freertos: fixed event group  documentation rendering

freertos:  update static task structure to match the actual tcb size

freertos: removed backported test functions

freertos/smp: brought SMP code to  FreeRTOS 10 port

freertos/portmacro: added missing crosscore interrupt for yielding tasks

freertos: replaced soft-critical sections with hard-critical sections used by SMP

freertos: placed muxes inside of kernel objects

freertos: replaced original FR critical sections with SMP enabled spinlocks critical sections

freertos: moved xtensa port files to a separated folder

freertos: added multiple instance of global variables required to SMP

freertos: added SMP modifications on specific tasks module functions

freertos: added TLS deletion function to task module

freertos/tls: initialize TLS deletion callback to avoid crashing when calling task delete

freertos: modified vTaskDelete to do not erase current task that runs on other core

freertos: reverted taskhandle and timerhandle as void* type

freertos: fixed de-referencing void pointer to get run time counter

freertos: fix system view trace enter macro arguments

freertos: Replaced soft critical sections with spinlocks on event_groups

freertos: fixed tick function to avoid calling tick hooks twice

freertos: Nofity give checking per CPU if schedule is suspended

freertos: added mpu release on TCB deletion

freertos: Added SMP changes when deleting a TCB on idle task

freertos/license: update freertos license in COPYRIGHT.rst

freertos: unicore configurations can use task create pinned to core, it will be always pinned to core 0

freertos/portmacro: added cpu_hal_get_core_id() function instead of inline assembly

freertos/xtensa:  update xtensa specific files used in master branch

newlib/locks: revert the preemption checking in lock acquisition and release

ref_clock: fix initial state of ref_clock interrupt handler

freertos: added missing critical sections and yielding checkings

freertos: remove magic numbers in vTaskDelete

freertos: added missing critical section in prvIsQueueEmpty
2020-10-13 23:52:03 +00:00
..
ble_mesh_coex_test freertos: merged freertos 10 kernel files into IDF 2020-10-13 23:52:03 +00:00
ble_mesh_console Test: merge ble mesh node and provioner in console 2020-08-21 11:01:37 +08:00
ble_mesh_fast_provision ble_mesh: ci: Enable settings in sdkconfig.ci.xxx 2020-09-14 08:40:12 +00:00
ble_mesh_node ble_mesh: ci: Enable settings in sdkconfig.ci.xxx 2020-09-14 08:40:12 +00:00
ble_mesh_provisioner ble_mesh: ci: Enable settings in sdkconfig.ci.xxx 2020-09-14 08:40:12 +00:00
ble_mesh_sensor_model ble_mesh: ci: Enable settings in sdkconfig.ci.xxx 2020-09-14 08:40:12 +00:00
ble_mesh_vendor_model ble_mesh: ci: Enable settings in sdkconfig.ci.xxx 2020-09-14 08:40:12 +00:00
ble_mesh_wifi_coexist docs: fix broken links in example READMEs 2020-07-08 10:39:33 +08:00
common_components Fix compilation warnings about portmacro being already define. 2020-08-31 11:37:34 +00:00
README.md Test: merge ble mesh node and provioner in console 2020-08-21 11:01:37 +08:00

ESP-BLE-MESH Examples

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.

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

This directory includes examples to demonstrate ESP-BLE-MESH functionality based on Zephyr Bluetooth Mesh stack.

ble_mesh_console

This example demonstrates how ESP-BLE-MESH uses Console for message transmitting/receiving tests.

ble_mesh_fast_provision

This example illustrates the solution of ESP-BLE-MESH Fast Provisioning.

fast_prov_client

This example shows how ESP32, acting as a BLE Mesh Fast Provisioning Client, provisions other unprovisioned devices and then controls the nodes.

See fast_prov_client folder for more details.

fast_prov_server

This example illustrates the process that:

  1. ESP32 as a BLE Mesh Fast Provisioning Server is provisioned into a node;
  2. ESP32 as a Temporary Provisioner provisions other unprovisioned devices.

See fast_prov_server folder for more details.

ble_mesh_node

This example demonstrates how ESP32 acts as a BLE Mesh node with Generic OnOff Server model or Generic OnOff Client model on board.

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 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 folder for more details.

ble_mesh_provisioner

This example shows how ESP32 acts as a BLE Mesh Provisioner and provisions other unprovisioned devices.

See ble_mesh_provisioner folder for more details.

ble_mesh_vendor_model

This example demonstrates how ESP32 acts as a BLE Mesh Provisioner with vendor client model or as a BLE Mesh node with vendor server model.

vendor_client

This example shows how ESP32 acts as a BLE Mesh Provisioner with a vendor client model in the Primary Element.

See vendor_client folder for more details.

vendor_server

This example shows how ESP32 acts as a BLE Mesh Node with a vendor server model in the Primary Element.

See vendor_server folder for more details.

ble_mesh_wifi_coexist

This example shows how ESP32 acts as a BLE Mesh Fast Provisioning Server and coexists with Wi-Fi iperf functionality.

See ble_mesh_wifi_coexist folder for more details.

More

See the README.md file in the upper level examples directory for more information about examples.