The CTE reception and sampling in connected mode was enabled with CONFIG_BT_CTLR_DF_CONN_CTE_REQ. This is a separate fearure tha can be enabled when CTE reqest procedure is disabled. What more the CONFIG_BT_CTLR_DF_CONN_CTE_REQ is dependent on CONFIG_BT_CTLR_DF_CONN_CTE_RX, not other way around. The commit adds separate Kconfig to provide such possibility. Also changes compilation guards for code related with the CTE reception and sampling. Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
215 lines
6.9 KiB
Plaintext
215 lines
6.9 KiB
Plaintext
# Zephyr Bluetooth Controller configuration options
|
|
|
|
# Copyright (c) 2020 Nordic Semiconductor ASA
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
config BT_CTLR_DF_SUPPORT
|
|
bool
|
|
depends on !BT_CTLR_TIFS_HW
|
|
select BT_CTLR_DF_CTE_TX_SUPPORT
|
|
select BT_CTLR_DF_ANT_SWITCH_2US_SUPPORT
|
|
select BT_CTLR_DF_ANT_SWITCH_1US_SUPPORT
|
|
select BT_CTLR_DF_CTE_RX_SUPPORT
|
|
select BT_CTLR_DF_CTE_RX_SAMPLE_1US_SUPPORT
|
|
|
|
config BT_CTLR_DF_CTE_TX_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_DF_CTE_RX_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_DF_CTE_RX_SAMPLE_1US_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_DF_ANT_SWITCH_2US_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_DF_ANT_SWITCH_1US_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_CTEINLINE_SUPPORT
|
|
bool
|
|
|
|
menuconfig BT_CTLR_DF
|
|
bool "LE Direction Finding [EXPERIMENTAL]"
|
|
depends on BT_CTLR_DF_SUPPORT
|
|
select EXPERIMENTAL
|
|
help
|
|
Enable support for Bluetooth 5.1 Direction Finding
|
|
|
|
if BT_CTLR_DF
|
|
|
|
# Basic controller functionalities required for implementation of
|
|
# Bluetooth v5.1 Direction Finding
|
|
|
|
config BT_CTLR_DF_CTE_TX
|
|
bool "Enable transmission of Constant Tone Extension"
|
|
depends on BT_CTLR_DF_CTE_TX_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for transmission of Constant Tone Extension in
|
|
controller.
|
|
|
|
config BT_CTLR_DF_CTE_RX_SAMPLE_1US
|
|
bool "Enable reception of CTE with 1us sampling slots"
|
|
depends on BT_CTLR_DF_CTE_RX_SAMPLE_1US_SUPPORT
|
|
default y
|
|
help
|
|
Enable reception of Constant Tone Extension. Process IQ sampling
|
|
during CTE reception with 1us sampling slots.
|
|
This sampling mode is optional for Direction Finding according to
|
|
Bluetooth v5.1.
|
|
|
|
config BT_CTLR_DF_ANT_SWITCH_1US
|
|
bool "Enable support for 1us antenna switch slots"
|
|
depends on BT_CTLR_DF_ANT_SWITCH_1US_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for 1us antenna switching slots. This antenna switching
|
|
mode is optional for Direction Finding according to Bluetooth v5.1.
|
|
|
|
# Features related with Direction Finding
|
|
# BT Core spec 5.1, Vol 6, Part B, sec. 4.6 Feature Support
|
|
|
|
config BT_CTLR_DF_ANT_SWITCH_TX
|
|
bool "Enable antenna switching during CTE transmission (AoD) feature"
|
|
depends on BT_CTLR_DF_CTE_TX && BT_CTLR_DF_ANT_SWITCH_2US_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for antenna switching during CTE transmission.
|
|
Also known as Angle of Departure mode.
|
|
|
|
config BT_CTLR_DF_ANT_SWITCH_RX
|
|
bool "Enable antenna switching during CTE reception (AoA) feature"
|
|
depends on BT_CTLR_DF_CTE_RX && BT_CTLR_DF_ANT_SWITCH_2US_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for antenna switching during CTE reception.
|
|
Also known as Angle of Arrival mode.
|
|
|
|
config BT_CTLR_DF_CTE_RX
|
|
bool "Enable reception of Constant Tone Extension feature"
|
|
depends on BT_CTLR_DF_CTE_RX_SUPPORT
|
|
select BT_CTLR_CONN_RSSI if BT_CONN
|
|
default y
|
|
help
|
|
Enable support for reception of Constant Tone Extension in controller.
|
|
|
|
config BT_CTLR_DF_CONN_CTE_REQ
|
|
bool "Enable Connection CTE Request feature"
|
|
depends on BT_CTLR_DF_CONN_CTE_RX
|
|
help
|
|
Enable support for Bluetooth v5.1 Connection CTE Request feature
|
|
in controller.
|
|
|
|
config BT_CTLR_DF_CONN_CTE_RSP
|
|
bool "Enable Connection CTE Response feature"
|
|
depends on BT_CTLR_DF_CONN_CTE_TX
|
|
help
|
|
Enable support for Bluetooth v5.1 Connection CTE Response feature
|
|
in controller.
|
|
|
|
config BT_CTLR_DF_ADV_CTE_TX
|
|
bool "Enable Connectionless CTE Transmitter feature"
|
|
depends on BT_CTLR_DF_CTE_TX && BT_CTLR_ADV_PERIODIC
|
|
select BT_CTLR_ADV_EXT_PDU_EXTRA_DATA_MEMORY
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v5.1 Connectionless CTE Transmitter
|
|
feature in controller.
|
|
|
|
config BT_CTLR_DF_SCAN_CTE_RX
|
|
bool "Enable Connectionless CTE Receiver"
|
|
depends on BT_CTLR_DF_CTE_RX && BT_CTLR_SYNC_PERIODIC
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v5.1 connectionless CTE reception
|
|
in controller.
|
|
|
|
config BT_CTLR_DF_CONN_CTE_TX
|
|
bool "Enable Connection based CTE Transmitter"
|
|
depends on BT_CTLR_DF_CTE_TX && BT_CONN
|
|
default y
|
|
help
|
|
Enable transmission of Constant Tone Extension in
|
|
direction finding connected mode.
|
|
|
|
config BT_CTLR_DF_CONN_CTE_RX
|
|
bool "Enable Connection based CTE Receiver"
|
|
depends on BT_CTLR_DF_CTE_RX && BT_CONN
|
|
default y
|
|
help
|
|
Enable reception and sampling of Constant Tone Extension in direction
|
|
finding connected mode.
|
|
|
|
config BT_CTLR_DF_SAMPLE_CTE_FOR_PDU_WITH_BAD_CRC
|
|
bool "Enable sampling of CTE for PDUs with bad CRC"
|
|
depends on BT_CTLR_DF_SCAN_CTE_RX
|
|
default y
|
|
help
|
|
Enable support for sampling of CTE for PDUs that have bad CRC.
|
|
|
|
# Customization setting to manage memory usage footprint
|
|
|
|
config BT_CTLR_DF_MAX_ANT_SW_PATTERN_LEN
|
|
int "Maximum length of antenna switch pattern"
|
|
range 3 39 if SOC_COMPATIBLE_NRF
|
|
range 2 75 if !SOC_COMPATIBLE_NRF
|
|
default 12
|
|
help
|
|
Defines maximum length of antenna switch pattern that controller
|
|
is able to store. For nRF5x-based controllers, the hardware imposes
|
|
the value is within range 3 to 40, where last value is maximum.
|
|
For general use cases Bluetooth Core 5.1 spec. required the value
|
|
to be within range 2 up to 75.
|
|
|
|
config BT_CTLR_DF_INIT_ANT_SEL_GPIOS
|
|
bool "Enable initialization of GPIOs responsible for antenna switching"
|
|
depends on BT_CTLR_DF_ANT_SWITCH_TX || BT_CTLR_DF_ANT_SWITCH_RX
|
|
default y
|
|
help
|
|
Enable implicit initialization of GPIOs responsible for antenna
|
|
switching during Radio initialization.
|
|
If this feature is not enabled, the Radio initialization procedure will
|
|
not initialize GPIOs pins selected to drive antenna switching.
|
|
In such case application is responsible for appropriate GPIOs
|
|
initialization.
|
|
|
|
config BT_CTLR_DF_PER_ADV_CTE_NUM_MAX
|
|
int "Maximum number of transmitted PDUs with Constant Tone Extension in connectionless mode"
|
|
depends on BT_CTLR_DF_ADV_CTE_TX && BT_CTLR_ADV_PDU_LINK
|
|
range 1 16
|
|
default 1
|
|
help
|
|
Maximum supported number of PDUs, that have Constant Tone Extension, transmitted in single
|
|
periodic advertising chain. The range is taken from BT Core spec 5.1, Vol 4 Part E
|
|
section 7.8.82 HCI_LE_Set_Connectionless_IQ_Sampling_Enable Max_Sampled_CTEs parameter.
|
|
|
|
config BT_CTLR_DF_PER_SCAN_CTE_NUM_MAX
|
|
int "Maximum number of received PDUs with Constant Tone Extension in connectionless mode"
|
|
depends on BT_CTLR_DF_SCAN_CTE_RX
|
|
range 1 16
|
|
default 16
|
|
help
|
|
Maximum supported number of PDUs, that have Constant Tone Extension, received in single
|
|
periodic advertising chain. The range is taken from BT Core spec 5.1, Vol 4 Part E
|
|
section 7.8.82 HCI_LE_Set_Connectionless_IQ_Sampling_Enable Max_Sampled_CTEs parameter.
|
|
|
|
config BT_CTLR_DF_DEBUG_ENABLE
|
|
bool "Bluetooth Direction Finding debug support enable"
|
|
help
|
|
This option enables debug support for the Direction Finding
|
|
implementation in controller.
|
|
|
|
config BT_CTLR_DF_PHYEND_OFFSET_COMPENSATION_ENABLE
|
|
bool
|
|
depends on BT_CTLR_DF_CTE_RX && BT_CONN && (SOC_NRF52811 || SOC_NRF52820 || SOC_NRF52833 || SOC_NRF5340_CPUNET)
|
|
default y
|
|
help
|
|
SOCs nRF52811, nRF52820, nRF52833, nRF5340 generate PHYEND event delayed when
|
|
CTEINLINECTRLEN is enabled and received PDU does not have CTEInfo field. The option
|
|
enables workaround for the delay to maintain inter frame spacing (IFS) for connection
|
|
events.
|
|
|
|
endif # BT_CTLR_DF
|