Commit Graph

254 Commits

Author SHA1 Message Date
xiewenxiang
04a8d32cba component/bt: modify spp client demo for discussion
- check the characteristic properties before write
 - check the db count is equal to SPP_IDX_NB or not
 - modify some other code for discussion
2017-10-27 15:35:31 +08:00
zhiweijian
15c75974de component/bt: fix crash when set device name NULL 2017-10-27 15:21:00 +08:00
xiewenxiang
d57901cd54 component/bt: refactor spp client demo
- because the GATTC API was modified, the spp client demo was
   refactored
2017-10-27 13:56:48 +08:00
Yulong
a1495b0e49 Squash the two submissions of previous.
component/bt: The application layer does not allocate memory correctly causing the btc layer pointer to cross the border.

bt/examples: Change the gattc_multi_connect.c incorrect memory apply method.
2017-10-23 05:24:02 -04:00
zhiweijian
9ad451dced Component/bt: fix memory leak in bluefi demo 2017-10-23 14:26:11 +08:00
Tuan PM
14fe6e9bbb merge from master 2017-10-16 14:19:29 +07:00
Jiang Jiang Jian
b78cb018a2 Merge branch 'feature/btdm_ibeacon' into 'master'
component/bt: add ibeacon demo

See merge request !1028
2017-10-12 18:11:49 +08:00
Jiang Jiang Jian
276034354e Merge branch 'feature/btdm_eddystone' into 'master'
component/bt: Add eddystone demo

See merge request !1076
2017-10-12 17:56:05 +08:00
Josh Leverette
880821fe9e Fix typo in ble_adv example
Merges https://github.com/espressif/esp-idf/pull/1049
2017-10-09 14:22:56 +11:00
Tian Hao
0d0c9e7172 fix example of controller_hci_uart peripheral clk init 2017-09-25 11:46:03 +08:00
Tian Hao
3e2ee24e4f component/bt : support bluetooth controller DRAM release dynamically
1. remove CONFIG_BT_DRAM_RELEASE from Kconfig
2. add API to release bluetooth controller DRAM to heap
2017-09-21 14:31:20 +08:00
Tian Hao
b54719d00f component/bt : fix bluetooth controller enable limit && release memory when de-initialize bluetooth controller
1. fix bluetooth controller enable limit
2. release memory when de-initialize bluetooth controller
3. fix heap_caps_add_region limit
2017-09-19 21:14:28 +08:00
Jiang Jiang Jian
3d7ec475d1 Merge branch 'feature/btdm_cherry_pick_change_gattc_api' into 'master'
component/bt: Change all the gattc API && bta gattc layer.

See merge request !1147
2017-09-15 19:39:29 +08:00
xiewenxiang
3fbc4ff353 component/bt:modify for gattc new api ci 2017-09-15 17:53:36 +08:00
wangpan
3760d8e175 example : eddystone demo
- Separate Eddystone codes into the following 4 files:
    esp_eddystone_protocol.h
    esp_eddystone_api.h
    esp_eddystone_api.c
    edp_eddystone_demo.c
- Just store eddystone information into eddystone result
2017-09-15 11:06:46 +08:00
zhiweijian
31cb284967 Component/bt: modify mtu api in spp client demo 2017-09-14 21:11:10 +08:00
Jiang Jiang Jian
169361b38b Merge branch 'feature/btdm_ble_spp_server_demo' into 'master'
component/bt: add example for ble spp server

See merge request !1042
2017-09-14 17:15:17 +08:00
Jiang Jiang Jian
f90eb1c371 Merge branch 'feature/btdm_ble_spp_client_demo' into 'master'
component/bt: add example for ble spp client

See merge request !1043
2017-09-14 17:15:01 +08:00
Jiang Jiang Jian
ea7a09c3e4 Merge branch 'bugfix/btdm_sec_config' into 'master'
component/bt : fix btc security storage bug

See merge request !1161
2017-09-13 11:46:34 +08:00
Yulong
1759a47060 This is a combination of 4 commits.
squash again all the commit.

component/bt: Change all the gattc API && bta gattc layer.

component/bt: Debug the code and change the btc_ble_gattc_get_db method.

component/bt: Change the gatt read API interface.

component/bt: Reconstruction the BTA_gattc_cache code.

component/bt: Change back the bluedroid_get_status to marco.

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

component/bt: Change the gattc docs format.

component/bt: Change the docs format.

component/bt: fix the read char value bug.

