Commit Graph

1829 Commits

Author SHA1 Message Date
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
weitianhua
57b695be10 Add global header and change declaration position 2020-09-11 14:31:18 +08:00
weitianhua
04a7771f33 Remove uneccessary macro
Separate AVRC from A2DP when AVRC not Initialized
2020-09-11 14:31:18 +08:00
weitianhua
af52df8b83 Rewrite a2dp clean_up function 2020-09-11 14:31:18 +08:00
weitianhua
87bf47bd90 Add bda_addr for esp_bt_a2dp_disconn_req API
1. Add reaction for a2dp snk & src disconn req when no link up
  2. Change state machine set before EVT upto APP layer in some cases
  3. Add bool open_fail to choose whether post disconnection evt to app layer
2020-09-11 14:31:18 +08: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
Jiang Jiang Jian
74e932c73f Merge branch 'bugfix/btdm_spp_null_ptr_with_dynamic_memory' into 'master'
components/bt: Fix SPP using NULL point with dynamic memory

Closes BT-1024

See merge request espressif/esp-idf!10188
2020-09-10 17:38:53 +08:00
Ivan Grokhotkov
b6467257b9 Merge branch 'feature/cmock_component' into 'master'
cmock as component replacing unity

See merge request espressif/esp-idf!9859
2020-09-10 16:06:20 +08:00
lly
8a3ccd855f ble_mesh: nimble: Fix updating ccc handle with wrong value 2020-09-08 00:47:42 +00:00
Island
122874bf86 Merge branch 'bugfix/ble_mesh_remove_assert' into 'master'
ble_mesh: stack: Avoid unnecessary assert in mesh stack

See merge request espressif/esp-idf!10118
2020-09-07 21:45:27 +08:00
baohongde
898baf20f8 components/bt: Fix SPP using NULL point with dynamic memory 2020-09-07 15:41:30 +08:00
Jiang Jiang Jian
472c40f84e Merge branch 'bugfix/l2cap_link_timeout_llcp_prog_btu_wtd' into 'master'
Bugfix/l2cap link timeout llcp prog btu wtd

Closes BT-941 and BT-973

See merge request espressif/esp-idf!10119
2020-09-07 14:10:46 +08:00
Jiang Jiang Jian
b89d1a47f0 Merge branch 'bugfix/change_pcm_config_position' into 'master'
bugfix/ Change PCM config to the right position

See merge request espressif/esp-idf!10185
2020-09-05 13:48:04 +08:00
wangcheng
d635320871 component/bt: Fixed the watchdog timeout of btu task during multi-connection 2020-09-04 16:21:40 +08: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
Jakob Hasse
20c068ef3b cmock: added cmock as component
* changing dependencies from unity->cmock
* added component.mk and Makefile.projbuild
* ignore test dir in gen_esp_err_to_name.py
* added some brief introduction of CMock in IDF
2020-09-02 16:38:37 +08:00
Jiang Jiang Jian
36720504f9 Merge branch 'bugfix/add_protection_for_spp_api' into 'master'
componnet_bt:/ Add protection for btc and some comment correction

Closes BT-899 and BTCI-78

See merge request espressif/esp-idf!9329
2020-09-02 12:01:34 +08:00
weitianhua
9b57366908 Change PCM config to the right position 2020-09-01 16:05:01 +08:00
Island
cfd13d8c90 Merge branch 'bugfix/btdm_blufi_data_sequence_not_reset_after_disconnect' into 'master'
component/bt: fix Blufi sends data after disconnecting the seq still increase

See merge request espressif/esp-idf!10217
2020-09-01 15:38:26 +08:00
XieWenxiang
e92c2f553b component/bt: fix Blufi sends data after disconnect the seq still increase 2020-09-01 09:54:14 +08:00
Jiang Jiang Jian
16e0ff273c Merge branch 'bugfix/enter_sniff_mode_attr_err' into 'master'
bugfix/enter_sniff_mode_attr_err

See merge request espressif/esp-idf!9407
2020-08-31 14:28:57 +08:00
xiewenxiang
5979111109 component/bt: add link role param for gatt connection event 2020-08-28 08:47:54 +08:00
wangcheng
f8fd58d7f6 components/bt: Fixed the state not synchronized between controller and host when disconnected. 2020-08-27 14:46:27 +08:00
weitianhua
8a9bfd3e92 Add protection for rfcomm close API in SPP 2020-08-26 15:17:28 +08:00
weitianhua
7e772d2195 Add some debug log for bt:
1. Add logs for SPP not enabled successfully
2. Add information to Applicatioin layer that the A2DP is connecting to peer device

Regular BTC and BTU Task name & Add BTC Init protection

1. Regular the BTC Task Name to Close a Github issue

   Closes https://github.com/espressif/esp-idf/issues/4966

