Commit Graph

1775 Commits

Author SHA1 Message Date
Jiang Jiang Jian
e2cd3495a1 Merge branch 'bugfix/confirmed_bugfix_from_baidu_proj_4.0' into 'release/v4.0'
Fix BT controller dead issue caused by clk overflow [backport v4.0]

See merge request espressif/esp-idf!10546
2020-12-22 12:47:44 +08:00
weitianhua
66be657233 Fix crash cause by calling a2dp deinit when connected 2020-12-21 10:27:04 +08:00
weitianhua
cd46129b49 Free ACL RX Buffer in EM when disconnecting 2020-12-17 20:35:57 +08:00
weitianhua
911b90eb21 Confirmed bugfix from Baidu Project 2020-12-17 20:35:57 +08:00
weitianhua
62f781553b Enable PCM config in Host 2020-12-17 20:35:57 +08:00
Artem Godlevskyi
ce999fe02e Added missing MYNEWT_VAL_BLE_L2CAP_COC_MPS definition
Signed-off-by: Prasad Alatkar <prasad.alatkar@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/5825
2020-12-17 07:19:59 +00:00
Prasad Alatkar
80ad3c1337 NimBLE: Fix misc coverity issues in NimBLE host
- NimBLE NVS : Additional check to account for NVS operation failure
- NimBLE host: Fix minor bug in ble_eddystone_set_adv_data_gen
- NimBLE host: remove recursive call, upstream PR: https://github.com/apache/mynewt-nimble/pull/857
2020-12-17 07:19:59 +00:00
lly
85e3b86fd7 ble_mesh: stack: Need uuid when adding device for provisioning 2020-12-15 11:59:11 +00:00
Island
0182e53431 Merge branch 'feature/btdm_support_some_ble_new_features_v4.0' into 'release/v4.0'
components/bt: backport some new features for Bluedroid BLE(release v4.0)

See merge request espressif/esp-idf!11453
2020-12-03 19:04:02 +08:00
xiewenxiang
f8581b40fc component/bt: support BLE Read Attribute value by UUID 2020-12-03 16:47:13 +08:00
xiewenxiang
2505769c0b component/bt: refactor ble random address setting 2020-12-03 16:47:04 +08:00
XieWenxiang
8db16a50ae component/bt: support BLE Application Layer Encryption key size check 2020-12-03 16:46:53 +08:00
XieWenxiang
069325a7ed component/bt: support BLE Authorization 2020-12-03 16:44:45 +08:00
xiewenxiang
b585eccf36 component/bt: fix incorrect encryption flag setting 2020-12-03 16:36:19 +08:00
Jiang Jiang Jian
6823364442 Merge branch 'bugfix/blufi_config_potential_double_free_v4.0' into 'release/v4.0'
Bugfix/blufi config potential double free v4.0

See merge request espressif/esp-idf!11165
2020-12-02 17:03:27 +08:00
lly
e3ddd91fb7 ble_mesh: stack: Fix wrong declaration of node bind AppKey func 2020-11-25 11:02:00 +08:00
lly
f151771bce ble_mesh: stack: Add node local netkey/appkey func 2020-11-25 11:01:46 +08:00
wangcheng
e7375c79b0 component/bt: Add a macro to control the compilation of blufi. 2020-11-24 10:54:39 +08:00
wangcheng
3adfbaeb2f component/bt: Fix a potential double free error. 2020-11-24 10:46:25 +08:00
wangcheng
724d863116 blufi: fix an error caused by incorrect conn_id parameters. 2020-11-24 10:46:22 +08:00
lly
4391a24c2f ble_mesh: stack: Add a Kconfig option to make Health Server model optional 2020-11-23 20:13:06 +08:00
lly
b71b99b7be ble_mesh: stack: Split model Kconfig menu into foundation and others 2020-11-23 20:13:06 +08:00
lly
7f411c9cb7 ble_mesh: stack: Add Kconfig options to make server models optional 2020-11-23 20:13:05 +08:00
lly
440b94d272 ble_mesh: stack: Use Kconfig option to make client models optional 2020-11-23 20:13:05 +08:00
lly
bc163f982d ble_mesh: stack: Make some internal static functions inline 2020-11-23 20:13:05 +08:00
lly
fe86760ff6 ble_mesh: stack: Add a Kconfig option to make deinit optional 2020-11-23 20:13:04 +08:00
lly
58ac97cb4c ble_mesh: stack: Introduce a new header file mesh_config.h 2020-11-23 20:13:04 +08:00
Island
1d771d081b Merge branch 'bugfix/ble_mesh_proxy_cfg_replay_v4.0' into 'release/v4.0'
Bugfix/ble mesh proxy cfg replay (v4.0)

