1menu "Bluetooth"
2    visible if (IDF_TARGET_ESP32 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3)
3
4    config BT_ENABLED
5        bool "Bluetooth"
6        depends on (IDF_TARGET_ESP32 || IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3)
7        help
8            Select this option to enable Bluetooth and show the submenu with Bluetooth configuration choices.
9
10    config BT_SOC_SUPPORT_5_0
11        bool
12        depends on BT_ENABLED && (IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3)
13        default y if BT_ENABLED && (IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3)
14        default n
15
16    menu "Bluetooth controller"
17        depends on BT_ENABLED
18
19        source "$IDF_PATH/components/bt/controller/$IDF_TARGET/Kconfig.in"
20    endmenu
21
22    choice BT_HOST
23        prompt "Bluetooth Host"
24        depends on BT_ENABLED && (BTDM_CTRL_HCI_MODE_VHCI || BT_CTRL_HCI_MODE_VHCI)
25        default BT_BLUEDROID_ENABLED
26        help
27            This helps to choose Bluetooth host stack
28
29        config BT_BLUEDROID_ENABLED
30            bool "Bluedroid - Dual-mode"
31            help
32                This option is recommended for classic Bluetooth or for dual-mode
33                usecases
34
35        config BT_NIMBLE_ENABLED
36            bool "NimBLE - BLE only"
37            help
38                This option is recommended for BLE only usecases to save on memory
39
40        config BT_CONTROLLER_ONLY
41            bool "Controller Only"
42            help
43                This option is recommended when you want to communicate directly with the
44                controller (without any host) or when you are using any other host stack
45                not supported by Espressif (not mentioned here).
46
47    endchoice
48
49    menu "Bluedroid Options"
50        depends on BT_BLUEDROID_ENABLED
51
52        source "$IDF_PATH/components/bt/host/bluedroid/Kconfig.in"
53    endmenu
54    menu "NimBLE Options"
55        depends on BT_NIMBLE_ENABLED
56
57        source "$IDF_PATH/components/bt/host/nimble/Kconfig.in"
58    endmenu
59
60endmenu
61
62menuconfig BLE_MESH
63    bool "ESP BLE Mesh Support"
64    depends on BT_ENABLED
65    help
66        This option enables ESP BLE Mesh support. The specific features that are
67        available may depend on other features that have been enabled in the
68        stack, such as Bluetooth Support, Bluedroid Support & GATT support.
69
70source "$IDF_PATH/components/bt/esp_ble_mesh/Kconfig.in"
71