Commit Graph

406 Commits

Author SHA1 Message Date
wangjialiang
a094532785 ble_mesh: stack: Bugfix for oversized SegN as valid 2022-04-25 11:47:10 +08:00
Anton Maklakov
68e5d9d585 Remove IRAM_ATTR from any function declarations
IRAM_ATTR expands to a unique section attribute. Applying it to both
declaration and definition results in a section conflict.
2022-03-22 09:58:50 +00:00
Marius Vikhammer
934a3951b8 Merge branch 'feature/s2_s3_support_ext_mem_stack' into 'master'
soc: support placing task stacks in external memory for S2 and S3

Closes IDF-2797 and IDF-1805

See merge request espressif/esp-idf!16186
2022-03-09 11:57:31 +08:00
Zim Kalinowski
0440aca4e3 Merge branch 'feature/reevaluate_headers_include_dirs' into 'master'
esp_hw_support/esp_system: Re-evaluate header inclusions and include directories

See merge request espressif/esp-idf!16763
2022-03-08 01:32:24 +08:00
Sudeep Mohanty
a9fda54d39 esp_hw_support/esp_system: Re-evaluate header inclusions and include directories
This commit updates the visibility of various header files and cleans up
some unnecessary inclusions. Also, this commit removes certain header
include paths which were maintained for backward compatibility.
2022-03-07 11:18:08 +05:30
wangjialiang
089637cfa3 ble_mesh: stack: Bugfix the proxy client abnormal disconnection 2022-03-05 11:14:28 +00:00
wangjialiang
c49b5b2409 ble_mesh: stack: Add proxy server connect and disconnect event 2022-03-05 11:14:28 +00:00
Marius Vikhammer
36ef485c4e soc: support placing task stacks in external memory for S2 and S3 2022-03-04 15:25:52 +08:00
Island
417ef24b06 Merge branch 'bugfix/ble_mesh_host_init' into 'master'
ble_mesh: nimble: return error if init host twice

See merge request espressif/esp-idf!13065
2021-11-03 02:25:03 +00:00
lly
a1535faad5 ble_mesh: nimble: return error if init host twice 2021-11-02 20:40:49 +08:00
lly
277a5947ee ble_mesh: stack: Apply the errata E16350 from Bluetooth SIG 2021-11-02 20:39:56 +08:00
lly
eeb9a9bd2c ble_mesh: stack: Update license of esp specific files 2021-10-28 21:20:27 +08:00
lly
fc97277e2f ble_mesh: stack: Update the license of provisioner_main.c 2021-10-26 17:44:36 +08:00
wangjialiang
0578c3a126 ble_mesh: stack: Fix heartbeat filter with accept list 2021-10-26 17:43:53 +08:00
baohongde
6fc4bf7145 components/bt: Fix link error of Kconfig 2021-09-13 15:45: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
Island
cdad1eaa9c Merge branch 'feat/ble_mesh_make_unprov_beacon_interval_configurable' into 'master'
ble_mesh: stack: Make unprovisioned beacon interval configurable

Closes IDFGH-4930

See merge request espressif/esp-idf!12811
2021-06-18 11:57:45 +00:00
wangjialiang
fbacede604 ble_mesh: stack: Fix crash for net_key_del when subnet is NULL 2021-06-18 11:52:00 +08:00
wangjialiang
7bfae982e4 ble_mesh: stack: Make unprovisioned beacon interval configurable.
Closes https://github.com/espressif/esp-idf/issues/6722
2021-06-18 11:52:00 +08:00
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
wangjialiang
48979803e8 ble_mesh: stack: Add check the value of Provisioning Random & Confirmation sent and received by provisioner 2021-06-09 03:24:35 +00:00
Mahavir Jain
f339506324 bt: use generic SPIRAM config option for memory alloc policy 2021-05-17 10:43:42 +00:00
wangjialiang
a5e12d9b63 ble_mesh: stack: Fix provisioning input or output count number should be at least 1
Closes https://github.com/espressif/esp-idf/issues/6863
2021-05-06 06:49:04 +00:00
wangjialiang
dd0fbb2f5e ble_mesh: stack: Fix endianness error in output or input oob data of number
Closes https://github.com/espressif/esp-idf/issues/6862
2021-04-20 06:25:52 +00:00
Angus Gratton
cfde7adb7f esp_ble_mesh: Use standard ESP-IDF asserts
Smaller binary size, means that config options for silent assert or disable
assert will apply
2021-03-03 10:26:57 +11:00
lly
d3cc004803 ble_mesh: stack: Fix deinit server models with no matching id 2021-02-07 11:12:25 +08:00
lly
0c6e61d258 ble_mesh: stack: Fix mbedtls aes ctx not deallocated 2021-02-04 11:24:54 +08:00
lly
0d95760fe4 ble_mesh: stack: Fix hw aes no dma channel for c3 2021-02-03 08:45:06 +00:00
lly
bd2d63ff96 ble_mesh: stack: Enable duplicate scan for c3 2021-02-03 08:45:06 +00:00
Island
b7c404d3ff Merge branch 'bugfix/ble_mesh_proxy_client_net_resend' into 'master'
ble_mesh: stack: Fix proxy client may fail to resend msg