component/bt: change the gattc_get_attr_count method.

component/bt: Change back the bta_gattc write ccc code.

component/bt: Change the gattc api docs format

component/bt: Change the gattc API docs.

component/bt: Change the prepare write descriptor method to avoid the exection.

Component/bt: modify gatt clinet demo with new API

component/bt: Change the p_src_data->read.p_value to avoid exection.

compoent/bt: Change the bugfix of gattc unreg for the notify.

Modify gattc security demo

component/bt: Change the log error.

Component/bt: modify gattc_multi_connect demo

componnet/bt: Change the bta_gattc_cache sdp include.

component/bt: Change the start_handle & end_handle not from the service.

component/bt: Change the gattc API docs.

component/bt: Change the return issues.

component/bt: Fixed the include service bug.

component/bt: Modify gattc_multi_connect demo , add scan log

component/bt: Fixed the BTA_GATTC_GetIncludeService start handle & end handle error bug.

component/bt: Fix the invalid handle of the get all char issues.

component/bt: Fix the bug with get_db_size_with_type of the start handle & end_handle not correted issue.

component/bt: Fixed the get secondly service num not correct issue.

component/bt: Fixed the last service handle not correted issue.
2017-09-12 07:36:02 -04:00
Angus Gratton
d5301bdac6 gatts_demo example: Use add_char_descr.attr_handle everywhere 2017-09-12 10:57:45 +10:00
Siarhei Volkau
1922f6cd80 using param, which corresponds to handled event
In the handlers of ESP_GATTS_ADD_CHAR_DESCR_EVT was used incorrect parameter, which corresponding to ESP_GATTS_ADD_CHAR_EVT.
2017-09-12 10:41:43 +10:00
island
9e27c24e54 component/bt: add esp_ibeacon_api file 2017-09-07 20:49:11 +08:00
zhiweijian
941001959e Component/bt: delete the useless .h files 2017-09-07 20:49:11 +08:00
island
2f9111c13f component/bt: Optimize iBeacon demo
- Add endian change for major and minor part
- Change measured power format
- Optimize comments in example
2017-09-07 20:49:11 +08:00
island
eff95f3799 component/bt: add ibeacon demo 2017-09-07 20:49:11 +08:00
Tian Hao
38102f4148 component/bt : fix btc security storage bug
1. Remove the bond_device global variable.
2. Fix bond_device add cause memory exception
3. Modify the code location.
4. modify thread security
5. remove esp_ble_clear_bond_device_list() API
6. modify esp_ble_get_gond_device_list() to return list immediately, rather than wait event.
7. modify the gatt_security_server demo to show how to remove all the bonded devices.
8. fix some code bugs may cause something error.
2017-09-07 19:37:49 +08:00
zhiweijian
f1c4eda373 Component/bt: add set local MTU API
- add esp_ble_gatt_set_local_mtu( ) API
- modify esp_ble_gattc_config_mtu(esp_gatt_if_t gattc_if, uint16_t conn_id)
- modify  gattc demo
2017-09-01 21:55:28 +08:00
Jiang Jiang Jian
3a1de7dba3 Merge branch 'bugfix/btdm_fix_connection_parameters_update' into 'master'
component/bt: fix connection parameters update

See merge request !1099
2017-09-01 20:15:30 +08:00
zhiweijian
1a9b02ccbc component/bt: fix connection parameters update
- update connection parameters timeout due to master update illegal connection parameters
- slave returns error status when slave check the connection parameters
- slave connection parameters update callback get that interval_max is equal to interval_min
2017-08-30 11:29:25 +08:00
xiewenxiang
2b0893d8a8 component/bt: add example for ble spp client
- refactory spp client code for modification suggestion.
2017-08-29 22:35:33 +08:00
xiewenxiang
e6f0ff7209 component/bt: add example for ble spp server
- refactory spp server code for modification suggestion.
2017-08-29 13:44:58 +08:00
zhiweijian
e14509b1ed Component/bt: optimize gatt security server demo
- optimize gatt security server demo
- change the adv public address to a private address
2017-08-25 15:33:35 +08:00
xiewenxiang
b3fa390681 component/bt: add example for ble spp client
- this demo needs to work with the spp server demo
2017-08-25 09:52:24 +08:00
xiewenxiang
46e7570dcd component/bt: add example for ble spp server
- the first characteristic is used to receive data from client.
 - the second characteristic is used to notify data to client.
 - the third characteristic is used to receive command from client, user
   can add code to process the command.
 - the fourth characteristic is used to notify status to client.
 - the fifth characteristic is used to keep ble connection
