Commit graph

1337 commits

Author SHA1 Message Date
Xia Xiaotian 10d26549fa Coexist: fix some coexist bugs
1. Fix high beacon and broadcast packets loss ratio of WiFi to
   make MDNS test pass.
2. Improve stability of WiFi performance with a little sacrifice
   of throughput.
3. Improve BLE advertising and connection performance with
   dynamic priority. It sacrifices a little WiFi throughput, but
   achieves balance between WiFi and Bluetooth.
2019-09-30 11:42:05 +08:00
lly 5a94142481 ble_mesh: fix client model invalid address access 2019-09-27 15:28:10 +08:00
Jiang Jiang Jian c776991233 Merge branch 'bugfix/kconfig_corrections_v4.0' into 'release/v4.0'
Fix Kconfig issues discovered by upstream Kconfiglib (v4.0)

See merge request espressif/esp-idf!6195
2019-09-25 16:26:40 +08:00
Jiang Jiang Jian a21eb04cc6 Merge branch 'bugfix/btdm_a2dp_sink_media_suspend_cmd_unack_for_v4.0' into 'release/v4.0'
bugfix/btdm_a2dp_sink_media_suspend_cmd_unack_for_v4.0(backport v4.0)

See merge request espressif/esp-idf!5940
2019-09-25 16:12:43 +08:00
Jiang Jiang Jian 116d0c8145 Merge branch 'bugfix/ble_mesh_queue_task_init_check_v4.0' into 'release/v4.0'
ble_mesh: check ble mesh queue and task init status (v4.0)

See merge request espressif/esp-idf!6193
2019-09-25 15:08:23 +08:00
Roland Dobai fc738680f8 Fix Kconfig issues discovered by upstream Kconfiglib 2019-09-25 08:25:51 +02:00
Prasad Alatkar 499accb652 BT/Bluedroid: Add support to set min encryption key size requirement (backport)
- Backport of IDF MR!6122.
- Modifies `smp_utils.c` to add check on encryption key size received from
  peer.
- Modifies `esp_ble_gap_set_security_param` API to add minimum encryption key
  size requirement.
2019-09-25 11:57:21 +08:00
Jiang Jiang Jian 988147a451 Merge branch 'bugfix/btdm_loop_in_feature_req_ext_v4.0' into 'release/v4.0'
components/bt: Fix sending LMP_features_req_ext in a loop

See merge request espressif/esp-idf!6023
2019-09-25 11:52:10 +08:00
lly 9e6c56f9f2 ble_mesh: check ble mesh queue and task init status 2019-09-25 11:03:18 +08:00
Prasad Alatkar daa65b6f91 NimBLE: Add optional mbedTLS support to NimBLE (backport)
- NimBLE: Additional menuconfig option to enable mbedTLS instead of Tinycrypt from
  NimBLE, changes `component.mk` & `CMakeLists.txt` for the same.
- Addition of NimBLE stack size configuration and misc changes.
- mbedTLS: Addition of `CMAC` and `ECP_RESTARTABLE` to mbedTLS menuconfig option and
  `esp_config.h`.
- Example: Minor changes to `app_mesh.c` application.
2019-09-23 21:37:40 +08:00
wangmengyang 6cad60f34b bugfix that call of esp_a2d_media_ctrl(ESP_A2D_MEDIA_CTRL_SUSPEND) will not get an ACK from callback on A2DP sink 2019-09-23 03:22:34 +00:00
Angus Gratton 62be877ada bluetooth: Remove bt.h header (deprecated in v3.1-dev) 2019-09-19 18:45:36 +10:00
Jiang Jiang Jian 05d3665a14 Merge branch 'bugfix/ble_mesh_get_timer_remaining_time_v4.0' into 'release/v4.0'
ble_mesh: fix ble mesh get timer remaining time (v4.0)

