Commit Graph

84 Commits

Author SHA1 Message Date
luoxu 866a07e954 feat(ble_mesh): fixed issues where the incorrect node oob private setting 2026-01-06 14:45:17 +08:00
luoxu a301dc1eac feat(ble_mesh): dfd client/server supported 2025-12-18 15:24:50 +08:00
luoxu aeab65c1a7 fix(ble_mesh): fix memory issue in nimble gap event forwarding 2025-12-11 19:54:06 +08:00
luoxu 1b1a646891 feat(ble_mesh): Adapt DFU/MBT to esp-idf 2025-10-21 17:22:22 +08:00
luoxu 93a36fbf99 feat(ble_mesh): add BLE 5.0 extended advertising and long packet support
- Add extended advertising configuration with customizable PHY selection (1M, 2M, Coded)
- Implement long packet mode to overcome standard BLE Mesh packet length limitations
- Add configurable advertising parameters: interval, count, channel map, TX power
- Introduce enhanced message context structure for fine-grained advertising control
- Add Kconfig options for buffer management and segment count configuration
- Support both forced and preferred long packet transmission modes
- Update advertising buffer pools to accommodate extended and long packet types
- Add validation for enhanced advertising parameters and packet length limits
- Maintain backward compatibility with existing BLE Mesh functionality
2025-10-11 10:57:46 +08:00
luoxu a86bb375f7 feat(ble_mesh): Support BLE 5.0 for BLE Mesh 2024-11-08 14:17:52 +08:00
luoxu cee98dae25 fix(ble_mesh): fix issues in mesh deinit 2024-05-31 11:10:30 +08:00
luoxu 0e21cdd18a fix(ble_mesh): fix error condition for heartbeat filter adding node address 2024-04-08 14:25:18 +08:00
Island c3645202da Merge branch 'bugfix/ble_mesh_deinit_reinit' into 'master'
ble mesh: improve ble mesh deinit

See merge request espressif/esp-idf!19199
2024-01-29 13:59:07 +08:00
InfiniteYuan 8191f319a3 ble_mesh: stack: fix the structure init order to meet C++ requirements 2024-01-22 14:12:11 +08:00
InfiniteYuan 993882d1d9 feat: ble mesh: improve ble mesh deinit when nimble enable 2024-01-09 14:16:31 +08:00
Liu Linyan c628a94513 fix(ble_mesh): Miscellaneous updates and fixes 2023-11-06 10:34:50 +08:00
Alexey Lapshin 6a94453a18 fix(bt): fix gcc 13.1.0 warnings 2023-10-09 12:13:02 +04:00
Liu Linyan 5bab168b0e feat(ble_mesh): Support Bluetooth Mesh Protocol v1.1 (Preview) 2023-09-08 21:37:33 +08:00
Liu Linyan bf51fb965b feat(ble_mesh): Bluetooth Mesh folder and file misc updates 2023-09-08 21:37:33 +08:00
Alexey Lapshin d4b7be4a73 bt: fix gcc-12 compile errors 2023-02-22 05:33:03 +00:00
xiongweichao 40f6239fd7 bt: Fixed memory leak due to not freeing memory if posting a message to a thread fails 2022-11-30 10:41:52 +08:00
lly 279ddd2ee9 ble_mesh: stack: Fix typo in directly erase settings event 2022-11-10 06:44:51 +00:00
wangjialiang c49b5b2409 ble_mesh: stack: Add proxy server connect and disconnect event 2022-03-05 11:14:28 +00:00
lly eeb9a9bd2c ble_mesh: stack: Update license of esp specific files 2021-10-28 21:20:27 +08:00
lly f6c3b51b13 ble_mesh: Update the SIG recommendations for CVE issues 2021-08-17 19:43:47 +08:00
Jiang Jiang Jian 59b49d2783 Merge branch 'feature/add-nimble-host-to-blufi' into 'master'
Add support of NimBLE host to Blufi

See merge request espressif/esp-idf!13734
2021-06-29 12:54:01 +00:00
“sonalipatil” 5175672050 Add support of NimBLE host to Blufi
Merges https://github.com/espressif/esp-idf/pull/6904
2021-06-28 19:53:33 +05:30
wangjialiang d4232ee8f9 ble_mesh: stack: Fix AuthValue Leak and Predictable AuthValue in Bluetooth Mesh Provisioning Leads to MITM 2021-06-17 17:05:01 +08:00
lly 8aae9860ce ble_mesh: stack: Enable updating lighting hsl state 2021-01-15 20:27:43 +08:00
lly ac93a38990 ble_mesh: stack: Support reporting normal ble adv packets 2020-12-21 09:08:25 +00:00
lly a6ebe48e6e ble_mesh: stack: Add a btc file for ble coex functions
Previously if starting/stopping BLE advertising when BLE Mesh
is enabled, the corresponding events will be notified through
the callback registered by esp_ble_mesh_register_prov_callback().

