mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
392 lines
11 KiB
Plaintext
392 lines
11 KiB
Plaintext
|
|
menu "HCI Config"
|
|
|
|
choice BT_LE_HCI_INTERFACE
|
|
prompt "Select HCI interface"
|
|
default BT_LE_HCI_INTERFACE_USE_RAM
|
|
|
|
config BT_LE_HCI_INTERFACE_USE_RAM
|
|
bool "ram"
|
|
help
|
|
Use RAM as HCI interface
|
|
config BT_LE_HCI_INTERFACE_USE_UART
|
|
bool "uart"
|
|
help
|
|
Use UART as HCI interface
|
|
endchoice
|
|
|
|
config BT_LE_HCI_UART_PORT
|
|
int "HCI UART port"
|
|
depends on BT_LE_HCI_INTERFACE_USE_UART
|
|
default 1
|
|
help
|
|
Set the port number of HCI UART
|
|
|
|
config BT_LE_HCI_UART_FLOWCTRL
|
|
bool "HCI uart Hardware Flow ctrl"
|
|
depends on BT_LE_HCI_INTERFACE_USE_UART
|
|
default n
|
|
|
|
config BT_LE_HCI_UART_TX_PIN
|
|
int "HCI uart Tx gpio"
|
|
depends on BT_LE_HCI_INTERFACE_USE_UART
|
|
default 19
|
|
|
|
config BT_LE_HCI_UART_RX_PIN
|
|
int "HCI uart Rx gpio"
|
|
depends on BT_LE_HCI_INTERFACE_USE_UART
|
|
default 10
|
|
|
|
config BT_LE_HCI_UART_RTS_PIN
|
|
int "HCI uart RTS gpio"
|
|
depends on BT_LE_HCI_UART_FLOWCTRL
|
|
default 4
|
|
|
|
config BT_LE_HCI_UART_CTS_PIN
|
|
int "HCI uart CTS gpio"
|
|
depends on BT_LE_HCI_UART_FLOWCTRL
|
|
default 5
|
|
|
|
config BT_LE_HCI_UART_BAUD
|
|
int "HCI uart baudrate"
|
|
depends on BT_LE_HCI_INTERFACE_USE_UART
|
|
default 921600
|
|
help
|
|
HCI uart baud rate 115200 ~ 1000000
|
|
|
|
choice BT_LE_HCI_UART_PARITY
|
|
prompt "select uart parity"
|
|
depends on BT_LE_HCI_INTERFACE_USE_UART
|
|
default BT_LE_HCI_UART_UART_PARITY_DISABLE
|
|
|
|
config BT_LE_HCI_UART_UART_PARITY_DISABLE
|
|
bool "PARITY_DISABLE"
|
|
help
|
|
UART_PARITY_DISABLE
|
|
config BT_LE_HCI_UART_UART_PARITY_EVEN
|
|
bool "PARITY_EVEN"
|
|
help
|
|
UART_PARITY_EVEN
|
|
config BT_LE_HCI_UART_UART_PARITY_ODD
|
|
bool "PARITY_ODD"
|
|
help
|
|
UART_PARITY_ODD
|
|
endchoice
|
|
|
|
config BT_LE_HCI_UART_TASK_STACK_SIZE
|
|
int "HCI uart task stack size"
|
|
depends on BT_LE_HCI_INTERFACE_USE_UART
|
|
default 1000
|
|
help
|
|
Set the size of uart task stack
|
|
endmenu
|
|
|
|
config BT_LE_CONTROLLER_NPL_OS_PORTING_SUPPORT
|
|
bool
|
|
default y
|
|
help
|
|
Enable NPL porting for controller.
|
|
|
|
|
|
menuconfig BT_LE_50_FEATURE_SUPPORT
|
|
bool "Enable BLE 5 feature"
|
|
depends on !BT_NIMBLE_ENABLED
|
|
default y
|
|
help
|
|
Enable BLE 5 feature
|
|
|
|
config BT_LE_LL_CFG_FEAT_LE_2M_PHY
|
|
bool "Enable 2M Phy"
|
|
depends on BT_LE_50_FEATURE_SUPPORT
|
|
default y
|
|
help
|
|
Enable 2M-PHY
|
|
|
|
config BT_LE_LL_CFG_FEAT_LE_CODED_PHY
|
|
bool "Enable coded Phy"
|
|
depends on BT_LE_50_FEATURE_SUPPORT
|
|
default y
|
|
help
|
|
Enable coded-PHY
|
|
|
|
config BT_LE_EXT_ADV
|
|
bool "Enable extended advertising"
|
|
depends on BT_LE_50_FEATURE_SUPPORT
|
|
default y
|
|
help
|
|
Enable this option to do extended advertising. Extended advertising
|
|
will be supported from BLE 5.0 onwards.
|
|
|
|
if BT_LE_EXT_ADV
|
|
config BT_LE_MAX_EXT_ADV_INSTANCES
|
|
int "Maximum number of extended advertising instances."
|
|
range 0 4
|
|
default 1
|
|
depends on BT_LE_EXT_ADV
|
|
help
|
|
Change this option to set maximum number of extended advertising
|
|
instances. Minimum there is always one instance of
|
|
advertising. Enter how many more advertising instances you
|
|
want.
|
|
Each extended advertising instance will take about 0.5k DRAM.
|
|
|
|
config BT_LE_EXT_ADV_MAX_SIZE
|
|
int "Maximum length of the advertising data."
|
|
range 0 1650
|
|
default 1650
|
|
depends on BT_LE_EXT_ADV
|
|
help
|
|
Defines the length of the extended adv data. The value should not
|
|
exceed 1650.
|
|
|
|
config BT_LE_ENABLE_PERIODIC_ADV
|
|
bool "Enable periodic advertisement."
|
|
default y
|
|
depends on BT_LE_EXT_ADV
|
|
help
|
|
Enable this option to start periodic advertisement.
|
|
|
|
config BT_LE_PERIODIC_ADV_SYNC_TRANSFER
|
|
bool "Enable Transer Sync Events"
|
|
depends on BT_LE_ENABLE_PERIODIC_ADV
|
|
default y
|
|
help
|
|
This enables controller transfer periodic sync events to host
|
|
|
|
endif
|
|
|
|
config BT_LE_MAX_PERIODIC_SYNCS
|
|
int "Maximum number of periodic advertising syncs"
|
|
depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
|
|
|
|
range 0 3
|
|
default 1 if BT_LE_ENABLE_PERIODIC_ADV
|
|
default 0
|
|
help
|
|
Set this option to set the upper limit for number of periodic sync
|
|
connections. This should be less than maximum connections allowed by
|
|
controller.
|
|
|
|
config BT_LE_MAX_PERIODIC_ADVERTISER_LIST
|
|
int "Maximum number of periodic advertiser list"
|
|
depends on BT_LE_50_FEATURE_SUPPORT && !BT_NIMBLE_ENABLED
|
|
range 1 5
|
|
default 5
|
|
help
|
|
Set this option to set the upper limit for number of periodic advertiser list.
|
|
|
|
menu "Memory Settings"
|
|
depends on !BT_NIMBLE_ENABLED
|
|
|
|
config BT_LE_MSYS_1_BLOCK_COUNT
|
|
int "MSYS_1 Block Count"
|
|
default 12
|
|
help
|
|
MSYS is a system level mbuf registry. For prepare write & prepare
|
|
responses MBUFs are allocated out of msys_1 pool. For NIMBLE_MESH
|
|
enabled cases, this block count is increased by 8 than user defined
|
|
count.
|
|
|
|
config BT_LE_MSYS_1_BLOCK_SIZE
|
|
int "MSYS_1 Block Size"
|
|
default 256
|
|
help
|
|
Dynamic memory size of block 1
|
|
|
|
config BT_LE_MSYS_2_BLOCK_COUNT
|
|
int "MSYS_2 Block Count"
|
|
default 24
|
|
help
|
|
Dynamic memory count
|
|
|
|
config BT_LE_MSYS_2_BLOCK_SIZE
|
|
int "MSYS_2 Block Size"
|
|
default 320
|
|
help
|
|
Dynamic memory size of block 2
|
|
|
|
config BT_LE_ACL_BUF_COUNT
|
|
int "ACL Buffer count"
|
|
default 10
|
|
help
|
|
The number of ACL data buffers.
|
|
|
|
config BT_LE_ACL_BUF_SIZE
|
|
int "ACL Buffer size"
|
|
default 255
|
|
help
|
|
This is the maximum size of the data portion of HCI ACL data packets.
|
|
It does not include the HCI data header (of 4 bytes)
|
|
|
|
config BT_LE_HCI_EVT_BUF_SIZE
|
|
int "HCI Event Buffer size"
|
|
default 257 if BT_LE_EXT_ADV
|
|
default 70
|
|
help
|
|
This is the size of each HCI event buffer in bytes. In case of
|
|
extended advertising, packets can be fragmented. 257 bytes is the
|
|
maximum size of a packet.
|
|
|
|
config BT_LE_HCI_EVT_HI_BUF_COUNT
|
|
int "High Priority HCI Event Buffer count"
|
|
default 30
|
|
help
|
|
This is the high priority HCI events' buffer size. High-priority
|
|
event buffers are for everything except advertising reports. If there
|
|
are no free high-priority event buffers then host will try to allocate a
|
|
low-priority buffer instead
|
|
|
|
config BT_LE_HCI_EVT_LO_BUF_COUNT
|
|
int "Low Priority HCI Event Buffer count"
|
|
default 8
|
|
help
|
|
This is the low priority HCI events' buffer size. Low-priority event
|
|
buffers are only used for advertising reports. If there are no free
|
|
low-priority event buffers, then an incoming advertising report will
|
|
get dropped
|
|
endmenu
|
|
|
|
config BT_LE_CONTROLLER_TASK_STACK_SIZE
|
|
int "Controller task stack size"
|
|
default 5120 if BLE_MESH
|
|
default 4096
|
|
help
|
|
This configures stack size of NimBLE controller task
|
|
|
|
config BT_LE_LL_RESOLV_LIST_SIZE
|
|
int "BLE LL Resolving list size"
|
|
range 1 5
|
|
default 4
|
|
help
|
|
Configure the size of resolving list used in link layer.
|
|
|
|
menuconfig BT_LE_SECURITY_ENABLE
|
|
bool "Enable BLE SM feature"
|
|
depends on !BT_NIMBLE_ENABLED
|
|
default y
|
|
help
|
|
Enable BLE sm feature
|
|
|
|
config BT_LE_SM_LEGACY
|
|
bool "Security manager legacy pairing"
|
|
depends on BT_LE_SECURITY_ENABLE
|
|
default y
|
|
help
|
|
Enable security manager legacy pairing
|
|
|
|
config BT_LE_SM_SC
|
|
bool "Security manager secure connections (4.2)"
|
|
depends on BT_LE_SECURITY_ENABLE
|
|
default y
|
|
help
|
|
Enable security manager secure connections
|
|
|
|
config BT_LE_SM_SC_DEBUG_KEYS
|
|
bool "Use predefined public-private key pair"
|
|
default n
|
|
depends on BT_LE_SECURITY_ENABLE && BT_LE_SM_SC
|
|
help
|
|
If this option is enabled, SM uses predefined DH key pair as described
|
|
in Core Specification, Vol. 3, Part H, 2.3.5.6.1. This allows to
|
|
decrypt air traffic easily and thus should only be used for debugging.
|
|
|
|
config BT_LE_LL_CFG_FEAT_LE_ENCRYPTION
|
|
bool "Enable LE encryption"
|
|
depends on BT_LE_SECURITY_ENABLE
|
|
default y
|
|
help
|
|
Enable encryption connection
|
|
|
|
config BT_LE_CRYPTO_STACK_MBEDTLS
|
|
bool "Override TinyCrypt with mbedTLS for crypto computations"
|
|
default y
|
|
depends on !BT_NIMBLE_ENABLED
|
|
select MBEDTLS_ECP_RESTARTABLE
|
|
select MBEDTLS_CMAC_C
|
|
help
|
|
Enable this option to choose mbedTLS instead of TinyCrypt for crypto
|
|
computations.
|
|
|
|
config BT_LE_WHITELIST_SIZE
|
|
int "BLE white list size"
|
|
range 1 15
|
|
default 12
|
|
depends on !BT_NIMBLE_ENABLED
|
|
|
|
help
|
|
BLE list size
|
|
|
|
config BT_LE_LL_DUP_SCAN_LIST_COUNT
|
|
int "BLE duplicate scan list count"
|
|
range 1 100
|
|
default 20
|
|
help
|
|
config the max count of duplicate scan list
|
|
|
|
config BT_LE_LL_SCA
|
|
int "BLE Sleep clock accuracy"
|
|
range 0 500
|
|
default 60
|
|
help
|
|
Sleep clock accuracy of our device (in ppm)
|
|
|
|
config BT_LE_MAX_CONNECTIONS
|
|
int "Maximum number of concurrent connections"
|
|
depends on !BT_NIMBLE_ENABLED
|
|
range 1 8
|
|
default 3
|
|
help
|
|
Defines maximum number of concurrent BLE connections. For ESP32, user
|
|
is expected to configure BTDM_CTRL_BLE_MAX_CONN from controller menu
|
|
along with this option. Similarly for ESP32-C3 or ESP32-S3, user is expected to
|
|
configure BT_CTRL_BLE_MAX_ACT from controller menu.
|
|
Each connection will take about 1k DRAM.
|
|
|
|
choice BT_LE_COEX_PHY_CODED_TX_RX_TLIM
|
|
prompt "Coexistence: limit on MAX Tx/Rx time for coded-PHY connection"
|
|
default BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
|
|
depends on ESP32_WIFI_SW_COEXIST_ENABLE
|
|
help
|
|
When using PHY-Coded in BLE connection, limitation on max tx/rx time can be applied to
|
|
better avoid dramatic performance deterioration of Wi-Fi.
|
|
|
|
config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EN
|
|
bool "Force Enable"
|
|
help
|
|
Always enable the limitation on max tx/rx time for Coded-PHY connection
|
|
|
|
config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
|
|
bool "Force Disable"
|
|
help
|
|
Disable the limitation on max tx/rx time for Coded-PHY connection
|
|
endchoice
|
|
|
|
config BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EFF
|
|
int
|
|
default 0 if !ESP32_WIFI_SW_COEXIST_ENABLE
|
|
default 1 if BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EN
|
|
default 0 if BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS
|
|
|
|
config BT_LE_SLEEP_ENABLE
|
|
bool "Enable BLE sleep"
|
|
default n
|
|
help
|
|
Enable BLE sleep
|
|
|
|
choice BT_LE_WAKEUP_SOURCE
|
|
prompt "BLE light sleep wakeup source"
|
|
depends on BT_LE_SLEEP_ENABLE
|
|
default BT_LE_WAKEUP_SOURCE_CPU_RTC_TIMER
|
|
config BT_LE_WAKEUP_SOURCE_CPU_RTC_TIMER
|
|
bool "Use ESP timer to wakeup CPU"
|
|
help
|
|
Use esp timer to wakeup CPU
|
|
endchoice
|
|
|
|
config BT_LE_USE_ESP_TIMER
|
|
bool "Use Esp Timer for callout"
|
|
depends on !BT_NIMBLE_ENABLED
|
|
default y
|
|
help
|
|
Set this option to use Esp Timer which has higher priority timer instead of FreeRTOS timer
|