See merge request espressif/esp-idf!11337
2020-11-23 20:08:55 +08:00
Island
ab055d2421 Merge branch 'bugfix/ble_mesh_node_deinit_v4.0' into 'release/v4.0'
ble_mesh: stack: Persistent storage misc fixes (v4.0)

See merge request espressif/esp-idf!11336
2020-11-23 20:01:28 +08:00
Jiang Jiang Jian
1e3eed8265 Merge branch 'bugfix/fix_spp_read_flow_control_v4.0' into 'release/v4.0'
component_bt/fix spp flow control and vfs write [backport 4.0]

See merge request espressif/esp-idf!11074
2020-11-23 15:49:54 +08:00
lly
5c7960de0d ble_mesh: stack: Store kr phase after value changed [Zephyr] 2020-11-23 15:07:14 +08:00
lly
613616b445 ble_mesh: stack: Fix rpl not check by proxy cfg [Zephyr] 2020-11-23 15:07:14 +08:00
lly
97a54a9818 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-11-23 15:01:50 +08:00
Island
39d213378c Merge branch 'bugfix/ble_mesh_settings_fix_v4.0' into 'release/v4.0'
Bugfix/ble mesh settings fix (v4.0)

See merge request espressif/esp-idf!11326
2020-11-23 14:42:18 +08:00
liqigan
023f44e348 replace list and ringbuffer with fixed queue
use eventgroup to sync spp_vfs_write

each connection has a switch_delay_timer not sharing a one

revert functions like spp_find_slot_by_xxx

fix vfs read bug when peer close
2020-11-23 12:22:30 +08:00
liqigan
2765d5b829 move flow control to btc layer
defer free slot in btc layer when receive BTA_JV_RFCOMM_CLOSE_EVT
2020-11-23 12:22:30 +08:00
liqigan
ba3f69feea add event when calling spp API failed 2020-11-23 12:22:30 +08:00
lly
004393ec5f ble_mesh: stack: Update connection interval to 15ms 2020-11-23 08:53:37 +08:00
lly
b1383f5c0f ble_mesh: stack: Update connection parameters used by Central 2020-11-23 08:53:37 +08:00
lly
4fa39cae98 ble_mesh: stack: Use settings_core_erase when deinit 2020-11-23 08:45:04 +08:00
lly
666488a940 ble_mesh: stack: Fix storing next net_idx and app_idx 2020-11-23 08:45:04 +08:00
lly
3421336d66 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-11-23 08:45:04 +08:00
lly
ad1d5764e2 ble_mesh: stack: Split model settings store and clear 2020-11-23 08:45:04 +08:00
lly
db4a344a33 ble_mesh: stack: Erase netkey and appkey with key index 2020-11-23 08:45:04 +08:00
lly
29c7645093 ble_mesh: stack: Add clear hb_pub in settings 2020-11-23 08:45:04 +08:00
lly
692ccf774b 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-11-23 08:45:04 +08:00
lly
034906c6a8 ble_mesh: stack: Use erase settings functions 2020-11-23 08:45:04 +08:00
lly
69131a11ed 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-11-23 08:45:04 +08:00
lly
8cbc93101e ble_mesh: stack: Add role check before enabling device 2020-11-23 08:45:03 +08:00
lly
c39097a601 ble_mesh: stack: Define a type for mesh nvs handle 2020-11-23 08:45:03 +08:00
lly
8d9b0909a3 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-11-22 09:26:41 +00:00
Jiang Jiang Jian
747f281325 Merge branch 'component/seperate_bta_jv_l2c_4.0' into 'release/v4.0'
component_bt:/ seperate bta jv l2c  [backport v4.0]

See merge request espressif/esp-idf!9646
2020-11-21 22:34:00 +08:00
Jiang Jiang Jian
4e9de58779 Merge branch 'optimize/ble_mesh_provisioner_delete_dev_v4.0' into 'release/v4.0'
ble_mesh: stack: Optimize Provisioner delete device function (v4.0)

See merge request espressif/esp-idf!10605
2020-11-21 17:54:25 +08:00
Jiang Jiang Jian
2fa70c8aed Merge branch 'feat/ble_mesh_device_properties_v2_v4.0' into 'release/v4.0'
Feat/ble mesh device properties v2 (v4.0)

See merge request espressif/esp-idf!10789
2020-11-21 17:54:14 +08:00
Jiang Jiang Jian
2a93a30c42 Merge branch 'bugfix/ble_mesh_check_stack_init_v4.0' into 'release/v4.0'
ble_mesh: stack: Check if mesh stack initialized before init vendor client (v4.0)

