Commit Graph

245 Commits

Author SHA1 Message Date
wangmengyang
da4108dd1e component/bt: stop to initiate AVDTP connection on failure of A2DP service discovery
In opening state of AVDTP connection, if SDP client fails to get valid A2DP service record\
from peer SDP server, then do not initiate AVDTP connection request
2018-09-13 17:58:00 +08:00
wangmengyang
01994059e2 component/bt: bugfix that A2DP sink device can be connected by another A2DP sink device
In pevious implementation, A2DP sink will register an A2DP source Stream End Point(SEP) although the SEP is not\
supposed to be used. Now remove the unused SEP for source so that only one role of A2DP can be supported at one
time. Service record in local SDP server only includes at most one service for A2DP sink role or source
2018-09-13 17:58:00 +08:00
Jiang Jiang Jian
35785d08fd Merge branch 'feature/btdm_legacy_paring_v3.1' into 'release/v3.1'
component/bt: Add Legacy Pairing (backport 3.1)

See merge request idf/esp-idf!3193
2018-09-07 14:44:19 +08:00
baohongde
95c5805088 component/bt: Add Legacy Pairing (backport 3.1)
A cherry-pick of MR !3057
2018-09-04 20:59:03 +08:00
wangmengyang
7c6d447938 component/bt: bugfix for incorrect length of HCI SCO packet size in HFP resulted from uninitialized data buffer length 2018-09-04 20:24:00 +08:00
Hrishikesh Dhayagude
7ffd68cac2 components/bt: Fix a probable memory leak for BTA_GATTS_CONF_EVT event (backport v3.1)
Multiple modules register their callback BTA_GATTS_AppRegister().

If any of the callbacks do not free the allocated pointer in
BTA_GATTS_CONF_EVT event, then this can result in memory leak.

So, free the pointer after the callback function is called and remove
the calls to free in the callback functions as it is now not required

Signed-off-by: Hrishikesh Dhayagude <hrishi@espressif.com>
2018-08-27 12:03:20 +05:30
wangmengyang
78c083325f component/bt: modify the invalid retransmission setting for SCO link in HFP 2018-08-08 14:40:22 +08:00
Ivan Grokhotkov
bf281b31ec Merge branch 'bugfix/remove_bt_dependency_on_lwip_header_v3.1' into 'release/v3.1'
Bugfix/remove bt dependency on lwip header (backport v3.1)

See merge request idf/esp-idf!2907
2018-08-01 17:40:37 +08:00
Mahavir Jain
acb3b6fee2 bluedroid: remove dependency on arpa/inet.h include
Signed-off-by: Mahavir Jain <mahavir@espressif.com>
2018-08-01 12:02:11 +05:30
zhiweijian
970502f904 Component/bt: fix gattc get count invalid 2018-07-31 15:38:00 +08:00
Jiang Jiang Jian
b31e16039e Merge branch 'bugfix/btdm_fix_gattc_register_multi_srvc_chg_v3.1' into 'release/v3.1'
Component/bt: fix register multi service change when register multi gattc for v3.1

See merge request idf/esp-idf!2668
2018-06-30 11:30:59 +08:00
baohongde
1340de576e component/bt: Fix bug of BT and BLE remove bond device of v3.1
1. esp_ble_remove_bond_device will only remove BLE bond key and disconnect BLE device.
2. esp_bt_gap_remove_bond_device  will only remove BT bond key and disconnect BT device.

A cherry-pick of MR !2562
2018-06-29 20:09:19 +08:00
zhiweijian
8335933cdf Component/bt: fix register multi service change when register multi gattc 2018-06-29 19:54:22 +08:00
Tian Hao
e3dedb74c5 bt : fix read rssi conflict when in dual mode 2018-06-26 11:54:39 +08:00
zhiweijian
85e88cd0eb Component/bt: fix include service start handle error 2018-06-08 16:00:34 +08:00
Jiang Jiang Jian
8955db6d29 Merge branch 'bugfix/btdm_fix_no_gatt_server_req_callback_warning' into 'master'
component/bt: fix the issue where no gatt server request callback warning caused…