2017-08-22 16:56:20 +08:00
Jiang Jiang Jian
642117a37f Merge branch 'bugfix/btdm_optimize_gatt_server_demo' into 'master'
component/bt: optimize gatt server demo

See merge request !1040
2017-08-22 16:30:08 +08:00
zhiweijian
6fa06c4646 Component/bt: optimize gatt server demo 2017-08-22 14:48:01 +08:00
zhiweijian
2e6835e90c Component/bt: optimize gatt_client demo 2017-08-22 14:40:12 +08:00
Jiang Jiang Jian
43f3c59f81 Merge branch 'feature/btdm_add_multiple_connections_demo' into 'master'
component/bt : add gattc multiple connect demo

See merge request !1027
2017-08-22 14:12:33 +08:00
Jiang Jiang Jian
5c3f2bdd00 Merge branch 'feature/btdm_add_gatt_security_client_demo' into 'master'
component/bt: add gatt_security_client demo

See merge request !1049
2017-08-22 11:59:42 +08:00
Yulong
202c5783db component/bt:squash the 2 commits.
component/bt: cherry-pick the bugfix/btdm_api_manage_pair_info_#13119 to this branch.

component/bt: Change the ble gap API code format & added the status judgment in the btc_storage_load_bonded_ble_devices function.
2017-08-21 06:17:21 -04:00
Kedar Sovani
63c738de4c sdkconfig: Remove rest of the references to WIFI_ENABLED 2017-08-16 15:55:42 +05:30
zhiweijian
d03ad1ad73 t # This is a combination of 2 commits.
Component/bt : add gattc multiple connect demo
2017-08-08 20:15:38 +08:00
zhiweijian
a7f8ac5ad6 Component/bt: add gatt_security_client demo
-  connect gatt_security_server demo with paring and bonding
- connet other ble devices that needs to be encrypted
2017-08-04 16:26:17 +08:00
Jiang Jiang Jian
7b44d3c083 Merge branch 'bugfix/btdm_blufi_aes_cfb128' into 'master'
component/bt : comment out set_key_dec for res cfb128(software crypt)

See merge request !971
2017-07-24 14:08:11 +08:00
Ivan Grokhotkov
0e54caabe3 examples: add missing nvs_flash.h include 2017-07-20 17:20:49 +08:00
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
Tian Hao
f01c6eb96c component/bt : comment out set_key_dec for res cfb128(software crypt) 2017-07-10 14:29:29 +08:00
Jiang Jiang Jian
3dd2861e2a Merge branch 'bugfix/btdm_ble_update_conn_params_issues' into 'master'
component/bt: Modifed the update connection method to fixed the bug of connectio…

See merge request !889
2017-06-22 20:50:37 +08:00
zhiweijian
eec989f026 Component /bt: modify some log infor 2017-06-21 10:54:51 +08:00
Yulong
01705166bc component/bt: Modifed the update connection method to fixed the bug of connection parameters not correct. 2017-06-19 03:22:25 -04:00
Jiang Jiang Jian
f114ef4a6a Merge branch 'bugfix/btdm_hci_example' into 'master'
component/bt : fix controller_hci_uart sdkconfig.defaults

See merge request !876
2017-06-15 15:38:21 +08:00
Jiang Jiang Jian
ac5040a7c2 Merge branch 'bugfix/btdm_ll_get_remote_feature' into 'master'
component/bt: Fix can't get remote's feature bug

See merge request !871
2017-06-15 15:10:52 +08:00
Tian Hao
643a79c527 component/bt : fix controller_hci_uart sdkconfig.defaults 2017-06-15 14:23:08 +08:00
Tian Hao
7cf5eea36f component/bt : fix blufi second init fail bug 2017-06-15 11:05:21 +08:00
island
e2e5f4caae component/bt: Fix can't get remote's feature bug
- Slave send version_ind cause some Android 7.0 devices can't encrypt correctly
2017-06-14 21:56:59 +08:00
Jiang Jiang Jian
ae7269d39d Merge branch 'bugfix/btdm_smp_auth_complete_error' into 'master'
component/bt: Change the btc layer data copy method.

See merge request !844
2017-06-14 15:16:38 +08:00
Jiang Jiang Jian
6b3a559ee7 Merge branch 'bugfix/btdm_master_write_service_change_ccc' into 'master'
component/bt: Fix slave initiate service change ccc discovery procedure bug