See merge request espressif/esp-idf!6059
2019-09-18 16:38:31 +08:00
lly 1e01accaa4 ble_mesh: fix duplicate memory free during receiving status message 2019-09-16 17:30:03 +08:00
lly 77f186a7b9 ble_mesh: make unicast elem lookup O(1) 2019-09-16 15:06:52 +08:00
Jiang Jiang Jian dbf2c3d480 Merge branch 'bugfix/btdm_config_msbc_v4.0' into 'release/v4.0'
components/bt: Disable Wide Bond Speech when SCO data path is PCM

See merge request espressif/esp-idf!5979
2019-09-12 13:23:54 +08:00
lly 8dbb2083ea ble_mesh: fix ble mesh get timer remaining time 2019-09-10 17:01:03 +08:00
lly 55f687c763 ble_mesh: update ble mesh examples sdkconfig.defaults 2019-09-09 18:10:52 +08:00
lly 329388fa47 ble_mesh: fix ble mesh btc may caused memory leak 2019-09-09 18:10:47 +08:00
lly 0f36dabcaf ble_mesh: fix publication period timestamp initialization 2019-09-09 18:10:42 +08:00
lly 0299e22dd0 ble_mesh: remove useless mesh_opcode 2019-09-09 18:10:34 +08:00
lly f072c5af4e ble_mesh: fix bt_mesh_net_resend() caused compiling error 2019-09-09 17:47:56 +08:00
lly 6982663380 ble_mesh: fix adhering to the configured Friend Queue size 2019-09-09 17:47:47 +08:00
lly 1d970ad276 ble_mesh: remove useless code bt_mesh_trans_resend() 2019-09-09 17:47:30 +08:00
lly a73cc70af9 ble_mesh: lpn remove msg from cache on rejection 2019-09-09 17:47:24 +08:00
lly 225ee8e5d1 ble_mesh: introduce a helper for send callback function 2019-09-09 17:47:18 +08:00
lly fa4cd56d00 ble_mesh: fix heartbeat sending on friendship established/lost 2019-09-09 17:47:07 +08:00
lly 15f8b0fccc ble_mesh: fix checking for active heartbeat publication 2019-09-09 17:46:49 +08:00
lly 97080afba2 ble_mesh: fix starting iv update when not on primary subnet 2019-09-09 17:46:43 +08:00
lly 612822d8c9 ble_mesh: fix canceling publication retransmit timer 2019-09-09 17:46:35 +08:00
lly ff6cb921c3 ble_mesh: fix resending segments on correct bearer 2019-09-09 17:46:27 +08:00
lly 6f7b7c552d ble_mesh: fix not sending all segments through the Friend Queue 2019-09-09 17:46:19 +08:00
lly e00186e683 ble_mesh: fix canceled buffer memory leak 2019-09-09 17:46:06 +08:00
lly a734b3b1bc ble_mesh: remove some useless copy during ecdh calculation 2019-09-09 17:45:59 +08:00
lly 6de637811f ble_mesh: move heartbeat sending to transport layer 2019-09-09 17:45:52 +08:00
lly 6ec0c6743a ble_mesh: fix provisioning send error handling 2019-09-09 17:45:44 +08:00
lly 299c86cc84 ble_mesh: fix rejecting invalid remote public key 2019-09-09 17:45:27 +08:00
lly d123f6c04b ble_mesh: add error checks for scan start/stop 2019-09-09 17:45:20 +08:00
lly 3c17bf1a6f ble_mesh: rename reset_link() to reset_adv_link() 2019-09-09 17:45:14 +08:00
lly 8fb20e4529 ble_mesh: fix public key mismatch error handling 2019-09-09 17:45:06 +08:00
lly e020d1055a ble_mesh: update protocol error timeout from zephyr 2019-09-09 17:44:17 +08:00
lly 05e4b28a74 ble_mesh: fix segmented message RPL behavior 2019-09-09 17:44:11 +08:00
lly 27bc688ed8 ble_mesh: clear LPN sent_req on failure 2019-09-09 17:43:59 +08:00
lly a214fb2821 ble_mesh: update proxy sar operation from zephyr 2019-09-09 17:43:46 +08:00
lly 6b7b9d1550 ble_mesh: fix postponing storage deadline indefinitely 2019-09-09 17:43:40 +08:00
lly 18b873b2e3 ble_mesh: fix RPL storage timeout handling 2019-09-09 17:43:29 +08:00
lly d1755c1484 ble_mesh: fix output MIC with additional data 2019-09-09 17:43:23 +08:00
lly 152ebb104d ble_mesh: remove non-standard relay opearation 2019-09-09 17:43:13 +08:00
lly e3b304997f ble_mesh: fix finding netkey/appkey/devkey for tx/rx msg 2019-09-09 17:43:04 +08:00
lly 1e20ed4849 ble_mesh: fix failed to set device role caused mem leak 2019-09-09 17:42:50 +08:00
lly 59b663c43d ble_mesh: ble mesh btc miscellaneous modifications 2019-09-09 17:42:43 +08:00
lly e9e28c1265 ble_mesh: fix MESH/NODE/FRND/FN/BV-11-C related bug 2019-09-09 17:42:35 +08:00
lly 7030d612e2 ble_mesh: fix MESH/NODE/CFG/GPXY/BV-02-C & MESH/NODE/CFG/NID/BV-02-C related bug 2019-09-09 17:42:20 +08:00
lly 2c852b0d74 ble_mesh: fix MESH/NODE/CFG/HBS/BV-01-C related bug 2019-09-09 17:42:08 +08:00
lly 708bff3b17 ble_mesh: rename ble mesh client model variables and functions 2019-09-09 17:42:00 +08:00
lly 317f4c5ff5 ble_mesh: reorganize ble mesh model files 2019-09-09 17:41:54 +08:00
lly 2c025824d7 ble_mesh: sync zephyr v1.14.0 bt_hex() 2019-09-09 17:41:41 +08:00
lly 9b95064018 ble_mesh: fix provisioner prov auth bug 2019-09-09 17:41:34 +08:00
baohongde 6afb2743e7 components/bt: Fix sending LMP_features_req_ext in a loop
Remove xtensa/xtruntime.h at the same time
2019-09-06 12:04:16 +08:00
Jiang Jiang Jian 1b8ed9abf0 Merge branch 'bugfix/btdm_crash_in_sket_ist_v4.0' into 'release/v4.0'
Fix 2 bugs in r_ld_fm_sket_isr