See merge request idf/esp-idf!2502
2018-06-06 16:29:59 +08:00
zhiweijian
822dac5659 Component/bt: fix memory leak 2018-06-06 02:17:06 +00:00
island
f30410113b component/bt: fix the issue where no gatt server request callback warning caused while acting as a GATTC 2018-06-05 02:41:34 +00:00
baohongde
c04a4a8527 component/bt: Fix bug a2dp assert warn after connected 2018-06-01 10:57:22 +08:00
zhiweijian
340ad5c430 Component/bt: fix scan duplicate 2018-05-21 15:23:15 +08:00
wangmengyang
4c4e143a2f component/bt: implement HFP Hands Free Unit Role 2018-05-21 11:33:30 +08:00
baohongde
174501ff35 component/bt: modify BT GAP structure
1. Separate the upward and the downward
2. Cancel use of msg.aid when call btc_transfer_context
2018-05-16 18:58:13 +08:00
Jiang Jiang Jian
f502e195aa Merge branch 'bugfix/improve_bt_debug' into 'master'
components/bt: Improve the Bluetooth debug messaging scheme

See merge request idf/esp-idf!2303
2018-05-16 16:04:34 +08:00
Hrishikesh Dhayagude
da6cb6c741 components/bt: Improve the Bluetooth debug messaging scheme
As of now, when Bluetooth debugs are enabled, all the messages are
mapped to BT_PRINTF which is mapped to ESP_LOGE. Hence, make monitor
shows all logs in red color which might lead to missing the actual
errors

This patch maps the Bluetooth messages to appropriate ESP_LOG* messages
and improves readability.

Also, make the BT trace level be configurable in menuconfig, so that
each layer of bt trace can be enabled/disabled.

Finally, add debug log control for BTC, OSI, BLUFI and clear up
Bluetooth debug logs.

So, with this the method of enabling Bluetooth logs is as follows:
1. make menuconfig -> Component config -> Bluetooth -> Bluedroid Enable
-> BT DEBUG LOG LEVEL -> set trace level for every layer of BT

Signed-off-by: Hrishikesh Dhayagude <hrishi@espressif.com>
2018-05-14 20:45:05 +08:00
Jiang Jiang Jian
9e5318b584 Merge branch 'bugfix/btdm_reconnect_con_params_update_reject_in_smp' into 'master'
Component/bt: update con params is rejected in smp when reconnection

See merge request idf/esp-idf!2318
2018-05-14 20:19:29 +08:00
Jiang Jiang Jian
d4276efed7 Merge branch 'bugfix/bluedroid_const_char' into 'master'
Bluedroid: remove warnings about discarding "const" for "const char*"

See merge request idf/esp-idf!2387
2018-05-14 15:25:45 +08:00
Roland Dobai
2041c08681 Bluedroid: remove warnings about discarding "const" for "const char*" 2018-05-11 11:29:10 +02:00
zhiweijian
cb59576dd0 Component/bt: fix service change write busy 2018-05-09 20:49:26 +08:00
zhiweijian
58b2cb3e0c Component/bt: update con params is rejected in smp when reconnection 2018-05-09 20:28:13 +08:00
Jiang Jiang Jian
1e8ab3d18e Merge branch 'bugfix/gap_appearance_fixes' into 'master'
components/bt: Make modifications to the support of GAP appearance/icon characteristic

See merge request idf/esp-idf!2249
2018-05-01 23:00:24 +08:00
Jiang Jiang Jian
0bb551c051 Merge branch 'bugfix/btdm_prepare_write_status_correct' into 'master'
component/bt: Check the value received from the peer device when sent the data used prepare write.

See merge request idf/esp-idf!2320
2018-05-01 22:57:20 +08:00
Jiang Jiang Jian
5a080ee37a Merge branch 'bugfix/btdm_genrate_hash_key_by_bluedroid' into 'master'
component/bt: Added the hash key generated directly in the bluedroid module.