2. Add BTC Init failure protection

3. Regular BTU Task Name with BTC

4. Correct the comment of
   a. SDP_ServiceSearchRequest and SDP_ServiceSearchRequest2
   b. l2cu_create_conn_after_switch

5. Correct comment of esp_bt_hf_vra();

6. Fix cpp compilier region
2020-08-26 15:17:28 +08:00
weitianhua
d43f3539ee Workaround for a hardware bug in Slave sniff mode. Because of Slave dose not start a sniff timeout count when slave send a ACL package. 2020-08-26 15:00:29 +08:00
wangcheng
6a9becd75f Fixed assert(9, 10), When rx and evt_end interrupts exist at the same time, use the information of rx to determine the execution order 2020-08-23 13:42:40 +00:00
baohongde
060a36352c components/bt: Add mode change event 2020-08-12 09:20:04 +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
lly
ad39479804 ble_mesh: stack: Remove some not used client parameters 2020-08-06 08:45:22 +00:00
lly
1d6f653640 ble_mesh: stack: Remove some not used variables & functions 2020-08-06 08:45:22 +00:00
lly
7542c86d9c ble_mesh: stack: Update client model msg send 2020-08-06 08:45:22 +00:00
Jiang Jiang Jian
97b47f117b Merge branch 'bugfix/bluedroid_ble_provisioning_gatt_deregister_fix' into 'master'
Bluedroid: Fix BLE provisioning failure with bluedroid stack

See merge request espressif/esp-idf!9833
2020-08-05 23:50:14 +08:00
Island
313f4a97d6 Merge branch 'bugfix/btdm_blufi_send_longer_custom_data_will_congested' into 'master'
component/bt: fix Blufi sends longer customer data  will will lead congested

See merge request espressif/esp-idf!9887
2020-08-03 20:54:23 +08:00
XieWenxiang
fa729f3805 component/bt: fix Blufi sends longer customer data will will lead congested 2020-08-03 14:55:12 +08:00
Jiang Jiang Jian
2ad8f8c9d2 Merge branch 'bugfix/ADV_UNDERRUN_assert_1024' into 'master'
components/bt: Fix ble assert(1024,0), ADV_UNDERRUN error

Closes BT-726

See merge request espressif/esp-idf!9479
2020-07-30 21:18:11 +08:00
sushant.chougule
70eb9abdee Bluedroid: Fix BLE provisioning failure with bluedroid stack 2020-07-28 21:54:05 +05:30
Ivan Grokhotkov
16c73edc67 Merge branch 'refactor/add_alias_name_for_ets_common_api' into 'master'
esp_rom: extract common ets apis into esp_rom_sys.h

See merge request espressif/esp-idf!9701
2020-07-28 15:04:55 +08:00
Jiang Jiang Jian
1ec35ba5a7 Merge branch 'bugfix/bt_linkup_fallback_event' into 'master'
Bluedroid: Fixes cases having fallback to link up event.

Closes BT-944

See merge request espressif/esp-idf!9671
2020-07-27 16:09:42 +08:00
morris
2917651478 esp_rom: extract common ets apis into esp_rom_sys.h 2020-07-27 15:27:01 +08:00
wangcheng
43f1e43215 component/bt: Fix ble IFS_UNDERRUN, ADV_UNDERRUN error 2020-07-27 04:09:17 +00:00
sushant.chougule
a7d8d2c8da Bluedroid: Fix gatt clcb allocation and deallocation error 2020-07-25 01:48:48 +00:00
Prasad Alatkar
0b56a27e4a NimBLE: Add Non-Resolvable private address support and misc bug fixes
- Merges https://github.com/espressif/esp-nimble/pull/12
- Fixes repeated pairing failure in RPA feature

Closes https://github.com/espressif/esp-idf/issues/5530
2020-07-22 14:10:01 +05:30
Chinmay Chhajed
4a0c137188 Bluedroid: Fixes cases having fallback to link up event.
Signed-off-by: Chinmay Chhajed <chinmay.chhajed@espressif.com>
2020-07-17 17:11:33 +05:30
lly
4be5563fdb ble_mesh: stack: Fix recv health current status incorrectly 2020-07-17 02:53:40 +00:00
Jiang Jiang Jian
84aebc6a78 Merge branch 'feature/bluedroid_link_based_dynamic_allocation' into 'master'
Bluedroid stack dynamic allocation changes to optimise DRAM usage