See merge request !847
2017-06-14 15:12:45 +08:00
island
c5debed621 component/bt: Fix bug while writing slave's service change characteristic
- Fix slave initiate service discovery procedure
- Fix master re-discovery every time connection established
- Optimize service discovery char ccc write procedure
- Optimize esp_log_buffer function
- Modify default supervision timeout from 20s to 2s
2017-06-14 13:12:38 +08:00
Yulong
4734ba40b0 component/bt: Change the btc layer data copy method. 2017-06-09 04:32:01 -04:00
Yulong
e5adfb8119 component/bt: correct the security demo pair status code. 2017-06-09 02:37:28 -04:00
Jiang Jiang Jian
b78242da58 Merge branch 'bugfix/btdm_rebase_update_param_#9626' into 'master'
component/bt: rebase the btdm_updata_param_bug_#9626 to the new master.

See merge request !808
2017-06-06 20:55:23 +08:00
Yulong
e6acc32df6 component/bt: rebase the btdm_updata_param_bug_#9626 to the new master.
- Added the error code for the time out status.
2017-06-06 05:51:31 -04:00
zhiweijian
f5a59f4f78 component/bt: add open and close event for gatts
1.added open event and close event for gatts.
2.used esp_log_buffer_char/hex for gattc scan result.
2017-06-01 15:01:54 +08:00
jack
fc130fba86 fix bug that files missing commit in MR 773 2017-05-31 19:37:39 +08:00
Guido García
3d6da958d3 Fix typo in comment
This is a minor fix (moudule -> module)

Merges https://github.com/espressif/esp-idf/pull/555
2017-05-17 10:44:56 +10:00
island
da67773b02 component/bt: fix adv stop event bug and add attribute table create
error

- Fix bug that advertising stop event produced while calling start_adv function
- Modify gatt server adv data and scan rsp data raw setting
- add create attribute table error msg
- Delete redundant printf in previous commits
2017-05-08 15:44:36 +08:00
Jiang Jiang Jian
fd079a8bd6 Merge branch 'bugfix/set_scan_bug_rebase_#10399' into 'master'
component/bt: component/bt: Check own address and filter policy for validity.

rebase the invalid scan params not report error.

See merge request !736
2017-05-05 17:47:27 +08:00
Yulong
0a56b748df component/bt:change the ESP_PUBLIC_ADDR to BLE_ADDR_TYPE_PUBLIC. 2017-05-05 04:46:08 -04:00
zhiweijian
fb45ee7a4c Component/bt: add new cmd for blufi ,ESP32 close a gatt connection 2017-05-04 20:31:58 +08:00
Yulong
c0825b35c1 component/bt:fix the bug with gatt client cant not receive the gatt server service change event. 2017-05-02 22:53:48 -04:00
Ivan Grokhotkov
6f0a9f76cd Merge branch 'feature/ci_minor_fixes' into 'master'
ci minor fixes



See merge request !707
2017-04-28 00:25:13 +08:00
Jiang Jiang Jian
0759897bfb Merge branch 'bugfix/btdm_gattc_adv_bug' into 'master'
component/bt: Fix memory leakage, connection fail bugs

- Fix memory leakage while deregisting gatt app
- Fix Android connection failed problem
- Fix service_uuid_len error in adv data