See merge request idf/esp-idf!2321
2018-04-28 16:42:27 +08:00
Hrishikesh Dhayagude
fd7baaf4ba components/bt: Make modifications to the support of GAP appearance/icon
characateristic

1. In addition to mentioning in the documentation, use the standard appearance
   values already present and return appropriate error in case an incorrect
   value is passed
2. Add ESP_BLE_APPEARANCE* macros corresponding to BTM_BLE_APPEARANCE*
and use them from the API instead
3. Add the missing appearance parameter values from
https://www.bluetooth.com/specifications/gatt/viewer?attributeXmlFile=org.bluetooth.characteristic.gap.appearance.xml
4. Fix some minor typos

Signed-off-by: Hrishikesh Dhayagude <hrishi@espressif.com>
2018-04-28 13:59:36 +05:30
Yulong
6c20bc3203 component/bt: Added the hash key generated directly in the bluedroid module.
1. Change all the hash used from the coap module to generated by the bluedroid module directly.

component/bt: Added the <string.h> include file to the gattc_co module to avoid compile error.
2018-04-28 03:11:05 -04:00
Jiang Jiang Jian
ee9ab48347 Merge branch 'feature/btdm_bt_spp_vfs' into 'master'
component/bt: Add SPP profile with VFS

See merge request idf/esp-idf!1883
2018-04-28 15:10:07 +08:00
baohongde
d95d0ececb component/bt: Add SPP profile with VFS 2018-04-28 11:36:22 +08:00
Yulong
fd3162d831 component/bt: Added the server test for the bit rate test.
component/bt: optimiz the code
component/bt: optimiz the code.
component/bt: added the l2c change.
component/bt: Added the modified.
component/bt: change the indicate callback function.

component/bt: added the BLE throughput test gattc & gatts example.

component/bt: Change the sdkconfig.default CONFIG_GATTS_NOTIFY_THROUGHPUT setting.

component/bt: Change the throughput_client_task delay method.

component/bt: change the btu task size from 4096 to 5096

comonent/bt: close the print when congest.

component/bt: Added the CPU frequency set method to the readme file.

component/bt: Change the gatts_demo_char1_val to gl_profile_tab[PROFILE_A_APP_ID].char_handle to avoid make error.

example/ble_throughput: Added the Readme explanation.

component/bt: Added the bt lib change.

component/bt: Update the bt lib & Change the LOG level from ERROR to DEBUG when congest.

component/bt: Fixed the bug of timer start assign error.

component/bt: Change back the gattc & gatts demo with same as the master.

example/ble_throughput: Fixed the bug when prepare write of the ble throughput.

component/bt: Update the check_sum algorithm.

component/bt: Change Added the path when used the include file of "l2cdefs.h" & "l2c_api.h".

example/throughput_client: Added the Freertos related header files to ble throughput client demo to avoid compile error.
2018-04-27 23:02:10 -04:00
Yulong
8f015e3e48 component/bt: Check the value received from the peer device when sent the data used prepare write.
component/bt: Fix misspellings of "corret" in comments in bta_gattc_write_cmpl function.
2018-04-27 08:20:01 -04:00
Tian Hao
adada3f67e component/bt : modify header files to avoid conflict
1. add the L1 include path with a prefix, such like osi/list.h, stack/a2d_api.h and etc.
2. modify component, only bluedroid/api/include/api is export to another component and application,
   other include path just for bluedroid used
3. put bluedroid/include into common/include/common, so the root directory of bluedroid have no include path.
4. modify doxygen to use esp_bt.h and redirect to
component/bt/bluedroid/api/include/api/

fix compile
2018-04-26 19:32:06 +08:00
zhiweijian
be107320f7 Component/bt: fix gatt cache error
- fix sev == NULL error
- fix start_handle == end_handle
2018-04-23 15:43:10 +08:00
Angus Gratton
088c73bd22 Merge branch 'feature/disable_ble_service_change_pr1673' into 'master'
Add option to ena/dis BLE service change registration

