Commit graph

52 commits

Author SHA1 Message Date
Ivan Grokhotkov
979fce0df5 bt: call nvs_flash_init in examples, show error if NVS is not initialized
NVS is used to store PHY calibration data, WiFi configuration, and BT
configuration. Previously BT examples did not call nvs_flash_init,
relying on the fact that it is called during PHY init. However PHY init
did not handle possible NVS initialization errors.

This change moves PHY init procedure into the application, and adds
diagnostic messages to BT config management routines if NVS is not
initialized.
2017-07-17 21:29:50 +08:00
Yulong
574d0cf846 component/bt: Fixed a very important bug of the SMP security module when use SMP to connected after bonding. 2017-06-26 05:02:57 -04:00
Jiang Jiang Jian
06fa08b022 Merge branch 'bugfix/btdm_config_bluedroid_mem_debug_github_#12631' into 'master'
component/bt: Change the osi_mem_dbg_init to the esp_bluedroid_init function.

See merge request !860
2017-06-14 11:18:34 +08:00
Yulong
2a759a9864 component/bt: Change the osi_mem_dbg_init to the esp_bluedroid_init function. 2017-06-13 08:52:26 -04:00
Tian Hao
808b07799c component/bt : fix task post bug && fix controller init protection
1. fix bluedroid task post to blocking.
2. use semphore protect btdm controller task when be called from higher priority task
2017-06-13 17:14:50 +08:00
Yulong
3453824bf2 component/bt: component/bt: Check own address and filter policy for validity. 2017-05-05 04:31:24 -04:00
wangmengyang
4f3b391674 component/bt: transfer bluedroid timer events to be handled by BTC task 2017-04-14 18:49:30 +08:00
Jiang Jiang Jian
6ace4f6fa4 Merge branch 'feature/btdm_avrc' into 'master'
Feature/btdm avrc

The source branch "feature/btdm_avrc" includes classic Bluetooth profiles A2DP(sink role) and AVRCP(controller role); 
Menuconfig options to control whether to enable classic BT is added.

See merge request !591
2017-04-13 14:36:58 +08:00
wangmengyang
b503d68045 component/bt: implement classic Bluetooth profiles A2DP(sink) and AVRCP(controller) 2017-04-12 16:42:14 +08:00
island
f688309b3a bt component: Fix memory leak while using gatt server
- fix memory leak while creating attribute table
- fix memory leak while deleting service
2017-04-12 14:58:45 +08:00
island
a4f3312d9d bt component: optimize scan feature
1. Add advertising data length and scan response length in scan result
2. Add scan continuously feature
3. Fix non connectable adv topology error
4. Increase BTC queue size
2017-04-11 14:20:20 +08:00
wangmengyang
ccfe4fefeb component/bt: implement classic Bluetooth profiles A2DP(sink) and AVRCP(controller) 2017-04-10 16:12:21 +08:00
Ivan Grokhotkov
85e709705b Merge branch 'bugfix/btdm_task_priority' into 'master'
component/bt : modify bluetooth task priority

modify bluetooth task priority to lower than IPC task priority.