See merge request espressif/esp-idf!5947
2019-09-05 12:02:26 +08:00
baohongde 01f0c8ef16 components/bt: Rename some macros 2019-09-03 10:28:49 +08:00
Zac Bond a774406b91 Use CONFIG value instead of hard-coded value.
Add intermediate defines.

Use CONFIG_BTU_TASK_STACK_SIZE instead of hard-coded value in Bluedroid component
2019-09-03 10:28:12 +08:00
Jiang Jiang Jian 4b8e4ff248 Merge branch 'bugfix/btdm_linking_fail_with_toolchain_8.2.0_v4.0' into 'release/v4.0'
components/bt: Fix linking fail with toolchain 8.2.0

See merge request espressif/esp-idf!5967
2019-09-02 22:22:22 +08:00
baohongde ad70ab8957 components/bt: Disable Wide Bond Speech when SCO data path is PCM 2019-09-02 20:55:17 +08:00
baohongde 1d0142d25d components/bt: Fix linking fail with toolchain 8.2.0 2019-08-30 17:56:01 +08:00
baohongde 4af9504a65 components/bt: Remove unused macro in menuconfig 2019-08-29 19:58:58 +08:00
baohongde 6222040888 Fix 2 bugs in r_ld_fm_sket_isr
1. When remove two elt in the 1st isr, then assert in then 2nd one.
2. When timestamp of first elt is equal to sket_clkn, then crash.
2019-08-29 11:31:57 +08:00
baohongde 61ba1c3026 components/bt: backport 2 BT bugfix about controller
1.Bugfix btdm sleep twice after wakeup request
2.Set the minimum encryption key size to be 7 octects for BR/EDR link for preventing KNOB attack
    This patch is to address the CVE-2019-9506 vulnerability.
