# Kconfig file for package NimBLE menuconfig LPKG_USING_NIMBLE bool "NimBLE:An open-source Bluetooth 5.0 stack porting on RT-Thread" select RT_USING_MESSAGEQUEUE default n if LPKG_USING_NIMBLE config LPKG_NIMBLE_PATH string default "/packages/third-part/nimble" menu "Bluetooth Role support" config LPKG_NIMBLE_ROLE_PERIPHERAL bool "Peripheral Role support" select LPKG_NIMBLE_ROLE_BROADCASTER default y help Select this for LE Peripheral role support. config LPKG_NIMBLE_ROLE_CENTRAL bool "Central Role support" select LPKG_NIMBLE_ROLE_OBSERVER default y help Select this for LE Central role support. config LPKG_NIMBLE_ROLE_BROADCASTER bool "Broadcaster Role support" default y help Select this for LE Broadcaster role support. config LPKG_NIMBLE_ROLE_OBSERVER bool "Observer Role support" help Select this for LE Observer role support. endmenu menu "Host Stack Configuration" config LPKG_NIMBLE_HOST bool "Bluetooth Host Stack support" default y if LPKG_NIMBLE_HOST config LPKG_NIMBLE_HOST_THREAD_STACK_SIZE int "The thread stack Size of Host Stack" default 1536 help Set Host thread stack size. config LPKG_NIMBLE_HOST_THREAD_PRIORITY int "The thread priority of Host Stack" default 8 help Set Host Stack thread priority. endif endmenu menu "Controller Configuration" config LPKG_NIMBLE_CTLR bool "Bluetooth Controller support" default n help Enable support for nordic controller implementations. if LPKG_NIMBLE_CTLR config LPKG_NIMBLE_CTLR_THREAD_STACK_SIZE int "The thread stack Size of Controller" default 1024 help Set Controller thread stack size. config LPKG_NIMBLE_CTLR_THREAD_PRIORITY int "The thread priority of Controller" default 7 help Set Controller thread priority. choice prompt "Bluetooth device support" default LPKG_NIMBLE_BSP_NRF52 help Select the device controller layer support. config LPKG_NIMBLE_BSP_NRF51 bool "NRF51xxx" config LPKG_NIMBLE_BSP_NRF52 bool "NRF52xxx" config LPKG_NIMBLE_BSP_NRF52840 bool "NRF52840" endchoice endif endmenu menu "Bluetooth Mesh support" config LPKG_NIMBLE_MESH bool "Bluetooth Mesh support" default n depends on LPKG_NIMBLE_ROLE_BROADCASTER && LPKG_NIMBLE_ROLE_OBSERVER help This option enables Bluetooth Mesh support. The specific features that are available may depend on other features that have been enabled in the stack, such as GATT support. if LPKG_NIMBLE_MESH config LPKG_NIMBLE_MESH_DEVICE_NAME string "BLE Mesh device/node name" default "nimble-node" help This value defines BLE Mesh device/node name. config LPKG_NIMBLE_MESH_ADV_THREAD_STACK_SIZE int "The thread stack Size of Mesh advertising" default 1024 help Set Mesh advertising thread stack size. config LPKG_NIMBLE_MESH_ADV_THREAD_PRIORITY int "The thread priority of Mesh Advertising" default 9 help Set Mesh Advertising thread priority. config LPKG_NIMBLE_MESH_CFG_CLI bool "Support for Configuration Client Model" help Enable support for the configuration client model. endif endmenu menu "HCI Transport support" config LPKG_NIMBLE_HCI_USING_RTT_UART bool "HCI Transport using rt-thread uart" default n if LPKG_NIMBLE_HCI_USING_RTT_UART config LPKG_NIMBLE_HCI_UART_DEVICE_NAME string "The uart for HCI Transport" default "uart1" endif endmenu menu "HCI Protocol support" choice prompt "Select HCI Protocol" default LPKG_NIMBLE_HCI_H5 config LPKG_NIMBLE_HCI_H4 bool "HCI Protocol using H4" config LPKG_NIMBLE_HCI_H5 bool "HCI Protocol using H5" endchoice endmenu menu "Device Driver support" endmenu choice prompt "NimBLE log level" default LPKG_NIMBLE_DEBUG_LEVEL_INFO help select the NIMBLE log level config LPKG_NIMBLE_DEBUG_LEVEL_NONE bool "none" config LPKG_NIMBLE_DEBUG_LEVEL_ERR bool "error" config LPKG_NIMBLE_DEBUG_LEVEL_WARN bool "warn" config LPKG_NIMBLE_DEBUG_LEVEL_INFO bool "info" config LPKG_NIMBLE_DEBUG_LEVEL_DEBUG bool "debug" endchoice config LPKG_NIMBLE_DEBUG_LEVEL int default 0 if LPKG_NIMBLE_DEBUG_LEVEL_NONE default 3 if LPKG_NIMBLE_DEBUG_LEVEL_ERR default 4 if LPKG_NIMBLE_DEBUG_LEVEL_WARN default 6 if LPKG_NIMBLE_DEBUG_LEVEL_INFO default 7 if LPKG_NIMBLE_DEBUG_LEVEL_DEBUG choice prompt "Bluetooth Samples" default LPKG_NIMBLE_SAMPLE_DISABLE help select the NimBLE samples config LPKG_NIMBLE_SAMPLE_DISABLE bool "Not enable sample" config LPKG_NIMBLE_SAMPLE_BLUFI bool "BLE Assisted WiFi provisioning" select NIMBT_ROLE_PERIPHERAL config LPKG_NIMBLE_SAMPLE_SELFIE bool "BLE selfie sample" select NIMBT_ROLE_PERIPHERAL config LPKG_NIMBLE_SAMPLE_PER_HR bool "BLE peripheral heartrate sensor" select NIMBT_ROLE_PERIPHERAL config LPKG_NIMBLE_SAMPLE_BLECSC bool "BLE peripheral cycling speed and cadence sensor" select NIMBT_ROLE_PERIPHERAL config LPKG_NIMBLE_SAMPLE_BLEUART bool "BLE uart sample" config LPKG_NIMBLE_SAMPLE_BTSHELL bool "BLE Shell sample exposing the nimble GAP and GATT" config LPKG_NIMBLE_SAMPLE_PERIPHERAL bool "BLE peripheral role sample" config LPKG_NIMBLE_SAMPLE_CENTRAL bool "BLE central role sample" config LPKG_NIMBLE_SAMPLE_BEACON bool "BLE beacon sample" select NIMBT_ROLE_BROADCASTER config LPKG_NIMBLE_SAMPLE_ADVERTISER bool "BLE advertiser sample" select NIMBT_ROLE_BROADCASTER config LPKG_NIMBLE_SAMPLE_EXT_ADVERTISER bool "BLE external advertiser sample" config LPKG_NIMBLE_SAMPLE_BLEMESH bool "BLE Mesh sample" select LPKG_NIMBLE_MESH endchoice config LPKG_NIMBLE_MAX_CONNECTIONS int "Maximum number of concurrent connections" range 1 32 default 1 help Maximum number of concurrent Bluetooth connections supported. config LPKG_NIMBLE_WHITELIST bool "Device Whitelist Support" default y help Enables the BLE whitelist for controlling who to connect to oraccept a connection from. config LPKG_NIMBLE_MULTI_ADV_INSTANCES int "The number of multi-advertising instances" default 0 depends on LPKG_NIMBLE_ROLE_BROADCASTER help This is the number of multi-advertising instances. This is NOT the total number of advertising instances. The total number of advertising instances is this number plus 1. config LPKG_NIMBLE_EXT_ADV bool "Extended Advertising Feature Support" default n depends on LPKG_NIMBLE_ROLE_BROADCASTER help This enables extended advertising feature. config LPKG_NIMBLE_EXT_ADV_MAX_SIZE int "The number of multi-advertising instances" range 31 1650 default 31 depends on LPKG_NIMBLE_EXT_ADV help This allows to configure maximum size of advertising data and scan response data used in LE Advertising Extensions. Valid range 31-1650. choice prompt "Version" default LPKG_USING_NIMBLE_V180 help Select the package version config LPKG_USING_NIMBLE_V180 bool "v1.8.0" config LPKG_USING_NIMBLE_LATEST_VERSION bool "latest" endchoice config LPKG_NIMBLE_VER string default "v1.8.0" if LPKG_USING_NIMBLE_V180 default "latest" if LPKG_USING_NIMBLE_LATEST_VERSION endif