See merge request !706
2017-04-27 21:13:16 +08:00
Anton Maklakov
079b0128de build: Fix comments and avoid build warning 2017-04-27 10:51:45 +08:00
island
a3717515a2 component/bt: Fix memory leakage, connection fail bugs
- Fix memory leakage while deregisting gatt app
- Fix Android connection failed problem
- Fix service_uuid_len error in adv data
2017-04-26 16:07:56 +08:00
Yulong
a4d9aadeca component/bt:Merge the new master to this branch 2017-04-25 08:14:54 -04:00
Yulong
09f69fe9ea Merge branch 'master' of ssh://gitlab.espressif.cn:27227/idf/esp-idf 2017-04-25 07:58:24 -04:00
Yulong
67863ec495 component/bt:Added the GATTS_INCLUDED macro to the bta layer 2017-04-19 08:06:38 -04:00
Yulong
22ccf6c368 component/bt:rebase the BT_BLE_separate to the new master 2017-04-17 22:53:43 -04:00
Asuki Kono
a797dca528 Replace to strncmp from strcmp to check device_name on examples/bluetooth/gatt_client
(Amended slightly from version in https://github.com/espressif/esp-idf/pull/502 to
account for differences when adv_name is a prefix of device_name.)
2017-04-18 10:29:36 +10:00
Yulong
c6a516f122 component/bt:move the btdm_rebase_ssp_api branch to this branch 2017-04-13 10:14:28 -04: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
941a12cb4e bt component: Add stop adv/scan completed event 2017-04-12 14:19:16 +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
Tian Hao
d90a35af19 component/bt : modify bluetooth config style 2017-04-06 11:35:53 +08:00
Tian Hao
f5ebeb4c4d component/bt : add uart(1/2) as HCI IO directly 2017-04-05 21:23:42 +08:00
wangmengyang
9d745be3f7 Merge branch 'master' into feature/btdm_avrc 2017-03-31 12:51:45 +08:00
wangmengyang
c9d29d109e component/bt: fix the dependence issue in Kconfig 2017-03-30 21:16:11 +08:00
Angus Gratton
821c70f5d7 examples: Standardise naming of files, symbols, etc. in examples
* Use "example" in all example function & variable names,
  ie use i2c_example_xxx instead of i2c_xxx for example functions.
  Closes #198 https://github.com/espressif/esp-idf/issues/198
* Mark example functions, etc. static
* Replace uses of "test" & "demo" with "example"
* Split the UART example into two
* Rename "main" example files to end with "_main.c" for disambiguation
2017-03-27 17:42:05 +11:00
wangmengyang
2a5d01a930 component/bt: clean up the A2DP sink example 2017-03-18 16:02:54 +08:00
wangmengyang
a849ce9942 component/bt: fix and move the a2dp-sink project 2017-03-17 21:31:59 +08:00
Ivan Grokhotkov
4813ab2d28 examples: check return value of nvs_flash_init
nvs_flash_init may return an error code in some cases, and applications
should check this error code (or at least assert on it being ESP_OK, to
make potential issues more immediately obvious).

This change modifies all the examples which use NVS to check the error
code. Most examples get a simple ESP_ERROR_CHECK assert, while NVS
examples, OTA example, and NVS unit tests get a more verbose check which
may be used in real applications.
2017-03-15 10:44:54 +08:00
Tian Hao
b582697889 component/bt : add adv/scan start complete event
1. indicate adv/scan start complete success or failed
2. controller do limit of adv/scan concurrence, so add some codes to report adv/scan start failed or not.
2017-02-23 17:54:22 +08:00
Tian Hao
4bd5b0c91a component/bt : add bt enable/disable for power save
1. add new APIs bt controller enable/disab/deinit
2. make bt controller work need to call two APIs of esp_bt_controller_init and enable
3. modify phy init to make mac reset once
2017-02-17 19:24:58 +08:00
Tian Hao
cf917567e9 component/bt : use real adv data to set raw adv data 2017-02-10 16:40:40 +08:00
Mike Ryan
74aff89918 gatts_demo: re-enter advertising after client disconnects
In the existing tree, after a connected client disconnects the device
will never re-enter the advertising state. Additional clients will not
be able to discover or connect to the device. This patch forces the
device back into the advertising state upon disconnection.

Resolves Pull Request #217 https://github.com/espressif/esp-idf/pull/217
2017-01-20 14:57:41 +11:00
Jiang Jiang Jian
aea18f6e74 Merge branch 'feature/btdm_raw_adv' into 'master'
Feature/btdm raw adv

Add APIs to set raw advertising data and scan response data by user self.

See merge request !451
2017-01-19 18:57:39 +08:00
Tian Hao
0073ff3acd component/bt : add api to set raw adv_data/scan_rsp_data
1. add api to set raw scan response data
2. add api to set raw scan response data
3. update doxygen
4. add menuconfig to config gatt server demo
2017-01-19 17:36:40 +08:00
krzychb
16b23a407c Added links from api category TOC to example category folders
Typo fix in bluetooth README.md
2017-01-18 21:21:02 +01:00
krzychb
0b6598c492 Added README.md to example category folders 2017-01-18 21:03:15 +01:00
Tian Hao
5508826509 component/bt : fix gatts demo mistakes & unpeg notify bug 2017-01-17 20:13:25 +08:00
Krzysztof Budzynski
382999b378 Moved examples to new folders / categories. Removed example numbers from example names 2017-01-16 23:08:35 +01:00