mirror of
https://github.com/espressif/esp-idf.git
synced 2026-09-22 13:01:16 +03:00
Feat: support standard and vs Set_Min_Key_Size HCI Closes CBI-2178 See merge request espressif/esp-idf!52292
2023 lines
74 KiB
Plaintext
2023 lines
74 KiB
Plaintext
config BT_BTC_TASK_STACK_SIZE
|
||
int "Bluetooth event (callback to application) task stack size"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 3072
|
||
help
|
||
This select btc task stack size
|
||
|
||
choice BT_BLUEDROID_PINNED_TO_CORE_CHOICE
|
||
prompt "The cpu core which Bluedroid run"
|
||
depends on BT_BLUEDROID_ENABLED && !FREERTOS_UNICORE
|
||
help
|
||
Which the cpu core to run Bluedroid. Can choose core0 and core1.
|
||
Can not specify no-affinity.
|
||
|
||
config BT_BLUEDROID_PINNED_TO_CORE_0
|
||
bool "Core 0 (PRO CPU)"
|
||
config BT_BLUEDROID_PINNED_TO_CORE_1
|
||
bool "Core 1 (APP CPU)"
|
||
depends on !FREERTOS_UNICORE
|
||
endchoice
|
||
|
||
config BT_BLUEDROID_PINNED_TO_CORE
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_BLUEDROID_PINNED_TO_CORE_0
|
||
default 1 if BT_BLUEDROID_PINNED_TO_CORE_1
|
||
default 0
|
||
|
||
config BT_BTU_TASK_STACK_SIZE
|
||
int "Bluetooth Bluedroid Host Stack task stack size"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 4352
|
||
help
|
||
This select btu task stack size
|
||
|
||
config BT_BLUEDROID_ESP_COEX_VSC
|
||
bool "Enable Espressif Vendor-specific HCI commands for coexist status configuration"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default y if (ESP_COEX_SW_COEXIST_ENABLE || BT_CONTROLLER_DISABLED)
|
||
default n
|
||
help
|
||
Enable Espressif Vendor-specific HCI commands for coexist status configuration
|
||
|
||
config BT_CLASSIC_ENABLED
|
||
bool "Classic Bluetooth"
|
||
depends on BT_BLUEDROID_ENABLED && ((BT_CONTROLLER_ENABLED && SOC_BT_CLASSIC_SUPPORTED) || BT_CONTROLLER_DISABLED)
|
||
default n
|
||
help
|
||
For now this option needs "SMP_ENABLE" to be set to yes
|
||
|
||
config BT_CLASSIC_MAX_RECONNECT_ON_COLLISION
|
||
int "Maximum number of reconnection attempts in case of collision"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default 5
|
||
help
|
||
The maximum number of reconnection attempts when encountering rejection of connection
|
||
request with error code 0x0B(Connection Already Exists) from peer device
|
||
|
||
config BT_CLASSIC_ENABLE_POWER_CTRL_VSC
|
||
bool "Enable Espressif Vendor-specific HCI commands for power control of Classic Bluetooth"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
help
|
||
Enable Espressif Vendor-specific HCI commands for power control of Classic Bluetooth
|
||
|
||
choice BT_ENC_KEY_SIZE_CTRL_ENABLED
|
||
prompt "configure encryption key size (Deprecated)"
|
||
warning "This option is deprecated and will be removed in a future release"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default BT_ENC_KEY_SIZE_CTRL_VSC
|
||
help
|
||
This chooses the support status of configuring encryption key size
|
||
Deprecated: This option is deprecated and will be removed in a future release.
|
||
|
||
config BT_ENC_KEY_SIZE_CTRL_STD
|
||
bool "Supported by standard HCI command (Deprecated)"
|
||
warning "This option is deprecated and will be removed in a future release"
|
||
help
|
||
Deprecated: This option is deprecated and will be removed in a future release.
|
||
|
||
config BT_ENC_KEY_SIZE_CTRL_VSC
|
||
depends on (BT_CONTROLLER_DISABLED || (BT_CONTROLLER_ENABLED && SOC_BT_H2C_ENC_KEY_CTRL_ENH_VSC_SUPPORTED))
|
||
warning "This option is deprecated and will be removed in a future release"
|
||
bool "Supported by Vendor-specific HCI command (Deprecated)"
|
||
help
|
||
Deprecated: This option is deprecated and will be removed in a future release.
|
||
|
||
config BT_ENC_KEY_SIZE_CTRL_NONE
|
||
bool "Not supported (Deprecated)"
|
||
warning "This option is deprecated and will be removed in a future release"
|
||
help
|
||
Deprecated: This option is deprecated and will be removed in a future release.
|
||
endchoice
|
||
|
||
config BT_CLASSIC_ENABLE_ENC_KEY_SIZE_CTRL_VSC
|
||
bool "Supported by Vendor-specific HCI command to set min encryption key size"
|
||
depends on (BT_CONTROLLER_DISABLED || (BT_CONTROLLER_ENABLED && SOC_BT_H2C_ENC_KEY_CTRL_ENH_VSC_SUPPORTED))
|
||
default y if BT_ENC_KEY_SIZE_CTRL_VSC # for backward compatibility
|
||
default n if BT_CONTROLLER_DISABLED
|
||
default y
|
||
help
|
||
This enables vendor-specific command as a fallback
|
||
when the standard command is not supported.
|
||
|
||
config BT_CLASSIC_BQB_ENABLED
|
||
bool "Host Qualitifcation support for Classic Bluetooth"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
help
|
||
This enables functionalities of Host qualification for Classic Bluetooth.
|
||
|
||
config BT_A2DP_ENABLE
|
||
bool "A2DP"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
select BT_AVRCP_ENABLED
|
||
help
|
||
Advanced Audio Distribution Profile
|
||
|
||
config BT_A2DP_USE_EXTERNAL_CODEC
|
||
bool "Use External Codec for A2DP"
|
||
depends on BT_A2DP_ENABLE
|
||
default n
|
||
help
|
||
If enable, user shall register audio codec capability to A2DP and encode/decode
|
||
audio data in application layer. The internal codec in A2DP will be remove in
|
||
the future, it is recommend to use external codec for new design.
|
||
|
||
config BT_A2DP_CODEC_AAC_ENABLED
|
||
bool "A2DP AAC codec"
|
||
depends on BT_A2DP_USE_EXTERNAL_CODEC
|
||
default n
|
||
help
|
||
Enable support for A2DP AAC codec when using an external codec.
|
||
Currently, only the A2DP sink supports AAC codec.
|
||
|
||
config BT_A2DP_SEP_NUM_MAX
|
||
int "Maximum number of Stream End Points that can be registered for A2DP"
|
||
depends on BT_A2DP_USE_EXTERNAL_CODEC
|
||
default 2 if BT_A2DP_CODEC_AAC_ENABLED
|
||
default 1
|
||
range 1 3
|
||
help
|
||
The maximum number of Stream End Points (SEPs) that can be registered for A2DP.
|
||
The default value is 2. If you need to register more SEPs, you can increase this value.
|
||
|
||
config BT_AVRCP_ENABLED
|
||
bool
|
||
depends on BT_A2DP_ENABLE
|
||
default y
|
||
help
|
||
Audio/Video Remote Control Profile, AVRCP and A2DP are coupled in Bluedroid,
|
||
AVRCP still controlled by A2DP option, this is a dummy option currently
|
||
|
||
menu "AVRCP Features"
|
||
depends on BT_AVRCP_ENABLED
|
||
|
||
config BT_AVRCP_CT_COVER_ART_ENABLED
|
||
bool "AVRCP CT Cover Art"
|
||
default y
|
||
select BT_GOEPC_ENABLED
|
||
help
|
||
This enable Cover Art feature for AVRCP CT role, Cover Art requires AVRCP
|
||
version 1.6 or higher. Therefore, if the Cover Art feature is enabled,
|
||
AVRCP version will set to 1.6, otherwise, it will remain at 1.5
|
||
|
||
endmenu
|
||
|
||
config BT_SPP_ENABLED
|
||
bool "SPP"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
help
|
||
This enables the Serial Port Profile
|
||
|
||
config BT_PAN_ENABLED
|
||
bool "PAN (Personal Area Networking)"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
help
|
||
This enables the Personal Area Networking Profile
|
||
|
||
config BT_L2CAP_ENABLED
|
||
bool "BT L2CAP"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
help
|
||
This enables the Logical Link Control and Adaptation Layer Protocol.
|
||
Only supported classic bluetooth.
|
||
|
||
config BT_SDP_COMMON_ENABLED
|
||
bool "BT SDP COMMON"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default y if BT_L2CAP_ENABLED
|
||
default n
|
||
help
|
||
This enables common SDP operation, such as SDP record creation and deletion.
|
||
|
||
config BT_SDP_PAD_LEN
|
||
int "One or more BT SDP attributes total allocated length (bytes)"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default 300
|
||
range BT_SDP_ATTR_LEN 1024
|
||
help
|
||
This is the total size of all SDP attributes allowed.
|
||
Any attributes that exceed this size are truncated.
|
||
The default value is 300.
|
||
|
||
config BT_SDP_ATTR_LEN
|
||
int "Single BT SDP attribute allocated length (bytes)"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default 300
|
||
range 300 1024
|
||
help
|
||
This is the maximum allowed size for a single SDP attribute.
|
||
Any attributes that exceed this size are truncated.
|
||
The default value is 300.
|
||
|
||
menuconfig BT_HFP_ENABLE
|
||
bool "Hands Free/Handset Profile"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
help
|
||
Hands Free Unit and Audio Gateway can be included simultaneously
|
||
but they cannot run simultaneously due to internal limitations.
|
||
|
||
config BT_HFP_CLIENT_ENABLE
|
||
bool "Hands Free Unit"
|
||
depends on BT_HFP_ENABLE
|
||
default y
|
||
|
||
config BT_HFP_AG_ENABLE
|
||
bool "Audio Gateway"
|
||
depends on BT_HFP_ENABLE
|
||
default y
|
||
|
||
choice BT_HFP_AUDIO_DATA_PATH
|
||
prompt "audio(SCO) data path"
|
||
depends on BT_HFP_ENABLE
|
||
default BT_HFP_AUDIO_DATA_PATH_HCI if IDF_TARGET_ESP32S31
|
||
help
|
||
SCO data path, i.e. HCI or PCM. This option is set using API
|
||
"esp_bredr_sco_datapath_set" in Bluetooth host. Default SCO data
|
||
path can also be set in Bluetooth Controller.
|
||
ESP32-S31 does not support PCM SCO routing, so only HCI is available.
|
||
|
||
config BT_HFP_AUDIO_DATA_PATH_PCM
|
||
bool "PCM"
|
||
depends on !IDF_TARGET_ESP32S31
|
||
config BT_HFP_AUDIO_DATA_PATH_HCI
|
||
bool "HCI"
|
||
endchoice
|
||
|
||
config BT_HFP_USE_EXTERNAL_CODEC
|
||
bool "Use External Codec for HFP"
|
||
depends on BT_HFP_ENABLE && BT_HFP_AUDIO_DATA_PATH_HCI
|
||
default n
|
||
help
|
||
If enable, user shall encode/decode audio data in application layer. The internal
|
||
codec in HFP will be remove in the future, it is recommend to use external codec
|
||
for new design.
|
||
|
||
config BT_HFP_WBS_ENABLE
|
||
bool "Wideband Speech"
|
||
depends on BT_HFP_ENABLE && BT_HFP_AUDIO_DATA_PATH_HCI
|
||
default y
|
||
help
|
||
This enables Wideband Speech. Should disable it when SCO data path is PCM.
|
||
Otherwise there will be no data transmitted via GPIOs.
|
||
|
||
config BT_HFP_LC3_ENABLE
|
||
bool "Super Wideband Speech (LC3-SWB)"
|
||
depends on BT_HFP_ENABLE && BT_HFP_WBS_ENABLE && BT_HFP_USE_EXTERNAL_CODEC
|
||
default n
|
||
help
|
||
Enable HFP 1.9 LC3-SWB codec negotiation support.
|
||
Requires Wideband Speech (codec negotiation) to be enabled.
|
||
|
||
menuconfig BT_HID_ENABLED
|
||
bool "Classic BT HID"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
help
|
||
This enables the BT HID functionalities
|
||
|
||
config BT_HID_HOST_ENABLED
|
||
bool "Classic BT HID Host"
|
||
depends on BT_HID_ENABLED
|
||
default n
|
||
help
|
||
This enables the BT HID Host
|
||
|
||
config BT_HID_DEVICE_ENABLED
|
||
bool "Classic BT HID Device"
|
||
depends on BT_HID_ENABLED
|
||
help
|
||
This enables the BT HID Device
|
||
|
||
config BT_HID_REMOVE_DEVICE_BONDING_ENABLED
|
||
bool "Remove Device Bonding Information when HID Virtual Cable Unplugging"
|
||
depends on BT_HID_ENABLED
|
||
default y
|
||
help
|
||
This enables the BT HID to remove device bonding information when virtual cable unplugging,
|
||
removing device bonding information is optional in HID 1.0 but mandatory in HID 1.1
|
||
|
||
menuconfig BT_PBAC_ENABLED
|
||
bool "PBAP Client"
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
select BT_GOEPC_ENABLED
|
||
help
|
||
This enables the Phone Book Access Profile Client
|
||
|
||
config BT_PBAC_SUPPORTED_FEAT
|
||
hex "PBAP Client Supported Features"
|
||
depends on BT_PBAC_ENABLED
|
||
default 0x000003FF
|
||
help
|
||
Set the supported features of PBAP Client, the default value is supported all features
|
||
|
||
config BT_PBAC_PREFERRED_MTU
|
||
int "PBAP Client Preferred MTU"
|
||
depends on BT_PBAC_ENABLED
|
||
default 0
|
||
help
|
||
MTU is limited by the max MTU of transport layer, and should not be smaller than 255,
|
||
but can be set to zero to use a default MTU of transport layer
|
||
|
||
config BT_GOEPC_ENABLED
|
||
bool
|
||
depends on BT_CLASSIC_ENABLED
|
||
default n
|
||
help
|
||
This enables the BT GOEP Profile Client role
|
||
|
||
config BT_BLE_ENABLED
|
||
bool "Bluetooth Low Energy"
|
||
depends on BT_BLUEDROID_ENABLED && (!BTDM_CTRL_MODE_BR_EDR_ONLY)
|
||
default y
|
||
help
|
||
This enables Bluetooth Low Energy
|
||
|
||
menuconfig BT_GATTS_ENABLE
|
||
bool "Include GATT server module(GATTS)"
|
||
depends on BT_BLE_ENABLED
|
||
default y
|
||
help
|
||
This option can be disabled when the app work only on gatt client mode
|
||
|
||
config BT_GATTS_PPCP_CHAR_GAP
|
||
bool "Enable Peripheral Preferred Connection Parameters characteristic in GAP service"
|
||
depends on BT_GATTS_ENABLE
|
||
default n
|
||
help
|
||
This enables "Peripheral Preferred Connection Parameters" characteristic (UUID: 0x2A04)
|
||
in GAP service that has connection parameters like min/max connection interval, slave
|
||
latency and supervision timeout multiplier
|
||
|
||
config BT_BLE_BLUFI_ENABLE
|
||
bool "Include blufi function"
|
||
depends on BT_GATTS_ENABLE
|
||
default n
|
||
help
|
||
This option can be close when the app does not require blufi function.
|
||
|
||
config BT_BLUFI_BLE_SMP_ENABLE
|
||
bool "Enable BLE SMP support for BluFi"
|
||
depends on BT_BLE_BLUFI_ENABLE && BT_BLE_SMP_ENABLE
|
||
default n
|
||
help
|
||
Enable BLE Security Manager Protocol (SMP) for BluFi.
|
||
When enabled, BluFi will support BLE pairing and encryption
|
||
before Wi-Fi provisioning, providing a more secure provisioning process.
|
||
This feature is only supported with the Bluedroid host.
|
||
|
||
config BT_GATT_MAX_SR_PROFILES
|
||
int "Max GATT Server Profiles"
|
||
depends on BT_GATTS_ENABLE && BT_BLUEDROID_ENABLED
|
||
range 1 32
|
||
default 8
|
||
help
|
||
Maximum GATT Server Profiles Count
|
||
|
||
config BT_GATT_MAX_SR_ATTRIBUTES
|
||
int "Max GATT Service Attributes"
|
||
depends on BT_GATTS_ENABLE && BT_BLUEDROID_ENABLED
|
||
range 1 500
|
||
default 100
|
||
help
|
||
Maximum GATT Service Attributes Count
|
||
|
||
|
||
choice BT_GATTS_SEND_SERVICE_CHANGE_MODE
|
||
prompt "GATTS Service Change Mode"
|
||
default BT_GATTS_SEND_SERVICE_CHANGE_AUTO
|
||
depends on BT_GATTS_ENABLE
|
||
help
|
||
Service change indication mode for GATT Server.
|
||
|
||
config BT_GATTS_SEND_SERVICE_CHANGE_MANUAL
|
||
bool "GATTS manually send service change indication"
|
||
help
|
||
Manually send service change indication through API esp_ble_gatts_send_service_change_indication()
|
||
|
||
config BT_GATTS_SEND_SERVICE_CHANGE_AUTO
|
||
bool "GATTS automatically send service change indication"
|
||
help
|
||
Let Bluedroid handle the service change indication internally
|
||
|
||
endchoice
|
||
|
||
config BT_GATTS_SEND_SERVICE_CHANGE_MODE
|
||
int
|
||
depends on BT_GATTS_ENABLE
|
||
default 0 if BT_GATTS_SEND_SERVICE_CHANGE_AUTO
|
||
default 1 if BT_GATTS_SEND_SERVICE_CHANGE_MANUAL
|
||
default 0
|
||
|
||
config BT_GATTS_ROBUST_CACHING_ENABLED
|
||
bool "Enable Robust Caching on Server Side"
|
||
depends on BT_GATTS_ENABLE
|
||
default n
|
||
help
|
||
This option enables the GATT robust caching feature on the server.
|
||
if turned on, the Client Supported Features characteristic, Database Hash characteristic,
|
||
and Server Supported Features characteristic will be included in the GAP SERVICE.
|
||
|
||
|
||
config BT_GATTS_DEVICE_NAME_WRITABLE
|
||
bool "Allow to write device name by GATT clients"
|
||
depends on BT_GATTS_ENABLE
|
||
default n
|
||
help
|
||
Enabling this option allows remote GATT clients to write device name
|
||
|
||
config BT_GATTS_APPEARANCE_WRITABLE
|
||
bool "Allow to write appearance by GATT clients"
|
||
depends on BT_GATTS_ENABLE
|
||
default n
|
||
help
|
||
Enabling this option allows remote GATT clients to write appearance
|
||
|
||
config BT_GATTS_SECURITY_LEVELS_CHAR
|
||
bool "Enable LE GATT Security Levels Characteristic"
|
||
depends on BT_GATTS_ENABLE
|
||
default n
|
||
help
|
||
Enable LE GATT Security Levels Characteristic
|
||
|
||
menuconfig BT_GATTC_ENABLE
|
||
bool "Include GATT client module(GATTC)"
|
||
depends on BT_BLE_ENABLED
|
||
default y
|
||
help
|
||
This option can be close when the app work only on gatt server mode
|
||
|
||
config BT_GATTC_MAX_CACHE_CHAR
|
||
int "Max gattc cache characteristic for discover"
|
||
depends on BT_GATTC_ENABLE
|
||
range 1 500
|
||
default 40
|
||
help
|
||
Maximum GATTC cache characteristic count
|
||
|
||
config BT_GATTC_NOTIF_REG_MAX
|
||
int "Max gattc notify(indication) register number"
|
||
depends on BT_GATTC_ENABLE
|
||
range 1 255
|
||
default 5
|
||
help
|
||
Maximum GATTC notify(indication) register number
|
||
|
||
config BT_GATTC_CACHE_NVS_FLASH
|
||
bool "Save gattc cache data to nvs flash"
|
||
depends on BT_GATTC_ENABLE
|
||
default n
|
||
help
|
||
This select can save gattc cache data to nvs flash
|
||
|
||
config BT_GATTC_CONNECT_RETRY_COUNT
|
||
int "The number of attempts to reconnect if the connection establishment failed"
|
||
depends on BT_GATTC_ENABLE
|
||
range 0 255
|
||
default 3
|
||
help
|
||
The number of attempts to reconnect if the connection establishment failed
|
||
|
||
config BT_BLE_ESTAB_LINK_CONN_TOUT
|
||
int "Timeout of BLE connection establishment"
|
||
depends on BT_GATTC_ENABLE
|
||
range 1 60
|
||
default 30
|
||
help
|
||
Bluetooth Connection establishment maximum time, if connection time exceeds this value, the connection
|
||
establishment fails, ESP_GATTC_OPEN_EVT or ESP_GATTS_OPEN_EVT is triggered.
|
||
|
||
menuconfig BT_BLE_SMP_ENABLE
|
||
bool "Include BLE security module(SMP)"
|
||
depends on BT_BLE_ENABLED
|
||
default y
|
||
help
|
||
This option can be close when the app not used the ble security connect.
|
||
|
||
config BT_SMP_SLAVE_CON_PARAMS_UPD_ENABLE
|
||
bool "Slave enable connection parameters update during pairing"
|
||
depends on BT_BLE_SMP_ENABLE
|
||
default n
|
||
help
|
||
In order to reduce the pairing time, slave actively initiates connection parameters
|
||
update during pairing.
|
||
|
||
config BT_BLE_SMP_ID_RESET_ENABLE
|
||
bool "Reset device identity when all bonding records are deleted"
|
||
depends on BT_BLE_SMP_ENABLE
|
||
default n
|
||
help
|
||
There are tracking risks associated with using a fixed or static IRK.
|
||
If enabled this option, Bluedroid will assign a new randomly-generated IRK
|
||
when all pairing and bonding records are deleted. This would decrease the ability
|
||
of a previously paired peer to be used to determine whether a device
|
||
with which it previously shared an IRK is within range.
|
||
|
||
config BT_BLE_SMP_BOND_NVS_FLASH
|
||
bool "Save SMP bonding keys to nvs flash"
|
||
depends on BT_BLE_SMP_ENABLE
|
||
default y
|
||
help
|
||
This select can save SMP bonding keys to nvs flash
|
||
|
||
config BT_BLE_SMP_HARDENED_REPAIRING
|
||
bool "Reject re-pairing that weakens an existing bond"
|
||
depends on BT_BLE_SMP_ENABLE
|
||
default y
|
||
help
|
||
Controls whether a peer that is already bonded may replace that bond with a
|
||
weaker one.
|
||
|
||
Enabled: when a bond already exists for the peer, a new pairing procedure is
|
||
refused if it would end up with less MITM protection, without Secure Connections
|
||
while the stored bond used it, or with a shorter encryption key. The security
|
||
level announced in a Security Request is also enforced on the pairing that
|
||
follows it. The link is dropped along with the pairing so that a peer cannot keep
|
||
retrying with different parameters. The drawback is that a peer which
|
||
legitimately needs to re-pair at a lower level is refused for good, for instance
|
||
one whose IO capabilities changed so that Passkey Entry became Just Works. Such a
|
||
peer has to be unbonded by the application first, using
|
||
esp_ble_remove_bond_device(). A refusal from this check always keeps the stored
|
||
bond, even when BT_BLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_CENTRAL or
|
||
BT_BLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_PERIPHERAL is enabled, so a peer cannot
|
||
erase the baseline by requesting a downgrade.
|
||
|
||
Disabled: any peer can replace an existing bond with one at a lower security
|
||
level, without Secure Connections, or with a shorter encryption key, and no
|
||
authentication is needed to do so. These are the re-pairing downgrades described
|
||
by the BLERP paper as V3, V4 and V6. Only choose this if a peer really has to
|
||
re-pair at a lower level and the application cannot unbond it beforehand.
|
||
|
||
config BT_BLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_CENTRAL
|
||
bool "Remove the stored bond when pairing fails as Central"
|
||
depends on BT_BLE_SMP_ENABLE
|
||
default y
|
||
help
|
||
Controls whether the bonding keys kept in NVS are erased when a BLE pairing
|
||
procedure fails while the local device is the Central (link-layer master) on
|
||
that connection. A failed encryption attempt is reported through the same
|
||
authentication complete path and counts as a failure here. This is the role
|
||
typically used by GATT Client applications.
|
||
|
||
Enabled: historical Central behaviour and the default, so applications that rely
|
||
on a failed pairing implicitly unbonding the peer keep working after an upgrade.
|
||
It also means every peer able to make pairing fail can drop the bond without any
|
||
authentication, by simply sending a Pairing Failed, by letting the 30 second SMP
|
||
timeout expire, or by disconnecting in the middle of the procedure. As Central,
|
||
that implicit unbond is also what recovers when the peer deleted the bond on its
|
||
side and answers LL_ENC_REQ with KEY_MISSING.
|
||
|
||
Disabled: the bond survives a failed pairing in the Central role and unbonding
|
||
becomes an explicit application decision through esp_ble_remove_bond_device().
|
||
A stale LTK then makes every following connection fail to encrypt until the
|
||
application unbonds from the ESP_GAP_BLE_AUTH_CMPL_EVT failure callback,
|
||
preferably after a few attempts rather than on the first one.
|
||
|
||
A downgrade refused by BT_BLE_SMP_HARDENED_REPAIRING never erases the bond,
|
||
regardless of this option.
|
||
|
||
config BT_BLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_PERIPHERAL
|
||
bool "Remove the stored bond when pairing fails as Peripheral"
|
||
depends on BT_BLE_SMP_ENABLE
|
||
default n
|
||
help
|
||
Controls whether the bonding keys kept in NVS are erased when a BLE pairing
|
||
procedure fails while the local device is the Peripheral (link-layer slave) on
|
||
that connection. A failed encryption attempt is reported through the same
|
||
authentication complete path and counts as a failure here. This is the role
|
||
typically used by GATT Server applications.
|
||
|
||
Disabled (default): the bond survives a failed pairing in the Peripheral role.
|
||
Unbonding is an explicit application decision through esp_ble_remove_bond_device().
|
||
This avoids losing the bond when the user walks away mid-pairing, when the SMP
|
||
timeout expires, or when a peer sends Pairing Failed. Legitimate re-pairing from
|
||
a Central that deleted its own bond is still possible through a new Pairing
|
||
Request, as long as BT_BLE_SMP_HARDENED_REPAIRING does not refuse a downgrade.
|
||
|
||
Enabled: restores the historical behaviour where any pairing failure as
|
||
Peripheral erases the NVS bond. Prefer this only if the application depends on
|
||
that implicit unbond and cannot call esp_ble_remove_bond_device() itself.
|
||
|
||
A downgrade refused by BT_BLE_SMP_HARDENED_REPAIRING never erases the bond,
|
||
regardless of this option.
|
||
|
||
config BT_BLE_SMP_UNBOND_ON_KEY_MISSING
|
||
bool "Drop the local LE keys when the peer reports it has no key"
|
||
depends on BT_BLE_SMP_ENABLE
|
||
default n
|
||
help
|
||
As Central, an encryption attempt using the stored LTK fails with "PIN or Key
|
||
Missing" when the peer has deleted the bond on its side. This option controls how
|
||
the stack reacts to that specific error.
|
||
|
||
Enabled: the local LE keys are discarded and the link is kept up, so the
|
||
application can re-pair straight away and recovers without user interaction. The
|
||
problem is that an impersonating device can report the same error, so a peer can
|
||
strip the stored security level without any authentication and then re-pair at a
|
||
weaker level. That is exactly the re-pairing downgrade the BLERP paper describes,
|
||
which is why this is not the default.
|
||
|
||
Disabled: the link is dropped and the keys are kept, so no peer can drop the bond
|
||
by refusing to encrypt. The problem is that the same stale LTK is then used again
|
||
on every following connection and encryption keeps failing, which never recovers
|
||
on its own. The application has to call esp_ble_remove_bond_device() from the
|
||
ESP_GAP_BLE_AUTH_CMPL_EVT failure callback to get out of it.
|
||
|
||
config BT_BLE_PERIPH_PSEUDO_ADDR_BOND
|
||
bool "Peripheral dual local-identity bond isolation (pseudo address)"
|
||
depends on BT_BLE_SMP_ENABLE && BT_BLE_50_EXTEND_ADV_EN
|
||
default n
|
||
help
|
||
Enable Host-internal pseudo address derivation so that one peer phone
|
||
connecting through two distinct local identities (e.g. Public and a
|
||
fixed Static Random advertising set) is treated as two independent
|
||
peers. Each connection gets its own device record, LTK and NVS bond
|
||
section keyed by pseudo = f(local_identity, peer). The over-the-air
|
||
and SMP cryptography keep using the real peer and the real local
|
||
identity; the pseudo address never leaves the Host.
|
||
|
||
This is intended for BLE 5.0 Extended Advertising peripherals that need
|
||
simultaneous dual-identity connections with isolated bonds. Requires
|
||
BT_BLE_50_EXTEND_ADV_EN. When disabled (default) the stack behaves
|
||
exactly as before.
|
||
|
||
config BT_BLE_RPA_SUPPORTED
|
||
bool "Update RPA to Controller"
|
||
depends on (BT_BLE_SMP_ENABLE && ((BT_CONTROLLER_ENABLED && !SOC_BLE_DEVICE_PRIVACY_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n if (BT_CONTROLLER_ENABLED && !SOC_BLE_DEVICE_PRIVACY_SUPPORTED)
|
||
default y if BT_CONTROLLER_DISABLED
|
||
help
|
||
This enables controller RPA list function.
|
||
For ESP32, ESP32 only support network privacy mode. If this option is enabled, ESP32 will only accept
|
||
advertising packets from peer devices that contain private address, HW will not receive the advertising
|
||
packets contain identity address after IRK changed. If this option is disabled, address resolution will
|
||
be performed in the host, so the functions that require controller to resolve address in the white list
|
||
cannot be used. This option is disabled by default on ESP32, please enable or disable this option according
|
||
to your own needs.
|
||
|
||
For other BLE chips, devices support network privacy mode and device privacy mode,
|
||
users can switch the two modes according to their own needs. So this option is enabled by default.
|
||
|
||
menu "Encrypted Advertising Data (EAD)"
|
||
depends on BT_BLE_ENABLED
|
||
|
||
config BT_BLE_FEAT_ENC_ADV_DATA
|
||
bool "Encrypted Advertising Data APIs"
|
||
default n
|
||
help
|
||
Enable AES-CCM encrypt and decrypt APIs (esp_ble_ead_encrypt /
|
||
esp_ble_ead_decrypt) for advertising payloads, as defined in
|
||
Bluetooth Core Specification 5.4. Uses the same cryptographic
|
||
stack as SMP (TinyCrypt or mbedTLS).
|
||
|
||
Enable this alone for a scanner/central that decrypts EAD with a
|
||
pre-shared key, or when the peer publishes Key Material over GATT.
|
||
|
||
config BT_GATTS_KEY_MATERIAL_CHAR
|
||
bool "Encrypted Data Key Material Characteristic"
|
||
depends on BT_GATTS_ENABLE
|
||
select BT_BLE_FEAT_ENC_ADV_DATA
|
||
default n
|
||
help
|
||
Expose session key and IV through the GAP Key Material characteristic
|
||
(UUID 0x2B88). A central can read it over an encrypted GATT link and
|
||
then decrypt advertising data with esp_ble_ead_decrypt().
|
||
|
||
Selecting this option also enables Encrypted Advertising Data APIs.
|
||
Set the published key with esp_ble_gap_set_key_material().
|
||
|
||
endmenu
|
||
|
||
menu "Bluedroid debug option"
|
||
config BT_BLUEDROID_MEM_DEBUG
|
||
bool "Bluedroid memory debug"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default n
|
||
help
|
||
Bluedroid memory debug
|
||
|
||
config BT_BLUEDROID_MEM_STATS
|
||
bool "Bluedroid memory statistics"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
depends on !BT_BLUEDROID_MEM_DEBUG
|
||
default n
|
||
help
|
||
Enable Bluedroid memory usage statistics
|
||
|
||
config BT_BLUEDROID_THREAD_DEBUG
|
||
bool "Bluedroid thread debug"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default n
|
||
help
|
||
Enable Bluedroid thread debug mode.
|
||
Used to debug whether the thread is blocked and
|
||
dump information about the thread’s related work queue.
|
||
|
||
config BT_BLUEDROID_THREAD_BLOCK_TIME
|
||
int "OSI thread block time (in ms)"
|
||
depends on BT_BLUEDROID_THREAD_DEBUG
|
||
default 1000
|
||
help
|
||
Indicates how long it takes for the thread to execute an item
|
||
before it is considered blocked.
|
||
|
||
config BT_BLUEDROID_THREAD_BLOCK_MSG
|
||
int "OSI thread block message count"
|
||
depends on BT_BLUEDROID_THREAD_DEBUG
|
||
default 50
|
||
help
|
||
Indicates how many messages are added to the queue
|
||
while the threadis executing an item before it is considered blocked.
|
||
endmenu #BT debug option
|
||
|
||
config BT_STACK_NO_LOG
|
||
bool "Disable BT debug logs (minimize bin size)"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default y if BLE_LOG_ENABLED && !BLE_LOG_HOST_LOG
|
||
default n
|
||
help
|
||
This select can save the rodata code size
|
||
|
||
menu "BT DEBUG LOG LEVEL"
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
|
||
choice BT_LOG_HCI_TRACE_LEVEL
|
||
prompt "HCI layer"
|
||
default BT_LOG_HCI_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_HCI_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_HCI_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for HCI layer
|
||
|
||
config BT_LOG_HCI_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_HCI_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_HCI_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_HCI_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_HCI_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_HCI_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_HCI_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_HCI_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_HCI_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_HCI_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_HCI_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_HCI_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_HCI_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_HCI_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_HCI_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_BTM_TRACE_LEVEL
|
||
prompt "BTM layer"
|
||
default BT_LOG_BTM_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_BTM_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_BTM_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for BTM layer
|
||
|
||
config BT_LOG_BTM_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_BTM_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_BTM_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_BTM_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_BTM_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_BTM_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_BTM_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_BTM_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_BTM_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_BTM_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_BTM_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_BTM_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_BTM_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_BTM_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_BTM_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_L2CAP_TRACE_LEVEL
|
||
prompt "L2CAP layer"
|
||
default BT_LOG_L2CAP_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_L2CAP_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_L2CAP_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for L2CAP layer
|
||
|
||
config BT_LOG_L2CAP_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_L2CAP_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_L2CAP_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_L2CAP_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_L2CAP_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_L2CAP_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_L2CAP_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_L2CAP_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_L2CAP_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_L2CAP_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_L2CAP_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_L2CAP_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_L2CAP_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_L2CAP_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_L2CAP_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_RFCOMM_TRACE_LEVEL
|
||
prompt "RFCOMM layer"
|
||
default BT_LOG_RFCOMM_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for RFCOMM layer
|
||
|
||
config BT_LOG_RFCOMM_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_RFCOMM_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_RFCOMM_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_RFCOMM_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_RFCOMM_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_RFCOMM_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_RFCOMM_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_RFCOMM_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_RFCOMM_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_RFCOMM_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_RFCOMM_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_RFCOMM_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_RFCOMM_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_RFCOMM_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_RFCOMM_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_SDP_TRACE_LEVEL
|
||
prompt "SDP layer"
|
||
default BT_LOG_SDP_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for SDP layer
|
||
|
||
config BT_LOG_SDP_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_SDP_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_SDP_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_SDP_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_SDP_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_SDP_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_SDP_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_SDP_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_SDP_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_SDP_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_SDP_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_SDP_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_SDP_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_SDP_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_SDP_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_GAP_TRACE_LEVEL
|
||
prompt "GAP layer"
|
||
default BT_LOG_GAP_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_GAP_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_GAP_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for GAP layer
|
||
|
||
config BT_LOG_GAP_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_GAP_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_GAP_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_GAP_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_GAP_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_GAP_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_GAP_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_GAP_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_GAP_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_GAP_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_GAP_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_GAP_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_GAP_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_GAP_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_GAP_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_BNEP_TRACE_LEVEL
|
||
prompt "BNEP layer"
|
||
default BT_LOG_BNEP_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for BNEP layer
|
||
|
||
config BT_LOG_BNEP_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_BNEP_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_BNEP_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_BNEP_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_BNEP_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_BNEP_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_BNEP_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_BNEP_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_BNEP_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_BNEP_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_BNEP_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_BNEP_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_BNEP_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_BNEP_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_BNEP_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_PAN_TRACE_LEVEL
|
||
prompt "PAN layer"
|
||
default BT_LOG_PAN_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for PAN layer
|
||
|
||
config BT_LOG_PAN_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_PAN_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_PAN_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_PAN_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_PAN_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_PAN_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_PAN_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_PAN_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_PAN_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_PAN_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_PAN_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_PAN_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_PAN_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_PAN_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_PAN_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_A2D_TRACE_LEVEL
|
||
prompt "A2D layer"
|
||
default BT_LOG_A2D_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for A2D layer
|
||
|
||
config BT_LOG_A2D_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_A2D_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_A2D_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_A2D_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_A2D_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_A2D_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_A2D_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_A2D_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_A2D_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_A2D_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_A2D_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_A2D_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_A2D_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_A2D_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_A2D_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_AVDT_TRACE_LEVEL
|
||
prompt "AVDT layer"
|
||
default BT_LOG_AVDT_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for AVDT layer
|
||
|
||
config BT_LOG_AVDT_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_AVDT_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_AVDT_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_AVDT_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_AVDT_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_AVDT_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_AVDT_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_AVDT_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_AVDT_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_AVDT_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_AVDT_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_AVDT_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_AVDT_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_AVDT_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_AVDT_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_AVCT_TRACE_LEVEL
|
||
prompt "AVCT layer"
|
||
default BT_LOG_AVCT_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for AVCT layer
|
||
|
||
config BT_LOG_AVCT_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_AVCT_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_AVCT_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_AVCT_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_AVCT_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_AVCT_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_AVCT_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_AVCT_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_AVCT_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_AVCT_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_AVCT_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_AVCT_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_AVCT_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_AVCT_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_AVCT_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_AVRC_TRACE_LEVEL
|
||
prompt "AVRC layer"
|
||
default BT_LOG_AVRC_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for AVRC layer
|
||
|
||
config BT_LOG_AVRC_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_AVRC_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_AVRC_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_AVRC_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_AVRC_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_AVRC_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_AVRC_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_AVRC_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_AVRC_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_AVRC_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_AVRC_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_AVRC_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_AVRC_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_AVRC_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_AVRC_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_MCA_TRACE_LEVEL
|
||
prompt "MCA layer"
|
||
default BT_LOG_MCA_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for MCA layer
|
||
|
||
config BT_LOG_MCA_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_MCA_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_MCA_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_MCA_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_MCA_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_MCA_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_MCA_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_MCA_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_MCA_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_MCA_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_MCA_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_MCA_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_MCA_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_MCA_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_MCA_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_HID_TRACE_LEVEL
|
||
prompt "HID layer"
|
||
default BT_LOG_HID_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for HID layer
|
||
|
||
config BT_LOG_HID_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_HID_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_HID_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_HID_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_HID_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_HID_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_HID_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_HID_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_HID_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_HID_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_HID_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_HID_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_HID_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_HID_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_HID_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_APPL_TRACE_LEVEL
|
||
prompt "APPL layer"
|
||
default BT_LOG_APPL_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_APPL_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_APPL_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for APPL layer
|
||
|
||
config BT_LOG_APPL_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_APPL_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_APPL_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_APPL_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_APPL_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_APPL_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_APPL_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_APPL_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_APPL_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_APPL_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_APPL_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_APPL_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_APPL_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_APPL_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_APPL_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_GATT_TRACE_LEVEL
|
||
prompt "GATT layer"
|
||
default BT_LOG_GATT_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_GATT_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_GATT_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for GATT layer
|
||
|
||
config BT_LOG_GATT_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_GATT_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_GATT_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_GATT_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_GATT_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_GATT_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_GATT_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_GATT_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_GATT_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_GATT_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_GATT_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_GATT_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_GATT_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_GATT_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_GATT_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_SMP_TRACE_LEVEL
|
||
prompt "SMP layer"
|
||
default BT_LOG_SMP_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_SMP_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_SMP_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for SMP layer
|
||
|
||
config BT_LOG_SMP_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_SMP_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_SMP_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_SMP_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_SMP_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_SMP_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_SMP_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_SMP_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_SMP_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_SMP_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_SMP_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_SMP_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_SMP_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_SMP_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_SMP_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_BTIF_TRACE_LEVEL
|
||
prompt "BTIF layer"
|
||
default BT_LOG_BTIF_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_BTIF_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_BTIF_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for BTIF layer
|
||
|
||
config BT_LOG_BTIF_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_BTIF_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_BTIF_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_BTIF_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_BTIF_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_BTIF_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_BTIF_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_BTIF_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_BTIF_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_BTIF_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_BTIF_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_BTIF_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_BTIF_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_BTIF_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_BTIF_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_BTC_TRACE_LEVEL
|
||
prompt "BTC layer"
|
||
default BT_LOG_BTC_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_BTC_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_BTC_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for BTC layer
|
||
|
||
config BT_LOG_BTC_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_BTC_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_BTC_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_BTC_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_BTC_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_BTC_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_BTC_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_BTC_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_BTC_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_BTC_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_BTC_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_BTC_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_BTC_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_BTC_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_BTC_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_OSI_TRACE_LEVEL
|
||
prompt "OSI layer"
|
||
default BT_LOG_OSI_TRACE_LEVEL_EVENT if BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_OSI_TRACE_LEVEL_VERBOSE if BLE_LOG_HOST_LOG && !BT_LOG_CRITICAL_ONLY_HOST
|
||
default BT_LOG_OSI_TRACE_LEVEL_WARNING if !BLE_LOG_ENABLED
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for OSI layer
|
||
|
||
config BT_LOG_OSI_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_OSI_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_OSI_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_OSI_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_OSI_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_OSI_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_OSI_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_OSI_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_OSI_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_OSI_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_OSI_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_OSI_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_OSI_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_OSI_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_OSI_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
choice BT_LOG_BLUFI_TRACE_LEVEL
|
||
prompt "BLUFI layer"
|
||
default BT_LOG_BLUFI_TRACE_LEVEL_WARNING
|
||
depends on BT_BLUEDROID_ENABLED && !BT_STACK_NO_LOG
|
||
help
|
||
Define BT trace level for BLUFI layer
|
||
|
||
config BT_LOG_BLUFI_TRACE_LEVEL_NONE
|
||
bool "NONE"
|
||
config BT_LOG_BLUFI_TRACE_LEVEL_ERROR
|
||
bool "ERROR"
|
||
config BT_LOG_BLUFI_TRACE_LEVEL_WARNING
|
||
bool "WARNING"
|
||
config BT_LOG_BLUFI_TRACE_LEVEL_API
|
||
bool "API"
|
||
config BT_LOG_BLUFI_TRACE_LEVEL_EVENT
|
||
bool "EVENT"
|
||
config BT_LOG_BLUFI_TRACE_LEVEL_DEBUG
|
||
bool "DEBUG"
|
||
config BT_LOG_BLUFI_TRACE_LEVEL_VERBOSE
|
||
bool "VERBOSE"
|
||
endchoice
|
||
|
||
config BT_LOG_BLUFI_TRACE_LEVEL
|
||
int
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default 0 if BT_LOG_BLUFI_TRACE_LEVEL_NONE
|
||
default 1 if BT_LOG_BLUFI_TRACE_LEVEL_ERROR
|
||
default 2 if BT_LOG_BLUFI_TRACE_LEVEL_WARNING
|
||
default 3 if BT_LOG_BLUFI_TRACE_LEVEL_API
|
||
default 4 if BT_LOG_BLUFI_TRACE_LEVEL_EVENT
|
||
default 5 if BT_LOG_BLUFI_TRACE_LEVEL_DEBUG
|
||
default 6 if BT_LOG_BLUFI_TRACE_LEVEL_VERBOSE
|
||
default 2
|
||
|
||
endmenu #BT DEBUG LOG LEVEL
|
||
|
||
config BT_ACL_CONNECTIONS
|
||
int "BT/BLE MAX ACL CONNECTIONS"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
range 1 2 if IDF_TARGET_ESP32C2
|
||
range 1 9 if IDF_TARGET_ESP32 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3
|
||
range 1 15 if IDF_TARGET_ESP32H2
|
||
range 1 50
|
||
default 2 if IDF_TARGET_ESP32C2
|
||
default 4
|
||
help
|
||
Maximum BT/BLE connection count. The ESP32-C3/S3 chip supports a maximum of 10 instances,
|
||
including ADV, SCAN and connections. The ESP32-C3/S3 chip can connect up to 9 devices if
|
||
ADV or SCAN uses only one. If ADV and SCAN are both used, The ESP32-C3/S3 chip is connected
|
||
to a maximum of 8 devices. Because Bluetooth cannot reclaim used instances once ADV or SCAN
|
||
is used.
|
||
|
||
config BT_MULTI_CONNECTION_ENBALE
|
||
bool "Enable BLE multi-connections"
|
||
depends on BT_BLE_ENABLED
|
||
default y
|
||
help
|
||
Enable this option if there are multiple connections
|
||
|
||
config BT_ALLOCATION_FROM_SPIRAM_FIRST
|
||
bool "BT/BLE will first malloc the memory from the PSRAM"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default n
|
||
help
|
||
This select can save the internal RAM if there have the PSRAM
|
||
|
||
config BT_BLUEDROID_TASK_STACK_IN_EXT_MEM
|
||
bool "Place BT task stack in external memory"
|
||
depends on FREERTOS_TASK_CREATE_ALLOW_EXT_MEM && (!IDF_TARGET_ESP32 || SPIRAM_CACHE_WORKAROUND)
|
||
default n
|
||
help
|
||
Common prerequisites for placing Bluedroid host
|
||
task stacks in PSRAM.
|
||
|
||
config BT_BLUEDROID_BTU_TASK_STACK_IN_EXT_MEM
|
||
bool "Place BTU task stack in external memory"
|
||
depends on BT_BLUEDROID_TASK_STACK_IN_EXT_MEM
|
||
default n
|
||
help
|
||
Allocate BTU_TASK stack from external SPIRAM using static task
|
||
allocation. TCB remains in internal DRAM.
|
||
|
||
BTU does not perform NVS operations directly.
|
||
|
||
config BT_BLUEDROID_HCI_TASK_STACK_IN_EXT_MEM
|
||
bool "Place HCI host task stack in external memory"
|
||
depends on BT_BLUEDROID_TASK_STACK_IN_EXT_MEM
|
||
default n
|
||
help
|
||
Allocate HCI host task (hciT) stack from external SPIRAM using
|
||
static task allocation. TCB remains in internal DRAM.
|
||
|
||
HCI does not perform NVS operations.
|
||
|
||
config BT_BLE_DYNAMIC_ENV_MEMORY
|
||
bool "Use dynamic memory allocation in BT/BLE stack"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default n
|
||
help
|
||
This select can make the allocation of memory will become more flexible
|
||
|
||
config BT_SMP_ENABLE
|
||
bool
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default BT_CLASSIC_ENABLED || BT_BLE_SMP_ENABLE
|
||
|
||
config BT_SMP_MAX_BONDS
|
||
int "BT/BLE maximum bond device count"
|
||
depends on BT_SMP_ENABLE
|
||
range 1 32
|
||
default 15
|
||
help
|
||
The number of security records for peer devices.
|
||
|
||
config BT_BLE_ACT_SCAN_REP_ADV_SCAN
|
||
bool "Report adv data and scan response individually when BLE active scan"
|
||
depends on BT_BLUEDROID_ENABLED && BT_BLE_ENABLED
|
||
default n
|
||
help
|
||
Originally, when doing BLE active scan, Bluedroid will not report adv to application layer
|
||
until receive scan response. This option is used to disable the behavior. When enable this option,
|
||
Bluedroid will report adv data or scan response to application layer immediately.
|
||
|
||
# Memory reserved at start of DRAM for Bluetooth stack
|
||
|
||
config BT_MAX_DEVICE_NAME_LEN
|
||
int "length of bluetooth device name"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
range 32 248
|
||
default 32
|
||
help
|
||
Bluetooth Device name length shall be no larger than 248 octets, If the broadcast data cannot contain
|
||
the complete device name, then only the shortname will be displayed, the rest parts that can't fit in
|
||
will be truncated.
|
||
|
||
config BT_BLE_RPA_TIMEOUT
|
||
int "Timeout of resolvable private address"
|
||
depends on BT_BLE_ENABLED
|
||
range 1 3600
|
||
default 900
|
||
help
|
||
This set RPA timeout of Controller and Host.
|
||
Default is 900 s (15 minutes). Range is 1 s to 1 hour (3600 s).
|
||
|
||
menuconfig BT_BLE_50_FEATURES_SUPPORTED
|
||
bool "Enable BLE 5.0 and above features(please disable BLE 4.2 if enable BLE 5.0)"
|
||
depends on (BT_BLE_ENABLED && ((BT_CONTROLLER_ENABLED && SOC_BLE_50_SUPPORTED) || BT_CONTROLLER_DISABLED))
|
||
default y
|
||
help
|
||
Enabling this option activates BLE 5.0 features.
|
||
This option is universally supported in chips that support BLE, except for ESP32.
|
||
BLE 4.2 and BLE 5.0 cannot be used simultaneously.
|
||
|
||
config BT_BLE_50_EXTEND_ADV_EN
|
||
bool "Enable BLE extend advertising"
|
||
depends on BT_BLE_50_FEATURES_SUPPORTED
|
||
default y
|
||
help
|
||
This enables BLE extend advertising
|
||
|
||
config BT_BLE_50_PERIODIC_ADV_EN
|
||
bool "Enable BLE periodic advertising"
|
||
depends on BT_BLE_50_EXTEND_ADV_EN
|
||
default y
|
||
help
|
||
This enables BLE periodic advertising
|
||
|
||
config BT_BLE_50_EXTEND_SCAN_EN
|
||
bool "Enable BLE extend scan"
|
||
depends on BT_BLE_50_FEATURES_SUPPORTED
|
||
default y
|
||
help
|
||
This enables BLE extend scan
|
||
|
||
config BT_BLE_50_EXTEND_SYNC_EN
|
||
bool "Enable BLE periodic advertising sync"
|
||
depends on BT_BLE_50_EXTEND_SCAN_EN
|
||
default y
|
||
help
|
||
This enables BLE periodic advertising sync
|
||
|
||
config BT_BLE_50_DTM_TEST_EN
|
||
bool "Enable BLE 5.0 DTM test"
|
||
depends on BT_BLE_50_FEATURES_SUPPORTED
|
||
default y
|
||
help
|
||
This enables BLE 5.0 direct test mode
|
||
|
||
config BT_BLE_FEAT_PERIODIC_ADV_SYNC_TRANSFER
|
||
bool "Enable BLE periodic advertising sync transfer feature"
|
||
depends on (BT_BLUEDROID_ENABLED && BT_BLE_50_PERIODIC_ADV_EN && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
This enables BLE periodic advertising sync transfer feature
|
||
|
||
config BT_BLE_FEAT_PERIODIC_ADV_ENH
|
||
bool "Enable periodic adv enhancements(adi support)"
|
||
depends on (BT_BLUEDROID_ENABLED && BT_BLE_50_PERIODIC_ADV_EN && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable the periodic advertising enhancements
|
||
|
||
config BT_BLE_FEAT_CREATE_SYNC_ENH
|
||
bool "Enable create sync enhancements(reporting disable and duplicate filtering enable support)"
|
||
depends on (BT_BLUEDROID_ENABLED && BT_BLE_50_EXTEND_SYNC_EN && ((BT_CONTROLLER_ENABLED && SOC_ESP_NIMBLE_CONTROLLER) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable the create sync enhancements
|
||
|
||
config BT_BLE_FEAT_CREATE_SYNC_RETRY_MAX
|
||
int "Maximum retry count for periodic advertising create sync"
|
||
depends on BT_BLE_50_EXTEND_SYNC_EN
|
||
default 3
|
||
range 0 16
|
||
help
|
||
Set the maximum retry count when periodic advertising create sync fails
|
||
with error code 0x3E (Connection Failed to be Established).
|
||
Set to 0 to disable retry. Default is 3.
|
||
|
||
menuconfig BT_BLE_FEAT_ISO_EN
|
||
bool "Enable BLE 5.2 iso feature"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_ISO_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable BLE 5.2 iso
|
||
|
||
config BT_BLE_FEAT_ISO_60_EN
|
||
bool "Enable ISO v6.0 feature"
|
||
depends on BT_BLE_FEAT_ISO_EN
|
||
default n
|
||
help
|
||
Enable iso 6.0 feature
|
||
|
||
config BT_BLE_FEAT_ISO_BIG_BROCASTER
|
||
bool "Enable BLE iso BIG broadcaster"
|
||
depends on BT_BLE_FEAT_ISO_EN
|
||
default y
|
||
help
|
||
Enable BLE 5.2 BIG broadcaster
|
||
|
||
config BT_BLE_FEAT_ISO_BIG_SYNCER
|
||
bool "Enable BLE iso BIG syncer"
|
||
depends on BT_BLE_FEAT_ISO_EN
|
||
default y
|
||
help
|
||
Enable BLE 5.2 BIG syncer
|
||
|
||
config BT_BLE_ISO_BIS_MAX_COUNT
|
||
int "Maximum bis count"
|
||
depends on BT_BLE_FEAT_ISO_EN && (BT_BLE_FEAT_ISO_BIG_BROCASTER || BT_BLE_FEAT_ISO_BIG_SYNCER)
|
||
default 2
|
||
range 1 31
|
||
help
|
||
Enable BLE 5.2 CIG peripheral
|
||
|
||
config BT_BLE_FEAT_ISO_CIG_CENTRAL
|
||
bool "Enable BLE iso CIG central"
|
||
depends on BT_BLE_FEAT_ISO_EN
|
||
default y
|
||
help
|
||
Enable BLE 5.2 CIG central
|
||
|
||
config BT_BLE_FEAT_ISO_CIG_PERIPHERAL
|
||
bool "Enable BLE iso CIG peripheral"
|
||
depends on BT_BLE_FEAT_ISO_EN
|
||
default y
|
||
help
|
||
Enable BLE 5.2 CIG peripheral
|
||
|
||
config BT_BLE_ISO_CIS_MAX_COUNT
|
||
int "Maximum cis count"
|
||
depends on BT_BLE_FEAT_ISO_EN && (BT_BLE_FEAT_ISO_CIG_CENTRAL || BT_BLE_FEAT_ISO_CIG_PERIPHERAL)
|
||
default 2
|
||
range 1 31
|
||
help
|
||
Enable BLE 5.2 CIG peripheral
|
||
|
||
choice BT_BLE_ISO_FLOW_CONTROL
|
||
prompt "Select ISO flow control type"
|
||
depends on BT_BLE_FEAT_ISO_EN
|
||
default BT_BLE_ISO_NON_STD_FLOW_CTRL
|
||
help
|
||
Select ISO flow control type
|
||
|
||
config BT_BLE_ISO_STD_FLOW_CTRL
|
||
bool "ISO standard flow control"
|
||
help
|
||
Enable ISO standard flow control
|
||
|
||
config BT_BLE_ISO_NON_STD_FLOW_CTRL
|
||
bool "ISO non-standard flow control"
|
||
help
|
||
Enable ISO non-standard flow control
|
||
|
||
endchoice
|
||
|
||
menuconfig BT_BLE_FEAT_CTE_EN
|
||
bool "Enable BLE CTE feature"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_CTE_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable BLE 5.1 CTE
|
||
|
||
config BT_BLE_FEAT_CTE_CONNECTIONLESS_EN
|
||
bool "Enable BLE CTE connectionless feature"
|
||
depends on BT_BLE_FEAT_CTE_EN
|
||
default y
|
||
help
|
||
Transmission of CTE in periodic advertising
|
||
|
||
config BT_BLE_FEAT_CTE_CONNECTION_EN
|
||
bool "Enable BLE CTE connection feature"
|
||
depends on BT_BLE_FEAT_CTE_EN
|
||
default y
|
||
help
|
||
Transmission of CTE by ACL connection
|
||
|
||
config BT_BLE_FEAT_POWER_CONTROL
|
||
bool "Enable BLE power control feature"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_POWER_CONTROL_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable BLE power control feature
|
||
|
||
config BT_BLE_FEAT_CONN_SUBRATING
|
||
bool "Enable BLE connection subrating feature"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_SUBRATE_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable BLE connection subrating feature
|
||
|
||
config BT_BLE_FEAT_PAWR_EN
|
||
bool "Enable Periodic Advertisement with Response(PAwR)"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_PERIODIC_ADV_WITH_RESPONSE) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable BLE Periodic Advertisement with Response(PAwR) feature
|
||
|
||
config BT_BLE_FEAT_ADV_CODING_SELECTION
|
||
bool "Enable Advertising Coding Selection"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_ADV_CODING_SELECT_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable Advertising Coding Selection
|
||
|
||
config BT_BLE_FEAT_CHANNEL_SOUNDING
|
||
bool "Enable BLE channel sounding"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_CHANNEL_SOUNDING_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable BLE channel sounding.
|
||
CS Security Requirements (Core 6.3) is configured separately via
|
||
BT_BLE_FEAT_CS_SECURITY_REQUIREMENTS.
|
||
|
||
config BT_BLE_FEAT_CS_SECURITY_REQUIREMENTS
|
||
bool "Enable BLE CS Security Requirements (Core 6.3)"
|
||
depends on BT_BLE_FEAT_CHANNEL_SOUNDING && ((BT_CONTROLLER_ENABLED && SOC_BLE_CS_SECURITY_REQUIREMENTS_SUPPORTED) || BT_CONTROLLER_DISABLED) # NOERROR
|
||
default n
|
||
help
|
||
Enable Channel Sounding security requirements HCI commands (Bluetooth Core 6.3).
|
||
Supports LE CS Set Security Requirements (0x00A7) and
|
||
LE CS Set Default Security Requirements (0x00A8).
|
||
Use esp_ble_cs_set_security_requirements() and
|
||
esp_ble_cs_set_default_security_requirements().
|
||
|
||
config BT_BLE_FEAT_ADV_MONITOR
|
||
bool "Enable BLE Advertising Monitor (LE Monitor Advertisement)"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_ADV_MONITOR_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable LE Monitor Advertisement feature (Bluetooth Core 6.0).
|
||
Allows the host to add devices to a monitor list and receive reports when
|
||
the controller detects advertising from those devices (e.g. RSSI threshold).
|
||
|
||
config BT_BLE_FEAT_DBAF
|
||
bool "Enable BLE Decision-Based Advertising Filtering (DBAF)"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_DBAF_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable Decision-Based Advertising Filtering (Bluetooth Core 6.0).
|
||
Supports LE Set Decision Data and LE Set Decision Instructions HCI commands.
|
||
|
||
config BT_BLE_FEAT_FRAME_SPACE_UPDATE
|
||
bool "Enable BLE Frame Space Update"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_FRAME_SPACE_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable Frame Space Update feature (Bluetooth Core 6.0).
|
||
|
||
config BT_BLE_FEAT_LL_EXT_FEAT
|
||
bool "Enable BLE LL Extended Feature Set"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_LL_EXT_FEAT_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable LL Extended Feature Set (Bluetooth Core 6.0).
|
||
Supports LE Read All Local/Remote Supported Features HCI commands.
|
||
|
||
config BT_BLE_FEAT_SHORTER_CONN_INTERVALS
|
||
bool "Enable BLE Shorter Connection Intervals (Core 6.2)"
|
||
depends on BT_BLE_FEAT_CONN_SUBRATING && (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_SHORTER_CONN_INTERVALS_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable Shorter Connection Intervals feature (Bluetooth Core 6.2).
|
||
Requires Connection Subrating (Core 5.3) per [Vol 6] Part B, Section 4.6.50.
|
||
Supports LE Connection Rate Request, LE Set Default Rate Parameters,
|
||
LE Read Minimum Supported Connection Interval commands and LE Connection Rate Change event.
|
||
Connection intervals use 125 us units (minimum 375 us). Use esp_ble_gap_connection_rate_request(),
|
||
esp_ble_gap_set_default_rate_parameters(), esp_ble_gap_read_min_supported_connection_interval()
|
||
and ESP_BLE_GAP_CONN_RATE_* conversion macros in esp_gap_ble_api.h.
|
||
|
||
config BT_BLE_FEAT_LE_UTP
|
||
bool "Enable BLE Unified Test Protocol (UTP)"
|
||
depends on (BT_BLE_50_FEATURES_SUPPORTED && ((BT_CONTROLLER_ENABLED && SOC_BLE_LE_UTP_SUPPORTED) || BT_CONTROLLER_DISABLED)) # NOERROR
|
||
default n
|
||
help
|
||
Enable LE Unified Test Protocol (Bluetooth Core 6.2).
|
||
Supports LE Enable UTP OTA Mode, LE UTP Send commands and LE UTP Receive event.
|
||
|
||
menuconfig BT_BLE_42_FEATURES_SUPPORTED
|
||
bool "Enable BLE 4.2 features(please disable BLE 5.0 if enable BLE 4.2)"
|
||
depends on BT_BLE_ENABLED
|
||
default y if IDF_TARGET_ESP32
|
||
default n
|
||
help
|
||
This enables BLE 4.2 features.
|
||
This option is universally supported by all ESP chips with BLE capabilities.
|
||
BLE 4.2 and BLE 5.0 cannot be used simultaneously.
|
||
|
||
config BT_BLE_42_DTM_TEST_EN
|
||
bool "Enable BLE 4.2 DTM test"
|
||
depends on BT_BLE_42_FEATURES_SUPPORTED
|
||
default y
|
||
help
|
||
This enables BLE 4.2 direct test mode
|
||
|
||
config BT_BLE_42_ADV_EN
|
||
bool "Enable BLE 4.2 advertising"
|
||
depends on BT_BLE_42_FEATURES_SUPPORTED
|
||
default y
|
||
help
|
||
This enables BLE v4.2 advertising
|
||
|
||
config BT_BLE_42_SCAN_EN
|
||
bool "Enable BLE 4.2 scan"
|
||
depends on BT_BLE_42_FEATURES_SUPPORTED
|
||
default y
|
||
help
|
||
This enables BLE v4.2 scan
|
||
|
||
config BT_BLE_VENDOR_HCI_EN
|
||
bool "Enable BLE Vendor HCI command and event"
|
||
depends on BT_BLE_ENABLED
|
||
default y
|
||
help
|
||
This enables BLE vendor HCI command and event
|
||
|
||
config BT_BLE_HIGH_DUTY_ADV_INTERVAL
|
||
bool "Enable BLE high duty advertising interval feature"
|
||
depends on BT_BLE_ENABLED
|
||
default n
|
||
help
|
||
This enable BLE high duty advertising interval feature
|
||
|
||
menu "Bluedroid L2CAP CoC"
|
||
# LE CoC client code is compiled only with GATTC and server code only with
|
||
# GATTS (see BLE_L2CAP_COC_CLIENT/SERVER_INCLUDED in bt_target.h). Without
|
||
# either, enabling CoC would silently compile out entirely, so require at
|
||
# least one GATT role to be enabled.
|
||
depends on BT_BLE_ENABLED && (BT_GATTC_ENABLE || BT_GATTS_ENABLE)
|
||
|
||
config BT_BLE_L2CAP_COC_ENABLED
|
||
bool "Enable BLE L2CAP Connection Oriented Channels"
|
||
default n
|
||
help
|
||
Enable LE Credit Based Flow Control mode L2CAP CoC in Bluedroid stack.
|
||
Independent of Classic Bluetooth L2CAP; does not affect esp_bt_l2cap_* APIs.
|
||
|
||
config BT_BLE_L2CAP_COC_MAX_CHAN
|
||
int "Maximum LE CoC channels"
|
||
depends on BT_BLE_L2CAP_COC_ENABLED
|
||
range 1 15
|
||
default 5
|
||
|
||
config BT_BLE_L2CAP_COC_MPS
|
||
int "Default MPS (L2CAP fragment size)"
|
||
depends on BT_BLE_L2CAP_COC_ENABLED
|
||
range 23 65533 if !BT_BLE_L2CAP_ENHANCED_COC
|
||
range 64 65533 if BT_BLE_L2CAP_ENHANCED_COC
|
||
default 247
|
||
help
|
||
Default Maximum PDU Payload Size for LE CoC channels. Legacy LE Credit
|
||
Based Flow Control allows 23–65533 octets (section 4.22). Enhanced
|
||
Credit Based Flow Control (ECFC/EATT) requires 64–65533 (section 4.25).
|
||
When ECFC is enabled the minimum is raised to 64 automatically.
|
||
|
||
config BT_BLE_L2CAP_COC_INIT_CREDITS
|
||
int "Initial RX credit window (K-frames per channel)"
|
||
depends on BT_BLE_L2CAP_COC_ENABLED
|
||
range 1 64
|
||
default 24
|
||
help
|
||
Number of LE CoC RX credits granted to the peer when a channel opens.
|
||
One credit allows the peer to send one K-frame. A larger window can
|
||
raise sustained throughput but increases how many in-flight frames
|
||
the peer may send before waiting for more credits (higher RX memory
|
||
pressure). A smaller window reduces that pressure but can lower
|
||
throughput. Manual credit mode can stall if a single SDU needs more
|
||
K-frames than this window; prefer automatic credit mode or a larger
|
||
MPS when using large MTUs.
|
||
|
||
config BT_BLE_L2CAP_ENHANCED_COC
|
||
bool "Enable Enhanced Credit Based Flow Control (ECFC)"
|
||
depends on BT_BLE_L2CAP_COC_ENABLED
|
||
default n
|
||
help
|
||
Enable LE Enhanced CoC (L2CAP signaling 0x17/0x18) for multi-channel
|
||
establishment. Required for EATT multi-bearer support.
|
||
|
||
config BT_BLE_EATT_ENABLE
|
||
bool "Enable Enhanced ATT (EATT)"
|
||
depends on BT_BLE_L2CAP_COC_ENABLED && BT_BLE_L2CAP_ENHANCED_COC
|
||
default n
|
||
help
|
||
Enable EATT bearers over LE Enhanced CoC (PSM 0x0027).
|
||
GATT operations may use multiple parallel bearers after link encryption.
|
||
|
||
config BT_BLE_EATT_CHAN_NUM
|
||
int "Number of EATT bearers per connection"
|
||
depends on BT_BLE_EATT_ENABLE
|
||
range 1 BT_BLE_L2CAP_COC_MAX_CHAN
|
||
default 3
|
||
help
|
||
Number of parallel EATT bearers established per connection. Must not
|
||
exceed the maximum LE CoC channels, since EATT bearers are LE CoC
|
||
channels; the range is capped by BT_BLE_L2CAP_COC_MAX_CHAN.
|
||
|
||
config BT_BLE_EATT_MTU
|
||
int "EATT bearer MTU"
|
||
depends on BT_BLE_EATT_ENABLE
|
||
range 64 517
|
||
default 247
|
||
|
||
endmenu
|
||
|
||
config BT_ABORT_WHEN_ALLOCATION_FAILS
|
||
bool "Abort when memory allocation fails in BT/BLE stack"
|
||
depends on BT_BLUEDROID_ENABLED
|
||
default n
|
||
help
|
||
This enables abort when memory allocation fails
|