See merge request espressif/esp-idf!10483
2020-11-21 17:53:11 +08:00
Jiang Jiang Jian
d101748448 Merge branch 'bugfix/ble_mesh_prov_iv_index_v4.0' into 'release/v4.0'
ble_mesh: stack: Using the latest iv_index for provisioning (v4.0)

See merge request espressif/esp-idf!10418
2020-11-21 17:52:20 +08:00
weitianhua
ca00390174 Seperate BTA_JV_L2CAP for less bin size 2020-11-21 09:38:46 +00:00
Jiang Jiang Jian
6d23d64b18 Merge branch 'bugfix/fix_bredr_read_rssi_delta_v4.0' into 'release/v4.0'
Bugfix/Fix Read Rssi Delta Bug in Bredr [backport v4.0]

See merge request espressif/esp-idf!10805
2020-11-20 15:36:39 +08:00
Jiang Jiang Jian
00b9f48081 Merge branch 'bugfix/add_clear_bond_complete_evt_4_0' into 'release/v4.0'
componenet_bt/bugfix: add remove bond device complete event 4.0

See merge request espressif/esp-idf!10656
2020-11-20 13:50:13 +08:00
Jiang Jiang Jian
befde68eea Merge branch 'bugfix/btdm_blufi_data_sequence_not_reset_after_disconnect_v4.0' into 'release/v4.0'
component/bt: fix Blufi sends data after disconnect the seq still increase(backport v4.0)

See merge request espressif/esp-idf!10239
2020-11-16 19:38:22 +08:00
baohongde
8f3fe29deb components/bt: Replace task post with btc_inter_profile_call, when post message from btc_dm to btc_gap 2020-11-12 19:23:10 +08:00
baohongde
19ef328f8e components/bt: Fix clear bond fail when connected without ble included 2020-11-12 19:18:52 +08:00
xiongweichao
e51818f6fc add remove bond device complete event 2020-11-12 19:18:52 +08:00
Jiang Jiang Jian
e9ba0e05f2 Merge branch 'bugfix/nimble_host_rcv_pkt_length_check_v4.0' into 'release/v4.0'
NimBLE: host_rcv_pkt event buf size check. (v4.0)

See merge request espressif/esp-idf!10760
2020-11-12 14:20:29 +08:00
Jiang Jiang Jian
a69ff28c6f Merge branch 'bugfix/bredr_bugfix_release_for_qa_dummy_disconnect_4_0' into 'release/v4.0'
Bugfix/bredr bugfix release for qa dummy disconnect 4.0

See merge request espressif/esp-idf!10647
2020-11-12 14:18:53 +08:00
Jiang Jiang Jian
3c9833eaf9 Merge branch 'bugfix/add_protection_for_spp_api_4.0' into 'release/v4.0'
Bugfix/add protection for spp api [backport v4.0]

See merge request espressif/esp-idf!10283
2020-11-12 14:15:41 +08:00
Jiang Jiang Jian
e547aae7b8 Merge branch 'bugfix/add_disconn_req_action_when_no_link_4.0' into 'release/v4.0'
Bugfix/add disconn req action when no link [backport v4.0]

See merge request espressif/esp-idf!10510
2020-11-12 14:14:55 +08:00
Island
134b21c5b2 Merge branch 'bugfix/ble_mesh_autorsp_description_v4.0' into 'release/v4.0'
esp_ble_mesh: api: fixed comment about autoresp (v4.0)

See merge request espressif/esp-idf!10890
2020-11-10 16:42:50 +08:00
Island
1214f343ab Merge branch 'optimize/ble_mesh_make_buf_config_invisible_v4.0' into 'release/v4.0'
ble_mesh: stack: Make mesh buf debug option invisible (v4.0)

See merge request espressif/esp-idf!10796
2020-11-10 16:42:34 +08:00
Island
fb9df6388f Merge branch 'bugfix/fix_node_test_func_not_set_role_v4.0' into 'release/v4.0'
ble_mesh: test: Fix node test function not update role flag (v4.0)

See merge request espressif/esp-idf!11042
2020-11-10 16:42:22 +08:00
Island
85b71109d0 Merge branch 'bugfix/ble_mesh_nimble_ccc_handle_v4.0' into 'release/v4.0'
ble_mesh: nimble: Fix updating ccc handle with wrong value (v4.0)