See merge request espressif/esp-idf!9882
2021-01-20 19:21:16 +08:00
Island
1f91e321f1 Merge branch 'bugfix/ble_mesh_node_set_name_status_check' into 'master'
ble_mesh: stack: Remove node set device name return status check

See merge request espressif/esp-idf!12071
2021-01-20 19:20:58 +08:00
lly
3ce6887aaf ble_mesh: stack: Remove node set device name return status check 2021-01-20 14:48:24 +08:00
lly
690642be0e ble_mesh: stack: Use different random for each provisioning 2021-01-20 14:09:44 +08:00
lly
16f5438810 ble_mesh: stack: Fix proxy client may fail to resend msg 2021-01-20 06:04:31 +00:00
lly
0edb86ddb0 ble_mesh: stack: Fix compile warning when log is disabled 2021-01-19 02:09:58 +00:00
lly
80bee1da1f ble_mesh: stack: Add prefix BLE_MESH_ for log related macros 2021-01-19 02:09:58 +00:00
Jiang Jiang Jian
f5e7504000 Merge branch 'nimble/update_nimble-1.3.0-idf' into 'master'
NimBLE: Update NimBLE to latest 1.3.0 release

See merge request espressif/esp-idf!9917
2021-01-18 20:29:10 +08:00
Island
c65a24063d Merge branch 'update/ble_mesh_set_hsl_states' into 'master'
ble_mesh: stack: Enable updating lighting hsl state

See merge request espressif/esp-idf!12025
2021-01-18 13:20:59 +08:00
lly
187fb9d959 ble_mesh: stack: Fix compile warning with BIT macro 2021-01-18 08:59:14 +08:00
lly
3aabf571a8 ble_mesh: stack: Update mesh max conn macro when using bluedroid 2021-01-18 00:54:11 +00:00
Prasad Alatkar
7252c99a14 BLE Mesh: Fix compilation for NimBLE-1.3.0 upgrade by typecasting adv data to void 2021-01-15 16:57:29 +00:00
lly
8aae9860ce ble_mesh: stack: Enable updating lighting hsl state 2021-01-15 20:27:43 +08:00
zwj
7c1c669799 component/bt: add BLE v5.0 feature for bluedroid host 2021-01-15 17:55:12 +08:00
lly
d0901c81f8 ble_mesh: stack: Fix using wrong | for OR between macros 2021-01-07 19:17:45 +08:00
lly
847e408a82 ble_mesh: stack: Fix Node ID adv with wrong timeout 2021-01-06 06:02:18 +00: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
1bb3f693d5 ble_mesh: stack: Move ble scan funcitons to a single file 2020-12-21 09:08:25 +00:00
lly
9be0120d94 ble_mesh: stack: Optimize handling received mesh adv packets 2020-12-21 09:08:25 +00:00
lly
fb531815b0 ble_mesh: stack: Move bt_mesh_rand to mesh_common.c 2020-12-08 15:13:04 +08:00
lly
19c3f38b36 ble_mesh: stack: Remove useless BT_DBG_ENABLED in a few files 2020-12-08 15:13:04 +08:00
lly
b77563abb0 ble_mesh: Replace zephyr integer types with C99 types [Zephyr] 2020-12-08 15:13:04 +08:00
lly
162e11cff3 ble_mesh: stack: Update ARRAY_SIZE definition 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
992ceca71b ble_mesh: stack: Need uuid when adding device for provisioning 2020-11-25 20:51:23 +08:00
lly
db4b87a771 ble_mesh: stack: Provisioner supports receiving heartbeat 2020-11-23 01:28:28 +00:00
lly
2e13e618b5 ble_mesh: stack: Update connection interval to 15ms 2020-11-17 11:58:23 +00:00
lly
6169636769 ble_mesh: stack: Update connection parameters used by Central 2020-11-17 11:58:23 +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
1f61b67ec3 ble_mesh: test: Fix node test function not update role flag 2020-10-29 15:48:06 +08: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
9620a1a568 ble_mesh: stack: Split model Kconfig menu into foundation and others 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
d13e0635a8 ble_mesh: stack: Make some internal static functions inline 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
lly
675c94a9d4 ble_mesh: stack: Introduce a new header file mesh_config.h 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
0d3c724281 ble_mesh: stack: Make mesh buf debug option invisible 2020-10-12 02:26:47 +00:00
lly
d3aa32c2ec ble_mesh: stack: Add mesh device properties v2 definitions
Also fixes wrong characteristic value length of some device
properties.
2020-10-12 00:39:58 +00:00
lly
0b57cdf85b ble_mesh: stack: Move device property to model common part 2020-10-12 00:39:58 +00:00
lly
68a6ccba76 ble_mesh: stack: Store kr phase after value changed [Zephyr] 2020-10-09 08:52:01 +00:00
lly
e286cd845f ble_mesh: stack: Fix rpl not check by proxy cfg [Zephyr] 2020-10-09 08:52:01 +00: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
e14868ff30 ble_mesh: stack: Persistent storage misc fixes
* Fix the issue that deinit node with "erase_flash"
  set to true, but info is not erased from nvs