See merge request espressif/esp-idf!9461
2020-07-16 00:06:10 +08:00
sushant.chougule
0583a04969 Bluedroid stack dynamic allocation changes to optimise DRAM usage
Structures allocated dynamically:
tACL_CONN, tBTM_PM_MCB, tBTM_SEC_DEV_REC, tGATT_TCB, tGATT_CLCB, tL2C_LCB, tL2C_CCB, tSDP_RECORD
Total dynamic allocation size ~19KB.
Peak dram usage reduced by ~12KB when in BT classic + BLE scenario(1 a2dp sink + 1 BLE gatt server)
2020-07-15 14:44:10 +05:30
Jiang Jiang Jian
d65af31309 Merge branch 'bugfix/fix_hci_max_page_num' into 'master'
bugfix/Support for more Bluetooth HID devices

Closes IDFGH-3515

See merge request espressif/esp-idf!9621
2020-07-15 15:51:00 +08:00
Jiang Jiang Jian
170b4c9eff Merge branch 'bugfix/fix_get_bond_device_list' into 'master'
bugfix/fix esp_bt_gap_get_bond_device_list bug

Closes BT-852 and BTCI-88

See merge request espressif/esp-idf!9542
2020-07-15 15:50:32 +08:00
Li Qi Gan
f6f2d9780b add API esp_spp_stop_srv() and fix the error parameter in esp-idf/examples/bluetooth/bluedroid/classic_bt/bt_spp_initiator/main/example_spp_initiator_demo.c
Closes https://github.com/espressif/esp-idf/issues/5409
Closes https://github.com/espressif/esp-idf/pull/5408

See merge request espressif/esp-idf!9114
2020-07-15 15:49:37 +08:00
DerfJagged
5705c786e3 Support for more Bluetooth HID devices
Some Bluetooth devices - such as an Xbox One S controller (model 1708) - report more than two external features pages and are rejected immediately. Pages 1 and 2 are marked as unhandled in btm_devctl.c anyway, so there is no reason to block devices with more pages.
(IDFGH-3515)

Signed-off-by: liqigan <liqigan@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/5481
Closes https://github.com/espressif/esp-idf/issues/5470
2020-07-15 11:54:26 +08:00
Jiang Jiang Jian
0376b23c7c Merge branch 'component/seperate_bta_jv_l2c' into 'master'
component_bt:/ separate BTA_JV_L2CAP for less bin size

See merge request espressif/esp-idf!9158
2020-07-15 11:38:16 +08:00
weitianhua
8f84930c5c Redesign Kconfig.in BT components 2020-07-14 11:01:02 +08:00
weitianhua
4167fc3438 Enable pcm config 2020-07-14 10:25:13 +08:00
Island
b6b4d41044 Merge branch 'bugfix/tx_rx_data_length' into 'master'
components/bt: Change the default value of conn_max_tx_octets to 251.

See merge request espressif/esp-idf!9409
2020-07-13 19:17:08 +08:00
Jiang Jiang Jian
583f6e5e16 Merge branch 'docs/fix_event_typo' into 'master'
docs/fix event typo

Closes IDFGH-3488

See merge request espressif/esp-idf!9376
2020-07-12 21:23:50 +08:00
Island
9a71a74d2d Merge branch 'bugfix/ble_mesh_misc_updates' into 'master'
Bugfix/ble mesh misc updates

Closes BLEMESH-223

See merge request espressif/esp-idf!9492
2020-07-10 21:50:16 +08:00
wangcheng
b60c496296 components/bt: Change the default value of conn_max_tx_octets to 251. 2020-07-10 19:48:32 +08:00
Jiang Jiang Jian
0ca62e4f16 Merge branch 'bugfix/fix_ag_return_result' into 'master'
bugfix/Fix error of AG API return line

Closes BTCI-102

See merge request espressif/esp-idf!9565
2020-07-10 16:51:32 +08:00
Jiang Jiang Jian
7639f20fa5 Merge branch 'bugfix/buff_semaphore_not_free' into 'master'
component/bt: Fixed ble memory leak issue, buff_semaphore was not released.

See merge request espressif/esp-idf!9507
2020-07-10 16:18:55 +08: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
f4846cca4b ble_mesh: stack: Make proxy server & client functions clear 2020-07-10 14:12:58 +08:00
weitianhua
c40953f4e0 Fix error of AG API return line
Closes https://github.com/espressif/esp-idf/issues/5554
2020-07-10 10:50:27 +08:00
lly
82d4bd280b ble_mesh: stack: Add proxy cfg pdu length check 2020-07-10 00:57:09 +00:00
lly
aeb44745bf ble_mesh: stack: Rework using dev flag to check scan status
Different bluetooth host has different behaviors, so it's better
to maintain a scan check mechanism of BLE Mesh itself.
Fixes an issue when only PB-GATT is enabled for node, which will
output a scan error log when the device is provisioned.
2020-07-10 00:57:09 +00:00
lly
fd6071a0fc ble_mesh: stack: Add more checks about input prov bearers 2020-07-10 00:57:09 +00:00
Island
5d970c0e8c Merge branch 'feat/ble_mesh_use_iram_for_mem_alloc' into 'master'
Feat/ble mesh use iram for mem alloc

