2019-06-24 21:03:58 -04:00
|
|
|
|
2020-01-22 11:55:51 -05:00
|
|
|
choice BT_NIMBLE_MEM_ALLOC_MODE
|
|
|
|
prompt "Memory allocation strategy"
|
|
|
|
default BT_NIMBLE_MEM_ALLOC_MODE_INTERNAL
|
|
|
|
help
|
|
|
|
Allocation strategy for NimBLE host stack, essentially provides ability to
|
|
|
|
allocate all required dynamic allocations from,
|
|
|
|
|
|
|
|
- Internal DRAM memory only
|
|
|
|
- External SPIRAM memory only
|
|
|
|
- Either internal or external memory based on default malloc()
|
|
|
|
behavior in ESP-IDF
|
2020-03-18 04:23:12 -04:00
|
|
|
- Internal IRAM memory wherever applicable else internal DRAM
|
2020-01-22 11:55:51 -05:00
|
|
|
|
|
|
|
config BT_NIMBLE_MEM_ALLOC_MODE_INTERNAL
|
|
|
|
bool "Internal memory"
|
|
|
|
|
|
|
|
config BT_NIMBLE_MEM_ALLOC_MODE_EXTERNAL
|
|
|
|
bool "External SPIRAM"
|
2021-05-09 07:02:57 -04:00
|
|
|
depends on SPIRAM_USE_CAPS_ALLOC || SPIRAM_USE_MALLOC
|
2020-01-22 11:55:51 -05:00
|
|
|
|
|
|
|
config BT_NIMBLE_MEM_ALLOC_MODE_DEFAULT
|
|
|
|
bool "Default alloc mode"
|
|
|
|
|
2020-03-18 04:23:12 -04:00
|
|
|
config BT_NIMBLE_MEM_ALLOC_MODE_IRAM_8BIT
|
|
|
|
bool "Internal IRAM"
|
|
|
|
depends on ESP32_IRAM_AS_8BIT_ACCESSIBLE_MEMORY
|
|
|
|
help
|
|
|
|
Allows to use IRAM memory region as 8bit accessible region.
|
|
|
|
|
|
|
|
Every unaligned (8bit or 16bit) access will result in an exception
|
|
|
|
and incur penalty of certain clock cycles per unaligned read/write.
|
|
|
|
|
|
|
|
endchoice #BT_NIMBLE_MEM_ALLOC_MODE
|
2020-01-22 11:55:51 -05:00
|
|
|
|
2020-08-03 14:19:41 -04:00
|
|
|
choice BT_NIMBLE_LOG_LEVEL
|
|
|
|
prompt "NimBLE Host log verbosity"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default BT_NIMBLE_LOG_LEVEL_INFO
|
|
|
|
help
|
|
|
|
Select NimBLE log level. Please make a note that the selected NimBLE log
|
|
|
|
verbosity can not exceed the level set in "Component config --> Log output
|
|
|
|
--> Default log verbosity".
|
|
|
|
|
|
|
|
config BT_NIMBLE_LOG_LEVEL_NONE
|
|
|
|
bool "No logs"
|
|
|
|
config BT_NIMBLE_LOG_LEVEL_ERROR
|
|
|
|
bool "Error logs"
|
|
|
|
config BT_NIMBLE_LOG_LEVEL_WARNING
|
|
|
|
bool "Warning logs"
|
|
|
|
config BT_NIMBLE_LOG_LEVEL_INFO
|
|
|
|
bool "Info logs"
|
|
|
|
config BT_NIMBLE_LOG_LEVEL_DEBUG
|
|
|
|
bool "Debug logs"
|
|
|
|
endchoice #BT_NIMBLE_LOG_LEVEL
|
|
|
|
|
|
|
|
config BT_NIMBLE_LOG_LEVEL
|
|
|
|
int
|
|
|
|
default 0 if BT_NIMBLE_LOG_LEVEL_DEBUG
|
|
|
|
default 1 if BT_NIMBLE_LOG_LEVEL_INFO
|
|
|
|
default 2 if BT_NIMBLE_LOG_LEVEL_WARNING
|
|
|
|
default 3 if BT_NIMBLE_LOG_LEVEL_ERROR
|
2021-09-23 08:01:27 -04:00
|
|
|
default 4 if BT_NIMBLE_LOG_LEVEL_NONE
|
2020-08-03 14:19:41 -04:00
|
|
|
|
2019-06-24 21:03:58 -04:00
|
|
|
config BT_NIMBLE_MAX_CONNECTIONS
|
|
|
|
int "Maximum number of concurrent connections"
|
2022-11-21 03:36:02 -05:00
|
|
|
range 1 8 if (IDF_TARGET_ESP32H4 || IDF_TARGET_ESP32C6)
|
2022-06-03 09:52:04 -04:00
|
|
|
range 1 2 if IDF_TARGET_ESP32C2
|
2022-12-08 00:36:49 -05:00
|
|
|
range 1 9 if !SOC_ESP_NIMBLE_CONTROLLER
|
2022-11-21 03:36:02 -05:00
|
|
|
range 1 2
|
2022-10-19 03:57:24 -04:00
|
|
|
default 3 if (IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 || IDF_TARGET_ESP32H4)
|
2022-11-21 03:36:02 -05:00
|
|
|
default 2 if (IDF_TARGET_ESP32C2 || IDF_TARGET_ESP32C6)
|
|
|
|
default 1
|
2019-06-24 21:03:58 -04:00
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
help
|
2021-02-01 10:44:39 -05:00
|
|
|
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.
|
2022-12-02 01:21:22 -05:00
|
|
|
For ESP32C2, ESP32C6 and ESP32H2, each connection will take about 1k DRAM.
|
2019-06-24 21:03:58 -04:00
|
|
|
|
2019-07-19 02:34:57 -04:00
|
|
|
config BT_NIMBLE_MAX_BONDS
|
|
|
|
int "Maximum number of bonds to save across reboots"
|
|
|
|
default 3
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
help
|
|
|
|
Defines maximum number of bonds to save for peer security and our security
|
|
|
|
|
|
|
|
config BT_NIMBLE_MAX_CCCDS
|
|
|
|
int "Maximum number of CCC descriptors to save across reboots"
|
|
|
|
default 8
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
help
|
|
|
|
Defines maximum number of CCC descriptors to save
|
|
|
|
|
2019-06-24 21:03:58 -04:00
|
|
|
config BT_NIMBLE_L2CAP_COC_MAX_NUM
|
|
|
|
int "Maximum number of connection oriented channels"
|
2019-08-21 07:28:47 -04:00
|
|
|
range 0 9
|
2019-06-24 21:03:58 -04:00
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default 0
|
|
|
|
help
|
|
|
|
Defines maximum number of BLE Connection Oriented Channels. When set to (0), BLE COC is not compiled in
|
|
|
|
|
|
|
|
choice BT_NIMBLE_PINNED_TO_CORE_CHOICE
|
|
|
|
prompt "The CPU core on which NimBLE host will run"
|
|
|
|
depends on BT_NIMBLE_ENABLED && !FREERTOS_UNICORE
|
|
|
|
help
|
|
|
|
The CPU core on which NimBLE host will run. You can choose Core 0 or Core 1.
|
|
|
|
Cannot specify no-affinity
|
|
|
|
|
|
|
|
config BT_NIMBLE_PINNED_TO_CORE_0
|
|
|
|
bool "Core 0 (PRO CPU)"
|
|
|
|
config BT_NIMBLE_PINNED_TO_CORE_1
|
|
|
|
bool "Core 1 (APP CPU)"
|
|
|
|
depends on !FREERTOS_UNICORE
|
|
|
|
endchoice
|
|
|
|
|
|
|
|
config BT_NIMBLE_PINNED_TO_CORE
|
|
|
|
int
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default 0 if BT_NIMBLE_PINNED_TO_CORE_0
|
|
|
|
default 1 if BT_NIMBLE_PINNED_TO_CORE_1
|
|
|
|
default 0
|
|
|
|
|
2021-12-06 04:38:11 -05:00
|
|
|
config BT_NIMBLE_HOST_TASK_STACK_SIZE
|
2019-08-21 07:28:47 -04:00
|
|
|
int "NimBLE Host task stack size"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
2019-10-21 08:18:21 -04:00
|
|
|
default 5120 if BLE_MESH
|
2019-08-21 07:28:47 -04:00
|
|
|
default 4096
|
|
|
|
help
|
|
|
|
This configures stack size of NimBLE host task
|
|
|
|
|
2019-06-24 21:03:58 -04:00
|
|
|
config BT_NIMBLE_ROLE_CENTRAL
|
|
|
|
bool "Enable BLE Central role"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default y
|
2021-12-06 04:38:11 -05:00
|
|
|
help
|
|
|
|
Enables central role
|
2019-06-24 21:03:58 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_ROLE_PERIPHERAL
|
|
|
|
bool "Enable BLE Peripheral role"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default y
|
2021-12-06 04:38:11 -05:00
|
|
|
help
|
|
|
|
Enable peripheral role
|
2019-06-24 21:03:58 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_ROLE_BROADCASTER
|
|
|
|
bool "Enable BLE Broadcaster role"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default y
|
2021-12-06 04:38:11 -05:00
|
|
|
help
|
|
|
|
Enables broadcaster role
|
2019-06-24 21:03:58 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_ROLE_OBSERVER
|
|
|
|
bool "Enable BLE Observer role"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default y
|
2021-12-06 04:38:11 -05:00
|
|
|
help
|
|
|
|
Enables observer role
|
|
|
|
|
2019-06-24 21:03:58 -04:00
|
|
|
config BT_NIMBLE_NVS_PERSIST
|
|
|
|
bool "Persist the BLE Bonding keys in NVS"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
2021-12-06 04:38:11 -05:00
|
|
|
default n
|
|
|
|
help
|
|
|
|
Enable this flag to make bonding persistent across device reboots
|
|
|
|
|
|
|
|
menuconfig BT_NIMBLE_SECURITY_ENABLE
|
|
|
|
bool "Enable BLE SM feature"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
2019-06-24 21:03:58 -04:00
|
|
|
default y
|
|
|
|
help
|
2021-12-06 04:38:11 -05:00
|
|
|
Enable BLE sm feature
|
2019-06-24 21:03:58 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_SM_LEGACY
|
|
|
|
bool "Security manager legacy pairing"
|
2021-12-06 04:38:11 -05:00
|
|
|
depends on BT_NIMBLE_SECURITY_ENABLE
|
2019-06-24 21:03:58 -04:00
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enable security manager legacy pairing
|
|
|
|
|
|
|
|
config BT_NIMBLE_SM_SC
|
|
|
|
bool "Security manager secure connections (4.2)"
|
2021-12-06 04:38:11 -05:00
|
|
|
depends on BT_NIMBLE_SECURITY_ENABLE
|
2019-06-24 21:03:58 -04:00
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enable security manager secure connections
|
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_SM_SC_DEBUG_KEYS
|
|
|
|
bool "Use predefined public-private key pair"
|
2019-06-24 21:03:58 -04:00
|
|
|
default n
|
2022-06-03 09:52:04 -04:00
|
|
|
depends on BT_NIMBLE_SECURITY_ENABLE && BT_NIMBLE_SM_SC
|
2019-06-24 21:03:58 -04:00
|
|
|
help
|
2022-06-03 09:52:04 -04:00
|
|
|
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.
|
2021-12-06 04:38:11 -05:00
|
|
|
|
|
|
|
config BT_NIMBLE_LL_CFG_FEAT_LE_ENCRYPTION
|
|
|
|
bool "Enable LE encryption"
|
|
|
|
depends on BT_NIMBLE_SECURITY_ENABLE && BT_NIMBLE_ENABLED
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enable encryption connection
|
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_DEBUG
|
|
|
|
bool "Enable extra runtime asserts and host debugging"
|
2019-10-10 05:20:15 -04:00
|
|
|
default n
|
2022-06-03 09:52:04 -04:00
|
|
|
depends on BT_NIMBLE_ENABLED
|
2019-10-10 05:20:15 -04:00
|
|
|
help
|
2022-06-03 09:52:04 -04:00
|
|
|
This enables extra runtime asserts and host debugging
|
2019-10-10 05:20:15 -04:00
|
|
|
|
2019-06-24 21:03:58 -04:00
|
|
|
config BT_NIMBLE_SVC_GAP_DEVICE_NAME
|
|
|
|
string "BLE GAP default device name"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default "nimble"
|
|
|
|
help
|
|
|
|
The Device Name characteristic shall contain the name of the device as an UTF-8 string.
|
|
|
|
This name can be changed by using API ble_svc_gap_device_name_set()
|
|
|
|
|
|
|
|
config BT_NIMBLE_GAP_DEVICE_NAME_MAX_LEN
|
|
|
|
int "Maximum length of BLE device name in octets"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default 31
|
|
|
|
help
|
|
|
|
Device Name characteristic value shall be 0 to 248 octets in length
|
|
|
|
|
|
|
|
config BT_NIMBLE_ATT_PREFERRED_MTU
|
|
|
|
int "Preferred MTU size in octets"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
2022-04-14 06:04:33 -04:00
|
|
|
default 256
|
2019-06-24 21:03:58 -04:00
|
|
|
help
|
|
|
|
This is the default value of ATT MTU indicated by the device during an ATT MTU exchange.
|
|
|
|
This value can be changed using API ble_att_set_preferred_mtu()
|
|
|
|
|
|
|
|
config BT_NIMBLE_SVC_GAP_APPEARANCE
|
|
|
|
hex "External appearance of the device"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default 0
|
|
|
|
help
|
|
|
|
Standard BLE GAP Appearance value in HEX format e.g. 0x02C0
|
|
|
|
|
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
menu "Memory Settings"
|
|
|
|
config BT_NIMBLE_MSYS_1_BLOCK_COUNT
|
|
|
|
int "MSYS_1 Block Count"
|
2022-09-14 05:22:07 -04:00
|
|
|
default 24 if SOC_ESP_NIMBLE_CONTROLLER
|
|
|
|
default 12 if !SOC_ESP_NIMBLE_CONTROLLER
|
2022-06-03 09:52:04 -04:00
|
|
|
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_NIMBLE_MSYS_1_BLOCK_SIZE
|
|
|
|
int "MSYS_1 Block Size"
|
2022-09-14 05:22:07 -04:00
|
|
|
default 128 if SOC_ESP_NIMBLE_CONTROLLER
|
|
|
|
default 256 if !SOC_ESP_NIMBLE_CONTROLLER
|
2022-06-03 09:52:04 -04:00
|
|
|
help
|
|
|
|
Dynamic memory size of block 1
|
2019-06-24 21:03:58 -04:00
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_MSYS_2_BLOCK_COUNT
|
|
|
|
int "MSYS_2 Block Count"
|
|
|
|
default 24
|
|
|
|
help
|
|
|
|
Dynamic memory count
|
2021-12-06 04:38:11 -05:00
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_MSYS_2_BLOCK_SIZE
|
|
|
|
int "MSYS_2 Block Size"
|
|
|
|
default 320
|
|
|
|
help
|
|
|
|
Dynamic memory size of block 2
|
2020-03-05 00:53:04 -05:00
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_ACL_BUF_COUNT
|
|
|
|
int "ACL Buffer count"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default 24
|
|
|
|
help
|
|
|
|
The number of ACL data buffers.
|
2021-12-06 04:38:11 -05:00
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_ACL_BUF_SIZE
|
|
|
|
int "ACL Buffer size"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
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_NIMBLE_HCI_EVT_BUF_SIZE
|
|
|
|
int "HCI Event Buffer size"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default 257 if BT_NIMBLE_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_NIMBLE_HCI_EVT_HI_BUF_COUNT
|
|
|
|
int "High Priority HCI Event Buffer count"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
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_NIMBLE_HCI_EVT_LO_BUF_COUNT
|
|
|
|
int "Low Priority HCI Event Buffer count"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
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
|
2021-12-06 04:38:11 -05:00
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
endmenu
|
2021-12-06 04:38:11 -05:00
|
|
|
|
2022-07-22 07:56:39 -04:00
|
|
|
config BT_NIMBLE_GATT_MAX_PROCS
|
|
|
|
int "Maximum number of GATT client procedures"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default 4
|
|
|
|
help
|
|
|
|
Maximum number of GATT client procedures that can be executed.
|
|
|
|
|
2019-12-18 00:20:57 -05:00
|
|
|
config BT_NIMBLE_HS_FLOW_CTRL
|
|
|
|
bool "Enable Host Flow control"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
2022-06-17 09:11:34 -04:00
|
|
|
default y if IDF_TARGET_ESP32
|
|
|
|
default n
|
2019-12-18 00:20:57 -05:00
|
|
|
help
|
|
|
|
Enable Host Flow control
|
|
|
|
|
|
|
|
config BT_NIMBLE_HS_FLOW_CTRL_ITVL
|
|
|
|
int "Host Flow control interval"
|
|
|
|
depends on BT_NIMBLE_HS_FLOW_CTRL
|
|
|
|
default 1000
|
|
|
|
help
|
|
|
|
Host flow control interval in msecs
|
|
|
|
|
|
|
|
config BT_NIMBLE_HS_FLOW_CTRL_THRESH
|
|
|
|
int "Host Flow control threshold"
|
|
|
|
depends on BT_NIMBLE_HS_FLOW_CTRL
|
|
|
|
default 2
|
|
|
|
help
|
|
|
|
Host flow control threshold, if the number of free buffers are at or
|
|
|
|
below this threshold, send an immediate number-of-completed-packets
|
|
|
|
event
|
|
|
|
|
|
|
|
config BT_NIMBLE_HS_FLOW_CTRL_TX_ON_DISCONNECT
|
|
|
|
bool "Host Flow control on disconnect"
|
|
|
|
depends on BT_NIMBLE_HS_FLOW_CTRL
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enable this option to send number-of-completed-packets event to
|
|
|
|
controller after disconnection
|
|
|
|
|
2020-03-05 22:02:18 -05:00
|
|
|
config BT_NIMBLE_RPA_TIMEOUT
|
|
|
|
int "RPA timeout in seconds"
|
|
|
|
range 1 41400
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default 900
|
|
|
|
help
|
|
|
|
Time interval between RPA address change. This is applicable in case of
|
|
|
|
Host based RPA
|
|
|
|
|
2019-06-24 21:03:58 -04:00
|
|
|
menuconfig BT_NIMBLE_MESH
|
|
|
|
bool "Enable BLE mesh functionality"
|
|
|
|
select BT_NIMBLE_SM_SC
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default n
|
|
|
|
help
|
2022-12-09 04:43:54 -05:00
|
|
|
Enable BLE Mesh example present in upstream mynewt-nimble and not maintained by Espressif.
|
|
|
|
|
|
|
|
IDF maintains ESP-BLE-MESH as the official Mesh solution. Please refer to ESP-BLE-MESH guide at:
|
|
|
|
`https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/esp-ble-mesh/ble-mesh-index.html`
|
2019-06-24 21:03:58 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_PROXY
|
|
|
|
bool "Enable mesh proxy functionality"
|
|
|
|
default n
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
Enable proxy. This is automatically set whenever NIMBLE_MESH_PB_GATT or
|
|
|
|
NIMBLE_MESH_GATT_PROXY is set
|
|
|
|
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_PROV
|
|
|
|
bool "Enable BLE mesh provisioning"
|
|
|
|
default y
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
Enable mesh provisioning
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_PB_ADV
|
|
|
|
bool "Enable mesh provisioning over advertising bearer"
|
|
|
|
default y
|
|
|
|
depends on BT_NIMBLE_MESH_PROV
|
|
|
|
help
|
|
|
|
Enable this option to allow the device to be provisioned over
|
|
|
|
the advertising bearer
|
|
|
|
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_PB_GATT
|
|
|
|
bool "Enable mesh provisioning over GATT bearer"
|
|
|
|
default y
|
|
|
|
select BT_NIMBLE_MESH_PROXY
|
|
|
|
depends on BT_NIMBLE_MESH_PROV
|
|
|
|
help
|
|
|
|
Enable this option to allow the device to be provisioned over the GATT
|
|
|
|
bearer
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_GATT_PROXY
|
|
|
|
bool "Enable GATT Proxy functionality"
|
|
|
|
default y
|
|
|
|
select BT_NIMBLE_MESH_PROXY
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
This option enables support for the Mesh GATT Proxy Service,
|
|
|
|
i.e. the ability to act as a proxy between a Mesh GATT Client
|
|
|
|
and a Mesh network
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_RELAY
|
|
|
|
bool "Enable mesh relay functionality"
|
|
|
|
default n
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
Support for acting as a Mesh Relay Node
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_LOW_POWER
|
|
|
|
bool "Enable mesh low power mode"
|
|
|
|
default n
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
Enable this option to be able to act as a Low Power Node
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_FRIEND
|
|
|
|
bool "Enable mesh friend functionality"
|
|
|
|
default n
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
Enable this option to be able to act as a Friend Node
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_DEVICE_NAME
|
|
|
|
string "Set mesh device name"
|
|
|
|
default "nimble-mesh-node"
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
This value defines Bluetooth Mesh device/node name
|
|
|
|
|
2020-08-03 14:19:41 -04:00
|
|
|
config BT_NIMBLE_MESH_NODE_COUNT
|
|
|
|
int "Set mesh node count"
|
|
|
|
default 1
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
Defines mesh node count.
|
|
|
|
|
|
|
|
config BT_NIMBLE_MESH_PROVISIONER
|
|
|
|
bool "Enable BLE mesh provisioner"
|
|
|
|
default 0
|
|
|
|
depends on BT_NIMBLE_MESH
|
|
|
|
help
|
|
|
|
Enable mesh provisioner.
|
|
|
|
|
2019-09-30 02:15:43 -04:00
|
|
|
config BT_NIMBLE_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.
|
2020-08-03 14:19:41 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_HS_STOP_TIMEOUT_MS
|
|
|
|
int "BLE host stop timeout in msec"
|
|
|
|
default 2000
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
help
|
|
|
|
BLE Host stop procedure timeout in milliseconds.
|
2020-07-31 09:10:18 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_HOST_BASED_PRIVACY
|
|
|
|
bool "Enable host based privacy for random address."
|
|
|
|
default n
|
|
|
|
depends on BT_NIMBLE_ENABLED && !IDF_TARGET_ESP32
|
|
|
|
help
|
|
|
|
Use this option to do host based Random Private Address resolution.
|
|
|
|
If this option is disabled then controller based privacy is used.
|
|
|
|
|
2021-05-12 07:15:52 -04:00
|
|
|
config BT_NIMBLE_ENABLE_CONN_REATTEMPT
|
|
|
|
bool "Enable connection reattempts on connection establishment error"
|
2022-11-21 03:36:02 -05:00
|
|
|
default y if (IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3 || SOC_ESP_NIMBLE_CONTROLLER)
|
2021-05-12 07:15:52 -04:00
|
|
|
default n if IDF_TARGET_ESP32
|
|
|
|
help
|
|
|
|
Enable to make the NimBLE host to reattempt GAP connection on connection
|
|
|
|
establishment failure.
|
|
|
|
|
|
|
|
config BT_NIMBLE_MAX_CONN_REATTEMPT
|
|
|
|
int "Maximum number connection reattempts"
|
|
|
|
range 1 7
|
|
|
|
default 3
|
|
|
|
depends on BT_NIMBLE_ENABLED && BT_NIMBLE_ENABLE_CONN_REATTEMPT
|
|
|
|
help
|
|
|
|
Defines maximum number of connection reattempts.
|
|
|
|
|
2021-12-06 04:38:11 -05:00
|
|
|
menuconfig BT_NIMBLE_50_FEATURE_SUPPORT
|
2022-06-03 09:52:04 -04:00
|
|
|
bool "Enable BLE 5 feature"
|
2021-12-06 04:38:11 -05:00
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default y
|
|
|
|
help
|
2022-06-03 09:52:04 -04:00
|
|
|
Enable BLE 5 feature
|
2021-12-06 04:38:11 -05:00
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_LL_CFG_FEAT_LE_2M_PHY
|
|
|
|
bool "Enable 2M Phy"
|
|
|
|
depends on BT_NIMBLE_50_FEATURE_SUPPORT
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enable 2M-PHY
|
|
|
|
|
|
|
|
config BT_NIMBLE_LL_CFG_FEAT_LE_CODED_PHY
|
|
|
|
bool "Enable coded Phy"
|
|
|
|
depends on BT_NIMBLE_50_FEATURE_SUPPORT
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enable coded-PHY
|
2021-12-06 04:38:11 -05:00
|
|
|
|
2020-07-31 09:10:18 -04:00
|
|
|
config BT_NIMBLE_EXT_ADV
|
2021-12-06 04:38:11 -05:00
|
|
|
bool "Enable extended advertising"
|
2022-06-03 09:52:04 -04:00
|
|
|
depends on BT_NIMBLE_50_FEATURE_SUPPORT
|
2020-07-31 09:10:18 -04:00
|
|
|
default n
|
|
|
|
help
|
|
|
|
Enable this option to do extended advertising. Extended advertising
|
|
|
|
will be supported from BLE 5.0 onwards.
|
|
|
|
|
2021-12-06 04:38:11 -05:00
|
|
|
if BT_NIMBLE_EXT_ADV
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_MAX_EXT_ADV_INSTANCES
|
|
|
|
int "Maximum number of extended advertising instances."
|
|
|
|
range 0 4
|
|
|
|
default 1 if BT_NIMBLE_EXT_ADV
|
|
|
|
default 0
|
|
|
|
depends on BT_NIMBLE_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.
|
2022-12-02 01:21:22 -05:00
|
|
|
For ESP32C2, ESP32C6 and ESP32H2, each extended advertising instance
|
|
|
|
will take about 0.5k DRAM.
|
2022-06-03 09:52:04 -04:00
|
|
|
|
2021-12-06 04:38:11 -05:00
|
|
|
config BT_NIMBLE_EXT_ADV_MAX_SIZE
|
2022-06-03 09:52:04 -04:00
|
|
|
int "Maximum length of the advertising data."
|
|
|
|
range 0 1650
|
|
|
|
default 1650 if BT_NIMBLE_EXT_ADV
|
|
|
|
default 0
|
|
|
|
depends on BT_NIMBLE_EXT_ADV
|
2021-12-06 04:38:11 -05:00
|
|
|
help
|
2022-06-03 09:52:04 -04:00
|
|
|
Defines the length of the extended adv data. The value should not
|
|
|
|
exceed 1650.
|
|
|
|
|
|
|
|
config BT_NIMBLE_ENABLE_PERIODIC_ADV
|
|
|
|
bool "Enable periodic advertisement."
|
|
|
|
default y
|
|
|
|
depends on BT_NIMBLE_EXT_ADV
|
|
|
|
help
|
|
|
|
Enable this option to start periodic advertisement.
|
|
|
|
|
|
|
|
config BT_NIMBLE_PERIODIC_ADV_SYNC_TRANSFER
|
|
|
|
bool "Enable Transer Sync Events"
|
|
|
|
depends on BT_NIMBLE_ENABLE_PERIODIC_ADV
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
This enables controller transfer periodic sync events to host
|
2021-12-06 04:38:11 -05:00
|
|
|
endif
|
|
|
|
|
2022-06-03 09:52:04 -04:00
|
|
|
config BT_NIMBLE_MAX_PERIODIC_SYNCS
|
|
|
|
int "Maximum number of periodic advertising syncs"
|
|
|
|
depends on BT_NIMBLE_50_FEATURE_SUPPORT
|
|
|
|
range 0 3 if IDF_TARGET_ESP32C2
|
2022-11-21 03:36:02 -05:00
|
|
|
range 0 8
|
2022-06-03 09:52:04 -04:00
|
|
|
default 1 if BT_NIMBLE_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_NIMBLE_MAX_PERIODIC_ADVERTISER_LIST
|
|
|
|
int "Maximum number of periodic advertiser list"
|
2022-11-21 03:36:02 -05:00
|
|
|
depends on BT_NIMBLE_50_FEATURE_SUPPORT && SOC_ESP_NIMBLE_CONTROLLER
|
2022-06-03 09:52:04 -04:00
|
|
|
range 1 5
|
|
|
|
default 5 if BT_NIMBLE_50_FEATURE_SUPPORT
|
|
|
|
help
|
|
|
|
Set this option to set the upper limit for number of periodic advertiser list.
|
|
|
|
|
2022-12-19 08:02:50 -05:00
|
|
|
config BT_NIMBLE_BLE_POWER_CONTROL
|
|
|
|
bool "Enable support for BLE Power Control"
|
|
|
|
depends on BT_NIMBLE_50_FEATURE_SUPPORT && IDF_TARGET_ESP32C6
|
|
|
|
default n
|
2022-09-27 08:06:00 -04:00
|
|
|
help
|
2022-12-19 08:02:50 -05:00
|
|
|
Set this option to enable the Power Control feature
|
2022-09-27 08:06:00 -04:00
|
|
|
|
2021-12-06 04:38:11 -05:00
|
|
|
choice BT_NIMBLE_COEX_PHY_CODED_TX_RX_TLIM
|
|
|
|
prompt "Coexistence: limit on MAX Tx/Rx time for coded-PHY connection"
|
|
|
|
default BT_NIMBLE_COEX_PHY_CODED_TX_RX_TLIM_DIS
|
|
|
|
depends on ESP32_WIFI_SW_COEXIST_ENABLE && BT_NIMBLE_ENABLED
|
|
|
|
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_NIMBLE_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_NIMBLE_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_NIMBLE_COEX_PHY_CODED_TX_RX_TLIM_EFF
|
|
|
|
int
|
|
|
|
default 0 if !(ESP32_WIFI_SW_COEXIST_ENABLE && BT_NIMBLE_ENABLED)
|
|
|
|
default 1 if BT_NIMBLE_COEX_PHY_CODED_TX_RX_TLIM_EN
|
|
|
|
default 0 if BT_NIMBLE_COEX_PHY_CODED_TX_RX_TLIM_DIS
|
|
|
|
|
|
|
|
|
|
|
|
config BT_NIMBLE_WHITELIST_SIZE
|
|
|
|
int "BLE white list size"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
2022-06-17 09:11:34 -04:00
|
|
|
range 1 15
|
|
|
|
default 12
|
2021-12-06 04:38:11 -05:00
|
|
|
help
|
|
|
|
BLE list size
|
|
|
|
|
|
|
|
config BT_NIMBLE_TEST_THROUGHPUT_TEST
|
|
|
|
bool "Throughput Test Mode enable"
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Enable the throughput test mode
|
|
|
|
|
2021-03-31 00:51:48 -04:00
|
|
|
config BT_NIMBLE_BLUFI_ENABLE
|
|
|
|
bool "Enable blufi functionality"
|
|
|
|
depends on BT_NIMBLE_ENABLED
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Set this option to enable blufi functionality.
|
2021-06-01 05:58:37 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_USE_ESP_TIMER
|
|
|
|
bool "Enable Esp Timer for Nimble"
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Set this option to use Esp Timer which has higher priority timer instead of FreeRTOS timer
|
2022-07-20 00:13:48 -04:00
|
|
|
|
|
|
|
config BT_NIMBLE_LEGACY_VHCI_ENABLE
|
|
|
|
bool
|
|
|
|
default y if (IDF_TARGET_ESP32 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3)
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
This option is used to distinguish whether a previous version of VHCI is being used
|