2019-08-27 10:42:40 +08:00
zhiweijian 90bbea65c1 Component/bt: fix some BLE bugs
- fix data loss and send same pkt twice sometimes
- fix adv data error in air sometimes
- fix adv start/stop crash sometimes
2019-08-26 20:29:01 +08:00
Angus Gratton b803c7328a Merge branch 'bugfix/btdm_some_unallocated_memory' into 'master'
Bugfix/btdm some unallocated memory

See merge request espressif/esp-idf!5629
2019-07-30 09:41:09 +08:00
Prasad Alatkar 1f0d682406 NimBLE: Update submodule to fix bug in delete bond procedure
- Fixes bug in `get_nvs_db_attribute` related to getting correct index while
  deleting bond in NVS.
- MR raised on esp-nimble branch: https://gitlab.espressif.cn:6688/espressif/esp-nimble/merge_requests/12
2019-07-29 19:00:21 +08:00
baohongde f77a5851bb component/bt: Fix BLE SMP free without init 2019-07-26 14:40:03 +08:00
baohongde d1f774bc0a component/bt: Avoid PLC to use unallocated memory
Closes https://github.com/espressif/esp-idf/pull/3799
2019-07-26 14:39:50 +08:00
Jiang Jiang Jian fcb668ec9c Merge branch 'bugfix/btdm_AVRC_command_fail_while_playing' into 'master'
components/bt: Fix AVRCP command will not be executed while playing music

See merge request espressif/esp-idf!5458
2019-07-22 11:45:19 +08:00
Hrishikesh Dhayagude c75240a939 NimBLE: Give an option to configuration no of bonds and CCCD's to save through menuconfig 2019-07-19 14:34:57 +08:00
baohongde f048be924c components/bt: Fix AVRCP command will not be executed while playing music 2019-07-16 08:50:36 +00:00
baohongde f8c107fbe3 components/bt: Fix compile error with new toolchain
Closes https://github.com/espressif/esp-idf/issues/3331
Closes https://github.com/espressif/esp-idf/issues/3734
2019-07-09 17:50:43 +08:00
Jiang Jiang Jian 27628ef133 Merge branch 'doc/add_ble_mesh_doxyfile' into 'master'
ble_mesh: add Doxyfile for core apis & model apis

See merge request espressif/esp-idf!5401
2019-07-05 20:55:39 +08:00
zhiweijian 6029ef1b58 component/bt: fix rxwinsz assert in ble and wifi coex 2019-07-04 19:44:59 +08:00
Jiang Jiang Jian a831fe596b Merge branch 'bugfix/btdm_conn_fail_with_some_speaker' into 'master'
components/bt: Fix connect fail with some speakers

See merge request espressif/esp-idf!5358
2019-07-04 19:23:19 +08:00
lly ff40911a51 ble_mesh: add Doxyfile for core apis & model apis 2019-07-03 17:58:09 +08:00
Hrishikesh Dhayagude daa71d5e18 Fix the irrelevant characters added to test the config options 2019-07-03 17:17:14 +08:00
Hrishikesh Dhayagude 46a268dc78 Correct UUID value for ESP_GATT_UUID_ENVIRONMENTAL_SENSING_SVC 2019-07-03 16:49:30 +08:00
baohongde 60a3f3e09d components/bt: Fix Wrong bt lib from commit "Bluetooth component refactoring" 2019-07-03 04:44:04 +00:00
Prasad Alatkar 396258380a NimBLE: update nimble submodule
- Update submodule to fix https://jira.espressif.com:8443/browse/BT-192.
- Upstream PR: https://github.com/apache/mynewt-nimble/pull/427
2019-07-02 11:26:24 +08:00
Jiang Jiang Jian 70474ae844 Merge branch 'feature/btdm_avrcp_volume' into 'master'
components/bt: Add AVRCP feature about volume

See merge request idf/esp-idf!5209
2019-06-30 16:40:10 +08:00
Hrishikesh Dhayagude 21165edf41 Bluetooth component refactoring 2019-06-30 16:39:00 +08:00
baohongde 30d7002731 components/bt: Add AVRCP feature about volume 2019-06-30 03:46:15 +00:00
Jiang Jiang Jian 45364fe54e Merge branch 'bugfix/btdm_fail_to_config_url_in_eir' into 'master'
components/bt: Fix fail to config URL in EIR