See merge request espressif/esp-idf!9449
2020-07-09 23:06:27 +08:00
boblane
4293f0320f fix esp_bt_gap_get_bond_device_list bug
Closes https://github.com/espressif/esp-idf/issues/5395
2020-07-09 11:58:10 +08:00
weitianhua
abbf19926e Seperate BTA_JV_L2CAP for less bin size 2020-07-08 17:50:19 +08:00
lly
8005d07e07 ble_mesh: stack: Add two application macros for TTL 2020-07-08 08:30:54 +00:00
lly
edb088e5db ble_mesh: stack: Update send_ttl in btc when recv a msg
Update send_ttl mainly for server models. When a server model
receives a message, and the status is required to be replied
by the application, we need to set send_ttl to the msg context.
If send_ttl is not updated in btc, and the applcation does not
set the TTL either, then the status will be replied with TTL=0,
which may cause the client side (e.g. the phone App) failed to
receive the status.

Closes https://github.com/espressif/esp-idf/issues/5300
2020-07-08 08:30:54 +00:00
Jiang Jiang Jian
5da526a0cb Merge branch 'bugfix/bt_acl_tx_handler_skip' into 'master'
Fixes ACL TX handler functioning.

Closes BCI-204

See merge request espressif/esp-idf!9459
2020-07-08 16:02:53 +08:00
lly
076fee8dde ble_mesh: stack: Rename mesh adv queue and relay queue 2020-07-08 01:45:01 +00:00
lly
f5fcee186f ble_mesh: stack: Use macros for adv task name & prio 2020-07-08 01:45:01 +00:00
lly
89715d7010 ble_mesh: stack: Make freertos static allocation visible 2020-07-08 01:45:01 +00:00
lly
cba3733d29 ble_mesh: stack: Add a option of using IRAM for memory allocation 2020-07-08 01:45:01 +00:00
wangcheng
7d39074d57 component/bt: Fixed ble memory leak issue, buff_semaphore was not released. 2020-07-07 21:00:56 +08:00
Chinmay Chhajed
9bac16fcec Fixes ACL TX handler functioning.
ACL TX handler was never being called. Changed it's caller function so
that it is called properly.
2020-07-02 17:11:29 +05:30
lly
6ca4ea1a1f ble_mesh: stack: Update some fast prov functions 2020-07-01 13:26:06 +00:00
lly
64e76ee019 ble_mesh: stack: Move fast prov functions to a single file 2020-07-01 13:26:06 +00:00
Island
a97a16202e Merge branch 'bugfix/ble_mesh_compile_error' into 'master'
bugfix: ble mesh proxy compile error

See merge request espressif/esp-idf!9334
2020-07-01 11:17:26 +08:00
Island
b91f05ba74 Merge branch 'bugfix/ble_mesh_set_recv_rssi' into 'master'
Bugfix/ble mesh set recv rssi

Closes IDFGH-3556 and BMCI-96

See merge request espressif/esp-idf!9381
2020-07-01 11:13:25 +08:00
Jiang Jiang Jian
f84ddd983d Merge branch 'feature/bt_secure_conn_downgrade_check' into 'master'
Bluedroid: Authentication fixes in Legacy and Secure Connection.

Closes BLE-60

See merge request espressif/esp-idf!8541
2020-06-30 11:24:55 +08:00
lly
6aef6c5f1c ble_mesh: stack: Copy recv_rssi for other received messages
Follow the commit: 2b80cb6883,
copy the recv_rssi for other mesh messages.
2020-06-29 20:07:42 +08:00
mbroek
2b80cb6883 When a generic mesh model message is received "bt_mesh_generic_server_cb_evt_to_btc" copies the
ctx values to cb_params for the mesh stack.

recv_rssi was not copied.

This means the rssi could not be read when receiving generic server messages using ble_mesh.
2020-06-29 19:54:23 +08:00
liminyang
02f3d39858 docs:fix event typo
1.In the description of the ESP_API header file, it should be the event that the application layer needs to handle, not the BTA layer.
2.Fix name typo of BTA_GATTS_CREATE_SRVC_EVT event

Closes https://github.com/espressif/esp-idf/issues/5446
2020-06-29 11:57:36 +08:00
lly
c8112454c3 ble_mesh: stack: Fix compile error when only proxy enabled
Also remove some redundant CONFIG_BLE_MESH_PROXY checks, because
when the following options are satisfied, the CONFIG_BLE_MESH_PROXY
option will be selected mandatorily.
2020-06-28 23:09:47 +00:00