See merge request idf/esp-idf!2210
2018-04-23 09:15:02 +08:00
Jiang Jiang Jian
c32ccf7abb Merge branch 'bugfix/add_NULL_value_check_bta_gattc_get_services' into 'master'
components/bt: Add NULL value check in bta_gattc_get_service_with_uuid()

See merge request idf/esp-idf!2212
2018-04-20 18:15:45 +08:00
Yulong
2c7182c59f component/bt: For unity, Change all the associat & associa to abbreviated form(assoc). 2018-04-20 02:16:33 -04:00
Yulong
ece6bd9b82 component/bt: Change the btc gattc callback function with the compile error.
1. Change all the gattc API && bta gattc layer.
2. Debug the code and change the btc_ble_gattc_get_db method.
3. Change the gatt read API interface.
4. Reconstruction the BTA_gattc_cache code.
5. Change back the bluedroid_get_status to marco.
6. Change the gattc docs format.
7. Change the docs format.
8. fix the read char value bug.
9. change the gattc_get_attr_count method.
10. Change back the bta_gattc write ccc code.
11. Change the gattc api docs format
12. Change the gattc API docs.
13. Change the prepare write descriptor method to avoid the exection.
14. modify gatt clinet demo with new API
15. Change the p_src_data->read.p_value to avoid exection.
16. Change the bugfix of gattc unreg for the notify.

    component/bt: Added the serch service res start_handle & end_handle to the result.

component/bt: Added the bta_gattc_cache_write when gatt discovery complete.

component/bt: Added the bta_gattc_cache_write declaration.

component/bt: Added the comments for esp_ble_gattc_cache_refresh API.

component/bt: Change the spelling errors & some comment error.

component/bt: fix bug of get gattc cache address list error.

1. Change the esp_bluedroid_get_status to macro;
2. added the malloc & free for the get_addr_list

component/bt: Added the addr_info->ass_addr == NULL Judgment to prevent crashes in the bta_gattc_co_cache_find_src_addr function.

component/bt: Fixed following gattc cache bugs

1. gattc can't refresh the gattc cache in the gatt discover state;
2. remove the nvs_get_blob in the cache address init function;
3. added the nvs_set_blob return value judgment in the cache address save function;
4. added the list_new when ass_address is NULL;
5. Change the ass_address list remove method to fix the ass address can't remove bug.
2018-04-19 12:05:13 +08:00
Jiang Jiang Jian
16ad81c636 Merge branch 'feature/btdm_get_and_set_cod' into 'master'
component/bt: Add API: get cod & set cod

See merge request idf/esp-idf!2127
2018-04-17 14:21:18 +08:00
Hrishikesh Dhayagude
284f332f06 components/bt: Add NULL value check in bta_gattc_get_service_with_uuid()
Signed-off-by: Hrishikesh Dhayagude <hrishi@espressif.com>
2018-04-10 09:34:03 +05:30
Ing. Jaroslav Safka
801632d68b bt: Add option to ena/dis BLE service change registration
Add option to enable/disable automatic registration of BLE Gattc
service change notify. Which sends in parralel
(with user message flow) commands to BLE server which
sometime leads to GATT_BUSY.
(BLE server is able to handle only one command at time)

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

Merges https://github.com/espressif/esp-idf/pull/1673
2018-04-10 12:27:33 +10:00
baohongde
789edc0b52 component/bt: Add API: get cod & set cod
In response to: https://github.com/espressif/esp-idf/issues/1565
2018-04-09 19:25:26 +08:00
zhiweijian
99872beb6a Component/bt: add set gap icon API 2018-03-30 09:21:53 +00:00
Jiang Jiang Jian
e6d6deebc7 Merge branch 'bugfix/btdm_fix_connect_fail_when_remote_addr_is_random' into 'master'
Component/bt: modify open API params

See merge request idf/esp-idf!2116
2018-03-30 17:00:19 +08:00