* Reuse bt_mesh_cfg_reset() when deinit node
* Optimize Provisioner related erase operations
* No store pending timeout will be used when Node
  is not provisioned OR Provisioner is disabled
  and erase operation is performed
* Change the default timeout for settings operation
  to 0, and rpl store rate to 0
2020-09-21 11:46:52 +00:00
lly
cf1f5fe5ad ble_mesh: stack: Check if mesh stack initialized before init vendor client 2020-09-16 02:41:49 +00:00
lly
b453c1268a ble_mesh: stack: Use settings_core_erase when deinit 2020-09-14 08:40:12 +00:00
lly
825ceb726d ble_mesh: stack: Fix storing next net_idx and app_idx 2020-09-14 08:40:12 +00:00
lly
f34c7df26d ble_mesh: stack: Continue restore even if failure happens
Previously we have used this solution for node info
restore. Here use the same solution for other mesh
information restore.
2020-09-14 08:40:12 +00:00
lly
e18ea178b8 ble_mesh: stack: Split model settings store and clear 2020-09-14 08:40:12 +00:00
lly
f8c3818182 ble_mesh: stack: Erase netkey and appkey with key index 2020-09-14 08:40:12 +00:00
lly
80b16c58bb ble_mesh: stack: Add clear hb_pub in settings 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
f010c36366 ble_mesh: stack: Use erase settings functions 2020-09-14 08:40:12 +00:00
lly
5ad4166d41 ble_mesh: stack: Use mutex for settings operation
Also expose the settings functions with the parameter
bt_mesh_nvs_handle_t, which will be used for further
updates.
2020-09-14 08:40:12 +00:00
lly
2bb65fac60 ble_mesh: stack: Add role check before enabling device 2020-09-14 08:40:12 +00:00
lly
ace471c266 ble_mesh: stack: Define a type for mesh nvs handle 2020-09-14 08:40:12 +00:00
lly
1037736300 ble_mesh: stack: Using the latest iv_index for provisioning
Provisioner should always uses the latest IV Index for provisioning.
For example, if the current IV Index is 0x00000001, but prov->iv_index
is still initialized with 0x00000000, and if Provisioner uses prov->
iv_index for provisioning, this will cause the Provisioner failing to
control the node.
So here bt_mesh.iv_index is used instead of prov->iv_index.
2020-09-11 00:47:43 +00:00
lly
8a3ccd855f ble_mesh: nimble: Fix updating ccc handle with wrong value 2020-09-08 00:47:42 +00:00
lly
d6947d0699 ble_mesh: stack: Avoid using assert in mesh stack 2020-09-03 07:17:50 +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
0fcd0bb6b8 ble_mesh: stack: Client model related code clean 2020-08-06 08:45:22 +00:00
lly
e924e5f2f4 ble_mesh: stack: Rename cfg & health client status recv func 2020-08-06 08:45:22 +00:00
lly
36d714ec59 ble_mesh: stack: Check client msg result in common func 2020-08-06 08:45:22 +00:00
lly
02eaaca3d6 ble_mesh: stack: Fix no events for some error conditions 2020-08-06 08:45:22 +00:00
lly
5f6f61f634 ble_mesh: stack: Move client role set to the msg function 2020-08-06 08:45:22 +00:00