See merge request idf/esp-idf!5352
2019-06-27 14:27:35 +08:00
Hrishikesh Dhayagude 917589e784 Fix typo from the commit "Reduce the size of DRAM" 2019-06-27 10:48:47 +08:00
Jiang Jiang Jian 4fc411e744 Merge branch 'bugfix/btdm_fix_hci_enhance_conn_complete_evt_unpack_error' into 'master'
component/bt: fix hci enhance connection complete event unpack error

See merge request idf/esp-idf!4889
2019-06-26 16:45:39 +08:00
Jiang Jiang Jian 291e25baa6 Merge branch 'bugfix/btdm_add_readme_for_BLE_demos' into 'master'
Component/bt: add readme doc for BLE demos

See merge request idf/esp-idf!4890
2019-06-26 16:04:28 +08:00
baohongde 84e9e243d0 components/bt: Fix connect fail with some speakers 2019-06-26 14:50:13 +08:00
Jiang Jiang Jian 1a34d65e4c Merge branch 'bugfix/btdm_intr_wdt_after_controller_disable_then_enable' into 'master'
bugfix/btdm_intr_wdt_after_controller_disable_then_enable

See merge request idf/esp-idf!5301
2019-06-26 14:05:48 +08:00
baohongde 79ba509384 components/bt: Fix fail to config URL in EIR 2019-06-26 11:58:41 +08:00
Renz Christian Bagaporo 31ec634730 bt: fix build issue
Source files and include directories were appended to variables
used by the previous component registration command.
2019-06-25 16:53:37 +08:00
Angus Gratton 9a412d3a08 Merge branch 'feature/use_new_component_registration_apis' into 'master'
Use new component registration API

See merge request idf/esp-idf!4898
2019-06-25 10:24:11 +08:00
Hrishikesh Dhayagude 342f6a7829 Port NimBLE Host Stack on ESP-IDF 2019-06-25 09:03:58 +08:00
zhiweijian 6559f935ce component/bt: fix unpack hci enhance connection complete event error 2019-06-24 07:05:01 +00:00
Island fc3253163e component/ble_mesh: ESP BLE Mesh release
1. BLE Mesh Core

* Provisioning: Node Role
    * Advertising and GATT bearer
    * Authentication OOB

* Provisioning: Provisioner Role
    * Advertising and GATT bearer
    * Authentication OOB

* Networking
    * Relay
    * Segmentation and Reassembly
    * Key Refresh
    * IV Update

* Proxy Support

* Multiple Client Models Run Simultaneously
    * Support multiple client models send packets to different nodes simultaneously
    * No blocking between client model and server

* NVS Storage
    * Store Provisioning Data of BLE Mesh Nodes in Flash

2. BLE Mesh Applications

* BLE Mesh Node & Provisioner
    * Node Example
    * Provisioner Example
    * Node + Generic OnOff Client Example

* Fast Provisioning
    * Vendor Fast Prov Server Model
    * Vendor Fast Prov Client Model
    * Examples

* Wi-Fi & BLE Mesh Coexistence
    * Example

* BLE Mesh Console Commands
    * Example

3. BLE Mesh Models

* Foundation Models
    * Configuration Server Model
    * Configuration Client Model
    * Health Server Model
    * Health Client Model

* Generic Client Models
    * Generic OnOff Client
    * Generic Level Client
    * Generic Location Client
    * Generic Default Transition Timer Client
    * Generic Power OnOff Client
    * Generic Power Level Client
    * Generic Battery Client
    * Generic Property Client

* Generic Server Models
    * Generic OnOff Server (Example)

* Lighting Client Models
    * Light Lightness Client
    * Light CTL Client
    * Light HSL Client
    * Light xyL Client
    * Light LC Client

* Sensor Client Model
    * Sensor Client

* Time and Scenes Client Models
    * Time Client
    * Scene Client
    * Scheduler Client
2019-06-24 11:31:24 +08:00