With this commit, the func esp_ble_mesh_register_ble_callback()
needs to be invoked for resgitering the callback used for BLE
coexistence related functionalities (i.e. ADV/SCAN).
2020-12-21 09:08:25 +00:00
lly b77563abb0 ble_mesh: Replace zephyr integer types with C99 types [Zephyr] 2020-12-08 15:13:04 +08:00
lly a90e3cdf95 ble_mesh: stack: Provisioner supports multiple nvs namespaces
Now Provisioner can use different NVS namespaces to store
different instances of mesh information, for example, for
different user accounts.
2020-12-04 20:31:25 +08:00
lly db4b87a771 ble_mesh: stack: Provisioner supports receiving heartbeat 2020-11-23 01:28:28 +00:00
Angus Gratton 66fb5a29bb Whitespace: Automated whitespace fixes (large commit)
Apply the pre-commit hook whitespace fixes to all files in the repo.

(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
lly e543dc9a3b ble_mesh: stack: Fix wrong declaration of node bind AppKey func 2020-11-10 14:05:19 +08:00
lly 549dc2a411 ble_mesh: stack: Add node local netkey/appkey func 2020-11-04 03:25:02 +00:00
lly fc071c10a6 ble_mesh: stack: Add a Kconfig option to make Health Server model optional 2020-10-23 02:04:21 +00:00
lly 9176fe996c ble_mesh: stack: Add Kconfig options to make server models optional 2020-10-23 02:04:21 +00:00
lly a1f1a6b484 ble_mesh: stack: Use Kconfig option to make client models optional 2020-10-23 02:04:21 +00:00
lly 051f02ee80 ble_mesh: stack: Add a Kconfig option to make deinit optional 2020-10-23 02:04:21 +00:00
andreachiara 0b9d270804 esp_ble_mesh: api: fixed comment about autoresp 2020-10-19 10:48:57 +08:00
lly 2607662054 ble_mesh: stack: Optimize Provisioner delete device function
Since we have provided separate functions for deleting node
information with node's unicast address, device uuid, etc.
So we update the behavior of this function, which will only
be used to delete device information which is not provisioned
or just under provisioning.
2020-09-24 06:29:22 +00:00
lly 825ceb726d ble_mesh: stack: Fix storing next net_idx and app_idx 2020-09-14 08:40:12 +00:00
lly 88cc07b6ca ble_mesh: stack: Transport rx reset settings update
When reset the rx info of transport layer, the
rpl list will always cleared, and rpl stored
in the nvs will only be erased when erase flag
is true and BLE_MESH_SETTINGS is enabled.
Compared with the previous solution, it should
be more clear.
2020-09-14 08:40:12 +00:00
lly 043abf5750 ble_mesh: stack: Use model callback for operations [Zephyr]
- Previously when a model is initialized or deinitialized, in the
  access layer, we need to check the model id with the ids in the
  table in order to find the proper model operation function.
- Currently all the operation functions of each model will be set
  during the mesh initialization. When the model is found, we can
  directly use the corresponding callback for different operations.
- Currently only init/deinit operations are registered, later we
  will add more operations.
2020-09-03 02:02:33 +00:00
lly b94ce120d6 ble_mesh: stack: Only keep func pointer for very common log
Currently only keep func pointer for the followings:
- Invalid parameter (mesh btc & mesh stack)
- Out of memory (mesh btc & mesh stack)
- Unknown act (mesh btc)
- Invalid model user data (mesh stack)
- BT_DBG("%s", __func__) (mesh btc & mesh stack)
- A few other specific situations (buf ref debug, send status check)
2020-07-10 14:14:01 +08:00
lly fd6071a0fc ble_mesh: stack: Add more checks about input prov bearers 2020-07-10 00:57:09 +00:00
lly 8005d07e07 ble_mesh: stack: Add two application macros for TTL 2020-07-08 08:30:54 +00:00
lly 4ae7efb4c0 ble_mesh: Get node info with pre-configured node name
Also add a function to get the entry of the nodes table.

Closes https://github.com/espressif/esp-idf/issues/5397
2020-06-20 05:47:19 +00:00
lly 409ea309f9 ble_mesh: Add more checks of net_idx & app_idx 2020-05-29 21:10:13 +08:00
lly 9aae4d3ba3 ble_mesh: Local model (un)subscribes group address 2020-05-29 09:40:19 +00:00
lly 2190c2c368 ble_mesh: Define a macro for invalid company id 2020-05-29 09:40:19 +00:00
lly 8ea6714a96 ble_mesh: Spit mesh_util.h into different header files
Split mesh_util.h into mesh_byteorder.h, mesh_compiler.h,
mesh_ffs.h and mesh_util.h based on the classification of
Zephyr, which will make further porting more clear.
2020-05-11 02:29:18 +00:00