1CONFIG_BT=y 2CONFIG_BT_SMP=y 3CONFIG_BT_CENTRAL=y 4 5# Drivers and peripherals 6CONFIG_I2C=n 7CONFIG_WATCHDOG=n 8CONFIG_PINCTRL=n 9CONFIG_SPI=n 10CONFIG_GPIO=n 11CONFIG_SERIAL=n 12 13# Power management 14CONFIG_PM=n 15 16# Interrupts 17CONFIG_DYNAMIC_INTERRUPTS=n 18CONFIG_IRQ_OFFLOAD=n 19 20# Memory protection 21CONFIG_THREAD_STACK_INFO=n 22CONFIG_THREAD_CUSTOM_DATA=n 23CONFIG_FPU=n 24 25# Boot 26CONFIG_BOOT_BANNER=n 27CONFIG_BOOT_DELAY=0 28 29# Console 30CONFIG_CONSOLE=n 31CONFIG_UART_CONSOLE=n 32CONFIG_STDOUT_CONSOLE=n 33CONFIG_PRINTK=n 34CONFIG_EARLY_CONSOLE=n 35 36# Build 37CONFIG_SIZE_OPTIMIZATIONS=y 38 39# ARM 40CONFIG_ARM_MPU=n 41 42# In order to correctly tune the stack sizes for the threads the following 43# Configurations can enabled to print the current use: 44# CONFIG_THREAD_NAME=y 45# CONFIG_THREAD_ANALYZER=y 46# CONFIG_THREAD_ANALYZER_AUTO=y 47# CONFIG_THREAD_ANALYZER_RUN_UNLOCKED=y 48# CONFIG_THREAD_ANALYZER_USE_PRINTK=y 49# CONFIG_THREAD_ANALYZER_AUTO_INTERVAL=20 50# CONFIG_CONSOLE=y 51# CONFIG_UART_CONSOLE=y 52# CONFIG_SERIAL=y 53# CONFIG_PRINTK=y 54 55# Example output of thread analyzer 56# BT RX : STACK: unused 576 usage 448 / 1024 (43 %); CPU: 0 % 57# BT RX pri : STACK: unused 260 usage 188 / 448 (41 %); CPU: 0 % 58# BT ECC : STACK: unused 256 usage 888 / 1144 (77 %); CPU: 1 % 59# BT TX : STACK: unused 296 usage 344 / 640 (53 %); CPU: 0 % 60# thread_analyzer : STACK: unused 128 usage 384 / 512 (75 %); CPU: 1 % 61# sysworkq : STACK: unused 856 usage 168 / 1024 (16 %); CPU: 0 % 62# logging : STACK: unused 232 usage 536 / 768 (69 %); CPU: 0 % 63# idle 00 : STACK: unused 208 usage 48 / 256 (18 %); CPU: 97 % 64# main : STACK: unused 576 usage 448 / 1024 (43 %); CPU: 0 % 65CONFIG_BT_RX_STACK_SIZE=1024 66CONFIG_BT_HCI_TX_STACK_SIZE_WITH_PROMPT=y 67CONFIG_BT_HCI_TX_STACK_SIZE=640 68CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=512 69CONFIG_IDLE_STACK_SIZE=128 70CONFIG_MAIN_STACK_SIZE=640 71CONFIG_ISR_STACK_SIZE=1024 72 73# Disable features not needed 74CONFIG_TIMESLICING=n 75CONFIG_COMMON_LIBC_MALLOC=n 76CONFIG_LOG=n 77CONFIG_ASSERT=n 78 79# Disable Bluetooth features not needed 80# CONFIG_BT_DEBUG_NONE=y 81CONFIG_BT_ASSERT=n 82CONFIG_BT_DATA_LEN_UPDATE=n 83CONFIG_BT_PHY_UPDATE=n 84CONFIG_BT_GATT_CACHING=n 85CONFIG_BT_GATT_SERVICE_CHANGED=n 86CONFIG_BT_GAP_PERIPHERAL_PREF_PARAMS=n 87CONFIG_BT_SETTINGS_CCC_LAZY_LOADING=y 88CONFIG_BT_HCI_VS=n 89 90# Disable Bluetooth controller features not needed 91CONFIG_BT_CTLR_PRIVACY=n 92CONFIG_BT_CTLR_PHY_2M=n 93 94# Reduce Bluetooth buffers 95CONFIG_BT_BUF_EVT_DISCARDABLE_COUNT=1 96CONFIG_BT_BUF_EVT_DISCARDABLE_SIZE=45 97CONFIG_BT_BUF_EVT_RX_COUNT=2 98 99CONFIG_BT_L2CAP_TX_BUF_COUNT=2 100CONFIG_BT_CTLR_RX_BUFFERS=1 101CONFIG_BT_BUF_ACL_TX_COUNT=3 102CONFIG_BT_BUF_ACL_TX_SIZE=27 103 104# Limit the number of key slots in PSA Crypto core to reduce 105# RAM footprint 106CONFIG_MBEDTLS_PSA_KEY_SLOT_COUNT=5 107 108# This is required because otherwise there won't be 109# __heap_start/__heap_end symbols defined in the build. This 110# is due to Mbed TLS which at boot uses standard calloc/free 111# functions and only after the initialization done from Zephyr 112# it switches to its internal memory management functions. 113CONFIG_COMMON_LIBC_MALLOC=y 114