See merge request !631
2017-04-07 14:56:31 +08:00
wangmengyang
b5ea92a26e component/bt: implement classic Bluetooth profiles A2DP(sink) and AVRCP(controller) 2017-04-06 16:56:18 +08:00
wangmengyang
dbd4e0522e Merge branch 'master' into feature/btdm_avrc 2017-04-06 14:59:58 +08:00
Tian Hao
e384c7c014 component/bt : modify alarm APIs to be safely accessible from multiple tasks 2017-04-05 17:34:26 +08:00
Tian Hao
ecb75b69fd component/bt : modify bluetooth task priority 2017-04-01 17:17:57 +08:00
wangmengyang
2a5d01a930 component/bt: clean up the A2DP sink example 2017-03-18 16:02:54 +08:00
wangmengyang
66fd3b9768 component/bt: add conditional compilation direvatives to control the source code building of SBC codec 2017-03-17 15:57:30 +08:00
wangmengyang
17696bc679 component/bt: resolve the differences with ESP-IDF master branch 2017-03-13 21:28:53 +08:00
wangmengyang
383db0dc81 Merge branch 'master' into feature/btdm_avrc 2017-03-13 16:21:41 +08:00
wangmengyang
870389b3ba component/bt: optimize stack size of Bluetooth Tasks and make them be configurable according to the CONFIG_NEWLIB_NANO_FORMAT option 2017-03-06 23:09:42 +08:00
wangmengyang
2c87e84b0a component/bt: bluetooth storage module clean up and bug fix.
1. clean up bluetooth storage log prints;
2. reduce maximum link key storage size
3. modify so that the link key information of the latest connected device is stored at first
2017-01-20 16:46:10 +08:00
wangmengyang
0f711963d7 component/bt: implement non-volatile memory access module for link key storage
1. btif_storage module is ported
2. update controller library that moves functions called in ISRs to IRAM
2017-01-19 17:11:01 +08:00
wangmengyang
49b68c38fa Merge branch 'master' into feature/btdm_avrc
# Conflicts:
#	components/bt/bluedroid/hci/packet_fragmenter.c
#	components/bt/bluedroid/stack/include/gatt_api.h
2017-01-17 10:36:26 +08:00
Angus Gratton
06e03ff52e Replace backwards-compatible portTICK_RATE_MS with FreeRTOS v8+ portTICK_PERIOD_MS
Closes github #51 https://github.com/espressif/esp-idf/issues/51
2016-12-28 10:23:13 +11:00
wangmengyang
d7c1c0b1f6 component/bt: fix API typos, add license headers and fix some log messages 2016-12-27 13:48:07 +08:00
wangmengyang
c94e0177c2 component/bt: Merge branch 'master' into feature/btdm_a2dp 2016-12-26 20:35:28 +08:00
Tian Hao
69ee1de9fa component/bt : fix enable bug
1. enable will cause exception with list->head memory modify
2. gatt complete, timeout with HCI cmd timeout will cause exception
2016-12-14 22:10:21 +08:00
Tian Hao
5e87cdec7e component/bt : increase the task stack size
1. increase HCI task stack size
2. increase BTC task stack size for default
2016-12-14 22:10:21 +08:00
Tian Hao
fd11beebcd component/bt : fix the init/deinit memory leak
1. modify the memory debug
2. fix init/deinit memory leak
2016-12-14 22:10:21 +08:00
Tian Hao
7ae7a56457 component/bt : fix the bug of deinit/disable
1. fix the exception of deinit/disable
2. debug mem leak of deinit, fix some memleak, but still something wrong.
3. debug men leak of disable.
4. add bluedroid memory debug
2016-12-14 22:10:21 +08:00
Tian Hao
5933ebc6b6 component/bt : cleanup all the "-W-no-xx" and all the warnings
1. cleanup the warnings.
2. fix the some function called in gap
3. fix some code in btc_main
2016-12-07 13:49:53 -08:00
wangmengyang
11ddfbba4e Merge branch 'feature/btdm_bluedroid' into feature/btdm_a2dp
# Conflicts:
#	examples/13_bt_sdp/components/bluedroid_demos/btif/btif_core.c
#	examples/13_bt_sdp/components/bluedroid_demos/include/btif_util.h
2016-12-02 22:33:09 +08:00
wangmengyang
50227f12fd Merge branch 'feature/btdm_bluedroid' into feature/btdm_a2dp
# Conflicts:
#	components/bt/bluedroid/bta/include/bta_api.h
#	components/bt/bluedroid/bta/include/bta_gattc_int.h
#	components/bt/bluedroid/hci/hci_hal_h4.c
#	components/bt/bluedroid/hci/hci_layer.c
#	components/bt/bluedroid/include/bt_target.h
#	components/bt/bluedroid/stack/btu/btu_init.c
2016-11-28 18:06:24 +08:00
Tian Hao
fd0d28afc3 component/bt : cleanup some missing code 2016-11-28 16:39:53 +08:00
Tian Hao
1173106a20 component/bt : change task to decease dram(heap)
1. decrease the task size(HCI cannot < 1024, btu cannot < 4096)
2. btc task can config by menuconfig(default 2048)
2016-11-25 23:37:46 +08:00
wangmengyang
73f00732cf Merge branch 'feature/btdm_bluedroid' into feature/btdm_a2dp
# Conflicts:
#	components/bt/bluedroid/bta/sys/bta_sys_main.c
#	components/bt/bluedroid/btc/profile/std/avrc/avrc_api.c
#	components/bt/bluedroid/btc/profile/std/avrc/avrc_bld_ct.c
#	components/bt/bluedroid/btc/profile/std/avrc/avrc_bld_tg.c
#	components/bt/bluedroid/btc/profile/std/avrc/avrc_opt.c
#	components/bt/bluedroid/btc/profile/std/avrc/avrc_pars_ct.c
#	components/bt/bluedroid/btc/profile/std/avrc/avrc_pars_tg.c
#	components/bt/bluedroid/btc/profile/std/avrc/avrc_sdp.c
#	components/bt/bluedroid/btc/profile/std/avrc/avrc_utils.c
#	components/bt/bluedroid/btc/profile/std/avrc/include/avrc_int.h
#	components/bt/bluedroid/btc/profile/std/include/avct_api.h
#	components/bt/bluedroid/btc/profile/std/include/avdt_api.h
#	components/bt/bluedroid/btc/profile/std/include/avdt_defs.h
#	components/bt/bluedroid/btc/profile/std/include/avdtc_api.h
#	components/bt/bluedroid/btc/profile/std/include/avrc_api.h
#	components/bt/bluedroid/btc/profile/std/include/avrc_defs.h
#	components/bt/bluedroid/gki/gki_buffer.c
#	components/bt/bluedroid/hci/hci_hal_h4.c
#	components/bt/bluedroid/hci/hci_layer.c
#	components/bt/bluedroid/hci/packet_fragmenter.c
#	components/bt/bluedroid/include/bt_trace.h
#	components/bt/bluedroid/osi/alarm.c
#	components/bt/bluedroid/profiles/std/avrc/avrc_api.c
#	components/bt/bluedroid/profiles/std/avrc/avrc_bld_ct.c
#	components/bt/bluedroid/profiles/std/avrc/avrc_bld_tg.c
#	components/bt/bluedroid/profiles/std/avrc/avrc_opt.c
#	components/bt/bluedroid/profiles/std/avrc/avrc_pars_ct.c
#	components/bt/bluedroid/profiles/std/avrc/avrc_pars_tg.c
#	components/bt/bluedroid/profiles/std/avrc/avrc_sdp.c
#	components/bt/bluedroid/profiles/std/avrc/avrc_utils.c
#	components/bt/bluedroid/profiles/std/avrc/include/avrc_int.h
#	components/bt/bluedroid/profiles/std/include/avct_api.h
#	components/bt/bluedroid/profiles/std/include/avdt_api.h
#	components/bt/bluedroid/profiles/std/include/avdt_defs.h
#	components/bt/bluedroid/profiles/std/include/avdtc_api.h
#	components/bt/bluedroid/profiles/std/include/avrc_api.h
#	components/bt/bluedroid/profiles/std/include/avrc_defs.h
#	components/bt/bluedroid/stack/avdt/include/avdt_defs.h
#	components/bt/bluedroid/stack/avrc/avrc_api.c
#	components/bt/bluedroid/stack/avrc/avrc_bld_ct.c
#	components/bt/bluedroid/stack/avrc/avrc_bld_tg.c
#	components/bt/bluedroid/stack/avrc/avrc_opt.c
#	components/bt/bluedroid/stack/avrc/avrc_pars_ct.c
#	components/bt/bluedroid/stack/avrc/avrc_pars_tg.c
#	components/bt/bluedroid/stack/avrc/avrc_sdp.c
#	components/bt/bluedroid/stack/avrc/avrc_utils.c
#	components/bt/bluedroid/stack/avrc/include/avrc_int.h
#	components/bt/bluedroid/stack/btu/btu_task.c
#	components/bt/bluedroid/stack/include/avct_api.h
#	components/bt/bluedroid/stack/include/avdt_api.h
#	components/bt/bluedroid/stack/include/avdtc_api.h
#	components/bt/bluedroid/stack/include/avrc_api.h
#	components/bt/bluedroid/stack/include/avrc_defs.h
#	components/bt/bluedroid/stack/include/gatt_api.h
#	components/bt/bluedroid/stack/l2cap/l2c_main.c
#	components/bt/component.mk
#	examples/06_bluedroid_demos/components/bluedroid_demos/app_core/bt_app_core.c
2016-11-25 19:45:29 +08:00
Tian Hao
19273c7b2d component/bt : run astyle handle the code files 2016-11-25 02:10:15 +08:00
Tian Hao
d7eb709a9c component/bt : add license header 2016-11-25 01:58:26 +08:00
wangmengyang
30198ee8c1 component/bt: add new example for A2DP
1. add new example for A2DP and the related btif layer source code is ported
2. modification on osi_alarm_new API to support periodic timer
3. enable macro BTA_AR_INCLUDED, BTA_AV_INCLUDED, BTA_AV_SINK_INCLUDED
4. The A2DP example cannot work and can only be built successfuly
2016-11-04 15:08:30 +08:00
Tian Hao
66b31b89ac Merge branch 'feature/btdm_gap' into feature/btdm_bluedroid
# Conflicts:
#	examples/07_blufi/components/bluedroid_demos/app_project/SampleClientProject.c
#	examples/07_blufi/components/bluedroid_demos/app_project/SampleServerProject.c
#	examples/07_blufi/components/bluedroid_demos/include/bt_app_common.h
2016-11-01 14:19:38 +08:00
Tian Hao
cb33e2a5ae Merge branch 'feature/btdm_blufi' into feature/btdm_bluedroid
# Conflicts:
#	components/bt/bluedroid/bta/dm/bta_dm_pm.c
#	components/bt/component.mk
#	examples/07_blufi/components/bluedroid_demos/app_core/bt_app_core.c
#	examples/07_blufi/components/bluedroid_demos/app_project/SampleServerProject.c
2016-11-01 14:01:49 +08:00
Tian Hao
45638b3f98 component/bt : use LOG_XXX instead of print 2016-10-26 15:57:40 +08:00
wangmengyang
47d73dfe05 component/bt: implement some APIs for bluetooth SDP, GAP and stack manager
1. add bt profile task(temporarily called btif task)
2. add GAP API to set BT scan mode
3. port btif/SDP module
4. port btif stack manager
2016-10-26 11:25:24 +08:00
Tian Hao
5fbfa2a01d blufi cleanup the bad things 2016-10-24 17:08:37 +08:00
Tian Hao
24df5e2041 component/bt : cleanup ^M
someone use editor in windows, so use "LF" in your editor, please.
2016-10-18 21:49:00 +08:00
yulong
02ad223eea component bt: 1.modified the btu buffer size from 15 to 60;
2.change the smp method
2016-10-15 05:46:10 -04:00
yulong
af9b08d863 commponent bt:1.added the bt_prf_sys_main.c file which has been process the profile task event method;
2.modified the thread.h file==> added the profile task event in it
	      3.modified bt_prf_task.c==>added the ready function in it
	      4.added the bt_prf_sys.h file
	      5.remove the profile_sys.h file
2016-10-13 09:13:21 -04:00
wangmengyang
bde768f13c 1. Recover "future_t" model implementation using semaphore to allow for blocking function
2. Recover BTU task start-up/shut-down procedure according to original bluedroid implementation
2016-10-10 21:34:21 +08:00