See merge request espressif/esp-idf!10356
2020-11-09 14:35:47 +08:00
lly
b8470fba75 ble_mesh: stack: Avoid using assert in mesh stack 2020-11-09 02:20:19 +00:00
lly
0f7a42cfbb ble_mesh: nimble: Fix updating ccc handle with wrong value 2020-11-09 02:17:46 +00:00
lly
037b2fce46 ble_mesh: test: Fix node test function not update role flag 2020-10-29 15:50:44 +08:00
liqigan
a11e5b399e 1. fix read rssi delta bug in bredr
2. modify read rssi related function names

Closes https://github.com/espressif/esp-idf/issues/5660
2020-10-28 11:50:47 +00:00
wangcheng
4ae63961cd components/bt: fixed tx_prog insert error 2020-10-26 13:24:17 +08:00
andreachiara
2270241f55 esp_ble_mesh: api: fixed comment about autoresp 2020-10-19 11:05:56 +08:00
lly
097075dcc8 ble_mesh: stack: Make mesh buf debug option invisible 2020-10-12 14:17:22 +08:00
lly
88cc674e11 ble_mesh: stack: Add mesh device properties v2 definitions
Also fixes wrong characteristic value length of some device
properties.
2020-10-12 10:17:49 +08:00
lly
da81ff2263 ble_mesh: stack: Move device property to model common part 2020-10-12 10:17:48 +08:00
wangcheng
e9dfea8421 components/bt:btdm fix cache disable crash, insert the llcp packet to the top of the tx_prog 2020-10-11 15:20:40 +08:00
Chinmay Chhajed
7af4c6f840 components/bt: Fix for HCI desync deadlock issue in BLE controller 2020-10-10 16:35:18 +08:00
lly
2761b461dc 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-10-10 01:09:04 +00:00
Jiang Jiang Jian
c783abc2e3 Merge branch 'bugfix/assert_rx_link_v4.0_fix_mr_v4.0' into 'release/v4.0'
fix assert(10,9), when missing evt_end or rx and evt_end come the same time v4.0.

See merge request espressif/esp-idf!10422
2020-10-09 19:54:06 +08:00
Chinmay Chhajed
3b670f1f8b NimBLE: host_rcv_pkt event buf size check.
Check if the size of HCI event buffer is greater than the received HCI
packet. If not then abort with the error message.
2020-10-09 09:32:14 +05:30
xiongweichao
82140dd840 1.revert dummy command
2.fix send MEDIA_CTRL command in disconnect
2020-09-28 11:28:22 +08:00
xiongweichao
8e9f4e719d 1.fix test case dummy
2.fix sink send media control ESP_A2D_MEDIA_CHECK_SRC_RDY
2020-09-28 11:28:08 +08:00
weitianhua
53c57cf2a3 Redesign separating AVRC & A2DP
1. Add g_av_with_rc to avrc_tg_init function
2. Remove g_av_open_fail
3. Add comment in API files
4. Add a2dp init & deinit state variable to inidcate a2dp statement
2020-09-18 14:14:40 +08:00
weitianhua
98e9f62dda Add global header and change declaration position 2020-09-18 14:14:34 +08:00
weitianhua
ca2fff3b51 Remove uneccessary macro
Separate AVRC from A2DP when AVRC not Initialized
2020-09-18 14:14:27 +08:00
weitianhua
7f66230e9e Rewrite a2dp clean_up function 2020-09-18 14:14:20 +08:00
weitianhua
a3ca473dd4 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-18 14:14:11 +08:00
lly
2b81af52aa ble_mesh: stack: Check if mesh stack initialized before init vendor client 2020-09-17 11:27:00 +08:00
wangcheng
e3ecb8d073 fix assert(10,9), when missing evt_end or rx and evt_end come the same time 2020-09-14 10:48:59 +08:00
weitianhua
f97188d2d3 Add protection for rfcomm close API in SPP 2020-09-14 10:06:22 +08:00
weitianhua
f38d93f73c 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-09-14 10:06:22 +08:00
lly
a92247d461 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 11:01:17 +08:00
baohongde
9263b84f37 components/bt: Fix SPP using NULL point with dynamic memory 2020-09-07 15:46:09 +08:00
Jiang Jiang Jian
0fda05cc83 Merge branch 'bugfix/l2cap_link_timeout_llcp_prog_btu_wtd_v4.0' into 'release/v4.0'
Bugfix/l2cap link timeout llcp prog btu wtd v4.0

See merge request espressif/esp-idf!10253
2020-09-07 14:18:09 +08:00
Jiang Jiang Jian
5812a935ba Merge branch 'feature/esp_spp_stop_srv_v4.0' into 'release/v4.0'
bugfix/Add API esp_spp_stop_srv and fix collection of SPP [backport v4.0]

See merge request espressif/esp-idf!10013
2020-09-04 20:00:41 +08:00