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