Configuration Options Reference
Subsequent sections contain the list of available ESP-IDF options automatically generated from Kconfig files. Note that due to dependencies between options, some options listed here may not be visible by default in menuconfig.
By convention, all option names are upper-case letters with underscores. When Kconfig generates sdkconfig and sdkconfig.h files, option names are prefixed with CONFIG_. So if an option ENABLE_FOO is defined in a Kconfig file and selected in menuconfig, then the sdkconfig and sdkconfig.h files will have CONFIG_ENABLE_FOO defined. In the following sections, option names are also prefixed with CONFIG_, same as in the source code.
Build type
Contains:
CONFIG_APP_BUILD_TYPE
Application build type
Found in: Build type
Select the way the application is built.
By default, the application is built as a binary file in a format compatible with the ESP-IDF bootloader. In addition to this application, 2nd stage bootloader is also built. Application and bootloader binaries can be written into flash and loaded/executed from there.
Another option, useful for only very small and limited applications, is to only link the .elf file of the application, such that it can be loaded directly into RAM over JTAG or UART. Note that since IRAM and DRAM sizes are very limited, it is not possible to build any complex application this way. However for some kinds of testing and debugging, this option may provide faster iterations, since the application does not need to be written into flash.
Note: when APP_BUILD_TYPE_RAM is selected and loaded with JTAG, ESP-IDF does not contain all the startup code required to initialize the CPUs and ROM memory (data/bss). Therefore it is necessary to execute a bit of ROM code prior to executing the application. A gdbinit file may look as follows (for ESP32):
# Connect to a running instance of OpenOCD target remote :3333 # Reset and halt the target mon reset halt # Run to a specific point in ROM code, # where most of initialization is complete. thb *0x40007d54 c # Load the application into RAM load # Run till app_main tb app_main c
Execute this gdbinit file as follows:
xtensa-esp32-elf-gdb build/app-name.elf -x gdbinit
Example gdbinit files for other targets can be found in tools/test_apps/system/gdb_loadable_elf/
When loading the BIN with UART, the ROM will jump to ram and run the app after finishing the ROM startup code, so there's no additional startup initialization required. You can use the load-ram in esptool to load the generated .bin file into ram and execute.
- Example:
esptool --chip {chip} -p {port} -b {baud} --no-stub load-ram {app.bin}
Recommended sdkconfig.defaults for building loadable ELF files is as follows. CONFIG_APP_BUILD_TYPE_RAM is required, other options help reduce application memory footprint.
CONFIG_APP_BUILD_TYPE_RAM=y CONFIG_VFS_SUPPORT_TERMIOS= CONFIG_LIBC_NEWLIB_NANO_FORMAT=y CONFIG_ESP_SYSTEM_PANIC_PRINT_HALT=y CONFIG_ESP_DEBUG_STUBS_ENABLE= CONFIG_ESP_ERR_TO_NAME_LOOKUP=
Available options:
Default (binary application + 2nd stage bootloader) (CONFIG_APP_BUILD_TYPE_APP_2NDBOOT)
Build app runs entirely in RAM (EXPERIMENTAL) (CONFIG_APP_BUILD_TYPE_RAM)
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP
Build app without SPI_FLASH/PSRAM support (saves ram)
Found in: Build type
If this option is enabled, external memory and related peripherals, such as Cache, MMU, Flash and PSRAM, won't be initialized. Corresponding drivers won't be introduced either. Components that depend on the spi_flash component will also be unavailable, such as app_update, etc. When this option is enabled, about 26KB of RAM space can be saved.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_RAM is enabled
Minimize binary changes between builds
Contains:
CONFIG_APP_BUILD_MINIMIZE_BINARY_CHANGES
Minimize binary changes between builds
Found in: Build type > Minimize binary changes between builds
Optimize the application binary so that "idf.py flash" can flash only the data sectors that changed. Fast reflashing works without this option, enabling it improves reflash effectiveness by reducing the amount of data written on each reflash.
Enabling this option classifies component libraries into two categories: mutable and immutable. Mutable libraries are expected to change frequently during development, while immutable libraries are considered stable. All project component libraries are treated as mutable; all other libraries are treated as immutable.
In the generated linker script, input sections from immutable libraries are placed before those from mutable libraries. This layout helps localize changes in the output sections of the ELF file, so that recompilation primarily affects a confined area associated with the mutable libraries.
To support this, some compiler optimizations, such as constant merging, are disabled, which helps minimize differences in the binary image between builds. However, this may increase the overall image size and flash usage.
Additionally, this option inserts a padding, defined by the APP_BUILD_MINIMIZE_BINARY_CHANGES_PADDING option, after the input sections of mutable libraries. This allows further isolation of changes but also increases the size of the binary image and flash consumption.
This option is primarily intended for development. It increases binary size and disables optimizations; it is not recommended for production builds.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_APP_2NDBOOT is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_COMPILER_NO_MERGE_CONSTANTS if CONFIG_IDF_TOOLCHAIN_GCC is enabled
CONFIG_APP_BUILD_MINIMIZE_BINARY_CHANGES_PADDING_SIZE
Padding size
Found in: Build type > Minimize binary changes between builds > CONFIG_APP_BUILD_MINIMIZE_BINARY_CHANGES
Selects the amount of padding (in kilobytes) to add after input sections of mutable libraries when "Minimize binary changes between builds" is enabled.
Available options:
2 KB (CONFIG_APP_BUILD_MINIMIZE_BINARY_CHANGES_PADDING_2KB)
4 KB (CONFIG_APP_BUILD_MINIMIZE_BINARY_CHANGES_PADDING_4KB)
8 KB (CONFIG_APP_BUILD_MINIMIZE_BINARY_CHANGES_PADDING_8KB)
CONFIG_APP_REPRODUCIBLE_BUILD
Enable reproducible build
Found in: Build type
If enabled, all date, time, and path information would be eliminated. A .gdbinit file would be create automatically. (or will be append if you have one already)
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_COMPILER_HIDE_PATHS_MACROS
CONFIG_APP_NO_BLOBS
No Binary Blobs
Found in: Build type
If enabled, this disables the linking of binary libraries in the application build. Note that after enabling this Wi-Fi/Bluetooth will not work.
- Default value:
Disabled
App Update config
Contains:
CONFIG_APP_UPDATE_SECURE_SIGNED_DATA_PARTITION
Require signed Data partition images
Found in: App Update config
If set, the Data partition images will be verified during OTA updates. Only partitions with subtype ESP_PARTITION_SUBTYPE_DATA_UNDEFINED will be verified.
- Symbol can be set when:
CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled || CONFIG_SECURE_SIGNED_APPS is enabled
- Default value:
Disabled
Bootloader config
Contains:
Bootloader manager
Contains:
CONFIG_BOOTLOADER_COMPILE_TIME_DATE
Use time/date stamp for bootloader
Found in: Bootloader config > Bootloader manager
If set, then the bootloader will be built with the current time/date stamp. It is stored in the bootloader description structure. If not set, time/date stamp will be excluded from bootloader image. This can be useful for getting the same binary image files made from the same source, but at different times.
- Symbol can be set when:
CONFIG_APP_REPRODUCIBLE_BUILD is disabled
- Default value:
Enabled
CONFIG_BOOTLOADER_PROJECT_VER
Project version
Found in: Bootloader config > Bootloader manager
Project version. It is placed in "version" field of the esp_bootloader_desc structure. The type of this field is "uint32_t".
- Range:
from 0 to 4294967295
- Default value:
1
Application Rollback
Contains:
CONFIG_BOOTLOADER_APP_ROLLBACK
Enable application rollback
Found in: Bootloader config > Application Rollback
After an OTA update, the bootloader starts the new application in the ESP_OTA_IMG_PENDING_VERIFY state. If the application resets, crashes, or loses power before being confirmed valid, the bootloader marks it as aborted on the next boot and selects the previously working application instead.
Disabling this option removes the automatic recovery path after a failed OTA update: a failed update can leave the device with an unbootable application.
- Default value:
Enabled
CONFIG_BOOTLOADER_APP_ROLLBACK_CONFIRM_MODE
Rollback confirmation checkpoint
Found in: Bootloader config > Application Rollback > CONFIG_BOOTLOADER_APP_ROLLBACK
Available options:
Confirm app automatically during system startup (CONFIG_BOOTLOADER_APP_ROLLBACK_CONFIRM_ON_STARTUP)
The application is marked valid near the end of system startup, immediately before app_main is called. Reaching app_main is treated as a successful boot; this confirms IDF startup completed but does not verify application-specific functionality.
Since the state is already ESP_OTA_IMG_VALID by the time app_main runs, application code cannot use esp_ota_get_state_partition() to detect the first boot of a new application.
Application decides the confirmation checkpoint (CONFIG_BOOTLOADER_APP_ROLLBACK_CONFIRM_BY_APP)
The application must confirm itself valid during its first boot by calling esp_ota_mark_app_valid_cancel_rollback(), or reject the update with esp_ota_mark_app_invalid_rollback_and_reboot(). If neither is called before a reset, the bootloader marks the app as aborted and rolls back to the previous working application.
Rollback is possible only between apps with the same security version.
CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
Enable app anti-rollback support
Found in: Bootloader config > Application Rollback
This option prevents rollback to previous firmware/application image with lower security version.
- Symbol can be set when:
- Default value:
Disabled
CONFIG_BOOTLOADER_APP_SECURE_VERSION
eFuse secure version of app
Found in: Bootloader config > Application Rollback > CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
The secure version is the sequence number stored in the header of each firmware. The security version is set in the bootloader, version is recorded in the eFuse field as the number of set ones. The allocated number of bits in the efuse field for storing the security version is limited (see BOOTLOADER_APP_SEC_VER_SIZE_EFUSE_FIELD option).
Bootloader: When bootloader selects an app to boot, an app is selected that has a security version greater or equal that recorded in eFuse field. The app is booted with a higher (or equal) secure version.
The security version is worth increasing if in previous versions there is a significant vulnerability and their use is not acceptable.
Your partition table should has a scheme with ota_0 + ota_1 (without factory).
- Symbol can be set when:
CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK is enabled
- Default value:
0
CONFIG_BOOTLOADER_APP_SEC_VER_SIZE_EFUSE_FIELD
Size of the efuse secure version field
Found in: Bootloader config > Application Rollback > CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
The size of the efuse secure version field. Its length is limited to 32 bits for ESP32, 4 bits for ESP32-C2, 9 bits for ESP32-C5, and 16 bits for other targets. This determines how many times the security version can be increased.
- Symbol can be set when:
CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK is enabled
- Range:
from 1 to 16
- Default value:
16
CONFIG_BOOTLOADER_EFUSE_SECURE_VERSION_EMULATE
Emulate operations with efuse secure version(only test)
Found in: Bootloader config > Application Rollback > CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK
This option allows to emulate read/write operations with all eFuses and efuse secure version. It allows to test anti-rollback implementation without permanent write eFuse bits. There should be an entry in partition table with following details: emul_efuse, data, efuse, , 0x2000.
This option enables: EFUSE_VIRTUAL and EFUSE_VIRTUAL_KEEP_IN_FLASH.
- Symbol can be set when:
CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_EFUSE_VIRTUAL
forcefully enables CONFIG_EFUSE_VIRTUAL_KEEP_IN_FLASH
Recovery Bootloader and Rollback
Contains:
CONFIG_BOOTLOADER_RECOVERY_ENABLE
Enable Recovery Bootloader
Found in: Bootloader config > Recovery Bootloader and Rollback
The recovery bootloader feature is implemented in the ROM bootloader. It is required for safe OTA updates of the bootloader. The feature is activated when the eFuse field (ESP_EFUSE_RECOVERY_BOOTLOADER_FLASH_SECTOR) is set, which defines the flash address of the recovery bootloader. If activated and the primary bootloader fails to load, the ROM bootloader will attempt to load the recovery bootloader from the address specified in eFuse.
- Default value:
Disabled
CONFIG_BOOTLOADER_RECOVERY_OFFSET
Recovery Bootloader Flash Offset
Found in: Bootloader config > Recovery Bootloader and Rollback > CONFIG_BOOTLOADER_RECOVERY_ENABLE
Flash address where the recovery bootloader is stored. This value must be written to the eFuse field (ESP_EFUSE_RECOVERY_BOOTLOADER_FLASH_SECTOR) to activate the recovery bootloader in the ROM bootloader. The eFuse can be programmed using espefuse or in the user application with the API esp_efuse_set_recovery_bootloader_offset(). Setting this value in the config allows parttool.py to verify that it does not overlap with existing partitions in the partition table.
The address must be a multiple of the flash sector size (0x1000 bytes). The eFuse field stores the offset in sectors. If the feature is no longer needed or unused, you can burn the 0xFFF value to disable this feature in the ROM bootloader.
- Symbol can be set when:
CONFIG_BOOTLOADER_RECOVERY_ENABLE is enabled
- Range:
from 0x0 to 0xFFE000
- Default value:
"0x3F0000"
CONFIG_BOOTLOADER_ANTI_ROLLBACK_ENABLE
Enable bootloader rollback support
Found in: Bootloader config > Recovery Bootloader and Rollback > CONFIG_BOOTLOADER_RECOVERY_ENABLE
This option prevents rollback to previous bootloader image with lower security version.
- Symbol can be set when:
CONFIG_BOOTLOADER_RECOVERY_ENABLE is enabled
- Default value:
Disabled
CONFIG_BOOTLOADER_SECURE_VERSION
Secure version of bootloader
Found in: Bootloader config > Recovery Bootloader and Rollback > CONFIG_BOOTLOADER_RECOVERY_ENABLE > CONFIG_BOOTLOADER_ANTI_ROLLBACK_ENABLE
The secure version is the sequence number stored in the header of each bootloader.
The ROM Bootloader which runs the 2nd stage bootloader (PRIMARY or RECOVERY) checks that the security version is greater or equal that recorded in the eFuse field. Bootloaders that have a secure version in the image < secure version in efuse will not boot.
The security version is worth increasing if in previous versions there is a significant vulnerability and their use is not acceptable.
- Symbol can be set when:
CONFIG_BOOTLOADER_ANTI_ROLLBACK_ENABLE is enabled
- Range:
from 0 to 4
- Default value:
0
CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION
Bootloader optimization Level
Found in: Bootloader config
This option sets compiler optimization level (gcc -O argument) for the bootloader.
The default "Size" setting will add the -Os (-Oz with clang) flag to CFLAGS.
The "Debug" setting will add the -Og flag to CFLAGS.
The "Performance" setting will add the -O2 flag to CFLAGS.
Note that custom optimization levels may be unsupported.
Available options:
Size (-Os with GCC, -Oz with Clang) (CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE)
Debug (-Og) (CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG)
Optimize for performance (-O2) (CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_PERF)
Log
Contains:
CONFIG_BOOTLOADER_LOG_VERSION
Log version
Found in: Bootloader config > Log
Select the log version to be used by the ESP log component. The app log version (CONFIG_LOG_VERSION) controls the version used in the bootloader, preventing the selection of different versions. For description of V1 and V2 see CONFIG_LOG_VERSION.
Available options:
V1 (CONFIG_BOOTLOADER_LOG_VERSION_1)
V2 (CONFIG_BOOTLOADER_LOG_VERSION_2)
CONFIG_BOOTLOADER_LOG_LEVEL
Bootloader log verbosity
Found in: Bootloader config > Log
Specify how much output to see in bootloader logs.
Available options:
No output (CONFIG_BOOTLOADER_LOG_LEVEL_NONE)
Error (CONFIG_BOOTLOADER_LOG_LEVEL_ERROR)
Warning (CONFIG_BOOTLOADER_LOG_LEVEL_WARN)
Info (CONFIG_BOOTLOADER_LOG_LEVEL_INFO)
Debug (CONFIG_BOOTLOADER_LOG_LEVEL_DEBUG)
Verbose (CONFIG_BOOTLOADER_LOG_LEVEL_VERBOSE)
Format
Contains:
CONFIG_BOOTLOADER_LOG_COLORS
Color
Found in: Bootloader config > Log > Format
Enable ANSI terminal color codes. Logs (info, errors, warnings) will contain color codes. In order to view these, your terminal program must support ANSI color codes.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BOOTLOADER_LOG_COLORS_SUPPORT if CONFIG_BOOTLOADER_LOG_VERSION_2 is enabled
CONFIG_BOOTLOADER_LOG_COLORS_SUPPORT
Allow enabling color output at run time
Found in: Bootloader config > Log > Format
Enables support for color codes in the esp_log() function. If CONFIG_LOG_COLORS is enabled, this option is always active. If CONFIG_LOG_COLORS is disabled, this option allows you to still handle color codes in specific files by defining ESP_LOG_COLOR_DISABLED as 0 before including esp_log.h.
Note that enabling this option may slightly increase RAM/FLASH usage due to additional color handling functionality. It provides flexibility to manage color output even when CONFIG_LOG_COLORS is turned off.
- Symbol can be set when:
CONFIG_BOOTLOADER_LOG_VERSION_2 is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BOOTLOADER_LOG_COLORS if CONFIG_BOOTLOADER_LOG_VERSION_2 is enabled
CONFIG_BOOTLOADER_LOG_TIMESTAMP_SOURCE
Timestamp
Found in: Bootloader config > Log > Format
Choose what sort of timestamp is displayed in the log output:
"None" - The log will only contain the actual log messages themselves without any time-related information. Avoiding timestamps can help conserve processing power and memory. It might useful when you perform log analysis or debugging, sometimes it's more straightforward to work with logs that lack timestamps, especially if the time of occurrence is not critical for understanding the issues. "I log_test: info message"
"Milliseconds since boot" is calculated from the RTOS tick count multiplied by the tick period. This time will reset after a software reboot. "I (112500) log_test: info message"
Available options:
None (CONFIG_BOOTLOADER_LOG_TIMESTAMP_SOURCE_NONE)
Milliseconds Since Boot (CONFIG_BOOTLOADER_LOG_TIMESTAMP_SOURCE_CPU_TICKS)
CONFIG_BOOTLOADER_LOG_TIMESTAMP_SUPPORT
Allow enabling timestamp output at run time
Found in: Bootloader config > Log > Format
Enables support for timestamp in the esp_log() function. If CONFIG_LOG_TIMESTAMP_SOURCE_NONE, this option allows you to still handle timestamp in specific files by defining ESP_LOG_TIMESTAMP_DISABLED as 0 before including esp_log.h.
Note that enabling this option may slightly increase RAM/FLASH usage due to additional timestamp handling functionality. It provides flexibility to manage timestamp output even when CONFIG_LOG_TIMESTAMP_SOURCE_NONE.
- Symbol can be set when:
CONFIG_BOOTLOADER_LOG_VERSION_2 is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BOOTLOADER_LOG_TIMESTAMP_SOURCE_CPU_TICKS if CONFIG_BOOTLOADER_LOG_VERSION_2 is enabled
Settings
Contains:
CONFIG_BOOTLOADER_LOG_MODE
Log Mode
Found in: Bootloader config > Log > Settings
Available options:
Text Log Mode (CONFIG_BOOTLOADER_LOG_MODE_TEXT)
Enables text-based logging, where log messages are stored in a human-readable format. This mode is useful for development and debugging, as it allows logs to be easily read and interpreted without additional processing.
Binary Log Mode (CONFIG_BOOTLOADER_LOG_MODE_BINARY)
Enables binary logging with host-side format string expansion. In this mode, the format argument of ESP_LOGx, ESP_EARLY_LOG, and ESP_DRAM_LOG macros is stored in a NOLOAD section, not included in the final binary file. This reduces flash usage by approximately 10% - 35%. The esp_log() function uses the binary log handler to output messages. Instead of sending the full log string, the chip transmits only the addresses of these strings (if present in the ELF file). If the format string cannot be found in the ELF file, the chip sends the entire string. The host-side monitor tool, which has access to the ELF file, reconstructs the log message using the format string. This reduces firmware size by eliminating format strings from flash memory and removing the usage of printf-like functions, potentially freeing up a few kilobytes of space. To further reduce firmware size, wrap string data with ESP_LOG_ATTR_STR.
Serial Flash Configurations
Contains:
CONFIG_BOOTLOADER_FLASH_DC_AWARE
Allow app adjust Dummy Cycle bits in SPI Flash for higher frequency (READ HELP FIRST)
Found in: Bootloader config > Serial Flash Configurations
This will force 2nd bootloader to be loaded by DOUT mode, and will restore Dummy Cycle setting by resetting the Flash
CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT
Enable the support for flash chips of XMC (READ DOCS FIRST)
Found in: Bootloader config > Serial Flash Configurations
Perform the startup flow recommended by XMC. Please consult XMC for the details of this flow. XMC chips will be forbidden to be used, when this option is disabled.
DON'T DISABLE THIS UNLESS YOU KNOW WHAT YOU ARE DOING.
comment "Features below require specific hardware (READ DOCS FIRST!)"
- Default value:
Enabled
CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH
Enable cache access to 32-bit-address (over 16MB) range of SPI Flash (READ DOCS FIRST)
Found in: Bootloader config > Serial Flash Configurations
Enabling this option allows the CPU to access 32-bit-address flash beyond 16M range. 1. This option only valid for 4-line flash. Octal flash doesn't need this. 2. This option is experimental, which means it can’t use on all flash chips stable, for more information, please contact Espressif Business support.
- Symbol can be set when:
CONFIG_BOOTLOADER_FLASH_NEEDS_32BIT_ADDR_QUAD_FLASH is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled
- Default value:
Disabled
CONFIG_BOOTLOADER_FACTORY_RESET
GPIO triggers factory reset
Found in: Bootloader config
Allows to reset the device to factory settings: - clear one or more data partitions; - boot from "factory" partition. The factory reset will occur if there is a GPIO input held at the configured level while device starts up. See settings below.
- Default value:
Disabled
CONFIG_BOOTLOADER_NUM_PIN_FACTORY_RESET
Number of the GPIO input for factory reset
Found in: Bootloader config > CONFIG_BOOTLOADER_FACTORY_RESET
The selected GPIO will be configured as an input with internal pull-up enabled. To trigger a factory reset, this GPIO must be held high or low (as configured) on startup.
Note that on some SoCs not all pins have an internal pull-up and certain pins are already used by ROM bootloader as bootstrapping. Refer to the technical reference manual for further details on the selected SoC.
- Symbol can be set when:
CONFIG_BOOTLOADER_FACTORY_RESET is enabled
- Range:
from 0 to 21
- Default value:
4
CONFIG_BOOTLOADER_FACTORY_RESET_PIN_LEVEL
Factory reset GPIO level
Found in: Bootloader config > CONFIG_BOOTLOADER_FACTORY_RESET
Pin level for factory reset, can be triggered on low or high.
Available options:
Reset on GPIO low (CONFIG_BOOTLOADER_FACTORY_RESET_PIN_LOW)
Reset on GPIO high (CONFIG_BOOTLOADER_FACTORY_RESET_PIN_HIGH)
CONFIG_BOOTLOADER_OTA_DATA_ERASE
Clear OTA data on factory reset (select factory partition)
Found in: Bootloader config > CONFIG_BOOTLOADER_FACTORY_RESET
The device will boot from "factory" partition (or OTA slot 0 if no factory partition is present) after a factory reset.
- Symbol can be set when:
CONFIG_BOOTLOADER_FACTORY_RESET is enabled
CONFIG_BOOTLOADER_DATA_FACTORY_RESET
Comma-separated names of partitions to clear on factory reset
Found in: Bootloader config > CONFIG_BOOTLOADER_FACTORY_RESET
Allows customers to select which data partitions will be erased while factory reset.
Specify the names of partitions as a comma-delimited with optional spaces for readability. (Like this: "nvs, phy_init, ...") Make sure that the name specified in the partition table and here are the same. Partitions of type "app" cannot be specified here.
- Symbol can be set when:
CONFIG_BOOTLOADER_FACTORY_RESET is enabled
- Default value:
"nvs"
CONFIG_BOOTLOADER_APP_TEST
GPIO triggers boot from test app partition
Found in: Bootloader config
Allows to run the test app from "TEST" partition. A boot from "test" partition will occur if there is a GPIO input pulled low while device starts up. See settings below.
- Symbol can be set when:
CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK is disabled
- Default value:
Disabled
CONFIG_BOOTLOADER_NUM_PIN_APP_TEST
Number of the GPIO input to boot TEST partition
Found in: Bootloader config > CONFIG_BOOTLOADER_APP_TEST
The selected GPIO will be configured as an input with internal pull-up enabled. To trigger a test app, this GPIO must be pulled low on reset. After the GPIO input is deactivated and the device reboots, the old application will boot. (factory or OTA[x]).
Note that on some SoCs not all pins have an internal pull-up and certain pins are already used by ROM bootloader as bootstrapping. Refer to the technical reference manual for further details on the selected SoC.
- Symbol can be set when:
CONFIG_BOOTLOADER_APP_TEST is enabled
- Range:
from 0 to 21
- Default value:
18
CONFIG_BOOTLOADER_APP_TEST_PIN_LEVEL
App test GPIO level
Found in: Bootloader config > CONFIG_BOOTLOADER_APP_TEST
Pin level for app test, can be triggered on low or high.
Available options:
Enter test app on GPIO low (CONFIG_BOOTLOADER_APP_TEST_PIN_LOW)
Enter test app on GPIO high (CONFIG_BOOTLOADER_APP_TEST_PIN_HIGH)
CONFIG_BOOTLOADER_HOLD_TIME_GPIO
Hold time of GPIO for reset/test mode (seconds)
Found in: Bootloader config
The GPIO must be held low continuously for this period of time after reset before a factory reset or test partition boot (as applicable) is performed.
- Symbol can be set when:
CONFIG_BOOTLOADER_FACTORY_RESET is enabled || CONFIG_BOOTLOADER_APP_TEST is enabled
- Default value:
5
CONFIG_BOOTLOADER_REGION_PROTECTION_ENABLE
Enable protection for unmapped memory regions
Found in: Bootloader config
Protects the unmapped memory regions of the entire address space from unintended accesses. This will ensure that an exception will be triggered whenever the CPU performs a memory operation on unmapped regions of the address space. NOTE: Disabling this config on some targets (ESP32-C6, ESP32-H2, ESP32-C5) would not generate an exception when reading from or writing to 0x0.
- Default value:
Enabled
CONFIG_BOOTLOADER_WDT_ENABLE
Use RTC watchdog in start code
Found in: Bootloader config
Tracks the execution time of startup code. If the execution time is exceeded, the RTC_WDT will restart system. It is also useful to prevent a lock up in start code caused by an unstable power source. NOTE: Tracks the execution time starts from the bootloader code - re-set timeout, while selecting the source for slow_clk - and ends calling app_main. Re-set timeout is needed due to WDT uses a SLOW_CLK clock source. After changing a frequency slow_clk a time of WDT needs to re-set for new frequency. slow_clk depends on RTC_CLK_SRC (INTERNAL_RC or EXTERNAL_CRYSTAL).
- Default value:
Enabled
CONFIG_BOOTLOADER_WDT_DISABLE_IN_USER_CODE
Allows RTC watchdog disable in user code
Found in: Bootloader config > CONFIG_BOOTLOADER_WDT_ENABLE
If this option is set, the ESP-IDF app must explicitly reset, feed, or disable the rtc_wdt in the app's own code. If this option is not set (default), then rtc_wdt will be disabled by ESP-IDF before calling the app_main() function.
Use function wdt_hal_feed() for resetting counter of RTC_WDT. For esp32/s2 you can also use rtc_wdt_feed().
Use function wdt_hal_disable() for disabling RTC_WDT. For esp32/s2 you can also use rtc_wdt_disable().
- Symbol can be set when:
CONFIG_BOOTLOADER_WDT_ENABLE is enabled
- Default value:
Disabled
CONFIG_BOOTLOADER_WDT_TIME_MS
Timeout for RTC watchdog (ms)
Found in: Bootloader config > CONFIG_BOOTLOADER_WDT_ENABLE
Verify that this parameter is correct and more then the execution time. Pay attention to options such as reset to factory, trigger test partition and encryption on boot - these options can increase the execution time. Note: RTC_WDT will reset while encryption operations will be performed.
- Symbol can be set when:
CONFIG_BOOTLOADER_WDT_ENABLE is enabled
- Range:
from 0 to 120000
- Default value:
9000
CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP
Skip image validation when exiting deep sleep
Found in: Bootloader config
This option disables the normal validation of an image coming out of deep sleep (checksums, SHA256, and signature). This is a trade-off between wakeup performance from deep sleep, and image integrity checks.
Only enable this if you know what you are doing. It should not be used in conjunction with using deep_sleep() entry and changing the active OTA partition as this would skip the validation upon first load of the new OTA partition.
It is possible to enable this option with Secure Boot if "allow insecure options" is enabled, however it's strongly recommended to NOT enable it as it may allow a Secure Boot bypass.
- Symbol can be set when:
(CONFIG_SECURE_BOOT is enabled && CONFIG_SECURE_BOOT_INSECURE is enabled) || CONFIG_SECURE_BOOT is disabled
- Default value:
Disabled
CONFIG_BOOTLOADER_SKIP_VALIDATE_ON_POWER_ON
Skip image validation from power on reset (READ HELP FIRST)
Found in: Bootloader config
Some applications need to boot very quickly from power on. By default, the entire app binary is read from flash and verified which takes up a significant portion of the boot time.
Enabling this option will skip validation of the app when the SoC boots from power on. Note that in this case it's not possible for the bootloader to detect if an app image is corrupted in the flash, therefore it's not possible to safely fall back to a different app partition. Flash corruption of this kind is unlikely but can happen if there is a serious firmware bug or physical damage.
Following other reset types, the bootloader will still validate the app image. This increases the chances that flash corruption resulting in a crash can be detected following soft reset, and the bootloader will fall back to a valid app image. To increase the chances of successfully recovering from a flash corruption event, keep the option BOOTLOADER_WDT_ENABLE enabled and consider also enabling BOOTLOADER_WDT_DISABLE_IN_USER_CODE - then manually disable the RTC Watchdog once the app is running. In addition, enable both the Task and Interrupt watchdog timers with reset options set.
- Symbol can be set when:
CONFIG_SECURE_SIGNED_ON_BOOT is disabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BOOTLOADER_SKIP_VALIDATE_ALWAYS
CONFIG_BOOTLOADER_SKIP_VALIDATE_ALWAYS
Skip image validation always (READ HELP FIRST)
Found in: Bootloader config
Selecting this option prevents the bootloader from ever validating the app image before booting it. Any flash corruption of the selected app partition will make the entire SoC unbootable.
Although flash corruption is a very rare case, it is not recommended to select this option. Consider selecting "Skip image validation from power on reset" instead. However, if boot time is the only important factor then it can be enabled.
- Symbol can be set when:
CONFIG_SECURE_SIGNED_ON_BOOT is disabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BOOTLOADER_SKIP_VALIDATE_ON_POWER_ON
Security features
Contains:
CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT
Require signed app images
Found in: Security features
Require apps to be signed to verify their integrity.
This option uses the same app signature scheme as hardware secure boot, but unlike hardware secure boot it does not prevent the bootloader from being physically updated. This means that the device can be secured against remote network access, but not physical access. Compared to using hardware Secure Boot this option is much simpler to implement.
- Symbol can be set when:
CONFIG_SECURE_BOOT is disabled
CONFIG_SECURE_SIGNED_APPS_SCHEME
App Signing Scheme
Found in: Security features
Select the Secure App signing scheme. Depends on the Chip Revision. There are two secure boot versions:
- Secure boot V1
Legacy custom secure boot scheme. Supported in ESP32 SoC.
- Secure boot V2
RSA based secure boot scheme. Supported in ESP32-ECO3 (ESP32 Chip Revision 3 onwards), ESP32-S2, ESP32-C3, ESP32-S3 SoCs.
ECDSA based secure boot scheme. Supported in ESP32-C2 SoC.
Available options:
ECDSA (CONFIG_SECURE_SIGNED_APPS_ECDSA_SCHEME)
Embeds the ECDSA public key in the bootloader and signs the application with an ECDSA key. Refer to the documentation before enabling.
RSA (CONFIG_SECURE_SIGNED_APPS_RSA_SCHEME)
Appends the RSA-3072 based Signature block to the application. Refer to <Secure Boot Version 2 documentation link> before enabling.
ECDSA (V2) (CONFIG_SECURE_SIGNED_APPS_ECDSA_V2_SCHEME)
For Secure boot V2 (e.g., ESP32-C2 SoC), appends ECDSA based signature block to the application. Refer to documentation before enabling.
CONFIG_SECURE_BOOT_ECDSA_KEY_LEN_SIZE
ECDSA key size
Found in: Security features
Select the ECDSA key size. Two key sizes are supported depending on the target:
256 bit key using NISTP256 curve (Recommended)
384 bit key using NISTP384 curve (Recommended)
At present, both key sizes are practically implausible to bruteforce.
Available options:
Using ECC curve NISTP256 (Recommended) (CONFIG_SECURE_BOOT_ECDSA_KEY_LEN_256_BITS)
Using ECC curve NISTP384 (Recommended) (CONFIG_SECURE_BOOT_ECDSA_KEY_LEN_384_BITS)
CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT
Verify app signature on update
Found in: Security features
If this option is set, any OTA updated apps will have the signature verified before being considered valid.
When enabled, the signature is automatically checked whenever the esp_ota_ops.h APIs are used for OTA updates, or esp_image_format.h APIs are used to verify apps.
If hardware secure boot is enabled, this option is always enabled and cannot be disabled. If hardware secure boot is not enabled, this option still adds significant security against network-based attackers by preventing spoofing of OTA updates.
- Symbol can be set when:
CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is enabled
- Default value:
Enabled
CONFIG_SECURE_BOOT
Enable hardware Secure Boot in bootloader (READ DOCS FIRST)
Found in: Security features
Build a bootloader which enables Secure Boot on first boot.
Once enabled, Secure Boot will not boot a modified bootloader. The bootloader will only load a partition table or boot an app if the data has a verified digital signature. There are implications for reflashing updated apps once secure boot is enabled.
When enabling secure boot, JTAG and ROM BASIC Interpreter are permanently disabled by default.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESPTOOLPY_NO_STUB
CONFIG_SECURE_BOOT_VERSION
Select secure boot version
Found in: Security features > CONFIG_SECURE_BOOT
Select the Secure Boot Version. Depends on the Chip Revision. Secure Boot V2 is the new RSA / ECDSA based secure boot scheme.
RSA based scheme is supported in ESP32 (Revision 3 onwards), ESP32-S2, ESP32-C3 (ECO3), ESP32-S3.
ECDSA based scheme is supported in ESP32-C2 SoC.
Please note that, RSA or ECDSA secure boot is property of specific SoC based on its HW design, supported crypto accelerators, die-size, cost and similar parameters. Please note that RSA scheme has requirement for bigger key sizes but at the same time it is comparatively faster than ECDSA verification.
Secure Boot V1 is the AES based (custom) secure boot scheme supported in ESP32 SoC.
Available options:
Enable Secure Boot version 1 (CONFIG_SECURE_BOOT_V1_ENABLED)
Build a bootloader which enables secure boot version 1 on first boot. Refer to the Secure Boot section of the ESP-IDF Programmer's Guide for this version before enabling.
Enable Secure Boot version 2 (CONFIG_SECURE_BOOT_V2_ENABLED)
Build a bootloader which enables Secure Boot version 2 on first boot. Refer to Secure Boot V2 section of the ESP-IDF Programmer's Guide for this version before enabling.
CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES
Sign binaries during build
Found in: Security features
Once secure boot or signed app requirement is enabled, app images are required to be signed.
If enabled (default), these binary files are signed as part of the build process. The file named in "Secure boot private signing key" will be used to sign the image.
If disabled, unsigned app/partition data will be built. They must be signed manually using espsecure. Version 1 to enable ECDSA Based Secure Boot and Version 2 to enable RSA based Secure Boot. (for example, on a remote signing server.)
- Symbol can be set when:
CONFIG_SECURE_SIGNED_APPS is enabled
- Default value:
Enabled
CONFIG_SECURE_BOOT_SIGNING_KEY
Secure boot private signing key
Found in: Security features > CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES
Path to the key file used to sign app images.
Key file is an ECDSA private key (NIST256p curve) in PEM format for Secure Boot V1. Key file is an RSA private key in PEM format for Secure Boot V2 (RSA scheme). Key file is an ECDSA private key (256p or 384p) in PEM format for Secure Boot V2 (ECDSA scheme).
Path is evaluated relative to the project directory.
You can generate a new signing key by running the following command: espsecure generate-signing-key secure_boot_signing_key.pem
See the Secure Boot section of the ESP-IDF Programmer's Guide for this version for details.
- Symbol can be set when:
CONFIG_SECURE_BOOT_BUILD_SIGNED_BINARIES is enabled
- Default value:
"secure_boot_signing_key.pem"
CONFIG_SECURE_BOOT_ENABLE_AGGRESSIVE_KEY_REVOKE
Enable Aggressive key revoke strategy
Found in: Security features
If this option is set, ROM bootloader will revoke the public key digest burned in efuse block if it fails to verify the signature of software bootloader with it. Revocation of keys does not happen when enabling secure boot. Once secure boot is enabled, key revocation checks will be done on subsequent boot-up, while verifying the software bootloader
This feature provides a strong resistance against physical attacks on the device.
NOTE: Once a digest slot is revoked, it can never be used again to verify an image This can lead to permanent bricking of the device, in case all keys are revoked because of signature verification failure.
- Symbol can be set when:
CONFIG_SECURE_BOOT is enabled
- Default value:
Disabled
CONFIG_SECURE_BOOT_V2_ALLOW_EFUSE_RD_DIS
Do not disable the ability to further read protect eFuses
Found in: Security features
If not set (default, recommended), on first boot the bootloader will burn the WR_DIS_RD_DIS efuse when Secure Boot is enabled. This prevents any more efuses from being read protected.
If this option is set, it will remain possible to write the EFUSE_RD_DIS efuse field after Secure Boot is enabled. This may allow an attacker to read-protect the BLK2 efuse (for ESP32) and BLOCK4-BLOCK10 (i.e. BLOCK_KEY0-BLOCK_KEY5)(for other chips) holding the secure boot public key digest, causing an immediate denial of service and possibly allowing an additional fault injection attack to bypass the signature protection.
The option must be set when you need to program any read-protected key type into the efuses, e.g., HMAC, ECDSA etc. after secure boot has already been enabled on the device. Please refer to secure boot V2 documentation guide for more details.
NOTE: Once a BLOCK is read-protected, the application will read all zeros from that block
NOTE: If "UART ROM download mode (Permanently disabled (recommended))" or "UART ROM download mode (Permanently switch to Secure mode (recommended))" is set, then it is __NOT__ possible to read/write efuses using espefuse utility. However, efuse can be read/written from the application
Please refer to the Secure Boot V2 documentation guide for more information.
- Symbol can be set when:
CONFIG_SECURE_BOOT_V2_ENABLED is enabled
- Default value:
Disabled
CONFIG_SECURE_BOOT_FLASH_BOOTLOADER_DEFAULT
Flash bootloader along with other artifacts when using the default flash command
Found in: Security features
When Secure Boot V2 is enabled, by default the bootloader is not flashed along with other artifacts like the application and the partition table images, i.e. bootloader has to be separately flashed using the command idf.py bootloader flash, whereas, the application and partition table can be flashed using the command idf.py flash itself. Enabling this option allows flashing the bootloader along with the other artifacts by invocation of the command idf.py flash.
If this option is enabled make sure that even the bootloader is signed using the correct secure boot key, otherwise the bootloader signature verification would fail, as hash of the public key which is present in the bootloader signature would not match with the digest stored into the efuses and thus the device will not be able to boot up.
- Symbol can be set when:
CONFIG_SECURE_BOOT_V2_ENABLED is enabled
- Default value:
Disabled
CONFIG_SECURE_BOOT_INSECURE
Allow potentially insecure options
Found in: Security features
You can disable some of the default protections offered by secure boot, in order to enable testing or a custom combination of security features.
Only enable these options if you are very sure.
Refer to the Secure Boot section of the ESP-IDF Programmer's Guide for this version before enabling.
- Symbol can be set when:
CONFIG_SECURE_BOOT is enabled
- Default value:
Disabled
CONFIG_SECURE_FLASH_ENC_ENABLED
Enable flash encryption on boot (READ DOCS FIRST)
Found in: Security features
If this option is set, flash contents will be encrypted by the bootloader on first boot.
Note: After first boot, the system will be permanently encrypted. Re-flashing an encrypted system is complicated and not always possible.
Read flash 加密 before enabling.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_SPI_FLASH_ENABLE_ENCRYPTED_READ_WRITE
CONFIG_SECURE_FLASH_ENCRYPTION_KEY_SOURCE
Flash Encryption Key Source
Found in: Security features > CONFIG_SECURE_FLASH_ENC_ENABLED
Specify the key source for the Flash Encryption Key
Available options:
eFuse Key Block (CONFIG_SECURE_FLASH_ENCRYPTION_KEY_SOURCE_EFUSES)
Use a key that is stored in the eFuses key blocks.
Key Manager (CONFIG_SECURE_FLASH_ENCRYPTION_KEY_SOURCE_KEY_MGR)
Use a key that is deployed using the Key Manager
CONFIG_SECURE_FLASH_ENCRYPTION_MODE
Enable usage mode
Found in: Security features > CONFIG_SECURE_FLASH_ENC_ENABLED
By default Development mode is enabled which allows ROM download mode to perform flash encryption operations (plaintext is sent to the device, and it encrypts it internally and writes ciphertext to flash.) This mode is not secure, it's possible for an attacker to write their own chosen plaintext to flash.
Release mode should always be selected for production or manufacturing. Once enabled it's no longer possible for the device in ROM Download Mode to use the flash encryption hardware.
When EFUSE_VIRTUAL is enabled, SECURE_FLASH_ENCRYPTION_MODE_RELEASE is not available. For CI tests we use IDF_CI_BUILD to bypass it ("export IDF_CI_BUILD=1"). We do not recommend bypassing it for other purposes.
Refer to the Flash Encryption section of the ESP-IDF Programmer's Guide for details.
Available options:
Development (NOT SECURE) (CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT)
Release (CONFIG_SECURE_FLASH_ENCRYPTION_MODE_RELEASE)
Potentially insecure options
Contains:
CONFIG_SECURE_BOOT_V2_FORCE_ENABLE_ECDSA
Force enable ECDSA based Secure Boot V2
Found in: Security features > Potentially insecure options
ECDSA based Secure Boot V2 is not functional for certain input vectors on this SoC and is therefore not offered by default. Refer to the hardware errata document for details.
Setting this option re-enables the ECDSA based Secure Boot V2 signing scheme despite the known vulnerability. Only set this option if you fully understand the risk. RSA based Secure Boot V2 is the recommended scheme on SoCs that support it.
- Symbol can be set when:
(CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled || CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled) && CONFIG_SECURE_BOOT_INSECURE is enabled
- Default value:
Disabled
CONFIG_SECURE_BOOT_ALLOW_JTAG
Allow JTAG Debugging
Found in: Security features > Potentially insecure options
If not set (default), the bootloader will permanently disable JTAG (across entire chip) on first boot when either secure boot or flash encryption is enabled.
Setting this option leaves JTAG on for debugging, which negates all protections of flash encryption and some of the protections of secure boot.
Only set this option in testing environments.
- Symbol can be set when:
(CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled || CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled) && (CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled)
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_SECURE_FLASH_SKIP_WRITE_PROTECTION_CACHE if CONFIG_SECURE_FLASH_HAS_WRITE_PROTECTION_CACHE is enabled
CONFIG_SECURE_BOOT_ALLOW_SHORT_APP_PARTITION
Allow app partition length not 64KB aligned
Found in: Security features > Potentially insecure options
If not set (default), app partition size must be a multiple of 64KB. App images are padded to 64KB length, and the bootloader checks any trailing bytes after the signature (before the next 64KB boundary) have not been written. This is because flash cache maps entire 64KB pages into the address space. This prevents an attacker from appending unverified data after the app image in the flash, causing it to be mapped into the address space.
Setting this option allows the app partition length to be unaligned, and disables padding of the app image to this length. It is generally not recommended to set this option, unless you have a legacy partitioning scheme which doesn't support 64KB aligned partition lengths.
- Symbol can be set when:
(CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled || CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled) && (CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled)
CONFIG_SECURE_BOOT_ALLOW_UNUSED_DIGEST_SLOTS
Leave unused digest slots available (not revoke)
Found in: Security features > Potentially insecure options
If not set (default), during startup in the app all unused digest slots will be revoked. To revoke unused slot will be called esp_efuse_set_digest_revoke(num_digest) for each digest. Revoking unused digest slots makes ensures that no trusted keys can be added later by an attacker. If set, it means that you have a plan to use unused digests slots later.
This config is honored both at runtime in the app and while enabling secure boot during the first boot up in the bootloader. When set, the unused digest slots are left un-revoked in both cases.
- Symbol can be set when:
(CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled || CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled) && CONFIG_SECURE_BOOT_INSECURE is enabled
- Default value:
Disabled
CONFIG_SECURE_FLASH_UART_BOOTLOADER_ALLOW_ENC
Leave UART bootloader encryption enabled
Found in: Security features > Potentially insecure options
If not set (default), the bootloader will permanently disable UART bootloader encryption access on first boot. If set, the UART bootloader will still be able to access hardware encryption.
It is recommended to only set this option in testing environments.
- Symbol can be set when:
(CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled || CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled) && CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_SECURE_FLASH_SKIP_WRITE_PROTECTION_CACHE if CONFIG_SECURE_FLASH_HAS_WRITE_PROTECTION_CACHE is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT
CONFIG_SECURE_BOOT_REQUIRE_ALREADY_ENABLED
Require secure boot to be already enabled
Found in: Security features > Potentially insecure options
If not set (default), and secure boot is not yet enabled in eFuses, the 2nd stage bootloader will enable secure boot: generate the secure boot digest and program eFuses. If this option is set, and secure boot is not yet enabled, the bootloader will error out and reboot. If secure boot is enabled in eFuses, this option does not change the bootloader behavior.
Only use this option in testing environments, to avoid accidentally enabling secure boot on the wrong device. The device needs to have secure boot already enabled using espefuse.
- Symbol can be set when:
(CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled || CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled) && CONFIG_SECURE_BOOT_INSECURE is enabled
- Default value:
Disabled
CONFIG_SECURE_FLASH_REQUIRE_ALREADY_ENABLED
Require flash encryption to be already enabled
Found in: Security features > Potentially insecure options
If not set (default), and flash encryption is not yet enabled in eFuses, the 2nd stage bootloader will enable flash encryption: generate the flash encryption key and program eFuses. If this option is set, and flash encryption is not yet enabled, the bootloader will error out and reboot. If flash encryption is enabled in eFuses, this option does not change the bootloader behavior.
Only use this option in testing environments, to avoid accidentally enabling flash encryption on the wrong device. The device needs to have flash encryption already enabled using espefuse.
- Symbol can be set when:
(CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled || CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled) && CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled
- Default value:
Disabled
CONFIG_SECURE_FLASH_SKIP_WRITE_PROTECTION_CACHE
Skip write-protection of DIS_CACHE (DIS_ICACHE, DIS_DCACHE)
Found in: Security features > Potentially insecure options
If not set (default, recommended), on the first boot the bootloader will burn the write-protection of DIS_CACHE(for ESP32) or DIS_ICACHE/DIS_DCACHE(for other chips) eFuse when Flash Encryption is enabled. Write protection for cache disable efuse prevents the chip from being blocked if it is set by accident. App and bootloader use cache so disabling it makes the chip useless for IDF. Due to other eFuses are linked with the same write protection bit (see the list below) then write-protection will not be done if these SECURE_FLASH_UART_BOOTLOADER_ALLOW_ENC, SECURE_BOOT_ALLOW_JTAG or SECURE_FLASH_UART_BOOTLOADER_ALLOW_CACHE options are selected to give a chance to turn on the chip into the release mode later.
List of eFuses with the same write protection bit: ESP32: MAC, MAC_CRC, DISABLE_APP_CPU, DISABLE_BT, DIS_CACHE, VOL_LEVEL_HP_INV.
ESP32-C3: DIS_ICACHE, DIS_USB_JTAG, DIS_DOWNLOAD_ICACHE, DIS_USB_SERIAL_JTAG, DIS_FORCE_DOWNLOAD, DIS_TWAI, JTAG_SEL_ENABLE, DIS_PAD_JTAG, DIS_DOWNLOAD_MANUAL_ENCRYPT.
ESP32-C6: SWAP_UART_SDIO_EN, DIS_ICACHE, DIS_USB_JTAG, DIS_DOWNLOAD_ICACHE, DIS_USB_SERIAL_JTAG, DIS_FORCE_DOWNLOAD, DIS_TWAI, JTAG_SEL_ENABLE, DIS_PAD_JTAG, DIS_DOWNLOAD_MANUAL_ENCRYPT.
ESP32-H2 & ESP32H21: DIS_ICACHE, DIS_ICACHE, DIS_USB_JTAG, POWERGLITCH_EN, DIS_FORCE_DOWNLOAD, SPI_DOWNLOAD_MSPI_DIS, DIS_TWAI, JTAG_SEL_ENABLE, DIS_PAD_JTAG, DIS_DOWNLOAD_MANUAL_ENCRYPT, DIS_USB_SERIAL_JTAG
ESP32-S2: DIS_ICACHE, DIS_DCACHE, DIS_DOWNLOAD_ICACHE, DIS_DOWNLOAD_DCACHE, DIS_FORCE_DOWNLOAD, DIS_USB, DIS_TWAI, DIS_BOOT_REMAP, SOFT_DIS_JTAG, HARD_DIS_JTAG, DIS_DOWNLOAD_MANUAL_ENCRYPT.
ESP32-S3: DIS_ICACHE, DIS_DCACHE, DIS_DOWNLOAD_ICACHE, DIS_DOWNLOAD_DCACHE, DIS_FORCE_DOWNLOAD, DIS_USB_OTG, DIS_TWAI, DIS_APP_CPU, DIS_PAD_JTAG, DIS_DOWNLOAD_MANUAL_ENCRYPT, DIS_USB_JTAG, DIS_USB_SERIAL_JTAG, STRAP_JTAG_SEL, USB_PHY_SEL.
- Symbol can be set when:
(CONFIG_SECURE_FLASH_ENCRYPTION_MODE_DEVELOPMENT is enabled || CONFIG_SECURE_BOOT_INSECURE is enabled || CONFIG_SECURE_SIGNED_ON_UPDATE_NO_SECURE_BOOT is enabled) && CONFIG_SECURE_FLASH_HAS_WRITE_PROTECTION_CACHE is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_SECURE_BOOT_ALLOW_JTAG if CONFIG_SECURE_FLASH_HAS_WRITE_PROTECTION_CACHE is enabled
forcefully enabled by CONFIG_SECURE_FLASH_UART_BOOTLOADER_ALLOW_ENC if CONFIG_SECURE_FLASH_HAS_WRITE_PROTECTION_CACHE is enabled
CONFIG_SECURE_FLASH_ENCRYPT_ONLY_IMAGE_LEN_IN_APP_PART
Encrypt contents upto app image length in app partition
Found in: Security features
If set (default), optimise encryption time for the partition of type APP, by only encrypting the app image that is present in the partition, instead of the whole partition. The image length used for encryption is derived from the image metadata, which includes the size of the app image, checksum, hash and also the signature sector when secure boot is enabled.
If not set, the whole partition of type APP would be encrypted, which increases the encryption time but might be useful if there is any custom data appended to the firmware image.
- Symbol can be set when:
CONFIG_SECURE_FLASH_ENC_ENABLED is enabled && CONFIG_SECURE_FLASH_REQUIRE_ALREADY_ENABLED is disabled
- Default value:
Enabled
CONFIG_SECURE_FLASH_CHECK_ENC_EN_IN_APP
Check Flash Encryption enabled on app startup
Found in: Security features
If set (default), in an app during startup code, there is a check of the flash encryption eFuse bit is on (as the bootloader should already have set it). The app requires this bit is on to continue work otherwise abort.
If not set, the app does not care if the flash encryption eFuse bit is set or not.
- Symbol can be set when:
CONFIG_SECURE_FLASH_ENC_ENABLED is enabled
- Default value:
Enabled
CONFIG_SECURE_FLASH_PSEUDO_ROUND_FUNC
Permanently enable XTS-AES's pseudo rounds function
Found in: Security features
If set (default), the bootloader will permanently enable the XTS-AES peripheral's pseudo rounds function. Note: Enabling this config would burn an efuse.
- Symbol can be set when:
CONFIG_SECURE_FLASH_ENC_ENABLED is enabled
- Default value:
Enabled if CONFIG_SECURE_FLASH_ENCRYPTION_MODE_RELEASE is enabled
Disabled
CONFIG_SECURE_FLASH_PSEUDO_ROUND_FUNC_STRENGTH
Strength of the pseudo rounds function
Found in: Security features > CONFIG_SECURE_FLASH_PSEUDO_ROUND_FUNC
The strength of the pseudo rounds functions can be configured to low, medium and high, each denoting the values that would be stored in the efuses field. By default the value to set to low.
It is recommended that the required strength of the pseudo rounds function should be set during the first boot itself. If your workflow needs to update the function's strength after the first boot, you should enable CONFIG_SECURE_BOOT_SKIP_WRITE_PROTECTION_SCA to avoid write protecting this bit during the boot up for targets that support Secure Boot using ECDSA-P384.
You can configure the strength of the pseudo rounds functions according to your use cases, for example, increasing the strength would provide higher security but would slow down the flash encryption/decryption operations. For more info regarding the performance impact, please checkout the pseudo round function section of the security guide documentation.
Available options:
Low (CONFIG_SECURE_FLASH_PSEUDO_ROUND_FUNC_STRENGTH_LOW)
Medium (CONFIG_SECURE_FLASH_PSEUDO_ROUND_FUNC_STRENGTH_MEDIUM)
High (CONFIG_SECURE_FLASH_PSEUDO_ROUND_FUNC_STRENGTH_HIGH)
CONFIG_SECURE_UART_ROM_DL_MODE
UART ROM download mode
Found in: Security features
Available options:
UART ROM download mode (Permanently disabled (recommended)) (CONFIG_SECURE_DISABLE_ROM_DL_MODE)
If set, during startup the app will burn an eFuse bit to permanently disable the UART ROM Download Mode. This prevents any future use of esptool, espefuse and similar tools.
Once disabled, if the SoC is booted with strapping pins set for ROM Download Mode then an error is printed instead.
It is recommended to enable this option in any production application where Flash Encryption and/or Secure Boot is enabled and access to Download Mode is not required.
It is also possible to permanently disable Download Mode by calling esp_efuse_disable_rom_download_mode() at runtime.
UART ROM download mode (Permanently switch to Secure mode (recommended)) (CONFIG_SECURE_ENABLE_SECURE_ROM_DL_MODE)
If set, during startup the app will burn an eFuse bit to permanently switch the UART ROM Download Mode into a separate Secure Download mode. This option can only work if Download Mode is not already disabled by eFuse.
Secure Download mode limits the use of Download Mode functions to update SPI config, changing baud rate, basic flash write and a command to return a summary of currently enabled security features (get-security-info).
Secure Download mode is not compatible with the esptool flasher stub feature, espefuse, read/writing memory or registers, encrypted download, or any other features that interact with unsupported Download Mode commands.
Secure Download mode should be enabled in any application where Flash Encryption and/or Secure Boot is enabled. Disabling this option does not immediately cancel the benefits of the security features, but it increases the potential "attack surface" for an attacker to try and bypass them with a successful physical attack.
It is also possible to enable secure download mode at runtime by calling esp_efuse_enable_rom_secure_download_mode()
Note: Secure Download mode is not available for ESP32.
UART ROM download mode (Enabled (not recommended)) (CONFIG_SECURE_INSECURE_ALLOW_DL_MODE)
This is a potentially insecure option. Enabling this option will allow the full UART download mode to stay enabled. This option SHOULD NOT BE ENABLED for production use cases.
Application manager
Contains:
CONFIG_APP_COMPILE_TIME_DATE
Use time/date stamp for app
Found in: Application manager
If set, then the app will be built with the current time/date stamp. It is stored in the app description structure. If not set, time/date stamp will be excluded from app image. This can be useful for getting the same binary image files made from the same source, but at different times.
- Symbol can be set when:
CONFIG_APP_REPRODUCIBLE_BUILD is disabled
- Default value:
Enabled
CONFIG_APP_EXCLUDE_PROJECT_VER_VAR
Exclude PROJECT_VER from firmware image
Found in: Application manager
The PROJECT_VER variable from the build system will not affect the firmware image. This value will not be contained in the esp_app_desc structure.
- Default value:
Disabled
CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR
Exclude PROJECT_NAME from firmware image
Found in: Application manager
The PROJECT_NAME variable from the build system will not affect the firmware image. This value will not be contained in the esp_app_desc structure.
- Default value:
Disabled
CONFIG_APP_PROJECT_VER_FROM_CONFIG
Get the project version from Kconfig
Found in: Application manager
If this is enabled, then config item APP_PROJECT_VER will be used for the variable PROJECT_VER. Other ways to set PROJECT_VER will be ignored.
- Default value:
Disabled
CONFIG_APP_PROJECT_VER
Project version
Found in: Application manager > CONFIG_APP_PROJECT_VER_FROM_CONFIG
Project version
- Symbol can be set when:
CONFIG_APP_PROJECT_VER_FROM_CONFIG is enabled
- Default value:
1
CONFIG_APP_RETRIEVE_LEN_ELF_SHA
The length of APP ELF SHA is stored in RAM(chars)
Found in: Application manager
At startup, the app will read the embedded APP ELF SHA-256 hash value from flash and convert it into a string and store it in a RAM buffer. This ensures the panic handler and core dump will be able to print this string even when cache is disabled. The size of the buffer is APP_RETRIEVE_LEN_ELF_SHA plus the null terminator. Changing this value will change the size of this buffer, in bytes.
- Range:
from 8 to 64
- Default value:
9
Boot ROM Behavior
Contains:
CONFIG_BOOT_ROM_LOG_SCHEME
Permanently change Boot ROM output
Found in: Boot ROM Behavior
Controls the Boot ROM log behavior. The rom log behavior can only be changed for once, specific eFuse bit(s) will be burned at app boot stage.
Available options:
Always Log (CONFIG_BOOT_ROM_LOG_ALWAYS_ON)
Always print ROM logs, this is the default behavior.
Permanently disable logging (CONFIG_BOOT_ROM_LOG_ALWAYS_OFF)
Don't print ROM logs.
Log on GPIO High (CONFIG_BOOT_ROM_LOG_ON_GPIO_HIGH)
Print ROM logs when GPIO level is high during start up. The GPIO number is chip dependent, e.g. on ESP32-S2, the control GPIO is GPIO46.
Log on GPIO Low (CONFIG_BOOT_ROM_LOG_ON_GPIO_LOW)
Print ROM logs when GPIO level is low during start up. The GPIO number is chip dependent, e.g. on ESP32-S2, the control GPIO is GPIO46.
ESP-TEE (Trusted Execution Environment)
Contains:
CONFIG_SECURE_ENABLE_TEE
Enable the ESP-TEE framework
Found in: ESP-TEE (Trusted Execution Environment)
This configuration enables the Trusted Execution Environment (TEE) feature.
Memory Configuration
Contains:
CONFIG_SECURE_TEE_IRAM_SIZE
IRAM region size
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > Memory Configuration
This configuration sets the IRAM size for the TEE module. This should be 256-byte (0x100) aligned.
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
- Range:
from 0x5000 to 0xF000
- Default value:
"0x8000"
CONFIG_SECURE_TEE_DRAM_SIZE
DRAM region size
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > Memory Configuration
This configuration sets the DRAM size for the TEE module. This should be 256-byte (0x100) aligned.
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
- Range:
from 0x3000 to 0x7000
- Default value:
"0x5000"
CONFIG_SECURE_TEE_STACK_SIZE
Stack size
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > Memory Configuration
This configuration sets the stack size for the TEE module. The TEE stack will be allocated from the TEE DRAM region. This should be 16-byte (0x10) aligned.
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
- Range:
from 0x800 to 0x1000
- Default value:
"0x1000" if CONFIG_SECURE_BOOT is enabled
"0xc00"
CONFIG_SECURE_TEE_INTR_STACK_SIZE
Interrupt Stack size
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > Memory Configuration
This configuration sets the interrupt stack size for the TEE module. The TEE interrupt stack will be allocated from the TEE DRAM region. This should be 16-byte (0x10) aligned.
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
- Range:
from 0x400 to 0x800
- Default value:
"0x400"
Secure Services
Contains:
CONFIG_SECURE_TEE_SEC_STG_MODE
Secure Storage: Mode
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > Secure Services
Select the TEE secure storage mode
Available options:
Development (CONFIG_SECURE_TEE_SEC_STG_MODE_DEVELOPMENT)
Secure storage will be encrypted by a constant key embedded in the TEE firmware
Release (CONFIG_SECURE_TEE_SEC_STG_MODE_RELEASE)
Secure storage will be encrypted by the data stored in eFuse block configured through the SECURE_TEE_SEC_STG_EFUSE_HMAC_KEY_ID option
CONFIG_SECURE_TEE_SEC_STG_EFUSE_HMAC_KEY_ID
Secure Storage: eFuse HMAC key ID for storage encryption keys
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > Secure Services
eFuse block key ID storing the HMAC key for deriving the TEE secure storage encryption keys
- Symbol can be set when:
CONFIG_SECURE_TEE_SEC_STG_MODE_RELEASE is enabled && CONFIG_SECURE_ENABLE_TEE is enabled
- Range:
from -1 to 5
- Default value:
"-1"
Secure Storage: Additional supported curves for ECDSA signing
CONFIG_SECURE_TEE_ATTESTATION
Enable Attestation
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > Secure Services
This configuration enables the support for the Attestation service.
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
- Default value:
Enabled
CONFIG_SECURE_TEE_ATT_KEY_STR_ID
Attestation: Secure Storage key ID for EAT signing
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > Secure Services > CONFIG_SECURE_TEE_ATTESTATION
This configuration sets the key ID from the TEE secure storage storing the ECDSA keypair for executing sign/verify operations from the TEE side for attestation.
- Symbol can be set when:
CONFIG_SECURE_TEE_ATTESTATION is enabled && CONFIG_SECURE_ENABLE_TEE is enabled
- Default value:
"tee_att_key0"
CONFIG_SECURE_TEE_EXT_FLASH_MEMPROT_SPI1
Memprot: Isolate TEE flash regions over SPI1
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE
This configuration restricts access to TEE-reserved regions in external flash by making them inaccessible to the REE via the SPI1 interface (physical addresses).
With this enabled, all SPI flash read, write, or erase operations over SPI1 will be routed through service calls to the TEE, introducing additional performance overhead.
When Flash Encryption (SECURE_FLASH_ENC_ENABLED) is enabled, the REE can still access TEE-related flash partitions over SPI1, but read operations will return encrypted data contents. This prevents attackers from inferring the TEE contents with direct reads.
Additionally, with Secure Boot enabled (SECURE_BOOT_V2_ENABLED), any unauthorized modifications to the TEE firmware will be detected during boot, causing signature verification to fail. Thus, these options provide a level of protection suitable for most applications. However, while the TEE firmware integrity is protected, other TEE partitions (Secure Storage, TEE OTA data) can be manipulated through direct writes.
Enable this option only when complete isolation of all TEE flash regions is required, even with the associated performance tradeoffs.
Note: All accesses to the TEE partitions over SPI0 (i.e. the MMU) are blocked unconditionally.
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
- Default value:
Disabled
CONFIG_SECURE_TEE_LIBC
LibC to build the TEE application with
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE
Available options:
Picolibc (CONFIG_SECURE_TEE_LIBC_PICOLIBC)
NewLib (CONFIG_SECURE_TEE_LIBC_NEWLIB)
CONFIG_SECURE_TEE_DEBUG_MODE
Enable Debug Mode
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE
This configuration enables the logging from the TEE module.
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
- Default value:
Enabled
CONFIG_SECURE_TEE_LOG_LEVEL
Log verbosity
Found in: ESP-TEE (Trusted Execution Environment) > CONFIG_SECURE_ENABLE_TEE > CONFIG_SECURE_TEE_DEBUG_MODE
Specify how much output to see in TEE logs.
Available options:
No output (CONFIG_SECURE_TEE_LOG_LEVEL_NONE)
Error (CONFIG_SECURE_TEE_LOG_LEVEL_ERROR)
Warning (CONFIG_SECURE_TEE_LOG_LEVEL_WARN)
Info (CONFIG_SECURE_TEE_LOG_LEVEL_INFO)
Debug (CONFIG_SECURE_TEE_LOG_LEVEL_DEBUG)
Verbose (CONFIG_SECURE_TEE_LOG_LEVEL_VERBOSE)
CONFIG_SECURE_TEE_TEST_MODE
Enable Test Mode
Found in: ESP-TEE (Trusted Execution Environment)
This configuration sets up the TEE framework as required for executing the test suite.
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
Serial flasher config
Contains:
CONFIG_ESPTOOLPY_NO_STUB
Disable download stub
Found in: Serial flasher config
The flasher tool sends a precompiled download stub first by default. That stub allows things like compressed downloads and more. Usually you should not need to disable that feature
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled if CONFIG_IDF_ENV_FPGA is enabled
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_SECURE_BOOT
forcefully enabled by CONFIG_SECURE_ENABLE_SECURE_ROM_DL_MODE
CONFIG_ESPTOOLPY_FLASHMODE
Flash SPI mode
Found in: Serial flasher config
Mode the flash chip is flashed in, as well as the default mode for the binary to run in.
Available options:
QIO (CONFIG_ESPTOOLPY_FLASHMODE_QIO)
QOUT (CONFIG_ESPTOOLPY_FLASHMODE_QOUT)
DIO (CONFIG_ESPTOOLPY_FLASHMODE_DIO)
DOUT (CONFIG_ESPTOOLPY_FLASHMODE_DOUT)
OPI (CONFIG_ESPTOOLPY_FLASHMODE_OPI)
CONFIG_ESPTOOLPY_FLASH_SAMPLE_MODE
Flash Sampling Mode
Found in: Serial flasher config
Available options:
STR Mode (CONFIG_ESPTOOLPY_FLASH_SAMPLE_MODE_STR)
DTR Mode (CONFIG_ESPTOOLPY_FLASH_SAMPLE_MODE_DTR)
CONFIG_ESPTOOLPY_FLASHFREQ
Flash SPI speed
Found in: Serial flasher config
Available options:
120 MHz (CONFIG_ESPTOOLPY_FLASHFREQ_120M)
80 MHz (CONFIG_ESPTOOLPY_FLASHFREQ_80M)
40 MHz (CONFIG_ESPTOOLPY_FLASHFREQ_40M)
20 MHz (CONFIG_ESPTOOLPY_FLASHFREQ_20M)
CONFIG_ESPTOOLPY_FLASHSIZE
Flash size
Found in: Serial flasher config
SPI flash size, in megabytes
Available options:
1 MB (CONFIG_ESPTOOLPY_FLASHSIZE_1MB)
2 MB (CONFIG_ESPTOOLPY_FLASHSIZE_2MB)
4 MB (CONFIG_ESPTOOLPY_FLASHSIZE_4MB)
8 MB (CONFIG_ESPTOOLPY_FLASHSIZE_8MB)
16 MB (CONFIG_ESPTOOLPY_FLASHSIZE_16MB)
32 MB (CONFIG_ESPTOOLPY_FLASHSIZE_32MB)
64 MB (CONFIG_ESPTOOLPY_FLASHSIZE_64MB)
128 MB (CONFIG_ESPTOOLPY_FLASHSIZE_128MB)
CONFIG_ESPTOOLPY_HEADER_FLASHSIZE_UPDATE
Detect flash size when flashing bootloader
Found in: Serial flasher config
If this option is set, flashing the project will automatically detect the flash size of the target chip and update the bootloader image before it is flashed.
Enabling this option turns off the image protection against corruption by a SHA256 digest. Updating the bootloader image before flashing would invalidate the digest.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_ESPTOOLPY_BEFORE
Before flashing
Found in: Serial flasher config
Configure whether esptool should reset the ESP32 before flashing.
Automatic resetting depends on the RTS & DTR signals being wired from the serial port to the ESP32. Most USB development boards do this internally.
Available options:
Reset to bootloader (CONFIG_ESPTOOLPY_BEFORE_RESET)
No reset (CONFIG_ESPTOOLPY_BEFORE_NORESET)
CONFIG_ESPTOOLPY_AFTER
After flashing
Found in: Serial flasher config
Configure whether esptool should reset the ESP32 after flashing.
Automatic resetting depends on the RTS & DTR signals being wired from the serial port to the ESP32. Most USB development boards do this internally.
Available options:
Reset after flashing (CONFIG_ESPTOOLPY_AFTER_RESET)
Stay in bootloader (CONFIG_ESPTOOLPY_AFTER_NORESET)
Partition Table
Contains:
CONFIG_PARTITION_TABLE_TYPE
Partition Table
Found in: Partition Table
The partition table to flash to the ESP32. The partition table determines where apps, data and other resources are expected to be found.
The predefined partition table CSV descriptions can be found in the components/partition_table directory. These are mostly intended for example and development use, it's expect that for production use you will copy one of these CSV files and create a custom partition CSV for your application.
Available options:
Single factory app, no OTA (CONFIG_PARTITION_TABLE_SINGLE_APP)
This is the default partition table, designed to fit into a 2MB or larger flash with a single 1MB app partition.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_singleapp.csv
This partition table is not suitable for an app that needs OTA (over the air update) capability.
Single factory app (large), no OTA (CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE)
This is a variation of the default partition table, that expands the 1MB app partition size to 1.5MB to fit more code.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_singleapp_large.csv
This partition table is not suitable for an app that needs OTA (over the air update) capability.
Factory app, two OTA definitions (CONFIG_PARTITION_TABLE_TWO_OTA)
This is a basic OTA-enabled partition table with a factory app partition plus two OTA app partitions. All are 1MB, so this partition table requires 4MB or larger flash size.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_two_ota.csv
Two large size OTA partitions (CONFIG_PARTITION_TABLE_TWO_OTA_LARGE)
This is a basic OTA-enabled partition table with two OTA app partitions. Both app partition sizes are 1700K, so this partition table requires 4MB or larger flash size.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_two_ota_large.csv
Custom partition table CSV (CONFIG_PARTITION_TABLE_CUSTOM)
Specify the path to the partition table CSV to use for your project.
Consult the Partition Table section in the ESP-IDF Programmers Guide for more information.
Single factory app, no OTA, encrypted NVS (CONFIG_PARTITION_TABLE_SINGLE_APP_ENCRYPTED_NVS)
This is a variation of the default "Single factory app, no OTA" partition table that supports encrypted NVS when using flash encryption. See the Flash Encryption section in the ESP-IDF Programmers Guide for more information.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_singleapp_encr_nvs.csv
Single factory app (large), no OTA, encrypted NVS (CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE_ENC_NVS)
This is a variation of the "Single factory app (large), no OTA" partition table that supports encrypted NVS when using flash encryption. See the Flash Encryption section in the ESP-IDF Programmers Guide for more information.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_singleapp_large_encr_nvs.csv
Factory app, two OTA definitions, encrypted NVS (CONFIG_PARTITION_TABLE_TWO_OTA_ENCRYPTED_NVS)
This is a variation of the "Factory app, two OTA definitions" partition table that supports encrypted NVS when using flash encryption. See the Flash Encryption section in the ESP-IDF Programmers Guide for more information.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_two_ota_encr_nvs.csv
Single factory app, no OTA, TEE (CONFIG_PARTITION_TABLE_SINGLE_APP_TEE)
This is a variation of the default "Single factory app, no OTA" partition table that supports the ESP-TEE framework. See the Trusted Execution Environment (TEE) section in the ESP-IDF Programmers Guide for more information.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_singleapp_tee.csv
Two OTA definitions, TEE (CONFIG_PARTITION_TABLE_TWO_OTA_TEE)
This is a basic OTA-enabled partition table with two OTA app partitions each for the TEE and the user (REE) application. The user app partition sizes are 1536K, so this partition table requires 4MB or larger flash size. See the Trusted Execution Environment (TEE) section in the ESP-IDF Programmers Guide for more information.
The corresponding CSV file in the IDF directory is components/partition_table/partitions_two_ota_tee.csv
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME
Custom partition CSV file
Found in: Partition Table
Name of the custom partition CSV filename. This path is evaluated relative to the project root directory by default. However, if the absolute path for the CSV file is provided, then the absolute path is configured.
- Symbol can be set when:
CONFIG_PARTITION_TABLE_CUSTOM is enabled
- Default value:
"partitions.csv"
CONFIG_PARTITION_TABLE_OFFSET
Offset of partition table
Found in: Partition Table
The offset address of the partition table is, by default, 0x8000, and it starts right after the bootloader. This offset can be changed if more space is required for the bootloader. If you change this offset, both the bootloader and the app must be compiled with the same PARTITION_TABLE_OFFSET value.
This value must be a multiple of 0x1000.
If you change the partition table offset, make sure to update the partition offsets in the partition table CSV file. To let the build system automatically adjust partition offsets based on the configured partition table offset, leave the offset fields blank in the CSV file.
Note: If you specify fixed offsets in the partition table CSV (i.e., the offset column is not blank), the first partition must start at PARTITION_TABLE_OFFSET + 0x1000, since the partition table occupies 0x1000 bytes of flash space.
- Default value:
"0x8000"
CONFIG_PARTITION_TABLE_MD5
Generate an MD5 checksum for the partition table
Found in: Partition Table
Generate an MD5 checksum for the partition table for protecting the integrity of the table. The generation should be turned off for legacy bootloaders which cannot recognize the MD5 checksum in the partition table.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_SECURE_FLASH_ENCRYPTION_MODE_RELEASE
Compiler options
Contains:
CONFIG_COMPILER_OPTIMIZATION
Optimization Level
Found in: Compiler options
This option sets compiler optimization level (gcc -O argument) for the app.
The "Debug" setting will add the -Og flag to CFLAGS.
The "Size" setting will add the -Os flag to CFLAGS (-Oz with Clang).
The "Performance" setting will add the -O2 flag to CFLAGS.
The "None" setting will add the -O0 flag to CFLAGS.
The "Size" setting cause the compiled code to be smaller and faster, but may lead to difficulties of correlating code addresses to source file lines when debugging.
The "Performance" setting causes the compiled code to be larger and faster, but will be easier to correlated code addresses to source file lines.
"None" with -O0 produces compiled code without optimization.
Note that custom optimization levels may be unsupported.
Compiler optimization for the IDF bootloader is set separately, see the BOOTLOADER_COMPILER_OPTIMIZATION setting.
Available options:
Debug (-Og) (CONFIG_COMPILER_OPTIMIZATION_DEBUG)
Optimize for size (-Os with GCC, -Oz with Clang) (CONFIG_COMPILER_OPTIMIZATION_SIZE)
Optimize for performance (-O2) (CONFIG_COMPILER_OPTIMIZATION_PERF)
Debug without optimization (-O0) (CONFIG_COMPILER_OPTIMIZATION_NONE)
CONFIG_COMPILER_ENABLE_RISCV_ZCMP
Enable RISCV ZCMP extension
Found in: Compiler options
Enable the RISC-V ZCMP (Compressed Macro) extension to reduce binary size by optimizing function prologue and epilogue sequences.
Note: Due to a hardware issue on some ESP32 chips (e.g., ESP32C5, ESP32C61, ESP32H4), executing "cm.push" may re-enable interrupts even when global interrupts are disabled (mstatus.mie = 0). This can cause unexpected interrupts during CPU retention or within critical sections.
Workarounds are implemented in the IDF codebase. However, if user code directly disables interrupts, additional actions may be required. Refer to code examples under the SOC_CPU_ZCMP_WORKAROUND macro, or disable the ZCMP extension for source files that contain functions which may execute while mstatus.mie = 0.
- Default value:
Disabled
CONFIG_COMPILER_OPTIMIZATION_ASSERTION_LEVEL
Assertion level
Found in: Compiler options
Assertions can be:
Enabled. Failure will print verbose assertion details. This is the default.
Set to "silent" to save code size (failed assertions will abort() but user needs to use the aborting address to find the line number with the failed assertion.)
Disabled entirely (not recommended for most configurations.) -DNDEBUG is added to CPPFLAGS in this case.
Available options:
Enabled (CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE)
Enable assertions. Assertion content and line number will be printed on failure.
Silent (saves code size) (CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT)
Enable silent assertions. Failed assertions will abort(), user needs to use the aborting address to find the line number with the failed assertion.
Disabled (sets -DNDEBUG) (CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE)
If assertions are disabled, -DNDEBUG is added to CPPFLAGS.
CONFIG_COMPILER_ASSERT_NDEBUG_EVALUATE
Enable the evaluation of the expression inside assert(X) when NDEBUG is set
Found in: Compiler options
When NDEBUG is set, assert(X) will not cause code to trigger an assertion. With this option set, assert(X) will still evaluate the expression X, though the result will never cause an assertion. This means that if X is a function then the function will be called.
This is not according to the standard, which states that the assert(X) should be replaced with ((void)0) if NDEBUG is defined.
- Default value:
Disabled
CONFIG_COMPILER_FLOAT_LIB_FROM
Compiler float lib source
Found in: Compiler options
In the soft-fp part of libgcc, riscv version is written in C, and handles all edge cases in IEEE754, which makes it larger and performance is slow.
RVfplib is an optimized RISC-V library for FP arithmetic on 32-bit integer processors, for single and double-precision FP. RVfplib is "fast", but it has a few exceptions from IEEE 754 compliance.
Available options:
libgcc (CONFIG_COMPILER_FLOAT_LIB_FROM_GCCLIB)
librvfp (CONFIG_COMPILER_FLOAT_LIB_FROM_RVFPLIB)
CONFIG_COMPILER_OPTIMIZATION_CHECKS_SILENT
Disable messages in ESP_RETURN_ON_* and ESP_EXIT_ON_* macros
Found in: Compiler options
If enabled, the error messages will be discarded in following check macros: - ESP_RETURN_ON_ERROR - ESP_EXIT_ON_ERROR - ESP_RETURN_ON_FALSE - ESP_EXIT_ON_FALSE
- Default value:
Disabled
CONFIG_COMPILER_HIDE_PATHS_MACROS
Replace ESP-IDF and project paths in binaries
Found in: Compiler options
When expanding the __FILE__ and __BASE_FILE__ macros, replace paths inside ESP-IDF with paths relative to the placeholder string "IDF", and convert paths inside the project directory to relative paths.
This allows building the project with assertions or other code that embeds file paths, without the binary containing the exact path to the IDF or project directories.
This option passes -fmacro-prefix-map options to the GCC command line. To replace additional paths in your binaries, modify the project CMakeLists.txt file to pass custom -fmacro-prefix-map or -ffile-prefix-map arguments.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_APP_REPRODUCIBLE_BUILD
CONFIG_COMPILER_CXX_EXCEPTIONS
Enable C++ exceptions
Found in: Compiler options
Enabling this option compiles all IDF C++ files with exception support enabled.
Disabling this option disables C++ exception support in all compiled files, and any libstdc++ code which throws an exception will abort instead.
Enabling this option currently adds an additional ~500 bytes of heap overhead when an exception is thrown in user code for the first time.
- Default value:
Disabled
Contains:
CONFIG_COMPILER_CXX_EXCEPTIONS_EMG_POOL_SIZE
Emergency Pool Size
Found in: Compiler options > CONFIG_COMPILER_CXX_EXCEPTIONS
Size (in bytes) of the emergency memory pool for C++ exceptions. This pool will be used to allocate memory for thrown exceptions when there is not enough memory on the heap.
- Symbol can be set when:
CONFIG_COMPILER_CXX_EXCEPTIONS is enabled
- Default value:
0
CONFIG_COMPILER_CXX_RTTI
Enable C++ run-time type info (RTTI)
Found in: Compiler options
Enabling this option compiles all C++ files with RTTI support enabled. This increases binary size (typically by tens of kB) but allows using dynamic_cast conversion and typeid operator.
- Default value:
Disabled
CONFIG_COMPILER_CXX_TRIVIAL_AUTO_VAR_INIT
C++ trivial automatic variable initialization
Found in: Compiler options
Controls initialization of trivial automatic variables in C++ code (-ftrivial-auto-var-init). The 'uninitialized' setting reduces overall binary size compared to 'zero' or 'pattern'.
Available options:
Uninitialized (CONFIG_COMPILER_CXX_TRIVIAL_AUTO_VAR_INIT_UNINITIALIZED)
Does not initialize automatic variables. This matches the traditional C and C++ behavior and yields the smallest code of the three modes.
When compiling as C++26, compilers may zero-initialize automatic variables and temporaries unless -ftrivial-auto-var-init is set explicitly. This option passes -ftrivial-auto-var-init=uninitialized to preserve the traditional behavior. Padding bits in objects are not initialized.
Pattern (CONFIG_COMPILER_CXX_TRIVIAL_AUTO_VAR_INIT_PATTERN)
Initialize automatic variables with values which will likely transform logic bugs into crashes down the line, are easily recognized in a crash dump and without being values that programmers can rely on for useful program semantics. The current value is byte-repeatable pattern with byte "0xFE". The values used for pattern initialization might be changed in the future.
Zero (CONFIG_COMPILER_CXX_TRIVIAL_AUTO_VAR_INIT_ZERO)
Initialize automatic variables with zeroes.
CONFIG_COMPILER_STACK_CHECK_MODE
Stack smashing protection mode
Found in: Compiler options
Stack smashing protection mode. Emit extra code to check for buffer overflows, such as stack smashing attacks. This is done by adding a guard variable to functions with vulnerable objects. The guards are initialized when a function is entered and then checked when the function exits. If a guard check fails, program is halted. Protection has the following modes:
In NORMAL mode (GCC flag: -fstack-protector) only functions that call alloca, and functions with buffers larger than 8 bytes are protected.
STRONG mode (GCC flag: -fstack-protector-strong) is like NORMAL, but includes additional functions to be protected -- those that have local array definitions, or have references to local frame addresses.
In OVERALL mode (GCC flag: -fstack-protector-all) all functions are protected.
Modes have the following impact on code performance and coverage:
performance: NORMAL > STRONG > OVERALL
coverage: NORMAL < STRONG < OVERALL
The performance impact includes increasing the amount of stack memory required for each task.
Available options:
None (CONFIG_COMPILER_STACK_CHECK_MODE_NONE)
Normal (CONFIG_COMPILER_STACK_CHECK_MODE_NORM)
Strong (CONFIG_COMPILER_STACK_CHECK_MODE_STRONG)
Overall (CONFIG_COMPILER_STACK_CHECK_MODE_ALL)
CONFIG_COMPILER_NO_MERGE_CONSTANTS
Disable merging const sections
Found in: Compiler options
Disable merging identical constants (string/floating-point) across compilation units. This helps in better size analysis of the application binary as the rodata section distribution is more uniform across libraries. On downside, it may increase the binary size and hence should be used during development phase only.
- Symbol can be set when:
CONFIG_IDF_TOOLCHAIN_GCC is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_APP_BUILD_MINIMIZE_BINARY_CHANGES if CONFIG_IDF_TOOLCHAIN_GCC is enabled
CONFIG_COMPILER_WARN_WRITE_STRINGS
Enable -Wwrite-strings warning flag
Found in: Compiler options
Adds -Wwrite-strings flag for the C/C++ compilers.
For C, this gives string constants the type
const char[]so that copying the address of one into a non-constchar \*pointer produces a warning. This warning helps to find at compile time code that tries to write into a string constant.For C++, this warns about the deprecated conversion from string literals to
char \*.
- Default value:
Disabled
CONFIG_COMPILER_SAVE_RESTORE_LIBCALLS
Enable -msave-restore flag to reduce code size
Found in: Compiler options
Adds -msave-restore to C/C++ compilation flags.
When this flag is enabled, compiler will call library functions to save/restore registers in function prologues/epilogues. This results in lower overall code size, at the expense of slightly reduced performance.
This option can be enabled for RISC-V targets only.
CONFIG_COMPILER_DISABLE_DEFAULT_ERRORS
Disable errors for default warnings
Found in: Compiler options
Enable this option if you do not want default warnings to be considered as errors, especially when updating IDF.
This is a temporary flag that could help to allow upgrade while having some time to address the warnings raised by those default warnings. Alternatives are: 1) fix code (preferred), 2) remove specific warnings, 3) do not consider specific warnings as error.
- Default value:
Disabled
CONFIG_COMPILER_DISABLE_GCC12_WARNINGS
Disable new warnings introduced in GCC 12
Found in: Compiler options
Enable this option if use GCC 12 or newer, and want to disable warnings which don't appear with GCC 11.
- Default value:
Disabled
CONFIG_COMPILER_DISABLE_GCC13_WARNINGS
Disable new warnings introduced in GCC 13
Found in: Compiler options
Enable this option if use GCC 13 or newer, and want to disable warnings which don't appear with GCC 12.
- Default value:
Disabled
CONFIG_COMPILER_DISABLE_GCC14_WARNINGS
Disable new warnings introduced in GCC 14
Found in: Compiler options
Enable this option if use GCC 14 or newer, and want to disable warnings which don't appear with GCC 13.
- Default value:
Disabled
CONFIG_COMPILER_DISABLE_GCC15_WARNINGS
Disable new warnings introduced in GCC 15
Found in: Compiler options
Enable this option if use GCC 15 or newer, and want to disable warnings which don't appear with GCC 14.
- Default value:
Disabled
CONFIG_COMPILER_DUMP_RTL_FILES
Dump RTL files during compilation
Found in: Compiler options
If enabled, RTL files will be produced during compilation. These files can be used by other tools, for example to calculate call graphs.
CONFIG_COMPILER_RT_LIB
Compiler runtime library
Found in: Compiler options
Select runtime library to be used by compiler. - GCC toolchain supports libgcc only. - Clang allows to choose between libgcc or libclang_rt. - For host builds ("linux" target), uses the default library.
Available options:
libgcc (CONFIG_COMPILER_RT_LIB_GCCLIB)
libclang_rt (CONFIG_COMPILER_RT_LIB_CLANGRT)
Host (CONFIG_COMPILER_RT_LIB_HOST)
CONFIG_COMPILER_LTO_LINKTIME
Enable LTO at link time
Found in: Compiler options
If enabled, ESP-IDF build system will tell the linker to use LTO (Link Time Optimization). This option may increase linking time but will also produce smaller binaries. Note that to see some code size reduction, you should also enable LTO at compile time for some components.
You can do this either selectively for specific components, or use the option CONFIG_COMPILER_LTO_COMPILETIME below to enable it for most of the components by default.
Note that LTO can also increase task stack usage, because inlining across translation units produces fewer but larger stack frames. After enabling LTO, check the stack high water mark of your tasks and raise the stack sizes of the affected tasks if necessary.
- Symbol can be set when:
CONFIG_IDF_TOOLCHAIN_CLANG is disabled
- Default value:
Disabled
CONFIG_COMPILER_LTO_COMPILETIME
Enable LTO by default at compile time
Found in: Compiler options > CONFIG_COMPILER_LTO_LINKTIME
If enabled, ESP-IDF build system will compile most of the components with LTO (link time optimizations) enabled.
Components which have link-time sections placement requirements will not have LTO enabled. This includes components which specify linker fragment files, as well as components whose object code is placed by a linker fragment of another component.
Note that enabling LTO for all components does not always reduce the binary size, and in some cases can increase it. For a more predictable result, consider enabling LTO selectively for specific components by adding the -flto=auto compile option to them.
- Symbol can be set when:
CONFIG_COMPILER_LTO_LINKTIME is enabled
- Default value:
Disabled
CONFIG_COMPILER_USE_LLD
Use LLD (ld.lld) as the linker
Found in: Compiler options
Link the application with the LLVM LLD linker instead of the GNU ld provided by the toolchain. The "ld.lld" binary must be available in PATH. Options not supported by LLD (e.g. --no-warn-rwx-segments) are omitted from the link automatically.
- Default value:
Disabled
CONFIG_COMPILER_ORPHAN_SECTIONS
Orphan sections handling
Found in: Compiler options
If the linker finds orphan sections, it attempts to place orphan sections after sections of the same attribute such as code vs data, loadable vs non-loadable, etc. That means that orphan sections could placed between sections defined in IDF linker scripts. This could lead to corruption of the binary image. Configure the linker action here.
Available options:
Fail if orphan sections found (CONFIG_COMPILER_ORPHAN_SECTIONS_ERROR)
Fails the link step with an error if orphan sections are detected.
Place with warning (CONFIG_COMPILER_ORPHAN_SECTIONS_WARNING)
Places orphan sections with a warning message.
Place silently (CONFIG_COMPILER_ORPHAN_SECTIONS_PLACE)
Places orphan sections without a warning/error message.
CONFIG_COMPILER_STATIC_ANALYZER
Enable compiler static analyzer
Found in: Compiler options
Enable compiler static analyzer. This may produce false-positive results and increases compile time.
- Symbol can be set when:
CONFIG_IDF_TOOLCHAIN_GCC is enabled
- Default value:
Disabled
CONFIG_COMPILER_CXX_GLIBCXX_CONSTEXPR
Define _GLIBCXX_CONSTEXPR
Found in: Compiler options
Modify libstdc++ _GLIBCXX20_CONSTEXPR and _GLIBCXX23_CONSTEXPR definitions to provide size optimizations. The total size optimization depends on the application's structure. There is no robust way to determine which option would be better in a particular case. Please try all available options to find the best size optimization.
Available options:
No change (CONFIG_COMPILER_CXX_GLIBCXX_CONSTEXPR_NO_CHANGE)
Use default _GLIBCXX20_CONSTEXPR and _GLIBCXX23_CONSTEXPR defined in libstdc++
_GLIBCXX2X_CONSTEXPR=__attribute__((cold)) constexpr (CONFIG_COMPILER_CXX_GLIBCXX_CONSTEXPR_COLD_CONSTEXPR)
Define _GLIBCXX20_CONSTEXPR=__attribute__((cold)) constexpr Define _GLIBCXX23_CONSTEXPR=__attribute__((cold)) constexpr
_GLIBCXX2X_CONSTEXPR=__attribute__((cold)) (CONFIG_COMPILER_CXX_GLIBCXX_CONSTEXPR_COLD)
Define _GLIBCXX20_CONSTEXPR=__attribute__((cold)). Define _GLIBCXX23_CONSTEXPR=__attribute__((cold)).
CONFIG_COMPILER_CXX_ATOMIC_LOCK_POLICY
Force libstdc++ lock-free atomic policy
Found in: Compiler options
Define _GLIBCXX_HAVE_ATOMIC_LOCK_POLICY=1 when compiling C++ code.
libstdc++ selects between a lock-free and a mutex-based policy for std::shared_ptr reference counting based on this macro. Enabling this option forces the lock-free policy, which avoids pulling in the mutex-based implementation and can reduce code size.
Note: the lock-free policy avoids embedding a mutex in each control block, saving about 88 bytes per shared_ptr, and improves performance by using atomic operations instead of mutex locking.
Note: this option changes the ABI of libstdc++ atomic/shared_ptr helpers. It can be incompatible when linking against prebuilt libraries that were compiled without it, leading to link errors or undefined runtime behavior. Only enable it if all C++ objects and libraries in the build use the same setting.
- Default value:
Disabled
CONFIG_COMPILER_KASAN
Enable Kernel Address Sanitizer (KASAN)
Found in: Compiler options
Enables Kernel Address Sanitizer instrumentation (-fsanitize=kernel-address). GCC instruments every memory load and store with calls to __asan_load<N>_noabort / __asan_store<N>_noabort. These stubs check a shadow memory region and panic if poisoned (freed / out-of-bounds) memory is accessed.
KASAN is useful for detecting: - Heap buffer overflows and underflows (with redzones) - Use-after-free bugs (when heap hooks are enabled) - Out-of-bounds accesses in global and stack variables (optional)
Enabling this option increases code size by 1.5-3x for instrumented components and reserves shadow memory in DRAM (~42-64 KiB depending on target).
NOT compatible with bootloader builds or ROM code. Components in the hal, soc, esp_rom, and bootloader_support families are automatically excluded from instrumentation.
- Symbol can be set when:
CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_IDF_TOOLCHAIN_GCC is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_HEAP_USE_HOOKS
Kernel Address Sanitizer (KASAN)
Contains:
CONFIG_KASAN_STACK
Instrument stack variables (higher overhead)
Found in: Compiler options > CONFIG_COMPILER_KASAN > Kernel Address Sanitizer (KASAN)
Pass --param asan-stack=1 to enable KASAN instrumentation of stack (local) variables. This detects stack buffer overflows but significantly increases stack usage for every instrumented function. Leave disabled unless you specifically need stack-overflow detection.
- Symbol can be set when:
CONFIG_COMPILER_KASAN is enabled && CONFIG_COMPILER_KASAN is enabled
- Default value:
Disabled
CONFIG_KASAN_HEAP_REDZONE_SIZE
Heap allocation redzone size in bytes (0 to disable)
Found in: Compiler options > CONFIG_COMPILER_KASAN > Kernel Address Sanitizer (KASAN)
Number of bytes of poisoned redzone added on each side of every heap allocation. Redzones catch heap buffer overflows and underflows. This value must be a multiple of 4; the build enforces that with a static assertion in the heap KASAN runtime. Set to 0 to disable redzones (reduces per-allocation overhead at the cost of reduced detection coverage).
- Symbol can be set when:
CONFIG_COMPILER_KASAN is enabled && CONFIG_COMPILER_KASAN is enabled
- Range:
from 0 to 64
- Default value:
8
CONFIG_KASAN_QUARANTINE_SIZE
Freed-block quarantine queue size in bytes (0 to disable)
Found in: Compiler options > CONFIG_COMPILER_KASAN > Kernel Address Sanitizer (KASAN)
When non-zero, freed heap blocks are held in a FIFO quarantine for this many bytes total before being returned to the allocator. Quarantined blocks remain poisoned, allowing KASAN to catch use-after-free accesses for some time after the block is freed. Increases peak memory usage by the configured amount. Set to 0 to disable (frees memory immediately).
- Symbol can be set when:
CONFIG_COMPILER_KASAN is enabled && CONFIG_COMPILER_KASAN is enabled
- Range:
from 0 to 65536
- Default value:
8192
CONFIG_KASAN_NO_HALT
Continue execution after KASAN error (no abort)
Found in: Compiler options > CONFIG_COMPILER_KASAN > Kernel Address Sanitizer (KASAN)
When enabled, KASAN prints the error report but does not call esp_system_abort(). Execution continues after each violation.
This is useful for test applications that need to verify multiple KASAN detections in a single boot cycle.
Not recommended for production or debugging real bugs, as continued execution after a memory safety violation may cause undefined behaviour.
- Symbol can be set when:
CONFIG_COMPILER_KASAN is enabled && CONFIG_COMPILER_KASAN is enabled
- Default value:
Disabled
Component config
Contains:
Bluetooth
Contains:
CONFIG_BT_ENABLED
Bluetooth
Found in: Component config > Bluetooth
Select this option to enable Bluetooth and show the submenu with Bluetooth configuration choices.
- Symbol can be set when:
CONFIG_APP_NO_BLOBS is disabled
CONFIG_BT_HOST
Host
Found in: Component config > Bluetooth > CONFIG_BT_ENABLED
This helps to choose Bluetooth host stack
Available options:
Bluedroid - Dual-mode (CONFIG_BT_BLUEDROID_ENABLED)
This option is recommended for classic Bluetooth or for dual-mode usecases
NimBLE - BLE only (CONFIG_BT_NIMBLE_ENABLED)
This option is recommended for BLE only usecases to save on memory
Disabled (CONFIG_BT_CONTROLLER_ONLY)
This option is recommended when you want to communicate directly with the controller (without any host) or when you are using any other host stack not supported by Espressif (not mentioned here).
CONFIG_BT_CONTROLLER
Controller
Found in: Component config > Bluetooth > CONFIG_BT_ENABLED
This helps to choose Bluetooth controller stack
Available options:
Enabled (CONFIG_BT_CONTROLLER_ENABLED)
This option is recommended for Bluetooth controller usecases
Disabled (CONFIG_BT_CONTROLLER_DISABLED)
This option is recommended for Bluetooth Host only usecases
Common Options
Contains:
CONFIG_BT_ALARM_MAX_NUM
Maximum number of Bluetooth alarms
Found in: Component config > Bluetooth > Common Options
This option decides the maximum number of alarms which could be used by Bluetooth host.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled || CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
50
CONFIG_BT_BLE_HOST_ALLOW_SUB_SPEC_MIN_CONN_INT
Allow BLE connection interval below Bluetooth Core Spec minimum (disable host check)
Found in: Component config > Bluetooth > Common Options
When enabled, BLE host-side validation accepts connection interval values below the Bluetooth Core Specification minimum of 0x0006 (7.5 ms), down to non-zero values. The BLE controller still enforces what is actually supported in hardware and firmware.
End users should NOT set this option directly. In typical IDF builds it follows the active Controller integration when that Controller supports this mode; use the Controller's own configuration instead of toggling this host symbol manually.
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled || CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
OSAL (OS abstraction layer)
Contains:
CONFIG_BT_OSAL_ENABLED
Enable the Bluetooth OS abstraction layer
Found in: Component config > Bluetooth > Common Options > OSAL (OS abstraction layer)
Build the Bluetooth OS abstraction layer (bt_osal): a host-agnostic wrapper over the OS primitives the Bluetooth stack and the BLE profiles rely on — event queues, mutexes, semaphores, callouts (one-shot timers), time conversion and critical sections.
Disable to leave the OSAL sources out of the build when nothing uses them. A component that relies on the OSAL should "select BT_OSAL_ENABLED" in its own Kconfig.
- Symbol can be set when:
CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_PRF_TASK_ENABLED
CONFIG_BT_OSAL_USE_ESP_TIMER
Use esp_timer to implement the OSAL callout
Found in: Component config > Bluetooth > Common Options > OSAL (OS abstraction layer) > CONFIG_BT_OSAL_ENABLED
Use esp_timer instead of the FreeRTOS software timer to implement the OSAL callout. esp_timer offers higher precision and runs its callbacks in a dedicated high-priority task rather than the shared FreeRTOS timer task.
Disable to fall back to the FreeRTOS software timer.
- Symbol can be set when:
CONFIG_BT_OSAL_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_SMP_CRYPTO_STACK
SMP cryptographic stack
Found in: Component config > Bluetooth > Common Options
Select the cryptographic library to use for SMP operations (AES, AES-CMAC, ECDH P-256). With BR/EDR controller enabled, mbedTLS also enables SHA-256 (for the BR/EDR port) and ECDH for P-192 on the controller port.
Available options:
TinyCrypt (CONFIG_BT_SMP_CRYPTO_STACK_TINYCRYPT)
Use TinyCrypt library for cryptographic operations. TinyCrypt is a lightweight cryptographic library designed for constrained devices. This can reduce code size compared to the native implementation. This is the default option.
mbedTLS (CONFIG_BT_SMP_CRYPTO_STACK_MBEDTLS)
Use mbedTLS library for cryptographic operations. This can provide hardware acceleration on supported platforms and reduce code size by sharing crypto implementations with other components.
BT Logs
Contains:
Log Sources
Contains:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Enable Controller logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_LOG_CRITICAL_ONLY_CTRL
forcefully enabled by CONFIG_BLE_LOG_IS_ESP_CONTROLLER
Contains:
CONFIG_BT_LE_CONTROLLER_LOG_OUTPUT_MODE
Controller log output mode
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Available options:
BLE Log v2 mode (CONFIG_BT_LE_CONTROLLER_LOG_MODE_BLE_LOG_V2)
Utilize BLE Log v2 for controller log
Legacy log mode (Deprecated) (CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED)
CONFIG_BT_LE_CONTROLLER_LOG_CTRL_ENABLED
Enable controller link layer logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_CONTROLLER_LOG_HCI_ENABLED
Enable controller HCI logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_CONTROLLER_LOG_DUMP_ONLY
Controller log dump mode only
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Only operate in dump mode. Logs are cached internally only, not output asynchronously.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_CONTROLLER_LOG_SPI_OUT_ENABLED
Output controller logs to SPI bus (Experimental)
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Output ble controller logs to SPI bus
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_DUMP_ONLY is disabled && CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
CONFIG_BT_LE_CONTROLLER_LOG_STORAGE_ENABLE
Store controller logs to flash (Experimental)
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Store ble controller logs to flash memory.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_DUMP_ONLY is disabled && CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CONTROLLER_LOG_PARTITION_SIZE
Controller log partition size (multiples of 4K)
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED > CONFIG_BT_LE_CONTROLLER_LOG_STORAGE_ENABLE
The size of ble controller log partition shall be a multiples of 4K. The name of log partition shall be "bt_ctrl_log". The partition type shall be ESP_PARTITION_TYPE_DATA. The partition sub_type shall be ESP_PARTITION_SUBTYPE_ANY.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_STORAGE_ENABLE is enabled && CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
65536
CONFIG_BT_LE_LOG_CTRL_BUF1_SIZE
First controller log buffer size
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Configure the size of the first BLE controller LOG buffer.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
4096
CONFIG_BT_LE_LOG_CTRL_BUF2_SIZE
Second controller log buffer size
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Configure the size of the second BLE controller LOG buffer.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
1024
CONFIG_BT_LE_LOG_HCI_BUF_SIZE
HCI log buffer size
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Configure the size of the BLE HCI LOG buffer.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled && CONFIG_BT_LE_CTRL_LEGACY_LOG_MODE_ENABLED is enabled
- Default value:
4096
CONFIG_BT_LE_CONTROLLER_LOG_OUTPUT_LEVEL
Controller log output level
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
The output level of controller log.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled
- Range:
from 0 to 5
- Default value:
2 if CONFIG_BT_LOG_CRITICAL_ONLY_CTRL is enabled
1
CONFIG_BT_LE_CONTROLLER_LOG_MOD_OUTPUT_SWITCH
Controller log module output switch
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Bitmask to enable/disable logging for individual controller modules. 0xFFFFFFFF enables all modules.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled
- Range:
from 0 to 0xFFFFFFFF
- Default value:
"0xFFFFFFFF"
CONFIG_BT_LE_CONTROLLER_LOG_WRAP_PANIC_HANDLER_ENABLE
Enable wrap panic handler
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Wrap esp_panic_handler to get controller logs when PC pointer exception crashes.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CONTROLLER_LOG_TASK_WDT_USER_HANDLER_ENABLE
Enable esp_task_wdt_isr_user_handler implementation
Found in: Component config > Bluetooth > Common Options > BT Logs > Log Sources > CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
Implement esp_task_wdt_isr_user_handler to get controller logs when task wdt issue is triggered.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LOG_CRITICAL_ONLY
Enable bandwidth-optimized log mode (critical logs only)
Found in: Component config > Bluetooth > Common Options > BT Logs
Enable bandwidth-optimized logging for the BLE Log Async Output system. When enabled, only high-severity logs are captured and log encoding is applied to reduce UART/SPI DMA bandwidth usage.
Each stack component below can be independently enabled. Requires a DMA-backed output peripheral — configure in: BLE Log Module → BLE Log peripheral choice.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_LOG_ENABLED
Contains:
CONFIG_BT_LOG_CRITICAL_ONLY_CTRL
Controller: bandwidth-optimized logging
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BT_LOG_CRITICAL_ONLY
Enable controller log output via the async transport with a reduced output level for bandwidth optimization. The controller log level defaults to 2 when active.
- Symbol can be set when:
CONFIG_BT_LOG_CRITICAL_ONLY is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
forcefully enables BT_CTRL_LE_LOG_EN if CONFIG_BLE_LOG_IS_ESP_LEGACY_CONTROLLER is enabled
CONFIG_BT_LOG_CRITICAL_ONLY_HOST
Host: bandwidth-optimized logging
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BT_LOG_CRITICAL_ONLY
Enable host stack log encoding via the async transport. For Bluedroid, the per-level compression options control which severity levels are encoded — configure in: Settings of BLE Log Compression → BLE Host log compression.
- Symbol can be set when:
CONFIG_BT_LOG_CRITICAL_ONLY is enabled
- Default value:
Enabled
CONFIG_BT_LOG_CRITICAL_ONLY_MESH
Mesh: bandwidth-optimized logging
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BT_LOG_CRITICAL_ONLY
Enable mesh log encoding via the async transport. The per-level compression options are configured in: Settings of BLE Log Compression → BLE Mesh log compression.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled && CONFIG_BT_LOG_CRITICAL_ONLY is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE
CONFIG_BT_LOG_CRITICAL_ONLY_ISO
ISO: bandwidth-optimized logging
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BT_LOG_CRITICAL_ONLY
Enable BLE Audio/ISO log encoding via the async transport. The per-level compression options are configured in: Settings of BLE Log Compression → BLE Audio/ISO log compression.
- Symbol can be set when:
CONFIG_BT_ISO is enabled && CONFIG_BT_LOG_CRITICAL_ONLY is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE
CONFIG_BLE_LOG_ENABLED
Enable BT Log Async Output (Dev Only)
Found in: Component config > Bluetooth > Common Options > BT Logs
Enable BT Log Async Output
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_COMPRESSED_LOG_ENABLE
forcefully enables CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE if CONFIG_BT_BLUEDROID_ENABLED is enabled
forcefully enables CONFIG_ESP_TIMER_IN_IRAM
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_LOG_CRITICAL_ONLY
CONFIG_BLE_LOG_LBM_AUTO_FLUSH
Enable automatic BLE Log LBM buffer flush
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
Periodically flush partially-filled BLE Log LBM transport buffers that remain pending, reducing latency for low-volume or intermittent logging.
- Symbol can be set when:
CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_LOG_LBM_TRANS_BUF_SIZE
Total buffer memory per common LBM (bytes)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
Total buffer memory allocated for each common pool log buffer manager (LBM). This memory is divided equally among internal transport buffers. Must be a multiple of BLE_LOG_TRANS_BUF_CNT (currently 4).
The common pool contains: - BLE_LOG_LBM_ATOMIC_LOCK_TASK_CNT atomic LBMs (task context) - BLE_LOG_LBM_ATOMIC_LOCK_ISR_CNT atomic LBMs (ISR context) - 2 spinlock-protected LBMs (one for task, one for ISR fallback)
Total common pool memory: (ATOMIC_TASK_CNT + ATOMIC_ISR_CNT + 2) * BLE_LOG_LBM_TRANS_BUF_SIZE
- Symbol can be set when:
CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
2048
CONFIG_BLE_LOG_LBM_ATOMIC_LOCK_TASK_CNT
Count of log buffer managers with atomic lock protection for task context
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
BLE Log module will search for an LBM with atomic lock protection first; if all LBMs with atomic lock protection are unavailable, BLE Log module will try to use the LBM with spin lock protection. So the more LBMs with atomic lock protection are created, the better the logging performance will be.
- Symbol can be set when:
CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
2
CONFIG_BLE_LOG_LBM_ATOMIC_LOCK_ISR_CNT
Count of log buffer managers with atomic lock protection for ISR context
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
BLE Log module will search for an LBM with atomic lock protection first; if all LBMs with atomic lock protection are unavailable, BLE Log module will try to use the LBM with spin lock protection. So the more LBMs with atomic lock protection are created, the more ISRs can nest.
- Symbol can be set when:
CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
1
CONFIG_BLE_LOG_IS_ESP_CONTROLLER
Current BLE Controller is ESP BLE Controller
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
Current BLE Controller is ESP BLE Controller
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_LE_CONTROLLER_LOG_ENABLED
forcefully enables CONFIG_BLE_LOG_LL_ENABLED
CONFIG_BLE_LOG_LL_ENABLED
Enable BLE Log for Link Layer
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
Enable BLE Log for Link Layer
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled if CONFIG_BLE_LOG_IS_ESP_LEGACY_CONTROLLER is enabled
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_LOG_IS_ESP_CONTROLLER
CONFIG_BLE_LOG_LBM_LL_TRANS_BUF_SIZE
Total buffer memory per Link Layer LBM (bytes)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > CONFIG_BLE_LOG_LL_ENABLED
Total buffer memory allocated for each Link Layer dedicated log buffer manager (LBM). This memory is divided equally among internal transport buffers. Must be a multiple of BLE_LOG_TRANS_BUF_CNT (currently 4).
There are 2 Link Layer LBMs without lock protection (each is accessed from a single context only): - LL task LBM (Link Layer task context logs) - LL HCI LBM (Link Layer HCI context logs)
Total LL pool memory: 2 * BLE_LOG_LBM_LL_TRANS_BUF_SIZE
- Symbol can be set when:
CONFIG_BLE_LOG_LL_ENABLED is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
2048
CONFIG_BLE_LOG_LL_HCI_LOG_PAYLOAD_LEN_LIMIT_ENABLED
Enable LL HCI Log Payload Length Limit
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > CONFIG_BLE_LOG_LL_ENABLED
Enable length limit for LL HCI Log payload (addr_append). When enabled, if len_append exceeds the configured limit, it will be truncated to the maximum length.
- Symbol can be set when:
CONFIG_BLE_LOG_LL_ENABLED is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_LOG_LL_HCI_LOG_PAYLOAD_LEN_LIMIT
LL HCI Log Payload Length Limit (bytes)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > CONFIG_BLE_LOG_LL_ENABLED > CONFIG_BLE_LOG_LL_HCI_LOG_PAYLOAD_LEN_LIMIT_ENABLED
Maximum length for LL HCI Log payload (len_append). When the feature is enabled and len_append exceeds this value, it will be truncated.
- Symbol can be set when:
CONFIG_BLE_LOG_LL_HCI_LOG_PAYLOAD_LEN_LIMIT_ENABLED is enabled && CONFIG_BLE_LOG_LL_ENABLED is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
32
CONFIG_BLE_LOG_HOST_LOG
Enable BLE Log for Host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
Enable BLE Log for the Host stack (Bluedroid or NimBLE).
When enabled, host-side log statements are routed through the BLE Log async output transport instead of (or in addition to) the standard UART logging path. Disable this option to keep BLE Log enabled for the controller/link layer only.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_LOG_HOST_SIDE_HCI_LOG_ENABLED
Enable BLE Host side HCI Logging
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
Enable HCI packet logging captured on the Host side (Bluedroid / NimBLE HCI HAL). Useful for correlating host events with controller-side HCI traces.
- Symbol can be set when:
CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled if CONFIG_BLE_LOG_IS_ESP_LEGACY_CONTROLLER is enabled
CONFIG_BLE_LOG_TS_ENABLED
Enable BLE Log Timestamp Synchronization (TS)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
Enable BLE Log TS with external logging module. Synchronization is triggered periodically by an ESP Timer using task dispatch. The timer does not wake the system from light sleep.
- Symbol can be set when:
CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_LOG_SYNC_IO_NUM
GPIO number for Timestamp Synchronization (TS) toggle output
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > CONFIG_BLE_LOG_TS_ENABLED
GPIO number for TS toggle output
- Symbol can be set when:
CONFIG_BLE_LOG_TS_ENABLED is enabled && CONFIG_BLE_LOG_TS_ENABLED is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
0
CONFIG_BLE_LOG_PRPH_CHOICE
BLE Log peripheral choice
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
Choose BLE Log peripheral
Available options:
Dummy transport (CONFIG_BLE_LOG_PRPH_DUMMY)
Dummy transport (dump only)
Test only transport (CONFIG_BLE_LOG_PRPH_TEST)
Test transport that models DMA ownership and optional link-rate backpressure. Selected by BLE Log test apps only; not shown in menuconfig.
Utilize SPI master DMA driver as transport (CONFIG_BLE_LOG_PRPH_SPI_MASTER_DMA)
Utilize SPI master DMA driver as transport
Utilize SPI master HD DMA protocol as transport (CONFIG_BLE_LOG_PRPH_SPI_MASTER_HD)
Utilize SPI master HD DMA protocol as transport
Utilize UART DMA driver as transport (CONFIG_BLE_LOG_PRPH_UART_DMA)
Utilize UART DMA driver as transport
CONFIG_BLE_LOG_PRPH_SPI_MASTER_DMA_MOSI_IO_NUM
GPIO number of MOSI port for SPI master transport (-1: native SPI2 IOMUX)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
GPIO number of MOSI port for SPI master transport. Set to -1 to use the target's native SPI2 IOMUX pin.
- Symbol can be set when:
(CONFIG_BLE_LOG_PRPH_SPI_MASTER_DMA is enabled || CONFIG_BLE_LOG_PRPH_SPI_MASTER_HD is enabled) && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
"-1"
CONFIG_BLE_LOG_PRPH_SPI_MASTER_DMA_SCLK_IO_NUM
GPIO number of SCLK port for SPI master transport (-1: native SPI2 IOMUX)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
GPIO number of SCLK port for SPI master transport. Set to -1 to use the target's native SPI2 IOMUX pin.
- Symbol can be set when:
(CONFIG_BLE_LOG_PRPH_SPI_MASTER_DMA is enabled || CONFIG_BLE_LOG_PRPH_SPI_MASTER_HD is enabled) && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
"-1"
CONFIG_BLE_LOG_PRPH_SPI_MASTER_DMA_CS_IO_NUM
GPIO number of CS port for SPI master transport (-1: native SPI2 IOMUX)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED
GPIO number of CS port for SPI master transport. Set to -1 to use the target's native SPI2 IOMUX pin.
- Symbol can be set when:
(CONFIG_BLE_LOG_PRPH_SPI_MASTER_DMA is enabled || CONFIG_BLE_LOG_PRPH_SPI_MASTER_HD is enabled) && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
"-1"
Settings of BLE Log Compression
Contains:
CONFIG_BLE_COMPRESSED_LOG_ENABLE
Enable BLE log compression(Preview, Please read help information)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression
Compress BLE logs during application build to reduce flash usage and improve output speed. When enabled, log data from Bluetooth Low Energy components will be compressed before storage, optimizing both memory footprint and transmission efficiency.
Note: This library depends on additional Python packages. It will function correctly only after these dependencies are installed; refer to: "components/bt/common/ble_log/log_compression/README.en.md" for installation instructions.
- Symbol can be set when:
CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_LOG_ENABLED
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE
Enable BLE Mesh log compression(Preview)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE
Apply compression to ESP-BLE-MESH protocol stack logs. Requires base BLE compression to be enabled. Specifically optimizes log storage and transmission for ble mesh.
Note: This library depends on additional Python packages. It will function correctly only after these dependencies are installed; refer to: "components/bt/common/ble_log/log_compression/README.en.md" for installation instructions.
If the required packages are not installed, the log-compression mechanism will remain disabled even when this Config is enabled.
- Symbol can be set when:
CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_MESH is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_LOG_CRITICAL_ONLY_MESH
Contains:
CONFIG_BLE_MESH_COMPRESSED_LOG_BUFFER_LEN
BLE Mesh log buffer length
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE
Maximum output length for a single log
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
400
Select the stack log tag to be compressed
Contains:
CONFIG_BLE_MESH_STACK_ERR_LOG_COMPRESSION
Compress ERROR log of ESP-BLE-MESH
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the stack log tag to be compressed
The error log in the BLE-MESH component will be compressed
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_STACK_ERR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the stack log tag to be compressed > CONFIG_BLE_MESH_STACK_ERR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_MESH_STACK_ERR_LOG_COMPRESSION is enabled && CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_STACK_WARN_LOG_COMPRESSION
Compress warn log of ESP-BLE-MESH
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the stack log tag to be compressed
The warn log in the BLE-MESH component will be compressed
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_STACK_WARN_LOG_PRESERVE
Keep the original warn log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the stack log tag to be compressed > CONFIG_BLE_MESH_STACK_WARN_LOG_COMPRESSION
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_MESH_STACK_WARN_LOG_COMPRESSION is enabled && CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_STACK_INFO_LOG_COMPRESSION
Compress info log of ESP-BLE-MESH
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the stack log tag to be compressed
The info log in the BLE-MESH component will be compressed
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_STACK_INFO_LOG_PRESERVE
Keep the original info log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the stack log tag to be compressed > CONFIG_BLE_MESH_STACK_INFO_LOG_COMPRESSION
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_MESH_STACK_INFO_LOG_COMPRESSION is enabled && CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_STACK_DEBUG_LOG_COMPRESSION
Compress debug log of ESP-BLE-MESH
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the stack log tag to be compressed
The debug log in the BLE-MESH component will be compressed
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_STACK_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the stack log tag to be compressed > CONFIG_BLE_MESH_STACK_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_MESH_STACK_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the net buf log tag to be compressed
Contains:
CONFIG_BLE_MESH_NET_BUF_ERR_LOG_COMPRESSION
Compress ERROR log of ESP-BLE-MESH
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the net buf log tag to be compressed
The error log in the BLE-MESH component will be compressed
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the net buf log tag to be compressed > CONFIG_BLE_MESH_NET_BUF_ERR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_MESH_NET_BUF_ERR_LOG_COMPRESSION is enabled && CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_NET_BUF_WARN_LOG_COMPRESSION
Compress warn log of ESP-BLE-MESH
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the net buf log tag to be compressed
The warn log in the BLE-MESH component will be compressed
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_NET_BUF_WARN_LOG_PRESERVE
Keep the original warn log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the net buf log tag to be compressed > CONFIG_BLE_MESH_NET_BUF_WARN_LOG_COMPRESSION
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_MESH_NET_BUF_WARN_LOG_COMPRESSION is enabled && CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_NET_BUF_INFO_LOG_COMPRESSION
Compress info log of ESP-BLE-MESH
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the net buf log tag to be compressed
The info log in the BLE-MESH component will be compressed
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_NET_BUF_INFO_LOG_PRESERVE
Keep the original info log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the net buf log tag to be compressed > CONFIG_BLE_MESH_NET_BUF_INFO_LOG_COMPRESSION
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_MESH_NET_BUF_INFO_LOG_COMPRESSION is enabled && CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_NET_BUF_DEBUG_LOG_COMPRESSION
Compress debug log of ESP-BLE-MESH
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the net buf log tag to be compressed
The debug log in the BLE-MESH component will be compressed
- Symbol can be set when:
CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_NET_BUF_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE > Select the net buf log tag to be compressed > CONFIG_BLE_MESH_NET_BUF_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_MESH_NET_BUF_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_MESH_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE
Enable BLE Audio/ISO log compression(Preview)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE
Apply compression to BLE Audio/ISO protocol stack logs. Requires base BLE compression to be enabled. Specifically optimizes log storage and transmission for BLE Audio and ISO.
Note: This library depends on additional Python packages. It will function correctly only after these dependencies are installed; refer to: "components/bt/common/ble_log/log_compression/README.en.md" for installation instructions.
If the required packages are not installed, the log-compression mechanism will remain disabled even when this Config is enabled.
- Symbol can be set when:
CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_ISO is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_LOG_CRITICAL_ONLY_ISO
Contains:
CONFIG_BLE_ISO_COMPRESSED_LOG_BUFFER_LEN
BLE Audio/ISO log buffer length
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE
Maximum output length for a single log
- Symbol can be set when:
CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
300
Select the Audio/ISO stack log tag to be compressed
Contains:
CONFIG_BLE_ISO_STACK_ERR_LOG_COMPRESSION
Compress ERROR log of BLE Audio/ISO
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE > Select the Audio/ISO stack log tag to be compressed
The error log in the BLE Audio/ISO component will be compressed
- Symbol can be set when:
CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_ISO_STACK_ERR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE > Select the Audio/ISO stack log tag to be compressed > CONFIG_BLE_ISO_STACK_ERR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_ISO_STACK_ERR_LOG_COMPRESSION is enabled && CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_ISO_STACK_WARN_LOG_COMPRESSION
Compress WARN log of BLE Audio/ISO
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE > Select the Audio/ISO stack log tag to be compressed
The warn log in the BLE Audio/ISO component will be compressed
- Symbol can be set when:
CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_ISO_STACK_WARN_LOG_PRESERVE
Keep the original warn log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE > Select the Audio/ISO stack log tag to be compressed > CONFIG_BLE_ISO_STACK_WARN_LOG_COMPRESSION
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_ISO_STACK_WARN_LOG_COMPRESSION is enabled && CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_ISO_STACK_INFO_LOG_COMPRESSION
Compress INFO log of BLE Audio/ISO
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE > Select the Audio/ISO stack log tag to be compressed
The info log in the BLE Audio/ISO component will be compressed
- Symbol can be set when:
CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_ISO_STACK_INFO_LOG_PRESERVE
Keep the original info log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE > Select the Audio/ISO stack log tag to be compressed > CONFIG_BLE_ISO_STACK_INFO_LOG_COMPRESSION
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_ISO_STACK_INFO_LOG_COMPRESSION is enabled && CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_ISO_STACK_DEBUG_LOG_COMPRESSION
Compress DEBUG log of BLE Audio/ISO
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE > Select the Audio/ISO stack log tag to be compressed
The debug log in the BLE Audio/ISO component will be compressed
- Symbol can be set when:
CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_ISO_STACK_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE > Select the Audio/ISO stack log tag to be compressed > CONFIG_BLE_ISO_STACK_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_ISO_STACK_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_ISO_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE
Enable BLE Host log compression(Preview)
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE
Apply compression to host logs. Requires base BLE compression to be enabled. Specifically optimizes log storage and transmission.
Note: This library depends on additional Python packages. It will function correctly only after these dependencies are installed; refer to: "components/bt/common/ble_log/log_compression/README.en.md" for installation instructions.
- Symbol can be set when:
CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && (CONFIG_BT_BLUEDROID_ENABLED is enabled || CONFIG_BT_NIMBLE_ENABLED is enabled) && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_LOG_ENABLED if CONFIG_BT_BLUEDROID_ENABLED is enabled
Contains:
CONFIG_BLE_HOST_COMPRESSED_LOG_BUFFER_LEN
Host log buffer length
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE
Maximum output length for a single log
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
300
Select the BTM layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_BTM_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTM_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTM_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTM_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTM_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTM_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTM_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTM_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTM_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTM_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTM_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTM_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTM_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTM_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTM_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTM_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTM_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTM_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTM_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTM_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTM_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTM_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTM_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the L2CAP layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_L2CAP_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_L2CAP_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_L2CAP_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_L2CAP_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_L2CAP_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_L2CAP_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_L2CAP_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_L2CAP_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_L2CAP_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_L2CAP_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_L2CAP_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_L2CAP_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_L2CAP_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_L2CAP_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_L2CAP_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_L2CAP_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_L2CAP_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_L2CAP_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_L2CAP_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_L2CAP_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_L2CAP_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the L2CAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_L2CAP_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_L2CAP_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the GAP layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_GAP_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GAP_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GAP_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GAP_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GAP_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GAP_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GAP_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GAP_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GAP_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GAP_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GAP_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_GAP_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GAP_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GAP_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GAP_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_GAP_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GAP_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GAP_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GAP_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_GAP_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GAP_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GAP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GAP_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GAP_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the GATT layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_GATT_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GATT_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GATT_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GATT_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GATT_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GATT_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GATT_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GATT_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GATT_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GATT_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GATT_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_GATT_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GATT_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GATT_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GATT_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_GATT_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GATT_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GATT_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GATT_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_GATT_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_GATT_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the GATT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_GATT_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_GATT_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the SMP layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_SMP_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SMP_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SMP_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SMP_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SMP_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SMP_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SMP_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SMP_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SMP_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SMP_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SMP_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_SMP_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SMP_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SMP_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SMP_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_SMP_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SMP_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SMP_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SMP_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_SMP_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SMP_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SMP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SMP_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SMP_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the APPL layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_APPL_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed > CONFIG_BLE_BLUEDROID_APPL_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_APPL_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_APPL_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_APPL_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed > CONFIG_BLE_BLUEDROID_APPL_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_APPL_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_APPL_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_APPL_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed > CONFIG_BLE_BLUEDROID_APPL_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_APPL_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_APPL_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_APPL_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed > CONFIG_BLE_BLUEDROID_APPL_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_APPL_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_APPL_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_APPL_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed > CONFIG_BLE_BLUEDROID_APPL_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_APPL_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_APPL_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_APPL_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the APPL layer log tag to be compressed > CONFIG_BLE_BLUEDROID_APPL_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_APPL_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the HCI layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_HCI_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HCI layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HCI_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HCI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HCI_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HCI_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HCI_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HCI layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HCI_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HCI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HCI_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HCI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HCI_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HCI_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HCI layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HCI_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HCI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HCI_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HCI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HCI_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_HCI_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HCI layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HCI_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HCI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HCI_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HCI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HCI_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the SDP layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_SDP_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SDP_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SDP_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SDP_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SDP_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SDP_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SDP_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SDP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SDP_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SDP_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SDP_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SDP_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SDP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SDP_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_SDP_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SDP_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SDP_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SDP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SDP_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_SDP_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_SDP_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the SDP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_SDP_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_SDP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_SDP_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the RFCOMM layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_RFCOMM_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_RFCOMM_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_RFCOMM_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_RFCOMM_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_RFCOMM_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_RFCOMM_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_RFCOMM_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_RFCOMM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_RFCOMM_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_RFCOMM_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_RFCOMM_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_RFCOMM_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_RFCOMM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_RFCOMM_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_RFCOMM_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_RFCOMM_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_RFCOMM_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_RFCOMM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_RFCOMM_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_RFCOMM_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_RFCOMM_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the RFCOMM layer log tag to be compressed > CONFIG_BLE_BLUEDROID_RFCOMM_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_RFCOMM_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_RFCOMM_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the BNEP layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_BNEP_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BNEP_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BNEP_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BNEP_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BNEP_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BNEP_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BNEP_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BNEP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BNEP_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BNEP_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BNEP_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BNEP_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BNEP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BNEP_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BNEP_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BNEP_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BNEP_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BNEP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BNEP_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BNEP_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BNEP_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BNEP layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BNEP_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BNEP_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BNEP_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the PAN layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_PAN_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_PAN_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed > CONFIG_BLE_BLUEDROID_PAN_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_PAN_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_PAN_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_PAN_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed > CONFIG_BLE_BLUEDROID_PAN_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_PAN_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_PAN_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_PAN_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_PAN_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed > CONFIG_BLE_BLUEDROID_PAN_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_PAN_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_PAN_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_PAN_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_PAN_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed > CONFIG_BLE_BLUEDROID_PAN_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_PAN_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_PAN_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_PAN_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_PAN_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the PAN layer log tag to be compressed > CONFIG_BLE_BLUEDROID_PAN_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_PAN_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_PAN_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the A2D layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_A2D_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_A2D_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed > CONFIG_BLE_BLUEDROID_A2D_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_A2D_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_A2D_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_A2D_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed > CONFIG_BLE_BLUEDROID_A2D_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_A2D_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_A2D_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_A2D_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_A2D_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed > CONFIG_BLE_BLUEDROID_A2D_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_A2D_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_A2D_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_A2D_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_A2D_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed > CONFIG_BLE_BLUEDROID_A2D_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_A2D_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_A2D_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_A2D_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_A2D_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the A2D layer log tag to be compressed > CONFIG_BLE_BLUEDROID_A2D_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_A2D_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_A2D_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the AVDT layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_AVDT_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVDT_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVDT_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVDT_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVDT_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVDT_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVDT_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVDT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVDT_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVDT_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVDT_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVDT_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVDT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVDT_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_AVDT_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVDT_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVDT_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVDT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVDT_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_AVDT_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVDT_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVDT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVDT_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVDT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVDT_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the AVCT layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_AVCT_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVCT_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVCT_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVCT_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVCT_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVCT_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVCT_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVCT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVCT_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVCT_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVCT_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVCT_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVCT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVCT_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_AVCT_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVCT_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVCT_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVCT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVCT_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_AVCT_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVCT_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVCT layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVCT_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVCT_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVCT_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the AVRC layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_AVRC_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVRC_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVRC_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVRC_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVRC_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVRC_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVRC_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVRC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVRC_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVRC_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVRC_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVRC_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVRC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVRC_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_AVRC_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVRC_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVRC_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVRC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVRC_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_AVRC_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_AVRC_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the AVRC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_AVRC_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_AVRC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_AVRC_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the MCA layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_MCA_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_MCA_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed > CONFIG_BLE_BLUEDROID_MCA_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_MCA_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_MCA_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_MCA_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed > CONFIG_BLE_BLUEDROID_MCA_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_MCA_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_MCA_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_MCA_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_MCA_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed > CONFIG_BLE_BLUEDROID_MCA_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_MCA_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_MCA_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_MCA_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_MCA_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed > CONFIG_BLE_BLUEDROID_MCA_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_MCA_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_MCA_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_MCA_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_MCA_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the MCA layer log tag to be compressed > CONFIG_BLE_BLUEDROID_MCA_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_MCA_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_MCA_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the HIDH layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_HIDH_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDH_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDH_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDH_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDH_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDH_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDH_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDH_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDH_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDH_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDH_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDH_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDH_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDH_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_HIDH_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDH_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDH_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDH_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDH_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_HIDH_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDH_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDH layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDH_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDH_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDH_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the HIDD layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_HIDD_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDD_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDD_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDD_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDD_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDD_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDD_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDD_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDD_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDD_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDD_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDD_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDD_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDD_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_HIDD_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDD_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDD_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDD_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDD_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_HIDD_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDD_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDD_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDD_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDD_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_HIDD_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_HIDD_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the HIDD layer log tag to be compressed > CONFIG_BLE_BLUEDROID_HIDD_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_HIDD_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_HIDD_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the BTIF layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_BTIF_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTIF_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTIF_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTIF_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTIF_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTIF_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTIF_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTIF_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTIF_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTIF_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTIF_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTIF_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTIF_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTIF_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTIF_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTIF_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTIF_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTIF_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTIF_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTIF_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTIF_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTIF_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTIF_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTIF_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTIF_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTIF_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTIF layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTIF_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTIF_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTIF_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the BTC layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_BTC_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTC_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTC_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTC_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTC_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTC_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTC_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTC_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTC_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTC_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTC_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTC_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTC_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTC_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTC_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTC_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTC_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTC_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTC_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTC_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BTC_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BTC_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BTC layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BTC_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BTC_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BTC_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the OSI layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_OSI_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_OSI_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_OSI_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_OSI_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_OSI_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_OSI_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_OSI_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_OSI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_OSI_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_OSI_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_OSI_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_OSI_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_OSI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_OSI_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_OSI_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_OSI_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_OSI_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_OSI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_OSI_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_OSI_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_OSI_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_OSI_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_OSI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_OSI_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_OSI_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_OSI_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the OSI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_OSI_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_OSI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_OSI_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Select the BLUFI layer log tag to be compressed
Contains:
CONFIG_BLE_BLUEDROID_BLUFI_ERROR_LOG_COMPRESSION
Compress error log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed
The error log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BLUFI_ERROR_LOG_PRESERVE
Keep the original error log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BLUFI_ERROR_LOG_COMPRESSION
When this option is enabled, the log data will be output through both the compressed log interface and the original UART interface at the same time, meaning that the log statements will appear on both paths. However, please note that this dual-output approach introduces additional code and string constants, which will increase the size of the firmware binary file. When this option is disabled, the logs will no longer be printed through the original UART output path; instead, they will only be output through the compressed log interface. As the code and strings related to the original UART output are omitted, the size of the firmware binary file can be effectively reduced.
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BLUFI_ERROR_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BLUFI_WARNING_LOG_COMPRESSION
Compress warning log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed
The warning log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BLUFI_WARNING_LOG_PRESERVE
Keep the original warning log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BLUFI_WARNING_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BLUFI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BLUFI_WARNING_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BLUFI_API_LOG_COMPRESSION
Compress api log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed
The api log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BLUFI_API_LOG_PRESERVE
Keep the original api log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BLUFI_API_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BLUFI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BLUFI_API_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BLUFI_EVENT_LOG_COMPRESSION
Compress event log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed
The event log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BLUFI_EVENT_LOG_PRESERVE
Keep the original event log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BLUFI_EVENT_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BLUFI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BLUFI_EVENT_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BLUFI_DEBUG_LOG_COMPRESSION
Compress debug log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed
The debug log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BLUFI_DEBUG_LOG_PRESERVE
Keep the original debug log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BLUFI_DEBUG_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BLUFI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BLUFI_DEBUG_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_BLUEDROID_BLUFI_VERBOSE_LOG_COMPRESSION
Compress verbose log of Bluedroid host
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed
The verbose log in the Bluedroid host component will be compressed
- Symbol can be set when:
CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Enabled
CONFIG_BLE_BLUEDROID_BLUFI_VERBOSE_LOG_PRESERVE
Keep the original verbose log statement
Found in: Component config > Bluetooth > Common Options > BT Logs > CONFIG_BLE_LOG_ENABLED > Settings of BLE Log Compression > CONFIG_BLE_COMPRESSED_LOG_ENABLE > CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE > Select the BLUFI layer log tag to be compressed > CONFIG_BLE_BLUEDROID_BLUFI_VERBOSE_LOG_COMPRESSION
Please refer to the help information in BLE_BLUEDROID_BLUFI_ERROR_LOG_PRESERVE
- Symbol can be set when:
CONFIG_BLE_BLUEDROID_BLUFI_VERBOSE_LOG_COMPRESSION is enabled && CONFIG_BLE_HOST_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BLE_COMPRESSED_LOG_ENABLE is enabled && CONFIG_BLE_LOG_ENABLED is enabled
- Default value:
Disabled
Legacy SPI Log Output (Deprecated - use BT Log Async Output instead)
Contains:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
Output ble logs to SPI bus (Experimental)
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead)
Output ble logs to SPI bus
- Symbol can be set when:
CONFIG_BLE_LOG_ENABLED is disabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_LE_CONTROLLER_LOG_SPI_OUT_ENABLED
CONFIG_BT_BLE_LOG_SPI_OUT_UL_TASK_BUF_SIZE
SPI transaction buffer size for upper layer task logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
SPI transaction buffer size for upper layer task logs. There will be 2 SPI DMA buffers with the same size.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
512
CONFIG_BT_BLE_LOG_SPI_OUT_HCI_ENABLED
Enable HCI log output to SPI
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
Enable logging of HCI packets to the SPI bus when BLE SPI log output is enabled.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_LOG_SPI_OUT_HCI_BUF_SIZE
SPI transaction buffer size for HCI logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_HCI_ENABLED
SPI transaction buffer size for HCI logs. There will be 2 SPI DMA buffers with the same size.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_HCI_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1024
CONFIG_BT_BLE_LOG_SPI_OUT_HCI_TASK_CNT
HCI task count
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_HCI_ENABLED
HCI task count
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_HCI_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1
CONFIG_BT_BLE_LOG_SPI_OUT_HOST_ENABLED
Enable Host log output to SPI
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
This configuration applies to the logs of both Bluedroid Host and NimBLE Host. When BLE SPI log output is enabled, this option allows host logs to be transmitted via SPI.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_LOG_SPI_OUT_HOST_BUF_SIZE
SPI transaction buffer size for host logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_HOST_ENABLED
SPI transaction buffer size for host logs. There will be 2 SPI DMA buffers with the same size.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_HOST_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1024
CONFIG_BT_BLE_LOG_SPI_OUT_HOST_TASK_CNT
Host task count
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_HOST_ENABLED
Host task count.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_HOST_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
2
CONFIG_BT_BLE_LOG_SPI_OUT_LL_ENABLED
Enable Controller log output to SPI
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
Enable controller log output to SPI bus.
- Symbol can be set when:
CONFIG_BT_LE_CONTROLLER_LOG_SPI_OUT_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_LOG_SPI_OUT_LL_TASK_BUF_SIZE
SPI transaction buffer size for lower layer task logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_LL_ENABLED
SPI transaction buffer size for lower layer task logs. There will be 2 SPI DMA buffers with the same size.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_LL_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1024
CONFIG_BT_BLE_LOG_SPI_OUT_LL_ISR_BUF_SIZE
SPI transaction buffer size for lower layer ISR logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_LL_ENABLED
SPI transaction buffer size for lower layer ISR logs. There will be 2 SPI DMA buffers with the same size.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_LL_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
512
CONFIG_BT_BLE_LOG_SPI_OUT_LL_HCI_BUF_SIZE
SPI transaction buffer size for lower layer HCI logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_LL_ENABLED
SPI transaction buffer size for upper layer HCI logs. There will be 2 SPI DMA buffers with the same size
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_LL_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
512
CONFIG_BT_BLE_LOG_SPI_OUT_MOSI_IO_NUM
GPIO number of SPI MOSI
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
GPIO number of SPI MOSI
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
0
CONFIG_BT_BLE_LOG_SPI_OUT_SCLK_IO_NUM
GPIO number of SPI SCLK
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
GPIO number of SPI SCLK
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1
CONFIG_BT_BLE_LOG_SPI_OUT_CS_IO_NUM
GPIO number of SPI CS
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
GPIO number of SPI CS
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
2
CONFIG_BT_BLE_LOG_SPI_OUT_TS_SYNC_ENABLED
Enable ble log & logic analyzer log time sync
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
Enable ble log & logic analyzer log time sync
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_LOG_SPI_OUT_SYNC_IO_NUM
GPIO number of SYNC IO
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_TS_SYNC_ENABLED
GPIO number of SYNC IO
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_TS_SYNC_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
3
CONFIG_BT_BLE_LOG_SPI_OUT_FLUSH_TIMER_ENABLED
Enable periodic buffer flush out
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
Enable periodic buffer flush out Not recommended when SPI receiver is unavailable
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_LOG_SPI_OUT_FLUSH_TIMEOUT
Buffer flush out period in unit of ms
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_FLUSH_TIMER_ENABLED
Buffer flush out period in unit of ms
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_FLUSH_TIMER_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1000
CONFIG_BT_BLE_LOG_SPI_OUT_LE_AUDIO_ENABLED
Enable LE Audio log output to SPI
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
Enable LE Audio log output to SPI
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_LOG_SPI_OUT_LE_AUDIO_BUF_SIZE
SPI transaction buffer size for LE Audio logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_LE_AUDIO_ENABLED
SPI transaction buffer size for LE Audio logs. There will be 2 SPI DMA buffers with the same size.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_LE_AUDIO_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1024
CONFIG_BT_BLE_LOG_SPI_OUT_LE_AUDIO_TASK_CNT
LE audio task count
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_LE_AUDIO_ENABLED
LE audio task count
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_LE_AUDIO_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1
CONFIG_BT_BLE_LOG_SPI_OUT_MESH_ENABLED
Enable BLE mesh log output to SPI
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED
Enable BLE mesh log output to SPI
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_LOG_SPI_OUT_MESH_BUF_SIZE
SPI transaction buffer size for BLE mesh logs
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_MESH_ENABLED
SPI transaction buffer size for BLE mesh logs. There will be 2 SPI DMA buffers with the same size.
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_MESH_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
1024
CONFIG_BT_BLE_LOG_SPI_OUT_MESH_TASK_CNT
Mesh task count
Found in: Component config > Bluetooth > Common Options > BT Logs > Legacy SPI Log Output (Deprecated - use BT Log Async Output instead) > CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED > CONFIG_BT_BLE_LOG_SPI_OUT_MESH_ENABLED
Mesh task count
- Symbol can be set when:
CONFIG_BT_BLE_LOG_SPI_OUT_MESH_ENABLED is enabled && CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is enabled
- Default value:
3
CONFIG_BT_LE_USED_MEM_STATISTICS_ENABLED
Enable used memory statistics
Found in: Component config > Bluetooth > Common Options
Used in internal tests only. Enable used memory statistics.
- Default value:
Disabled
Bluedroid Options
Contains:
CONFIG_BT_BTC_TASK_STACK_SIZE
Bluetooth event (callback to application) task stack size
Found in: Component config > Bluetooth > Bluedroid Options
This select btc task stack size
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
3072
CONFIG_BT_BTU_TASK_STACK_SIZE
Bluetooth Bluedroid Host Stack task stack size
Found in: Component config > Bluetooth > Bluedroid Options
This select btu task stack size
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
4352
CONFIG_BT_BLUEDROID_ESP_COEX_VSC
Enable Espressif Vendor-specific HCI commands for coexist status configuration
Found in: Component config > Bluetooth > Bluedroid Options
Enable Espressif Vendor-specific HCI commands for coexist status configuration
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled if CONFIG_ESP_COEX_SW_COEXIST_ENABLE is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled
Disabled
CONFIG_BT_CLASSIC_ENABLED
Classic Bluetooth
Found in: Component config > Bluetooth > Bluedroid Options
For now this option needs "SMP_ENABLE" to be set to yes
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_CLASSIC_MAX_RECONNECT_ON_COLLISION
Maximum number of reconnection attempts in case of collision
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
The maximum number of reconnection attempts when encountering rejection of connection request with error code 0x0B(Connection Already Exists) from peer device
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
5
CONFIG_BT_CLASSIC_ENABLE_POWER_CTRL_VSC
Enable Espressif Vendor-specific HCI commands for power control of Classic Bluetooth
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
Enable Espressif Vendor-specific HCI commands for power control of Classic Bluetooth
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_ENC_KEY_SIZE_CTRL_ENABLED
configure encryption key size
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This chooses the support status of configuring encryption key size
Available options:
Supported by standard HCI command (CONFIG_BT_ENC_KEY_SIZE_CTRL_STD)
Supported by Vendor-specific HCI command (CONFIG_BT_ENC_KEY_SIZE_CTRL_VSC)
Not supported (CONFIG_BT_ENC_KEY_SIZE_CTRL_NONE)
CONFIG_BT_CLASSIC_BQB_ENABLED
Host Qualitifcation support for Classic Bluetooth
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This enables functionalities of Host qualification for Classic Bluetooth.
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_A2DP_ENABLE
A2DP
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
Advanced Audio Distribution Profile
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_AVRCP_ENABLED
CONFIG_BT_A2DP_USE_EXTERNAL_CODEC
Use External Codec for A2DP
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_A2DP_ENABLE
If enable, user shall register audio codec capability to A2DP and encode/decode audio data in application layer. The internal codec in A2DP will be remove in the future, it is recommend to use external codec for new design.
- Symbol can be set when:
CONFIG_BT_A2DP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_A2DP_CODEC_AAC_ENABLED
A2DP AAC codec
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_A2DP_ENABLE > CONFIG_BT_A2DP_USE_EXTERNAL_CODEC
Enable support for A2DP AAC codec when using an external codec. Currently, only the A2DP sink supports AAC codec.
- Symbol can be set when:
CONFIG_BT_A2DP_USE_EXTERNAL_CODEC is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_A2DP_SEP_NUM_MAX
Maximum number of Stream End Points that can be registered for A2DP
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_A2DP_ENABLE > CONFIG_BT_A2DP_USE_EXTERNAL_CODEC
The maximum number of Stream End Points (SEPs) that can be registered for A2DP. The default value is 2. If you need to register more SEPs, you can increase this value.
- Symbol can be set when:
CONFIG_BT_A2DP_USE_EXTERNAL_CODEC is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 3
- Default value:
2 if CONFIG_BT_A2DP_CODEC_AAC_ENABLED is enabled
1
AVRCP Features
Contains:
CONFIG_BT_AVRCP_CT_COVER_ART_ENABLED
AVRCP CT Cover Art
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_A2DP_ENABLE > AVRCP Features
This enable Cover Art feature for AVRCP CT role, Cover Art requires AVRCP version 1.6 or higher. Therefore, if the Cover Art feature is enabled, AVRCP version will set to 1.6, otherwise, it will remain at 1.5
- Symbol can be set when:
CONFIG_BT_AVRCP_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_GOEPC_ENABLED
CONFIG_BT_SPP_ENABLED
SPP
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This enables the Serial Port Profile
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_PAN_ENABLED
PAN (Personal Area Networking)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This enables the Personal Area Networking Profile
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_L2CAP_ENABLED
BT L2CAP
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This enables the Logical Link Control and Adaptation Layer Protocol. Only supported classic bluetooth.
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_SDP_COMMON_ENABLED
BT SDP COMMON
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This enables common SDP operation, such as SDP record creation and deletion.
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled if CONFIG_BT_L2CAP_ENABLED is enabled
Disabled
CONFIG_BT_SDP_PAD_LEN
One or more BT SDP attributes total allocated length (bytes)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This is the total size of all SDP attributes allowed. Any attributes that exceed this size are truncated. The default value is 300.
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from to 1024
- Default value:
300
CONFIG_BT_SDP_ATTR_LEN
Single BT SDP attribute allocated length (bytes)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This is the maximum allowed size for a single SDP attribute. Any attributes that exceed this size are truncated. The default value is 300.
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 300 to 1024
- Default value:
300
CONFIG_BT_HFP_ENABLE
Hands Free/Handset Profile
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
Hands Free Unit and Audio Gateway can be included simultaneously but they cannot run simultaneously due to internal limitations.
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
Contains:
CONFIG_BT_HFP_CLIENT_ENABLE
Hands Free Unit
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HFP_ENABLE
- Symbol can be set when:
CONFIG_BT_HFP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_HFP_AG_ENABLE
Audio Gateway
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HFP_ENABLE
- Symbol can be set when:
CONFIG_BT_HFP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_HFP_AUDIO_DATA_PATH
audio(SCO) data path
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HFP_ENABLE
SCO data path, i.e. HCI or PCM. This option is set using API "esp_bredr_sco_datapath_set" in Bluetooth host. Default SCO data path can also be set in Bluetooth Controller.
Available options:
PCM (CONFIG_BT_HFP_AUDIO_DATA_PATH_PCM)
HCI (CONFIG_BT_HFP_AUDIO_DATA_PATH_HCI)
CONFIG_BT_HFP_USE_EXTERNAL_CODEC
Use External Codec for HFP
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HFP_ENABLE
If enable, user shall encode/decode audio data in application layer. The internal codec in HFP will be remove in the future, it is recommend to use external codec for new design.
- Symbol can be set when:
CONFIG_BT_HFP_ENABLE is enabled && CONFIG_BT_HFP_AUDIO_DATA_PATH_HCI is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_HFP_WBS_ENABLE
Wideband Speech
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HFP_ENABLE
This enables Wideband Speech. Should disable it when SCO data path is PCM. Otherwise there will be no data transmitted via GPIOs.
- Symbol can be set when:
CONFIG_BT_HFP_ENABLE is enabled && CONFIG_BT_HFP_AUDIO_DATA_PATH_HCI is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_HFP_LC3_ENABLE
Super Wideband Speech (LC3-SWB)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HFP_ENABLE > CONFIG_BT_HFP_WBS_ENABLE
Enable HFP 1.9 LC3-SWB codec negotiation support. Requires Wideband Speech (codec negotiation) to be enabled.
- Symbol can be set when:
CONFIG_BT_HFP_ENABLE is enabled && CONFIG_BT_HFP_WBS_ENABLE is enabled && CONFIG_BT_HFP_USE_EXTERNAL_CODEC is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_HID_ENABLED
Classic BT HID
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This enables the BT HID functionalities
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
Contains:
CONFIG_BT_HID_HOST_ENABLED
Classic BT HID Host
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HID_ENABLED
This enables the BT HID Host
- Symbol can be set when:
CONFIG_BT_HID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_HID_DEVICE_ENABLED
Classic BT HID Device
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HID_ENABLED
This enables the BT HID Device
- Symbol can be set when:
CONFIG_BT_HID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
CONFIG_BT_HID_REMOVE_DEVICE_BONDING_ENABLED
Remove Device Bonding Information when HID Virtual Cable Unplugging
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_HID_ENABLED
This enables the BT HID to remove device bonding information when virtual cable unplugging, removing device bonding information is optional in HID 1.0 but mandatory in HID 1.1
- Symbol can be set when:
CONFIG_BT_HID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_PBAC_ENABLED
PBAP Client
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED
This enables the Phone Book Access Profile Client
- Symbol can be set when:
CONFIG_BT_CLASSIC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_GOEPC_ENABLED
Contains:
CONFIG_BT_PBAC_SUPPORTED_FEAT
PBAP Client Supported Features
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_PBAC_ENABLED
Set the supported features of PBAP Client, the default value is supported all features
- Symbol can be set when:
CONFIG_BT_PBAC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
"0x000003FF"
CONFIG_BT_PBAC_PREFERRED_MTU
PBAP Client Preferred MTU
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_CLASSIC_ENABLED > CONFIG_BT_PBAC_ENABLED
MTU is limited by the max MTU of transport layer, and should not be smaller than 255, but can be set to zero to use a default MTU of transport layer
- Symbol can be set when:
CONFIG_BT_PBAC_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
0
CONFIG_BT_BLE_ENABLED
Bluetooth Low Energy
Found in: Component config > Bluetooth > Bluedroid Options
This enables Bluetooth Low Energy
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_GATTS_ENABLE
Include GATT server module(GATTS)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED
This option can be disabled when the app work only on gatt client mode
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
Contains:
CONFIG_BT_GATTS_PPCP_CHAR_GAP
Enable Peripheral Preferred Connection Parameters characteristic in GAP service
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
This enables "Peripheral Preferred Connection Parameters" characteristic (UUID: 0x2A04) in GAP service that has connection parameters like min/max connection interval, slave latency and supervision timeout multiplier
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_BLUFI_ENABLE
Include blufi function
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
This option can be close when the app does not require blufi function.
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLUFI_BLE_SMP_ENABLE
Enable BLE SMP support for BluFi
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE > CONFIG_BT_BLE_BLUFI_ENABLE
Enable BLE Security Manager Protocol (SMP) for BluFi. When enabled, BluFi will support BLE pairing and encryption before Wi-Fi provisioning, providing a more secure provisioning process. This feature is only supported with the Bluedroid host.
- Symbol can be set when:
CONFIG_BT_BLE_BLUFI_ENABLE is enabled && CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_GATT_MAX_SR_PROFILES
Max GATT Server Profiles
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
Maximum GATT Server Profiles Count
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 32
- Default value:
8
CONFIG_BT_GATT_MAX_SR_ATTRIBUTES
Max GATT Service Attributes
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
Maximum GATT Service Attributes Count
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 500
- Default value:
100
CONFIG_BT_GATTS_SEND_SERVICE_CHANGE_MODE
GATTS Service Change Mode
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
Service change indication mode for GATT Server.
Available options:
GATTS manually send service change indication (CONFIG_BT_GATTS_SEND_SERVICE_CHANGE_MANUAL)
Manually send service change indication through API esp_ble_gatts_send_service_change_indication()
GATTS automatically send service change indication (CONFIG_BT_GATTS_SEND_SERVICE_CHANGE_AUTO)
Let Bluedroid handle the service change indication internally
CONFIG_BT_GATTS_ROBUST_CACHING_ENABLED
Enable Robust Caching on Server Side
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
This option enables the GATT robust caching feature on the server. if turned on, the Client Supported Features characteristic, Database Hash characteristic, and Server Supported Features characteristic will be included in the GAP SERVICE.
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_GATTS_DEVICE_NAME_WRITABLE
Allow to write device name by GATT clients
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
Enabling this option allows remote GATT clients to write device name
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_GATTS_APPEARANCE_WRITABLE
Allow to write appearance by GATT clients
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
Enabling this option allows remote GATT clients to write appearance
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_GATTS_SECURITY_LEVELS_CHAR
Enable LE GATT Security Levels Characteristic
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
Enable LE GATT Security Levels Characteristic
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_GATTS_KEY_MATERIAL_CHAR
Enable Encrypted Data Key Material Characteristic
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTS_ENABLE
Enable the Encrypted Data Key Material characteristic in GAP service. This characteristic allows advertising data to be decrypted and authenticated using the key material (session key + IV) as defined in Bluetooth Core Specification Version 5.4. The characteristic requires encrypted link to read.
- Symbol can be set when:
CONFIG_BT_GATTS_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_GATTC_ENABLE
Include GATT client module(GATTC)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED
This option can be close when the app work only on gatt server mode
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
Contains:
CONFIG_BT_GATTC_MAX_CACHE_CHAR
Max gattc cache characteristic for discover
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTC_ENABLE
Maximum GATTC cache characteristic count
- Symbol can be set when:
CONFIG_BT_GATTC_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 500
- Default value:
40
CONFIG_BT_GATTC_NOTIF_REG_MAX
Max gattc notify(indication) register number
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTC_ENABLE
Maximum GATTC notify(indication) register number
- Symbol can be set when:
CONFIG_BT_GATTC_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 255
- Default value:
5
CONFIG_BT_GATTC_CACHE_NVS_FLASH
Save gattc cache data to nvs flash
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTC_ENABLE
This select can save gattc cache data to nvs flash
- Symbol can be set when:
CONFIG_BT_GATTC_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_GATTC_CONNECT_RETRY_COUNT
The number of attempts to reconnect if the connection establishment failed
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTC_ENABLE
The number of attempts to reconnect if the connection establishment failed
- Symbol can be set when:
CONFIG_BT_GATTC_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 0 to 255
- Default value:
3
CONFIG_BT_BLE_ESTAB_LINK_CONN_TOUT
Timeout of BLE connection establishment
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_GATTC_ENABLE
Bluetooth Connection establishment maximum time, if connection time exceeds this value, the connection establishment fails, ESP_GATTC_OPEN_EVT or ESP_GATTS_OPEN_EVT is triggered.
- Symbol can be set when:
CONFIG_BT_GATTC_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 60
- Default value:
30
CONFIG_BT_BLE_SMP_ENABLE
Include BLE security module(SMP)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED
This option can be close when the app not used the ble security connect.
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
Contains:
CONFIG_BT_SMP_SLAVE_CON_PARAMS_UPD_ENABLE
Slave enable connection parameters update during pairing
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
In order to reduce the pairing time, slave actively initiates connection parameters update during pairing.
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_SMP_ID_RESET_ENABLE
Reset device identity when all bonding records are deleted
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
There are tracking risks associated with using a fixed or static IRK. If enabled this option, Bluedroid will assign a new randomly-generated IRK when all pairing and bonding records are deleted. This would decrease the ability of a previously paired peer to be used to determine whether a device with which it previously shared an IRK is within range.
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_SMP_BOND_NVS_FLASH
Save SMP bonding keys to nvs flash
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
This select can save SMP bonding keys to nvs flash
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_SMP_HARDENED_REPAIRING
Reject re-pairing that weakens an existing bond
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
Controls whether a peer that is already bonded may replace that bond with a weaker one.
Enabled: when a bond already exists for the peer, a new pairing procedure is refused if it would end up with less MITM protection, without Secure Connections while the stored bond used it, or with a shorter encryption key. The security level announced in a Security Request is also enforced on the pairing that follows it. The link is dropped along with the pairing so that a peer cannot keep retrying with different parameters. The drawback is that a peer which legitimately needs to re-pair at a lower level is refused for good, for instance one whose IO capabilities changed so that Passkey Entry became Just Works. Such a peer has to be unbonded by the application first, using esp_ble_remove_bond_device(). A refusal from this check always keeps the stored bond, even when BT_BLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_CENTRAL or BT_BLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_PERIPHERAL is enabled, so a peer cannot erase the baseline by requesting a downgrade.
Disabled: any peer can replace an existing bond with one at a lower security level, without Secure Connections, or with a shorter encryption key, and no authentication is needed to do so. These are the re-pairing downgrades described by the BLERP paper as V3, V4 and V6. Only choose this if a peer really has to re-pair at a lower level and the application cannot unbond it beforehand.
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_CENTRAL
Remove the stored bond when pairing fails as Central
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
Controls whether the bonding keys kept in NVS are erased when a BLE pairing procedure fails while the local device is the Central (link-layer master) on that connection. A failed encryption attempt is reported through the same authentication complete path and counts as a failure here. This is the role typically used by GATT Client applications.
Enabled: historical Central behaviour and the default, so applications that rely on a failed pairing implicitly unbonding the peer keep working after an upgrade. It also means every peer able to make pairing fail can drop the bond without any authentication, by simply sending a Pairing Failed, by letting the 30 second SMP timeout expire, or by disconnecting in the middle of the procedure. As Central, that implicit unbond is also what recovers when the peer deleted the bond on its side and answers LL_ENC_REQ with KEY_MISSING.
Disabled: the bond survives a failed pairing in the Central role and unbonding becomes an explicit application decision through esp_ble_remove_bond_device(). A stale LTK then makes every following connection fail to encrypt until the application unbonds from the ESP_GAP_BLE_AUTH_CMPL_EVT failure callback, preferably after a few attempts rather than on the first one.
A downgrade refused by BT_BLE_SMP_HARDENED_REPAIRING never erases the bond, regardless of this option.
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_PERIPHERAL
Remove the stored bond when pairing fails as Peripheral
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
Controls whether the bonding keys kept in NVS are erased when a BLE pairing procedure fails while the local device is the Peripheral (link-layer slave) on that connection. A failed encryption attempt is reported through the same authentication complete path and counts as a failure here. This is the role typically used by GATT Server applications.
Disabled (default): the bond survives a failed pairing in the Peripheral role. Unbonding is an explicit application decision through esp_ble_remove_bond_device(). This avoids losing the bond when the user walks away mid-pairing, when the SMP timeout expires, or when a peer sends Pairing Failed. Legitimate re-pairing from a Central that deleted its own bond is still possible through a new Pairing Request, as long as BT_BLE_SMP_HARDENED_REPAIRING does not refuse a downgrade.
Enabled: restores the historical behaviour where any pairing failure as Peripheral erases the NVS bond. Prefer this only if the application depends on that implicit unbond and cannot call esp_ble_remove_bond_device() itself.
A downgrade refused by BT_BLE_SMP_HARDENED_REPAIRING never erases the bond, regardless of this option.
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_SMP_UNBOND_ON_KEY_MISSING
Drop the local LE keys when the peer reports it has no key
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
As Central, an encryption attempt using the stored LTK fails with "PIN or Key Missing" when the peer has deleted the bond on its side. This option controls how the stack reacts to that specific error.
Enabled: the local LE keys are discarded and the link is kept up, so the application can re-pair straight away and recovers without user interaction. The problem is that an impersonating device can report the same error, so a peer can strip the stored security level without any authentication and then re-pair at a weaker level. That is exactly the re-pairing downgrade the BLERP paper describes, which is why this is not the default.
Disabled: the link is dropped and the keys are kept, so no peer can drop the bond by refusing to encrypt. The problem is that the same stale LTK is then used again on every following connection and encryption keeps failing, which never recovers on its own. The application has to call esp_ble_remove_bond_device() from the ESP_GAP_BLE_AUTH_CMPL_EVT failure callback to get out of it.
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_PERIPH_PSEUDO_ADDR_BOND
Peripheral dual local-identity bond isolation (pseudo address)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
Enable Host-internal pseudo address derivation so that one peer phone connecting through two distinct local identities (e.g. Public and a fixed Static Random advertising set) is treated as two independent peers. Each connection gets its own device record, LTK and NVS bond section keyed by pseudo = f(local_identity, peer). The over-the-air and SMP cryptography keep using the real peer and the real local identity; the pseudo address never leaves the Host.
This is intended for BLE 5.0 Extended Advertising peripherals that need simultaneous dual-identity connections with isolated bonds. Requires BT_BLE_50_EXTEND_ADV_EN. When disabled (default) the stack behaves exactly as before.
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_BLE_50_EXTEND_ADV_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_RPA_SUPPORTED
Update RPA to Controller
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_ENABLED > CONFIG_BT_BLE_SMP_ENABLE
This enables controller RPA list function. For ESP32, ESP32 only support network privacy mode. If this option is enabled, ESP32 will only accept advertising packets from peer devices that contain private address, HW will not receive the advertising packets contain identity address after IRK changed. If this option is disabled, address resolution will be performed in the host, so the functions that require controller to resolve address in the white list cannot be used. This option is disabled by default on ESP32, please enable or disable this option according to your own needs.
For other BLE chips, devices support network privacy mode and device privacy mode, users can switch the two modes according to their own needs. So this option is enabled by default.
- Symbol can be set when:
CONFIG_BT_BLE_SMP_ENABLE is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled if CONFIG_BT_CONTROLLER_DISABLED is enabled
Bluedroid debug option
Contains:
CONFIG_BT_BLUEDROID_MEM_DEBUG
Bluedroid memory debug
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid debug option
Bluedroid memory debug
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLUEDROID_MEM_STATS
Bluedroid memory statistics
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid debug option
Enable Bluedroid memory usage statistics
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_MEM_DEBUG is disabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLUEDROID_THREAD_DEBUG
Bluedroid thread debug
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid debug option
Enable Bluedroid thread debug mode. Used to debug whether the thread is blocked and dump information about the thread’s related work queue.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLUEDROID_THREAD_BLOCK_TIME
OSI thread block time (in ms)
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid debug option > CONFIG_BT_BLUEDROID_THREAD_DEBUG
Indicates how long it takes for the thread to execute an item before it is considered blocked.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_THREAD_DEBUG is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
1000
CONFIG_BT_BLUEDROID_THREAD_BLOCK_MSG
OSI thread block message count
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid debug option > CONFIG_BT_BLUEDROID_THREAD_DEBUG
Indicates how many messages are added to the queue while the threadis executing an item before it is considered blocked.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_THREAD_DEBUG is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
50
CONFIG_BT_STACK_NO_LOG
Disable BT debug logs (minimize bin size)
Found in: Component config > Bluetooth > Bluedroid Options
This select can save the rodata code size
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled if CONFIG_BLE_LOG_ENABLED is enabled && CONFIG_BLE_LOG_HOST_LOG is disabled
Disabled
BT DEBUG LOG LEVEL
Contains:
CONFIG_BT_LOG_HCI_TRACE_LEVEL
HCI layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for HCI layer
Available options:
NONE (CONFIG_BT_LOG_HCI_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_HCI_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_HCI_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_HCI_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_HCI_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_HCI_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_HCI_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_BTM_TRACE_LEVEL
BTM layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for BTM layer
Available options:
NONE (CONFIG_BT_LOG_BTM_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_BTM_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_BTM_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_BTM_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_BTM_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_BTM_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_BTM_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_L2CAP_TRACE_LEVEL
L2CAP layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for L2CAP layer
Available options:
NONE (CONFIG_BT_LOG_L2CAP_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_L2CAP_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_L2CAP_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_L2CAP_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_L2CAP_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_L2CAP_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_L2CAP_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL
RFCOMM layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for RFCOMM layer
Available options:
NONE (CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_SDP_TRACE_LEVEL
SDP layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for SDP layer
Available options:
NONE (CONFIG_BT_LOG_SDP_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_SDP_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_SDP_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_SDP_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_SDP_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_SDP_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_SDP_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_GAP_TRACE_LEVEL
GAP layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for GAP layer
Available options:
NONE (CONFIG_BT_LOG_GAP_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_GAP_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_GAP_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_GAP_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_GAP_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_GAP_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_GAP_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_BNEP_TRACE_LEVEL
BNEP layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for BNEP layer
Available options:
NONE (CONFIG_BT_LOG_BNEP_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_BNEP_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_BNEP_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_BNEP_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_BNEP_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_BNEP_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_BNEP_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_PAN_TRACE_LEVEL
PAN layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for PAN layer
Available options:
NONE (CONFIG_BT_LOG_PAN_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_PAN_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_PAN_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_PAN_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_PAN_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_PAN_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_PAN_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_A2D_TRACE_LEVEL
A2D layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for A2D layer
Available options:
NONE (CONFIG_BT_LOG_A2D_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_A2D_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_A2D_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_A2D_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_A2D_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_A2D_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_A2D_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_AVDT_TRACE_LEVEL
AVDT layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for AVDT layer
Available options:
NONE (CONFIG_BT_LOG_AVDT_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_AVDT_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_AVDT_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_AVDT_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_AVDT_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_AVDT_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_AVDT_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_AVCT_TRACE_LEVEL
AVCT layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for AVCT layer
Available options:
NONE (CONFIG_BT_LOG_AVCT_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_AVCT_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_AVCT_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_AVCT_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_AVCT_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_AVCT_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_AVCT_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_AVRC_TRACE_LEVEL
AVRC layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for AVRC layer
Available options:
NONE (CONFIG_BT_LOG_AVRC_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_AVRC_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_AVRC_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_AVRC_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_AVRC_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_AVRC_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_AVRC_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_MCA_TRACE_LEVEL
MCA layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for MCA layer
Available options:
NONE (CONFIG_BT_LOG_MCA_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_MCA_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_MCA_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_MCA_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_MCA_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_MCA_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_MCA_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_HID_TRACE_LEVEL
HID layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for HID layer
Available options:
NONE (CONFIG_BT_LOG_HID_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_HID_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_HID_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_HID_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_HID_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_HID_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_HID_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_APPL_TRACE_LEVEL
APPL layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for APPL layer
Available options:
NONE (CONFIG_BT_LOG_APPL_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_APPL_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_APPL_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_APPL_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_APPL_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_APPL_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_APPL_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_GATT_TRACE_LEVEL
GATT layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for GATT layer
Available options:
NONE (CONFIG_BT_LOG_GATT_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_GATT_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_GATT_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_GATT_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_GATT_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_GATT_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_GATT_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_SMP_TRACE_LEVEL
SMP layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for SMP layer
Available options:
NONE (CONFIG_BT_LOG_SMP_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_SMP_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_SMP_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_SMP_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_SMP_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_SMP_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_SMP_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_BTIF_TRACE_LEVEL
BTIF layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for BTIF layer
Available options:
NONE (CONFIG_BT_LOG_BTIF_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_BTIF_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_BTIF_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_BTIF_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_BTIF_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_BTIF_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_BTIF_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_BTC_TRACE_LEVEL
BTC layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for BTC layer
Available options:
NONE (CONFIG_BT_LOG_BTC_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_BTC_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_BTC_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_BTC_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_BTC_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_BTC_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_BTC_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_OSI_TRACE_LEVEL
OSI layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for OSI layer
Available options:
NONE (CONFIG_BT_LOG_OSI_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_OSI_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_OSI_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_OSI_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_OSI_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_OSI_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_OSI_TRACE_LEVEL_VERBOSE)
CONFIG_BT_LOG_BLUFI_TRACE_LEVEL
BLUFI layer
Found in: Component config > Bluetooth > Bluedroid Options > BT DEBUG LOG LEVEL
Define BT trace level for BLUFI layer
Available options:
NONE (CONFIG_BT_LOG_BLUFI_TRACE_LEVEL_NONE)
ERROR (CONFIG_BT_LOG_BLUFI_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BT_LOG_BLUFI_TRACE_LEVEL_WARNING)
API (CONFIG_BT_LOG_BLUFI_TRACE_LEVEL_API)
EVENT (CONFIG_BT_LOG_BLUFI_TRACE_LEVEL_EVENT)
DEBUG (CONFIG_BT_LOG_BLUFI_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BT_LOG_BLUFI_TRACE_LEVEL_VERBOSE)
CONFIG_BT_ACL_CONNECTIONS
BT/BLE MAX ACL CONNECTIONS
Found in: Component config > Bluetooth > Bluedroid Options
Maximum BT/BLE connection count. The ESP32-C3/S3 chip supports a maximum of 10 instances, including ADV, SCAN and connections. The ESP32-C3/S3 chip can connect up to 9 devices if ADV or SCAN uses only one. If ADV and SCAN are both used, The ESP32-C3/S3 chip is connected to a maximum of 8 devices. Because Bluetooth cannot reclaim used instances once ADV or SCAN is used.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 50
- Default value:
4
CONFIG_BT_MULTI_CONNECTION_ENBALE
Enable BLE multi-connections
Found in: Component config > Bluetooth > Bluedroid Options
Enable this option if there are multiple connections
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST
BT/BLE will first malloc the memory from the PSRAM
Found in: Component config > Bluetooth > Bluedroid Options
This select can save the internal RAM if there have the PSRAM
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLUEDROID_TASK_STACK_IN_EXT_MEM
Place BT task stack in external memory
Found in: Component config > Bluetooth > Bluedroid Options
Common prerequisites for placing Bluedroid host task stacks in PSRAM.
- Symbol can be set when:
CONFIG_FREERTOS_TASK_CREATE_ALLOW_EXT_MEM is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLUEDROID_BTU_TASK_STACK_IN_EXT_MEM
Place BTU task stack in external memory
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLUEDROID_TASK_STACK_IN_EXT_MEM
Allocate BTU_TASK stack from external SPIRAM using static task allocation. TCB remains in internal DRAM.
BTU does not perform NVS operations directly.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_TASK_STACK_IN_EXT_MEM is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLUEDROID_HCI_TASK_STACK_IN_EXT_MEM
Place HCI host task stack in external memory
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLUEDROID_TASK_STACK_IN_EXT_MEM
Allocate HCI host task (hciT) stack from external SPIRAM using static task allocation. TCB remains in internal DRAM.
HCI does not perform NVS operations.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_TASK_STACK_IN_EXT_MEM is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY
Use dynamic memory allocation in BT/BLE stack
Found in: Component config > Bluetooth > Bluedroid Options
This select can make the allocation of memory will become more flexible
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_SMP_MAX_BONDS
BT/BLE maximum bond device count
Found in: Component config > Bluetooth > Bluedroid Options
The number of security records for peer devices.
- Symbol can be set when:
CONFIG_BT_SMP_ENABLE is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 32
- Default value:
15
CONFIG_BT_BLE_ACT_SCAN_REP_ADV_SCAN
Report adv data and scan response individually when BLE active scan
Found in: Component config > Bluetooth > Bluedroid Options
Originally, when doing BLE active scan, Bluedroid will not report adv to application layer until receive scan response. This option is used to disable the behavior. When enable this option, Bluedroid will report adv data or scan response to application layer immediately.
# Memory reserved at start of DRAM for Bluetooth stack
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_MAX_DEVICE_NAME_LEN
length of bluetooth device name
Found in: Component config > Bluetooth > Bluedroid Options
Bluetooth Device name length shall be no larger than 248 octets, If the broadcast data cannot contain the complete device name, then only the shortname will be displayed, the rest parts that can't fit in will be truncated.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 32 to 248
- Default value:
32
CONFIG_BT_BLE_RPA_TIMEOUT
Timeout of resolvable private address
Found in: Component config > Bluetooth > Bluedroid Options
This set RPA timeout of Controller and Host. Default is 900 s (15 minutes). Range is 1 s to 1 hour (3600 s).
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 3600
- Default value:
900
CONFIG_BT_BLE_50_FEATURES_SUPPORTED
Enable BLE 5.0 and above features(please disable BLE 4.2 if enable BLE 5.0)
Found in: Component config > Bluetooth > Bluedroid Options
Enabling this option activates BLE 5.0 features. This option is universally supported in chips that support BLE, except for ESP32. BLE 4.2 and BLE 5.0 cannot be used simultaneously.
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_CONTROLLER_ENABLED is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_USE_BLE_50 if CONFIG_BT_BLUEDROID_ENABLED is enabled
Contains:
CONFIG_BT_BLE_50_EXTEND_ADV_EN
Enable BLE extend advertising
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_50_FEATURES_SUPPORTED
This enables BLE extend advertising
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_50_PERIODIC_ADV_EN
Enable BLE periodic advertising
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_50_FEATURES_SUPPORTED > CONFIG_BT_BLE_50_EXTEND_ADV_EN
This enables BLE periodic advertising
- Symbol can be set when:
CONFIG_BT_BLE_50_EXTEND_ADV_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_50_EXTEND_SCAN_EN
Enable BLE extend scan
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_50_FEATURES_SUPPORTED
This enables BLE extend scan
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_50_EXTEND_SYNC_EN
Enable BLE periodic advertising sync
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_50_FEATURES_SUPPORTED > CONFIG_BT_BLE_50_EXTEND_SCAN_EN
This enables BLE periodic advertising sync
- Symbol can be set when:
CONFIG_BT_BLE_50_EXTEND_SCAN_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_50_DTM_TEST_EN
Enable BLE 5.0 DTM test
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_50_FEATURES_SUPPORTED
This enables BLE 5.0 direct test mode
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_FEAT_PERIODIC_ADV_SYNC_TRANSFER
Enable BLE periodic advertising sync transfer feature
Found in: Component config > Bluetooth > Bluedroid Options
This enables BLE periodic advertising sync transfer feature
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLE_50_PERIODIC_ADV_EN is enabled && (CONFIG_BT_CONTROLLER_ENABLED is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_PERIODIC_ADV_ENH
Enable periodic adv enhancements(adi support)
Found in: Component config > Bluetooth > Bluedroid Options
Enable the periodic advertising enhancements
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLE_50_PERIODIC_ADV_EN is enabled && (CONFIG_BT_CONTROLLER_ENABLED is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_CREATE_SYNC_ENH
Enable create sync enhancements(reporting disable and duplicate filtering enable support)
Found in: Component config > Bluetooth > Bluedroid Options
Enable the create sync enhancements
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLE_50_EXTEND_SYNC_EN is enabled && (CONFIG_BT_CONTROLLER_ENABLED is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_CREATE_SYNC_RETRY_MAX
Maximum retry count for periodic advertising create sync
Found in: Component config > Bluetooth > Bluedroid Options
Set the maximum retry count when periodic advertising create sync fails with error code 0x3E (Connection Failed to be Established). Set to 0 to disable retry. Default is 3.
- Symbol can be set when:
CONFIG_BT_BLE_50_EXTEND_SYNC_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 0 to 16
- Default value:
3
CONFIG_BT_BLE_FEAT_ISO_EN
Enable BLE 5.2 iso feature
Found in: Component config > Bluetooth > Bluedroid Options
Enable BLE 5.2 iso
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
Contains:
CONFIG_BT_BLE_FEAT_ISO_60_EN
Enable ISO v6.0 feature
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_ISO_EN
Enable iso 6.0 feature
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_ISO_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_ISO_BIG_BROCASTER
Enable BLE iso BIG broadcaster
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_ISO_EN
Enable BLE 5.2 BIG broadcaster
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_ISO_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_FEAT_ISO_BIG_SYNCER
Enable BLE iso BIG syncer
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_ISO_EN
Enable BLE 5.2 BIG syncer
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_ISO_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_ISO_BIS_MAX_COUNT
Maximum bis count
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_ISO_EN
Enable BLE 5.2 CIG peripheral
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_ISO_EN is enabled && (CONFIG_BT_BLE_FEAT_ISO_BIG_BROCASTER is enabled || CONFIG_BT_BLE_FEAT_ISO_BIG_SYNCER is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 31
- Default value:
2
CONFIG_BT_BLE_FEAT_ISO_CIG_CENTRAL
Enable BLE iso CIG central
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_ISO_EN
Enable BLE 5.2 CIG central
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_ISO_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_FEAT_ISO_CIG_PERIPHERAL
Enable BLE iso CIG peripheral
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_ISO_EN
Enable BLE 5.2 CIG peripheral
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_ISO_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_ISO_CIS_MAX_COUNT
Maximum cis count
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_ISO_EN
Enable BLE 5.2 CIG peripheral
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_ISO_EN is enabled && (CONFIG_BT_BLE_FEAT_ISO_CIG_CENTRAL is enabled || CONFIG_BT_BLE_FEAT_ISO_CIG_PERIPHERAL is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 31
- Default value:
2
CONFIG_BT_BLE_ISO_FLOW_CONTROL
Select ISO flow control type
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_ISO_EN
Select ISO flow control type
Available options:
ISO standard flow control (CONFIG_BT_BLE_ISO_STD_FLOW_CTRL)
Enable ISO standard flow control
ISO non-standard flow control (CONFIG_BT_BLE_ISO_NON_STD_FLOW_CTRL)
Enable ISO non-standard flow control
CONFIG_BT_BLE_FEAT_CTE_EN
Enable BLE CTE feature
Found in: Component config > Bluetooth > Bluedroid Options
Enable BLE 5.1 CTE
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && (CONFIG_BT_CONTROLLER_ENABLED is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
Contains:
CONFIG_BT_BLE_FEAT_CTE_CONNECTIONLESS_EN
Enable BLE CTE connectionless feature
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_CTE_EN
Transmission of CTE in periodic advertising
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_CTE_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_FEAT_CTE_CONNECTION_EN
Enable BLE CTE connection feature
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_CTE_EN
Transmission of CTE by ACL connection
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_CTE_EN is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_FEAT_POWER_CONTROL
Enable BLE power control feature
Found in: Component config > Bluetooth > Bluedroid Options
Enable BLE power control feature
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && (CONFIG_BT_CONTROLLER_ENABLED is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_CONN_SUBRATING
Enable BLE connection subrating feature
Found in: Component config > Bluetooth > Bluedroid Options
Enable BLE connection subrating feature
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && (CONFIG_BT_CONTROLLER_ENABLED is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_PAWR_EN
Enable Periodic Advertisement with Response(PAwR)
Found in: Component config > Bluetooth > Bluedroid Options
Enable BLE Periodic Advertisement with Response(PAwR) feature
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && (CONFIG_BT_CONTROLLER_ENABLED is enabled || CONFIG_BT_CONTROLLER_DISABLED is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_ADV_CODING_SELECTION
Enable Advertising Coding Selection
Found in: Component config > Bluetooth > Bluedroid Options
Enable Advertising Coding Selection
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_CHANNEL_SOUNDING
Enable BLE channel sounding
Found in: Component config > Bluetooth > Bluedroid Options
Enable BLE channel sounding. CS Security Requirements (Core 6.3) is configured separately via BT_BLE_FEAT_CS_SECURITY_REQUIREMENTS.
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_CS_SECURITY_REQUIREMENTS
Enable BLE CS Security Requirements (Core 6.3)
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_FEAT_CHANNEL_SOUNDING
Enable Channel Sounding security requirements HCI commands (Bluetooth Core 6.3). Supports LE CS Set Security Requirements (0x00A7) and LE CS Set Default Security Requirements (0x00A8). Use esp_ble_cs_set_security_requirements() and esp_ble_cs_set_default_security_requirements().
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_CHANNEL_SOUNDING is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_ADV_MONITOR
Enable BLE Advertising Monitor (LE Monitor Advertisement)
Found in: Component config > Bluetooth > Bluedroid Options
Enable LE Monitor Advertisement feature (Bluetooth Core 6.0). Allows the host to add devices to a monitor list and receive reports when the controller detects advertising from those devices (e.g. RSSI threshold).
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_DBAF
Enable BLE Decision-Based Advertising Filtering (DBAF)
Found in: Component config > Bluetooth > Bluedroid Options
Enable Decision-Based Advertising Filtering (Bluetooth Core 6.0). Supports LE Set Decision Data and LE Set Decision Instructions HCI commands.
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_FRAME_SPACE_UPDATE
Enable BLE Frame Space Update
Found in: Component config > Bluetooth > Bluedroid Options
Enable Frame Space Update feature (Bluetooth Core 6.0).
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_LL_EXT_FEAT
Enable BLE LL Extended Feature Set
Found in: Component config > Bluetooth > Bluedroid Options
Enable LL Extended Feature Set (Bluetooth Core 6.0). Supports LE Read All Local/Remote Supported Features HCI commands.
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_SHORTER_CONN_INTERVALS
Enable BLE Shorter Connection Intervals (Core 6.2)
Found in: Component config > Bluetooth > Bluedroid Options
Enable Shorter Connection Intervals feature (Bluetooth Core 6.2). Requires Connection Subrating (Core 5.3) per [Vol 6] Part B, Section 4.6.50. Supports LE Connection Rate Request, LE Set Default Rate Parameters, LE Read Minimum Supported Connection Interval commands and LE Connection Rate Change event. Connection intervals use 125 us units (minimum 375 us). Use esp_ble_gap_connection_rate_request(), esp_ble_gap_set_default_rate_parameters(), esp_ble_gap_read_min_supported_connection_interval() and ESP_BLE_GAP_CONN_RATE_* conversion macros in esp_gap_ble_api.h.
- Symbol can be set when:
CONFIG_BT_BLE_FEAT_CONN_SUBRATING is enabled && CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_FEAT_LE_UTP
Enable BLE Unified Test Protocol (UTP)
Found in: Component config > Bluetooth > Bluedroid Options
Enable LE Unified Test Protocol (Bluetooth Core 6.2). Supports LE Enable UTP OTA Mode, LE UTP Send commands and LE UTP Receive event.
- Symbol can be set when:
CONFIG_BT_BLE_50_FEATURES_SUPPORTED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_42_FEATURES_SUPPORTED
Enable BLE 4.2 features(please disable BLE 5.0 if enable BLE 4.2)
Found in: Component config > Bluetooth > Bluedroid Options
This enables BLE 4.2 features. This option is universally supported by all ESP chips with BLE capabilities. BLE 4.2 and BLE 5.0 cannot be used simultaneously.
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
Contains:
CONFIG_BT_BLE_42_DTM_TEST_EN
Enable BLE 4.2 DTM test
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_42_FEATURES_SUPPORTED
This enables BLE 4.2 direct test mode
- Symbol can be set when:
CONFIG_BT_BLE_42_FEATURES_SUPPORTED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_42_ADV_EN
Enable BLE 4.2 advertising
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_42_FEATURES_SUPPORTED
This enables BLE v4.2 advertising
- Symbol can be set when:
CONFIG_BT_BLE_42_FEATURES_SUPPORTED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_42_SCAN_EN
Enable BLE 4.2 scan
Found in: Component config > Bluetooth > Bluedroid Options > CONFIG_BT_BLE_42_FEATURES_SUPPORTED
This enables BLE v4.2 scan
- Symbol can be set when:
CONFIG_BT_BLE_42_FEATURES_SUPPORTED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_VENDOR_HCI_EN
Enable BLE Vendor HCI command and event
Found in: Component config > Bluetooth > Bluedroid Options
This enables BLE vendor HCI command and event
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_BLE_HIGH_DUTY_ADV_INTERVAL
Enable BLE high duty advertising interval feature
Found in: Component config > Bluetooth > Bluedroid Options
This enable BLE high duty advertising interval feature
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_RANDOM_ADV_INTERVAL if CONFIG_BT_BLUEDROID_ENABLED is enabled
Bluedroid L2CAP CoC
Contains:
CONFIG_BT_BLE_L2CAP_COC_ENABLED
Enable BLE L2CAP Connection Oriented Channels
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid L2CAP CoC
Enable LE Credit Based Flow Control mode L2CAP CoC in Bluedroid stack. Independent of Classic Bluetooth L2CAP; does not affect esp_bt_l2cap_* APIs.
- Symbol can be set when:
CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_GATTC_ENABLE is enabled || CONFIG_BT_GATTS_ENABLE is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_L2CAP_COC_MAX_CHAN
Maximum LE CoC channels
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid L2CAP CoC > CONFIG_BT_BLE_L2CAP_COC_ENABLED
- Symbol can be set when:
CONFIG_BT_BLE_L2CAP_COC_ENABLED is enabled && CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_GATTC_ENABLE is enabled || CONFIG_BT_GATTS_ENABLE is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 15
- Default value:
5
CONFIG_BT_BLE_L2CAP_COC_MPS
Default MPS (L2CAP fragment size)
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid L2CAP CoC > CONFIG_BT_BLE_L2CAP_COC_ENABLED
Default Maximum PDU Payload Size for LE CoC channels. Legacy LE Credit Based Flow Control allows 23–65533 octets (section 4.22). Enhanced Credit Based Flow Control (ECFC/EATT) requires 64–65533 (section 4.25). When ECFC is enabled the minimum is raised to 64 automatically.
- Symbol can be set when:
CONFIG_BT_BLE_L2CAP_COC_ENABLED is enabled && CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_GATTC_ENABLE is enabled || CONFIG_BT_GATTS_ENABLE is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 23 to 65533 if CONFIG_BT_BLE_L2CAP_ENHANCED_COC is disabled
from 64 to 65533 if CONFIG_BT_BLE_L2CAP_ENHANCED_COC is enabled
- Default value:
247
CONFIG_BT_BLE_L2CAP_COC_INIT_CREDITS
Initial RX credit window (K-frames per channel)
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid L2CAP CoC > CONFIG_BT_BLE_L2CAP_COC_ENABLED
Number of LE CoC RX credits granted to the peer when a channel opens. One credit allows the peer to send one K-frame. A larger window can raise sustained throughput but increases how many in-flight frames the peer may send before waiting for more credits (higher RX memory pressure). A smaller window reduces that pressure but can lower throughput. Manual credit mode can stall if a single SDU needs more K-frames than this window; prefer automatic credit mode or a larger MPS when using large MTUs.
- Symbol can be set when:
CONFIG_BT_BLE_L2CAP_COC_ENABLED is enabled && CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_GATTC_ENABLE is enabled || CONFIG_BT_GATTS_ENABLE is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to 64
- Default value:
24
CONFIG_BT_BLE_L2CAP_ENHANCED_COC
Enable Enhanced Credit Based Flow Control (ECFC)
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid L2CAP CoC > CONFIG_BT_BLE_L2CAP_COC_ENABLED
Enable LE Enhanced CoC (L2CAP signaling 0x17/0x18) for multi-channel establishment. Required for EATT multi-bearer support.
- Symbol can be set when:
CONFIG_BT_BLE_L2CAP_COC_ENABLED is enabled && CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_GATTC_ENABLE is enabled || CONFIG_BT_GATTS_ENABLE is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_EATT_ENABLE
Enable Enhanced ATT (EATT)
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid L2CAP CoC > CONFIG_BT_BLE_L2CAP_COC_ENABLED > CONFIG_BT_BLE_L2CAP_ENHANCED_COC
Enable EATT bearers over LE Enhanced CoC (PSM 0x0027). GATT operations may use multiple parallel bearers after link encryption.
- Symbol can be set when:
CONFIG_BT_BLE_L2CAP_COC_ENABLED is enabled && CONFIG_BT_BLE_L2CAP_ENHANCED_COC is enabled && CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_GATTC_ENABLE is enabled || CONFIG_BT_GATTS_ENABLE is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_BLE_EATT_CHAN_NUM
Number of EATT bearers per connection
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid L2CAP CoC > CONFIG_BT_BLE_L2CAP_COC_ENABLED > CONFIG_BT_BLE_L2CAP_ENHANCED_COC > CONFIG_BT_BLE_EATT_ENABLE
Number of parallel EATT bearers established per connection. Must not exceed the maximum LE CoC channels, since EATT bearers are LE CoC channels; the range is capped by BT_BLE_L2CAP_COC_MAX_CHAN.
- Symbol can be set when:
CONFIG_BT_BLE_EATT_ENABLE is enabled && CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_GATTC_ENABLE is enabled || CONFIG_BT_GATTS_ENABLE is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 1 to
- Default value:
3
CONFIG_BT_BLE_EATT_MTU
EATT bearer MTU
Found in: Component config > Bluetooth > Bluedroid Options > Bluedroid L2CAP CoC > CONFIG_BT_BLE_L2CAP_COC_ENABLED > CONFIG_BT_BLE_L2CAP_ENHANCED_COC > CONFIG_BT_BLE_EATT_ENABLE
- Symbol can be set when:
CONFIG_BT_BLE_EATT_ENABLE is enabled && CONFIG_BT_BLE_ENABLED is enabled && (CONFIG_BT_GATTC_ENABLE is enabled || CONFIG_BT_GATTS_ENABLE is enabled) && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Range:
from 64 to 517
- Default value:
247
CONFIG_BT_ABORT_WHEN_ALLOCATION_FAILS
Abort when memory allocation fails in BT/BLE stack
Found in: Component config > Bluetooth > Bluedroid Options
This enables abort when memory allocation fails
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled && CONFIG_BT_BLUEDROID_ENABLED is enabled
- Default value:
Disabled
NimBLE Options
Contains:
General
Contains:
CONFIG_BT_NIMBLE_MEM_ALLOC_MODE
Memory allocation strategy
Found in: Component config > Bluetooth > NimBLE Options > General
Allocation strategy for NimBLE host stack. 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
Internal IRAM memory wherever applicable else internal DRAM
Available options:
Internal memory (CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_INTERNAL)
External SPIRAM (CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_EXTERNAL)
Default alloc mode (CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_DEFAULT)
Internal IRAM (CONFIG_BT_NIMBLE_MEM_ALLOC_MODE_IRAM_8BIT)
Allows use of IRAM memory region as 8-bit accessible region.
Every unaligned (8bit or 16bit) access will result in an exception and incur penalty of certain clock cycles per unaligned read/write.
CONFIG_BT_NIMBLE_HOST_TASK_STACK_SIZE
NimBLE Host task stack size
Found in: Component config > Bluetooth > NimBLE Options > General
This configures stack size of NimBLE host task
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
5120 if CONFIG_BLE_MESH is enabled
4096
Roles and Profiles
Contains:
CONFIG_BT_NIMBLE_ROLE_CENTRAL
Enable BLE Central role
Found in: Component config > Bluetooth > NimBLE Options > Roles and Profiles
Enables BLE Central role
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_ROLE_PERIPHERAL
Enable BLE Peripheral role
Found in: Component config > Bluetooth > NimBLE Options > Roles and Profiles
Enable BLE Peripheral role
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_ROLE_BROADCASTER
Enable BLE Broadcaster role
Found in: Component config > Bluetooth > NimBLE Options > Roles and Profiles
Enables BLE broadcaster role
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_ROLE_OBSERVER
Enable BLE Observer role
Found in: Component config > Bluetooth > NimBLE Options > Roles and Profiles
Enables BLE Observer role
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_GATT_CLIENT
Enable BLE GATT Client support
Found in: Component config > Bluetooth > NimBLE Options > Roles and Profiles
Enables support for GATT Client
- Symbol can be set when:
CONFIG_BT_NIMBLE_ROLE_CENTRAL is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_GATT_SERVER
Enable BLE GATT Server support
Found in: Component config > Bluetooth > NimBLE Options > Roles and Profiles
Enables support for GATT Server
- Symbol can be set when:
CONFIG_BT_NIMBLE_ROLE_PERIPHERAL is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
Security (SMP)
Contains:
CONFIG_BT_NIMBLE_SECURITY_ENABLE
Enable BLE SM feature
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP)
Enable BLE sm feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
Contains:
CONFIG_BT_NIMBLE_SM_LEGACY
Security manager legacy pairing
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Enable security manager legacy pairing
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_SM_SC
Security manager secure connections (4.2)
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Enable security manager secure connections
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_NIMBLE_MESH
CONFIG_BT_NIMBLE_SM_SC_DEBUG_KEYS
Use predefined public-private key pair
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE > CONFIG_BT_NIMBLE_SM_SC
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.
- Symbol can be set when:
CONFIG_BT_NIMBLE_SM_SC is enabled && CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_LL_CFG_FEAT_LE_ENCRYPTION
Enable LE encryption
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Enable encryption connection
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_SM_LVL
Security level
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
LE Security Mode 1 Levels: 1(0). No Security 2(1). Unauthenticated pairing with encryption 3(2). Authenticated pairing with encryption 4(3). Authenticated LE Secure Connections pairing with encryption using a 128-bit strength encryption key.
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
0
CONFIG_BT_NIMBLE_SM_SC_ONLY
Enable Secure Connections Only Mode
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Enable Secure Connections Only Mode
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
0
CONFIG_BT_NIMBLE_SMP_ID_RESET
Reset device identity when all bonding records are deleted
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
There are tracking risks associated with using a fixed or static IRK. If enabled this option, NimBLE will assign a new randomly-generated IRK when all pairing and bonding records are deleted. This would decrease the ability of a previously paired peer to be used to determine whether a device with which it previously shared an IRK is within range.
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_NVS_PERSIST
Persist the BLE Bonding keys in NVS
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Enable this flag to make bonding persistent across device reboots
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MAX_BONDS
Maximum number of bonds to save across reboots
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Defines maximum number of bonds to save for peer security and our security
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
3
CONFIG_BT_NIMBLE_HANDLE_REPEAT_PAIRING_DELETION
Enable stack handling of repeat pairing
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Use this option to let stack internally handle the request for repeat pairing. Enabling this option will delete the pairing of the device and stack will NOT post any event to application. If this option is disabled, application will get BLE_GAP_EVENT_REPEAT_PAIRING event.
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SMP_HARDENED_REPAIRING
Reject re-pairing that weakens an existing bond
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
When a bond already exists, refuse a new pairing that would lower MITM protection, drop Secure Connections, or shorten the encryption key. Also enforce that a Pairing Response keeps the MITM/SC bits announced in a preceding Security Request.
Same-level re-pairing (peer deleted its own bond and pairs again at the same strength) is still allowed. A peer that must legitimately re-pair at a lower level has to be unpaired first (ble_gap_unpair / NVS clear).
Matches Bluedroid BT_BLE_SMP_HARDENED_REPAIRING. Disable only if a peer must downgrade and the application cannot unbond it beforehand.
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_SMP_REQUIRE_ENC_BEFORE_REPAIR
Require encryption before re-pairing with a bonded peer
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
When enabled, a bonded peer cannot start SMP pairing on an unencrypted link. The stack replies with Pairing Failed and disconnects. This is stricter than the Bluetooth Core Spec and stricter than Bluedroid; it blocks same-level recovery when the peer deleted its bond and sends a Pairing Request before encryption.
Default is disabled so existing apps and one-sided bond-deletion recovery keep working. Enable for maximum hardening against unauthenticated re-pairing (BLERP V1/V2 style).
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_CENTRAL
Remove the stored bond when pairing fails as Central
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Erase NVS bonding keys when pairing or encryption fails while the local device is Central (link-layer master). Historical Central behaviour and the default: recovers when the peer deleted the bond and answers encryption with Key Missing.
A downgrade refused by BT_NIMBLE_SMP_HARDENED_REPAIRING never erases the bond, regardless of this option.
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_PRPH
Remove the stored bond when pairing fails as Peripheral
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
Erase NVS bonding keys when pairing or encryption fails while the local device is Peripheral (link-layer slave). Default is disabled so a failed pairing does not drop the bond; unbond explicitly from the app if needed.
A downgrade refused by BT_NIMBLE_SMP_HARDENED_REPAIRING never erases the bond, regardless of this option.
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SMP_UNBOND_ON_KEY_MISSING
Drop the local LE keys when the peer reports it has no key
Found in: Component config > Bluetooth > NimBLE Options > Security (SMP) > CONFIG_BT_NIMBLE_SECURITY_ENABLE
As Central, an encryption attempt using the stored LTK can fail with "PIN or Key Missing" when the peer deleted the bond. When enabled, the local keys are discarded so re-pairing can proceed on the same link.
Default is disabled: the bond is kept and the link is dropped, so a peer cannot strip the stored security level by refusing to encrypt. With the default, BT_NIMBLE_SMP_REMOVE_BOND_ON_PAIR_FAIL_AS_CENTRAL still recovers Central-side Key Missing by erasing on the failure path.
- Symbol can be set when:
CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
GAP
Contains:
CONFIG_BT_NIMBLE_RPA_TIMEOUT
RPA timeout in seconds
Found in: Component config > Bluetooth > NimBLE Options > GAP
Time interval between RPA address change.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 41400
- Default value:
900
CONFIG_BT_NIMBLE_WHITELIST_SIZE
BLE white list size
Found in: Component config > Bluetooth > NimBLE Options > GAP
BLE Whitelist size
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 31
- Default value:
12
CONFIG_BT_NIMBLE_ENABLE_CONN_REATTEMPT
Enable connection reattempts on connection establishment error
Found in: Component config > Bluetooth > NimBLE Options > GAP
Enable to make the NimBLE host to reattempt GAP connection attempt in case of connection establishment failure due to reason 0x3E.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_MAX_CONN_REATTEMPT
Maximum number connection reattempts
Found in: Component config > Bluetooth > NimBLE Options > GAP > CONFIG_BT_NIMBLE_ENABLE_CONN_REATTEMPT
Defines maximum number of connection reattempts.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLE_CONN_REATTEMPT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 255
- Default value:
3
CONFIG_BT_NIMBLE_HS_PVCY
Enable privacy related APIs
Found in: Component config > Bluetooth > NimBLE Options > GAP
Enable this option to include host-side APIs related to BLE privacy. Disable it if your application does not require privacy features (such as RPA generation, resolving, or privacy-based pairing). Disabling this option excludes privacy-related code from the host to reduce memory usage.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_HOST_ALLOW_CONNECT_WITH_SCAN
Allow Connections with scanning in progress
Found in: Component config > Bluetooth > NimBLE Options > GAP
This enables support for user to initiate a new connection with scan in progress
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_HOST_QUEUE_CONG_CHECK
BLE queue congestion check
Found in: Component config > Bluetooth > NimBLE Options > GAP
When scanning and scan duplicate is not enabled, if there are a lot of adv packets around or application layer handling adv packets is slow, it will cause the controller memory to run out. if enabled, adv packets will be lost when host queue is congested.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MAX_CONNECTIONS
Maximum number of concurrent connections
Found in: Component config > Bluetooth > NimBLE Options > GAP
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. For ESP32C2, ESP32C6 and ESP32H2, each connection will take about 1k DRAM.
- Symbol can be set when:
(CONFIG_BT_NIMBLE_ROLE_CENTRAL is enabled || CONFIG_BT_NIMBLE_ROLE_PERIPHERAL is enabled) && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 70
- Default value:
3
CONFIG_BT_NIMBLE_MAX_CCCDS
Maximum number of CCC descriptors to save across reboots
Found in: Component config > Bluetooth > NimBLE Options > GAP
Defines maximum number of CCC descriptors to save
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
8
CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS
Override TinyCrypt with mbedTLS for crypto computations
Found in: Component config > Bluetooth > NimBLE Options > GAP
Enable this option to choose mbedTLS instead of TinyCrypt for crypto computations.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_CMAC_C
CONFIG_BT_NIMBLE_HS_STOP_TIMEOUT_MS
BLE host stop timeout in msec
Found in: Component config > Bluetooth > NimBLE Options > GAP
BLE Host stop procedure timeout in milliseconds.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
2000
CONFIG_BT_NIMBLE_USE_ESP_TIMER
Enable Esp Timer for Nimble
Found in: Component config > Bluetooth > NimBLE Options > GAP
Set this option to use Esp Timer which has higher priority timer instead of FreeRTOS timer
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_DEFER_CONN_EVENTS_UNTIL_CONNECT
Defer connection GAP/ATT events until CONNECT callback
Found in: Component config > Bluetooth > NimBLE Options > GAP
Queue connection-related GAP callbacks and ATT server requests until BLE_GAP_EVENT_CONNECT event is delivered for that connection handle. Required when the host delays CONNECT so applications never receive other events before CONNECT event.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_UNHANDLED_HCI_EVENT
Post unhandled HCI events to GAP
Found in: Component config > Bluetooth > NimBLE Options > GAP
For events that are not handled by stack, they would be directly posted to application Application is responsible for handling such events.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
GATT / ATT
Contains:
CONFIG_BT_NIMBLE_ATT_PREFERRED_MTU
Preferred MTU size in octets
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
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()
- Symbol can be set when:
(CONFIG_BT_NIMBLE_GATT_CLIENT is enabled || CONFIG_BT_NIMBLE_GATT_SERVER is enabled) && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
256
CONFIG_BT_NIMBLE_ATT_MAX_PREP_ENTRIES
Max Prepare write entries
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
This is the default value of ATT Maximum prepare entries
- Symbol can be set when:
(CONFIG_BT_NIMBLE_GATT_CLIENT is enabled || CONFIG_BT_NIMBLE_GATT_SERVER is enabled) && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
64
CONFIG_BT_NIMBLE_GATT_MAX_PROCS
Maximum number of GATT client procedures
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Maximum number of GATT client procedures that can be executed.
- Symbol can be set when:
(CONFIG_BT_NIMBLE_GATT_CLIENT is enabled || CONFIG_BT_NIMBLE_GATT_SERVER is enabled) && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
4
CONFIG_BT_NIMBLE_BLE_GATT_BLOB_TRANSFER
Blob transfer
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
This option is used when data to be sent is more than 512 bytes. For peripheral role, BT_NIMBLE_MSYS_1_BLOCK_COUNT needs to be increased according to the need.
- Symbol can be set when:
(CONFIG_BT_NIMBLE_GATT_CLIENT is enabled || CONFIG_BT_NIMBLE_GATT_SERVER is enabled) && CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_GATT_CACHING
Enable GATT caching
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Enable GATT caching
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_NIMBLE_DYNAMIC_SERVICE
Contains:
CONFIG_BT_NIMBLE_GATT_CACHING_INCLUDE_SERVICES
Include services in GATT caching
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT > CONFIG_BT_NIMBLE_GATT_CACHING
Enable this option to include *included services* (e.g., services referenced by other services) in the GATT database cache. Disabling this will skip caching of included service entries.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_INCL_SVC_DISCOVERY
Enable Included service discovery
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Enable this option to start discovery for included service.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is disabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled if CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_GATT_CACHING_INCLUDE_SERVICES is enabled
Disabled if CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_GATT_CACHING_INCLUDE_SERVICES is disabled
Disabled if CONFIG_BT_NIMBLE_GATT_CACHING is disabled
CONFIG_BT_NIMBLE_GATT_CACHING_MAX_CONNS
Maximum connections to be cached
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Set this option to set the upper limit on number of connections to be cached.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
CONFIG_BT_NIMBLE_GATT_CACHING_MAX_SVCS
Maximum number of services per connection
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Set this option to set the upper limit on number of services per connection to be cached.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
8
CONFIG_BT_NIMBLE_GATT_CACHING_MAX_INCL_SVCS
Maximum number of included services per connection
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Set this option to set the upper limit on number of included services per connection to be cached.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
8
CONFIG_BT_NIMBLE_GATT_CACHING_MAX_CHRS
Maximum number of characteristics per connection
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Set this option to set the upper limit on number of characteristics per connection to be cached.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
58
CONFIG_BT_NIMBLE_GATT_CACHING_MAX_DSCS
Maximum number of descriptors per connection
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Set this option to set the upper limit on number of descriptors per connection to be cached.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
58
CONFIG_BT_NIMBLE_GATT_CACHING_DISABLE_AUTO
Do not start discovery procedure automatically upon receiving Out of Sync
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
When client receives ATT out-of-sync error message, it will not automatically start the discovery procedure to correct the invalid cache.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_GATT_CACHING_ASSOC_ENABLE
Enable association-based GATT caching
Found in: Component config > Bluetooth > NimBLE Options > GATT / ATT
Enable this option to use associated address caching instead of performing service discovery.
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_CACHING is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
L2CAP
Contains:
CONFIG_BT_NIMBLE_L2CAP_COC_MAX_NUM
Maximum number of connection oriented channels
Found in: Component config > Bluetooth > NimBLE Options > L2CAP
Defines maximum number of BLE Connection Oriented Channels. When set to (0), BLE COC is not compiled in
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 0 to 9
- Default value:
0
CONFIG_BT_NIMBLE_L2CAP_ENHANCED_COC
L2CAP Enhanced Connection Oriented Channel
Found in: Component config > Bluetooth > NimBLE Options > L2CAP
Enable Enhanced Credit Based Flow Control Mode
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_L2CAP_COC_MAX_NUM >= 1 && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
Memory Settings
Contains:
CONFIG_BT_NIMBLE_MSYS_1_BLOCK_COUNT
MSYS_1 Block Count
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
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.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
24
CONFIG_BT_NIMBLE_MSYS_1_BLOCK_SIZE
MSYS_1 Block Size
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
Dynamic memory size of block 1
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
128
CONFIG_BT_NIMBLE_MSYS_2_BLOCK_COUNT
MSYS_2 Block Count
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
Dynamic memory count for block 2
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
24
CONFIG_BT_NIMBLE_MSYS_2_BLOCK_SIZE
MSYS_2 Block Size
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
Dynamic memory size of block 2
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
320
CONFIG_BT_NIMBLE_MSYS_BUF_FROM_HEAP
Get Msys Mbuf from heap
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
This option sets the source of the shared msys mbuf memory between the Host and the Controller. Allocate the memory from the heap if this option is sets, from the mempool otherwise.
- Symbol can be set when:
CONFIG_BT_LE_MSYS_INIT_IN_CONTROLLER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_TRANSPORT_ACL_FROM_LL_COUNT
ACL Buffer count
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
The number of ACL data buffers allocated for host.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
24
CONFIG_BT_NIMBLE_TRANSPORT_ACL_SIZE
Transport ACL Buffer size
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
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)
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
255
CONFIG_BT_NIMBLE_TRANSPORT_EVT_SIZE
Transport Event Buffer size
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
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.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
257 if CONFIG_BT_NIMBLE_EXT_ADV is enabled
70
CONFIG_BT_NIMBLE_TRANSPORT_EVT_COUNT
Transport Event Buffer count
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
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
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
30
CONFIG_BT_NIMBLE_TRANSPORT_EVT_DISCARD_COUNT
Discardable Transport Event Buffer count
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
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
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
8
CONFIG_BT_NIMBLE_L2CAP_COC_SDU_BUFF_COUNT
L2cap coc Service Data Unit Buffer count
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
This is the service data unit buffer count for l2cap coc.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
1
CONFIG_BT_NIMBLE_MEMPOOL_RUNTIME_ALLOC
Support on-demand runtime memory allocation for mempool
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings
When this option is enabled, mempool does not require pre-allocating memory. Instead, memory for each block will be dynamically allocated and released during mempool usage. This can significantly reduce memory consumption after mempool initialization, but may have some impact on performance.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_STATIC_TO_DYNAMIC is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MEMPOOL_BLOCK_REUSED
Support block reuse for mempool runtime memory allocation
Found in: Component config > Bluetooth > NimBLE Options > Memory Settings > CONFIG_BT_NIMBLE_MEMPOOL_RUNTIME_ALLOC
When this option is enabled, dynamically allocated blocks will not be freed but will be reused instead. This ensures virtually no impact on performance while reducing the memory consumption of the mempool.
- Symbol can be set when:
CONFIG_BT_NIMBLE_MEMPOOL_RUNTIME_ALLOC is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
BLE 5.x Features
Contains:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT
Enable BLE 5 feature
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features
Enable BLE 5 feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_USE_BLE_50 if CONFIG_BT_NIMBLE_ENABLED is enabled
Contains:
CONFIG_BT_NIMBLE_LL_CFG_FEAT_LE_2M_PHY
Enable 2M Phy
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT
Enable 2M-PHY
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_LL_CFG_FEAT_LE_CODED_PHY
Enable coded Phy
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT
Enable coded-PHY
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_EXT_ADV
Enable extended advertising
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT
Enable this option to do extended advertising. Extended advertising will be supported from BLE 5.0 onwards.
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_USE_BLE_50 if CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_EXT_ADV_V2
Enable support for extended adv v2
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_ADV
Enable this option to use Extended Adv V2 command instead of V1.
- Symbol can be set when:
CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MAX_EXT_ADV_INSTANCES
Maximum number of extended advertising instances.
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_ADV
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. For ESP32C2, ESP32C6 and ESP32H2, each extended advertising instance will take about 0.5k DRAM.
- Symbol can be set when:
CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 0 to 4
- Default value:
1 if CONFIG_BT_NIMBLE_EXT_ADV is enabled
0
CONFIG_BT_NIMBLE_EXT_ADV_MAX_SIZE
Maximum length of the advertising data.
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_ADV
Defines the length of the extended adv data. The value should not exceed 1650.
- Symbol can be set when:
CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 0 to 1650
- Default value:
1650 if CONFIG_BT_NIMBLE_EXT_ADV is enabled
0
CONFIG_BT_NIMBLE_ENABLE_PERIODIC_ADV
Enable periodic advertisement.
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_ADV
Enable this option to start periodic advertisement.
- Symbol can be set when:
CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_PERIODIC_ADV_ENH
Periodic adv enhancements(adi support)
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_ADV > CONFIG_BT_NIMBLE_ENABLE_PERIODIC_ADV
Enable the periodic advertising enhancements
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLE_PERIODIC_ADV is enabled && CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_PERIODIC_ADV_SYNC_TRANSFER
Enable Transfer Sync Events
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_ADV > CONFIG_BT_NIMBLE_ENABLE_PERIODIC_ADV
This enables controller transfer periodic sync events to host
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLE_PERIODIC_ADV is enabled && CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_PERIODIC_ADV_WITH_RESPONSES
Enable Periodic Advertisement with Response (EXPERIMENTAL)
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_ADV > CONFIG_BT_NIMBLE_ENABLE_PERIODIC_ADV
This enables controller PAwR (Periodic Advertisement with Response).
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLE_PERIODIC_ADV is enabled && CONFIG_BT_NIMBLE_EXT_ADV is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_EXT_SCAN
Enable extended scanning
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT
Enable this option to do extended scanning.
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled if CONFIG_BT_NIMBLE_EXT_ADV is enabled
CONFIG_BT_NIMBLE_ENABLE_PERIODIC_SYNC
Enable periodic sync
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_SCAN
Enable this option to receive periodic advertisement.
- Symbol can be set when:
CONFIG_BT_NIMBLE_EXT_SCAN is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_MAX_PERIODIC_SYNCS
Maximum number of periodic advertising syncs
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_SCAN > CONFIG_BT_NIMBLE_ENABLE_PERIODIC_SYNC
Set this option to set the upper limit for number of periodic sync connections. This should be less than maximum connections allowed by controller.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLE_PERIODIC_SYNC is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 0 to 8
- Default value:
1 if CONFIG_BT_NIMBLE_ENABLE_PERIODIC_ADV is enabled
0
CONFIG_BT_NIMBLE_MAX_PERIODIC_ADVERTISER_LIST
Maximum number of periodic advertiser list
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_EXT_SCAN > CONFIG_BT_NIMBLE_ENABLE_PERIODIC_SYNC
Set this option to set the upper limit for number of periodic advertiser list.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLE_PERIODIC_SYNC is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 5
- Default value:
5 if CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled
CONFIG_BT_NIMBLE_BLE_POWER_CONTROL
Enable support for BLE Power Control
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT
Set this option to enable the Power Control feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_AOA_AOD
Direction Finding
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT
Enable support for Connectionless and Connection Oriented Direction Finding
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_ISO
Isochronous channels
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT
Enable BLE Isochronous functionality.
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_ISO_FLOW_CONTROL
ISO flow control mode
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
ISO flow control mode
Available options:
Standard (CONFIG_BT_NIMBLE_ISO_STD_FLOW_CTRL)
ISO standard flow control
Non-standard (CONFIG_BT_NIMBLE_ISO_NON_STD_FLOW_CTRL)
ISO non-standard flow control
CONFIG_BT_NIMBLE_ISO_TEST
ISO Test mode
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
Enable BLE Isochronous Test functionality.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ISO is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_ISO_BIG
Maximum number of BIG
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
Maximum number of BIG.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ISO is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 2
- Default value:
1
CONFIG_BT_NIMBLE_ISO_BIS
Maximum number of BIS
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
Maximum number of BIS.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ISO is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 6
- Default value:
2
CONFIG_BT_NIMBLE_ISO_BIS_PER_BIG
Maximum number of BIS per BIG
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
Maximum number of BIS per BIG.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ISO is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to
- Default value:
CONFIG_BT_NIMBLE_ISO_CIG
Maximum number of CIG
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
Maximum number of CIG.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ISO is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 2
- Default value:
1
CONFIG_BT_NIMBLE_ISO_CIS
Maximum number of CIS
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
Maximum number of CIS.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ISO is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to 6
- Default value:
2
CONFIG_BT_NIMBLE_ISO_CIS_PER_CIG
Maximum number of CIS per CIG
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
Maximum number of CIS per CIG.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ISO is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Range:
from 1 to
- Default value:
CONFIG_BT_NIMBLE_ISO_CIS_ESTAB_V2
LE CIS Established event [v2]
Found in: Component config > Bluetooth > NimBLE Options > BLE 5.x Features > CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT > CONFIG_BT_NIMBLE_ISO
Enable this to support LE CIS Established event [v2].
- Symbol can be set when:
CONFIG_BT_NIMBLE_ISO is enabled && CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
BLE 6.x Features
Contains:
CONFIG_BT_NIMBLE_60_FEATURE_SUPPORT
Enable BLE 6 feature
Found in: Component config > Bluetooth > NimBLE Options > BLE 6.x Features
Enable BLE 6.x feature support
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
Contains:
CONFIG_BT_NIMBLE_CHANNEL_SOUNDING
ble channel sounding feature
Found in: Component config > Bluetooth > NimBLE Options > BLE 6.x Features > CONFIG_BT_NIMBLE_60_FEATURE_SUPPORT
Used to enable/disable the channel sounding feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_60_FEATURE_SUPPORT is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MONITOR_ADV
Enable Monitor Advertising
Found in: Component config > Bluetooth > NimBLE Options > BLE 6.x Features > CONFIG_BT_NIMBLE_60_FEATURE_SUPPORT
Enable support for Monitor Advertisers
- Symbol can be set when:
CONFIG_BT_NIMBLE_60_FEATURE_SUPPORT is enabled && CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
Services
Contains:
CONFIG_BT_NIMBLE_PROX_SERVICE
Proximity service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Proximity Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_ANS_SERVICE
Alert Notification service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Alert Notification Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_CTS_SERVICE
Current Time Service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Current Time Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_HTP_SERVICE
Health Thermometer service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Health Thermometer Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_IPSS_SERVICE
Internet Protocol Support service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Internet Protocol Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_TPS_SERVICE
Tx Power service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Tx Power Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_IAS_SERVICE
Immediate Alert service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Immediate Alert Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_LLS_SERVICE
Link Loss service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Link Loss Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_SPS_SERVICE
Serial Port service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Serial Port Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_HR_SERVICE
Heart Rate service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable HeartRate Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_HID_SERVICE
Human Interface Device service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable HID service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
Contains:
CONFIG_BT_NIMBLE_SVC_HID_MAX_INSTANCES
Maximum HID service instances
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_HID_SERVICE
Defines maximum number of HID service instances
- Symbol can be set when:
CONFIG_BT_NIMBLE_HID_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
2
CONFIG_BT_NIMBLE_SVC_HID_MAX_RPTS
Maximum HID Report characteristics per service instance
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_HID_SERVICE
Defines maximum number of report characteristics per service instance
- Symbol can be set when:
CONFIG_BT_NIMBLE_HID_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
3
CONFIG_BT_NIMBLE_RAS_SERVICE
RAS service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable RAS Service
- Symbol can be set when:
CONFIG_BT_NIMBLE_CHANNEL_SOUNDING is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_BAS_SERVICE
Battery service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Battery service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
Contains:
CONFIG_BT_NIMBLE_SVC_BAS_BATTERY_LEVEL_NOTIFY
BAS Battery Level NOTIFY permission
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_BAS_SERVICE
Enable/Disable notifications on BAS Battery Level Characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_BAS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_DIS_SERVICE
Device Information Service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable Device Information service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
Contains:
CONFIG_BT_NIMBLE_SVC_DIS_MANUFACTURER_NAME
Manufacturer Name
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS characteristic Manufacturer Name String characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_DIS_SERIAL_NUMBER
Serial Number
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS Serial Number characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_DIS_HARDWARE_REVISION
Hardware Revision
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS Hardware Revision characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_DIS_FIRMWARE_REVISION
Firmware Revision
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS Firmware Revision characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_DIS_SOFTWARE_REVISION
Software Revision
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS Software Revision characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_DIS_SYSTEM_ID
System ID
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS System ID characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_DIS_PNP_ID
PnP ID
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS PnP ID characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_DIS_IEEE
IEEE
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS IEEE characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_SVC_DIS_UDI
UDI
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Enable the DIS UDI characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_SVC_DIS_INCLUDED
DIS as an Included Service
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_DIS_SERVICE
Use DIS as an included service
- Symbol can be set when:
CONFIG_BT_NIMBLE_DIS_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_GAP_SERVICE
GAP Service
Found in: Component config > Bluetooth > NimBLE Options > Services
Enable GAP Service support
- Symbol can be set when:
CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
Contains:
CONFIG_BT_NIMBLE_SVC_GAP_DEVICE_NAME
BLE GAP default device name
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE
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()
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
"nimble"
CONFIG_BT_NIMBLE_GAP_DEVICE_NAME_MAX_LEN
Maximum length of BLE device name in octets
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE
Device Name characteristic value shall be 0 to 248 octets in length
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
31
CONFIG_BT_NIMBLE_SVC_GAP_APPEARANCE
External appearance of the device
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE
Standard BLE GAP Appearance value in HEX format e.g. 0x02C0
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
0
CONFIG_BT_NIMBLE_SVC_GAP_GATT_SECURITY_LEVEL
LE GATT Security Level Characteristic
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE
Enable the LE GATT Security Level Characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_GAP_RPA_ONLY
Resolvable Private Address Only characteristic
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE
Enable the Resolvable Private Address Only characteristic
- Symbol can be set when:
CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_GAP_CENT_ADDR_RESOLUTION
GAP Characteristic - Central Address Resolution
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE
Weather or not Central Address Resolution characteristic is supported on the device, and if supported, weather or not Central Address Resolution is supported.
Central Address Resolution characteristic not supported
Central Address Resolution not supported
Central Address Resolution supported
Available options:
Characteristic not supported (CONFIG_BT_NIMBLE_SVC_GAP_CAR_CHAR_NOT_SUPP)
Central Address Resolution not supported (CONFIG_BT_NIMBLE_SVC_GAP_CAR_NOT_SUPP)
Central Address Resolution supported (CONFIG_BT_NIMBLE_SVC_GAP_CAR_SUPP)
GAP Appearance write permissions
Contains:
CONFIG_BT_NIMBLE_SVC_GAP_APPEAR_WRITE
Write
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > GAP Appearance write permissions
Enable write permission (BLE_GATT_CHR_F_WRITE)
- Symbol can be set when:
CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_GAP_APPEAR_WRITE_ENC
Write with encryption
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > GAP Appearance write permissions > CONFIG_BT_NIMBLE_SVC_GAP_APPEAR_WRITE
Enable write with encryption permission (BLE_GATT_CHR_F_WRITE_ENC)
- Symbol can be set when:
CONFIG_BT_NIMBLE_SVC_GAP_APPEAR_WRITE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_SVC_GAP_APPEAR_WRITE_AUTHEN
Write with authentication
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > GAP Appearance write permissions > CONFIG_BT_NIMBLE_SVC_GAP_APPEAR_WRITE
Enable write with authentication permission (BLE_GATT_CHR_F_WRITE_AUTHEN)
- Symbol can be set when:
CONFIG_BT_NIMBLE_SVC_GAP_APPEAR_WRITE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
GAP device name write permissions
Contains:
CONFIG_BT_NIMBLE_SVC_GAP_NAME_WRITE
Write
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > GAP device name write permissions
Enable write permission (BLE_GATT_CHR_F_WRITE)
- Symbol can be set when:
CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_GAP_NAME_WRITE_ENC
Write with encryption
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > GAP device name write permissions > CONFIG_BT_NIMBLE_SVC_GAP_NAME_WRITE
Enable write with encryption permission (BLE_GATT_CHR_F_WRITE_ENC)
- Symbol can be set when:
CONFIG_BT_NIMBLE_SVC_GAP_NAME_WRITE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_SVC_GAP_NAME_WRITE_AUTHEN
Write with authentication
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > GAP device name write permissions > CONFIG_BT_NIMBLE_SVC_GAP_NAME_WRITE
Enable write with authentication permission (BLE_GATT_CHR_F_WRITE_AUTHEN)
- Symbol can be set when:
CONFIG_BT_NIMBLE_SVC_GAP_NAME_WRITE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
Peripheral Preferred Connection Parameters (PPCP) settings
Contains:
CONFIG_BT_NIMBLE_SVC_GAP_PPCP_MAX_CONN_INTERVAL
PPCP Connection Interval Max (Unit: 1.25 ms)
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > Peripheral Preferred Connection Parameters (PPCP) settings
Peripheral Preferred Connection Parameter: Connection Interval maximum value Interval Max = value * 1.25 ms
- Symbol can be set when:
CONFIG_BT_NIMBLE_ROLE_PERIPHERAL is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
0
CONFIG_BT_NIMBLE_SVC_GAP_PPCP_MIN_CONN_INTERVAL
PPCP Connection Interval Min (Unit: 1.25 ms)
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > Peripheral Preferred Connection Parameters (PPCP) settings
Peripheral Preferred Connection Parameter: Connection Interval minimum value Interval Min = value * 1.25 ms
- Symbol can be set when:
CONFIG_BT_NIMBLE_ROLE_PERIPHERAL is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
0
CONFIG_BT_NIMBLE_SVC_GAP_PPCP_SLAVE_LATENCY
PPCP Slave Latency
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > Peripheral Preferred Connection Parameters (PPCP) settings
Peripheral Preferred Connection Parameter: Slave Latency
- Symbol can be set when:
CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
0
CONFIG_BT_NIMBLE_SVC_GAP_PPCP_SUPERVISION_TMO
PPCP Supervision Timeout (Uint: 10 ms)
Found in: Component config > Bluetooth > NimBLE Options > Services > CONFIG_BT_NIMBLE_GAP_SERVICE > Peripheral Preferred Connection Parameters (PPCP) settings
Peripheral Preferred Connection Parameter: Supervision Timeout Timeout = Value * 10 ms
- Symbol can be set when:
CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GAP_SERVICE is enabled && CONFIG_BT_NIMBLE_GATT_SERVER is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
0
Extra Features
Contains:
CONFIG_BT_NIMBLE_DYNAMIC_SERVICE
Enable dynamic services
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
This enables user to add/remove Gatt services at runtime
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_NIMBLE_GATT_CACHING
CONFIG_BT_NIMBLE_BLUFI_ENABLE
Enable blufi functionality
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Set this option to enable blufi functionality.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_ENC_ADV_DATA
Encrypted Advertising Data
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
This option is used to enable encrypted advertising data.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_ADV_UUID_CONCAT
concatenate uuids while parsing advertising data
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Enables concatenation of multiple UUIDs of the same type while parsing advertising data on the central device. When disabled, only the last parsed UUID of a given type is retained.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MAX_EADS
Maximum number of EAD devices to save across reboots
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Defines maximum number of encrypted advertising data key material to save
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENC_ADV_DATA is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
10
CONFIG_BT_NIMBLE_GATTC_PROC_PREEMPTION_PROTECT
Gatt-proc preemption protect check
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
When BLE and Wireless protocol/IEEE 802.15.4 operate in coexistence, BLE preemption can disrupt the GATT context,causing the service discovery callback to not be invoked. A temporary list is maintained to preserve the GATT context and use it in case of preemption.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_GATTC_AUTO_PAIR
Automatically pair upon receiving service request failure
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
If enabled, when a service request (e.g. read, write) to a server fails, and the ATT error suggests insufficient security, then the central will initiate pairing and retry the service request.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_EATT_CHAN_NUM
Maximum number of EATT channels
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Defines the number of channels EATT bearers can use
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
0
CONFIG_BT_NIMBLE_SUBRATE
Enable Subrate Change
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Enable connection subrate change feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_STATIC_PASSKEY
Enable support for Static Passkey
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Enable support for user defined static passkey for SMP
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_SECURITY_ENABLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_DTM_MODE_TEST
Enable DTM related test procedure support
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Enable DTM related test procedure support
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_MEM_OPTIMIZATION
Enable memory optimization
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
This option enables memory optimizations in the NimBLE stack.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_STATIC_TO_DYNAMIC
Use Dynamic Memory allocations instead of static
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
This option enables use of dynamic memory allocation instead of static allocation for variable global / local variable. This helps in improving memory footprint
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_SM_SIGN_CNT
Enable Sign counter operations
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Enable Sign counter operations
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_CPFD_CAFD
Enable CPFD/CAPD support
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Enable CPFD and CAPD gatt descriptors support
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_RECONFIG_MTU
Reconfig L2CAP MTU support
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Enable Support to reconfigure L2CAP MTU / MPS
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_LOW_SPEED_MODE
Reduce DRAM/IRAM usage by moving GATT/GAP/NPL functions to FLASH
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
Disabling IRAM-optimized paths will place functions in FLASH (.irom.text) instead of DRAM (.iram.text/.text in internal RAM). Suitable for low-speed GAP/GATT operations to reduce RAM usage.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_GAP_ALLOW_ADV_RESTART
Allow restarting ongoing advertising
Found in: Component config > Bluetooth > NimBLE Options > Extra Features
If enabled, stop ongoing advertising before starting it again with new parameters,if any. If disabled, starting advertising while it is already active returns BLE_HS_EALREADY.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
NimBLE Mesh
Contains:
CONFIG_BT_NIMBLE_MESH
Enable BLE mesh functionality
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh
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: :doc:../esp32/api-guides/esp-ble-mesh/ble-mesh-index``
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_NIMBLE_SM_SC
Contains:
CONFIG_BT_NIMBLE_MESH_PROXY
Enable mesh proxy functionality
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
Enable proxy. This is automatically set whenever NIMBLE_MESH_PB_GATT or NIMBLE_MESH_GATT_PROXY is set
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_NIMBLE_MESH_PB_GATT
forcefully enabled by CONFIG_BT_NIMBLE_MESH_GATT_PROXY
CONFIG_BT_NIMBLE_MESH_PROV
Enable BLE mesh provisioning
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
Enable mesh provisioning
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_MESH_PB_ADV
Enable mesh provisioning over advertising bearer
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH > CONFIG_BT_NIMBLE_MESH_PROV
Enable this option to allow the device to be provisioned over the advertising bearer
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH_PROV is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_MESH_PB_GATT
Enable mesh provisioning over GATT bearer
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH > CONFIG_BT_NIMBLE_MESH_PROV
Enable this option to allow the device to be provisioned over the GATT bearer
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH_PROV is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_NIMBLE_MESH_PROXY
CONFIG_BT_NIMBLE_MESH_GATT_PROXY
Enable GATT Proxy functionality
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
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
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_NIMBLE_MESH_PROXY
CONFIG_BT_NIMBLE_MESH_RELAY
Enable mesh relay functionality
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
Support for acting as a Mesh Relay Node
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MESH_LOW_POWER
Enable mesh low power mode
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
Enable this option to be able to act as a Low Power Node
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MESH_FRIEND
Enable mesh friend functionality
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
Enable this option to be able to act as a Friend Node
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_MESH_DEVICE_NAME
Set mesh device name
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
This value defines Bluetooth Mesh device/node name
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
"nimble-mesh-node"
CONFIG_BT_NIMBLE_MESH_NODE_COUNT
Set mesh node count
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
Defines mesh node count.
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
1
CONFIG_BT_NIMBLE_MESH_PROVISIONER
Enable BLE mesh provisioner
Found in: Component config > Bluetooth > NimBLE Options > NimBLE Mesh > CONFIG_BT_NIMBLE_MESH
Enable mesh provisioner.
- Symbol can be set when:
CONFIG_BT_NIMBLE_MESH is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
Host-controller Transport
Contains:
CONFIG_BT_NIMBLE_TRANSPORT_UART
Enable Uart Transport
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport
Use UART transport
- Symbol can be set when:
CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_TRANSPORT_UART_PORT
Uart port
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport > CONFIG_BT_NIMBLE_TRANSPORT_UART
Uart port
- Symbol can be set when:
CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_NIMBLE_TRANSPORT_UART is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
1
CONFIG_BT_NIMBLE_HCI_USE_UART_BAUDRATE
Uart Hci Baud Rate
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport > CONFIG_BT_NIMBLE_TRANSPORT_UART
Uart Baud Rate
Available options:
115200 (CONFIG_UART_BAUDRATE_115200)
230400 (CONFIG_UART_BAUDRATE_230400)
460800 (CONFIG_UART_BAUDRATE_460800)
921600 (CONFIG_UART_BAUDRATE_921600)
CONFIG_BT_NIMBLE_USE_HCI_UART_PARITY
Uart PARITY
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport > CONFIG_BT_NIMBLE_TRANSPORT_UART
Uart Parity
Available options:
None (CONFIG_UART_PARITY_NONE)
Odd (CONFIG_UART_PARITY_ODD)
Even (CONFIG_UART_PARITY_EVEN)
CONFIG_BT_NIMBLE_UART_RX_PIN
UART Rx pin
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport > CONFIG_BT_NIMBLE_TRANSPORT_UART
Rx pin for Nimble Transport
- Symbol can be set when:
CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_NIMBLE_TRANSPORT_UART is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
5
CONFIG_BT_NIMBLE_UART_TX_PIN
UART Tx pin
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport > CONFIG_BT_NIMBLE_TRANSPORT_UART
Tx pin for Nimble Transport
- Symbol can be set when:
CONFIG_BT_CONTROLLER_DISABLED is enabled && CONFIG_BT_NIMBLE_TRANSPORT_UART is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
4
CONFIG_BT_NIMBLE_USE_HCI_UART_FLOW_CTRL
Uart Flow Control
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport
Uart Flow Control
Available options:
Disable (CONFIG_UART_HW_FLOWCTRL_DISABLE)
Enable hardware flow control (CONFIG_UART_HW_FLOWCTRL_CTS_RTS)
CONFIG_BT_NIMBLE_HCI_UART_RTS_PIN
UART Rts Pin
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport
UART HCI RTS pin
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
19
CONFIG_BT_NIMBLE_HCI_UART_CTS_PIN
UART Cts Pin
Found in: Component config > Bluetooth > NimBLE Options > Host-controller Transport
UART HCI CTS pin
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
23
Debugging/Testing
Contains:
CONFIG_BT_NIMBLE_MEM_DEBUG
NimBLE memory debug
Found in: Component config > Bluetooth > NimBLE Options > Debugging/Testing
Enable NimBLE memory debug to track memory allocations and deallocations. This feature records the function name, line number, and size of each allocation, and provides APIs to display memory usage statistics, find memory leaks, and monitor peak memory usage.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ISO is disabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_LOG_LEVEL
NimBLE Host log verbosity
Found in: Component config > Bluetooth > NimBLE Options > Debugging/Testing
Select NimBLE log level. Note that the selected NimBLE log verbosity can not exceed the level set in "Component config --> Log output --> Default log verbosity".
Available options:
No logs (CONFIG_BT_NIMBLE_LOG_LEVEL_NONE)
Error logs (CONFIG_BT_NIMBLE_LOG_LEVEL_ERROR)
Warning logs (CONFIG_BT_NIMBLE_LOG_LEVEL_WARNING)
Info logs (CONFIG_BT_NIMBLE_LOG_LEVEL_INFO)
Debug logs (CONFIG_BT_NIMBLE_LOG_LEVEL_DEBUG)
CONFIG_BT_NIMBLE_PRINT_ERR_NAME
Enable feature to print Error description
Found in: Component config > Bluetooth > NimBLE Options > Debugging/Testing
Enable feature to give useful explanation for HCI errors
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_DEBUG
Enable extra runtime asserts and host debugging
Found in: Component config > Bluetooth > NimBLE Options > Debugging/Testing
This enables extra runtime asserts and host debugging
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_NIMBLE_TEST_THROUGHPUT_TEST
Throughput Test Mode enable
Found in: Component config > Bluetooth > NimBLE Options > Debugging/Testing
Enable the throughput test mode
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
Vendor / Optimization
Contains:
CONFIG_BT_NIMBLE_VS_SUPPORT
Enable support for VSC and VSE
Found in: Component config > Bluetooth > NimBLE Options > Vendor / Optimization
This option is used to enable support for sending Vendor Specific HCI commands and handling Vendor Specific HCI Events.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_NIMBLE_OPTIMIZE_MULTI_CONN
forcefully enabled by CONFIG_BT_NIMBLE_ADV_SEND_CONSTANT_DID
forcefully enabled by CONFIG_BT_NIMBLE_SCAN_ALLOW_ENH_ADI_FILTER
forcefully enabled by CONFIG_BLE_MESH_USE_DUPLICATE_SCAN if CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_OPTIMIZE_MULTI_CONN
Enable the optimization of multi-connection
Found in: Component config > Bluetooth > NimBLE Options > Vendor / Optimization
This option enables the use of vendor-specific APIs for multi-connections, which can greatly enhance the stability of coexistence between numerous central and peripheral devices. It will prohibit the usage of standard APIs.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_NIMBLE_VS_SUPPORT
CONFIG_BT_NIMBLE_HIGH_DUTY_ADV_ITVL
Enable BLE high duty advertising interval feature
Found in: Component config > Bluetooth > NimBLE Options > Vendor / Optimization
This enable BLE high duty advertising interval feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_RANDOM_ADV_INTERVAL if CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BT_NIMBLE_ADV_SEND_CONSTANT_DID
Enable BLE Ext Adv to Send with Specific DID
Found in: Component config > Bluetooth > NimBLE Options > Vendor / Optimization
This enable vendor-specific APIs to send specific DID for different advertising data in extended advertising.
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_NIMBLE_VS_SUPPORT
CONFIG_BT_NIMBLE_SCAN_ALLOW_ENH_ADI_FILTER
Enable BLE Ext Scan to Receive Packet with Specific ADI
Found in: Component config > Bluetooth > NimBLE Options > Vendor / Optimization
This enables vendor-specific APIs to only receive specific groups of ADIs, and implements DIDs duplicate filtering for extended scanning. Enabling this can reduce the unnecessary reception of secondary channel PDUs carrying non-targeted ADIs.
- Symbol can be set when:
CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_NIMBLE_VS_SUPPORT
Helper Utils
Contains:
CONFIG_BT_NIMBLE_CHK_HOST_STATUS
Enable host status query support
Found in: Component config > Bluetooth > NimBLE Options > Helper Utils
Enable support to query host status
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_UTIL_API
Enable helper APIs
Found in: Component config > Bluetooth > NimBLE Options > Helper Utils
Enable support for misc APIs like set data addr change, read local resolv addr and set host feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_NIMBLE_EXTRA_ADV_FIELDS
Enable extra Adv report fields parsing
Found in: Component config > Bluetooth > NimBLE Options > Helper Utils
Enable support for parsing of more adv fields as per spec
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Enabled
Controller Options
Contains:
HCI Config
Contains:
CONFIG_BT_LE_HCI_INTERFACE
HCI mode
Found in: Component config > Bluetooth > Controller Options > HCI Config
Available options:
VHCI (CONFIG_BT_LE_HCI_INTERFACE_USE_RAM)
Use RAM as HCI interface
UART(H4) (CONFIG_BT_LE_HCI_INTERFACE_USE_UART)
Use UART as HCI interface
CONFIG_BT_LE_UART_HCI_MODE_CHOICE
UART HCI mode
Found in: Component config > Bluetooth > Controller Options > HCI Config
Specify UART HCI mode: DMA or No DMA
Available options:
UHCI(UART with DMA)(EXPERIMENTAL) (CONFIG_BT_LE_UART_HCI_DMA_MODE)
UART HCI Mode with DMA functionality.
UART(NO DMA) (CONFIG_BT_LE_UART_HCI_NO_DMA_MODE)
UART HCI Mode without DMA functionality.
CONFIG_BT_LE_HCI_UART_PORT
HCI UART port
Found in: Component config > Bluetooth > Controller Options > HCI Config
Set the port number of HCI UART
- Symbol can be set when:
CONFIG_BT_LE_HCI_INTERFACE_USE_UART is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
1
CONFIG_BT_LE_HCI_UART_FLOWCTRL
HCI uart Hardware Flow ctrl
Found in: Component config > Bluetooth > Controller Options > HCI Config
- Symbol can be set when:
CONFIG_BT_LE_HCI_INTERFACE_USE_UART is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_HCI_UART_TX_PIN
HCI uart Tx gpio
Found in: Component config > Bluetooth > Controller Options > HCI Config
- Symbol can be set when:
CONFIG_BT_LE_HCI_INTERFACE_USE_UART is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
19
CONFIG_BT_LE_HCI_UART_RX_PIN
HCI uart Rx gpio
Found in: Component config > Bluetooth > Controller Options > HCI Config
- Symbol can be set when:
CONFIG_BT_LE_HCI_INTERFACE_USE_UART is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
10
CONFIG_BT_LE_HCI_UART_RTS_PIN
HCI uart RTS gpio
Found in: Component config > Bluetooth > Controller Options > HCI Config
- Symbol can be set when:
CONFIG_BT_LE_HCI_UART_FLOWCTRL is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
4
CONFIG_BT_LE_HCI_UART_CTS_PIN
HCI uart CTS gpio
Found in: Component config > Bluetooth > Controller Options > HCI Config
- Symbol can be set when:
CONFIG_BT_LE_HCI_UART_FLOWCTRL is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
5
CONFIG_BT_LE_HCI_UART_BAUD
HCI uart baudrate
Found in: Component config > Bluetooth > Controller Options > HCI Config
HCI uart baud rate 115200 ~ 1000000
- Symbol can be set when:
CONFIG_BT_LE_HCI_INTERFACE_USE_UART is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
921600
CONFIG_BT_LE_HCI_UART_PARITY
select uart parity
Found in: Component config > Bluetooth > Controller Options > HCI Config
Available options:
PARITY_DISABLE (CONFIG_BT_LE_HCI_UART_UART_PARITY_DISABLE)
UART_PARITY_DISABLE
PARITY_EVEN (CONFIG_BT_LE_HCI_UART_UART_PARITY_EVEN)
UART_PARITY_EVEN
PARITY_ODD (CONFIG_BT_LE_HCI_UART_UART_PARITY_ODD)
UART_PARITY_ODD
CONFIG_BT_LE_HCI_UART_RX_BUFFER_SIZE
The size of rx ring buffer memory
Found in: Component config > Bluetooth > Controller Options > HCI Config
The size of rx ring buffer memory
- Symbol can be set when:
CONFIG_BT_LE_UART_HCI_NO_DMA_MODE is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
512
CONFIG_BT_LE_HCI_UART_TX_BUFFER_SIZE
The size of tx ring buffer memory
Found in: Component config > Bluetooth > Controller Options > HCI Config
The size of tx ring buffer memory
- Symbol can be set when:
CONFIG_BT_LE_UART_HCI_NO_DMA_MODE is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
256
CONFIG_BT_LE_HCI_TRANS_TASK_STACK_SIZE
HCI transport task stack size
Found in: Component config > Bluetooth > Controller Options > HCI Config
This configures stack size of hci transport task
- Symbol can be set when:
CONFIG_BT_LE_HCI_INTERFACE_USE_RAM is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
2048
CONFIG_BT_LE_HCI_TRANS_RX_MEM_NUM
The amount of rx memory received at the same time
Found in: Component config > Bluetooth > Controller Options > HCI Config
The amount of rx memory received at the same time
- Symbol can be set when:
CONFIG_BT_LE_UART_HCI_DMA_MODE is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
3
CONFIG_BT_LE_HCI_LLDESCS_POOL_NUM
The amount of lldecs memory for driver dma mode (Deprecated)
Found in: Component config > Bluetooth > Controller Options > HCI Config
The amount of lldecs memory for driver dma mode.
Deprecated: this option is no longer used after HCI UART DMA switched to UHCI driver APIs, and will be removed in a future release.
- Symbol can be set when:
CONFIG_BT_LE_UART_HCI_DMA_MODE is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
20
CONFIG_BT_LE_50_FEATURE_SUPPORT
Enable BLE 5 feature
Found in: Component config > Bluetooth > Controller Options
Enable BLE 5 feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_USE_BLE_50
Contains:
CONFIG_BT_LE_LL_CFG_FEAT_LE_2M_PHY
Enable 2M Phy
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
Enable 2M-PHY
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_LL_CFG_FEAT_LE_CODED_PHY
Enable coded Phy
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
Enable coded-PHY
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_EXT_ADV
Enable extended advertising
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
Enable this option to do extended advertising. Extended advertising will be supported from BLE 5.0 onwards.
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_MAX_EXT_ADV_INSTANCES
Maximum number of extended advertising instances.
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT > CONFIG_BT_LE_EXT_ADV
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. Each extended advertising instance will take about 0.5k DRAM.
- Symbol can be set when:
CONFIG_BT_LE_EXT_ADV is enabled && CONFIG_BT_LE_EXT_ADV is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 0 to 4
- Default value:
1
CONFIG_BT_LE_EXT_ADV_MAX_SIZE
Maximum length of the advertising data.
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT > CONFIG_BT_LE_EXT_ADV
Defines the length of the extended adv data. The value should not exceed 1650.
- Symbol can be set when:
CONFIG_BT_LE_EXT_ADV is enabled && CONFIG_BT_LE_EXT_ADV is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 0 to 1650
- Default value:
1650
CONFIG_BT_LE_ENABLE_PERIODIC_ADV
Enable periodic advertisement.
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT > CONFIG_BT_LE_EXT_ADV
Enable this option to start periodic advertisement.
- Symbol can be set when:
CONFIG_BT_LE_EXT_ADV is enabled && CONFIG_BT_LE_EXT_ADV is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_PERIODIC_ADV_SYNC_TRANSFER
Enable Transfer Sync Events
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT > CONFIG_BT_LE_EXT_ADV > CONFIG_BT_LE_ENABLE_PERIODIC_ADV
This enables controller transfer periodic sync events to host
- Symbol can be set when:
CONFIG_BT_LE_ENABLE_PERIODIC_ADV is enabled && CONFIG_BT_LE_EXT_ADV is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_MAX_PERIODIC_SYNCS
Maximum number of periodic advertising syncs
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
Set this option to set the upper limit for number of periodic sync connections. This should be less than maximum connections allowed by controller.
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 0 to 8
- Default value:
1 if CONFIG_BT_LE_ENABLE_PERIODIC_ADV is enabled
0
CONFIG_BT_LE_MAX_PERIODIC_ADVERTISER_LIST
Maximum number of periodic advertiser list
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
Set this option to set the upper limit for number of periodic advertiser list.
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 1 to 5
- Default value:
5
CONFIG_BT_LE_POWER_CONTROL_ENABLED
Enable controller support for BLE Power Control
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
Set this option to enable the Power Control feature on controller
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_SUBRATE_ENABLED
Enable BLE connection subrating
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
Set this option to enable the Connection Subrating feature on controller
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_BLUEDROID_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTE_FEATURE_ENABLED
Enable Bluetooth LE Direction Finding (AoA/AoD)
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
Enable this option to activate Bluetooth LE Direction Finding (AoA/AoD) feature. Note: This feature allows devices to determine the direction of a Bluetooth CTE signal, enabling Angle of Arrival (AoA) and Angle of Departure (AoD) functionality.
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_PERIODIC_ADV_WITH_RESPONSE_ENABLED
Enable BLE periodic advertising with response
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_50_FEATURE_SUPPORT
This enables BLE periodic advertising with response feature
- Symbol can be set when:
CONFIG_BT_LE_50_FEATURE_SUPPORT is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
Memory Settings
Contains:
CONFIG_BT_LE_MSYS_1_BLOCK_COUNT
MSYS_1 Block Count
Found in: Component config > Bluetooth > Controller Options > Memory Settings
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.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
12
CONFIG_BT_LE_MSYS_1_BLOCK_SIZE
MSYS_1 Block Size
Found in: Component config > Bluetooth > Controller Options > Memory Settings
Dynamic memory size of block 1
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
256
CONFIG_BT_LE_MSYS_2_BLOCK_COUNT
MSYS_2 Block Count
Found in: Component config > Bluetooth > Controller Options > Memory Settings
Dynamic memory count
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
24
CONFIG_BT_LE_MSYS_2_BLOCK_SIZE
MSYS_2 Block Size
Found in: Component config > Bluetooth > Controller Options > Memory Settings
Dynamic memory size of block 2
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
320
CONFIG_BT_LE_MSYS_BUF_FROM_HEAP
Get Msys Mbuf from heap
Found in: Component config > Bluetooth > Controller Options > Memory Settings
This option sets the source of the shared msys mbuf memory between the Host and the Controller. Allocate the memory from the heap if this option is sets, from the mempool otherwise.
- Symbol can be set when:
CONFIG_BT_LE_MSYS_INIT_IN_CONTROLLER is enabled && CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_ACL_BUF_COUNT
ACL Buffer count
Found in: Component config > Bluetooth > Controller Options > Memory Settings
The number of ACL data buffers.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
10
CONFIG_BT_LE_ACL_BUF_SIZE
ACL Buffer size
Found in: Component config > Bluetooth > Controller Options > Memory Settings
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)
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
517
CONFIG_BT_LE_HCI_EVT_BUF_SIZE
HCI Event Buffer size
Found in: Component config > Bluetooth > Controller Options > Memory Settings
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.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
257 if CONFIG_BT_LE_EXT_ADV is enabled
70
CONFIG_BT_LE_HCI_EVT_HI_BUF_COUNT
High Priority HCI Event Buffer count
Found in: Component config > Bluetooth > Controller Options > Memory Settings
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
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
30
CONFIG_BT_LE_HCI_EVT_LO_BUF_COUNT
Low Priority HCI Event Buffer count
Found in: Component config > Bluetooth > Controller Options > Memory Settings
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
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
8
CONFIG_BT_LE_CONTROLLER_TASK_STACK_SIZE
Controller task stack size
Found in: Component config > Bluetooth > Controller Options
This configures stack size of NimBLE controller task
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
5120 if CONFIG_BLE_MESH is enabled
4096
Controller debug features
Contains:
CONFIG_BT_LE_ERROR_SIM_ENABLED
Enable controller features for internal testing
Found in: Component config > Bluetooth > Controller Options > Controller debug features
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_ASSERT_WHEN_ABNORMAL_DISCONN_ENABLED
When ACL disconnects abnormally, assertion processing is performed(Experimental)
Found in: Component config > Bluetooth > Controller Options > Controller debug features
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_DEBUG_REMAIN_SCENE_ENABLED
Remain scene with GDB to capture relevant status info(Experimental)
Found in: Component config > Bluetooth > Controller Options > Controller debug features
Retain scene with GDB to capture info, requires disabling WDT (CONFIG_ESP_INT_WDT, CONFIG_ESP_TASK_WDT_EN).
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_PTR_CHECK_ENABLED
Enable boundary check for internal memory
Found in: Component config > Bluetooth > Controller Options > Controller debug features
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_MEM_CHECK_ENABLED
Enable memory allocation check
Found in: Component config > Bluetooth > Controller Options > Controller debug features
Used in internal tests only. Enable the memory allocation check.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_LL_RESOLV_LIST_SIZE
BLE LL Resolving list size
Found in: Component config > Bluetooth > Controller Options
Configure the size of resolving list used in link layer.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 1 to 5
- Default value:
4
CONFIG_BT_LE_SECURITY_ENABLE
Enable BLE SM feature
Found in: Component config > Bluetooth > Controller Options
Enable BLE sm feature
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
Contains:
CONFIG_BT_LE_SM_LEGACY
Security manager legacy pairing
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_SECURITY_ENABLE
Enable security manager legacy pairing
- Symbol can be set when:
CONFIG_BT_LE_SECURITY_ENABLE is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_SM_SC
Security manager secure connections (4.2)
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_SECURITY_ENABLE
Enable security manager secure connections
- Symbol can be set when:
CONFIG_BT_LE_SECURITY_ENABLE is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_SM_SC_DEBUG_KEYS
Use predefined public-private key pair
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_SECURITY_ENABLE > CONFIG_BT_LE_SM_SC
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.
- Symbol can be set when:
CONFIG_BT_LE_SECURITY_ENABLE is enabled && CONFIG_BT_LE_SM_SC is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_LL_CFG_FEAT_LE_ENCRYPTION
Enable LE encryption
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_SECURITY_ENABLE
Enable encryption connection
- Symbol can be set when:
CONFIG_BT_LE_SECURITY_ENABLE is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_WHITELIST_SIZE
BLE white list size
Found in: Component config > Bluetooth > Controller Options
BLE list size
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 1 to 31
- Default value:
12
CONFIG_BT_LE_LL_DUP_SCAN_LIST_COUNT
BLE duplicate scan list count
Found in: Component config > Bluetooth > Controller Options
config the max count of duplicate scan list
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 5 to 100
- Default value:
20
CONFIG_BT_LE_LL_SCA
BLE Sleep clock accuracy
Found in: Component config > Bluetooth > Controller Options
Sleep clock accuracy of our device (in ppm) The Bluetooth LE spec requires a Sleep Clock Accuracy (SCA) of < ±500 ppm. This options allows for a larger value to enable the use of less accurate clock sources.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 0 to 3000
- Default value:
60
CONFIG_BT_LE_LL_PEER_SCA_SET_ENABLE
Enable to set constant peer SCA
Found in: Component config > Bluetooth > Controller Options
Enable setting of constant peer SCA, use this if peer device has SCA larger than 500 PPM. Enable this option, the controller will always use BT_LE_LL_PEER_SCA as the peer SCA value to calculate the window widening instead of the value received from peer device.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_LL_PEER_SCA
Constant peer sleep clock accuracy value
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_LL_PEER_SCA_SET_ENABLE
Set the sleep clock accuracy of peer device
- Symbol can be set when:
CONFIG_BT_LE_LL_PEER_SCA_SET_ENABLE is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 0 to 10000
- Default value:
0
CONFIG_BT_LE_MAX_CONNECTIONS
Maximum number of concurrent connections
Found in: Component config > Bluetooth > Controller Options
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. Each connection will take about 1k DRAM.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 1 to 70
- Default value:
3
CONFIG_BT_LE_COEX_PHY_CODED_TX_RX_TLIM
Coexistence: limit on MAX Tx/Rx time for coded-PHY connection
Found in: Component config > Bluetooth > Controller Options
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.
Available options:
Force Enable (CONFIG_BT_LE_COEX_PHY_CODED_TX_RX_TLIM_EN)
Always enable the limitation on max tx/rx time for Coded-PHY connection
Force Disable (CONFIG_BT_LE_COEX_PHY_CODED_TX_RX_TLIM_DIS)
Disable the limitation on max tx/rx time for Coded-PHY connection
CONFIG_BT_LE_SLEEP_ENABLE
Enable BLE sleep
Found in: Component config > Bluetooth > Controller Options
Enable BLE sleep
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_LP_CLK_SRC
BLE low power clock source
Found in: Component config > Bluetooth > Controller Options
Available options:
Use main XTAL as RTC clock source (CONFIG_BT_LE_LP_CLK_SRC_MAIN_XTAL)
User main XTAL as RTC clock source. This option is recommended if external 32.768k XTAL is not available. Using the external 32.768 kHz XTAL will have lower current consumption in light sleep compared to using the main XTAL.
Use system RTC slow clock source (CONFIG_BT_LE_LP_CLK_SRC_DEFAULT)
Use the same slow clock source as system RTC Using any clock source other than external 32.768 kHz XTAL supports only legacy ADV and SCAN due to low clock accuracy.
CONFIG_BT_LE_USE_ESP_TIMER
Enable Esp Timer for Callout
Found in: Component config > Bluetooth > Controller Options
Set this option to use Esp Timer which has higher priority timer instead of FreeRTOS timer
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is disabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP
BLE adv report flow control supported
Found in: Component config > Bluetooth > Controller Options
The function is mainly used to enable flow control for advertising reports. When it is enabled, advertising reports will be discarded by the controller if the number of unprocessed advertising reports exceeds the size of BLE adv report flow control.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM
BLE adv report flow control number
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP
The number of unprocessed advertising report that bluetooth host can save.If you set BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM to a small value, this may cause adv packets lost. If you set BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM to a large value, bluetooth host may cache a lot of adv packets and this may cause system memory run out. For example, if you set it to 50, the maximum memory consumed by host is 35 * 50 bytes. Please set BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_NUM according to your system free memory and handle adv packets as fast as possible, otherwise it will cause adv packets lost.
- Symbol can be set when:
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 50 to 1000
- Default value:
100
CONFIG_BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD
BLE adv lost event threshold value
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP
When adv report flow control is enabled, The ADV lost event will be generated when the number of ADV packets lost in the controller reaches this threshold. It is better to set a larger value. If you set BT_CTRL_BLE_ADV_REPORT_DISCARD_THRSHOLD to a small value or printf every adv lost event, it may cause adv packets lost more.
- Symbol can be set when:
CONFIG_BT_CTRL_BLE_ADV_REPORT_FLOW_CTRL_SUPP is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 1 to 1000
- Default value:
20
CONFIG_BT_LE_SCAN_DUPL
BLE Scan Duplicate Options
Found in: Component config > Bluetooth > Controller Options
This select enables parameters setting of BLE scan duplicate.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_USE_DUPLICATE_SCAN
CONFIG_BT_LE_SCAN_DUPL_TYPE
Scan Duplicate Type
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_SCAN_DUPL
Scan duplicate have three ways. one is "Scan Duplicate By Device Address", This way is to use advertiser address filtering. The adv packet of the same address is only allowed to be reported once. Another way is "Scan Duplicate By Device Address And Advertising Data". This way is to use advertising data and device address filtering. All different adv packets with the same address are allowed to be reported. The last way is "Scan Duplicate By Advertising Data". This way is to use advertising data filtering. All same advertising data only allow to be reported once even though they are from different devices.
Available options:
Scan Duplicate By Device Address (CONFIG_BT_LE_SCAN_DUPL_TYPE_DEVICE)
This way is to use advertiser address filtering. The adv packet of the same address is only allowed to be reported once
Scan Duplicate By Advertising Data (CONFIG_BT_LE_SCAN_DUPL_TYPE_DATA)
This way is to use advertising data filtering. All same advertising data only allow to be reported once even though they are from different devices.
Scan Duplicate By Device Address And Advertising Data (CONFIG_BT_LE_SCAN_DUPL_TYPE_DATA_DEVICE)
This way is to use advertising data and device address filtering. All different adv packets with the same address are allowed to be reported.
CONFIG_BT_LE_SCAN_DUPL_CACHE_REFRESH_PERIOD
Duplicate scan list refresh period (seconds)
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_SCAN_DUPL
If the period value is non-zero, the controller will periodically clear the device information stored in the scan duuplicate filter. If it is 0, the scan duuplicate filter will not be cleared until the scanning is disabled. Duplicate advertisements for this period should not be sent to the Host in advertising report events. There are two scenarios where the ADV packet will be repeatedly reported: 1. The duplicate scan cache is full, the controller will delete the oldest device information and add new device information. 2. When the refresh period is up, the controller will clear all device information and start filtering again.
- Symbol can be set when:
CONFIG_BT_LE_SCAN_DUPL is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 0 to 1000
- Default value:
0
CONFIG_BT_LE_MSYS_INIT_IN_CONTROLLER
Msys Mbuf Init in Controller
Found in: Component config > Bluetooth > Controller Options
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_TX_CCA_ENABLED
Enable TX CCA feature
Found in: Component config > Bluetooth > Controller Options
Enable CCA feature to cancel sending the packet if the signal power is stronger than CCA threshold.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CCA_RSSI_THRESH
CCA RSSI threshold value
Found in: Component config > Bluetooth > Controller Options > CONFIG_BT_LE_TX_CCA_ENABLED
Power threshold of CCA in unit of -1 dBm.
- Symbol can be set when:
CONFIG_BT_LE_TX_CCA_ENABLED is enabled && CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 20 to 100
- Default value:
65
CONFIG_BT_LE_DFT_TX_POWER_LEVEL_DBM
BLE default Tx power level(dBm)
Found in: Component config > Bluetooth > Controller Options
Specify default Tx power level(dBm).
Available options:
-15dBm (CONFIG_BT_LE_DFT_TX_POWER_LEVEL_N15)
-12dBm (CONFIG_BT_LE_DFT_TX_POWER_LEVEL_N12)
- -9dBm
(CONFIG_BT_LE_DFT_TX_POWER_LEVEL_N9)
- -6dBm
(CONFIG_BT_LE_DFT_TX_POWER_LEVEL_N6)
- -3dBm
(CONFIG_BT_LE_DFT_TX_POWER_LEVEL_N3)
0dBm (CONFIG_BT_LE_DFT_TX_POWER_LEVEL_N0)
- +3dBm
(CONFIG_BT_LE_DFT_TX_POWER_LEVEL_P3)
- +6dBm
(CONFIG_BT_LE_DFT_TX_POWER_LEVEL_P6)
- +9dBm
(CONFIG_BT_LE_DFT_TX_POWER_LEVEL_P9)
+12dBm (CONFIG_BT_LE_DFT_TX_POWER_LEVEL_P12)
+15dBm (CONFIG_BT_LE_DFT_TX_POWER_LEVEL_P15)
+18dBm (CONFIG_BT_LE_DFT_TX_POWER_LEVEL_P18)
+20dBm (CONFIG_BT_LE_DFT_TX_POWER_LEVEL_P20)
CONFIG_BT_LE_CTRL_CHECK_CONNECT_IND_ACCESS_ADDRESS
Enable enhanced Access Address check in CONNECT_IND
Found in: Component config > Bluetooth > Controller Options
Enabling this option will add stricter verification of the Access Address in the CONNECT_IND PDU. This improves security by ensuring that only connection requests with valid Access Addresses are accepted. If disabled, only basic checks are applied, improving compatibility.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_CTRL_RUN_IN_FLASH_ONLY
Reduce BLE IRAM usage (READ DOCS FIRST) (EXPERIMENTAL)
Found in: Component config > Bluetooth > Controller Options
Move most IRAM into flash. This will increase the usage of flash and reduce ble performance. Because the code is moved to the flash, the execution speed of the code is reduced. To have a small impact on performance, you need to enable flash suspend (SPI_FLASH_AUTO_SUSPEND).
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
BLE disconnects when Instant Passed (0x28) occurs
Contains:
CONFIG_BT_LE_CTRL_LLCP_CONN_UPDATE
BLE ACL connection update procedure
Found in: Component config > Bluetooth > Controller Options > BLE disconnects when Instant Passed (0x28) occurs
If this option is enabled, Controller will terminate the connection when Instant Passed (0x28) error occurs during connection update procedure.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTRL_LLCP_CHAN_MAP_UPDATE
BLE ACL channel map update procedure
Found in: Component config > Bluetooth > Controller Options > BLE disconnects when Instant Passed (0x28) occurs
If this option is enabled, Controller will terminate the connection when Instant Passed (0x28) error occurs in channel map update procedure.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTRL_LLCP_PHY_UPDATE
BLE ACL PHY update procedure
Found in: Component config > Bluetooth > Controller Options > BLE disconnects when Instant Passed (0x28) occurs
If this option is enabled, Controller will terminate the connection when Instant Passed (0x28) error occurs in PHY update procedure.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_CTRL_SCAN_BACKOFF_UPPERLIMITMAX
The value of upperlimitmax during scan backoff procedure
Found in: Component config > Bluetooth > Controller Options
The value of upperlimitmax needs to be a power of 2.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 1 to 256
- Default value:
32
CONFIG_BT_LE_CTRL_CHAN_ASS_EN
Enable channel assessment(Experimental)
Found in: Component config > Bluetooth > Controller Options
If this option is enabled, The Controller will records the communication quality for each channel and then start a timer to check and update the channel map every 4 seconds.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTRL_ADV_DATA_LENGTH_ZERO_AUX
Enable aux packet when ext adv data length is zero(Experimental)
Found in: Component config > Bluetooth > Controller Options
When this option is enabled, auxiliary packets will be present in the events of 'Non-Connectable and Non-Scannable' regardless of whether the advertising length is 0. If this option is not enabled, auxiliary packets will only be present when the advertising length is not 0.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_RXBUF_OPT_ENABLED
Enable rxbuf optimization feature
Found in: Component config > Bluetooth > Controller Options
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
CONFIG_BT_LE_CTRL_FAST_CONN_DATA_TX_EN
Enable fast sending of connection data
Found in: Component config > Bluetooth > Controller Options
If this option is enabled, The Controller will continue to Send an empty PDU after sending valid connection data within an interval.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Enabled
Reserved Memory Config
Contains:
CONFIG_BT_LE_EXT_ADV_RESERVED_MEMORY_COUNT
The value of reserved EXT ADV memory count at initialization
Found in: Component config > Bluetooth > Controller Options > Reserved Memory Config
This value sets the number the Controller will allocate for extended advertisement instances at initialization process. If more extended advertisement instances are enabled, those memory will be dynamically allocated. Using reduced amount of reserved memory will save heap size at the cost of extra time consumption at advertising start process and possible advertising start failure due to memory shortage. The actual reserved memory count will be the minimum value between the maximum extended advertisement instances and the BT_LE_EXT_ADV_RESERVED_MEMORY_COUNT.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 0 to 4
- Default value:
2
CONFIG_BT_LE_CONN_RESERVED_MEMORY_COUNT
The value of reserved CONN memory count at initialization
Found in: Component config > Bluetooth > Controller Options > Reserved Memory Config
This value sets the number the Controller will allocate for connection instances at the initialization process. If more connection instances are enabled, those memory will be dynamically allocated. Using reduced amount of reserved memory will save heap size at the cost of extra time consumption at connection establishment process and possible connection establishment failure due to memory shortage. The actual reserved memory count will be the minimum value between the maximum connection instances and the BT_LE_CONN_RESERVED_MEMORY_COUNT.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Range:
from 0 to 70
- Default value:
2
CONFIG_BT_LE_DTM_ENABLED
Enable Direct Test Mode (DTM) feature
Found in: Component config > Bluetooth > Controller Options
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
Scheduling Priority Level Config
Contains:
CONFIG_BT_LE_ADV_SCHED_PRIO_LEVEL
The Adv scheduling priority level
Found in: Component config > Bluetooth > Controller Options > Scheduling Priority Level Config
The Adv scheduling priority level is used for arbitration when internal scheduling conflicts.
Available options:
low priority level (CONFIG_BT_LE_ADV_SCHED_PRIO_LOW_LEVEL)
medium priority level (CONFIG_BT_LE_ADV_SCHED_PRIO_MID_LEVEL)
high priority level (CONFIG_BT_LE_ADV_SCHED_PRIO_HIGH_LEVEL)
CONFIG_BT_LE_PERIODIC_ADV_SCHED_PRIO_LEVEL
The Periodic Adv scheduling priority level
Found in: Component config > Bluetooth > Controller Options > Scheduling Priority Level Config
The Periodic Adv scheduling priority level is used for arbitration when internal scheduling conflicts.
Available options:
low priority level (CONFIG_BT_LE_PERIODIC_ADV_SCHED_PRIO_LOW_LEVEL)
medium priority level (CONFIG_BT_LE_PERIODIC_ADV_SCHED_PRIO_MID_LEVEL)
high priority level (CONFIG_BT_LE_PERIODIC_ADV_SCHED_PRIO_HIGH_LEVEL)
CONFIG_BT_LE_SYNC_SCHED_PRIO_LEVEL
The Sync scheduling priority level
Found in: Component config > Bluetooth > Controller Options > Scheduling Priority Level Config
The SYNC scheduling priority level is used for arbitration when internal scheduling conflicts.
Available options:
low priority level (CONFIG_BT_LE_SYNC_SCHED_PRIO_LOW_LEVEL)
medium priority level (CONFIG_BT_LE_SYNC_SCHED_PRIO_MID_LEVEL)
high priority level (CONFIG_BT_LE_SYNC_SCHED_PRIO_HIGH_LEVEL)
CONFIG_BT_LE_CTRL_SLV_FAST_RX_CONN_DATA_EN
Enable Peripheral fast PDU reception during latency
Found in: Component config > Bluetooth > Controller Options
When this option is enabled, the Controller continues receiving PDUs In the next connection event instead of entering latency After a data packet is received.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTRL_DL_ITVL_PHY_SYNC_EN
Enables the automatic initiation of a data length update(Experimental).
Found in: Component config > Bluetooth > Controller Options
When this option is enabled, the Controller automatically initiates a data length update Using the appropriate data length parameters When a PHY update or a connection interval update occurs.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTRL_ADV_FAST_TX_EN
Reduce adv enable-to-air latency (READ DOCS FIRST) (EXPERIMENTAL)
Found in: Component config > Bluetooth > Controller Options
Reduce the latency between issuing the advertising enable command and the actual on-air transmission by executing the advertising TX path from IRAM. Note: Enabling this option increases IRAM usage.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
Adv Tx Options
Contains:
CONFIG_BT_LE_CTRL_ADV_EVENT_INC_ON_FULL_TX_EN
Increment advertising event count only on full PDU TX success
Found in: Component config > Bluetooth > Controller Options > Adv Tx Options
When enabled, the advertising event count is incremented only if all PDUs in an advertising event are transmitted successfully. If disabled, the event count is incremented regardless of transmission success.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTRL_ADV_CH38_39_TX_AVOID_CONFLICT_EN
Delay advertising TX on channels 38/39 to avoid scheduling conflicts
Found in: Component config > Bluetooth > Controller Options > Adv Tx Options
When enabled, advertising transmissions on channels 38 and 39 are delayed if a scheduling conflict occurs.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_ADV_CH39_TXPWR_CONFIG_SEPARATELY_EN
Enable separate TX power for advertising on channel 39
Found in: Component config > Bluetooth > Controller Options > Adv Tx Options
When enabled, the TX power for advertising transmissions on channel 39 can be configured independently of other channels.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTRL_ADV_TX_CONTINUE_WHEN_EXCEED_ITVL_EN
Allow advertising TX to continue if data TX exceeds interval
Found in: Component config > Bluetooth > Controller Options > Adv Tx Options
When enabled, advertising transmission continues even if the TX duration for advertising data exceeds the configured advertising interval.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_CTRL_ADV_RAND_CH_IDX_EN
Enable Randomized Advertising Channel Indexing
Found in: Component config > Bluetooth > Controller Options > Adv Tx Options
When enabled, the advertising channel sequence is randomized according to the Randomized Advertising Channel Indexing feature. If disabled, the standard channel sequence is used.
- Symbol can be set when:
CONFIG_BT_CONTROLLER_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_DBM
BLE default channel 39 Tx power level (dBm)
Found in: Component config > Bluetooth > Controller Options > Adv Tx Options
Default Tx power (dBm) for advertising on channel 39 when separate channel 39 power is enabled.
Available options:
-15dBm (CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_N15)
-12dBm (CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_N12)
- -9dBm
(CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_N9)
- -6dBm
(CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_N6)
- -3dBm
(CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_N3)
0dBm (CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_N0)
- +3dBm
(CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_P3)
- +6dBm
(CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_P6)
- +9dBm
(CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_P9)
+12dBm (CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_P12)
+15dBm (CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_P15)
+18dBm (CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_P18)
+20dBm (CONFIG_BT_LE_DFT_CH39_TX_POWER_LEVEL_P20)
CONFIG_BT_HCI_LOG_DEBUG_EN
Enable Bluetooth HCI debug mode
Found in: Component config > Bluetooth
This option is used to enable bluetooth debug mode, which saves the hci layer data stream.
- Symbol can be set when:
CONFIG_BT_BLUEDROID_ENABLED is enabled || CONFIG_BT_NIMBLE_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_HCI_LOG_DATA_BUFFER_SIZE
Size of the cache used for HCI data in Bluetooth HCI debug mode (N*1024 bytes)
Found in: Component config > Bluetooth > CONFIG_BT_HCI_LOG_DEBUG_EN
This option is to configure the buffer size of the hci data steam cache in hci debug mode. This is a ring buffer, the new data will overwrite the oldest data if the buffer is full.
- Symbol can be set when:
CONFIG_BT_HCI_LOG_DEBUG_EN is enabled
- Range:
from 1 to 100
- Default value:
5
CONFIG_BT_HCI_LOG_ADV_BUFFER_SIZE
Size of the cache used for adv report in Bluetooth HCI debug mode (N*1024 bytes)
Found in: Component config > Bluetooth > CONFIG_BT_HCI_LOG_DEBUG_EN
This option is to configure the buffer size of the hci adv report cache in hci debug mode. This is a ring buffer, the new data will overwrite the oldest data if the buffer is full.
- Symbol can be set when:
CONFIG_BT_HCI_LOG_DEBUG_EN is enabled
- Range:
from 1 to 100
- Default value:
8
BLE Profiles
Contains:
CONFIG_BT_PRF_TASK_ENABLED
Enable the shared BLE profile task (event queue worker)
Found in: Component config > Bluetooth > BLE Profiles
Build the shared BLE profile task: a single process-wide event queue served by one dedicated FreeRTOS task, onto which BLE profiles post short, non-blocking handlers instead of each spawning its own task.
Host-agnostic (depends only on the BT OSAL and FreeRTOS), so both the Bluedroid and NimBLE hosts can use it. A profile that relies on the shared task should "select BT_PRF_TASK_ENABLED" in its own Kconfig.
- Symbol can be set when:
CONFIG_BT_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_OSAL_ENABLED
CONFIG_BT_PRF_TASK_STACK_SIZE
Shared BLE profile task stack size (bytes)
Found in: Component config > Bluetooth > BLE Profiles > CONFIG_BT_PRF_TASK_ENABLED
Stack size, in bytes, of the shared BLE profile task. It must be large enough for the deepest profile handler posted to the queue; raise it if a handler needs more stack.
- Symbol can be set when:
CONFIG_BT_PRF_TASK_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 2048 to 16384
- Default value:
3072
CONFIG_BT_PRF_TASK_PRIORITY
Shared BLE profile task priority
Found in: Component config > Bluetooth > BLE Profiles > CONFIG_BT_PRF_TASK_ENABLED
FreeRTOS priority of the shared BLE profile task. Keep it below the BLE host task so profile handling never starves the protocol stack.
- Symbol can be set when:
CONFIG_BT_PRF_TASK_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to 24
- Default value:
5
CONFIG_BT_PRF_TASK_CORE_ID
Shared BLE profile task core affinity
Found in: Component config > Bluetooth > BLE Profiles > CONFIG_BT_PRF_TASK_ENABLED
Core the shared BLE profile task is pinned to: 0 for CPU0, 1 for CPU1, or -1 to leave it unpinned so the scheduler may run it on either core.
On a single-core target the only valid values are 0 and -1. Pinning the task to the core that does not run the BLE host can keep profile handlers from competing with the protocol stack for CPU time.
- Symbol can be set when:
CONFIG_BT_PRF_TASK_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from -1 to 0
- Default value:
0
Object Transfer Service (OTS) (EXPERIMENTAL)
Contains:
CONFIG_BLE_OTS_ENABLED
Enable Object Transfer Service (OTS) (EXPERIMENTAL)
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL)
Build the Object Transfer Service profile core on top of the NimBLE host. The client and server roles are selected separately below, so a device only pays for the role it actually implements. Object contents are transferred over an L2CAP connection oriented channel, so BT_NIMBLE_L2CAP_COC_MAX_NUM must be set to at least 1.
Note: this profile is experimental. Its public API, Kconfig option names and event layout may change without notice in future releases, and it is not recommended for production use yet. Enable IDF_EXPERIMENTAL_FEATURES to make this option selectable.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_NIMBLE_L2CAP_COC_MAX_NUM >= 1 && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_ESL_AP_ROLE
forcefully enabled by CONFIG_BLE_ESL_OTS_SUPPORT
OTS Client
Contains:
CONFIG_BLE_OTS_CLIENT_ENABLED
Enable OTS Client
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Client
Enable the Object Transfer Service Client component. When disabled, no OTS client code is compiled in, saving flash and RAM on devices that act only as OTS servers.
- Symbol can be set when:
CONFIG_BLE_OTS_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_ESL_AP_ROLE
CONFIG_BLE_OTS_CLIENT_OACP_TIMEOUT_MS
OACP response timeout (ms)
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Client > CONFIG_BLE_OTS_CLIENT_ENABLED
Maximum time in milliseconds to wait for an OACP control-point response indication (T_OACP) before reporting a CP_TIMEOUT event. Increase this value on links with high latency or when the server performs slow storage operations.
- Symbol can be set when:
CONFIG_BLE_OTS_CLIENT_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1000 to 120000
- Default value:
30000
CONFIG_BLE_OTS_CLIENT_OLCP_TIMEOUT_MS
OLCP response timeout (ms)
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Client > CONFIG_BLE_OTS_CLIENT_ENABLED
Maximum time in milliseconds to wait for an OLCP control-point response indication (T_OLCP) before reporting a CP_TIMEOUT event. Increase this value if the server's object list is very large and sorting or filtering takes significant time.
- Symbol can be set when:
CONFIG_BLE_OTS_CLIENT_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1000 to 120000
- Default value:
30000
CONFIG_BLE_OTS_CLIENT_TRANSFER_TIMEOUT_MS
Transfer inactivity timeout (ms)
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Client > CONFIG_BLE_OTS_CLIENT_ENABLED
Inactivity timeout in milliseconds for the Object Transfer Channel. If no data is sent or received within this period a TRANSFER_TIMEOUT event is raised. Raise this value for very large objects over slow links.
- Symbol can be set when:
CONFIG_BLE_OTS_CLIENT_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1000 to 120000
- Default value:
30000
CONFIG_BLE_OTS_CLIENT_MAX_NAME_LEN
Maximum Object Name length (octets)
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Client > CONFIG_BLE_OTS_CLIENT_ENABLED
Maximum length of an Object Name string in octets. This controls the size of internal buffers used when reading or writing the Object Name characteristic. The Bluetooth specification allows up to 120 octets; increase only if the server uses a vendor extension.
- Symbol can be set when:
CONFIG_BLE_OTS_CLIENT_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to 512
- Default value:
120
OTS Server
Contains:
CONFIG_BLE_OTS_SERVER_ENABLED
Enable OTS Server
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Server
Enable the Object Transfer Service Server component. When disabled, no OTS server code is compiled in, saving flash and RAM on devices that act only as OTS clients.
- Symbol can be set when:
CONFIG_BLE_OTS_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_ESL_OTS_SUPPORT
CONFIG_BLE_OTS_SERVER_MAX_OBJECTS
Maximum number of objects
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Server > CONFIG_BLE_OTS_SERVER_ENABLED
Maximum number of objects the server can store in its internal database at the same time. Each object slot consumes RAM for metadata and content storage. Lower this value on memory-constrained devices.
- Symbol can be set when:
CONFIG_BLE_OTS_SERVER_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to 255
- Default value:
10
CONFIG_BLE_OTS_SERVER_MAX_CONCURRENCY
Maximum concurrent client connections
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Server > CONFIG_BLE_OTS_SERVER_ENABLED
Maximum number of client connections that can perform object operations concurrently. Each concurrent slot allocates per-connection state (current object, filters, transfer context). Set this to the expected peak number of simultaneous BLE connections.
- Symbol can be set when:
CONFIG_BLE_OTS_SERVER_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to 16
- Default value:
1
CONFIG_BLE_OTS_SERVER_TRANSFER_TIMEOUT_SEC
Transfer inactivity timeout (seconds)
Found in: Component config > Bluetooth > BLE Profiles > Object Transfer Service (OTS) (EXPERIMENTAL) > OTS Server > CONFIG_BLE_OTS_SERVER_ENABLED
Inactivity timeout in seconds for object read and write transfers over the Object Transfer Channel. If no data is exchanged within this period the transfer is aborted and the object lock is released. Increase for very large objects or slow links.
- Symbol can be set when:
CONFIG_BLE_OTS_SERVER_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to 300
- Default value:
30
Electronic Shelf Label (ESL) (EXPERIMENTAL)
Contains:
CONFIG_BLE_ESL_ENABLED
Enable Electronic Shelf Label (ESL) (EXPERIMENTAL)
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL)
Build the Electronic Shelf Label profile core on top of the NimBLE host. The Tag and Access Point roles are selected separately below, so a device only pays for the role it actually implements.
Both roles exchange commands over Periodic Advertising with Responses (PAwR). Display images are transferred over the Object Transfer Service, which is selected automatically when needed.
Note: this profile is experimental. Its public API, Kconfig option names and event layout may change without notice in future releases, and it is not recommended for production use yet. Enable IDF_EXPERIMENTAL_FEATURES to make this option selectable.
- Symbol can be set when:
CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_ESL_TAG_ROLE
Enable ESL Tag role
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > CONFIG_BLE_ESL_ENABLED
Enable the Electronic Shelf Label (ESL) Tag role. When enabled, the device can operate as an ESL tag that receives commands from an Access Point over PAwR.
- Symbol can be set when:
CONFIG_BLE_ESL_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BLE_ESL_AP_ROLE
Enable ESL Access Point role
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > CONFIG_BLE_ESL_ENABLED
Enable the Electronic Shelf Label (ESL) Access Point role. When enabled, the device can operate as an AP that manages and synchronises ESL tags via PAwR. The AP always pulls in the OTS client, which it uses to push images to the tags.
- Symbol can be set when:
CONFIG_BLE_ESL_ENABLED is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_OTS_ENABLED
forcefully enables CONFIG_BLE_OTS_CLIENT_ENABLED
Access Point Configuration
Contains:
CONFIG_BLE_ESL_AP_MAX_CONNECTIONS
Maximum simultaneous ACL connections
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > CONFIG_BLE_ESL_ENABLED > CONFIG_BLE_ESL_AP_ROLE > Access Point Configuration
Maximum number of simultaneous ACL connections to ESL devices. Increasing this value allows the AP to configure more tags in parallel but consumes additional memory and radio time. Must not exceed the NimBLE connection limit.
- Symbol can be set when:
CONFIG_BLE_ESL_AP_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to
- Default value:
8
CONFIG_BLE_ESL_AP_MAX_ESLS
Maximum number of tracked ESLs
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > CONFIG_BLE_ESL_ENABLED > CONFIG_BLE_ESL_AP_ROLE > Access Point Configuration
Maximum number of ESL tags tracked across all states (unassociated, synchronising, synchronised, etc.). Increase this if the deployment manages a large number of tags. Each tracked ESL consumes a small amount of heap memory.
- Symbol can be set when:
CONFIG_BLE_ESL_AP_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to 65535
- Default value:
100
Tag Configuration
Contains:
CONFIG_BLE_ESL_MAX_DISPLAYS
Maximum number of displays
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > Tag Configuration
Maximum number of display devices exposed by the ESL tag. Set this to match the actual number of e-ink or other displays attached to the hardware.
- Symbol can be set when:
CONFIG_BLE_ESL_TAG_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 0 to 255
- Default value:
1
CONFIG_BLE_ESL_MAX_IMAGES
Maximum number of stored images
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > Tag Configuration
Maximum number of images that can be stored on the tag. This determines the number of OTS objects available for image transfer. Increasing this value requires more storage space (flash or RAM).
- Symbol can be set when:
CONFIG_BLE_ESL_TAG_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to 255
- Default value:
4
CONFIG_BLE_ESL_MAX_LEDS
Maximum number of LEDs
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > Tag Configuration
Maximum number of LEDs exposed by the ESL tag. Set this to match the actual number of controllable LEDs on the hardware.
- Symbol can be set when:
CONFIG_BLE_ESL_TAG_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 0 to 255
- Default value:
1
CONFIG_BLE_ESL_MAX_SENSORS
Maximum number of sensors
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > Tag Configuration
Maximum number of sensors exposed by the ESL tag (e.g. temperature, battery voltage). Set this to match the actual number of sensors available on the hardware.
- Symbol can be set when:
CONFIG_BLE_ESL_TAG_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 0 to 255
- Default value:
1
CONFIG_BLE_ESL_OTS_SUPPORT
Enable OTP Object Server for image storage
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > Tag Configuration
Enable the Object Transfer Protocol (OTP) server so the AP can push display images to this tag over GATT. Disable this only if the tag has no display or images are provisioned by other means.
- Symbol can be set when:
CONFIG_BLE_ESL_TAG_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_OTS_ENABLED
forcefully enables CONFIG_BLE_OTS_SERVER_ENABLED
CONFIG_BLE_ESL_MAX_IMAGE_SIZE
Maximum image size (bytes)
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > Tag Configuration > CONFIG_BLE_ESL_OTS_SUPPORT
Maximum size in octets reserved for each stored image object (its OTS Allocated Size). An OACP Write is rejected with Invalid Parameter when Offset + Length exceeds this value, since the tag does not support the OACP Append feature. Set this to the largest image the display can hold. The underlying data buffer is still allocated on demand, so this value only sets the accepted write limit.
- Symbol can be set when:
CONFIG_BLE_ESL_OTS_SUPPORT is enabled && CONFIG_BLE_ESL_TAG_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Range:
from 1 to 4194304
- Default value:
4096
CONFIG_BLE_ESL_VENDOR_SPECIFIC
Enable vendor-specific opcode support
Found in: Component config > Bluetooth > BLE Profiles > Electronic Shelf Label (ESL) (EXPERIMENTAL) > Tag Configuration
Enable handling of vendor-specific ESL opcodes. When enabled, the tag advertises a PnP ID in the Device Information Service (DIS) and accepts vendor-defined commands. Enable this if custom, manufacturer-specific ESL operations are required.
- Symbol can be set when:
CONFIG_BLE_ESL_TAG_ROLE is enabled && CONFIG_BT_NIMBLE_ENABLED is enabled && CONFIG_BT_ENABLED is enabled
- Default value:
Disabled
CONFIG_BT_HCI_LOG_INSIGHTS_ENABLE
Enable Insights for HCI LOGS BT Stack
Found in: Component config > Bluetooth
Enable this to allow the BT stack to send diagnostic events.
- Symbol can be set when:
CONFIG_BT_HCI_LOG_DEBUG_EN is enabled
CONFIG_BLE_MESH
ESP BLE Mesh Support
Found in: Component config
This option enables ESP BLE Mesh support. The specific features that are available may depend on other features that have been enabled in the stack, such as Bluetooth Support, Bluedroid Support & GATT support.
- Symbol can be set when:
CONFIG_BT_ENABLED is enabled
Contains:
CONFIG_BLE_MESH_HCI_5_0
Support sending 20ms non-connectable adv packets
Found in: Component config > CONFIG_BLE_MESH
It is a temporary solution and needs further modifications.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_V11_SUPPORT
Support ESP BLE Mesh v1.1 features (Preview)
Found in: Component config > CONFIG_BLE_MESH
Support BLE Mesh v1.1 features
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_RANDOM_ADV_INTERVAL
Support using random adv interval for mesh packets
Found in: Component config > CONFIG_BLE_MESH
Enable this option to allow using random advertising interval for mesh packets. And this could help avoid collision of advertising packets.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_BLE_HIGH_DUTY_ADV_INTERVAL if CONFIG_BT_BLUEDROID_ENABLED is enabled
forcefully enables CONFIG_BT_NIMBLE_HIGH_DUTY_ADV_ITVL if CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BLE_MESH_USE_UNIFIED_CRYPTO
Use the unified BLE tinycrypt implementation(Deprecated)
Found in: Component config > CONFIG_BLE_MESH
This configuration path is deprecated and will be removed in a future version. Please use the corresponding Kconfig options under $IDF_PATH/components/bt/common/Kconfig.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_USE_BLE_50
Support using BLE 5.0 APIs for BLE Mesh
Found in: Component config > CONFIG_BLE_MESH
This option to enable BLE Mesh using some BLE 5.0 APIs.
- Symbol can be set when:
CONFIG_BLE_MESH_EXPERIMENTAL is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_NIMBLE_50_FEATURE_SUPPORT if CONFIG_BT_NIMBLE_ENABLED is enabled
forcefully enables CONFIG_BT_NIMBLE_EXT_ADV if CONFIG_BT_NIMBLE_ENABLED is enabled
forcefully enables CONFIG_BT_BLE_50_FEATURES_SUPPORTED if CONFIG_BT_BLUEDROID_ENABLED is enabled
forcefully enables CONFIG_BT_LE_50_FEATURE_SUPPORT
Contains:
CONFIG_BLE_MESH_EXT_ADV
Enable extended advertising for BLE Mesh
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50
Enable broadcasting of BLE Mesh messages using BLE 5.0 extended advertising. This allows control of extended advertising parameters (e.g., PHY selection) while maintaining standard BLE Mesh packet length.
- Symbol can be set when:
CONFIG_BLE_MESH_USE_BLE_50 is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
Contains:
CONFIG_BLE_MESH_EXT_ADV_BUF_COUNT
Number of extended advertising buffers
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_EXT_ADV
Number of buffer slots allocated for extended advertising packets.
- Symbol can be set when:
CONFIG_BLE_MESH_EXT_ADV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 6 to 256
- Default value:
60
CONFIG_BLE_MESH_EXT_RELAY_ADV_BUF_COUNT
Number of extended relay advertising buffers
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_EXT_ADV
Number of buffer slots allocated for extended advertising packets used in message relay.
- Symbol can be set when:
CONFIG_BLE_MESH_EXT_ADV is enabled && CONFIG_BLE_MESH_RELAY is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 256
- Default value:
60
CONFIG_BLE_MESH_LONG_PACKET
Enable non-standard long packet mode for BLE Mesh
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_EXT_ADV
Enable extended-length advertising packets for BLE Mesh using BLE 5.0 extended advertising. This overrides the standard BLE Mesh packet length limitations.
- Symbol can be set when:
CONFIG_BLE_MESH_EXT_ADV is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
Contains:
CONFIG_BLE_MESH_LONG_PACKET_ADV_LEN
Maximum advertising payload length
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_EXT_ADV > CONFIG_BLE_MESH_LONG_PACKET
Maximum payload length for extended advertising packets (bytes). Range: 30-249 bytes. Default: 105. Note: Maximum access payload = (LENGTH - 17) × SEGMENT_COUNT - Transmission: Uses BLE_MESH_LONG_PACKET_TX_SEG_CNT - Reception: Uses BLE_MESH_LONG_PACKET_RX_SEG_CNT
- Symbol can be set when:
CONFIG_BLE_MESH_LONG_PACKET is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 30 to 249
- Default value:
105
CONFIG_BLE_MESH_LONG_PACKET_ADV_BUF_COUNT
Long packet advertising buffer count
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_EXT_ADV > CONFIG_BLE_MESH_LONG_PACKET
Number of advertising buffers allocated for long packet transmissions.
- Symbol can be set when:
CONFIG_BLE_MESH_LONG_PACKET is enabled && CONFIG_BLE_MESH is enabled
- Default value:
20
CONFIG_BLE_MESH_LONG_PACKET_RELAY_ADV_BUF_COUNT
Long packet relay buffer count
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_EXT_ADV > CONFIG_BLE_MESH_LONG_PACKET
Number of advertising buffers allocated for relay long packets.
- Symbol can be set when:
CONFIG_BLE_MESH_LONG_PACKET is enabled && CONFIG_BLE_MESH_RELAY is enabled && CONFIG_BLE_MESH is enabled
- Default value:
20
CONFIG_BLE_MESH_LONG_PACKET_TX_SEG_CNT
Maximum transmission segments per message
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_EXT_ADV > CONFIG_BLE_MESH_LONG_PACKET
Maximum number of segments for outgoing long packet messages. Upper bound: min(BLE_MESH_TX_SEG_MAX, BLE_MESH_LONG_PACKET_ADV_BUF_COUNT)
- Symbol can be set when:
CONFIG_BLE_MESH_LONG_PACKET is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to if CONFIG_BLE_MESH_TX_SEG_MAX < CONFIG_BLE_MESH_LONG_PACKET_ADV_BUF_COUNT
from 1 to if CONFIG_BLE_MESH_TX_SEG_MAX >= CONFIG_BLE_MESH_LONG_PACKET_ADV_BUF_COUNT
- Default value:
20
CONFIG_BLE_MESH_LONG_PACKET_RX_SEG_CNT
Maximum reception segments per message
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_EXT_ADV > CONFIG_BLE_MESH_LONG_PACKET
Maximum number of segments supported for receiving long packet messages.
- Symbol can be set when:
CONFIG_BLE_MESH_LONG_PACKET is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to
- Default value:
20
CONFIG_BLE_MESH_ADV_INST_ID
Extended adv instance for Mesh normal packets
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50
Extended ADV instance used by Mesh normal advertising packets.
- Symbol can be set when:
CONFIG_BLE_MESH_USE_BLE_50 is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 3
- Default value:
0
CONFIG_BLE_MESH_SUPPORT_MULTI_ADV
Support using multiple adv instance for BLE Mesh
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50
Enable this option to support using multiple adv instance while running BLE Mesh.
- Symbol can be set when:
CONFIG_BLE_MESH_USE_BLE_50 is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
Contains:
CONFIG_BLE_MESH_PROXY_ADV_INST_ID
Extended adv instance for Mesh proxy packets
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_SUPPORT_MULTI_ADV
Extended ADV instance used by Mesh proxy advertising packets.
- Symbol can be set when:
CONFIG_BLE_MESH_PROXY is enabled && (CONFIG_BLE_MESH_PB_GATT is enabled || CONFIG_BLE_MESH_GATT_PROXY_SERVER is enabled) && CONFIG_BLE_MESH_SUPPORT_MULTI_ADV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 3
- Default value:
1
CONFIG_BLE_MESH_SEPARATE_RELAY_ADV_INSTANCE
Use separate extended adv instance for Mesh relay packets
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_SUPPORT_MULTI_ADV
Enable this option to support using a separate extended ADV instance for Mesh relay packets.
- Symbol can be set when:
CONFIG_BLE_MESH_SUPPORT_MULTI_ADV is enabled && CONFIG_BLE_MESH_RELAY_ADV_BUF is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
Contains:
CONFIG_BLE_MESH_RELAY_ADV_INST_ID
Extended adv instance for Mesh relay packets
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_SUPPORT_MULTI_ADV > CONFIG_BLE_MESH_SEPARATE_RELAY_ADV_INSTANCE
Extended ADV instance used by Mesh relay advertising packets.
- Symbol can be set when:
CONFIG_BLE_MESH_SEPARATE_RELAY_ADV_INSTANCE is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 3
- Default value:
2
CONFIG_BLE_MESH_SEPARATE_BLE_ADV_INSTANCE
Use separate extended adv instance for BLE normal packets
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_SUPPORT_MULTI_ADV
Enable this option to support using a separate extended ADV instance for normal BLE advertising packets.
- Symbol can be set when:
CONFIG_BLE_MESH_SUPPORT_MULTI_ADV is enabled && CONFIG_BLE_MESH_SUPPORT_BLE_ADV is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
Contains:
CONFIG_BLE_MESH_BLE_ADV_INST_ID
Extended adv instance for normal BLE packets
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_USE_BLE_50 > CONFIG_BLE_MESH_SUPPORT_MULTI_ADV > CONFIG_BLE_MESH_SEPARATE_BLE_ADV_INSTANCE
Extended ADV instance used by normal BLE advertising packets.
- Symbol can be set when:
CONFIG_BLE_MESH_SEPARATE_BLE_ADV_INSTANCE is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 3
- Default value:
3
CONFIG_BLE_MESH_USE_DUPLICATE_SCAN
Support Duplicate Scan in BLE Mesh
Found in: Component config > CONFIG_BLE_MESH
Enable this option to allow using specific duplicate scan filter in BLE Mesh, and Scan Duplicate Type must be set by choosing the option in the Bluetooth Controller section in menuconfig, which is "Scan Duplicate By Device Address and Advertising Data".
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BT_LE_SCAN_DUPL
forcefully enables CONFIG_BT_NIMBLE_VS_SUPPORT if CONFIG_BT_NIMBLE_ENABLED is enabled
CONFIG_BLE_MESH_ACTIVE_SCAN
Support Active Scan in BLE Mesh
Found in: Component config > CONFIG_BLE_MESH
Enable this option to allow using BLE Active Scan for BLE Mesh.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_RPR_SRV_ACTIVE_SCAN
CONFIG_BLE_MESH_MEM_ALLOC_MODE
Memory allocation strategy
Found in: Component config > CONFIG_BLE_MESH
Allocation strategy for BLE Mesh 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
Internal IRAM memory wherever applicable else internal DRAM
Recommended mode here is always internal (*), since that is most preferred from security perspective. But if application requirement does not allow sufficient free internal memory then alternate mode can be selected.
(*) In case of ESP32-S2/ESP32-S3, hardware allows encryption of external SPIRAM contents provided hardware flash encryption feature is enabled. In that case, using external SPIRAM allocation strategy is also safe choice from security perspective.
Available options:
Internal DRAM (CONFIG_BLE_MESH_MEM_ALLOC_MODE_INTERNAL)
External SPIRAM (CONFIG_BLE_MESH_MEM_ALLOC_MODE_EXTERNAL)
Default alloc mode (CONFIG_BLE_MESH_MEM_ALLOC_MODE_DEFAULT)
Enable this option to use the default memory allocation strategy when external SPIRAM is enabled. See the SPIRAM options for more details.
Internal IRAM (CONFIG_BLE_MESH_MEM_ALLOC_MODE_IRAM_8BIT)
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.
CONFIG_BLE_MESH_DEINIT
Support de-initialize BLE Mesh stack
Found in: Component config > CONFIG_BLE_MESH
If enabled, users can use the function esp_ble_mesh_deinit() to de-initialize the whole BLE Mesh stack.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
BLE Mesh and BLE coexistence support
Contains:
CONFIG_BLE_MESH_SUPPORT_BLE_ADV
Support sending normal BLE advertising packets
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh and BLE coexistence support
When selected, users can send normal BLE advertising packets with specific API.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_BLE_ADV_BUF_COUNT
Number of advertising buffers for BLE advertising packets
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh and BLE coexistence support > CONFIG_BLE_MESH_SUPPORT_BLE_ADV
Number of advertising buffers for BLE packets available.
- Symbol can be set when:
CONFIG_BLE_MESH_SUPPORT_BLE_ADV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 255
- Default value:
3
CONFIG_BLE_MESH_SUPPORT_BLE_SCAN
Support scanning normal BLE advertising packets
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh and BLE coexistence support
When selected, users can register a callback and receive normal BLE advertising packets in the application layer.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_FAST_PROV
Enable BLE Mesh Fast Provisioning
Found in: Component config > CONFIG_BLE_MESH
Enable this option to allow BLE Mesh fast provisioning solution to be used. When there are multiple unprovisioned devices around, fast provisioning can greatly reduce the time consumption of the whole provisioning process. When this option is enabled, and after an unprovisioned device is provisioned into a node successfully, it can be changed to a temporary Provisioner.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_NODE
forcefully enables CONFIG_BLE_MESH_PROVISIONER
forcefully enables CONFIG_BLE_MESH_PB_ADV
CONFIG_BLE_MESH_NODE
Support for BLE Mesh Node
Found in: Component config > CONFIG_BLE_MESH
Enable the device to be provisioned into a node. This option should be enabled when an unprovisioned device is going to be provisioned into a node and communicate with other nodes in the BLE Mesh network.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_FAST_PROV
CONFIG_BLE_MESH_PROVISIONER
Support for BLE Mesh Provisioner
Found in: Component config > CONFIG_BLE_MESH
Enable the device to be a Provisioner. The option should be enabled when a device is going to act as a Provisioner and provision unprovisioned devices into the BLE Mesh network.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_FAST_PROV
CONFIG_BLE_MESH_WAIT_FOR_PROV_MAX_DEV_NUM
Maximum number of unprovisioned devices that can be added to device queue
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROVISIONER
This option specifies how many unprovisioned devices can be added to device queue for provisioning. Users can use this option to define the size of the queue in the bottom layer which is used to store unprovisioned device information (e.g. Device UUID, address).
- Symbol can be set when:
CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 100
- Default value:
10
CONFIG_BLE_MESH_MAX_PROV_NODES
Maximum number of devices that can be provisioned by Provisioner
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROVISIONER
This option specifies how many devices can be provisioned by a Provisioner. This value indicates the maximum number of unprovisioned devices which can be provisioned by a Provisioner. For instance, if the value is 6, it means the Provisioner can provision up to 6 unprovisioned devices. Theoretically a Provisioner without the limitation of its memory can provision up to 32766 unprovisioned devices, here we limit the maximum number to 100 just to limit the memory used by a Provisioner. The bigger the value is, the more memory it will cost by a Provisioner to store the information of nodes.
- Symbol can be set when:
CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 1000
- Default value:
10
CONFIG_BLE_MESH_PBA_SAME_TIME
Maximum number of PB-ADV running at the same time by Provisioner
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROVISIONER
This option specifies how many devices can be provisioned at the same time using PB-ADV. For examples, if the value is 2, it means a Provisioner can provision two unprovisioned devices with PB-ADV at the same time.
- Symbol can be set when:
CONFIG_BLE_MESH_PB_ADV is enabled && CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 10
- Default value:
2
CONFIG_BLE_MESH_PBG_SAME_TIME
Maximum number of PB-GATT running at the same time by Provisioner
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROVISIONER
This option specifies how many devices can be provisioned at the same time using PB-GATT. For example, if the value is 2, it means a Provisioner can provision two unprovisioned devices with PB-GATT at the same time.
- Symbol can be set when:
CONFIG_BLE_MESH_PB_GATT is enabled && CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 5
- Default value:
1
CONFIG_BLE_MESH_PROVISIONER_SUBNET_COUNT
Maximum number of mesh subnets that can be created by Provisioner
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROVISIONER
This option specifies how many subnets per network a Provisioner can create. Indeed, this value decides the number of network keys which can be added by a Provisioner.
- Symbol can be set when:
CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 4096
- Default value:
3
CONFIG_BLE_MESH_PROVISIONER_APP_KEY_COUNT
Maximum number of application keys that can be owned by Provisioner
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROVISIONER
This option specifies how many application keys the Provisioner can have. Indeed, this value decides the number of the application keys which can be added by a Provisioner.
- Symbol can be set when:
CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 4096
- Default value:
3
CONFIG_BLE_MESH_PROVISIONER_RECV_HB
Support receiving Heartbeat messages
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROVISIONER
When this option is enabled, Provisioner can call specific functions to enable or disable receiving Heartbeat messages and notify them to the application layer.
- Symbol can be set when:
CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_PROVISIONER_RECV_HB_FILTER_SIZE
Maximum number of filter entries for receiving Heartbeat messages
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROVISIONER > CONFIG_BLE_MESH_PROVISIONER_RECV_HB
This option specifies how many heartbeat filter entries Provisioner supports. The heartbeat filter (acceptlist or rejectlist) entries are used to store a list of SRC and DST which can be used to decide if a heartbeat message will be processed and notified to the application layer by Provisioner. Note: The filter is an empty rejectlist by default.
- Symbol can be set when:
CONFIG_BLE_MESH_PROVISIONER_RECV_HB is enabled && CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 1000
- Default value:
3
CONFIG_BLE_MESH_PROV
BLE Mesh Provisioning support
Found in: Component config > CONFIG_BLE_MESH
Enable this option to support BLE Mesh Provisioning functionality. For BLE Mesh, this option should be always enabled.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_PB_ADV
forcefully enabled by CONFIG_BLE_MESH_PB_GATT
forcefully enabled by CONFIG_BLE_MESH_RPR_CLI
CONFIG_BLE_MESH_PROV_EPA
BLE Mesh enhanced provisioning authentication
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROV
Enable this option to support BLE Mesh enhanced provisioning authentication functionality. This option can increase the security level of provisioning. It is recommended to enable this option.
- Symbol can be set when:
CONFIG_BLE_MESH_PROV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_CERT_BASED_PROV
Support Certificate-based provisioning
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROV
Enable this option to support BLE Mesh Certificate-Based Provisioning.
- Symbol can be set when:
CONFIG_BLE_MESH_PROV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_RECORD_FRAG_MAX_SIZE
Maximum size of the provisioning record fragment that Provisioner can receive
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PROV > CONFIG_BLE_MESH_CERT_BASED_PROV
This option sets the maximum size of the provisioning record fragment that the Provisioner can receive. The range depends on provisioning bearer.
- Symbol can be set when:
CONFIG_BLE_MESH_CERT_BASED_PROV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 57
- Default value:
56
CONFIG_BLE_MESH_PB_ADV
Provisioning support using the advertising bearer (PB-ADV)
Found in: Component config > CONFIG_BLE_MESH
Enable this option to allow the device to be provisioned over the advertising bearer. This option should be enabled if PB-ADV is going to be used during provisioning procedure.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_PROV
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_FAST_PROV
forcefully enabled by CONFIG_BLE_MESH_RPR_SRV
CONFIG_BLE_MESH_UNPROVISIONED_BEACON_INTERVAL
Interval between two consecutive Unprovisioned Device Beacon
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_PB_ADV
This option specifies the interval of sending two consecutive unprovisioned device beacon, users can use this option to change the frequency of sending unprovisioned device beacon. For example, if the value is 5, it means the unprovisioned device beacon will send every 5 seconds. When the option of BLE_MESH_FAST_PROV is selected, the value is better to be 3 seconds, or less.
- Symbol can be set when:
CONFIG_BLE_MESH_NODE is enabled && CONFIG_BLE_MESH_PB_ADV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 100
- Default value:
5
CONFIG_BLE_MESH_PB_GATT
Provisioning support using GATT (PB-GATT)
Found in: Component config > CONFIG_BLE_MESH
Enable this option to allow the device to be provisioned over GATT. This option should be enabled if PB-GATT is going to be used during provisioning procedure.
# Virtual option enabled whenever any Proxy protocol is needed
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_PROXY
forcefully enables CONFIG_BLE_MESH_PROV
CONFIG_BLE_MESH_PROXY
BLE Mesh Proxy protocol support
Found in: Component config > CONFIG_BLE_MESH
Enable this option to support BLE Mesh Proxy protocol used by PB-GATT and other proxy pdu transmission.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_PB_GATT
forcefully enabled by CONFIG_BLE_MESH_GATT_PROXY_SERVER
forcefully enabled by CONFIG_BLE_MESH_GATT_PROXY_CLIENT
CONFIG_BLE_MESH_GATT_PROXY_SERVER
BLE Mesh GATT Proxy Server
Found in: Component config > CONFIG_BLE_MESH
This option enables support for Mesh GATT Proxy Service, i.e. the ability to act as a proxy between a Mesh GATT Client and a Mesh network. This option should be enabled if a node is going to be a Proxy Server.
- Symbol can be set when:
CONFIG_BLE_MESH_NODE is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_PROXY
CONFIG_BLE_MESH_NODE_ID_TIMEOUT
Node Identity advertising timeout
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_GATT_PROXY_SERVER
This option determines for how long the local node advertises using Node Identity. The given value is in seconds. The specification limits this to 60 seconds and lists it as the recommended value as well. So leaving the default value is the safest option. When an unprovisioned device is provisioned successfully and becomes a node, it will start to advertise using Node Identity during the time set by this option. And after that, Network ID will be advertised.
- Symbol can be set when:
CONFIG_BLE_MESH_GATT_PROXY_SERVER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 60
- Default value:
60
CONFIG_BLE_MESH_PROXY_FILTER_SIZE
Maximum number of filter entries per Proxy Client
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_GATT_PROXY_SERVER
This option specifies how many Proxy Filter entries the local node supports. The entries of Proxy filter (whitelist or blacklist) are used to store a list of addresses which can be used to decide which messages will be forwarded to the Proxy Client by the Proxy Server.
- Symbol can be set when:
CONFIG_BLE_MESH_GATT_PROXY_SERVER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 32767
- Default value:
4
CONFIG_BLE_MESH_PROXY_PRIVACY
Support Proxy Privacy
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_GATT_PROXY_SERVER
The Proxy Privacy parameter controls the privacy of the Proxy Server over the connection. The value of the Proxy Privacy parameter is controlled by the type of proxy connection, which is dependent on the bearer used by the proxy connection.
- Symbol can be set when:
CONFIG_BLE_MESH_PRB_SRV is enabled && CONFIG_BLE_MESH_GATT_PROXY_SERVER is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_PROXY_SOLIC_PDU_RX
Support receiving Proxy Solicitation PDU
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_GATT_PROXY_SERVER
Enable this option to support receiving Proxy Solicitation PDU.
- Symbol can be set when:
CONFIG_BLE_MESH_GATT_PROXY_SERVER is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_PROXY_SOLIC_RX_CRPL
Maximum capacity of solicitation replay protection list
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_GATT_PROXY_SERVER > CONFIG_BLE_MESH_PROXY_SOLIC_PDU_RX
This option specifies the maximum capacity of the solicitation replay protection list. The solicitation replay protection list is used to reject Solicitation PDUs that were already processed by a node, which will store the solicitation src and solicitation sequence number of the received Solicitation PDU message.
- Symbol can be set when:
CONFIG_BLE_MESH_PROXY_SOLIC_PDU_RX is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 65536
- Default value:
2
CONFIG_BLE_MESH_PROXY_CLI_SRV_COEXIST
Support Proxy Client and Proxy Server coexistence
Found in: Component config > CONFIG_BLE_MESH
Enable this option to support the coexistence of proxy client and proxy server.
- Symbol can be set when:
CONFIG_BLE_MESH_EXPERIMENTAL is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_GATT_PROXY_CLIENT
BLE Mesh GATT Proxy Client
Found in: Component config > CONFIG_BLE_MESH
This option enables support for Mesh GATT Proxy Client. The Proxy Client can use the GATT bearer to send mesh messages to a node that supports the advertising bearer.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_PROXY
CONFIG_BLE_MESH_PROXY_SOLIC_PDU_TX
Support sending Proxy Solicitation PDU
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_GATT_PROXY_CLIENT
Enable this option to support sending Proxy Solicitation PDU.
- Symbol can be set when:
CONFIG_BLE_MESH_GATT_PROXY_CLIENT is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_PROXY_SOLIC_TX_SRC_COUNT
Maximum number of SSRC that can be used by Proxy Client
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_GATT_PROXY_CLIENT > CONFIG_BLE_MESH_PROXY_SOLIC_PDU_TX
This option specifies the maximum number of Solicitation Source (SSRC) that can be used by Proxy Client for sending a Solicitation PDU. A Proxy Client may use the primary address or any of the secondary addresses as the SSRC for a Solicitation PDU. So for a Proxy Client, it's better to choose the value based on its own element count.
- Symbol can be set when:
CONFIG_BLE_MESH_PROXY_SOLIC_PDU_TX is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 16
- Default value:
2
CONFIG_BLE_MESH_SETTINGS
Store BLE Mesh configuration persistently
Found in: Component config > CONFIG_BLE_MESH
When selected, the BLE Mesh stack will take care of storing/restoring the BLE Mesh configuration persistently in flash. If the device is a BLE Mesh node, when this option is enabled, the configuration of the device will be stored persistently, including unicast address, NetKey, AppKey, etc. And if the device is a BLE Mesh Provisioner, the information of the device will be stored persistently, including the information of provisioned nodes, NetKey, AppKey, etc.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_STORE_TIMEOUT
Delay (in seconds) before storing anything persistently
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_SETTINGS
This value defines in seconds how soon any pending changes are actually written into persistent storage (flash) after a change occurs. The option allows nodes to delay a certain period of time to save proper information to flash. The default value is 0, which means information will be stored immediately once there are updates.
- Symbol can be set when:
CONFIG_BLE_MESH_SETTINGS is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 1000000
- Default value:
0
CONFIG_BLE_MESH_SEQ_STORE_RATE
How often the sequence number gets updated in storage
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_SETTINGS
This value defines how often the local sequence number gets updated in persistent storage (i.e. flash). e.g. a value of 100 means that the sequence number will be stored to flash on every 100th increment. If the node sends messages very frequently a higher value makes more sense, whereas if the node sends infrequently a value as low as 0 (update storage for every increment) can make sense. When the stack gets initialized it will add sequence number to the last stored one, so that it starts off with a value that's guaranteed to be larger than the last one used before power off.
- Symbol can be set when:
CONFIG_BLE_MESH_SETTINGS is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 1000000
- Default value:
0
CONFIG_BLE_MESH_RPL_STORE_TIMEOUT
Minimum frequency that the RPL gets updated in storage
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_SETTINGS
This value defines in seconds how soon the RPL (Replay Protection List) gets written to persistent storage after a change occurs. If the node receives messages frequently, then a large value is recommended. If the node receives messages rarely, then the value can be as low as 0 (which means the RPL is written into the storage immediately). Note that if the node operates in a security-sensitive case, and there is a risk of sudden power-off, then a value of 0 is strongly recommended. Otherwise, a power loss before RPL being written into the storage may introduce message replay attacks and system security will be in a vulnerable state.
- Symbol can be set when:
CONFIG_BLE_MESH_SETTINGS is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 1000000
- Default value:
0
CONFIG_BLE_MESH_SETTINGS_BACKWARD_COMPATIBILITY
A specific option for settings backward compatibility
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_SETTINGS
This option is created to solve the issue of failure in recovering node information after mesh stack updates. In the old version mesh stack, there is no key of "mesh/role" in nvs. In the new version mesh stack, key of "mesh/role" is added in nvs, recovering node information needs to check "mesh/role" key in nvs and implements selective recovery of mesh node information. Therefore, there may be failure in recovering node information during node restarting after OTA.
The new version mesh stack adds the option of "mesh/role" because we have added the support of storing Provisioner information, while the old version only supports storing node information.
If users are updating their nodes from old version to new version, we recommend enabling this option, so that system could set the flag in advance before recovering node information and make sure the node information recovering could work as expected.
- Symbol can be set when:
CONFIG_BLE_MESH_NODE is enabled && CONFIG_BLE_MESH_SETTINGS is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_SPECIFIC_PARTITION
Use a specific NVS partition for BLE Mesh
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_SETTINGS
When selected, the mesh stack will use a specified NVS partition instead of default NVS partition. Note that the specified partition must be registered with NVS using nvs_flash_init_partition() API, and the partition must exists in the csv file. When Provisioner needs to store a large amount of nodes' information in the flash (e.g. more than 20), this option is recommended to be enabled.
- Symbol can be set when:
CONFIG_BLE_MESH_SETTINGS is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_PARTITION_NAME
Name of the NVS partition for BLE Mesh
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_SETTINGS > CONFIG_BLE_MESH_SPECIFIC_PARTITION
This value defines the name of the specified NVS partition used by the mesh stack.
- Symbol can be set when:
CONFIG_BLE_MESH_SPECIFIC_PARTITION is enabled && CONFIG_BLE_MESH_SETTINGS is enabled && CONFIG_BLE_MESH is enabled
- Default value:
"ble_mesh"
CONFIG_BLE_MESH_USE_MULTIPLE_NAMESPACE
Support using multiple NVS namespaces by Provisioner
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_SETTINGS
When selected, Provisioner can use different NVS namespaces to store different instances of mesh information. For example, if in the first room, Provisioner uses NetKey A, AppKey A and provisions three devices, these information will be treated as mesh information instance A. When the Provisioner moves to the second room, it uses NetKey B, AppKey B and provisions two devices, then the information will be treated as mesh information instance B. Here instance A and instance B will be stored in different namespaces. With this option enabled, Provisioner needs to use specific functions to open the corresponding NVS namespace, restore the mesh information, release the mesh information or erase the mesh information.
- Symbol can be set when:
CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH_SETTINGS is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_MAX_NVS_NAMESPACE
Maximum number of NVS namespaces
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_SETTINGS > CONFIG_BLE_MESH_USE_MULTIPLE_NAMESPACE
This option specifies the maximum NVS namespaces supported by Provisioner.
- Symbol can be set when:
CONFIG_BLE_MESH_USE_MULTIPLE_NAMESPACE is enabled && CONFIG_BLE_MESH_SETTINGS is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 255
- Default value:
2
CONFIG_BLE_MESH_SUBNET_COUNT
Maximum number of mesh subnets per network
Found in: Component config > CONFIG_BLE_MESH
This option specifies how many subnets a Mesh network can have at the same time. Indeed, this value decides the number of the network keys which can be owned by a node.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 1 to 4096
- Default value:
3
CONFIG_BLE_MESH_APP_KEY_COUNT
Maximum number of application keys per network
Found in: Component config > CONFIG_BLE_MESH
This option specifies how many application keys the device can store per network. Indeed, this value decides the number of the application keys which can be owned by a node.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 1 to 4096
- Default value:
3
CONFIG_BLE_MESH_MODEL_KEY_COUNT
Maximum number of application keys per model
Found in: Component config > CONFIG_BLE_MESH
This option specifies the maximum number of application keys to which each model can be bound.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 1 to 4096
- Default value:
3
CONFIG_BLE_MESH_MODEL_GROUP_COUNT
Maximum number of group address subscriptions per model
Found in: Component config > CONFIG_BLE_MESH
This option specifies the maximum number of addresses to which each model can be subscribed.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 1 to 4096
- Default value:
3
CONFIG_BLE_MESH_LABEL_COUNT
Maximum number of Label UUIDs used for Virtual Addresses
Found in: Component config > CONFIG_BLE_MESH
This option specifies how many Label UUIDs can be stored. Indeed, this value decides the number of the Virtual Addresses can be supported by a node.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 0 to 4096
- Default value:
3
CONFIG_BLE_MESH_CRPL
Maximum capacity of the replay protection list
Found in: Component config > CONFIG_BLE_MESH
This option specifies the maximum capacity of the replay protection list. It is similar to Network message cache size, but has a different purpose. The replay protection list is used to prevent a node from replay attack, which will store the source address and sequence number of the received mesh messages. For Provisioner, the replay protection list size should not be smaller than the maximum number of nodes whose information can be stored. And the element number of each node should also be taken into consideration. For example, if Provisioner can provision up to 20 nodes and each node contains two elements, then the replay protection list size of Provisioner should be at least 40.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 2 to 65535
- Default value:
10
CONFIG_BLE_MESH_NOT_RELAY_REPLAY_MSG
Not relay replayed messages in a mesh network
Found in: Component config > CONFIG_BLE_MESH
There may be many expired messages in a complex mesh network that would be considered replayed messages. Enable this option will refuse to relay such messages, which could help to reduce invalid packets in the mesh network. However, it should be noted that enabling this option may result in packet loss in certain environments. Therefore, users need to decide whether to enable this option according to the actual usage situation.
- Symbol can be set when:
CONFIG_BLE_MESH_EXPERIMENTAL is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_MSG_CACHE_SIZE
Network message cache size
Found in: Component config > CONFIG_BLE_MESH
Number of messages that are cached for the network. This helps prevent unnecessary decryption operations and unnecessary relays. This option is similar to Replay protection list, but has a different purpose. A node is not required to cache the entire Network PDU and may cache only part of it for tracking, such as values for SRC/SEQ or others.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 2 to 65535
- Default value:
10
CONFIG_BLE_MESH_ADV_BUF_COUNT
Number of advertising buffers
Found in: Component config > CONFIG_BLE_MESH
Number of advertising buffers available. The transport layer reserves ADV_BUF_COUNT - 3 buffers for outgoing segments. The maximum outgoing SDU size is 12 times this value (out of which 4 or 8 bytes are used for the Transport Layer MIC). For example, 5 segments means the maximum SDU size is 60 bytes, which leaves 56 bytes for application layer data using a 4-byte MIC, or 52 bytes using an 8-byte MIC.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 6 to 256
- Default value:
60
CONFIG_BLE_MESH_IVU_DIVIDER
Divider for IV Update state refresh timer
Found in: Component config > CONFIG_BLE_MESH
When the IV Update state enters Normal operation or IV Update in Progress, we need to keep track of how many hours has passed in the state, since the specification requires us to remain in the state at least for 96 hours (Update in Progress has an additional upper limit of 144 hours).
In order to fulfill the above requirement, even if the node might be powered off once in a while, we need to store persistently how many hours the node has been in the state. This doesn't necessarily need to happen every hour (thanks to the flexible duration range). The exact cadence will depend a lot on the ways that the node will be used and what kind of power source it has.
Since there is no single optimal answer, this configuration option allows specifying a divider, i.e. how many intervals the 96 hour minimum gets split into. After each interval the duration that the node has been in the current state gets stored to flash. E.g. the default value of 4 means that the state is saved every 24 hours (96 / 4).
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 2 to 96
- Default value:
4
CONFIG_BLE_MESH_IVU_RECOVERY_IVI
Recovery the IV index when the latest whole IV update procedure is missed
Found in: Component config > CONFIG_BLE_MESH
According to Section 3.10.5 of Mesh Specification v1.0.1. If a node in Normal Operation receives a Secure Network beacon with an IV index equal to the last known IV index+1 and the IV Update Flag set to 0, the node may update its IV without going to the IV Update in Progress state, or it may initiate an IV Index Recovery procedure (Section 3.10.6), or it may ignore the Secure Network beacon. The node makes the choice depending on the time since last IV update and the likelihood that the node has missed the Secure Network beacons with the IV update Flag. When the above situation is encountered, this option can be used to decide whether to perform the IV index recovery procedure.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_SAR_ENHANCEMENT
Segmentation and reassembly enhancement
Found in: Component config > CONFIG_BLE_MESH
Enable this option to use the enhanced segmentation and reassembly mechanism introduced in Bluetooth Mesh Protocol 1.1.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_TX_SEG_MSG_COUNT
Maximum number of simultaneous outgoing segmented messages
Found in: Component config > CONFIG_BLE_MESH
Maximum number of simultaneous outgoing multi-segment and/or reliable messages. The default value is 1, which means the device can only send one segmented message at a time. And if another segmented message is going to be sent, it should wait for the completion of the previous one. If users are going to send multiple segmented messages at the same time, this value should be configured properly.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 1 to
- Default value:
1
CONFIG_BLE_MESH_RX_SEG_MSG_COUNT
Maximum number of simultaneous incoming segmented messages
Found in: Component config > CONFIG_BLE_MESH
Maximum number of simultaneous incoming multi-segment and/or reliable messages. The default value is 1, which means the device can only receive one segmented message at a time. And if another segmented message is going to be received, it should wait for the completion of the previous one. If users are going to receive multiple segmented messages at the same time, this value should be configured properly.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 1 to 255
- Default value:
1
CONFIG_BLE_MESH_RX_SDU_MAX
Maximum incoming Upper Transport Access PDU length
Found in: Component config > CONFIG_BLE_MESH
Maximum incoming Upper Transport Access PDU length. Leave this to the default value, unless you really need to optimize memory usage.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 36 to 384
- Default value:
384
CONFIG_BLE_MESH_TX_SEG_MAX
Maximum number of segments in outgoing messages
Found in: Component config > CONFIG_BLE_MESH
Maximum number of segments supported for outgoing messages. This value should typically be fine-tuned based on what models the local node supports, i.e. what's the largest message payload that the node needs to be able to send. This value affects memory and call stack consumption, which is why the default is lower than the maximum that the specification would allow (32 segments).
The maximum outgoing SDU size is 12 times this number (out of which 4 or 8 bytes is used for the Transport Layer MIC). For example, 5 segments means the maximum SDU size is 60 bytes, which leaves 56 bytes for application layer data using a 4-byte MIC and 52 bytes using an 8-byte MIC.
Be sure to specify a sufficient number of advertising buffers when setting this option to a higher value. There must be at least three more advertising buffers (BLE_MESH_ADV_BUF_COUNT) as there are outgoing segments.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 2 to 32
- Default value:
32
CONFIG_BLE_MESH_RELAY
Relay support
Found in: Component config > CONFIG_BLE_MESH
Support for acting as a Mesh Relay Node. Enabling this option will allow a node to support the Relay feature, and the Relay feature can still be enabled or disabled by proper configuration messages. Disabling this option will let a node not support the Relay feature.
- Symbol can be set when:
CONFIG_BLE_MESH_NODE is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_RELAY_ADV_BUF
Use separate advertising buffers for relay packets
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_RELAY
When selected, self-send packets will be put in a high-priority queue and relay packets will be put in a low-priority queue.
- Symbol can be set when:
CONFIG_BLE_MESH_RELAY is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_RELAY_ADV_BUF_COUNT
Number of advertising buffers for relay packets
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_RELAY > CONFIG_BLE_MESH_RELAY_ADV_BUF
Number of advertising buffers for relay packets available.
- Symbol can be set when:
CONFIG_BLE_MESH_RELAY_ADV_BUF is enabled && CONFIG_BLE_MESH_RELAY is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 6 to 256
- Default value:
60
CONFIG_BLE_MESH_LOW_POWER
Support for Low Power features
Found in: Component config > CONFIG_BLE_MESH
Enable this option to operate as a Low Power Node. If low power consumption is required by a node, this option should be enabled. And once the node enters the mesh network, it will try to find a Friend node and establish a friendship.
- Symbol can be set when:
CONFIG_BLE_MESH_NODE is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_LPN_ESTABLISHMENT
Perform Friendship establishment using low power
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
Perform the Friendship establishment using low power with the help of a reduced scan duty cycle. The downside of this is that the node may miss out on messages intended for it until it has successfully set up Friendship with a Friend node. When this option is enabled, the node will stop scanning for a period of time after a Friend Request or Friend Poll is sent, so as to reduce more power consumption.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_LPN_AUTO
Automatically start looking for Friend nodes once provisioned
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
Once provisioned, automatically enable LPN functionality and start looking for Friend nodes. If this option is disabled LPN mode needs to be manually enabled by calling bt_mesh_lpn_set(true). When an unprovisioned device is provisioned successfully and becomes a node, enabling this option will trigger the node starts to send Friend Request at a certain period until it finds a proper Friend node.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_LPN_AUTO_TIMEOUT
Time from last received message before going to LPN mode
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER > CONFIG_BLE_MESH_LPN_AUTO
Time in seconds from the last received message, that the node waits out before starting to look for Friend nodes.
- Symbol can be set when:
CONFIG_BLE_MESH_LPN_AUTO is enabled && CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 3600
- Default value:
15
CONFIG_BLE_MESH_LPN_RETRY_TIMEOUT
Retry timeout for Friend requests
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
Time in seconds between Friend Requests, if a previous Friend Request did not yield any acceptable Friend Offers.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 3600
- Default value:
6
CONFIG_BLE_MESH_LPN_RSSI_FACTOR
RSSIFactor, used in Friend Offer Delay calculation
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
The contribution of the RSSI, measured by the Friend node, used in Friend Offer Delay calculations. 0 = 1, 1 = 1.5, 2 = 2, 3 = 2.5. RSSIFactor, one of the parameters carried by Friend Request sent by Low Power node, which is used to calculate the Friend Offer Delay.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 3
- Default value:
0
CONFIG_BLE_MESH_LPN_RECV_WIN_FACTOR
ReceiveWindowFactor, used in Friend Offer Delay calculation
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
The contribution of the supported Receive Window used in Friend Offer Delay calculations. 0 = 1, 1 = 1.5, 2 = 2, 3 = 2.5. ReceiveWindowFactor, one of the parameters carried by Friend Request sent by Low Power node, which is used to calculate the Friend Offer Delay.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 3
- Default value:
0
CONFIG_BLE_MESH_LPN_MIN_QUEUE_SIZE
Minimum size of the acceptable friend queue (MinQueueSizeLog)
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
The MinQueueSizeLog field is defined as log_2(N), where N is the minimum number of maximum size Lower Transport PDUs that the Friend node can store in its Friend Queue. As an example, MinQueueSizeLog value 1 gives N = 2, and value 7 gives N = 128.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 7
- Default value:
1
CONFIG_BLE_MESH_LPN_RECV_DELAY
Receive delay requested by the local node
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
The ReceiveDelay is the time between the Low Power node sending a request and listening for a response. This delay allows the Friend node time to prepare the response. The value is in units of milliseconds.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 10 to 255
- Default value:
100
CONFIG_BLE_MESH_LPN_POLL_TIMEOUT
The value of the PollTimeout timer
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
PollTimeout timer is used to measure time between two consecutive requests sent by a Low Power node. If no requests are received the Friend node before the PollTimeout timer expires, then the friendship is considered terminated. The value is in units of 100 milliseconds, so e.g. a value of 300 means 30 seconds. The smaller the value, the faster the Low Power node tries to get messages from corresponding Friend node and vice versa.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 10 to 244735
- Default value:
300
CONFIG_BLE_MESH_LPN_INIT_POLL_TIMEOUT
The starting value of the PollTimeout timer
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
The initial value of the PollTimeout timer when Friendship is to be established for the first time. After this, the timeout gradually grows toward the actual PollTimeout, doubling in value for each iteration. The value is in units of 100 milliseconds, so e.g. a value of 300 means 30 seconds.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 10 to
- Default value:
CONFIG_BLE_MESH_LPN_SCAN_LATENCY
Latency for enabling scanning
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
Latency (in milliseconds) is the time it takes to enable scanning. In practice, it means how much time in advance of the Receive Window, the request to enable scanning is made.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 50
- Default value:
10
CONFIG_BLE_MESH_LPN_GROUPS
Number of groups the LPN can subscribe to
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
Maximum number of groups to which the LPN can subscribe.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 16384
- Default value:
8
CONFIG_BLE_MESH_LPN_SUB_ALL_NODES_ADDR
Automatically subscribe all nodes address
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_LOW_POWER
Automatically subscribe all nodes address when friendship established.
- Symbol can be set when:
CONFIG_BLE_MESH_LOW_POWER is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_FRIEND
Support for Friend feature
Found in: Component config > CONFIG_BLE_MESH
Enable this option to be able to act as a Friend Node.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_FRIEND_RECV_WIN
Friend Receive Window
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_FRIEND
Receive Window in milliseconds supported by the Friend node.
- Symbol can be set when:
CONFIG_BLE_MESH_FRIEND is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 255
- Default value:
255
CONFIG_BLE_MESH_FRIEND_QUEUE_SIZE
Minimum number of buffers supported per Friend Queue
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_FRIEND
Minimum number of buffers available to be stored for each local Friend Queue. This option decides the size of each buffer which can be used by a Friend node to store messages for each Low Power node.
- Symbol can be set when:
CONFIG_BLE_MESH_FRIEND is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 2 to 65536
- Default value:
16
CONFIG_BLE_MESH_FRIEND_SUB_LIST_SIZE
Friend Subscription List Size
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_FRIEND
Size of the Subscription List that can be supported by a Friend node for a Low Power node. And Low Power node can send Friend Subscription List Add or Friend Subscription List Remove messages to the Friend node to add or remove subscription addresses.
- Symbol can be set when:
CONFIG_BLE_MESH_FRIEND is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 1023
- Default value:
3
CONFIG_BLE_MESH_FRIEND_LPN_COUNT
Number of supported LPN nodes
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_FRIEND
Number of Low Power Nodes with which a Friend can have Friendship simultaneously. A Friend node can have friendship with multiple Low Power nodes at the same time, while a Low Power node can only establish friendship with only one Friend node at the same time.
- Symbol can be set when:
CONFIG_BLE_MESH_FRIEND is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 1000
- Default value:
2
CONFIG_BLE_MESH_FRIEND_SEG_RX
Number of incomplete segment lists per LPN
Found in: Component config > CONFIG_BLE_MESH > CONFIG_BLE_MESH_FRIEND
Number of incomplete segment lists tracked for each Friends' LPN. In other words, this determines from how many elements can segmented messages destined for the Friend queue be received simultaneously.
- Symbol can be set when:
CONFIG_BLE_MESH_FRIEND is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 1000
- Default value:
1
CONFIG_BLE_MESH_NO_LOG
Disable BLE Mesh debug logs (minimize bin size)
Found in: Component config > CONFIG_BLE_MESH
Select this to save the BLE Mesh related rodata code size. Enabling this option will disable the output of BLE Mesh debug log.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
BLE Mesh STACK DEBUG LOG LEVEL
Contains:
CONFIG_BLE_MESH_STACK_TRACE_LEVEL
BLE_MESH_STACK
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh STACK DEBUG LOG LEVEL
Define BLE Mesh trace level for BLE Mesh stack.
Available options:
NONE (CONFIG_BLE_MESH_TRACE_LEVEL_NONE)
ERROR (CONFIG_BLE_MESH_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BLE_MESH_TRACE_LEVEL_WARNING)
INFO (CONFIG_BLE_MESH_TRACE_LEVEL_INFO)
DEBUG (CONFIG_BLE_MESH_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BLE_MESH_TRACE_LEVEL_VERBOSE)
BLE Mesh NET BUF DEBUG LOG LEVEL
Contains:
CONFIG_BLE_MESH_NET_BUF_TRACE_LEVEL
BLE_MESH_NET_BUF
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh NET BUF DEBUG LOG LEVEL
Define BLE Mesh trace level for BLE Mesh net buffer.
Available options:
NONE (CONFIG_BLE_MESH_NET_BUF_TRACE_LEVEL_NONE)
ERROR (CONFIG_BLE_MESH_NET_BUF_TRACE_LEVEL_ERROR)
WARNING (CONFIG_BLE_MESH_NET_BUF_TRACE_LEVEL_WARNING)
INFO (CONFIG_BLE_MESH_NET_BUF_TRACE_LEVEL_INFO)
DEBUG (CONFIG_BLE_MESH_NET_BUF_TRACE_LEVEL_DEBUG)
VERBOSE (CONFIG_BLE_MESH_NET_BUF_TRACE_LEVEL_VERBOSE)
CONFIG_BLE_MESH_CLIENT_MSG_TIMEOUT
Timeout(ms) for client message response
Found in: Component config > CONFIG_BLE_MESH
Timeout value used by the node to get response of the acknowledged message which is sent by the client model. This value indicates the maximum time that a client model waits for the response of the sent acknowledged messages. If a client model uses 0 as the timeout value when sending acknowledged messages, then the default value will be used which is four seconds.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Range:
from 100 to 1200000
- Default value:
4000
Support for BLE Mesh Foundation models
Contains:
CONFIG_BLE_MESH_CFG_CLI
Configuration Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Configuration Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_HEALTH_CLI
Health Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Health Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_HEALTH_SRV
Health Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Health Server model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_BRC_CLI
Bridge Configuration Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Bridge Configuration Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_BRC_SRV
Bridge Configuration Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Bridge Configuration Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_MAX_BRIDGING_TABLE_ENTRY_COUNT
Maximum number of Bridging Table entries
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_BRC_SRV
Maximum number of Bridging Table entries that the Bridge Configuration Server can support.
- Symbol can be set when:
CONFIG_BLE_MESH_BRC_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 16 to 65535
- Default value:
16
CONFIG_BLE_MESH_BRIDGE_CRPL
Maximum capacity of bridge replay protection list
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_BRC_SRV
This option specifies the maximum capacity of the bridge replay protection list. The bridge replay protection list is used to prevent a bridged subnet from replay attack, which will store the source address and sequence number of the received bridge messages.
- Symbol can be set when:
CONFIG_BLE_MESH_BRC_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 255
- Default value:
5
CONFIG_BLE_MESH_PRB_CLI
Mesh Private Beacon Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Mesh Private Beacon Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_PRB_SRV
Mesh Private Beacon Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Mesh Private Beacon Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_ODP_CLI
On-Demand Private Proxy Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for On-Demand Private Proxy Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_ODP_SRV
On-Demand Private Proxy Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for On-Demand Private Proxy Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_PROXY_SOLIC_PDU_RX is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_SRPL_SRV
CONFIG_BLE_MESH_SRPL_CLI
Solicitation PDU RPL Configuration Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Solicitation PDU RPL Configuration Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_SRPL_SRV
Solicitation PDU RPL Configuration Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Solicitation PDU RPL Configuration Server model. Note: This option depends on the functionality of receiving Solicitation PDU. If the device doesn't support receiving Solicitation PDU, then there is no need to enable this server model.
- Symbol can be set when:
CONFIG_BLE_MESH_PROXY_SOLIC_PDU_RX is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_ODP_SRV
CONFIG_BLE_MESH_AGG_CLI
Opcodes Aggregator Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Opcodes Aggregator Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_AGG_SRV
Opcodes Aggregator Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Opcodes Aggregator Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_SAR_CLI
SAR Configuration Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for SAR Configuration Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_SAR_SRV
SAR Configuration Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for SAR Configuration Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_COMP_DATA_1
Support Composition Data Page 1
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Composition Data Page 1 contains information about the relationships among models. Each model either can be a root model or can extend other models.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_COMP_DATA_128
Support Composition Data Page 128
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Composition Data Page 128 is used to indicate the structure of elements, features, and models of a node after the successful execution of the Node Address Refresh procedure or the Node Composition Refresh procedure, or after the execution of the Node Removal procedure followed by the provisioning process. Composition Data Page 128 shall be present if the node supports the Remote Provisioning Server model; otherwise it is optional.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_MODELS_METADATA_0
Support Models Metadata Page 0
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
The Models Metadata state contains metadata of a node’s models. The Models Metadata state is composed of a number of pages of information. Models Metadata Page 0 shall be present if the node supports the Large Composition Data Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_LCD_SRV
CONFIG_BLE_MESH_MODELS_METADATA_128
Support Models Metadata Page 128
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_MODELS_METADATA_0
The Models Metadata state contains metadata of a node’s models. The Models Metadata state is composed of a number of pages of information. Models Metadata Page 128 contains metadata for the node’s models after the successful execution of the Node Address Refresh procedure or the Node Composition Refresh procedure, or after the execution of the Node Removal procedure followed by the provisioning process. Models Metadata Page 128 shall be present if the node supports the Remote Provisioning Server model and the node supports the Large Composition Data Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_MODELS_METADATA_0 is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_LCD_CLI
Large Composition Data Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Large Composition Data Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_LCD_SRV
Large Composition Data Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Large Composition Data Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_MODELS_METADATA_0
CONFIG_BLE_MESH_RPR_CLI
Remote Provisioning Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Remote Provisioning Client model
- Symbol can be set when:
CONFIG_BLE_MESH_PROVISIONER is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_PROV
CONFIG_BLE_MESH_RPR_CLI_PROV_SAME_TIME
Maximum number of PB-Remote running at the same time by Provisioner
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_RPR_CLI
This option specifies how many devices can be provisioned at the same time using PB-REMOTE. For example, if the value is 2, it means a Provisioner can provision two unprovisioned devices with PB-REMOTE at the same time.
- Symbol can be set when:
CONFIG_BLE_MESH_RPR_CLI is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 5
- Default value:
2
CONFIG_BLE_MESH_RPR_SRV
Remote Provisioning Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Remote Provisioning Server model
- Symbol can be set when:
CONFIG_BLE_MESH_NODE is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_PB_ADV
CONFIG_BLE_MESH_RPR_SRV_MAX_SCANNED_ITEMS
Maximum number of device information can be scanned
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_RPR_SRV
This option specifies how many device information can a Remote Provisioning Server store each time while scanning.
- Symbol can be set when:
CONFIG_BLE_MESH_RPR_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 4 to 255
- Default value:
10
CONFIG_BLE_MESH_RPR_SRV_ACTIVE_SCAN
Support Active Scan for remote provisioning
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_RPR_SRV
Enable this option to support Active Scan for remote provisioning.
- Symbol can be set when:
CONFIG_BLE_MESH_RPR_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_ACTIVE_SCAN
CONFIG_BLE_MESH_RPR_SRV_MAX_EXT_SCAN
Maximum number of extended scan procedures
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_RPR_SRV
This option specifies how many extended scan procedures can be started by the Remote Provisioning Server.
- Symbol can be set when:
CONFIG_BLE_MESH_RPR_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 10
- Default value:
1
CONFIG_BLE_MESH_DF_CLI
Directed Forwarding Configuration Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Directed Forwarding Configuration Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DF_SRV
Directed Forwarding Configuration Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models
Enable support for Directed Forwarding Configuration Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_MAX_DISC_TABLE_ENTRY_COUNT
Maximum number of discovery table entries in a given subnet
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_DF_SRV
Maximum number of Discovery Table entries supported by the node in a given subnet.
- Symbol can be set when:
CONFIG_BLE_MESH_DF_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 2 to 255
- Default value:
2
CONFIG_BLE_MESH_MAX_FORWARD_TABLE_ENTRY_COUNT
Maximum number of forward table entries in a given subnet
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_DF_SRV
Maximum number of Forward Table entries supported by the node in a given subnet.
- Symbol can be set when:
CONFIG_BLE_MESH_DF_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 2 to 64
- Default value:
2
CONFIG_BLE_MESH_MAX_DEPS_NODES_PER_PATH
Maximum number of dependent nodes per path
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_DF_SRV
Maximum size of dependent nodes list supported by each forward table entry.
- Symbol can be set when:
CONFIG_BLE_MESH_DF_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 2 to 64
- Default value:
2
CONFIG_BLE_MESH_PATH_MONITOR_TEST
Enable Path Monitoring test mode
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_DF_SRV
The option only removes the Path Use timer; all other behavior of the device is not changed. If Path Monitoring test mode is going to be used, this option should be enabled.
- Symbol can be set when:
CONFIG_BLE_MESH_DF_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_SUPPORT_DIRECTED_PROXY
Enable Directed Proxy functionality
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Foundation models > CONFIG_BLE_MESH_DF_SRV
Support Directed Proxy functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_GATT_PROXY_SERVER is enabled && CONFIG_BLE_MESH_DF_SRV is enabled && CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Enabled
Support for BLE Mesh Client/Server models
Contains:
CONFIG_BLE_MESH_GENERIC_ONOFF_CLI
Generic OnOff Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic OnOff Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_GENERIC_LEVEL_CLI
Generic Level Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic Level Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_GENERIC_DEF_TRANS_TIME_CLI
Generic Default Transition Time Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic Default Transition Time Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_GENERIC_POWER_ONOFF_CLI
Generic Power OnOff Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic Power OnOff Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_GENERIC_POWER_LEVEL_CLI
Generic Power Level Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic Power Level Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_GENERIC_BATTERY_CLI
Generic Battery Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic Battery Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_GENERIC_LOCATION_CLI
Generic Location Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic Location Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_GENERIC_PROPERTY_CLI
Generic Property Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic Property Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_SENSOR_CLI
Sensor Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Sensor Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_TIME_CLI
Time Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Time Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_SCENE_CLI
Scene Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Scene Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_SCHEDULER_CLI
Scheduler Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Scheduler Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_LIGHT_LIGHTNESS_CLI
Light Lightness Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Light Lightness Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_LIGHT_CTL_CLI
Light CTL Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Light CTL Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_LIGHT_HSL_CLI
Light HSL Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Light HSL Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_LIGHT_XYL_CLI
Light XYL Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Light XYL Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_LIGHT_LC_CLI
Light LC Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Light LC Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_GENERIC_SERVER
Generic server models
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Generic server models.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_SENSOR_SERVER
Sensor server models
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Sensor server models.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_TIME_SCENE_SERVER
Time and Scenes server models
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Time and Scenes server models.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_LIGHTING_SERVER
Lighting server models
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for Lighting server models.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_MBT_CLI
BLOB Transfer Client model(Deprecated)
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for BLOB Transfer Client model. Warn: This version of the Mesh Binary Large Object Transfer Model will be deprecated, and a new version will be released in the future.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_MAX_BLOB_RECEIVERS
Maximum number of simultaneous blob receivers
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > CONFIG_BLE_MESH_MBT_CLI
Maximum number of BLOB Transfer Server models that can participating in the BLOB transfer with a BLOB Transfer Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_MBT_CLI is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 255
- Default value:
2
CONFIG_BLE_MESH_MBT_SRV
BLOB Transfer Server model(Deprecated)
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models
Enable support for BLOB Transfer Server model. Warn: This version of the Mesh Binary Large Object Transfer Model will be deprecated, and a new version will be released in the future.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
Binary Larger Object Transfer model
Contains:
CONFIG_BLE_MESH_BLOB_SRV
Support for BLOB Transfer Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model
Enable the Binary Large Object (BLOB) Transfer Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_BLOB_SRV_PULL_REQ_COUNT
Number of chunks to request for each pull
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_SRV
In Pull mode (Pull BLOB Transfer Mode), the BLOB Transfer Server requests a fixed number of chunks from the Client. Use this option to control the chunk count in the request. If the BLOB Transfer Server is instantiated on a Low Power node, the pull request count will be trimmed to not overflow the Friend queue.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 16
- Default value:
4
CONFIG_BLE_MESH_BLOB_SIZE_MAX
Largest BLOB size in bytes
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_SRV
The maximum object size a BLOB Transfer Server can receive.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 3257617792
- Default value:
524288
CONFIG_BLE_MESH_BLOB_BLOCK_SIZE_MIN
Minimum block size
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_SRV
Minimum acceptable block size in a BLOB transfer. The transfer block size will be some number that is a power of two, and is between block size min and block size max. If no such number exists, a compile time warning will be issued.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 64 to 1048576
- Default value:
4096
CONFIG_BLE_MESH_BLOB_BLOCK_SIZE_MAX
Maximum block size
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_SRV
Maximum acceptable block size in a BLOB transfer. The transfer block size will be some number that is a power of two, and is between block size min and block size max. If no such number exists, a compile time warning will be issued.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from to 1048576
- Default value:
4096
CONFIG_BLE_MESH_BLOB_REPORT_TIMEOUT
Partial Block Report interval in Pull mode
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_SRV
The timer value that Pull BLOB Transfer Server uses to report missed chunks.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 31
- Default value:
10
CONFIG_BLE_MESH_RX_BLOB_CHUNK_SIZE
BLOB Server chunk size
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_SRV
Set the chunk size for the BLOB Server. The actual maximum chunk size depends on how many segments are possible and will be clamped to the max possible if set above. see also: BLE_MESH_RX_SEG_MAX, and the maximum SDU a node can receive.
- Symbol can be set when:
CONFIG_BLE_MESH_ALIGN_CHUNK_SIZE_TO_MAX_SEGMENT is disabled && CONFIG_BLE_MESH_BLOB_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 8 to 377
- Default value:
8
CONFIG_BLE_MESH_BLOB_CLI
Support for BLOB Transfer Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model
Enable the Binary Large Object (BLOB) Transfer Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_V11_SUPPORT is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_BLOB_CLI_BLOCK_RETRIES
Number of retries per block
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_CLI
Controls the number of times the client will attempt to resend missing chunks to the BLOB receivers for every block.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_CLI is enabled && CONFIG_BLE_MESH is enabled
- Default value:
5
CONFIG_BLE_MESH_TX_BLOB_CHUNK_SIZE
BLOB Client chunk size
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_CLI
Set the chunk size for the BLOB Client. The actual maximum chunk size depends on how many segments are possible and will be clamped to the max possible if set above. see also: BLE_MESH_TX_SEG_MAX, and the maximum SDU a node can receive.
- Symbol can be set when:
CONFIG_BLE_MESH_ALIGN_CHUNK_SIZE_TO_MAX_SEGMENT is disabled && CONFIG_BLE_MESH_BLOB_CLI is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 377
- Default value:
8
CONFIG_BLE_MESH_TX_BLOB_CHUNK_SEND_INTERVAL
BLOB Client chunk send interval
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > CONFIG_BLE_MESH_BLOB_CLI
Set the interval in milliseconds in which chunks are sent during the BLOB transfer. Note: Without a delay between each sent chunk, the network might become too busy with the BLOB transfer for other communications to succeed. Note: Timing restrictions, like the timeout base, should be considered or changed accordingly when setting this interval. Otherwise, the interval might be too big for the timeout settings and cause timeouts.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_CLI is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 2147483647
- Default value:
0
BLOB models common configuration
Contains:
CONFIG_BLE_MESH_BLOB_CHUNK_COUNT_MAX
Maximum chunk count per block
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > BLOB models common configuration
A BLOB transfer contains several blocks. Each block is made up of several chunks. This option controls the maximum chunk count per block.
- Symbol can be set when:
(CONFIG_BLE_MESH_BLOB_SRV is enabled || CONFIG_BLE_MESH_BLOB_CLI is enabled) && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 2992
- Default value:
256
CONFIG_BLE_MESH_ALIGN_CHUNK_SIZE_TO_MAX_SEGMENT
Align chunk size to max segmented message size
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Binary Larger Object Transfer model > BLOB models common configuration
- Symbol can be set when:
(CONFIG_BLE_MESH_BLOB_SRV is enabled || CONFIG_BLE_MESH_BLOB_CLI is enabled) && CONFIG_BLE_MESH is enabled
- Default value:
Enabled
Device Firmware Update model
Contains:
CONFIG_BLE_MESH_DFU_SRV
Support for Firmware Update Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model
Enable the Firmware Update Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_SRV is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DFU_CLI
Support for Firmware Update Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model
Enable the Firmware Update Client model.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_CLI is enabled && CONFIG_BLE_MESH is enabled
Firmware Update model configuration
Contains:
CONFIG_BLE_MESH_DFU_FWID_MAXLEN
DFU FWID max length
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > Firmware Update model configuration
This value defines the maximum length of an image's firmware ID.
- Symbol can be set when:
(CONFIG_BLE_MESH_DFU_SRV is enabled || CONFIG_BLE_MESH_DFU_CLI is enabled) && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 106
- Default value:
16
CONFIG_BLE_MESH_DFU_METADATA_MAXLEN
DFU metadata max length
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > Firmware Update model configuration
This value defines the maximum length of an image's metadata.
- Symbol can be set when:
(CONFIG_BLE_MESH_DFU_SRV is enabled || CONFIG_BLE_MESH_DFU_CLI is enabled) && CONFIG_BLE_MESH is enabled
- Range:
from 18 to 255 if CONFIG_BLE_MESH_DFU_METADATA is enabled
from 0 to 255
- Default value:
32
CONFIG_BLE_MESH_DFU_METADATA
Support for the default metadata format
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > Firmware Update model configuration
This option adds a set of functions that can be used to encode and decode a firmware metadata using the format defined in the Bluetooth mesh DFU subsystem.
- Symbol can be set when:
(CONFIG_BLE_MESH_DFU_SRV is enabled || CONFIG_BLE_MESH_DFU_CLI is enabled) && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DFU_URI_MAXLEN
DFU URI max length
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > Firmware Update model configuration
This value defines the maximum length of an image's URI, not including a string terminator.
- Symbol can be set when:
(CONFIG_BLE_MESH_DFU_SRV is enabled || CONFIG_BLE_MESH_DFU_CLI is enabled) && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 255
- Default value:
32
CONFIG_BLE_MESH_DFU_SLOTS
Firmware image slot manager
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model
Enable the DFU image slot manager, for managing firmware distribution slots for the Firmware Update Client model.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Enabled if CONFIG_BLE_MESH_DFU_CLI is enabled
CONFIG_BLE_MESH_DFU_SLOT_CNT
Number of firmware image slots
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > CONFIG_BLE_MESH_DFU_SLOTS
This value defines the number of firmware slots the DFU image slot manager can keep simultaneously.
- Symbol can be set when:
CONFIG_BLE_MESH_DFU_SLOTS is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 32767
- Default value:
1
CONFIG_BLE_MESH_DFD_CLI
Support for Device Distribution Client model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model
Enable the Device Distribution Client model
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DFD_CLI_SRV_TARGETS_MAX
Number of DFD SRVs can be accepted
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > CONFIG_BLE_MESH_DFD_CLI
The maximum number of DFD SRVs that can be accepted.
- Symbol can be set when:
CONFIG_BLE_MESH_DFD_CLI is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 100
- Default value:
3
CONFIG_BLE_MESH_DFD_SRV
Support for Firmware Distribution Server model
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model
Enable the Firmware Distribution Server model.
- Symbol can be set when:
CONFIG_BLE_MESH_BLOB_SRV is enabled && CONFIG_BLE_MESH_DFU_CLI is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DFD_SRV_SLOT_MAX_SIZE
Largest DFU image that can be stored
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > CONFIG_BLE_MESH_DFD_SRV
This value defines the largest DFU image a single slot can store.
- Symbol can be set when:
CONFIG_BLE_MESH_DFD_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to
- Default value:
CONFIG_BLE_MESH_DFD_SRV_SLOT_SPACE
Total DFU image storage space
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > CONFIG_BLE_MESH_DFD_SRV
This value defines the total storage space dedicated to storing DFU images on the Firmware Distribution Server.
- Symbol can be set when:
CONFIG_BLE_MESH_DFD_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 0 to 4294967295
- Default value:
CONFIG_BLE_MESH_DFD_SRV_TARGETS_MAX
Maximum Target node count
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > CONFIG_BLE_MESH_DFD_SRV
This value defines the maximum number of Target nodes the Firmware Distribution Server can target simultaneously.
- Symbol can be set when:
CONFIG_BLE_MESH_DFD_SRV is enabled && CONFIG_BLE_MESH is enabled
- Range:
from 1 to 65535
- Default value:
8
CONFIG_BLE_MESH_DFD_SRV_OOB_UPLOAD
Support for DFU image OOB upload
Found in: Component config > CONFIG_BLE_MESH > Support for BLE Mesh Client/Server models > Device Firmware Update model > CONFIG_BLE_MESH_DFD_SRV
This enables support for OOB upload of firmware images for distribution. This makes several callbacks and use of the init macro BLE_MESH_DFD_SRV_INIT_OOB mandatory. See the API documentation for bt_mesh_dfd_srv_cb for details about the mandatory callbacks.
- Symbol can be set when:
CONFIG_BLE_MESH_DFD_SRV is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_IV_UPDATE_TEST
Test the IV Update Procedure
Found in: Component config > CONFIG_BLE_MESH
This option removes the 96 hour limit of the IV Update Procedure and lets the state to be changed at any time. If IV Update test mode is going to be used, this option should be enabled.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_MESH_BQB_TEST
BLE Mesh specific test option
Contains:
CONFIG_BLE_MESH_SELF_TEST
Perform BLE Mesh self-tests
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option
This option adds extra self-tests which are run every time BLE Mesh networking is initialized.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_BQB_TEST
Enable BLE Mesh specific internal test
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option
This option is used to enable some internal functions for auto-pts test.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_BLE_MESH_IV_UPDATE_TEST
CONFIG_BLE_MESH_TEST_AUTO_ENTER_NETWORK
Unprovisioned device enters mesh network automatically
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option
With this option enabled, an unprovisioned device can automatically enters mesh network using a specific test function without the pro- visioning procedure. And on the Provisioner side, a test function needs to be invoked to add the node information into the mesh stack.
- Symbol can be set when:
CONFIG_BLE_MESH_SELF_TEST is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Enabled
CONFIG_BLE_MESH_TEST_USE_WHITE_LIST
Use white list to filter mesh advertising packets
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option
With this option enabled, users can use white list to filter mesh advertising packets while scanning.
- Symbol can be set when:
CONFIG_BLE_MESH_SELF_TEST is enabled && CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_SHELL
Enable BLE Mesh shell
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option
Activate shell module that provides BLE Mesh commands to the console.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_DEBUG
Enable BLE Mesh debug logs
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option
Enable debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
CONFIG_BLE_MESH_DEBUG_NET
Network layer debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Network layer debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_TRANS
Transport layer debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Transport layer debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_BEACON
Beacon debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Beacon-related debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_CRYPTO
Crypto debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable cryptographic debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_PROV
Provisioning debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Provisioning debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_ACCESS
Access layer debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Access layer debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_MODEL
Foundation model debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Foundation Models debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_ADV
Advertising debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable advertising debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_LOW_POWER
Low Power debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Low Power debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_FRIEND
Friend debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Friend debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_DEBUG_PROXY
Proxy debug
Found in: Component config > CONFIG_BLE_MESH > BLE Mesh specific test option > CONFIG_BLE_MESH_DEBUG
Enable Proxy protocol debug logs for the BLE Mesh functionality.
- Symbol can be set when:
CONFIG_BLE_MESH_PROXY is enabled && CONFIG_BLE_MESH_DEBUG is enabled && CONFIG_BLE_MESH is enabled
CONFIG_BLE_MESH_EXPERIMENTAL
Make BLE Mesh experimental features visible
Found in: Component config > CONFIG_BLE_MESH
Make BLE Mesh Experimental features visible. Experimental features list: - CONFIG_BLE_MESH_NOT_RELAY_REPLAY_MSG - CONFIG_BLE_MESH_USE_BLE_50 - CONFIG_BLE_MESH_PROXY_CLI_SRV_COEXIST
- Symbol can be set when:
CONFIG_BLE_MESH is enabled
- Default value:
Disabled
Console Library
Contains:
CONFIG_CONSOLE_SORTED_HELP
Enable sorted help
Found in: Component config > Console Library
Instead of listing the commands in the order of registration, the help command lists the available commands in sorted order, if this option is enabled.
- Default value:
Disabled
Legacy Driver Configurations
Contains:
Legacy I2C Driver Configurations
Contains:
CONFIG_I2C_SUPPRESS_DEPRECATE_WARN
Suppress legacy driver deprecated warning
Found in: Component config > Legacy Driver Configurations > Legacy I2C Driver Configurations
whether to suppress the deprecation warnings when using legacy i2c driver (driver/i2c.h). If you want to continue using the legacy driver, and don't want to see related deprecation warnings, you can enable this option.
- Default value:
Disabled
CONFIG_I2C_SKIP_LEGACY_CONFLICT_CHECK
Skip legacy conflict check
Found in: Component config > Legacy Driver Configurations > Legacy I2C Driver Configurations
This configuration option allows the user to bypass the conflict check mechanism with legacy code.
- Default value:
Disabled
eFuse Bit Manager
Contains:
CONFIG_EFUSE_ENABLE_STAGED_TOKEN_API
Enable staged eFuse token dump API
Found in: Component config > eFuse Bit Manager
Allows esp_efuse_token_dump() to produce dump types that include staged eFuse writes. Staging refers to pending eFuse writes prepared in batch mode but not yet burned to hardware.
Token dump types: - EFSR: current eFuse read state. - EFSW: pending write state. - EFSRW: combined read and pending write state.
Pending write tokens may contain sensitive data, including plaintext keys, before eFuses are burned and read-protected. Keep this option disabled in production firmware unless staged token workflows are explicitly required.
- Default value:
Disabled
CONFIG_EFUSE_CUSTOM_TABLE
Use custom eFuse table
Found in: Component config > eFuse Bit Manager
Allows to generate a structure for eFuse from the CSV file.
- Default value:
Disabled
CONFIG_EFUSE_CUSTOM_TABLE_FILENAME
Custom eFuse CSV file
Found in: Component config > eFuse Bit Manager > CONFIG_EFUSE_CUSTOM_TABLE
Name of the custom eFuse CSV filename. This path is evaluated relative to the project root directory.
- Symbol can be set when:
CONFIG_EFUSE_CUSTOM_TABLE is enabled
- Default value:
"main/esp_efuse_custom_table.csv"
CONFIG_EFUSE_VIRTUAL
Simulate eFuse operations in RAM
Found in: Component config > eFuse Bit Manager
If "n" - No virtual mode. All eFuse operations are real and use eFuse registers. If "y" - The virtual mode is enabled and all eFuse operations (read and write) are redirected to RAM instead of eFuse registers, all permanent changes (via eFuse) are disabled. Log output will state changes that would be applied, but they will not be.
If it is "y", then SECURE_FLASH_ENCRYPTION_MODE_RELEASE cannot be used. Because the EFUSE VIRT mode is for testing only.
During startup, the eFuses are copied into RAM. This mode is useful for fast tests.
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BOOTLOADER_EFUSE_SECURE_VERSION_EMULATE
CONFIG_EFUSE_VIRTUAL_KEEP_IN_FLASH
Keep eFuses in flash
Found in: Component config > eFuse Bit Manager > CONFIG_EFUSE_VIRTUAL
In addition to the "Simulate eFuse operations in RAM" option, this option just adds a feature to keep eFuses after reboots in flash memory. To use this mode the partition_table should have the efuse partition. partition.csv: "efuse_em, data, efuse, , 0x2000,"
During startup, the eFuses are copied from flash or, in case if flash is empty, from real eFuse to RAM and then update flash. This mode is useful when need to keep changes after reboot (testing secure_boot and flash_encryption).
- Symbol can be set when:
CONFIG_EFUSE_VIRTUAL is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BOOTLOADER_EFUSE_SECURE_VERSION_EMULATE
CONFIG_EFUSE_VIRTUAL_LOG_ALL_WRITES
Log all virtual writes
Found in: Component config > eFuse Bit Manager > CONFIG_EFUSE_VIRTUAL
If enabled, log efuse burns. This shows changes that would be made.
- Symbol can be set when:
CONFIG_EFUSE_VIRTUAL is enabled
ESP-TLS
Contains:
CONFIG_ESP_TLS_LIBRARY_CHOOSE
Choose SSL/TLS library for ESP-TLS (See help for more Info)
Found in: Component config > ESP-TLS
The ESP-TLS APIs support multiple backend TLS libraries. mbedTLS is supported by default. Custom TLS stacks can be registered via esp_tls_register_stack() API when CONFIG_ESP_TLS_CUSTOM_STACK is selected. Different TLS libraries may support different features and have different resource usage. Consult the ESP-TLS documentation in ESP-IDF Programming guide for more details.
Available options:
mbedTLS (CONFIG_ESP_TLS_USING_MBEDTLS)
Custom TLS stack (register via esp_tls_register_stack()) (CONFIG_ESP_TLS_CUSTOM_STACK)
When selected, allows external components to register their own TLS stack implementation via esp_tls_register_stack() API. The custom stack must be registered before creating any TLS connections, otherwise TLS operations will fail.
External components can provide any TLS stack implementation by implementing the esp_tls_stack_ops_t interface.
CONFIG_ESP_TLS_ENABLE_TCP_NODELAY
Enable TCP_NODELAY (disable Nagle's algorithm) on ESP-TLS sockets
Found in: Component config > ESP-TLS
Set TCP_NODELAY on every ESP-TLS client connection socket, disabling Nagle's algorithm. Recommended for latency-sensitive small-message traffic (e.g. MQTT), where Nagle interacting with the peer's delayed-ACK can stall a small write by ~40-200 ms until the delayed-ACK timer fires. Off by default (no behavior change).
- Default value:
Disabled
CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS
Enable client session tickets
Found in: Component config > ESP-TLS
Enable session ticket support as specified in RFC5077.
- Symbol can be set when:
CONFIG_ESP_TLS_USING_MBEDTLS is enabled && CONFIG_MBEDTLS_CLIENT_SSL_SESSION_TICKETS is enabled
CONFIG_ESP_TLS_SERVER_SESSION_TICKETS
Enable server session tickets
Found in: Component config > ESP-TLS
Enable session ticket support as specified in RFC5077
- Symbol can be set when:
CONFIG_ESP_TLS_USING_MBEDTLS is enabled && CONFIG_MBEDTLS_SERVER_SSL_SESSION_TICKETS is enabled
CONFIG_ESP_TLS_SERVER_SESSION_TICKET_TIMEOUT
Server session ticket timeout in seconds
Found in: Component config > ESP-TLS > CONFIG_ESP_TLS_SERVER_SESSION_TICKETS
Sets the session ticket timeout used in the tls server.
- Symbol can be set when:
CONFIG_ESP_TLS_SERVER_SESSION_TICKETS is enabled
- Default value:
86400
CONFIG_ESP_TLS_SERVER_CERT_SELECT_HOOK
Certificate selection hook
Found in: Component config > ESP-TLS
Ability to configure and use a certificate selection callback during server handshake, to select a certificate to present to the client based on the TLS extensions supplied in the client hello (alpn, sni, etc).
- Symbol can be set when:
CONFIG_ESP_TLS_USING_MBEDTLS is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_HTTPS_SERVER_CERT_SELECT_HOOK
CONFIG_ESP_TLS_SERVER_MIN_AUTH_MODE_OPTIONAL
ESP-TLS Server: Set minimum Certificate Verification mode to Optional
Found in: Component config > ESP-TLS
When this option is enabled, the ESP-TLS server can be configured to request client certificates optionally. This is done by setting the client_cert_authmode_optional field in the esp_https_server_config_t structure.
mbedtls_ssl_get_verify_result() can be called after the handshake is complete to retrieve status of verification of the client certificate, if presented.
- Symbol can be set when:
CONFIG_ESP_TLS_USING_MBEDTLS is enabled
- Default value:
Disabled
CONFIG_ESP_TLS_PSK_VERIFICATION
Enable PSK verification
Found in: Component config > ESP-TLS
Enable support for pre shared key ciphers, supported for both mbedTLS as well as custom TLS stacks.
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_PSK_MODES if CONFIG_ESP_TLS_USING_MBEDTLS is enabled
forcefully enables CONFIG_MBEDTLS_KEY_EXCHANGE_PSK if CONFIG_ESP_TLS_USING_MBEDTLS is enabled
forcefully enables CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_PSK if CONFIG_ESP_TLS_USING_MBEDTLS is enabled && CONFIG_MBEDTLS_ECDH_C is enabled
CONFIG_ESP_TLS_INSECURE
Allow potentially insecure options
Found in: Component config > ESP-TLS
You can enable some potentially insecure options. These options should only be used for testing purposes. Only enable these options if you are very sure.
CONFIG_ESP_TLS_SKIP_SERVER_CERT_VERIFY
Skip server certificate verification by default (WARNING: ONLY FOR TESTING PURPOSE, READ HELP)
Found in: Component config > ESP-TLS > CONFIG_ESP_TLS_INSECURE
After enabling this option the esp-tls client will skip the server certificate verification by default. Note that this option will only modify the default behaviour of esp-tls client regarding server cert verification. The default behaviour should only be applicable when no other option regarding the server cert verification is opted in the esp-tls config (e.g. crt_bundle_attach, use_global_ca_store etc.). WARNING : Enabling this option comes with a potential risk of establishing a TLS connection with a server which has a fake identity, provided that the server certificate is not provided either through API or other mechanism like ca_store etc.
- Symbol can be set when:
CONFIG_ESP_TLS_INSECURE is enabled
ADC and ADC Calibration
Contains:
CONFIG_ADC_ONESHOT_CTRL_FUNC_IN_IRAM
Place ISR version ADC oneshot mode read function into IRAM
Found in: Component config > ADC and ADC Calibration
Place ISR version ADC oneshot mode read function into IRAM.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_PERIPH_CTRL_FUNC_IN_IRAM
CONFIG_ADC_CONTINUOUS_ISR_IRAM_SAFE
ADC continuous mode driver ISR IRAM-Safe
Found in: Component config > ADC and ADC Calibration
Ensure the ADC continuous mode ISR is IRAM-Safe. When enabled, the ISR handler will be available when the cache is disabled.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GDMA_ISR_HANDLER_IN_IRAM
CONFIG_ADC_ENABLE_DEBUG_LOG
Enable ADC debug log
Found in: Component config > ADC and ADC Calibration
whether to enable the debug log message for ADC driver. Note that this option only controls the ADC driver log, will not affect other drivers.
- Default value:
Disabled
Wireless Coexistence
Contains:
CONFIG_ESP_COEX_SW_COEXIST_ENABLE
Software controls WiFi/Bluetooth coexistence
Found in: Component config > Wireless Coexistence
If enabled, WiFi & Bluetooth coexistence is controlled by software rather than hardware. Recommended for heavy traffic scenarios. Both coexistence configuration options are automatically managed, no user intervention is required. If only Bluetooth is used, it is recommended to disable this option to reduce binary file size.
- Symbol can be set when:
CONFIG_BT_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_WIFI_STA_DISCONNECTED_PM_ENABLE
CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE
External Coexistence
Found in: Component config > Wireless Coexistence
If enabled, HW External coexistence arbitration is managed by GPIO pins. It can support three types of wired combinations so far which are 1-wired/2-wired/3-wired. User can select GPIO pins in application code with configure interfaces.
- Default value:
Disabled
CONFIG_ESP_COEX_POWER_MANAGEMENT
Support power management under coexistence
Found in: Component config > Wireless Coexistence
If enabled, coexist power management will be enabled.
- Symbol can be set when:
CONFIG_ESP_COEX_SW_COEXIST_ENABLE is enabled
- Default value:
Disabled
CONFIG_ESP_COEX_GPIO_DEBUG
GPIO debugging for coexistence
Found in: Component config > Wireless Coexistence
Support coexistence GPIO debugging
- Symbol can be set when:
CONFIG_PM_SLP_DISABLE_GPIO is disabled && CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP is disabled
- Default value:
Disabled
CONFIG_ESP_COEX_GPIO_DEBUG_DIAG
Debugging Diagram
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
Select type of debugging diagram
Available options:
General (CONFIG_ESP_COEX_GPIO_DEBUG_DIAG_GENERAL)
Wi-Fi (CONFIG_ESP_COEX_GPIO_DEBUG_DIAG_WIFI)
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT
Max number of debugging GPIOs
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 12
- Default value:
12
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX0
Actual IO num for Debug IO ID0
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 0 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
4
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX1
Actual IO num for Debug IO ID1
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 1 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
5
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX2
Actual IO num for Debug IO ID2
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 2 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
6
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX3
Actual IO num for Debug IO ID3
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 3 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
7
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX4
Actual IO num for Debug IO ID4
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 4 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
0
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX5
Actual IO num for Debug IO ID5
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 5 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
1
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX6
Actual IO num for Debug IO ID6
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 6 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
8
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX7
Actual IO num for Debug IO ID7
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 7 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
2
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX8
Actual IO num for Debug IO ID8
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 8 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
3
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX9
Actual IO num for Debug IO ID9
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 9 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
9
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX10
Actual IO num for Debug IO ID10
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 10 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
13
CONFIG_ESP_COEX_GPIO_DEBUG_IO_IDX11
Actual IO num for Debug IO ID11
Found in: Component config > Wireless Coexistence > CONFIG_ESP_COEX_GPIO_DEBUG
- Symbol can be set when:
CONFIG_ESP_COEX_GPIO_DEBUG_IO_COUNT > 11 && CONFIG_ESP_COEX_GPIO_DEBUG is enabled
- Range:
from 0 to 29
- Default value:
12
ESP-Driver:Analog Comparator Configurations
Contains:
CONFIG_ANA_CMPR_ISR_HANDLER_IN_IRAM
Place Analog Comparator ISR handler in IRAM to reduce latency
Found in: Component config > ESP-Driver:Analog Comparator Configurations
Place Analog Comparator ISR handler in IRAM to reduce latency caused by cache miss.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ANA_CMPR_OBJ_CACHE_SAFE
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ANA_CMPR_ISR_CACHE_SAFE
CONFIG_ANA_CMPR_CTRL_FUNC_IN_IRAM
Place Analog Comparator control functions into IRAM
Found in: Component config > ESP-Driver:Analog Comparator Configurations
Place Analog Comparator control functions (like ana_cmpr_set_internal_reference) into IRAM, so that these functions can be IRAM-safe and able to be called in an IRAM interrupt context. Enabling this option can improve driver performance as well.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ANA_CMPR_OBJ_CACHE_SAFE
CONFIG_ANA_CMPR_ISR_CACHE_SAFE
Allow Analog Comparator ISR to execute when cache is disabled
Found in: Component config > ESP-Driver:Analog Comparator Configurations
Enable this option to allow the Analog Comparator Interrupt Service Routine (ISR) to execute even when the cache is disabled. This can be useful in scenarios where the cache might be turned off, but the comparator functionality is still required to operate correctly.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ANA_CMPR_ISR_HANDLER_IN_IRAM
CONFIG_ANA_CMPR_ENABLE_DEBUG_LOG
Force enable debug log
Found in: Component config > ESP-Driver:Analog Comparator Configurations
If enabled, the driver component will: 1. ignore the global logging settings 2. compile all log messages into the binary 3. set the runtime log level to VERBOSE Please enable this option by caution, as it will increase the binary size.
- Default value:
Disabled
GDMA Configurations
Contains:
CONFIG_GDMA_CTRL_FUNC_IN_IRAM
Place GDMA control functions in IRAM
Found in: Component config > GDMA Configurations
Place GDMA control functions (like start/stop/append/reset) into IRAM, so that these functions can be IRAM-safe and able to be called in the other IRAM interrupt context.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GDMA_OBJ_DRAM_SAFE
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_I3C_MASTER_ISR_HANDLER_IN_IRAM
forcefully enabled by CONFIG_SPI_MASTER_ISR_IN_IRAM
forcefully enabled by CONFIG_SPI_SLAVE_ISR_IN_IRAM
forcefully enabled by CONFIG_UHCI_ISR_HANDLER_IN_IRAM
forcefully enabled by CONFIG_UHCI_RECV_FUNC_IN_IRAM
CONFIG_GDMA_ISR_HANDLER_IN_IRAM
Place GDMA ISR handler in IRAM to reduce latency
Found in: Component config > GDMA Configurations
Place GDMA ISR handler functions in IRAM to reduce latency caused by cache miss.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GDMA_OBJ_DRAM_SAFE
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ADC_CONTINUOUS_ISR_IRAM_SAFE
forcefully enabled by CONFIG_I2S_ISR_IRAM_SAFE
forcefully enabled by CONFIG_I3C_MASTER_ISR_CACHE_SAFE
forcefully enabled by CONFIG_SPI_MASTER_ISR_IN_IRAM
forcefully enabled by CONFIG_SPI_SLAVE_ISR_IN_IRAM
forcefully enabled by CONFIG_UHCI_ISR_CACHE_SAFE
CONFIG_GDMA_ENABLE_DEBUG_LOG
Force enable debug log
Found in: Component config > GDMA Configurations
If enabled, GDMA driver component will: 1. ignore the global logging settings 2. compile all log messages into the binary 3. set the runtime log level to VERBOSE Please enable this option by caution, as it will increase the binary size.
- Default value:
Disabled
CONFIG_GDMA_ENABLE_WEIGHTED_ARBITRATION
GDMA enable weighted arbitration (Experimental)
Found in: Component config > GDMA Configurations
Whether to enable weighted arbitration for GDMA driver. The default weight of each channel is 1. You need to set weight for each channel before transmissions. If this option is enabled, buffer should be aligned to the burst size.
- Symbol can be set when:
CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled
- Default value:
Disabled
ESP-Driver:GPIO Configurations
Contains:
CONFIG_GPIO_CTRL_FUNC_IN_IRAM
Place GPIO control functions into IRAM
Found in: Component config > ESP-Driver:GPIO Configurations
Place GPIO control functions (like intr_disable/set_level) into IRAM, so that these functions can be IRAM-safe and able to be called in the other IRAM interrupt context.
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_OPENTHREAD_RCP_SPI
ESP-Driver:GPTimer Configurations
Contains:
CONFIG_GPTIMER_ISR_HANDLER_IN_IRAM
Place GPTimer ISR handler in IRAM to reduce latency
Found in: Component config > ESP-Driver:GPTimer Configurations
Place GPTimer ISR handler in IRAM to reduce latency caused by cache miss.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GPTIMER_OBJ_CACHE_SAFE
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_GPTIMER_ISR_CACHE_SAFE
CONFIG_GPTIMER_CTRL_FUNC_IN_IRAM
Place GPTimer control functions in IRAM
Found in: Component config > ESP-Driver:GPTimer Configurations
Place GPTimer control functions (like start/stop) in IRAM, to reduce latency caused by cache miss. If enabled, these functions can also be called when cache is disabled.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GPTIMER_OBJ_CACHE_SAFE
CONFIG_GPTIMER_ISR_CACHE_SAFE
Allow GPTimer ISR to execute when cache is disabled
Found in: Component config > ESP-Driver:GPTimer Configurations
Enable this option to allow the GPTimer Interrupt Service Routine (ISR) to execute even when the cache is disabled. This can be useful in scenarios where the cache might be turned off, but the GPTimer functionality is still required to operate correctly.
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is disabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GPTIMER_ISR_HANDLER_IN_IRAM
CONFIG_GPTIMER_ENABLE_DEBUG_LOG
Force enable debug log
Found in: Component config > ESP-Driver:GPTimer Configurations
If enabled, GPTimer component will: 1. ignore the global logging settings 2. compile all log messages into the binary 3. set the runtime log level to VERBOSE Please enable this option by caution, as it will increase the binary size.
- Default value:
Disabled
ESP-Driver:I2C Configurations
Contains:
CONFIG_I2C_ISR_IRAM_SAFE
I2C ISR IRAM-Safe
Found in: Component config > ESP-Driver:I2C Configurations
Ensure the I2C interrupt is IRAM-Safe by allowing the interrupt handler to be executable when the cache is disabled (e.g. SPI Flash write). note: This cannot be used in the I2C legacy driver.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_I2C_MASTER_ISR_HANDLER_IN_IRAM
CONFIG_I2C_ENABLE_DEBUG_LOG
Enable I2C debug log
Found in: Component config > ESP-Driver:I2C Configurations
whether to enable the debug log message for I2C driver. Note that this option only controls the I2C driver log, will not affect other drivers.
- Default value:
Disabled
CONFIG_I2C_MASTER_ISR_HANDLER_IN_IRAM
Place I2C master ISR handler into IRAM
Found in: Component config > ESP-Driver:I2C Configurations
Place I2C master ISR handler into IRAM for better performance and fewer cache misses.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_I2C_ISR_IRAM_SAFE
ESP-Driver:I2S Configurations
Contains:
CONFIG_I2S_ISR_IRAM_SAFE
I2S ISR IRAM-Safe
Found in: Component config > ESP-Driver:I2S Configurations
Ensure the I2S interrupt is IRAM-Safe by allowing the interrupt handler to be executable when the cache is disabled (e.g. SPI Flash write).
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GDMA_ISR_HANDLER_IN_IRAM
CONFIG_I2S_CTRL_FUNC_IN_IRAM
Place I2S control functions into IRAM
Found in: Component config > ESP-Driver:I2S Configurations
Place I2S control functions into IRAM, so that these functions can be IRAM-safe and able to be called in the other IRAM interrupt context.
- Default value:
Disabled
CONFIG_I2S_ENABLE_DEBUG_LOG
Enable I2S debug log
Found in: Component config > ESP-Driver:I2S Configurations
whether to enable the debug log message for I2S driver. Note that, this option only controls the I2S driver log, will not affect other drivers.
- Default value:
Disabled
ESP-Driver:I3C Master Configurations
Contains:
CONFIG_I3C_MASTER_ISR_CACHE_SAFE
I3C ISR Cache-Safe
Found in: Component config > ESP-Driver:I3C Master Configurations
Ensure the I3C interrupt is Cache-Safe by allowing the interrupt handler to be executable when the cache is disabled (e.g. SPI Flash write).
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_I3C_MASTER_ISR_HANDLER_IN_IRAM
forcefully enables CONFIG_GDMA_ISR_HANDLER_IN_IRAM
CONFIG_I3C_MASTER_ENABLE_DEBUG_LOG
Enable I3C debug log
Found in: Component config > ESP-Driver:I3C Master Configurations
whether to enable the debug log message for I3C driver. Note that this option only controls the I3C driver log, will not affect other drivers.
- Default value:
Disabled
CONFIG_I3C_MASTER_ISR_HANDLER_IN_IRAM
Place I3C master ISR handler into IRAM
Found in: Component config > ESP-Driver:I3C Master Configurations
Place I3C master ISR handler into IRAM for better performance and fewer cache misses.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GDMA_CTRL_FUNC_IN_IRAM
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_I3C_MASTER_ISR_CACHE_SAFE
ESP-Driver:LEDC Configurations
Contains:
CONFIG_LEDC_CTRL_FUNC_IN_IRAM
Place LEDC control functions into IRAM
Found in: Component config > ESP-Driver:LEDC Configurations
Place LEDC control functions (ledc_update_duty and ledc_stop) into IRAM, so that these functions can be IRAM-safe and able to be called in an IRAM context. Enabling this option can improve driver performance as well.
- Default value:
Disabled
ESP-Driver:SPI Configurations
Contains:
CONFIG_SPI_MASTER_IN_IRAM
Place transmitting functions of SPI master into IRAM
Found in: Component config > ESP-Driver:SPI Configurations
Normally only the ISR of SPI master is placed in the IRAM, so that it can work without the flash when interrupt is triggered. For other functions, there's some possibility that the flash cache miss when running inside and out of SPI functions, which may increase the interval of SPI transactions. Enable this to put
queue\_trans,get\_trans\_resultandtransmitfunctions into the IRAM to avoid possible cache miss.This configuration won't be available if CONFIG_FREERTOS_IN_IRAM is disabled.
During unit test, this is enabled to measure the ideal case of api.
- Symbol can be set when:
CONFIG_FREERTOS_IN_IRAM is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_SPI_MASTER_ISR_IN_IRAM
forcefully enables CONFIG_ESP_SPI_BUS_LOCK_FUNCS_IN_IRAM
CONFIG_SPI_MASTER_ISR_IN_IRAM
Place SPI master ISR function into IRAM
Found in: Component config > ESP-Driver:SPI Configurations
Place the SPI master ISR in to IRAM to avoid possible cache miss.
Enabling this configuration is possible only when HEAP_PLACE_FUNCTION_INTO_FLASH is disabled since the spi master uses can allocate transactions buffers into DMA memory section using the heap component API that ipso facto has to be placed in IRAM.
Also you can forbid the ISR being disabled during flash writing access, by add ESP_INTR_FLAG_IRAM when initializing the driver.
- Symbol can be set when:
CONFIG_HEAP_PLACE_FUNCTION_INTO_FLASH is disabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_PERIPH_CTRL_FUNC_IN_IRAM
forcefully enables CONFIG_ESP_SPI_BUS_LOCK_ISR_FUNCS_IN_IRAM
forcefully enables CONFIG_GDMA_CTRL_FUNC_IN_IRAM
forcefully enables CONFIG_GDMA_ISR_HANDLER_IN_IRAM
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_SPI_MASTER_IN_IRAM
CONFIG_SPI_SLAVE_IN_IRAM
Place transmitting functions of SPI slave into IRAM
Found in: Component config > ESP-Driver:SPI Configurations
Normally only the ISR of SPI slave is placed in the IRAM, so that it can work without the flash when interrupt is triggered. For other functions, there is some possibility that the flash cache miss when running inside and out of SPI functions, which may increase the interval of SPI transactions. Enable this to put
queue\_trans,get\_trans\_resultandtransmitfunctions into the IRAM to avoid possible cache miss.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_SPI_SLAVE_ISR_IN_IRAM
CONFIG_SPI_SLAVE_ISR_IN_IRAM
Place SPI slave ISR function into IRAM
Found in: Component config > ESP-Driver:SPI Configurations
Place the SPI slave ISR in to IRAM to avoid possible cache miss.
Also you can forbid the ISR being disabled during flash writing access, by add ESP_INTR_FLAG_IRAM when initializing the driver.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_PERIPH_CTRL_FUNC_IN_IRAM
forcefully enables CONFIG_GDMA_CTRL_FUNC_IN_IRAM
forcefully enables CONFIG_GDMA_ISR_HANDLER_IN_IRAM
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_SPI_SLAVE_IN_IRAM
ESP-Driver:Temperature Sensor Configurations
Contains:
CONFIG_TEMP_SENSOR_ENABLE_DEBUG_LOG
Enable debug log
Found in: Component config > ESP-Driver:Temperature Sensor Configurations
whether to enable the debug log message for temperature sensor driver. Note that, this option only controls the temperature sensor driver log, won't affect other drivers.
- Default value:
Disabled
CONFIG_TEMP_SENSOR_ISR_IRAM_SAFE
Temperature sensor ISR IRAM-Safe
Found in: Component config > ESP-Driver:Temperature Sensor Configurations
Ensure the Temperature Sensor interrupt is IRAM-Safe by allowing the interrupt handler to be executable when the cache is disabled (e.g. SPI Flash write).
- Default value:
Disabled
ESP-Driver:UART Configurations
Contains:
CONFIG_UART_ISR_IN_IRAM
Place UART ISR function into IRAM
Found in: Component config > ESP-Driver:UART Configurations
If this option is not selected, UART interrupt will be disabled for a long time and may cause data lost when doing spi flash operation.
- Symbol can be set when:
CONFIG_RINGBUF_PLACE_ISR_FUNCTIONS_INTO_FLASH is disabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_VFS_SELECT_IN_RAM if CONFIG_VFS_SUPPORT_SELECT is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_OPENTHREAD_RADIO_SPINEL_UART
forcefully enabled by CONFIG_OPENTHREAD_RCP_UART
ESP-Driver:UHCI Configurations
Contains:
CONFIG_UHCI_ISR_HANDLER_IN_IRAM
Place UHCI ISR function into IRAM
Found in: Component config > ESP-Driver:UHCI Configurations
If this option is not selected, UHCI interrupt will be disabled for a long time and may cause data lost when doing spi flash operation.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GDMA_CTRL_FUNC_IN_IRAM
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_UHCI_ISR_CACHE_SAFE
CONFIG_UHCI_RECV_FUNC_IN_IRAM
Place UHCI receive function into IRAM
Found in: Component config > ESP-Driver:UHCI Configurations
Place uhci_receive() into IRAM for better performance and fewer cache misses. This also allows uhci_receive() to be called from the RX-done callback (ISR context), for example to re-arm reception with a new buffer and minimize the RX gap.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_GDMA_CTRL_FUNC_IN_IRAM
CONFIG_UHCI_ISR_CACHE_SAFE
Allow UHCI ISR to execute when cache is disabled
Found in: Component config > ESP-Driver:UHCI Configurations
Enable this option to allow the ISR for UHCI to execute even when the cache is disabled. This can be useful in scenarios where the cache might be turned off, but the UHCI functionality is still required to operate correctly. To also call uhci_receive() from the ISR while the cache is disabled, enable UHCI_RECV_FUNC_IN_IRAM as well.
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is disabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_UHCI_ISR_HANDLER_IN_IRAM
forcefully enables CONFIG_GDMA_ISR_HANDLER_IN_IRAM
CONFIG_UHCI_ENABLE_DEBUG_LOG
Enable debug log
Found in: Component config > ESP-Driver:UHCI Configurations
whether to enable the debug log message for UHCI driver. Note that, this option only controls the UHCI driver log, won't affect other drivers.
- Default value:
Disabled
ESP-Driver:USB Serial/JTAG Configuration
Contains:
CONFIG_USJ_ENABLE_USB_SERIAL_JTAG
Enable USB-Serial-JTAG Module
Found in: Component config > ESP-Driver:USB Serial/JTAG Configuration
The USB-Serial-JTAG module on ESP chips is turned on by default after power-on. If your application does not need it and not rely on it to be used as system console or use the built-in JTAG for debugging, you can disable this option, then the clock of this module will be disabled at startup, which will save some power consumption. Note: This will disable USB-Serial-JTAG only in the application; it will still be enabled during the bootloader stage, so you can continue to use it to flash the chip in download mode. To disable it completely, you must burn the EFUSE_DIS_USB_SERIAL_JTAG eFuse.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
CONFIG_USJ_NO_AUTO_LS_ON_CONNECTION
Don't enter the automatic light sleep when USB Serial/JTAG port is connected
Found in: Component config > ESP-Driver:USB Serial/JTAG Configuration > CONFIG_USJ_ENABLE_USB_SERIAL_JTAG
If enabled, the chip will constantly monitor the connection status of the USB Serial/JTAG port. As long as the USB Serial/JTAG is connected, a ESP_PM_NO_LIGHT_SLEEP power management lock will be acquired to prevent the system from entering light sleep. This option can be useful if serial monitoring is needed via USB Serial/JTAG while power management is enabled, as the USB Serial/JTAG cannot work under light sleep and after waking up from light sleep. Note. This option can only control the automatic Light-Sleep behavior. If esp_light_sleep_start() is called manually from the program, enabling this option will not prevent light sleep entry even if the USB Serial/JTAG is in use.
- Symbol can be set when:
CONFIG_PM_ENABLE is enabled && CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED is enabled && CONFIG_USJ_ENABLE_USB_SERIAL_JTAG is enabled
- Default value:
Disabled
Ethernet
Contains:
CONFIG_ETH_USE_SPI_ETHERNET
Support SPI to Ethernet Module
Found in: Component config > Ethernet
ESP-IDF can also support SPI-Ethernet. Actual chip drivers are available as components in Component Registry.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ETH_ENABLED
CONFIG_ETH_USE_OPENETH
Support OpenCores Ethernet MAC (for use with QEMU)
Found in: Component config > Ethernet
OpenCores Ethernet MAC driver can be used when an ESP-IDF application is executed in QEMU. This driver is not supported when running on a real chip.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ETH_ENABLED
Contains:
CONFIG_ETH_OPENETH_DMA_RX_BUFFER_NUM
Number of Ethernet DMA Rx buffers
Found in: Component config > Ethernet > CONFIG_ETH_USE_OPENETH
Number of DMA receive buffers, each buffer is 1600 bytes.
- Symbol can be set when:
CONFIG_ETH_USE_OPENETH is enabled
- Range:
from 1 to 64
- Default value:
4
CONFIG_ETH_OPENETH_DMA_TX_BUFFER_NUM
Number of Ethernet DMA Tx buffers
Found in: Component config > Ethernet > CONFIG_ETH_USE_OPENETH
Number of DMA transmit buffers, each buffer is 1600 bytes.
- Symbol can be set when:
CONFIG_ETH_USE_OPENETH is enabled
- Range:
from 1 to 64
- Default value:
1
CONFIG_ETH_TRANSMIT_MUTEX
Enable Transmit Mutex
Found in: Component config > Ethernet
Prevents multiple accesses when Ethernet interface is used as shared resource and multiple functionalities might try to access it at a time.
- Symbol can be set when:
CONFIG_ETH_ENABLED is enabled
- Default value:
Enabled if CONFIG_ESP_NETIF_L2_TAP is enabled
Disabled
CONFIG_ETH_SUBLAYER_SUPPORT
Support Ethernet netif sublayer (EXPERIMENTAL)
Found in: Component config > Ethernet
Enable the experimental Ethernet sublayer API (esp_eth_sublayer.h).
The sublayer is the coupling point between one physical Ethernet driver and one or more esp_netif instances, with optional 802.1Q VLAN demux/mux, integrated switch, and L2TAP integration.
This API is experimental and may change in future ESP-IDF releases.
- Symbol can be set when:
CONFIG_ETH_ENABLED is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled
- Default value:
Disabled
CONFIG_ETH_SUBLAYER_IODRIVER_PROVIDER
Expose the sublayer as an IO driver provider
Found in: Component config > Ethernet > CONFIG_ETH_SUBLAYER_SUPPORT
Build the sublayer's IO driver provider implementation : a generic virtual table (transmit / transmit_wrap / free_rx_buffer / get_ll_driver) that resolves a base, VLAN child, or integrated switch port into its transmit/free functions.
This is required for L2 TAP integration and is enabled automatically when ESP_NETIF_L2_TAP is selected. It can also be enabled independently so that other upper layers can obtain IO functions for a specific sublayer endpoint.
- Symbol can be set when:
CONFIG_ETH_SUBLAYER_SUPPORT is enabled
- Default value:
Enabled if CONFIG_ESP_NETIF_L2_TAP is enabled
Disabled
CONFIG_ETH_SUBLAYER_TRANSMIT_MUTEX
Enable Ethernet sublayer Transmit Mutex
Found in: Component config > Ethernet > CONFIG_ETH_SUBLAYER_SUPPORT
Serializes the whole Ethernet sublayer TX path (TX hook, integrated switch mux, and the actual driver transmit call) per sublayer instance with a dedicated mutex.
This is needed whenever more than one task can end up transmitting through the same sublayer concurrently (e.g. multiple L2TAP sockets bound to different switch/VLAN ports, each potentially owned by a different task), since TX hooks and integrated switch drivers may keep small amounts of mutable state (e.g. tag/padding scratch buffers) that are only safe to access from one task at a time.
This option is independent of ETH_TRANSMIT_MUTEX: enabling one does not disable the other. If every esp_eth_handle_t used by the application is exclusively driven through a sublayer, ETH_TRANSMIT_MUTEX can usually be left disabled to avoid the extra locking, since this option already serializes the complete TX path leading up to the driver transmit call. However, if any Ethernet handle is also transmitted to directly (bypassing the sublayer), ETH_TRANSMIT_MUTEX is still required for that handle - this option only protects traffic that goes through eth_sublayer_transmit().
- Symbol can be set when:
CONFIG_ETH_SUBLAYER_SUPPORT is enabled
- Default value:
Enabled if CONFIG_ETH_SUBLAYER_IODRIVER_PROVIDER is enabled
Disabled
CONFIG_ETH_SUBLAYER_VLAN_SUPPORT
Enable 802.1Q VLAN support in the sublayer
Found in: Component config > Ethernet > CONFIG_ETH_SUBLAYER_SUPPORT
Allow tagged 802.1Q VLAN netifs to be created on top of the sublayer, in addition to the plain untagged one.
Disabling this option restricts the sublayer to a single, untagged netif per Ethernet driver (or per integrated switch port), reducing code size and RAM usage.
- Symbol can be set when:
CONFIG_ETH_SUBLAYER_SUPPORT is enabled
- Default value:
Disabled
CONFIG_ETH_SUBLAYER_SWITCH_SUPPORT
Enable integrated Ethernet switch support in the sublayer
Found in: Component config > Ethernet > CONFIG_ETH_SUBLAYER_SUPPORT
Enable support for attaching an integrated Ethernet switch to the sublayer, including switch-specific frame mux/demux and per-port IO driver handling.
This is intended for Ethernet switch drivers that require host-interface frame tagging. Leave this option disabled to reduce code size and RAM usage when the sublayer is used without a switch.
- Symbol can be set when:
CONFIG_ETH_SUBLAYER_SUPPORT is enabled
- Default value:
Disabled
CONFIG_ETH_SUBLAYER_TX_BUF_DESC_CAPACITY
Sublayer TX buffer descriptor capacity
Found in: Component config > Ethernet > CONFIG_ETH_SUBLAYER_SUPPORT
Maximum number of esp_eth_buf_desc_t entries available to the Ethernet sublayer TX path (including TX hook edits).
If TX hook needs to add more frame segments without memcpying the entire frame, it can do so by adding more entries to the descriptor array.
The descriptor array is stack-allocated on hot TX paths, so larger values increase stack usage but allow hooks to add more frame segments without allocating a new descriptor array.
- Symbol can be set when:
CONFIG_ETH_SUBLAYER_SUPPORT is enabled
- Range:
from to 16
- Default value:
CONFIG_ETH_SUBLAYER_TX_BUF_DESC_CAP_RANGE_MIN
Event Loop Library
Contains:
CONFIG_ESP_EVENT_LOOP_PROFILING
Enable event loop profiling
Found in: Component config > Event Loop Library
Enables collections of statistics in the event loop library such as the number of events posted to/received by an event loop, number of callbacks involved, number of events dropped to to a full event loop queue, run time of event handlers, and number of times/run time of each event handler.
- Default value:
Disabled
CONFIG_ESP_EVENT_POST_FROM_ISR
Support posting events from ISRs
Found in: Component config > Event Loop Library
Enable posting events from interrupt handlers.
- Default value:
Enabled
CONFIG_ESP_EVENT_POST_FROM_ISR_SIZE
Max size of data from events (bytes)
Found in: Component config > Event Loop Library > CONFIG_ESP_EVENT_POST_FROM_ISR
Maximum size (in bytes) of event data that will be kept in the inline event storage.
When ESP_EVENT_POST_FROM_ISR is enabled, event data with size less than or equal to this value is copied into the fixed-size inline storage. If event's data is larger than this limit, a heap allocation is performed and the data is copied into the allocated buffer before posting.
When ESP_EVENT_POST_FROM_ISR is disabled, event data is always copied to a heap-allocated buffer to ensure the data remains valid until the event is processed.
Choose this value to trade static RAM footprint of the inline storage against the frequency of heap allocations: smaller values reduce static memory usage; larger values reduce heap allocations and fragmentation.
- Symbol can be set when:
CONFIG_ESP_EVENT_POST_FROM_ISR is enabled
- Range:
from 4 to 256
- Default value:
4
CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR
Support posting events from ISRs placed in IRAM
Found in: Component config > Event Loop Library > CONFIG_ESP_EVENT_POST_FROM_ISR
Enable posting events from interrupt handlers placed in IRAM. Enabling this option places API functions esp_event_post and esp_event_post_to in IRAM.
- Symbol can be set when:
CONFIG_ESP_EVENT_POST_FROM_ISR is enabled
- Default value:
Enabled
CONFIG_ESP_EVENT_LOOP_IN_EXT_RAM
Place event loop related allocations in external RAM
Found in: Component config > Event Loop Library
When this configuration is enabled, the event loop will place all of its event loop related allocations in external RAM.
Note that when CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR is enabled, queue related allocations will still be placed in internal RAM to ensure that posting events from IRAM ISR works correctly.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_FREERTOS_TASK_CREATE_ALLOW_EXT_MEM is enabled
- Default value:
Disabled
GDB Stub
Contains:
CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME
GDBStub at runtime
Found in: Component config > GDB Stub
Enable builtin GDBStub. This allows to debug the target device using serial port: - Run 'idf.py monitor'. - Wait for the device to initialize. - Press Ctrl+C to interrupt the execution and enter GDB attached to your device for debugging. NOTE: all UART input will be handled by GDBStub.
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_GDBSTUB_ENABLED
CONFIG_ESP_GDBSTUB_SUPPORT_TASKS
Enable listing FreeRTOS tasks through GDB Stub
Found in: Component config > GDB Stub
If enabled, GDBStub can supply the list of FreeRTOS tasks to GDB. Thread list can be queried from GDB using 'info threads' command. Note that if GDB task lists were corrupted, this feature may not work. If GDBStub fails, try disabling this feature.
- Symbol can be set when:
CONFIG_ESP_GDBSTUB_ENABLED is enabled
- Default value:
Enabled
CONFIG_ESP_GDBSTUB_MAX_TASKS
Maximum number of tasks supported by GDB Stub
Found in: Component config > GDB Stub > CONFIG_ESP_GDBSTUB_SUPPORT_TASKS
Set the number of tasks which GDB Stub will support.
- Symbol can be set when:
CONFIG_ESP_GDBSTUB_SUPPORT_TASKS is enabled
- Default value:
32
ESP HID
Contains:
CONFIG_ESPHID_TASK_SIZE_BT
Task stack size for ESP HID BR/EDR
Found in: Component config > ESP HID
This is the stack size for the BT HID task. Default is 2048 bytes.
- Range:
from 2048 to 10240
- Default value:
2048
CONFIG_ESPHID_TASK_SIZE_BLE
Task stack size for ESP HID BLE
Found in: Component config > ESP HID
This is the stack size for the BLE HID task. Default is 4096 bytes.
- Range:
from 2048 to 10240
- Default value:
4096
ESP HTTP client
Contains:
CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS
Enable https
Found in: Component config > ESP HTTP client
This option will enable https protocol by linking esp-tls library and initializing SSL transport
- Default value:
Enabled
CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH
Enable HTTP Basic Authentication
Found in: Component config > ESP HTTP client
This option will enable HTTP Basic Authentication. It is disabled by default as Basic auth uses unencrypted encoding, so it introduces a vulnerability when not using TLS
- Default value:
Disabled
CONFIG_ESP_HTTP_CLIENT_ENABLE_DIGEST_AUTH
Enable HTTP Digest Authentication
Found in: Component config > ESP HTTP client
This option will enable HTTP Digest Authentication. It is enabled by default, but use of this configuration is not recommended as the password can be derived from the exchange, so it introduces a vulnerability when not using TLS
- Default value:
Disabled
CONFIG_ESP_HTTP_CLIENT_ENABLE_CUSTOM_TRANSPORT
Enable custom transport
Found in: Component config > ESP HTTP client
This option will enable injection of a custom tcp_transport handle, so the http operation will be performed on top of the user defined transport abstraction (if configured)
- Default value:
Disabled
CONFIG_ESP_HTTP_CLIENT_ENABLE_GET_CONTENT_RANGE
Enable content range functionality
Found in: Component config > ESP HTTP client
This enables use of content range header in esp_http_client component.
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_HTTPS_OTA_ENABLE_PARTIAL_DOWNLOAD
CONFIG_ESP_HTTP_CLIENT_EVENT_POST_TIMEOUT
Time in millisecond to wait for posting event
Found in: Component config > ESP HTTP client
This config option helps in setting the time in millisecond to wait for event to be posted to the system default event loop. Set it to -1 if you need to set timeout to portMAX_DELAY.
- Default value:
2000
CONFIG_ESP_HTTP_CLIENT_SAVE_RESPONSE_HEADERS
Save response headers
Found in: Component config > ESP HTTP client
This option will enable saving of response headers in esp_http_client component. When enabled, upto ESP_HTTP_CLIENT_MAX_SAVED_RESPONSE_HEADERS headers are saved. Enabling this option will increase the memory footprint of the component.
- Default value:
Disabled
CONFIG_ESP_HTTP_CLIENT_MAX_SAVED_RESPONSE_HEADERS
Maximum number of response headers
Found in: Component config > ESP HTTP client > CONFIG_ESP_HTTP_CLIENT_SAVE_RESPONSE_HEADERS
This config option helps in setting the maximum number of response headers that can be saved in esp_http_client component.
- Symbol can be set when:
CONFIG_ESP_HTTP_CLIENT_SAVE_RESPONSE_HEADERS is enabled
- Default value:
10
CONFIG_ESP_HTTP_CLIENT_MAX_RESPONSE_HEADER_SIZE
Maximum size of response header
Found in: Component config > ESP HTTP client > CONFIG_ESP_HTTP_CLIENT_SAVE_RESPONSE_HEADERS
This config option helps in setting the maximum size of response header that can be saved in esp_http_client component. Note that the same size is used for key and value in the response headers.
- Symbol can be set when:
CONFIG_ESP_HTTP_CLIENT_SAVE_RESPONSE_HEADERS is enabled
- Default value:
128
CONFIG_ESP_HTTP_CLIENT_STRICT_HEADER_BUFFER
Fail the request when a header does not fit in the tx buffer
Found in: Component config > ESP HTTP client
When enabled, esp_http_client_request_send() returns ESP_ERR_HTTP_HEADER_TOO_LONG if any individual header is larger than buffer_size_tx. With this option disabled, the legacy behavior is preserved: oversized headers are silently dropped and the request is emitted without its 'rnrn' terminator, which typically results in the server timing out the connection. The strict check adds two small comparisons in the header send loop.
- Default value:
Enabled
HTTP Server
Contains:
CONFIG_HTTPD_MAX_REQ_HDR_LEN
HTTP Request Header Length limit
Found in: Component config > HTTP Server
This sets the default limit for the HTTP request header length. The limit can be configured at run time by setting max_req_hdr_len member of httpd_config_t structure. The memory allocated will depend on the actual header length. Hence keeping a sufficiently large max header length is recommended.
- Range:
from 128 to 65536
- Default value:
1024
CONFIG_HTTPD_MAX_URI_LEN
Max HTTP URI Length
Found in: Component config > HTTP Server
This sets the maximum supported size of HTTP request URI to be processed by the server
- Default value:
512
CONFIG_HTTPD_ERR_RESP_NO_DELAY
Use TCP_NODELAY socket option when sending HTTP error responses
Found in: Component config > HTTP Server
Using TCP_NODEALY socket option ensures that HTTP error response reaches the client before the underlying socket is closed. Please note that turning this off may cause multiple test failures
- Default value:
Enabled
CONFIG_HTTPD_PURGE_BUF_LEN
Length of temporary buffer for purging data
Found in: Component config > HTTP Server
This sets the size of the temporary buffer used to receive and discard any remaining data that is received from the HTTP client in the request, but not processed as part of the server HTTP request handler.
If the remaining data is larger than the available buffer size, the buffer will be filled in multiple iterations. The buffer should be small enough to fit on the stack, but large enough to avoid excessive iterations.
- Default value:
32
CONFIG_HTTPD_LOG_PURGE_DATA
Log purged content data at Debug level
Found in: Component config > HTTP Server
Enabling this will log discarded binary HTTP request data at Debug level. For large content data this may not be desirable as it will clutter the log.
- Default value:
Disabled
CONFIG_HTTPD_WS_SUPPORT
WebSocket server support
Found in: Component config > HTTP Server
This sets the WebSocket server support.
- Default value:
Disabled
CONFIG_HTTPD_WS_STRICTER_RFC6455
Enforce stricter RFC 6455 WebSocket conformance
Found in: Component config > HTTP Server > CONFIG_HTTPD_WS_SUPPORT
Enable stricter RFC 6455 enforcement in the WebSocket server. When enabled, the server validates handshake headers (Host, Sec-WebSocket-Version, Sec-WebSocket-Key), rejects frames with reserved RSV bits, reserved or fragmented control opcodes, non-minimal payload length encodings, and frames whose 64-bit length has the MSB set; sends a CLOSE frame on protocol errors; validates CLOSE frame status codes and UTF-8 reason; validates UTF-8 text payloads; and blocks outbound data frames once a CLOSE has been sent or received.
UTF-8 is validated for a complete, unfragmented text frame only.
This option defaults to off in this release cycle so existing deployments see no behavior change. Enable to opt into stricter enforcement; lenient mode (the default) silently accepts protocol violations that may produce security or interoperability issues, so enable as soon as your clients are verified conformant.
- Symbol can be set when:
CONFIG_HTTPD_WS_SUPPORT is enabled
- Default value:
Disabled
CONFIG_HTTPD_QUEUE_WORK_BLOCKING
httpd_queue_work as blocking API
Found in: Component config > HTTP Server
Selects the wait policy for httpd_queue_work() when the UDP control-socket mbox is at capacity. The HTTP server always uses a counting semaphore (sized to LWIP_UDP_RECVMBOX_SIZE) to prevent silent mbox overflow drops that would leak the caller's async-send callback context.
When disabled (default): httpd_queue_work() returns ESP_FAIL immediately if the mbox is full, so the caller can free its callback context. This preserves the non-blocking semantics of httpd_ws_send_data_async().
When enabled: httpd_queue_work() blocks until a slot is available. Use this only if your application can tolerate the call blocking and wants guaranteed delivery instead of a fast-fail.
CONFIG_HTTPD_ENABLE_EVENTS
Enable ESP_HTTP_SERVER_EVENT
Found in: Component config > HTTP Server
This enables the ESP_HTTP_SERVER_EVENT event type. Generating these eventes adds some overhead. If you are not using this event type, you can disable it to save some memory and add performance.
- Default value:
Enabled
CONFIG_HTTPD_SERVER_EVENT_POST_TIMEOUT
Time in millisecond to wait for posting event
Found in: Component config > HTTP Server > CONFIG_HTTPD_ENABLE_EVENTS
This config option helps in setting the time in millisecond to wait for event to be posted to the system default event loop. Set it to -1 if you need to set timeout to portMAX_DELAY.
- Symbol can be set when:
CONFIG_HTTPD_ENABLE_EVENTS is enabled
- Default value:
2000
CONFIG_HTTPD_WS_PRE_HANDSHAKE_CB_SUPPORT
WebSocket pre-handshake callback support
Found in: Component config > HTTP Server
Enable this option to use WebSocket pre-handshake callback. This will allow the server to register a callback function that will be called before the WebSocket handshake is processed i.e. before switching to the WebSocket protocol.
- Symbol can be set when:
CONFIG_HTTPD_WS_SUPPORT is enabled
- Default value:
Disabled
CONFIG_HTTPD_WS_POST_HANDSHAKE_CB_SUPPORT
WebSocket post-handshake callback support
Found in: Component config > HTTP Server
Enable this option to use WebSocket post-handshake callback. This will allow the server to register a callback function that will be called after the WebSocket handshake is processed i.e. after switching to the WebSocket protocol.
- Symbol can be set when:
CONFIG_HTTPD_WS_SUPPORT is enabled
- Default value:
Disabled
ESP HTTPS OTA
Contains:
CONFIG_ESP_HTTPS_OTA_DECRYPT_CB
Provide decryption callback
Found in: Component config > ESP HTTPS OTA
Exposes an additional callback whereby firmware data could be decrypted before being processed by OTA update component. This can help to integrate external encryption related format and removal of such encapsulation layer from firmware image.
- Default value:
Disabled
CONFIG_ESP_HTTPS_OTA_ALLOW_HTTP
Allow HTTP for OTA (WARNING: ONLY FOR TESTING PURPOSE, READ HELP)
Found in: Component config > ESP HTTPS OTA
It is highly recommended to keep HTTPS (along with server certificate validation) enabled. Enabling this option comes with potential risk of: - Non-encrypted communication channel with server - Accepting firmware upgrade image from server with fake identity
- Default value:
Disabled
CONFIG_ESP_HTTPS_OTA_EVENT_POST_TIMEOUT
Time in millisecond to wait for posting event
Found in: Component config > ESP HTTPS OTA
This config option helps in setting the time in millisecond to wait for event to be posted to the system default event loop. Set it to -1 if you need to set timeout to portMAX_DELAY.
- Default value:
2000
CONFIG_ESP_HTTPS_OTA_ENABLE_PARTIAL_DOWNLOAD
Enable partial HTTP download for OTA
Found in: Component config > ESP HTTPS OTA
This enables use of range header in esp_https_ota component. The firmware image will be downloaded over multiple HTTP requests.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_HTTP_CLIENT_ENABLE_GET_CONTENT_RANGE
CONFIG_ESP_HTTPS_OTA_VERIFY_SPI_MODE
Verify SPI flash mode compatibility for application during OTA
Found in: Component config > ESP HTTPS OTA
When enabled, the OTA process will verify that the SPI flash mode of the new application image is compatible with the currently running firmware. This helps prevent flashing firmware with incompatible SPI mode settings which could cause flash write failures.
- Default value:
Enabled
ESP HTTPS server
Contains:
CONFIG_ESP_HTTPS_SERVER_ENABLE
Enable ESP_HTTPS_SERVER component
Found in: Component config > ESP HTTPS server
Enable ESP HTTPS server component
- Symbol can be set when:
CONFIG_ESP_TLS_USING_MBEDTLS is enabled && CONFIG_MBEDTLS_TLS_SERVER is enabled
CONFIG_ESP_HTTPS_SERVER_EVENTS
Enable ESP_HTTPS_SERVER_EVENT event type
Found in: Component config > ESP HTTPS server > CONFIG_ESP_HTTPS_SERVER_ENABLE
This enables the ESP_HTTPS_SERVER_EVENT event type. Generating these eventes adds some overhead. If you are not using this event type, you can disable it to save some memory.
- Symbol can be set when:
CONFIG_ESP_HTTPS_SERVER_ENABLE is enabled
- Default value:
Enabled
CONFIG_ESP_HTTPS_SERVER_EVENT_POST_TIMEOUT
Time in millisecond to wait for posting event
Found in: Component config > ESP HTTPS server > CONFIG_ESP_HTTPS_SERVER_ENABLE > CONFIG_ESP_HTTPS_SERVER_EVENTS
This config option helps in setting the time in millisecond to wait for event to be posted to the system default event loop. Set it to -1 if you need to set timeout to portMAX_DELAY.
- Symbol can be set when:
CONFIG_ESP_HTTPS_SERVER_ENABLE is enabled && CONFIG_ESP_HTTPS_SERVER_EVENTS is enabled
- Default value:
2000
CONFIG_ESP_HTTPS_SERVER_CERT_SELECT_HOOK
Enable certificate selection hook
Found in: Component config > ESP HTTPS server
Enable certificate selection hook for ESP HTTPS Server. When enabled, this allows the server to dynamically select the appropriate certificate based on the client's Server Name Indication (SNI). This is useful for hosting multiple domains on a single server with different SSL certificates.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_TLS_SERVER_CERT_SELECT_HOOK
Hardware Settings
Contains:
Chip revision
Contains:
CONFIG_ESP32C61_REV_MIN
Minimum Supported ESP32-C61 Revision
Found in: Component config > Hardware Settings > Chip revision
Required minimum chip revision. ESP-IDF will check for it and reject to boot if the chip revision fails the check. This ensures the chip used will have some modifications (features, or bugfixes).
The complied binary will only support chips above this revision, this will also help to reduce binary size.
Available options:
Rev v1.0 (CONFIG_ESP32C61_REV_MIN_100)
Rev v1.1 (CONFIG_ESP32C61_REV_MIN_101)
CONFIG_ESP_EFUSE_BLOCK_REV_MIN_FULL
Minimum Supported ESP32-C61 eFuse Block Revision
Found in: Component config > Hardware Settings > Chip revision
Required minimum eFuse Block revision. ESP-IDF will check it at the 2nd bootloader stage whether the current image can work correctly for this eFuse Block revision. So that to avoid running an incompatible image on a SoC that contains breaking change in the eFuse Block. If you want to update this value to run the image that not compatible with the current eFuse Block revision, please contact to Espressif's business team for details: https://www.espressif.com.cn/en/contact-us/sales-questions
- Default value:
0
CONFIG_ESP_REV_NEW_CHIP_TEST
Internal test mode
Found in: Component config > Hardware Settings > Chip revision
For internal chip testing, a small number of new versions chips didn't update the version field in eFuse, you can enable this option to force the software recognize the chip version based on the rev selected in menuconfig.
- Default value:
Disabled
MAC Config
Contains:
CONFIG_ESP32C61_UNIVERSAL_MAC_ADDRESSES
Number of universally administered (by IEEE) MAC address
Found in: Component config > Hardware Settings > MAC Config
Configure the number of universally administered (by IEEE) MAC addresses.
During initialization, MAC addresses for each network interface are generated or derived from a single base MAC address.
If the number of universal MAC addresses is four, all four interfaces (WiFi station, WiFi softap, Bluetooth and Ethernet) receive a universally administered MAC address. These are generated sequentially by adding 0, 1, 2 and 3 (respectively) to the final octet of the base MAC address.
If the number of universal MAC addresses is two, only two interfaces (WiFi station and Bluetooth) receive a universally administered MAC address. These are generated sequentially by adding 0 and 1 (respectively) to the base MAC address. The remaining two interfaces (WiFi softap and Ethernet) receive local MAC addresses. These are derived from the universal WiFi station and Bluetooth MAC addresses, respectively.
When using the default (Espressif-assigned) base MAC address, either setting can be used. When using a custom universal MAC address range, the correct setting will depend on the allocation of MAC addresses in this range (either 2 or 4 per device.)
Note that ESP32-C6 has no integrated Ethernet MAC. Although it's possible to use the esp_read_mac() API to return a MAC for Ethernet, this can only be used with an external MAC peripheral.
Available options:
Two (CONFIG_ESP32C61_UNIVERSAL_MAC_ADDRESSES_TWO)
Four (CONFIG_ESP32C61_UNIVERSAL_MAC_ADDRESSES_FOUR)
CONFIG_ESP_MAC_USE_CUSTOM_MAC_AS_BASE_MAC
Enable using custom mac as base mac
Found in: Component config > Hardware Settings > MAC Config
When this configuration is enabled, the user can invoke esp_read_mac to obtain the desired type of MAC using a custom MAC as the base MAC.
- Default value:
Disabled
Sleep Config
Contains:
CONFIG_ESP_SLEEP_FLASH_LEAKAGE_WORKAROUND
Pull-up Flash CS pin in light sleep
Found in: Component config > Hardware Settings > Sleep Config
All IOs will be set to isolate(floating) state by default during sleep. Since the power supply of SPI Flash is not lost during lightsleep, if its CS pin is recognized as low level(selected state) in the floating state, there will be a large current leakage, and the data in Flash may be corrupted by random signals on other SPI pins. Select this option will set the CS pin of Flash to PULL-UP state during sleep, but this will increase the sleep current about 10 uA. If you are developing with esp32xx modules, you must select this option, but if you are developing with chips, you can also pull up the CS pin of SPI Flash in the external circuit to save power consumption caused by internal pull-up during sleep. (!!! Don't deselect this option if you don't have external SPI Flash CS pin pullups.)
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled
CONFIG_ESP_SLEEP_PSRAM_LEAKAGE_WORKAROUND
Pull-up PSRAM CS pin in light sleep
Found in: Component config > Hardware Settings > Sleep Config
All IOs will be set to isolate(floating) state by default during sleep. Since the power supply of PSRAM is not lost during lightsleep, if its CS pin is recognized as low level(selected state) in the floating state, there will be a large current leakage, and the data in PSRAM may be corrupted by random signals on other SPI pins. Select this option will set the CS pin of PSRAM to PULL-UP state during sleep, but this will increase the sleep current about 10 uA. If you are developing with esp32xx modules, you must select this option, but if you are developing with chips, you can also pull up the CS pin of PSRAM in the external circuit to save power consumption caused by internal pull-up during sleep. (!!! Don't deselect this option if you don't have external PSRAM CS pin pullups.)
- Symbol can be set when:
CONFIG_SPIRAM is enabled
- Default value:
Enabled
CONFIG_ESP_SLEEP_MSPI_NEED_ALL_IO_PU
Pull-up all SPI pins in light sleep
Found in: Component config > Hardware Settings > Sleep Config
To reduce leakage current, some types of SPI Flash/RAM only need to pull up the CS pin during light sleep. But there are also some kinds of SPI Flash/RAM that need to pull up all pins. It depends on the SPI Flash/RAM chip used.
- Symbol can be set when:
CONFIG_ESP_SLEEP_PSRAM_LEAKAGE_WORKAROUND is enabled || CONFIG_ESP_SLEEP_FLASH_LEAKAGE_WORKAROUND is enabled
CONFIG_ESP_SLEEP_GPIO_RESET_WORKAROUND
light sleep GPIO reset workaround
Found in: Component config > Hardware Settings > Sleep Config
All existing chips except esp32 and esp32s2 will reset on wake-up if a GPIO receives a small electrostatic pulse during light sleep, with specific conditions.
GPIO needs to be configured as input-mode only
The pin receives a small electrostatic pulse, and reset occurs when the pulse voltage is higher than 6 V
For GPIO set to input mode only, it is not a good practice to leave it open/floating, The hardware design needs to controlled it with determined supply or ground voltage is necessary.
This option provides a software workaround for this issue. Configure to isolate all GPIO pins in sleep state.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_PM_SLP_DISABLE_GPIO if CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
CONFIG_ESP_SLEEP_WAIT_FLASH_READY_EXTRA_DELAY
Extra delay (in us) after flash powerdown sleep wakeup to wait flash ready
Found in: Component config > Hardware Settings > Sleep Config
When the chip exits sleep, the CPU and the flash chip are powered on at the same time. CPU will run rom code (deepsleep) or ram code (lightsleep) first, and then load or execute code from flash.
Some flash chips need sufficient time to pass between power on and first read operation. By default, without any extra delay, this time is approximately 900us, although some flash chip types need more than that.
(!!! Please adjust this value according to the Data Sheet of SPI Flash used in your project.) In Flash Data Sheet, the parameters that define the Flash ready timing after power-up (minimum time from Vcc(min) to CS active) are usually named tVSL in ELECTRICAL CHARACTERISTICS chapter, and the configuration value here should be: ESP_SLEEP_WAIT_FLASH_READY_EXTRA_DELAY = tVSL - 900
For esp32 and esp32s3, the default extra delay is set to 2000us. When optimizing startup time for applications which require it, this value may be reduced.
If you are seeing "flash read err, 1000" message printed to the console after deep sleep reset on esp32, or triggered RTC_WDT/LP_WDT after lightsleep wakeup, try increasing this value. (For esp32, the delay will be executed in both deep sleep and light sleep wake up flow. For chips after esp32, the delay will be executed only in light sleep flow, the delay controlled by the EFUSE_FLASH_TPUW in ROM will be executed in deepsleep wake up flow.)
- Range:
from 0 to 5000
- Default value:
0
CONFIG_ESP_SLEEP_CACHE_SAFE_ASSERTION
Check the cache safety of the sleep wakeup code in sleep process
Found in: Component config > Hardware Settings > Sleep Config
Enabling it will check the cache safety of the code before the flash power is ready after light sleep wakeup, and check PM_SLP_IRAM_OPT related code cache safety. This option is only for code quality inspection. Enabling it will increase the time overhead of entering and exiting sleep. It is not recommended to enable it in the release version.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_PANIC_HANDLER_IRAM
CONFIG_ESP_SLEEP_DEBUG
esp sleep debug
Found in: Component config > Hardware Settings > Sleep Config
Enable esp sleep debug.
- Default value:
Disabled
CONFIG_ESP_SLEEP_GPIO_ENABLE_INTERNAL_RESISTORS
Allow to enable internal pull-up/downs for the Deep-Sleep wakeup IOs
Found in: Component config > Hardware Settings > Sleep Config
When using rtc gpio wakeup source during deepsleep without external pull-up/downs, you may want to make use of the internal ones.
- Default value:
Enabled
CONFIG_ESP_SLEEP_EVENT_CALLBACKS
Enable registration of sleep event callbacks
Found in: Component config > Hardware Settings > Sleep Config
If enabled, it allows user to register sleep event callbacks. It is primarily designed for internal developers and customers can use PM_LIGHT_SLEEP_CALLBACKS as an alternative.
NOTE: These callbacks are executed from the IDLE task context hence you cannot have any blocking calls in your callbacks.
NOTE: Enabling these callbacks may change sleep duration calculations based on time spent in callback and hence it is highly recommended to keep them as short as possible.
- Symbol can be set when:
CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
- Default value:
Disabled
CONFIG_ESP_SLEEP_SET_FLASH_DPD
Set SPI flash to deep power-down mode in light sleep
Found in: Component config > Hardware Settings > Sleep Config
Deep Power-Down mode is a power mode supported by most SPI Flash, SPI Flash has better power consumption performance in this mode comparing to standby mode (hold CS). Enabling this option will set the SPI Flash to deep power down mode during lightsleep to save power, which will reduce the sleep current by about 10uA. And you can also use this option to reduce power consumption when using PSRAM
NOTE: We have conducted sufficient testing on ESP32-C5, ESP32-C61, ESP32-H21, ESP32-H4 and ESP32-P4 (less v3). If you plan to use a customized flash chip, or if you are working with other ESP32-series chips, please make sure to check the corresponding flash datasheet or consult us directly. This is to ensure that using the B9h command to enter Deep Power-Down mode and ABh to exit.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled && CONFIG_ESP_SLEEP_POWER_DOWN_FLASH is disabled && CONFIG_SPI_FLASH_ROM_IMPL is disabled
- Default value:
Enabled
CONFIG_ESP_SLEEP_SPI_FLASH_ENTER_DPD_MODE_DELAY
SPI Flash enter deep power-down time delay (in us)
Found in: Component config > Hardware Settings > Sleep Config > CONFIG_ESP_SLEEP_SET_FLASH_DPD
When used to set the SPI Flash to enter the Deep Power-Down mode, the command is issued by driving CS pin low, shifting the instruction code "B9H" and driving CS high, enter Deep Power-Down mode will take the time duration of tDP before the supply current is reduced and Deep Power-down mode is entered. The CS pin must keep high during the tDP time duration, adjust the value of this option to configure the value of tDP, different types of flash require different tDP values, usually no more than 20us, please refer to the datasheet of the used Flash to configure this option.
- Symbol can be set when:
CONFIG_ESP_SLEEP_SET_FLASH_DPD is enabled
- Range:
from 0 to 100
- Default value:
25
CONFIG_ESP_SLEEP_SPI_FLASH_EXIT_DPD_MODE_DELAY
SPI Flash exit from deep power-down time delay (in us)
Found in: Component config > Hardware Settings > Sleep Config > CONFIG_ESP_SLEEP_SET_FLASH_DPD
When used to exit the SPI Flash from the Deep Power-Down mode, the command is issued by driving the CS pin low, shifting the instruction code "ABH" and driving CS high, release from Deep Power-Down will take the time duration of tRES1 before the SPI FLASH will resume normal operation and other command are accepted. The CS pin must keep high during the tRES1 time duration, adjust the value of this option to configure the value of tRES1, different types of flash require different tRES1 values, usually no more than 35us, please refer to the datasheet of the used Flash to configure this option.
- Symbol can be set when:
CONFIG_ESP_SLEEP_SET_FLASH_DPD is enabled
- Range:
from 0 to 100
- Default value:
40
CONFIG_ESP_SLEEP_ENABLE_RTC_WDT_IN_SLEEP
Enable rtc wdt during sleep (EXPERIMENTAL)
Found in: Component config > Hardware Settings > Sleep Config
If enabled, rtc watchdog will remain active during sleep to prevent program runaway. Specifically, its timeout will be set as the sum of the sleep duration, hardware overhead time, and RTC slow clock compensation time.
NOTE: This feature only works when a timer wakeup is used. In the current phase, the RTC slow clock compensation time remains zero (pending implementation). When using the RC_SLOW_CLK clock without calibration, the maximum continuous sleep duration is typically around 5 minutes, and may vary between chips. Therefore, avoid configuring sleep periods longer than this when enabling this option.
- Symbol can be set when:
CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled
- Default value:
Disabled
CONFIG_ESP_SLEEP_ENABLE_RTC_WDT_IN_DEEP_SLEEP
Enable rtc wdt during deep sleep (EXPERIMENTAL)
Found in: Component config > Hardware Settings > Sleep Config
If enabled, rtc watchdog will remain active during deep sleep to prevent program runaway.
NOTE: This feature only works when a timer wakeup is used. In the current phase, the RTC watchdog will not be disabled or reset after waking from deep sleep. Even though it will be reconfigured during the bootloader phase, there remains a concern that a timeout could occur before this reconfiguration is completed.
- Symbol can be set when:
CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled
- Default value:
Disabled
RTC Clock Config
Contains:
CONFIG_RTC_CLK_SRC
RTC clock source
Found in: Component config > Hardware Settings > RTC Clock Config
Choose which clock is used as RTC clock source.
Available options:
Internal 136 kHz RC oscillator (CONFIG_RTC_CLK_SRC_INT_RC)
External 32 kHz crystal (CONFIG_RTC_CLK_SRC_EXT_CRYS)
External 32 kHz oscillator at 32K_XP pin (CONFIG_RTC_CLK_SRC_EXT_OSC)
CONFIG_RTC_CLK_CAL_CYCLES
Number of cycles for RTC_SLOW_CLK calibration
Found in: Component config > Hardware Settings > RTC Clock Config
When the startup code initializes RTC_SLOW_CLK, it can perform calibration by comparing the RTC_SLOW_CLK frequency with main XTAL frequency. This option sets the number of RTC_SLOW_CLK cycles measured by the calibration routine. Higher numbers increase calibration precision, which may be important for applications which spend a lot of time in deep sleep. Lower numbers reduce startup time.
When this option is set to 0, clock calibration will not be performed at startup, and approximate clock frequencies will be assumed:
136000 Hz if internal RC oscillator is used as clock source. For this use value 1024.
- 32768 Hz if the 32k crystal oscillator is used. For this use value 3000 or more.
In case more value will help improve the definition of the launch of the crystal. If the crystal could not start, it will be switched to internal RC.
- Range:
from 0 to 8190 if CONFIG_RTC_CLK_SRC_EXT_CRYS is enabled || CONFIG_RTC_CLK_SRC_EXT_OSC is enabled
from 0 to 32766 if CONFIG_RTC_CLK_SRC_INT_RC is enabled
- Default value:
3000 if CONFIG_RTC_CLK_SRC_EXT_CRYS is enabled || CONFIG_RTC_CLK_SRC_EXT_OSC is enabled
1024 if CONFIG_RTC_CLK_SRC_INT_RC is enabled
CONFIG_RTC_CLK_FUNC_IN_IRAM
Place RTC clock module functions into IRAM
Found in: Component config > Hardware Settings > RTC Clock Config
Place RTC clock module (all rtc clock functions and const data) into IRAM.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_HW_SUPPORT_FUNC_IN_IRAM
forcefully enabled by CONFIG_PM_SLEEP_FUNC_IN_IRAM
CONFIG_RTC_TIME_FUNC_IN_IRAM
Place RTC time module functions into IRAM
Found in: Component config > Hardware Settings > RTC Clock Config
Place RTC time module (all rtc clock functions) into IRAM.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_HW_SUPPORT_FUNC_IN_IRAM
forcefully enabled by CONFIG_PM_SLEEP_FUNC_IN_IRAM
Peripheral Control
Contains:
CONFIG_ESP_PERIPH_CTRL_FUNC_IN_IRAM
Place peripheral control functions into IRAM
Found in: Component config > Hardware Settings > Peripheral Control
Place peripheral control functions (e.g. periph_module_reset) into IRAM, so that these functions can be IRAM-safe and able to be called in the other IRAM interrupt context.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ADC_ONESHOT_CTRL_FUNC_IN_IRAM
forcefully enabled by CONFIG_SPI_MASTER_ISR_IN_IRAM
forcefully enabled by CONFIG_SPI_SLAVE_ISR_IN_IRAM
forcefully enabled by CONFIG_ESP_HW_SUPPORT_FUNC_IN_IRAM
forcefully enabled by CONFIG_PM_SLEEP_FUNC_IN_IRAM
forcefully enabled by CONFIG_ESP_WIFI_SLP_IRAM_OPT
forcefully enabled by CONFIG_WIFI_RMT_SLP_IRAM_OPT
CONFIG_ESP_REGI2C_CTRL_FUNC_IN_IRAM
Place regi2c control functions into IRAM
Found in: Component config > Hardware Settings > Peripheral Control
Place analog i2c master control functions (e.g. regi2c_ctrl_read_reg, regi2c_ctrl_write_reg) into IRAM, so that these functions can be IRAM-safe and able to be called in the other IRAM interrupt context.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_HW_SUPPORT_FUNC_IN_IRAM
forcefully enabled by CONFIG_PM_SLEEP_FUNC_IN_IRAM
CONFIG_ESP_MODEM_CLOCK_ENABLE_CHECKING
Enable modem clock configuration checking
Found in: Component config > Hardware Settings > Peripheral Control
If enabled, this option will perform additional checks on modem clock configuration to ensure proper operation and detect potential configuration issues.
- Default value:
Disabled
Event Task Matrix (ETM) Configurations
Contains:
CONFIG_ETM_ENABLE_DEBUG_LOG
Force enable debug log
Found in: Component config > Hardware Settings > Event Task Matrix (ETM) Configurations
If enabled, ETM driver will: 1. ignore the global logging settings 2. compile all log messages into the binary 3. set the runtime log level to VERBOSE Please enable this option by caution, as it will increase the binary size.
- Default value:
Disabled
Main XTAL Config
Contains:
CONFIG_XTAL_FREQ
Main XTAL frequency
Found in: Component config > Hardware Settings > Main XTAL Config
This option selects the operating frequency of the XTAL (crystal) clock used to drive the ESP target. The selected value MUST reflect the frequency of the given hardware.
Available options:
40 MHz (CONFIG_XTAL_FREQ_40)
Power Supplier
Contains:
Brownout Detector
Contains:
CONFIG_ESP_BROWNOUT_DET
Hardware brownout detect & reset
Found in: Component config > Hardware Settings > Power Supplier > Brownout Detector
The ESP32-C61 has a built-in brownout detector which can detect if the voltage is lower than a specific value. If this happens, it will reset the chip in order to prevent unintended behaviour.
- Symbol can be set when:
CONFIG_IDF_ENV_FPGA is disabled
- Default value:
Enabled
CONFIG_ESP_BROWNOUT_DET_LVL_SEL
Brownout voltage level
Found in: Component config > Hardware Settings > Power Supplier > Brownout Detector > CONFIG_ESP_BROWNOUT_DET
The brownout detector will reset the chip when the supply voltage is approximately below this level. Note that there may be some variation of brownout voltage level between each chip.
#The voltage levels here are estimates, more work needs to be done to figure out the exact voltages #of the brownout threshold levels.
Available options:
2.51V (CONFIG_ESP_BROWNOUT_DET_LVL_SEL_7)
2.64V (CONFIG_ESP_BROWNOUT_DET_LVL_SEL_6)
2.76V (CONFIG_ESP_BROWNOUT_DET_LVL_SEL_5)
2.92V (CONFIG_ESP_BROWNOUT_DET_LVL_SEL_4)
3.10V (CONFIG_ESP_BROWNOUT_DET_LVL_SEL_3)
3.27V (CONFIG_ESP_BROWNOUT_DET_LVL_SEL_2)
CONFIG_ESP_ENABLE_PVT
Auto adjust hp & lp voltage using pvt function (MUST ENABLE FOR MP)
Found in: Component config > Hardware Settings
If enabled, hp & lp voltage can be auto adjust by PVT characteristic. Otherwise, internal voltage will be set to fix dbias. This is a must for stable mass production. Disable for debugging only.
- Default value:
Enabled
CONFIG_ESP_INTR_IN_IRAM
Place esp_intr_alloc functions in IRAM
Found in: Component config > Hardware Settings
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled
- Default value:
Enabled
ESP-Driver:LCD Controller Configurations
Contains:
CONFIG_LCD_ENABLE_DEBUG_LOG
Force enable debug log
Found in: Component config > ESP-Driver:LCD Controller Configurations
If enabled, LCD driver component will: 1. ignore the global logging settings 2. compile all log messages into the binary 3. set the runtime log level to VERBOSE Please enable this option by caution, as it will increase the binary size.
- Default value:
Disabled
LibC
Contains:
CONFIG_LIBC
LibC to build application with
Found in: Component config > LibC
Available options:
NewLib (CONFIG_LIBC_NEWLIB)
Picolibc (CONFIG_LIBC_PICOLIBC)
CONFIG_LIBC_PICOLIBC_NEWLIB_COMPATIBILITY
Provides limited interoperability with libraries built using Newlib headers
Found in: Component config > LibC
This option provides limited compatibility with libraries built using Newlib headers by:
Enabling hidden system-header inclusions that exist in Newlib. Adding tls_stdio, tls_stdout, and tls_stderr variables to Thread Local Storage to allow prebuilt libraries to access them via getreent(). Providing an implementation of getreent() that returns the value of the thread-pointer register.
Limitations:
1. If your application or an external prebuilt library accesses Newlib "struct _reent" implicitly, this may cause memory corruption on the task stack. You have two options:
Use libc API calls instead of directly accessing "struct _reent" fields.
Switch ESP-IDF to use the Newlib implementation by setting CONFIG_LIBC_NEWLIB=y in sdkconfig.
2. If your application uses a prebuilt library built with Newlib headers, you may encounter unexpected behavior when overriding stdin, stdout, and stderr. External prebuilt libraries can only read these streams, so overriding them will not affect as it was for Newlib. You have two options to fix this:
Rebuild the library with Picolibc headers that follow POSIX-standardized stdin, stdout, and stderr declarations.
Switch ESP-IDF to use the Newlib implementation by setting CONFIG_LIBC_NEWLIB=y in sdkconfig.
- Symbol can be set when:
CONFIG_LIBC_PICOLIBC is enabled
- Default value:
Enabled
CONFIG_LIBC_MISC_IN_IRAM
Place misc libc functions (abort/assert/stdatomics) in IRAM
Found in: Component config > LibC
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled
- Default value:
Enabled
CONFIG_LIBC_LOCKS_PLACE_IN_IRAM
Place lock API in IRAM
Found in: Component config > LibC
Enable this option to include be able to call the lock API from code that runs while cache is disabled, e.g. IRAM interrupts.
- Default value:
Enabled
CONFIG_LIBC_STDOUT_LINE_ENDING
Line ending for console output
Found in: Component config > LibC
This option allows configuring the desired line endings sent to console when a newline ('n', LF) appears on stdout. Three options are possible:
CRLF: whenever LF is encountered, prepend it with CR
LF: no modification is applied, stdout is sent as is
CR: each occurrence of LF is replaced with CR
This option doesn't affect behavior of the UART driver (drivers/uart.h).
Available options:
CRLF (CONFIG_LIBC_STDOUT_LINE_ENDING_CRLF)
LF (CONFIG_LIBC_STDOUT_LINE_ENDING_LF)
CR (CONFIG_LIBC_STDOUT_LINE_ENDING_CR)
CONFIG_LIBC_STDIN_LINE_ENDING
Line ending for console input
Found in: Component config > LibC
This option allows configuring which input sequence on console produces a newline ('n', LF) on stdin. Three options are possible:
CRLF: CRLF is converted to LF
LF: no modification is applied, input is sent to stdin as is
CR: each occurrence of CR is replaced with LF
This option doesn't affect behavior of the UART driver (drivers/uart.h).
Available options:
CRLF (CONFIG_LIBC_STDIN_LINE_ENDING_CRLF)
LF (CONFIG_LIBC_STDIN_LINE_ENDING_LF)
CR (CONFIG_LIBC_STDIN_LINE_ENDING_CR)
CONFIG_LIBC_NEWLIB_NANO_FORMAT
Enable 'nano' formatting options for printf/scanf family
Found in: Component config > LibC
In most chips the ROM contains parts of newlib C library, including printf/scanf family of functions. These functions have been compiled with so-called "nano" formatting option. This option doesn't support 64-bit integer formats and C99 features, such as positional arguments.
For more details about "nano" formatting option, please see newlib readme file, search for '--enable-newlib-nano-formatted-io': https://sourceware.org/git/?p=newlib-cygwin.git;a=blob_plain;f=newlib/README;hb=HEAD
If this option is enabled and the ROM contains functions from newlib-nano, the build system will use functions available in ROM, reducing the application binary size. Functions available in ROM run faster than functions which run from flash. Functions available in ROM can also run when flash instruction cache is disabled.
Some chips (e.g. ESP32-C6) has the full formatting versions of printf/scanf in ROM instead of the nano versions and in this building with newlib nano might actually increase the size of the binary. Which functions are present in ROM can be seen from ROM caps: ESP_ROM_HAS_NEWLIB_NANO_FORMAT and ESP_ROM_HAS_NEWLIB_NORMAL_FORMAT.
If you need 64-bit integer formatting support or C99 features, keep this option disabled.
- Symbol can be set when:
CONFIG_LIBC_NEWLIB is enabled
CONFIG_LIBC_TIME_SYSCALL
Timers used for gettimeofday function
Found in: Component config > LibC
This setting defines which hardware timers are used to implement 'gettimeofday' and 'time' functions in C library.
- If both high-resolution (systimer for all targets except ESP32)
and RTC timers are used, timekeeping will continue in deep sleep. Time will be reported at 1 microsecond resolution. This is the default, and the recommended option.
- If only high-resolution timer (systimer) is used, gettimeofday will
provide time at microsecond resolution. Time will not be preserved when going into deep sleep mode.
- If only RTC timer is used, timekeeping will continue in
deep sleep, but time will be measured at 6.(6) microsecond resolution. Also the gettimeofday function itself may take longer to run.
- If no timers are used, gettimeofday and time functions
return -1 and set errno to ENOSYS; they are defined as weak, so they could be overridden. If you want to customize gettimeofday() and other time functions, please choose this option and refer to the 'time.c' source file for the exact prototypes of these functions.
- When RTC is used for timekeeping, two RTC_STORE registers are
used to keep time in deep sleep mode.
Available options:
RTC and high-resolution timer (CONFIG_LIBC_TIME_SYSCALL_USE_RTC_HRT)
RTC (CONFIG_LIBC_TIME_SYSCALL_USE_RTC)
High-resolution timer (CONFIG_LIBC_TIME_SYSCALL_USE_HRT)
None (CONFIG_LIBC_TIME_SYSCALL_USE_NONE)
CONFIG_LIBC_OPTIMIZED_MISALIGNED_ACCESS
Use performance-optimized memXXX/strXXX functions on misaligned memory access
Found in: Component config > LibC
Enables performance-optimized implementations of memory and string functions when handling misaligned memory.
Require approximately 800–1000 bytes of IRAM.
- Optimized functions include:
memcpy
memset
memmove
str[n]cpy
str[n]cmp
- Default value:
Enabled
CONFIG_LIBC_ASSERT_BUFFER_SIZE
Assert message buffer size
Found in: Component config > LibC
Size of the buffer used to format assert failure messages.
When assertions fail, the system formats a message containing the function name, file name, line number, and the failed expression. This option controls the maximum length of this message.
If you encounter truncated assert messages (especially with C++ templates or long function names), increase this value. The default value of 200 bytes should be sufficient for most cases, but complex template expressions may require larger buffers.
- Range:
from 100 to 2048
- Default value:
200
ESP-MM: Memory Management Configurations
Contains:
CONFIG_ESP_MM_CACHE_MSYNC_C2M_CHUNKED_OPS
Enable esp_cache_msync C2M chunked operation
Found in: Component config > ESP-MM: Memory Management Configurations
esp_cache_msync C2M direction takes critical sections, which means during the operation, the interrupts are disabled. Whereas Cache writebacks for large buffers could be especially time intensive, and might cause interrupts to be disabled for a significant amount of time.
Sometimes you want other ISRs to be responded during this C2M process. This option is to slice one C2M operation into multiple chunks, with CONFIG_ESP_MM_CACHE_MSYNC_C2M_CHUNKED_OPS_MAX_LEN max len. This will give you a breath during the C2M process as sometimes the C2M process is quite long.
Note if the buffer processed by the esp_cache_msync (C2M sliced) is interrupted by an ISR, and this ISR also accesses this buffer, this may lead to data coherence issue.
CONFIG_ESP_MM_CACHE_MSYNC_C2M_CHUNKED_OPS_MAX_LEN
Max len in bytes per C2M chunk
Found in: Component config > ESP-MM: Memory Management Configurations > CONFIG_ESP_MM_CACHE_MSYNC_C2M_CHUNKED_OPS
Max len in bytes per C2M chunk, operations with size over the max len will be sliced into multiple chunks.
- Symbol can be set when:
CONFIG_ESP_MM_CACHE_MSYNC_C2M_CHUNKED_OPS is enabled
- Range:
from 0 to 0x80000
ESP NETIF Adapter
Contains:
CONFIG_ESP_NETIF_LOST_IP_TIMER_ENABLE
Enable IPv4 lost IP event timer
Found in: Component config > ESP NETIF Adapter
Enable raising LOST_IP events using a timer when the IPv4 address becomes invalid. When disabled, the timer is not started and LOST_IP events are not posted. The delay is configured by ESP_NETIF_IP_LOST_TIMER_INTERVAL.
- Default value:
Enabled
CONFIG_ESP_NETIF_IP_LOST_TIMER_INTERVAL
IP Address lost timer interval (seconds)
Found in: Component config > ESP NETIF Adapter
The IP address may be lost because of some reasons, e.g. when the station disconnects from soft-AP, or when DHCP IP renew fails etc. If the IP lost timer is enabled, it will be started every time the IP is lost. Event SYSTEM_EVENT_STA_LOST_IP will be raised if the timer expires. The IP lost timer is stopped if the station gets the IP again before the timer expires. For backward compatibility, setting the interval to 0 disables the timer as well.
- Range:
from 0 to 65535
- Default value:
120
CONFIG_ESP_NETIF_PROVIDE_CUSTOM_IMPLEMENTATION
Use only ESP-NETIF headers
Found in: Component config > ESP NETIF Adapter
No implementation of ESP-NETIF functions is provided. This option is used for adding a custom TCP/IP stack and defining related esp_netif functionality
- Default value:
Disabled
CONFIG_ESP_NETIF_USE_TCPIP_STACK_LIB
TCP/IP Stack Library
Found in: Component config > ESP NETIF Adapter
Choose the TCP/IP Stack to work, for example, LwIP, uIP, etc.
Available options:
LwIP (CONFIG_ESP_NETIF_TCPIP_LWIP)
lwIP is a small independent implementation of the TCP/IP protocol suite.
Loopback (CONFIG_ESP_NETIF_LOOPBACK)
Dummy implementation of esp-netif functionality which connects driver transmit to receive function. This option is for testing purpose only
CONFIG_ESP_NETIF_REPORT_DATA_TRAFFIC
Report data traffic via events
Found in: Component config > ESP NETIF Adapter
Enable if esp_netif_transmit() and esp_netif_receive() should generate events. This can be useful to blink data traffic indication lights.
- Default value:
Enabled
CONFIG_ESP_NETIF_L2_TAP
Enable netif L2 TAP support
Found in: Component config > ESP NETIF Adapter
A user program can read/write link layer (L2) frames from/to ESP TAP device. The ESP TAP device can be currently associated only with Ethernet physical interfaces.
CONFIG_ESP_NETIF_L2_TAP_MAX_FDS
Maximum number of opened L2 TAP File descriptors
Found in: Component config > ESP NETIF Adapter > CONFIG_ESP_NETIF_L2_TAP
Maximum number of opened File descriptors (FD's) associated with ESP TAP device. ESP TAP FD's take up a certain amount of memory, and allowing fewer FD's to be opened at the same time conserves memory.
- Symbol can be set when:
CONFIG_ESP_NETIF_L2_TAP is enabled
- Range:
from 1 to 10
- Default value:
5
CONFIG_ESP_NETIF_L2_TAP_RX_QUEUE_SIZE
Size of L2 TAP Rx queue
Found in: Component config > ESP NETIF Adapter > CONFIG_ESP_NETIF_L2_TAP
Maximum number of frames queued in opened File descriptor. Once the queue is full, the newly arriving frames are dropped until the queue has enough room to accept incoming traffic (Tail Drop queue management).
- Symbol can be set when:
CONFIG_ESP_NETIF_L2_TAP is enabled
- Range:
from 1 to 100
- Default value:
20
CONFIG_ESP_NETIF_BRIDGE_EN
Enable LwIP IEEE 802.1D bridge
Found in: Component config > ESP NETIF Adapter
Enable LwIP IEEE 802.1D bridge support in ESP-NETIF. Note that "Number of clients store data in netif" (LWIP_NUM_NETIF_CLIENT_DATA) option needs to be properly configured to be LwIP bridge available!
- Symbol can be set when:
CONFIG_ESP_NETIF_TCPIP_LWIP is enabled
- Default value:
Disabled
CONFIG_ESP_NETIF_SET_DNS_PER_DEFAULT_NETIF
Enable DNS server per interface
Found in: Component config > ESP NETIF Adapter
Enable this option to use the DNS server which belongs to the selected default network interface. This feature collects DNS server and netif information from LWIP core modules. Whenever a new default netif is selected, global DNS servers in LWIP are updated with the netif related servers.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_LWIP_DNS_SETSERVER_WITH_NETIF
Partition API Configuration
PHY
Contains:
CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE
Store phy calibration data in NVS
Found in: Component config > PHY
If this option is enabled, NVS will be initialized and calibration data will be loaded from there. PHY calibration will be skipped on deep sleep wakeup. If calibration data is not found, full calibration will be performed and stored in NVS. Normally, only partial calibration will be performed. If this option is disabled, full calibration will be performed.
If it's easy that your board calibrate bad data, choose 'n'. Two cases for example, you should choose 'n': 1.If your board is easy to be booted up with antenna disconnected. 2.Because of your board design, each time when you do calibration, the result are too unstable. If unsure, choose 'y'.
- Default value:
Enabled
CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION
Use a partition to store PHY init data
Found in: Component config > PHY
If enabled, PHY init data will be loaded from a partition. When using a custom partition table, make sure that PHY data partition is included (type: 'data', subtype: 'phy'). With default partition tables, this is done automatically. If PHY init data is stored in a partition, it has to be flashed there, otherwise runtime error will occur.
If this option is not enabled, PHY init data will be embedded into the application binary.
If unsure, choose 'n'.
- Default value:
Disabled
Contains:
CONFIG_ESP_PHY_DEFAULT_INIT_IF_INVALID
Reset default PHY init data if invalid
Found in: Component config > PHY > CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION
If enabled, PHY init data will be restored to default if it cannot be verified successfully to avoid endless bootloops.
If unsure, choose 'n'.
- Symbol can be set when:
CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is enabled
- Default value:
Disabled
CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN
Support multiple PHY init data bin
Found in: Component config > PHY > CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION
If enabled, the corresponding PHY init data type can be automatically switched according to the country code. China's PHY init data bin is used by default. Can be modified by country information in API esp_wifi_set_country(). The priority of switching the PHY init data type is: 1. Country configured by API esp_wifi_set_country() and the parameter policy is WIFI_COUNTRY_POLICY_MANUAL. 2. Country notified by the connected AP. 3. Country configured by API esp_wifi_set_country() and the parameter policy is WIFI_COUNTRY_POLICY_AUTO.
- Symbol can be set when:
CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is enabled && CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is enabled
- Default value:
Disabled
CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN_CUSTOM_PATH
Custom path to phy_multiple_init_data.bin
Found in: Component config > PHY > CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION > CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN
Absolute path, or path relative to the project directory, to the file phy_multiple_init_data.bin, or to a directory containing that file.
If this field is left empty, or the file cannot be found at the resolved path, the default binary located at components/esp_phy/<chip>/phy_multiple_init_data.bin will be used.
- Symbol can be set when:
CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN is enabled && CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is enabled
- Default value:
CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN_EMBED
Support embedded multiple phy init data bin to app bin
Found in: Component config > PHY > CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION > CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN
If enabled, multiple phy init data bin will embedded into app bin If not enabled, multiple phy init data bin will still leave alone, and need to be flashed by users.
- Symbol can be set when:
CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN is enabled && CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is enabled
- Default value:
Disabled
CONFIG_ESP_PHY_INIT_DATA_ERROR
Terminate operation when PHY init data error
Found in: Component config > PHY > CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION > CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN
If enabled, when an error occurs while the PHY init data is updated, the program will terminate and restart. If not enabled, the PHY init data will not be updated when an error occurs.
- Symbol can be set when:
CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN is enabled && CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is enabled
- Default value:
Disabled
CONFIG_ESP_PHY_MAX_WIFI_TX_POWER
Max WiFi TX power (dBm)
Found in: Component config > PHY
Set maximum transmit power for WiFi radio. Actual transmit power for high data rates may be lower than this setting.
- Range:
from 10 to 20
- Default value:
20
CONFIG_ESP_PHY_MAC_BB_PD
Power down MAC and baseband of Wi-Fi and Bluetooth when PHY is disabled
Found in: Component config > PHY
If enabled, the MAC and baseband of Wi-Fi and Bluetooth will be powered down when PHY is disabled. Enabling this setting reduces power consumption by a small amount but increases RAM use by approximately 4 KB(Wi-Fi only), 2 KB(Bluetooth only) or 5.3 KB(Wi-Fi + Bluetooth).
- Symbol can be set when:
CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
- Default value:
Disabled
CONFIG_ESP_PHY_REDUCE_TX_POWER
Reduce PHY TX power when brownout reset
Found in: Component config > PHY
When brownout reset occurs, reduce PHY TX power to keep the code running.
- Symbol can be set when:
CONFIG_ESP_BROWNOUT_DET is enabled
- Default value:
Disabled
CONFIG_ESP_PHY_ENABLE_CERT_TEST
Enable RF certification test functions
Found in: Component config > PHY
If enabled, you can use RF certification test APIs.
- Default value:
Disabled
CONFIG_ESP_PHY_CALIBRATION_MODE
Calibration mode
Found in: Component config > PHY
Select PHY calibration mode. During RF initialization, the partial calibration method is used by default for RF calibration. Full calibration takes about 100ms more than partial calibration. If boot duration is not critical, it is suggested to use the full calibration method. No calibration method is only used when the device wakes up from deep sleep.
Available options:
Calibration partial (CONFIG_ESP_PHY_RF_CAL_PARTIAL)
Calibration none (CONFIG_ESP_PHY_RF_CAL_NONE)
Calibration full (CONFIG_ESP_PHY_RF_CAL_FULL)
CONFIG_ESP_PHY_PLL_TRACK_PERIOD_MS
Set the period of the pll track
Found in: Component config > PHY
Set the period of the pll track.
- Default value:
1000
CONFIG_ESP_PHY_PLL_TRACK_DEBUG
Enable pll track logging
Found in: Component config > PHY
If enabled, there will be some logs while pll tracking
- Default value:
Disabled
CONFIG_ESP_PHY_RECORD_USED_TIME
Record PHY used time
Found in: Component config > PHY
Select to support record and query phy used time.
- Default value:
Disabled
CONFIG_ESP_PHY_IRAM_OPT
PHY IRAM speed optimization
Found in: Component config > PHY
Select this option to place frequently called PHY library functions in IRAM. When this option is disabled, more than 1.1Kbytes of IRAM memory will be saved, but PHY performance will be reduced. This config only affect esp32c2 now.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_SLP_IRAM_OPT
CONFIG_ESP_PHY_DEBUG
Enable PHY Debug
Found in: Component config > PHY
Enabling this option allows different kinds of phy debugging features.
- Default value:
Disabled
Contains:
CONFIG_ESP_PHY_DISABLE_PLL_TRACK
Disable phy pll track(only for experimental)
Found in: Component config > PHY > CONFIG_ESP_PHY_DEBUG
Disable pll track. This configuration option is used for experimental. PLL track helps the PHY module adapt to temperature changes, ensuring stable performance. When pll enabled, the ESP PHY module will periodically track and adjust PLL parameters.
- Symbol can be set when:
CONFIG_ESP_PHY_DEBUG is enabled
- Default value:
Disabled
CONFIG_ESP_PHY_PLL_TRACK_TEMP_DEBUG
PHY temperature tracking debug mode
Found in: Component config > PHY > CONFIG_ESP_PHY_DEBUG
If enabled, allows customization of temperature delta for PHY track pll.
- Symbol can be set when:
CONFIG_ESP_PHY_DEBUG is enabled
- Default value:
Disabled
CONFIG_ESP_PHY_PLL_TRACK_TEMP_DEBUG_FLAG
Debug flag for PHY temperature tracking
Found in: Component config > PHY > CONFIG_ESP_PHY_DEBUG > CONFIG_ESP_PHY_PLL_TRACK_TEMP_DEBUG
Bitmask debug flag passed to the PHY temperature tracking routine. Each bit enables a specific tracking mode.
bit0: PLL tracking
bit1: Calibration parameter tracking
- Symbol can be set when:
CONFIG_ESP_PHY_PLL_TRACK_TEMP_DEBUG is enabled
- Range:
from 1 to 3
- Default value:
1
CONFIG_ESP_PHY_PLL_TRACK_TEMP_DELTA
Temperature delta for PHY track pll
Found in: Component config > PHY > CONFIG_ESP_PHY_DEBUG > CONFIG_ESP_PHY_PLL_TRACK_TEMP_DEBUG
Set the temperature delta for PHY track pll.
- Symbol can be set when:
CONFIG_ESP_PHY_PLL_TRACK_TEMP_DEBUG is enabled
- Range:
from 0 to 255
- Default value:
10
CONFIG_ESP_PHY_ENABLE_VERSION_PRINT
Print PHY version
Found in: Component config > PHY
Select to print PHY version in esp_phy_enable. This config only applies to esp32hxx for now.
- Default value:
Enabled
CONFIG_ESP_PHY_HW_SWITCH_RF
Enable Hardware Triggered RF Switch
Found in: Component config > PHY
Enabling this feature will allow PHY disable and enable using REGDMA.
- Default value:
Disabled
Power Management
Contains:
CONFIG_PM_SLEEP_FUNC_IN_IRAM
Place Power Management module functions in IRAM
Found in: Component config > Power Management
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_PM_SLP_IRAM_OPT
forcefully enables CONFIG_PM_RTOS_IDLE_OPT if CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
forcefully enables CONFIG_ESP_PERIPH_CTRL_FUNC_IN_IRAM
forcefully enables CONFIG_ESP_REGI2C_CTRL_FUNC_IN_IRAM
forcefully enables CONFIG_RTC_CLK_FUNC_IN_IRAM
forcefully enables CONFIG_RTC_TIME_FUNC_IN_IRAM
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_SLP_IRAM_OPT
forcefully enabled by CONFIG_WIFI_RMT_SLP_IRAM_OPT
CONFIG_PM_ENABLE
Support for power management
Found in: Component config > Power Management
If enabled, application is compiled with support for power management. This option has run-time overhead (increased interrupt latency, longer time to enter idle state), and it also reduces accuracy of RTOS ticks and timers used for timekeeping. Enable this option if application uses power management APIs.
- Default value:
Disabled
CONFIG_PM_DFS_INIT_AUTO
Enable dynamic frequency scaling (DFS) at startup
Found in: Component config > Power Management > CONFIG_PM_ENABLE
If enabled, startup code configures dynamic frequency scaling. Max CPU frequency is set to DEFAULT_CPU_FREQ_MHZ setting, min frequency is set to XTAL frequency. If disabled, DFS will not be active until the application configures it using esp_pm_configure function.
- Symbol can be set when:
CONFIG_PM_ENABLE is enabled
- Default value:
Disabled
CONFIG_PM_PROFILING
Enable profiling counters for PM locks
Found in: Component config > Power Management > CONFIG_PM_ENABLE
If enabled, esp_pm_* functions will keep track of the amount of time each of the power management locks has been held, and esp_pm_dump_locks function will print this information. This feature can be used to analyze which locks are preventing the chip from going into a lower power state, and see what time the chip spends in each power saving mode. This feature does incur some run-time overhead, so should typically be disabled in production builds.
- Symbol can be set when:
CONFIG_PM_ENABLE is enabled
- Default value:
Disabled
CONFIG_PM_TRACE
Enable debug tracing of PM using GPIOs
Found in: Component config > Power Management > CONFIG_PM_ENABLE
If enabled, some GPIOs will be used to signal events such as RTOS ticks, frequency switching, entry/exit from idle state. Refer to pm_trace.c file for the list of GPIOs. This feature is intended to be used when analyzing/debugging behavior of power management implementation, and should be kept disabled in applications.
- Symbol can be set when:
CONFIG_PM_ENABLE is enabled
- Default value:
Disabled
CONFIG_PM_SLP_IRAM_OPT
Put lightsleep related codes in internal RAM
Found in: Component config > Power Management
If enabled, about 2.1KB of lightsleep related source code would be in IRAM and chip would sleep longer for 310us at 160MHz CPU frequency most each time. This feature is intended to be used when lower power consumption is needed while there is enough place in IRAM to place source code.
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_TIMER_IN_IRAM
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_PM_SLEEP_FUNC_IN_IRAM
CONFIG_PM_RTOS_IDLE_OPT
Put RTOS IDLE related codes in internal RAM
Found in: Component config > Power Management
If enabled, about 180Bytes of RTOS_IDLE related source code would be in IRAM and chip would sleep longer for 20us at 160MHz CPU frequency most each time. This feature is intended to be used when lower power consumption is needed while there is enough place in IRAM to place source code.
- Symbol can be set when:
CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_PM_SLEEP_FUNC_IN_IRAM if CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
CONFIG_PM_TICKLESS_IDLE_WAITI
Enable tickless idle without entering light sleep
Found in: Component config > Power Management
When enabled, tickless idle also applies when the system does not enter light sleep. This includes DFS-only configurations (light sleep disabled), and cases where light sleep is enabled but not taken (for example when blocked by ESP_PM_NO_LIGHT_SLEEP or other PM locks). This can reduce idle power consumption in those situations.
- Symbol can be set when:
CONFIG_PM_ENABLE is enabled && CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled && CONFIG_FREERTOS_SYSTICK_USES_SYSTIMER is enabled
- Default value:
Disabled
CONFIG_PM_SLP_DISABLE_GPIO
Disable all GPIO when chip at sleep
Found in: Component config > Power Management
This feature is intended to disable all GPIO pins at automantic sleep to get a lower power mode. If enabled, chips will disable all GPIO pins at automantic sleep to reduce about 200~300 uA current.
If you want to specifically use some pins normally as chip wakes when chip sleeps, you can call 'gpio_sleep_sel_dis' to disable this feature on those pins.
Please note, that disabling a GPIO as a wake-up source via gpio_wakeup_disable reverts the effect of gpio_sleep_sel_dis for that pin. When you disable a GPIO as wake-up source, but want to keep the GPIO powered or some custom GPIO sleep state configurations during sleep, you must call gpio_sleep_sel_dis again.
Alternatively, You can also keep this feature on and call 'gpio_sleep_set_direction' and 'gpio_sleep_set_pull_mode' to have a different GPIO configuration at sleep.
- Symbol can be set when:
CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_SLEEP_GPIO_RESET_WORKAROUND if CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
CONFIG_PM_LIGHTSLEEP_RTC_OSC_CAL_INTERVAL
Calibrate the RTC_FAST/SLOW clock every N times of light sleep
Found in: Component config > Power Management
The value of this option determines the calibration interval of the RTC_FAST/SLOW clock during sleep when power management is enabled. When it is configured as N, the RTC_FAST/SLOW clock will be calibrated every N times of lightsleep. Decreasing this value will increase the time the chip is in the active state, thereby increasing the average power consumption of the chip. Increasing this value can reduce the average power consumption, but when the external environment changes drastically and the chip RTC_FAST/SLOW oscillator frequency drifts, it may cause system instability.
- Symbol can be set when:
CONFIG_PM_ENABLE is enabled
- Range:
from 1 to 128
- Default value:
1
CONFIG_PM_POWER_DOWN_CPU_IN_LIGHT_SLEEP
Power down CPU in light sleep
Found in: Component config > Power Management
If enabled, the CPU will be powered down in light sleep, ESP chips supports saving and restoring CPU's running context before and after light sleep, the feature provides applications with seamless CPU powerdowned lightsleep without user awareness. But this will takes up some internal memory. On esp32c3 soc, enabling this option will consume 1.68 KB of internal RAM and will reduce sleep current consumption by about 100 uA. On esp32s3 soc, enabling this option will consume 8.58 KB of internal RAM and will reduce sleep current consumption by about 650 uA.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP
Retentive memory alloaction strategy for light sleep
In light sleep mode, certain CPU states and data need to be preserved in memory while cpu domain is powered down. This configuration determines how the required memory resources are allocated. The PM_CPU_RETENTION_DYNAMIC option allows more flexible runtime memory management by supporting access to larger memory. However, it carries the risk of insufficient memory when the chip enters the light-sleep mode, even resulting in retention failure. In contrast, the PM_CPU_RETENTION_STATIC option ensures reliable sleep CPU retention during the system initialization, but reduces the memory available during runtime.
Available options:
Dynamically allocate memory (CONFIG_PM_CPU_RETENTION_DYNAMIC)
Allocate memory for retention data only when preparing to enter light sleep.
Statically allocate memory (CONFIG_PM_CPU_RETENTION_STATIC)
Pre-allocate all required retention memory during system initialization.
CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP
Power down Digital Peripheral in light sleep (EXPERIMENTAL)
Found in: Component config > Power Management
If enabled, digital peripherals will try to powered down in light sleep, then all related peripherals will not be available during sleep, including wake-up sources from the peripherals (For detailed availability information, see the note of the corresponding wakeup source enable function). The chip will automatically save/restore register context during sleep/wakeup to make the upper layer user unaware of the peripheral powerdown during sleep. Enabling this option will increase static RAM and heap usage but will also significantly reduce power. consumption during lightsleep, the actual memory cost depends on the peripherals you have initialized, for specific power consumption data in this mode, please refer to Electrical Characteristics section in the chip datasheet. (In order to save/restore the context of the necessary hardware for FreeRTOS to run, it will need at least 4.55 KB free heap at sleep time. Otherwise sleep will not power down the peripherals.)
Note1: Please use this option with caution, the current IDF does not support the retention of all peripherals. When the digital peripherals are powered off and a sleep and wake-up is completed, the peripherals that have not saved the running context are equivalent to performing a reset. !!! Please confirm the peripherals used in your application and their sleep retention support status before enabling this option, peripherals sleep retention driver support status is tracked in power_management.rst
Note2: When this option is enabled simultaneously with FREERTOS_USE_TICKLESS_IDLE, since the UART will be powered down, the uart FIFO will be flushed before sleep to avoid data loss, however, this has the potential to block the sleep process and cause the wakeup time to be skipped, which will cause the tick of freertos to not be compensated correctly when returning from sleep and cause the system to crash. To avoid this, you can increase FREERTOS_IDLE_TIME_BEFORE_SLEEP threshold in menuconfig.
Note3: Enabling this option does not necessarily mean that the peripheral power domain will be turned down during sleep. The control priority of esp_sleep_pd_config is higher than this option, user code can still prevent the peripheral power domain from powering down during sleep by esp_sleep_pd_config(ESP_PD_DOMAIN_TOP, ESP_PD_OPTION_ON). In addition, whether the peripheral power domain is powered down during sleep also depends on the sleep working strategy selected by the driver. If any module belonging to the peripheral power domain chooses not to be powered down during sleep, then the peripheral power domain will not be powered off either.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_PM_POWER_DOWN_CPU_IN_LIGHT_SLEEP
CONFIG_PM_LIGHT_SLEEP_CALLBACKS
Enable registration of pm light sleep callbacks
Found in: Component config > Power Management
If enabled, it allows user to register entry and exit callbacks which are called before and after entering auto light sleep.
NOTE: These callbacks are executed from the IDLE task context hence you cannot have any blocking calls in your callbacks.
NOTE: Enabling these callbacks may change sleep duration calculations based on time spent in callback and hence it is highly recommended to keep them as short as possible
- Symbol can be set when:
CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
- Default value:
Disabled
CONFIG_PM_LIGHTSLEEP_TICK_OVERFLOW_PROTECTION
Enable light sleep tick overflow protection
Found in: Component config > Power Management
Limits tick compensation after light sleep wakeup to prevent vTaskStepTick() assertion failure when actual wakeup overhead exceeds estimation (due to cache misses, CPU frequency changes, or flash latency variations).
- When enabled:
Silently limits slept_ticks to xExpectedIdleTime when oversleep is within tolerance (configured by PM_LIGHTSLEEP_TICK_OVERFLOW_TOLERANCE), preventing assertion failure
Does not limit when oversleep exceeds tolerance (may indicate a bug), assertion failure may occur
May lose ticks in rare cases, causing xTickCount to lag behind esp_timer
- When disabled (default):
Accurate tick compensation, better precision
May trigger assertion failure and system crash if overslept
Keep disabled by default to maintain RTOS tick accuracy. Enable only when you experience assertion failures related to vTaskStepTick() and can accept slight inaccuracy of RTOS tick time compared to real time.
- Symbol can be set when:
CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
- Default value:
Disabled
CONFIG_PM_LIGHTSLEEP_TICK_OVERFLOW_TOLERANCE
Light sleep tick overflow tolerance
Found in: Component config > Power Management > CONFIG_PM_LIGHTSLEEP_TICK_OVERFLOW_PROTECTION
Maximum number of ticks that can be overslept before triggering. When oversleep is within this tolerance, the system silently limits slept_ticks to prevent assertion failure. When oversleep exceeds this tolerance, assertion failure may occur and system may crash.
Higher values provide more tolerance for estimation variance but may hide real issues and cause more tick loss, leading to greater RTOS tick time inaccuracy compared to real time. Lower values provide better RTOS tick accuracy but may cause false positives.
- Symbol can be set when:
- Range:
from 1 to 10
- Default value:
2
CONFIG_PM_SLP_SPIRAM_HALFSLEEP_ENABLED
Enable halfsleep mode for PSRAM in light sleep
Found in: Component config > Power Management
Enable PSRAM halfsleep mode feature to reduce power consumption during light sleep, if the PSRAM used support halfsleep mode.
When enabled, the PSRAM chip will be configured to enter halfsleep mode (if applicable) before entering light sleep. This reduces power consumption by: 1. Setting refresh rate to 0.5x 2. Setting PSRAM to halfsleep mode
The PSRAM will automatically exit halfsleep mode after waking up from light sleep.
- Symbol can be set when:
CONFIG_SPIRAM is enabled
- Default value:
Enabled
CONFIG_PM_SLP_SPIRAM_HALFSLEEP_EXIT_WAIT_DELAY
The time to wait for PSRAM to be able to access after exiting halfsleep mode (in us)
Found in: Component config > Power Management
Configure the delay time between waking up PSRAM halfsleep mode and the first access to PSRAM. Refer to the tXHS parameter in datasheet of the used PSRAM to configure this option.
- Symbol can be set when:
CONFIG_SPIRAM is enabled
- Range:
from 50 to 250
- Default value:
150
ESP PSRAM
Contains:
CONFIG_SPIRAM
Support for external, SPI-connected RAM
Found in: Component config > ESP PSRAM
This enables support for an external SPI RAM chip, connected in parallel with the main SPI flash chip.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
SPI RAM config
Contains:
CONFIG_SPIRAM_MODE
Mode of SPI RAM chip in use
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
Available options:
Quad Mode PSRAM (CONFIG_SPIRAM_MODE_QUAD)
CONFIG_SPIRAM_SPEED
Set RAM clock speed
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
Select the speed for the SPI RAM chip.
Available options:
120MHz clock speed (CONFIG_SPIRAM_SPEED_120M)
80MHz clock speed (CONFIG_SPIRAM_SPEED_80M)
40Mhz clock speed (CONFIG_SPIRAM_SPEED_40M)
CONFIG_SPIRAM_XIP_FROM_PSRAM
Enable Executable in place from (XiP) from PSRAM feature (READ HELP)
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
If enabled, firmware in flash including instructions and data will be moved into PSRAM on startup, firmware code will execute directly from PSRAM.
With this option enabled, code that requires execution during an MSPI1 Flash operation does not have to be placed in IRAM. Therefore codes that need to be executing during Flash operations can continue working normally.
This feature is useful for high throughput peripheral involved applications to improve the performance during MSPI1 flash operations.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_SPIRAM_FETCH_INSTRUCTIONS
forcefully enables CONFIG_SPIRAM_RODATA
forcefully enables CONFIG_SPIRAM_FLASH_LOAD_TO_PSRAM
CONFIG_SPIRAM_ECC_ENABLE
Enable PSRAM ECC
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
Enable MSPI Error-Correcting Code function when accessing PSRAM.
If enabled, 1/8 of the PSRAM total size will be reserved for error-correcting code.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPIRAM_BOOT_HW_INIT
Initialise the PSRAM related hardware
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
If this is enabled, the PSRAM hardware will be initialized during startup. Enabling this config does not ensure make sure the availability of the PSRAM for usage, but just initialises the PSRAM hardware. This is necessary to configure PSRAM memory protection during the boot up.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled if CONFIG_SPIRAM is enabled
CONFIG_SPIRAM_BOOT_INIT
Initialize PSRAM during startup, including the hardware and memory related configurations
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config > CONFIG_SPIRAM_BOOT_HW_INIT
If this is enabled, the PSRAM will be enabled during initial boot. Unless you have specific requirements, you'll want to leave this enabled so memory allocated during boot-up can also be placed in PSRAM.
- Symbol can be set when:
CONFIG_SPIRAM_BOOT_HW_INIT is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled
CONFIG_SPIRAM_PRE_CONFIGURE_MEMORY_PROTECTION
Pre-configure memory protection for PSRAM
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
If this is enabled, the PSRAM will be pre-configured for memory protection during initial boot. This configuration takes into consideration the PSRAM memory configurations that are performed by ESP-IDF's default PSRAM initialization function, esp_psram_init(). Thus, the config is enabled by default when SPIRAM_BOOT_INIT is enabled, because the function esp_psram_init() would be called in the startup code.
In case you wish to disable SPIRAM_BOOT_INIT just for delaying the PSRAM initialization and plan to use the ESP-IDF's default PSRAM initialization function, esp_psram_init() in the application code, you should still enable this config to enable memory protection for the PSRAM.
Note that enabling this config also considers that the rest of the PSRAM memory that is left after the memory configurations are performed by esp_psram_init(), can be allocated to the heap using the function esp_psram_extram_add_to_heap_allocator(), thus configures this region with heap memory protection (RW).
As an advanced usage, if you plan to initialize the PSRAM memory regions manually by yourself without using the function esp_psram_init(), you should disable this config to avoid any memory protection and usage conflicts.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled if CONFIG_SPIRAM_BOOT_INIT is enabled
Disabled
CONFIG_SPIRAM_IGNORE_NOTFOUND
Ignore PSRAM when not found
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
Normally, if psram initialization is enabled during compile time but not found at runtime, it is seen as an error making the CPU panic. If this is enabled, booting will complete but no PSRAM will be available. In particular, it is important to note that when SPIRAM_IGNORE_NOTFOUND is enabled, some WIFI related configs will be set to the default value used when SPIRAM is disabled. It can be assumed that by enabling this config, WIFI and LWIP will assume that the current chip does not have SPIRAM. SPIRAM_TRY_ALLOCATE_WIFI_LWIP will not work, buffers in WIFI and LWIP will be set to smaller ranges and default values. WIFI_CACHE_TX_BUFFER_NUM and ESP_WIFI_AMSDU_TX_ENABLED will be disabled, ESP_WIFI_TX_BUFFER will be set to ESP_WIFI_DYNAMIC_TX_BUFFER.
- Symbol can be set when:
CONFIG_SPIRAM_BOOT_HW_INIT is enabled && CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is disabled && CONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY is disabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPIRAM_USE
SPI RAM access method
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
The SPI RAM can be accessed in multiple methods: by just having it available as an unmanaged memory region in the CPU's memory map, by integrating it in the heap as 'special' memory needing heap_caps_malloc to allocate, or by fully integrating it making malloc() also able to return SPI RAM pointers.
Available options:
Integrate RAM into memory map (CONFIG_SPIRAM_USE_MEMMAP)
Add RAM to heap_caps allocator (malloc() stays internal by default) (CONFIG_SPIRAM_USE_CAPS_ALLOC)
Add SPI RAM to the capability allocator.
Use heap_caps_malloc(..., MALLOC_CAP_SPIRAM) to explicitly allocate from SPI RAM. SPI RAM may also be returned by heap_caps_malloc(..., MALLOC_CAP_DEFAULT), since this heap is also registered with MALLOC_CAP_DEFAULT.
Standard malloc() does not allocate from SPI RAM by default in this mode.
Make RAM allocatable using malloc() as well (CONFIG_SPIRAM_USE_MALLOC)
CONFIG_SPIRAM_MEMTEST
Run memory test on SPI RAM initialization
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
Runs a rudimentary memory test on initialization. Aborts when memory test fails. Disable this for slightly faster startup.
- Symbol can be set when:
CONFIG_SPIRAM_BOOT_INIT is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled
CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL
Maximum malloc() size, in bytes, to always put in internal memory
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
If malloc() is capable of also allocating SPI-connected ram, its allocation strategy will prefer to allocate chunks less than this size in internal memory, while allocations larger than this will be done from external RAM. If allocation from the preferred region fails, an attempt is made to allocate from the non-preferred region instead, so malloc() will not suddenly fail when either internal or external memory is full.
- Symbol can be set when:
CONFIG_SPIRAM_USE_MALLOC is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Range:
from 0 to 131072
- Default value:
16384
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP
Try to allocate memories of WiFi and LWIP in SPIRAM firstly. If failed, allocate internal memory
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
Try to allocate memories of WiFi and LWIP in SPIRAM firstly. If failed, try to allocate internal memory then.
- Symbol can be set when:
(CONFIG_SPIRAM_USE_CAPS_ALLOC is enabled || CONFIG_SPIRAM_USE_MALLOC is enabled) && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL
Reserve this amount of bytes for data that specifically needs to be in DMA or internal memory
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
Because the external/internal RAM allocation strategy is not always perfect, it sometimes may happen that the internal memory is entirely filled up. This causes allocations that are specifically done in internal memory, for example the stack for new tasks or memory to service DMA or have memory that's also available when SPI cache is down, to fail. This option reserves a pool specifically for requests like that; a normal malloc() can fall back to the pool only after all other internal are exhausted.
Set this to 0 to disable this feature.
Note that because FreeRTOS stacks are forced to internal memory, they will also use this memory pool; be sure to keep this in mind when adjusting this value.
Note also that the DMA reserved pool may not be one single contiguous memory region, depending on the configured size and the static memory usage of the app.
- Symbol can be set when:
CONFIG_SPIRAM_USE_MALLOC is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Range:
from 0 to 262144
- Default value:
32768
CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY
Allow .bss segment placed in external memory
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
If enabled, variables with EXT_RAM_BSS_ATTR attribute will be placed in SPIRAM instead of internal DRAM. BSS section of lwip, net80211, pp, bt libraries will be automatically placed in SPIRAM. BSS sections from other object files and libraries can also be placed in SPIRAM through linker fragment scheme extram_bss.
Note that the variables placed in SPIRAM using EXT_RAM_BSS_ATTR will be zero initialized.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_ALLOW_BSS_SEG_EXTERNAL_MEMORY
CONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY
Allow .noinit segment placed in external memory
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
If enabled, noinit variables can be placed in PSRAM using EXT_RAM_NOINIT_ATTR.
Note the values placed into this section will not be initialized at startup and should keep its value after software restart.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPIRAM_ENC_EXEMPT
Reserve a PSRAM region exempt from encryption
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config
!!! SECURITY WARNING !!!
Enabling this option carves out a region at the upper end of PSRAM (highest physical addresses) that is mapped WITHOUT encryption, even when flash encryption is enabled. Memory allocated from this region (via MALLOC_CAP_SPIRAM_NO_ENC) is stored in plaintext in PSRAM and can be observed by an attacker with physical access to the PSRAM interface.
- DO NOT enable this unless you have weighed the trade-off:
You accept that any data placed in this region is unprotected at rest.
You will only allocate workloads that are not security-sensitive (e.g. video frame buffers, intermediate codec scratch buffers) into this region.
You understand that PSRAM-resident TLS state, keys, or other secrets MUST NOT be allocated with MALLOC_CAP_SPIRAM_NO_ENC.
Use case: PSRAM encryption imposes alignment constraints on buffers that cross PSRAM. Some DMA engines (e.g. 2D-DMA) cannot satisfy these alignment requirements, so DMA into encrypted PSRAM fails. This option lets such workloads place their buffers in an unencrypted PSRAM region while keeping the rest of PSRAM (and flash) encrypted.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPIRAM_ENC_EXEMPT_SIZE
Size of the unencrypted PSRAM region (KB)
Found in: Component config > ESP PSRAM > CONFIG_SPIRAM > SPI RAM config > CONFIG_SPIRAM_ENC_EXEMPT
Size of the PSRAM region carved out at the upper end of PSRAM (highest physical addresses) and mapped without encryption. Rounded up to a multiple of the MMU page size (typically 64 KB). The region is registered as a separate heap pool, accessible only via MALLOC_CAP_SPIRAM_NO_ENC.
- Symbol can be set when:
CONFIG_SPIRAM_ENC_EXEMPT is enabled && CONFIG_SPIRAM is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Range:
from 64 to 65536
- Default value:
256
ESP Ringbuf
Contains:
CONFIG_RINGBUF_IN_IRAM
Place ring buffer functions in IRAM
Found in: Component config > ESP Ringbuf
Place ring buffer functions in IRAM for better performance. By default, ring buffer functions are placed in Flash to save IRAM. Enable this option if you need maximum performance for ring buffer operations.
Note: This option increases IRAM usage.
- Default value:
Disabled
CONFIG_RINGBUF_PLACE_ISR_FUNCTIONS_INTO_FLASH
Place ISR ringbuf functions into flash
Found in: Component config > ESP Ringbuf
Place ISR ringbuf functions (like xRingbufferSendFromISR/xRingbufferReceiveFromISR) into flash. This frees up IRAM, but the functions can no longer be called when the cache is disabled or from an IRAM interrupt context.
This option is not compatible with ESP-IDF drivers which are configured to run the ISR from an IRAM context, e.g. CONFIG_UART_ISR_IN_IRAM.
- Symbol can be set when:
CONFIG_RINGBUF_IN_IRAM is disabled
- Default value:
Disabled
RISC-V Trace Encoder Configurations
Contains:
CONFIG_ESP_RISCV_TRACE_ENABLE
Enable ESP RISC-V trace encoder
Found in: Component config > RISC-V Trace Encoder Configurations
Build the ESP RISC-V trace encoder driver and expose its runtime API.
- Default value:
Disabled
CONFIG_ESP_RISCV_TRACE_BUFFER_SIZE
Trace buffer size (bytes)
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Size in bytes of the trace buffer allocated by the driver.
- Symbol can be set when:
CONFIG_ESP_RISCV_TRACE_ENABLE is enabled
- Default value:
2048
CONFIG_ESP_RISCV_TRACE_BUFFER_MEM_SELECT
Trace buffer memory placement
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Where the driver allocates the trace buffer. The encoder writes the buffer over its AHB master. PSRAM is only offered on targets whose encoder can reach it.
Internal RAM is fastest and always usable. PSRAM frees internal RAM and allows much larger buffers, but is slower (higher risk of FIFO overflow at high trace rates) and is inaccessible while the cache is disabled (e.g. during flash writes).
Available options:
Internal RAM (CONFIG_ESP_RISCV_TRACE_BUFFER_IN_INTERNAL)
External RAM (PSRAM) (CONFIG_ESP_RISCV_TRACE_BUFFER_IN_EXTERNAL)
CONFIG_ESP_RISCV_TRACE_CORE_SELECT
Cores to trace
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Select which RISC-V core(s) the trace encoder is set up for. Each traced core gets its own encoder instance and trace buffer, so tracing both cores doubles the memory used.
Available options:
Core 0 only (CONFIG_ESP_RISCV_TRACE_CORE_0)
Core 1 only (CONFIG_ESP_RISCV_TRACE_CORE_1)
Both cores (CONFIG_ESP_RISCV_TRACE_BOTH_CORES)
CONFIG_ESP_RISCV_TRACE_ADDRESS_MODE_SELECT
Instruction address encoding
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
How instruction addresses are encoded in the trace stream.
Available options:
Delta addresses (CONFIG_ESP_RISCV_TRACE_ADDRESS_MODE_DELTA)
Full addresses (CONFIG_ESP_RISCV_TRACE_ADDRESS_MODE_FULL)
CONFIG_ESP_RISCV_TRACE_MEM_MODE_SELECT
Trace buffer memory mode
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Behaviour of the trace buffer when it becomes full.
Available options:
Stop when buffer is full (CONFIG_ESP_RISCV_TRACE_MEM_MODE_NON_LOOP)
Wrap around (loop) (CONFIG_ESP_RISCV_TRACE_MEM_MODE_LOOP)
CONFIG_ESP_RISCV_TRACE_AUTO_RESTART_ENABLE
Auto-restart encoder after a FIFO overflow
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
A FIFO overflow stops the encoder. When enabled, it restarts automatically once the FIFO is empty again.
- Symbol can be set when:
CONFIG_ESP_RISCV_TRACE_ENABLE is enabled
- Default value:
Disabled
CONFIG_ESP_RISCV_TRACE_STALL_CPU_ENABLE
Stall CPU on FIFO full
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Stall the CPU instead of dropping packets when the FIFO is full.
- Symbol can be set when:
CONFIG_ESP_RISCV_TRACE_ENABLE is enabled
- Default value:
Disabled
CONFIG_ESP_RISCV_TRACE_HALT_ENABLE
Report hart halt in the trace
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
When the hart halts, report the address of the last instruction before the halt; tracing resumes with a synchronization packet when the hart continues.
- Symbol can be set when:
CONFIG_ESP_RISCV_TRACE_ENABLE is enabled
- Default value:
Disabled
CONFIG_ESP_RISCV_TRACE_RESET_ENABLE
Report hart reset in the trace
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
When the hart enters reset, report the address of the last instruction before the reset. Tracing resumes with a synchronization packet afterwards.
- Symbol can be set when:
CONFIG_ESP_RISCV_TRACE_ENABLE is enabled
- Default value:
Disabled
CONFIG_ESP_RISCV_TRACE_DEBUG_TRIGGER_ENABLE
Enable Debug Module trigger input
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Enable the Debug Module trigger input to the trace encoder.
- Symbol can be set when:
CONFIG_ESP_RISCV_TRACE_ENABLE is enabled
- Default value:
Disabled
CONFIG_ESP_RISCV_TRACE_RESYNC_MODE_SELECT
Resynchronization mode
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Periodic resynchronization mode of the trace encoder.
Available options:
Disabled (CONFIG_ESP_RISCV_TRACE_RESYNC_MODE_DISABLED)
By packet count (CONFIG_ESP_RISCV_TRACE_RESYNC_MODE_PACKET)
By cycle count (CONFIG_ESP_RISCV_TRACE_RESYNC_MODE_CYCLE)
CONFIG_ESP_RISCV_TRACE_RESYNC_THRESHOLD
Resync threshold
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Threshold (packet or cycle count) used by the selected resynchronization mode.
- Symbol can be set when:
CONFIG_ESP_RISCV_TRACE_RESYNC_MODE_DISABLED is disabled && CONFIG_ESP_RISCV_TRACE_ENABLE is enabled
- Default value:
128
CONFIG_ESP_RISCV_TRACE_AHB_BURST_SELECT
AHB burst type
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
AHB burst type used by the trace write master.
Available options:
Single transfer (CONFIG_ESP_RISCV_TRACE_AHB_BURST_SINGLE)
Incrementing (undefined length) (CONFIG_ESP_RISCV_TRACE_AHB_BURST_INCR)
4-beat incrementing (CONFIG_ESP_RISCV_TRACE_AHB_BURST_INCR4)
8-beat incrementing (CONFIG_ESP_RISCV_TRACE_AHB_BURST_INCR8)
CONFIG_ESP_RISCV_TRACE_AHB_MAX_INCR
Max INCR burst beats
Found in: Component config > RISC-V Trace Encoder Configurations > CONFIG_ESP_RISCV_TRACE_ENABLE
Maximum number of beats for an undefined-length INCR burst.
- Symbol can be set when:
CONFIG_ESP_RISCV_TRACE_ENABLE is enabled
- Default value:
0
ESP-ROM
Contains:
CONFIG_ESP_ROM_PRINT_IN_IRAM
Place print functions in IRAM
Found in: Component config > ESP-ROM
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_LOG_IN_IRAM
ESP Security Specific
Contains:
Crypto DPA Protection
Contains:
CONFIG_ESP_CRYPTO_DPA_PROTECTION_AT_STARTUP
Enable crypto DPA protection at startup
Found in: Component config > ESP Security Specific > Crypto DPA Protection
This config controls the DPA (Differential Power Analysis) protection knob for the crypto peripherals. DPA protection dynamically adjusts clock frequency of the crypto peripheral. DPA protection helps to make it difficult to perform SCA attacks on the crypto peripherals. However, there is also associated performance impact based on the security level set. Please refer to the TRM for more details.
- Default value:
Enabled
CONFIG_ESP_CRYPTO_DPA_PROTECTION_LEVEL
DPA protection level
Found in: Component config > ESP Security Specific > Crypto DPA Protection > CONFIG_ESP_CRYPTO_DPA_PROTECTION_AT_STARTUP
Configure the DPA protection security level
Available options:
Security level low (CONFIG_ESP_CRYPTO_DPA_PROTECTION_LEVEL_LOW)
Security level medium (CONFIG_ESP_CRYPTO_DPA_PROTECTION_LEVEL_MEDIUM)
Security level high (CONFIG_ESP_CRYPTO_DPA_PROTECTION_LEVEL_HIGH)
CONFIG_ESP_CRYPTO_FORCE_ECC_CONSTANT_TIME_POINT_MUL
Forcefully enable ECC constant time point multiplication operations
Found in: Component config > ESP Security Specific
If enabled, the app startup code will burn the ECC_FORCE_CONST_TIME efuse bit to force the ECC peripheral to always perform constant time point multiplication operations, irrespective of the ECC_MULT_SECURITY_MODE status bit that is present in the ECC_MULT_CONF_REG register. By default, ESP-IDF configures the ECC peripheral to perform constant time point multiplication operations, so enabling this config would provide security enhancement only in the cases when trusted boot is not enabled and the attacker tries carrying out non-constant time point multiplication operations by changing the default ESP-IDF configurations. Performing constant time operations protect the ECC multiplication operations from timing attacks.
For targets that support Secure Boot using ECDSA-P384, the write-protection bit of the efuse bit could be shared by multiple other efuse bits and can be programmed by the application when Secure Boot is enabled. Thus, you could select CONFIG_SECURE_BOOT_SKIP_WRITE_PROTECTION_SCA, in case you would like to skip the write-protection of the efuse bit.
- Default value:
Disabled
ESP-STDIO
Contains:
CONFIG_ESP_CONSOLE_UART
Channel for console output
Found in: Component config > ESP-STDIO
Select where to send console output (through stdout and stderr).
Default is to use UART0 on pre-defined GPIOs.
If "Custom" is selected, UART0 or UART1 can be chosen, and any pins can be selected.
If "None" is selected, there will be no console output on any UART, except for initial output from ROM bootloader. This ROM output can be suppressed by GPIO strapping or EFUSE, refer to chip datasheet for details.
On chips with USB OTG peripheral, "USB CDC" option redirects output to the CDC port. This option uses the CDC driver in the chip ROM. This option is incompatible with TinyUSB stack.
On chips with an USB serial/JTAG debug controller, selecting the option for that redirects output to the CDC/ACM (serial port emulation) component of that device.
Available options:
Default: UART0 (CONFIG_ESP_CONSOLE_UART_DEFAULT)
USB CDC (CONFIG_ESP_CONSOLE_USB_CDC)
USB Serial/JTAG Controller (CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG)
Custom UART (CONFIG_ESP_CONSOLE_UART_CUSTOM)
None (CONFIG_ESP_CONSOLE_NONE)
CONFIG_ESP_CONSOLE_SECONDARY
Channel for console secondary output
Found in: Component config > ESP-STDIO
This secondary option supports output through other specific port like USB_SERIAL_JTAG when UART0 port as a primary is selected but not connected. This secondary output currently only supports non-blocking mode without using REPL. If you want to output in blocking mode with REPL or input through this secondary port, please change the primary config to this port in Channel for console output menu.
Available options:
No secondary console (CONFIG_ESP_CONSOLE_SECONDARY_NONE)
USB_SERIAL_JTAG PORT (CONFIG_ESP_CONSOLE_SECONDARY_USB_SERIAL_JTAG)
This option supports output through USB_SERIAL_JTAG port when the UART0 port is not connected. The output currently only supports non-blocking mode without using the console. If you want to output in blocking mode with REPL or input through USB_SERIAL_JTAG port, please change the primary config to ESP_CONSOLE_USB_SERIAL_JTAG above.
CONFIG_ESP_CONSOLE_UART_NUM
UART peripheral to use for console output (0-1)
Found in: Component config > ESP-STDIO
This UART peripheral is used for console output from the ESP-IDF Bootloader and the app.
If the configuration is different in the Bootloader binary compared to the app binary, UART is reconfigured after the bootloader exits and the app starts.
Due to an ESP32 ROM bug, UART2 is not supported for console output via esp_rom_printf.
Available options:
UART0 (CONFIG_ESP_CONSOLE_UART_CUSTOM_NUM_0)
UART1 (CONFIG_ESP_CONSOLE_UART_CUSTOM_NUM_1)
CONFIG_ESP_CONSOLE_UART_TX_GPIO
UART TX on GPIO<num>
Found in: Component config > ESP-STDIO
This GPIO is used for console UART TX output in the ESP-IDF Bootloader and the app (including boot log output and default standard output and standard error of the app). Value -1 means to continue using the default console UART TX pin.
If the configuration is different in the Bootloader binary compared to the app binary, UART is reconfigured after the bootloader exits and the app starts.
- Symbol can be set when:
CONFIG_ESP_CONSOLE_UART_CUSTOM is enabled
- Range:
from -1 to 29
- Default value:
"-1"
CONFIG_ESP_CONSOLE_UART_RX_GPIO
UART RX on GPIO<num>
Found in: Component config > ESP-STDIO
This GPIO is used for console UART RX input in the ESP-IDF Bootloader and the app (including default standard input of the app). Value -1 means to continue using the default console UART RX pin.
Note: The default ESP-IDF Bootloader configures this pin but doesn't read anything from the UART.
If the configuration is different in the Bootloader binary compared to the app binary, UART is reconfigured after the bootloader exits and the app starts.
- Symbol can be set when:
CONFIG_ESP_CONSOLE_UART_CUSTOM is enabled
- Range:
from -1 to 29
- Default value:
"-1"
CONFIG_ESP_CONSOLE_UART_BAUDRATE
UART console baud rate
Found in: Component config > ESP-STDIO
This baud rate is used by both the ESP-IDF Bootloader and the app (including boot log output and default standard input/output/error of the app).
The app's maximum baud rate depends on the UART clock source. If Power Management is disabled, the UART clock source is the APB clock and all baud rates in the available range will be sufficiently accurate. If Power Management is enabled, REF_TICK clock source is used so the baud rate is divided from 1MHz. Baud rates above 1Mbps are not possible and values between 500Kbps and 1Mbps may not be accurate.
If the configuration is different in the Bootloader binary compared to the app binary, UART is reconfigured after the bootloader exits and the app starts.
- Symbol can be set when:
CONFIG_ESP_CONSOLE_UART_CUSTOM is enabled && CONFIG_ESP_CONSOLE_UART is enabled
- Range:
from 1200 to 4000000 if CONFIG_PM_ENABLE is disabled
from 1200 to 1000000 if CONFIG_PM_ENABLE is enabled
- Default value:
115200
CONFIG_ESP_STDIO_MAX_VFS_ENTRIES
Maximum number of registerable VFS sinks
Found in: Component config > ESP-STDIO
Maximum number of filesystems that can be registered as sinks for console output.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_IO is enabled
- Range:
from 1 to 10
- Default value:
2
ESP System Settings
Contains:
CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ
CPU frequency
Found in: Component config > ESP System Settings
CPU frequency to be set on application startup.
Available options:
40 MHz (CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_40)
80 MHz (CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_80)
160 MHz (CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_160)
Cache config
CONFIG_ESP_SYSTEM_IN_IRAM
Place system functions in IRAM
Found in: Component config > ESP System Settings
The following system functions will be placed in IRAM if this option is enabled: - system startup - system time - system error - system restart - system crosscore - system debug - system APB backup DMA lock - system application tick hook - Unified Behavior Sanitizer (UBSAN) hook - Interrupt watchdog handler - XTAL32K watchdog timer - IPC and IPC ISR
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled
- Default value:
Enabled
CONFIG_ESP_SYSTEM_PANIC
Panic handler behaviour
Found in: Component config > ESP System Settings
If FreeRTOS detects unexpected behaviour or an unhandled exception, the panic handler is invoked. Configure the panic handler's action here.
Available options:
Print registers and halt (CONFIG_ESP_SYSTEM_PANIC_PRINT_HALT)
Outputs the relevant registers over the serial port and halt the processor. Needs a manual reset to restart.
Print registers and reboot (CONFIG_ESP_SYSTEM_PANIC_PRINT_REBOOT)
Outputs the relevant registers over the serial port and immediately reset the processor.
Silent reboot (CONFIG_ESP_SYSTEM_PANIC_SILENT_REBOOT)
Just resets the processor without outputting anything
GDBStub on panic (CONFIG_ESP_SYSTEM_PANIC_GDBSTUB)
Invoke gdbstub on the serial port, allowing for gdb to attach to it to do a postmortem of the crash.
CONFIG_ESP_SYSTEM_PANIC_REBOOT_DELAY_SECONDS
Panic reboot delay (Seconds)
Found in: Component config > ESP System Settings
After the panic handler executes, you can specify a number of seconds to wait before the device reboots.
- Symbol can be set when:
CONFIG_ESP_SYSTEM_PANIC_PRINT_REBOOT is enabled
- Range:
from 0 to 99
- Default value:
0
CONFIG_ESP_SYSTEM_RTC_EXT_XTAL_BOOTSTRAP_CYCLES
Bootstrap cycles for external 32kHz crystal
Found in: Component config > ESP System Settings
To reduce the startup time of an external RTC crystal, we bootstrap it with a 32kHz square wave for a fixed number of cycles. Setting 0 will disable bootstrapping (if disabled, the crystal may take longer to start up or fail to oscillate under some conditions).
If this value is too high, a faulty crystal may initially start and then fail. If this value is too low, an otherwise good crystal may not start.
To accurately determine if the crystal has started, set a larger "Number of cycles for RTC_SLOW_CLK calibration" (about 3000).
- Symbol can be set when:
CONFIG_ESP_SYSTEM_RTC_EXT_XTAL is enabled
- Range:
from 0 to 32768
- Default value:
0
CONFIG_ESP_BACKTRACING_METHOD
Backtracing method
Found in: Component config > ESP System Settings
Configure how backtracing will be performed at runtime when a panic occurs.
Available options:
No backtracing (CONFIG_ESP_SYSTEM_NO_BACKTRACE)
When selected, no backtracing will be performed at runtime. By using idf.py monitor, it is still possible to get a backtrace when a panic occurs.
Generate and use eh_frame for backtracing (CONFIG_ESP_SYSTEM_USE_EH_FRAME)
Generate DWARF information for each function of the project. These information will parsed and used to perform backtracing when panics occur. Activating this option will activate asynchronous frame unwinding and generation of both .eh_frame and .eh_frame_hdr sections, resulting in a bigger binary size (20% to 100% larger). The main purpose of this option is to be able to have a backtrace parsed and printed by the program itself, regardless of the serial monitor used. This option is not recommended to be used for production.
Use CPU Frame Pointer register (CONFIG_ESP_SYSTEM_USE_FRAME_POINTER)
This configuration allows the compiler to allocate CPU register s0 as the frame pointer. The main usage of the frame pointer is to be able to generate a backtrace from the panic handler on exception. Enabling this option results in bigger and slightly slower code since all functions will have to populate this register and won't be able to use it as a general-purpose register anymore.
CONFIG_ESP_SYSTEM_MEMPROT
Enable memory protection
Found in: Component config > ESP System Settings
This option enables memory protection for the valid memory regions. This feature also automatically splits the ROM, RAM and flash memory into data and instruction segments and sets Read/Execute permissions for the instruction part (below given splitting address) and Read/Write permissions for the data part (above the splitting address). The memory protection is effective on all access through the IRAM0 and DRAM0 buses.
Note: allocating memory with MALLOC_CAP_EXEC capability is not possible when this config is enabled.
- Default value:
Enabled
CONFIG_ESP_SYSTEM_MEMPROT_MODE
Memory Protection configurations
Found in: Component config > ESP System Settings > CONFIG_ESP_SYSTEM_MEMPROT
Available options:
Enable Permission Control Module (PMS) configurations (CONFIG_ESP_SYSTEM_MEMPROT_PMS)
This option enables memory protection using the Permission Control Module (PMS).
Enable CPU's Physical Memory Protection (PMP) configurations (CONFIG_ESP_SYSTEM_MEMPROT_PMP)
This option enables memory protection using CPU PMP.
Enable Trusted Execution Environment (TEE) configurations (CONFIG_ESP_SYSTEM_MEMPROT_TEE)
This option enables the default memory protection provided by TEE.
CONFIG_ESP_SYSTEM_EVENT_QUEUE_SIZE
System event queue size
Found in: Component config > ESP System Settings
Config system event queue size in different application.
- Default value:
32
CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE
Event loop task stack size
Found in: Component config > ESP System Settings
Config system event task stack size in different application.
- Default value:
2304
CONFIG_ESP_MAIN_TASK_STACK_SIZE
Main task stack size
Found in: Component config > ESP System Settings
Configure the "main task" stack size. This is the stack of the task which calls app_main(). If app_main() returns then this task is deleted and its stack memory is freed.
- Default value:
3584
CONFIG_ESP_MAIN_TASK_AFFINITY
Main task core affinity
Found in: Component config > ESP System Settings
Configure the "main task" core affinity. This is the used core of the task which calls app_main(). If app_main() returns then this task is deleted.
Available options:
CPU0 (CONFIG_ESP_MAIN_TASK_AFFINITY_CPU0)
CPU1 (CONFIG_ESP_MAIN_TASK_AFFINITY_CPU1)
No affinity (CONFIG_ESP_MAIN_TASK_AFFINITY_NO_AFFINITY)
CONFIG_ESP_INT_WDT
Interrupt watchdog
Found in: Component config > ESP System Settings
This watchdog timer can detect if the FreeRTOS tick interrupt has not been called for a certain time, either because a task turned off interrupts and did not turn them on for a long time, or because an interrupt handler did not return. It will try to invoke the panic handler first and failing that reset the SoC.
- Default value:
Enabled
CONFIG_ESP_INT_WDT_TIMEOUT_MS
Interrupt watchdog timeout (ms)
Found in: Component config > ESP System Settings > CONFIG_ESP_INT_WDT
The timeout of the watchdog, in milliseconds. Make this higher than the FreeRTOS tick rate.
- Symbol can be set when:
CONFIG_ESP_INT_WDT is enabled
- Range:
from 10 to 10000
- Default value:
300 if CONFIG_SPIRAM is disabled
800 if CONFIG_SPIRAM is enabled
CONFIG_ESP_TASK_WDT_EN
Enable Task Watchdog Timer
Found in: Component config > ESP System Settings
The Task Watchdog Timer can be used to make sure individual tasks are still running. Enabling this option will enable the Task Watchdog Timer. It can be either initialized automatically at startup or initialized after startup (see Task Watchdog Timer API Reference)
- Default value:
Enabled
CONFIG_ESP_TASK_WDT_INIT
Initialize Task Watchdog Timer on startup
Found in: Component config > ESP System Settings > CONFIG_ESP_TASK_WDT_EN
Enabling this option will cause the Task Watchdog Timer to be initialized automatically at startup.
- Symbol can be set when:
CONFIG_ESP_TASK_WDT_EN is enabled
- Default value:
Enabled
CONFIG_ESP_TASK_WDT_PANIC
Invoke panic handler on Task Watchdog timeout
Found in: Component config > ESP System Settings > CONFIG_ESP_TASK_WDT_EN > CONFIG_ESP_TASK_WDT_INIT
If this option is enabled, the Task Watchdog Timer will be configured to trigger the panic handler when it times out. This can also be configured at run time (see Task Watchdog Timer API Reference)
- Symbol can be set when:
CONFIG_ESP_TASK_WDT_INIT is enabled
- Default value:
Disabled
CONFIG_ESP_TASK_WDT_TIMEOUT_S
Task Watchdog timeout period (seconds)
Found in: Component config > ESP System Settings > CONFIG_ESP_TASK_WDT_EN > CONFIG_ESP_TASK_WDT_INIT
Timeout period configuration for the Task Watchdog Timer in seconds. This is also configurable at run time (see Task Watchdog Timer API Reference)
- Symbol can be set when:
CONFIG_ESP_TASK_WDT_INIT is enabled
- Range:
from 1 to 60
- Default value:
5
CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0
Watch CPU0 Idle Task
Found in: Component config > ESP System Settings > CONFIG_ESP_TASK_WDT_EN > CONFIG_ESP_TASK_WDT_INIT
If this option is enabled, the Task Watchdog Timer will watch the CPU0 Idle Task. Having the Task Watchdog watch the Idle Task allows for detection of CPU starvation as the Idle Task not being called is usually a symptom of CPU starvation. Starvation of the Idle Task is detrimental as FreeRTOS household tasks depend on the Idle Task getting some runtime every now and then.
- Symbol can be set when:
CONFIG_ESP_TASK_WDT_INIT is enabled
- Default value:
Enabled
CONFIG_ESP_PANIC_HANDLER_IRAM
Place panic handler code in IRAM
Found in: Component config > ESP System Settings
If this option is disabled (default), the panic handler code is placed in flash not IRAM. This means that if ESP-IDF crashes while flash cache is disabled, the panic handler will automatically re-enable flash cache before running GDB Stub or Core Dump. This adds some minor risk, if the flash cache status is also corrupted during the crash.
If this option is enabled, the panic handler code (including required UART functions) is placed in IRAM. This may be necessary to debug some complex issues with crashes while flash cache is disabled (for example, when writing to SPI flash) or when flash cache is corrupted when an exception is triggered.
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_SLEEP_CACHE_SAFE_ASSERTION
CONFIG_ESP_DEBUG_STUBS_ENABLE
OpenOCD debug stubs
Found in: Component config > ESP System Settings
Debug stubs are used by OpenOCD to execute pre-compiled onboard code which does some useful debugging stuff, e.g. GCOV data dump.
- Default value:
"COMPILER_OPTIMIZATION_LEVEL_DEBUG"
CONFIG_ESP_DEBUG_INCLUDE_OCD_STUB_BINS
Preload OpenOCD stub binaries to speed up debugging. 12K memory will be reserved
Found in: Component config > ESP System Settings
OpenOCD uses stub code to access flash during programming or when inserting and removing SW flash breakpoints. To execute stub code, OpenOCD allocates memory on the target device, backs up the existing memory, loads the stub binary, runs the binary, and then restores the original memory. This process can be time-consuming, especially when using USB serial JTAG. By enabling this option, 12K of memory in RAM will be preallocated with the stub code, eliminating the need to back up and restore the memory region.
The stub binaries are prebuilt and linked to run at the start of IRAM (_iram_start). On ESP32-P4 rev >= v3, _iram_start is 0x4FF00000 + L2 cache size, so it only matches the stub's link address (0x4FF80000) when the L2 cache is 512KB. This option is therefore only available on ESP32-P4 rev >= v3 when CACHE_L2_CACHE_512KB is selected. Earlier P4 revisions and other targets place _iram_start at a fixed address and are not affected.
- Default value:
Disabled
CONFIG_ESP_DEBUG_OCDAWARE
Make exception and panic handlers JTAG/OCD aware
Found in: Component config > ESP System Settings
The FreeRTOS panic and unhandled exception handlers can detect a JTAG OCD debugger and instead of panicking, have the debugger stop on the offending instruction.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_FREERTOS_DEBUG_OCDAWARE
CONFIG_ESP_SYSTEM_CHECK_INT_LEVEL
Interrupt level to use for Interrupt Watchdog and other system checks
Found in: Component config > ESP System Settings
Interrupt level to use for Interrupt Watchdog, IPC_ISR and other system checks.
Available options:
Level 5 interrupt (CONFIG_ESP_SYSTEM_CHECK_INT_LEVEL_5)
Using level 5 interrupt for Interrupt Watchdog, IPC_ISR and other system checks.
Level 4 interrupt (CONFIG_ESP_SYSTEM_CHECK_INT_LEVEL_4)
Using level 4 interrupt for Interrupt Watchdog, IPC_ISR and other system checks.
CONFIG_ESP_SYSTEM_HW_STACK_GUARD
Hardware stack guard
Found in: Component config > ESP System Settings
This config allows to trigger a panic interrupt when Stack Pointer register goes out of allocated stack memory bounds.
- Default value:
Enabled
CONFIG_ESP_SYSTEM_HW_PC_RECORD
Hardware PC recording
Found in: Component config > ESP System Settings
This option will enable the PC recording function of assist_debug module. The PC value of the CPU will be recorded to PC record register in assist_debug module in real time. When an exception occurs and the CPU is reset, this register will be kept, then we can use the recorded PC to debug the causes of the reset.
- Default value:
Enabled
IPC (Inter-Processor Call)
Contains:
CONFIG_ESP_IPC_TASK_STACK_SIZE
Inter-Processor Call (IPC) task stack size
Found in: Component config > IPC (Inter-Processor Call)
Configure the IPC tasks stack size. An IPC task runs on each core (in dual core mode), and allows for cross-core function calls. See IPC documentation for more details. The default IPC stack size should be enough for most common simple use cases. However, users can increase/decrease the stack size to their needs.
- Range:
from 512 to 65536
- Default value:
1024
ESP Timer (High Resolution Timer)
Contains:
CONFIG_ESP_TIMER_IN_IRAM
Place esp_timer functions in IRAM
Found in: Component config > ESP Timer (High Resolution Timer)
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BLE_LOG_ENABLED
forcefully enabled by CONFIG_PM_SLP_IRAM_OPT
CONFIG_ESP_TIMER_PROFILING
Enable esp_timer profiling features
Found in: Component config > ESP Timer (High Resolution Timer)
If enabled, esp_timer_dump will dump information such as number of times the timer was started, number of times the timer has triggered, and the total time it took for the callback to run. This option has some effect on timer performance and the amount of memory used for timer storage, and should only be used for debugging/testing purposes.
- Default value:
Disabled
CONFIG_ESP_TIMER_TASK_STACK_SIZE
High-resolution timer task stack size
Found in: Component config > ESP Timer (High Resolution Timer)
Configure the stack size of "timer_task" task. This task is used to dispatch callbacks of timers created using ets_timer and esp_timer APIs. If you are seeing stack overflow errors in timer task, increase this value.
Note that this is not the same as FreeRTOS timer task. To configure FreeRTOS timer task size, see "FreeRTOS timer task stack size" option in "FreeRTOS".
- Range:
from 2048 to 65536
- Default value:
3584
CONFIG_ESP_TIMER_INTERRUPT_LEVEL
Interrupt level
Found in: Component config > ESP Timer (High Resolution Timer)
This sets the interrupt priority level for esp_timer ISR. A higher value reduces interrupt latency by minimizing the timer processing delay.
- Range:
from 1 to 1
- Default value:
1
CONFIG_ESP_TIMER_SHOW_EXPERIMENTAL
show esp_timer's experimental features
Found in: Component config > ESP Timer (High Resolution Timer)
This shows some hidden features of esp_timer. Note that they may break other features, use them with care.
CONFIG_ESP_TIMER_TASK_AFFINITY
esp_timer task core affinity
Found in: Component config > ESP Timer (High Resolution Timer)
The default settings: timer TASK on CPU0 and timer ISR on CPU0. Other settings may help in certain cases, but note that they may break other features, use them with care. - "CPU0": (default) esp_timer task is processed by CPU0. - "CPU1": esp_timer task is processed by CPU1. - "No affinity": esp_timer task can be processed by any CPU.
Available options:
CPU0 (CONFIG_ESP_TIMER_TASK_AFFINITY_CPU0)
CPU1 (CONFIG_ESP_TIMER_TASK_AFFINITY_CPU1)
No affinity (CONFIG_ESP_TIMER_TASK_AFFINITY_NO_AFFINITY)
CONFIG_ESP_TIMER_ISR_AFFINITY
timer interrupt core affinity
Found in: Component config > ESP Timer (High Resolution Timer)
The default settings: timer TASK on CPU0 and timer ISR on CPU0. Other settings may help in certain cases, but note that they may break other features, use them with care. - "CPU0": (default) timer interrupt is processed by CPU0. - "CPU1": timer interrupt is processed by CPU1. - "No affinity": timer interrupt can be processed by any CPU. It helps to reduce latency but there is a disadvantage it leads to the timer ISR running on every core. It increases the CPU time usage for timer ISRs by N on an N-core system.
Available options:
CPU0 (CONFIG_ESP_TIMER_ISR_AFFINITY_CPU0)
CPU1 (CONFIG_ESP_TIMER_ISR_AFFINITY_CPU1)
No affinity (CONFIG_ESP_TIMER_ISR_AFFINITY_NO_AFFINITY)
CONFIG_ESP_TIMER_SUPPORTS_ISR_DISPATCH_METHOD
Support ISR dispatch method
Found in: Component config > ESP Timer (High Resolution Timer)
Allows using ESP_TIMER_ISR dispatch method (ESP_TIMER_TASK dispatch method is also available). - ESP_TIMER_TASK - Timer callbacks are dispatched from a high-priority esp_timer task. - ESP_TIMER_ISR - Timer callbacks are dispatched directly from the timer interrupt handler. The ISR dispatch can be used, in some cases, when a callback is very simple or need a lower-latency.
- Default value:
Disabled
ESP Trace Configuration
Contains:
CONFIG_ESP_TRACE_LIBRARY
Trace library
Found in: Component config > ESP Trace Configuration
Select the trace library to use.
Available options:
External library from component registry (CONFIG_ESP_TRACE_LIB_EXTERNAL)
Use a custom encoder provided by an external component. The trace core system will be enabled but no built-in encoder is included.
The external component MUST provide a header file named "esp_trace_freertos_impl.h" in its include directories that defines all required FreeRTOS trace macros.
Disabled (CONFIG_ESP_TRACE_LIB_NONE)
CONFIG_ESP_TRACE_TRANSPORT
Trace transport
Found in: Component config > ESP Trace Configuration
Select the trace backend to use.
Available options:
ESP-IDF apptrace (CONFIG_ESP_TRACE_TRANSPORT_APPTRACE)
USB Serial JTAG (CONFIG_ESP_TRACE_TRANSPORT_USB_SERIAL_JTAG)
Use USB Serial JTAG peripheral as trace transport.
Note: This option is not available when USB Serial JTAG is used as primary or secondary console (ESP_CONSOLE_USB_SERIAL_JTAG or ESP_CONSOLE_SECONDARY_USB_SERIAL_JTAG).
External transport from component registry (CONFIG_ESP_TRACE_TRANSPORT_EXTERNAL)
Use a transport registered by an external component. The trace core system will be enabled but no built-in transport is included.
None (CONFIG_ESP_TRACE_TRANSPORT_NONE)
Application Level Tracing
Contains:
CONFIG_APPTRACE_DESTINATION
Data Destination
Found in: Component config > ESP Trace Configuration > Application Level Tracing
Select destination for application trace: JTAG, UART, or both.
Available options:
JTAG (CONFIG_APPTRACE_DEST_JTAG)
UART (CONFIG_APPTRACE_DEST_UART)
All (runtime selection) (CONFIG_APPTRACE_DEST_ALL)
Compile both JTAG and UART interfaces in advance (higher IRAM usage). Allows runtime switching between JTAG and UART via esp_apptrace_get_user_params().
If esp_apptrace_get_user_params() is not provided by the application, JTAG is used by default with the default configuration defined in components/app_trace/include/esp_app_trace_config.h.
CONFIG_APPTRACE_BUF_SIZE
Size of the apptrace buffer
Found in: Component config > ESP Trace Configuration > Application Level Tracing
Size of the memory buffer for trace data in bytes.
- Symbol can be set when:
CONFIG_APPTRACE_DEST_JTAG is enabled && CONFIG_APPTRACE_TRAX_ENABLE is disabled && CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Default value:
16384
CONFIG_APPTRACE_DEST_UART_NUM
UART port number
Found in: Component config > ESP Trace Configuration > Application Level Tracing
UART communication port number for the apptrace destination. See UART documentation for available port numbers.
- Symbol can be set when:
CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Range:
from 0 to 2
- Default value:
1
CONFIG_APPTRACE_UART_TX_GPIO
UART TX on GPIO<num>
Found in: Component config > ESP Trace Configuration > Application Level Tracing
This GPIO is used for UART TX pin.
- Symbol can be set when:
CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Default value:
12
CONFIG_APPTRACE_UART_RX_GPIO
UART RX on GPIO<num>
Found in: Component config > ESP Trace Configuration > Application Level Tracing
This GPIO is used for UART RX pin.
- Symbol can be set when:
CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Default value:
13
CONFIG_APPTRACE_UART_BAUDRATE
UART baud rate
Found in: Component config > ESP Trace Configuration > Application Level Tracing
This baud rate is used for UART.
The app's maximum baud rate depends on the UART clock source. If Power Management is disabled, the UART clock source is the APB clock and all baud rates in the available range will be sufficiently accurate. If Power Management is enabled, REF_TICK clock source is used so the baud rate is divided from 1MHz. Baud rates above 1Mbps are not possible and values between 500Kbps and 1Mbps may not be accurate.
- Symbol can be set when:
CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Range:
from 1200 to 8000000
- Default value:
1000000
CONFIG_APPTRACE_UART_TX_BUFF_SIZE
UART TX ring buffer size
Found in: Component config > ESP Trace Configuration > Application Level Tracing
Size of the UART output ring buffer. Must be power of two. This size related to the baudrate, system tick frequency and amount of data to transfer.
- Symbol can be set when:
CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Range:
from 2048 to 32768
- Default value:
4096
CONFIG_APPTRACE_UART_TX_MSG_SIZE
UART TX message size
Found in: Component config > ESP Trace Configuration > Application Level Tracing
Maximum size of the single message to transfer.
- Symbol can be set when:
CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_APPTRACE_DEST_UART is enabled && CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Range:
from 64 to 32768
- Default value:
128
CONFIG_APPTRACE_LOCK_ENABLE
Internal Sync Lock Enable
Found in: Component config > ESP Trace Configuration > Application Level Tracing
Enables/disable application tracing module internal sync lock to prevent data corruption when multiple tasks are writing to the same trace buffer. Keep in mind this will slow down the trace data transfer to the host.
- Symbol can be set when:
CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Default value:
Disabled
CONFIG_APPTRACE_ONPANIC_HOST_FLUSH_TMO
Timeout for flushing last trace data to host on panic
Found in: Component config > ESP Trace Configuration > Application Level Tracing
Timeout for flushing last trace data to host in case of panic. In ms. Use -1 to disable timeout and wait forever.
- Symbol can be set when:
CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Range:
from -1 to 5000
- Default value:
"-1"
CONFIG_APPTRACE_POSTMORTEM_FLUSH_THRESH
Threshold for flushing last trace data to host on panic
Found in: Component config > ESP Trace Configuration > Application Level Tracing
Threshold for flushing last trace data to host on panic in post-mortem mode. This is minimal amount of data needed to perform flush. In bytes.
- Symbol can be set when:
CONFIG_ESP_TRACE_TRANSPORT_APPTRACE is enabled
- Range:
from 0 to 16384
- Default value:
0
USB Serial JTAG Trace Configuration
Contains:
CONFIG_ESP_TRACE_USJ_TX_BUFFER_SIZE
TX buffer size
Found in: Component config > ESP Trace Configuration > USB Serial JTAG Trace Configuration
Size of the TX ring buffer for USB Serial JTAG trace transport. Larger buffer allows more trace data to be queued before blocking.
Note: Buffer size must be a power of 2. Minimum is 2048 since smaller buffers overflow easily on the USJ transport.
- Symbol can be set when:
CONFIG_ESP_TRACE_TRANSPORT_USB_SERIAL_JTAG is enabled
- Range:
from 2048 to 32768
- Default value:
2048
Function Tracing
Contains:
CONFIG_ESP_TRACE_FUNCTION_TRACE
Enable compiler-instrumented function tracing
Found in: Component config > ESP Trace Configuration > Function Tracing
Trace when functions are entered and exited.
When you build a component with the compiler flag -finstrument-functions, the compiler inserts a call at the start and end of every function in that component. These calls go to hooks provided by esp_trace, which forward the events to the active trace encoder (for example SystemView).
Enabling this option compiles the hook functions and the function-trace runtime into the build. It does not add -finstrument-functions to any code, so on its own it produces no events.
To trace a component or file, add the GCC function instrumentation flag from that component's CMakeLists.txt. See the Application Level Tracing guide and examples/system/tracing/function_tracing for CMake examples.
Use the GCC -finstrument-functions-exclude-file-list and -finstrument-functions-exclude-function-list flags to skip specific files or functions.
- Symbol can be set when:
CONFIG_ESP_TRACE_ENABLE is enabled
- Default value:
Disabled
CONFIG_ESP_TRACE_FUNCTION_TRACE_AUTO_START
Start function tracing automatically when the host starts recording
Found in: Component config > ESP Trace Configuration > Function Tracing > CONFIG_ESP_TRACE_FUNCTION_TRACE
Controls when function tracing begins recording once a trace session is active.
When enabled, function tracing follows the encoder's recording state and begins as soon as the host starts the session (for example OpenOCD "mon esp sysview_mcore start"), without an application call.
When disabled, function-trace events are dropped until the application calls esp_trace_function_trace_start(), even if a host trace session is already recording. esp_trace_function_trace_stop() stops recording again.
An active trace session (encoder recording) is required in both cases.
- Symbol can be set when:
CONFIG_ESP_TRACE_FUNCTION_TRACE is enabled && CONFIG_ESP_TRACE_ENABLE is enabled
- Default value:
Enabled
CONFIG_ESP_TRACE_TIMESTAMP_SOURCE
Trace timestamp source
Found in: Component config > ESP Trace Configuration
Select the timestamp source for tracing.
Available options:
CPU cycle counter (CCOUNT) (CONFIG_ESP_TRACE_TS_SOURCE_CCOUNT)
General Purpose Timer (Timer Group) (CONFIG_ESP_TRACE_TS_SOURCE_GPTIMER)
Systimer raw ticks (CONFIG_ESP_TRACE_TS_SOURCE_SYSTIMER)
Read the systimer counter directly. This is the same clock esp_timer uses, without the tick-to-microsecond conversion. Timestamps are in raw ticks (16 MHz on most targets); host tools get the rate from the trace stream.
esp_timer high resolution timer (CONFIG_ESP_TRACE_TS_SOURCE_ESP_TIMER)
CONFIG_ESP_TRACE_OPTIMIZE_SPEED
Compile trace hot path for speed (-O2)
Found in: Component config > ESP Trace Configuration
Compile this component with -O2 regardless of the project-wide optimization level. The per-event trace path (locking, timestamps) runs through this code, so its speed directly contributes to the per-event tracing overhead.
- Symbol can be set when:
CONFIG_ESP_TRACE_ENABLE is enabled
- Default value:
Enabled
Wi-Fi
Contains:
CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM
Max number of WiFi static RX buffers
Found in: Component config > Wi-Fi
Set the number of WiFi static RX buffers. Each buffer takes approximately 1.6KB of RAM. The static rx buffers are allocated when esp_wifi_init is called, they are not freed until esp_wifi_deinit is called.
WiFi hardware use these buffers to receive all 802.11 frames. A higher number may allow higher throughput but increases memory use. If ESP_WIFI_AMPDU_RX_ENABLED is enabled, this value is recommended to set equal or bigger than ESP_WIFI_RX_BA_WIN in order to achieve better throughput and compatibility with both stations and APs.
- Range:
from 2 to 128
- Default value:
10 if !(CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled)
16 if CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled
CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM
Max number of WiFi dynamic RX buffers
Found in: Component config > Wi-Fi
Set the number of WiFi dynamic RX buffers, 0 means unlimited RX buffers will be allocated (provided sufficient free RAM). The size of each dynamic RX buffer depends on the size of the received data frame.
For each received data frame, the WiFi driver makes a copy to an RX buffer and then delivers it to the high layer TCP/IP stack. The dynamic RX buffer is freed after the higher layer has successfully received the data frame.
For some applications, WiFi data frames may be received faster than the application can process them. In these cases we may run out of memory if RX buffer number is unlimited (0).
If a dynamic RX buffer limit is set, it should be at least the number of static RX buffers.
- Range:
from 0 to 128 if CONFIG_LWIP_WND_SCALE is disabled
from 0 to 1024 if CONFIG_LWIP_WND_SCALE is enabled
- Default value:
32
CONFIG_ESP_WIFI_TX_BUFFER
Type of WiFi TX buffers
Found in: Component config > Wi-Fi
Select type of WiFi TX buffers:
If "Static" is selected, WiFi TX buffers are allocated when WiFi is initialized and released when WiFi is de-initialized. The size of each static TX buffer is fixed to about 1.6KB.
If "Dynamic" is selected, each WiFi TX buffer is allocated as needed when a data frame is delivered to the Wifi driver from the TCP/IP stack. The buffer is freed after the data frame has been sent by the WiFi driver. The size of each dynamic TX buffer depends on the length of each data frame sent by the TCP/IP layer.
If PSRAM is enabled, "Static" should be selected to guarantee enough WiFi TX buffers. If PSRAM is disabled, "Dynamic" should be selected to improve the utilization of RAM.
Available options:
Static (CONFIG_ESP_WIFI_STATIC_TX_BUFFER)
Dynamic (CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER)
CONFIG_ESP_WIFI_STATIC_TX_BUFFER_NUM
Max number of WiFi static TX buffers
Found in: Component config > Wi-Fi
Set the number of WiFi static TX buffers. Each buffer takes approximately 1.6KB of RAM. The static RX buffers are allocated when esp_wifi_init() is called, they are not released until esp_wifi_deinit() is called.
For each transmitted data frame from the higher layer TCP/IP stack, the WiFi driver makes a copy of it in a TX buffer. For some applications especially UDP applications, the upper layer can deliver frames faster than WiFi layer can transmit. In these cases, we may run out of TX buffers.
- Symbol can be set when:
CONFIG_ESP_WIFI_STATIC_TX_BUFFER is enabled
- Range:
from 1 to 64 if CONFIG_ESP_WIFI_STATIC_TX_BUFFER is enabled
- Default value:
16 if CONFIG_ESP_WIFI_STATIC_TX_BUFFER is enabled
CONFIG_ESP_WIFI_CACHE_TX_BUFFER_NUM
Max number of WiFi cache TX buffers
Found in: Component config > Wi-Fi
Set the number of WiFi cache TX buffer number.
For each TX packet from uplayer, such as LWIP etc, WiFi driver needs to allocate a static TX buffer and makes a copy of uplayer packet. If WiFi driver fails to allocate the static TX buffer, it caches the uplayer packets to a dedicated buffer queue, this option is used to configure the size of the cached TX queue.
- Symbol can be set when:
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled
- Range:
from 0 to 128 if CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled
- Default value:
32 if CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled
CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER_NUM
Max number of WiFi dynamic TX buffers
Found in: Component config > Wi-Fi
Set the number of WiFi dynamic TX buffers. The size of each dynamic TX buffer is not fixed, it depends on the size of each transmitted data frame.
For each transmitted frame from the higher layer TCP/IP stack, the WiFi driver makes a copy of it in a TX buffer. For some applications, especially UDP applications, the upper layer can deliver frames faster than WiFi layer can transmit. In these cases, we may run out of TX buffers.
- Symbol can be set when:
CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER is enabled
- Range:
from 1 to 128 if CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER is enabled
- Default value:
32 if CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER is enabled
CONFIG_ESP_WIFI_MGMT_RX_BUFFER
Type of WiFi RX MGMT buffers
Found in: Component config > Wi-Fi
Select type of WiFi RX MGMT buffers:
If "Static" is selected, WiFi RX MGMT buffers are allocated when WiFi is initialized and released when WiFi is de-initialized. The size of each static RX MGMT buffer is fixed to about 500 Bytes.
If "Dynamic" is selected, each WiFi RX MGMT buffer is allocated as needed when a MGMT data frame is received. The MGMT buffer is freed after the MGMT data frame has been processed by the WiFi driver.
Available options:
Static (CONFIG_ESP_WIFI_STATIC_RX_MGMT_BUFFER)
Dynamic (CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUFFER)
CONFIG_ESP_WIFI_RX_MGMT_BUF_NUM_DEF
Max number of WiFi RX MGMT buffers
Found in: Component config > Wi-Fi
Set the number of WiFi RX_MGMT buffers.
For Management buffers, the number of dynamic and static management buffers is the same. In order to prevent memory fragmentation, the management buffer type should be set to static first.
- Range:
from 1 to 10
- Default value:
5
CONFIG_ESP_WIFI_CSI_ENABLED
WiFi CSI(Channel State Information)
Found in: Component config > Wi-Fi
Select this option to enable CSI(Channel State Information) feature. CSI takes about CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM KB of RAM. If CSI is not used, it is better to disable this feature in order to save memory.
- Default value:
Disabled
CONFIG_ESP_WIFI_AMPDU_TX_ENABLED
WiFi AMPDU TX
Found in: Component config > Wi-Fi
Select this option to enable AMPDU TX feature
- Default value:
Enabled
CONFIG_ESP_WIFI_TX_BA_WIN
WiFi AMPDU TX BA window size
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_AMPDU_TX_ENABLED
Set the size of WiFi Block Ack TX window. Generally a bigger value means higher throughput but more memory. Most of time we should NOT change the default value unless special reason, e.g. test the maximum UDP TX throughput with iperf etc. For iperf test in shieldbox, the recommended value is 9~12.
- Symbol can be set when:
CONFIG_ESP_WIFI_AMPDU_TX_ENABLED is enabled
- Range:
from 2 to 64 if CONFIG_ESP_WIFI_AMPDU_TX_ENABLED is enabled
- Default value:
6 if CONFIG_ESP_WIFI_AMPDU_TX_ENABLED is enabled
CONFIG_ESP_WIFI_AMPDU_RX_ENABLED
WiFi AMPDU RX
Found in: Component config > Wi-Fi
Select this option to enable AMPDU RX feature
- Default value:
Enabled
CONFIG_ESP_WIFI_RX_BA_WIN
WiFi AMPDU RX BA window size
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_AMPDU_RX_ENABLED
Set the size of WiFi Block Ack RX window. Generally a bigger value means higher throughput and better compatibility but more memory. Most of time we should NOT change the default value unless special reason, e.g. test the maximum UDP RX throughput with iperf etc. For iperf test in shieldbox, the recommended value is 9~12. If PSRAM is used and WiFi memory is preferred to allocate in PSRAM first, the default and minimum value should be 16 to achieve better throughput and compatibility with both stations and APs.
- Symbol can be set when:
CONFIG_ESP_WIFI_AMPDU_RX_ENABLED is enabled
- Range:
from 2 to 64 if CONFIG_ESP_WIFI_AMPDU_RX_ENABLED is enabled
- Default value:
6 if !(CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled) && CONFIG_ESP_WIFI_AMPDU_RX_ENABLED is enabled
16 if CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled && CONFIG_ESP_WIFI_AMPDU_RX_ENABLED is enabled
CONFIG_ESP_WIFI_AMSDU_TX_ENABLED
WiFi AMSDU TX
Found in: Component config > Wi-Fi
Select this option to enable AMSDU TX feature
- Symbol can be set when:
- Default value:
Disabled if CONFIG_ESP_WIFI_CACHE_TX_BUFFER_NUM >= 2
CONFIG_ESP_WIFI_NVS_ENABLED
WiFi NVS flash
Found in: Component config > Wi-Fi
Select this option to enable WiFi NVS flash
- Default value:
Enabled
CONFIG_ESP_WIFI_SOFTAP_BEACON_MAX_LEN
Max length of WiFi SoftAP Beacon
Found in: Component config > Wi-Fi
ESP-MESH utilizes beacon frames to detect and resolve root node conflicts (see documentation). However the default length of a beacon frame can simultaneously hold only five root node identifier structures, meaning that a root node conflict of up to five nodes can be detected at one time. In the occurrence of more root nodes conflict involving more than five root nodes, the conflict resolution process will detect five of the root nodes, resolve the conflict, and re-detect more root nodes. This process will repeat until all root node conflicts are resolved. However this process can generally take a very long time.
To counter this situation, the beacon frame length can be increased such that more root nodes can be detected simultaneously. Each additional root node will require 36 bytes and should be added on top of the default beacon frame length of 752 bytes. For example, if you want to detect 10 root nodes simultaneously, you need to set the beacon frame length as 932 (752+36*5).
Setting a longer beacon length also assists with debugging as the conflicting root nodes can be identified more quickly.
- Range:
from 752 to 1256
- Default value:
752
CONFIG_ESP_WIFI_MGMT_SBUF_NUM
WiFi mgmt short buffer number
Found in: Component config > Wi-Fi
Set the maximum number of Wi-Fi management short buffers. These buffers are dynamically allocated, with their size determined by the length of the management packet to be sent. When a management packet is less than 64 bytes, the Wi-Fi driver classifies it as a short management packet and assigns it to one of these buffers.
- Range:
from 6 to 32
- Default value:
32
CONFIG_ESP_WIFI_IRAM_OPT
WiFi IRAM speed optimization
Found in: Component config > Wi-Fi
Select this option to place frequently called Wi-Fi library functions in IRAM. When this option is disabled, more than 10Kbytes of IRAM memory will be saved but Wi-Fi throughput will be reduced.
- Default value:
Enabled
CONFIG_ESP_WIFI_EXTRA_IRAM_OPT
WiFi EXTRA IRAM speed optimization
Found in: Component config > Wi-Fi
Select this option to place additional frequently called Wi-Fi library functions in IRAM. When this option is disabled, more than 5Kbytes of IRAM memory will be saved but Wi-Fi throughput will be reduced.
- Default value:
Enabled
CONFIG_ESP_WIFI_RX_IRAM_OPT
WiFi RX IRAM speed optimization
Found in: Component config > Wi-Fi
Select this option to place frequently called Wi-Fi library RX functions in IRAM. When this option is disabled, more than 17Kbytes of IRAM memory will be saved but Wi-Fi performance will be reduced.
- Default value:
Enabled
CONFIG_ESP_WIFI_ENABLE_WPA3_SAE
Enable WPA3-Personal
Found in: Component config > Wi-Fi
Select this option to allow the device to establish a WPA3-Personal connection with eligible AP's. PMF (Protected Management Frames) is a prerequisite feature for a WPA3 connection, it needs to be explicitly configured before attempting connection. Please refer to the Wi-Fi Driver API Guide for details.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
CONFIG_ESP_WIFI_ENABLE_SAE_H2E
Enable SAE-H2E
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_WPA3_SAE
Select this option to enable SAE-H2E
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_WPA3_SAE is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_ENABLE_WPA3_SAE is enabled
CONFIG_ESP_WIFI_ENABLE_SAE_PK
Enable SAE-PK
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_WPA3_SAE > CONFIG_ESP_WIFI_ENABLE_SAE_H2E
Select this option to enable SAE-PK
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_SAE_H2E is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_ENABLE_SAE_H2E is enabled
CONFIG_ESP_WIFI_SOFTAP_SAE_SUPPORT
Enable WPA3 Personal(SAE) SoftAP
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_WPA3_SAE
Select this option to enable SAE support in softAP mode.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_WPA3_SAE is enabled && CONFIG_ESP_WIFI_SOFTAP_SUPPORT is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_ENABLE_WPA3_SAE is enabled && CONFIG_ESP_WIFI_SOFTAP_SUPPORT is enabled
CONFIG_ESP_WIFI_ENABLE_WPA3_OWE_STA
Enable OWE STA
Found in: Component config > Wi-Fi
Select this option to allow the device to establish OWE connection with eligible AP's. PMF (Protected Management Frames) is a prerequisite feature for a WPA3 connection, it needs to be explicitly configured before attempting connection. Please refer to the Wi-Fi Driver API Guide for details.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
CONFIG_ESP_WIFI_WPA3_COMPATIBLE_SUPPORT
Enable WPA3 Compatible support
Found in: Component config > Wi-Fi
Select this option to support wpa3_compatible mode for station and AP
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_SAE_H2E is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_ENABLE_SAE_H2E is enabled
CONFIG_ESP_WIFI_ENABLE_WPA3_OWE_SOFTAP
Enable OWE-ONLY SOFTAP
Found in: Component config > Wi-Fi
Select this option to allow the device to enable OWE Only mode for softap.
- Symbol can be set when:
CONFIG_ESP_WIFI_SOFTAP_SUPPORT is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_SOFTAP_SUPPORT is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_WIFI_MBEDTLS_CRYPTO if CONFIG_ESP_WIFI_SOFTAP_SUPPORT is enabled
CONFIG_ESP_WIFI_PASN_SUPPORT
Enable PASN support
Found in: Component config > Wi-Fi
Pre-Association Security Negotiation (PASN) for Wi-Fi NAN. The wpa_supplicant exposes CONFIG_PASN when this is on.
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_NAN_PAIRING if CONFIG_ESP_WIFI_NAN_SECURITY is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
CONFIG_ESP_WIFI_SLP_IRAM_OPT
WiFi SLP IRAM speed optimization
Found in: Component config > Wi-Fi
Select this option to place called Wi-Fi library TBTT process and receive beacon functions in IRAM. Some functions can be put in IRAM either by ESP_WIFI_IRAM_OPT and ESP_WIFI_RX_IRAM_OPT, or this one. If already enabled ESP_WIFI_IRAM_OPT, the other 7.3KB IRAM memory would be taken by this option. If already enabled ESP_WIFI_RX_IRAM_OPT, the other 1.3KB IRAM memory would be taken by this option. If neither of them are enabled, the other 7.4KB IRAM memory would be taken by this option. Wi-Fi power-save mode average current would be reduced if this option is enabled.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_PM_SLP_DEFAULT_PARAMS_OPT
forcefully enables CONFIG_PM_SLEEP_FUNC_IN_IRAM
forcefully enables CONFIG_ESP_PERIPH_CTRL_FUNC_IN_IRAM
forcefully enables CONFIG_ESP_PHY_IRAM_OPT
CONFIG_ESP_WIFI_SLP_DEFAULT_MIN_ACTIVE_TIME
Minimum active time
Found in: Component config > Wi-Fi
Only for station in WIFI_PS_MIN_MODEM or WIFI_PS_MAX_MODEM. When the station enters the active state, it will work for at least ESP_WIFI_SLP_DEFAULT_MIN_ACTIVE_TIME. If a data packet is received or sent during this period, the time will be refreshed. If the time is up, but the station still has packets to receive or send, the time will also be refreshed. unit: milliseconds.
- Range:
from 8 to 60
- Default value:
50
CONFIG_ESP_WIFI_BSS_MAX_IDLE_SUPPORT
Enable bss max idle support
Found in: Component config > Wi-Fi
Enables bss max idle support for Station and SoftAP. BSS max idle period enables an SoftAP to indicate a time period during which the AP does not disassociate a STA due to nonreceipt of frames from the STA. For station, max idle period is default 10 (1000TUs) and can be set through ESP_WIFI_SLP_DEFAULT_MAX_ACTIVE_TIME. For softap, bss max idle parameters will be set through bss_max_idle_cfg in wifi_ap_config_t.
- Default value:
Enabled
CONFIG_ESP_WIFI_SLP_DEFAULT_MAX_ACTIVE_TIME
Maximum keep alive time
Found in: Component config > Wi-Fi
Only for station. If no packet has been sent within ESP_WIFI_SLP_DEFAULT_MAX_ACTIVE_TIME, a null data packet will be sent to maintain the connection with the AP. If ESP_WIFI_BSS_MAX_IDLE_SUPPORT is set, it will be sent as bss max idle period in association request. unit: seconds.
- Range:
from 10 to 60
- Default value:
10
CONFIG_ESP_WIFI_SLP_DEFAULT_WAIT_BROADCAST_DATA_TIME
Minimum wait broadcast data time
Found in: Component config > Wi-Fi
Only for station in WIFI_PS_MIN_MODEM or WIFI_PS_MAX_MODEM. When the station knows through the beacon that AP will send broadcast packet, it will wait for ESP_WIFI_SLP_DEFAULT_WAIT_BROADCAST_DATA_TIME before entering the sleep process. If a broadcast packet is received with more data bits, the time will refreshed. unit: milliseconds.
- Range:
from 10 to 30
- Default value:
15
CONFIG_ESP_WIFI_FTM_ENABLE
WiFi FTM
Found in: Component config > Wi-Fi
Enable feature Fine Timing Measurement for calculating WiFi Round-Trip-Time (RTT).
- Default value:
Disabled
CONFIG_ESP_WIFI_FTM_INITIATOR_SUPPORT
FTM Initiator support
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_FTM_ENABLE
- Symbol can be set when:
CONFIG_ESP_WIFI_FTM_ENABLE is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_FTM_ENABLE is enabled
CONFIG_ESP_WIFI_FTM_RESPONDER_SUPPORT
FTM Responder support
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_FTM_ENABLE
- Symbol can be set when:
CONFIG_ESP_WIFI_FTM_ENABLE is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_FTM_ENABLE is enabled
CONFIG_ESP_WIFI_STA_DISCONNECTED_PM_ENABLE
Power Management for station at disconnected
Found in: Component config > Wi-Fi
Select this option to enable power_management for station when disconnected. Chip will do modem-sleep when rf module is not in use any more.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_COEX_SW_COEXIST_ENABLE
CONFIG_ESP_WIFI_GCMP_SUPPORT
WiFi GCMP Support(GCMP128 and GCMP256)
Found in: Component config > Wi-Fi
Select this option to enable GCMP support. GCMP support is compulsory for WiFi Suite-B support.
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_SUITE_B_192 if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled
CONFIG_ESP_WIFI_GMAC_SUPPORT
WiFi GMAC Support(GMAC128 and GMAC256)
Found in: Component config > Wi-Fi
Select this option to enable GMAC support. GMAC support is compulsory for WiFi 192 bit certification.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_SUITE_B_192 if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled
CONFIG_ESP_WIFI_SOFTAP_SUPPORT
WiFi SoftAP Support
Found in: Component config > Wi-Fi
WiFi module can be compiled without SoftAP to save code size.
- Default value:
Enabled
CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP
WiFi modem automatically receives the beacon
Found in: Component config > Wi-Fi
The wifi modem automatically receives the beacon frame during light sleep.
- Symbol can be set when:
CONFIG_ESP_PHY_MAC_BB_PD is enabled
- Default value:
Disabled if CONFIG_ESP_PHY_MAC_BB_PD is enabled
CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT
Wifi sleep optimize when beacon lost
Found in: Component config > Wi-Fi
Enable wifi sleep optimization when beacon loss occurs and immediately enter sleep mode when the WiFi module detects beacon loss.
CONFIG_ESP_WIFI_SLP_BEACON_LOST_TIMEOUT
Beacon loss timeout
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT
Timeout time for close rf phy when beacon loss occurs, Unit: 1024 microsecond.
- Symbol can be set when:
CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled
- Range:
from 5 to 100 if CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled
- Default value:
25 if CONFIG_ESP_COEX_SW_COEXIST_ENABLE is enabled && CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled
10 if CONFIG_ESP_COEX_SW_COEXIST_ENABLE is disabled && CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled
CONFIG_ESP_WIFI_SLP_BEACON_LOST_THRESHOLD
Maximum number of consecutive lost beacons allowed
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT
Maximum number of consecutive lost beacons allowed, the WiFi Rx state behaviour will be determined by ESP_WIFI_SLP_BEACON_LOST_OVER_THRESHOLD_POLICY when the number of consecutive beacons lost is greater than the given threshold.
- Symbol can be set when:
CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled
- Range:
from 0 to 8 if CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled
- Default value:
3 if CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled
CONFIG_ESP_WIFI_SLP_BEACON_LOST_OVER_THRESHOLD_POLICY
Beacon strategy when beacon loss exceeds threshold
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT
Select the strategy to apply when the number of lost beacons exceeds the threshold.
"Receive beacon": Keep RF on until a beacon is successfully received.
"Drop beacon": Turn off RF and skip beacon reception during this period.
- "Auto": Beacon will been dropped only if ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE enabled
and expected rx beacon probability stays below the standard.
Available options:
Receive beacon (CONFIG_ESP_WIFI_SLP_BEACON_LOST_OVER_THRESHOLD_RECEIVE)
Drop beacon (CONFIG_ESP_WIFI_SLP_BEACON_LOST_OVER_THRESHOLD_DROP)
Auto (CONFIG_ESP_WIFI_SLP_BEACON_LOST_OVER_THRESHOLD_AUTO)
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE
Sample beacon to calculate beacon offset
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT
Select to enable feature sampling beacons to calculate beacon offset.
- Symbol can be set when:
CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP is disabled
- Default value:
Disabled if CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is enabled && CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP is disabled
Beacon Sample Configuration Options
Contains:
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_COUNT
Sample beacons at wifi connected to adjust beacon parameters
Found in: Component config > Wi-Fi > Beacon Sample Configuration Options
Numble of sampled beacons at wifi connected to adjust beacon parameters.
- Symbol can be set when:
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
- Range:
from 100 to 1200 if CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
- Default value:
300 if CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_DIFFERENCE_PERCENT
Difference percentage triggers unstable event
Found in: Component config > Wi-Fi > Beacon Sample Configuration Options
Difference triggers event WIFI_EVENT_STA_BEACON_OFFSET_UNSTABLE when the actual rx beacon probability continuously falls below the expected probability by this value. unit: percentage
- Symbol can be set when:
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
- Range:
from 0 to 100 if CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
- Default value:
20 if CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_STANDARD_PERCENT
Standard percentage triggers beacon drop
Found in: Component config > Wi-Fi > Beacon Sample Configuration Options
Standard triggers beacon drop when the expected rx beacon probability falls below this value under ESP_WIFI_SLP_BEACON_LOST_DROP_BEACON_AUTO mode. unit: percentage
- Symbol can be set when:
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
- Range:
from 0 to 100 if CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
- Default value:
55 if CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_RESAMPLE_PERIOD
Resample period
Found in: Component config > Wi-Fi > Beacon Sample Configuration Options
Resample period if beacon drop is active under ESP_WIFI_SLP_BEACON_LOST_DROP_BEACON_AUTO mode. It means never resample if setting this value to 0. unit: hours
- Symbol can be set when:
CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
- Range:
from 0 to 255 if CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
- Default value:
3 if CONFIG_ESP_WIFI_SLP_SAMPLE_BEACON_FEATURE is enabled
CONFIG_ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM
Maximum espnow encrypt peers number
Found in: Component config > Wi-Fi
Maximum number of encrypted peers supported by espnow. The number of hardware keys for encryption is fixed. And the espnow and SoftAP share the same hardware keys. So this configuration will affect the maximum connection number of SoftAP. Maximum espnow encrypted peers number + maximum number of connections of SoftAP = Max hardware keys number. When using ESP mesh, this value should be set to a maximum of 6.
- Range:
from 0 to 17
- Default value:
7
CONFIG_ESP_WIFI_NAN_SYNC_ENABLE
Enable Wi-Fi Aware: Synchronization (NAN-Sync)
Found in: Component config > Wi-Fi
Enable Wi-Fi Aware: Synchronization feature (NAN-Sync).
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_LWIP_IPV6
CONFIG_ESP_WIFI_NAN_SECURITY
Enable Wi-Fi Aware: Encrypted Pairwise Datapath (NDP Security)
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_NAN_SYNC_ENABLE
Enable encrypted pairwise datapath for Wi-Fi Aware (NAN). Adds PBKDF2 key derivation (mbedTLS PKCS#5), 4-way handshake (M1-M4), PTK derivation, and CCMP key installation for secured NAN data links. Disable to save code size when only open datapaths are needed.
Requires ESP_WIFI_MBEDTLS_CRYPTO + MBEDTLS_PKCS5_C + MBEDTLS_SHA256_C for ND-PMK derivation via pbkdf2_sha256() (MBEDTLS_MD_C is pulled in transitively by MBEDTLS_PKCS5_C).
- Symbol can be set when:
CONFIG_ESP_WIFI_NAN_SYNC_ENABLE is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_NAN_SYNC_ENABLE is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_PKCS5_C if CONFIG_ESP_WIFI_NAN_SYNC_ENABLE is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
forcefully enables CONFIG_MBEDTLS_SHA256_C if CONFIG_ESP_WIFI_NAN_SYNC_ENABLE is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
CONFIG_ESP_WIFI_NAN_USD_ENABLE
Enable Wi-Fi Aware: Unsynchronized service discovery (NAN-USD)
Found in: Component config > Wi-Fi
Enable Wi-Fi Aware: Unsynchronized service discovery (NAN-USD)
- Symbol can be set when:
CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled
- Default value:
Disabled if CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled
CONFIG_ESP_WIFI_NAN_PAIRING
Enable NAN Pairing
Found in: Component config > Wi-Fi
Enable NAN Pairing support. This allows devices to establish secure pairing using bootstrapping methods like PIN code. Requires PASN in wpa_supplicant (ESP_WIFI_PASN_SUPPORT)
- Symbol can be set when:
CONFIG_ESP_WIFI_NAN_SECURITY is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_NAN_SECURITY is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_WIFI_PASN_SUPPORT if CONFIG_ESP_WIFI_NAN_SECURITY is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
Use MbedTLS crypto APIs
Found in: Component config > Wi-Fi
Select this option to enable the use of MbedTLS crypto APIs. The internal crypto support within the supplicant is limited and may not suffice for all new security features, including WPA3.
It is recommended to always keep this option enabled. Additionally, note that MbedTLS can leverage hardware acceleration if available, resulting in significantly faster cryptographic operations.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_AES_C
forcefully enables CONFIG_MBEDTLS_ECP_C
forcefully enables CONFIG_MBEDTLS_ECDH_C
forcefully enables CONFIG_MBEDTLS_ECDSA_C
forcefully enables CONFIG_MBEDTLS_CMAC_C
forcefully enables CONFIG_MBEDTLS_ECP_DP_SECP256R1_ENABLED
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_ENABLE_WPA3_SAE
forcefully enabled by CONFIG_ESP_WIFI_ENABLE_WPA3_OWE_STA
forcefully enabled by CONFIG_ESP_WIFI_ENABLE_WPA3_OWE_SOFTAP if CONFIG_ESP_WIFI_SOFTAP_SUPPORT is enabled
forcefully enabled by CONFIG_ESP_WIFI_DPP_SUPPORT
CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT
Use MbedTLS TLS client for WiFi Enterprise connection
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
Select this option to use MbedTLS TLS client for WPA2 enterprise connection. Please note that from MbedTLS-3.0 onwards, MbedTLS does not support SSL-3.0 TLS-v1.0, TLS-v1.1 versions. In case your server is using one of these version, it is advisable to update your server. Please disable this option for compatibility with older TLS versions.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_TLS_ENABLED if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
CONFIG_ESP_WIFI_EAP_TLS1_3
Enable EAP-TLS v1.3 Support for WiFi Enterprise connection
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_MBEDTLS_CRYPTO > CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT
Select this option to support EAP with TLS v1.3. This configuration still supports compatibility with EAP-TLS v1.2. Please note that enabling this configuration will cause every application which uses TLS go for TLS1.3 if server supports that. TLS1.3 is still in development in mbedtls and there may be interoperability issues with this. Please modify your application to set max version as TLS1.2 if you want to enable TLS1.3 only for WiFi connection.
- Symbol can be set when:
CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 if CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
CONFIG_ESP_WIFI_WAPI_PSK
Enable WAPI PSK support
Found in: Component config > Wi-Fi
Select this option to enable WAPI-PSK which is a Chinese National Standard Encryption for Wireless LANs (GB 15629.11-2003).
- Default value:
Disabled
CONFIG_ESP_WIFI_SUITE_B_192
Enable NSA suite B support with 192 bit key
Found in: Component config > Wi-Fi
Select this option to enable 192 bit NSA suite-B. This is necessary to support WPA3 192 bit security.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_WIFI_GCMP_SUPPORT if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled
forcefully enables CONFIG_ESP_WIFI_GMAC_SUPPORT if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled
CONFIG_ESP_WIFI_11KV_SUPPORT
Enable 802.11k, 802.11v APIs Support
Found in: Component config > Wi-Fi
Select this option to enable 802.11k 802.11v APIs(RRM and BTM support).
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_MBO_SUPPORT
CONFIG_ESP_WIFI_RRM_SUPPORT
Enable 802.11k APIs Support
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_11KV_SUPPORT
Select this option to enable 802.11k APIs(RRM support). Only APIs which are helpful for network assisted roaming are supported for now. Enable this option with RRM enabled in sta config to make device ready for network assisted roaming. RRM: Radio measurements enable STAs to understand the radio environment, it enables STAs to observe and gather data on radio link performance and on the radio environment. Current implementation adds beacon report, link measurement, neighbor report.
- Symbol can be set when:
CONFIG_ESP_WIFI_11KV_SUPPORT is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_11KV_SUPPORT is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_MBO_SUPPORT
CONFIG_ESP_WIFI_WNM_SUPPORT
Enable 802.11v APIs Support
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_11KV_SUPPORT
Select this option to enable 802.11v APIs(BTM support). Only APIs which are helpful for network assisted roaming are supported for now. Enable this option with BTM enabled in sta config to make device ready for network assisted roaming. BTM: BSS transition management enables an AP to request a station to transition to a specific AP, or to indicate to a station a set of preferred APs.
- Symbol can be set when:
CONFIG_ESP_WIFI_11KV_SUPPORT is enabled
- Default value:
Enabled if CONFIG_ESP_WIFI_11KV_SUPPORT is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_MBO_SUPPORT
CONFIG_ESP_WIFI_SCAN_CACHE
Keep scan results in cache
Found in: Component config > Wi-Fi
Keep scan results in cache, if not enabled, those will be flushed immediately.
- Symbol can be set when:
CONFIG_ESP_WIFI_RRM_SUPPORT is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_RRM_SUPPORT is enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_MBO_SUPPORT
CONFIG_ESP_WIFI_MBO_SUPPORT
Enable Multi Band Operation Certification Support
Found in: Component config > Wi-Fi
Select this option to enable WiFi Multiband operation certification support.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_WIFI_11KV_SUPPORT
forcefully enables CONFIG_ESP_WIFI_RRM_SUPPORT
forcefully enables CONFIG_ESP_WIFI_WNM_SUPPORT
forcefully enables CONFIG_ESP_WIFI_SCAN_CACHE
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP
Advanced support for Wi-Fi Roaming
Found in: Component config > Wi-Fi
Enable Espressif's roaming app to allow for efficient Wi-Fi roaming. This includes configurable periodic environment scans, maintaining a cache of the best APs, handling low rssi events etc.
- Default value:
Disabled
Configure roaming App
Contains:
Roaming triggers
Contains:
CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_ROAMING
Use Low RSSI to trigger roaming.
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming triggers
Enable to use a RSSI threshold to trigger roaming.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Default value:
Enabled
CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_THRESHOLD
WiFi RSSI threshold to trigger roaming
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming triggers > CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_ROAMING
WiFi RSSI threshold to trigger roaming value in dBm (-99 to -1). Values under -30 dbm might lead to a flood of low rssi events. This interferes with normal functioning and TX/Rx performance.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_ROAMING is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from -99 to -30
- Default value:
"-60"
CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_OFFSET
Offset by which to reset the RSSI Threshold after attempt to roam.
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming triggers > CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_ROAMING
Decide the offset by which to decrease the Low RSSI threshold set by ESP_WIFI_ROAMING_LOW_RSSI_THRESHOLD after each failed attempt to roam. This allows for the station to keep scanning for better AP's after the Low RSSI threshold is reached in a stepped manner, rather than only attempting to roam the first time the current AP's RSSI breaches the set RSSI threshold. Setting 0 here may cause station to be flooded with low rssi events, therefore that's not recommended to be kept.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_ROAMING is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 0 to 99
- Default value:
5
CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_ROAM_DIFF
RSSI difference b/w current AP and candidate AP for low RSSI roam
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming triggers > CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_ROAMING
Minimum RSSI improvement (in dB) required of a candidate AP before roaming when triggered by the low RSSI event. A value of 1 keeps the previous behavior (any strictly better AP). Higher values add hysteresis and reduce ping-pong between nearby APs with similar RSSI. Prefer a small value here (e.g. 3-5); use ESP_WIFI_ROAMING_SCAN_ROAM_RSSI_DIFF for larger proactive improvements.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_LOW_RSSI_ROAMING is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 1 to 99
- Default value:
5
CONFIG_ESP_WIFI_ROAMING_PERIODIC_SCAN_MONITOR
Conduct periodic scans to check if a better AP is available
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming triggers
Conduct periodic scans periodically to check if a better AP is available.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Default value:
Enabled
CONFIG_ESP_WIFI_ROAMING_PERIODIC_SCAN_THRESHOLD
Threshold at which to begin periodic scanning for a better AP.
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming triggers > CONFIG_ESP_WIFI_ROAMING_PERIODIC_SCAN_MONITOR
Threshold at which the station will begin scanning to find an AP with better RSSI.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_PERIODIC_SCAN_MONITOR is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from -99 to -1
- Default value:
"-50"
CONFIG_ESP_WIFI_ROAMING_SCAN_MONITOR_INTERVAL
Time intervals (in seconds) at which station will initiate a scan
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming triggers > CONFIG_ESP_WIFI_ROAMING_PERIODIC_SCAN_MONITOR
Intervals at which station will periodically scan to check if better AP is available
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_PERIODIC_SCAN_MONITOR is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 1 to 1500
- Default value:
30
CONFIG_ESP_WIFI_ROAMING_SCAN_ROAM_RSSI_DIFF
RSSI difference b/w current AP and candidate AP to initiate connection
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming triggers > CONFIG_ESP_WIFI_ROAMING_PERIODIC_SCAN_MONITOR
Minimum RSSI difference b/w current AP and a potential roaming candidate AP to trigger a roaming attempt.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_PERIODIC_SCAN_MONITOR is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 0 to 99
- Default value:
15
Roaming Methods
Contains:
CONFIG_ESP_WIFI_ROAMING_LEGACY_ROAMING
Support Legacy roaming approach
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming Methods
Roaming between APs that do not support 802.11v. This will allow station to roam even when connection is not BTM supported, by forcefully disconnecting from current AP and connecting to better AP.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Default value:
Enabled
CONFIG_ESP_WIFI_ROAMING_NETWORK_ASSISTED_ROAM
Support Network Assisted roaming using 802.11v
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming Methods
Roaming between APs using network assisted Roaming. This involves BSS Transition Management mechanisms outlined in 802.11v. Note that this moves the responsibility to the AP's network, and hence isn't guaranteed to cause the station to attempt to roam each time.
- Symbol can be set when:
CONFIG_ESP_WIFI_WNM_SUPPORT is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Default value:
Enabled
CONFIG_ESP_WIFI_NETWORK_ASSISTED_ROAMING_RETRY_COUNT
Retry count after which to switch to legacy roaming
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming Methods > CONFIG_ESP_WIFI_ROAMING_NETWORK_ASSISTED_ROAM
Retry threshold after which the station should stop using Network Assisted roaming methods and start using legacy roaming instead.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_NETWORK_ASSISTED_ROAM is enabled && CONFIG_ESP_WIFI_ROAMING_LEGACY_ROAMING is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 1 to 5
- Default value:
2
CONFIG_ESP_WIFI_ROAMING_IP_RENEW_SKIP
Skip IP renew after roaming
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Roaming Methods
Skip the default IP renew path when the Wi-Fi stack reports a roaming event. Enable this only if your network preserves IP state across a roam, for example during 802.11r or BTM-based roaming.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Default value:
Disabled
Scan Configuration
Contains:
CONFIG_ESP_WIFI_ROAMING_SCAN_MIN_SCAN_TIME
Minimum duration (in milliseconds) of station's per channel active scan
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Scan Configuration
Minimum duration of active scanning per channel in milliseconds.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 0 to 120
- Default value:
30
CONFIG_ESP_WIFI_ROAMING_SCAN_MAX_SCAN_TIME
Maximum duration (in milliseconds) of station's per channel active scan time
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Scan Configuration
Maximum duration of active scanning per channel in milliseconds.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 30 to 120
- Default value:
70
CONFIG_ESP_WIFI_ROAMING_HOME_CHANNEL_DWELL_TIME
Home channel dwell time scanning between consecutive channels
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Scan Configuration
If connected, duration for which the station will return to it's home channel for Tx/Rx of frames stored in buffers between scanning on consecutive channels.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 30 to 150
- Default value:
30
CONFIG_ESP_WIFI_ROAMING_SCAN_CHAN_LIST
Preferred channel list for scanning
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Scan Configuration
Channels your wireless network operates on to allow for faster scanning. Specify channels in a comma-separated manner. The list is used as a channel filter, not as an ordered scan sequence. When 5 GHz support is enabled, valid 5 GHz channels are also accepted.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Default value:
"None"
CONFIG_ESP_WIFI_ROAMING_SCAN_EXPIRY_WINDOW
Scan results expiry window (in seconds)
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Scan Configuration
Duration for which the results from the most recent scans can be used by the roaming app for determining the roaming candidates.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 5 to 20
- Default value:
10
CONFIG_ESP_WIFI_ROAMING_BACKOFF_TIME
Default time to wait between subsequent roaming attempts.
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App
Time to wait (in seconds) by station before registering for the RSSI event again or start continuous montoring to find better AP.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 0 to 120
- Default value:
15
CONFIG_ESP_WIFI_ROAMING_PERIODIC_RRM_MONITORING
Send periodic neighbor report request to AP for internal list updation
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App
This option will enable station to keep sending RRM neighbor list request to AP and update its internal list.
- Symbol can be set when:
CONFIG_ESP_WIFI_RRM_SUPPORT is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Default value:
Disabled
CONFIG_ESP_WIFI_ROAMING_RRM_MONITOR_TIME
Time interval (in seconds) between neighbor report requests to an AP
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > CONFIG_ESP_WIFI_ROAMING_PERIODIC_RRM_MONITORING
Enable this to send periodic neighbor report requests to the AP. These neighbor report requests provide information about other APs in the same managed network. This information is used for more intelligent roaming.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_PERIODIC_RRM_MONITORING is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 0 to 1500
- Default value:
60
CONFIG_ESP_WIFI_ROAMING_RRM_MONITOR_THRESHOLD
Threshold for sending periodic neighbor report requests
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > CONFIG_ESP_WIFI_ROAMING_PERIODIC_RRM_MONITORING
The RSSI threshold beyond which we start sending periodic neighbor report requests.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_PERIODIC_RRM_MONITORING is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from -99 to 0
- Default value:
"-20"
Blacklist Configuration
Contains:
CONFIG_ESP_WIFI_ROAMING_BSSID_BLACKLIST
Enable BSSID blacklisting
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Blacklist Configuration
Enable this to blacklist BSSIDs.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Default value:
Disabled
CONFIG_ESP_WIFI_ROAMING_AUTO_BLACKLISTING
Enable automatic BSSID blacklisting
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Blacklist Configuration > CONFIG_ESP_WIFI_ROAMING_BSSID_BLACKLIST
Enable this to automatically blacklist BSSIDs after multiple failed connection attempts.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_BSSID_BLACKLIST is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
CONFIG_ESP_WIFI_ROAMING_MAX_CONN_FAILURES
Maximum connection failures
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Blacklist Configuration > CONFIG_ESP_WIFI_ROAMING_BSSID_BLACKLIST > CONFIG_ESP_WIFI_ROAMING_AUTO_BLACKLISTING
Maximum number of connection failures before a BSSID is blacklisted.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_AUTO_BLACKLISTING is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 1 to 10
- Default value:
3
CONFIG_ESP_WIFI_ROAMING_BLACKLIST_TIMEOUT
Blacklist timeout (in seconds)
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Blacklist Configuration > CONFIG_ESP_WIFI_ROAMING_BSSID_BLACKLIST
Time in seconds for which a BSSID remains in the blacklist. This applies to both automatically and manually blacklisted BSSIDs.
- Symbol can be set when:
CONFIG_ESP_WIFI_ROAMING_BSSID_BLACKLIST is enabled && CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 10 to 3600
- Default value:
300
CONFIG_ESP_WIFI_ROAMING_MAX_CANDIDATES
Maximum number of roaming candidates
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_ROAMING_APP > Configure roaming App > Blacklist Configuration
Maximum number of roaming candidates to consider. This also defines the size of the blacklist.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_ROAMING_APP is enabled
- Range:
from 1 to 10
- Default value:
5
CONFIG_ESP_WIFI_DPP_SUPPORT
Enable DPP support
Found in: Component config > Wi-Fi
Select this option to enable WiFi Easy Connect Support.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
CONFIG_ESP_WIFI_DPP_MAX_CONF_OBJ
Maximum number of DPP configuration objects
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_DPP_SUPPORT
Maximum number of configuration objects that can be received and stored during a DPP configuration exchange. DPP v2 configurators may send multiple configuration objects (e.g., for different SSIDs or AKMs). Increasing this value will increase the memory usage for DPP events.
- Symbol can be set when:
CONFIG_ESP_WIFI_DPP_SUPPORT is enabled
- Range:
from 1 to 10 if CONFIG_ESP_WIFI_DPP_SUPPORT is enabled
- Default value:
3 if CONFIG_ESP_WIFI_DPP_SUPPORT is enabled
CONFIG_ESP_WIFI_11R_SUPPORT
Enable 802.11R (Fast Transition) Support
Found in: Component config > Wi-Fi
Select this option to enable WiFi Fast Transition Support.
- Default value:
Disabled
CONFIG_ESP_WIFI_WPS_SOFTAP_REGISTRAR
Add WPS Registrar support in SoftAP mode
Found in: Component config > Wi-Fi
Select this option to enable WPS registrar support in softAP mode.
- Symbol can be set when:
CONFIG_ESP_WIFI_SOFTAP_SUPPORT is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_SOFTAP_SUPPORT is enabled
CONFIG_ESP_WIFI_ENABLE_WIFI_TX_STATS
Enable Wi-Fi transmission statistics
Found in: Component config > Wi-Fi
Enable Wi-Fi transmission statistics. Total support 4 access category. Each access category will use 346 bytes memory.
- Default value:
Disabled
CONFIG_ESP_WIFI_ENABLE_WIFI_RX_STATS
Enable Wi-Fi reception statistics
Found in: Component config > Wi-Fi
Enable Wi-Fi reception statistics. Total support 2 access category. Each access category will use 190 bytes memory.
- Default value:
Disabled
CONFIG_ESP_WIFI_ENABLE_WIFI_RX_MU_STATS
Enable Wi-Fi DL MU-MIMO and DL OFDMA reception statistics
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENABLE_WIFI_RX_STATS
Enable Wi-Fi DL MU-MIMO and DL OFDMA reception statistics. Will use 10932 bytes memory.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENABLE_WIFI_RX_STATS is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_ENABLE_WIFI_RX_STATS is enabled
CONFIG_ESP_WIFI_TX_HETB_QUEUE_NUM
WiFi TX HE TB QUEUE number for STA HE TB PPDU transmission
Found in: Component config > Wi-Fi
Set the maximum number of queue that can be aggregated by the STA in the A-MPDU carried in the HE TB PPDU.
- Range:
from 1 to 4
- Default value:
3
WPS Configuration Options
Contains:
CONFIG_ESP_WIFI_WPS_STRICT
Strictly validate all WPS attributes
Found in: Component config > Wi-Fi > WPS Configuration Options
Select this option to enable validate each WPS attribute rigorously. Disabling this add the workarounds with various APs. Enabling this may cause inter operability issues with some APs.
- Default value:
Disabled
CONFIG_ESP_WIFI_WPS_PASSPHRASE
Get WPA2 passphrase in WPS config
Found in: Component config > Wi-Fi > WPS Configuration Options
Select this option to get passphrase during WPS configuration. This option fakes the virtual display capabilities to get the configuration in passphrase mode. Not recommended to be used since WPS credentials should not be shared to other devices, making it in readable format increases that risk, also passphrase requires pbkdf2 to convert in psk.
- Default value:
Disabled
CONFIG_ESP_WIFI_WPS_RECONNECT_ON_FAIL
Reconnect to previous SSID if WPS failed
Found in: Component config > Wi-Fi > WPS Configuration Options
Select this option to enable reconnection to previous SSID if WPS fails. This option will only work if station was connected to a network when WPS was started.
- Default value:
Disabled
CONFIG_ESP_WIFI_DEBUG_PRINT
Print debug messages from WPA Supplicant
Found in: Component config > Wi-Fi
Select this option to print logging information from WPA supplicant, this includes handshake information and key hex dumps depending on the project logging level.
Enabling this could increase the build size ~60kb depending on the project logging level.
- Default value:
Disabled
CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT
Enable enterprise option
Found in: Component config > Wi-Fi
Select this to enable/disable enterprise connection support.
disabling this will reduce binary size. disabling this will disable the use of any esp_wifi_sta_wpa2_ent_* (as APIs will be meaningless)
Note that when using bigger certificates on low-power chips without crypto hardware acceleration, it is recommended to adjust the task watchdog timer (TWDT) if it is enabled. For precise information on timing requirements, you can check performance numbers at https://github.com/espressif/mbedtls/wiki/Performance-Numbers.
- Default value:
Enabled
CONFIG_ESP_WIFI_ENT_FREE_DYNAMIC_BUFFER
Free dynamic buffers during WiFi enterprise connection
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT
Select this configuration to free dynamic buffers during WiFi enterprise connection. This will enable chip to reduce heap consumption during WiFi enterprise connection.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled
CONFIG_ESP_WIFI_MODEM_RF_FLAG_UPDATE_DEBUG
Enable debug assertions for modem RF flag update
Found in: Component config > Wi-Fi
Enable debug assertions to verify modem RF flag update operations. This option enables assert checks to verify that modem RF power state is correctly cleared before pmu sleep.
- Symbol can be set when:
CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP is enabled
- Default value:
Disabled if CONFIG_ESP_WIFI_ENHANCED_LIGHT_SLEEP is enabled
CONFIG_ESP_WIFI_PRIVACY_ENHANCEMENTS_ENABLED
WiFi Privacy Enhancements enabled
Found in: Component config > Wi-Fi
Select this option to enable WiFi Privacy Enhancements (enables random mac, seq number, dialogue token number, vendor seq number cnt). Supported on station interface only; softAP may be added in future.
- Default value:
Disabled
CONFIG_ESP_WIFI_RMAC_AUTO_RESET_INTERVAL
Random MAC Auto-Reset Interval time
Found in: Component config > Wi-Fi > CONFIG_ESP_WIFI_PRIVACY_ENHANCEMENTS_ENABLED
Interval in hours to rotate the random MAC while not connected to an AP. Values below 1 or above 24 are not allowed.
- Symbol can be set when:
CONFIG_ESP_WIFI_PRIVACY_ENHANCEMENTS_ENABLED is enabled
- Range:
from 1 to 24 if CONFIG_ESP_WIFI_PRIVACY_ENHANCEMENTS_ENABLED is enabled
- Default value:
12 if CONFIG_ESP_WIFI_PRIVACY_ENHANCEMENTS_ENABLED is enabled
Wi-Fi Remote
Contains:
CONFIG_ESP_WIFI_REMOTE_ENABLED
CONFIG_SLAVE_IDF_TARGET
choose slave target
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED
Available options:
esp32 (CONFIG_SLAVE_IDF_TARGET_ESP32)
esp32s2 (CONFIG_SLAVE_IDF_TARGET_ESP32S2)
esp32c3 (CONFIG_SLAVE_IDF_TARGET_ESP32C3)
esp32s3 (CONFIG_SLAVE_IDF_TARGET_ESP32S3)
esp32c2 (CONFIG_SLAVE_IDF_TARGET_ESP32C2)
esp32c6 (CONFIG_SLAVE_IDF_TARGET_ESP32C6)
esp32c5 (CONFIG_SLAVE_IDF_TARGET_ESP32C5)
esp32c61 (CONFIG_SLAVE_IDF_TARGET_ESP32C61)
esp32s31 (CONFIG_SLAVE_IDF_TARGET_ESP32S31)
Wi-Fi configuration
Contains:
CONFIG_WIFI_RMT_STATIC_RX_BUFFER_NUM
Max number of WiFi static RX buffers
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Set the number of WiFi static RX buffers. Each buffer takes approximately 1.6KB of RAM. The static rx buffers are allocated when esp_wifi_init is called, they are not freed until esp_wifi_deinit is called.
WiFi hardware use these buffers to receive all 802.11 frames. A higher number may allow higher throughput but increases memory use. If WIFI_RMT_AMPDU_RX_ENABLED is enabled, this value is recommended to set equal or bigger than WIFI_RMT_RX_BA_WIN in order to achieve better throughput and compatibility with both stations and APs.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 2 to 25 if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is disabled
from 2 to 128 if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled
- Default value:
10 if !(CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled)
16 if CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled
CONFIG_WIFI_RMT_DYNAMIC_RX_BUFFER_NUM
Max number of WiFi dynamic RX buffers
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Set the number of WiFi dynamic RX buffers, 0 means unlimited RX buffers will be allocated (provided sufficient free RAM). The size of each dynamic RX buffer depends on the size of the received data frame.
For each received data frame, the WiFi driver makes a copy to an RX buffer and then delivers it to the high layer TCP/IP stack. The dynamic RX buffer is freed after the higher layer has successfully received the data frame.
For some applications, WiFi data frames may be received faster than the application can process them. In these cases we may run out of memory if RX buffer number is unlimited (0).
If a dynamic RX buffer limit is set, it should be at least the number of static RX buffers.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 128 if CONFIG_LWIP_WND_SCALE is disabled
from 0 to 1024 if CONFIG_LWIP_WND_SCALE is enabled
- Default value:
32
CONFIG_WIFI_RMT_TX_BUFFER
Type of WiFi TX buffers
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select type of WiFi TX buffers:
If "Static" is selected, WiFi TX buffers are allocated when WiFi is initialized and released when WiFi is de-initialized. The size of each static TX buffer is fixed to about 1.6KB.
If "Dynamic" is selected, each WiFi TX buffer is allocated as needed when a data frame is delivered to the Wifi driver from the TCP/IP stack. The buffer is freed after the data frame has been sent by the WiFi driver. The size of each dynamic TX buffer depends on the length of each data frame sent by the TCP/IP layer.
If PSRAM is enabled, "Static" should be selected to guarantee enough WiFi TX buffers. If PSRAM is disabled, "Dynamic" should be selected to improve the utilization of RAM.
Available options:
Static (CONFIG_WIFI_RMT_STATIC_TX_BUFFER)
Dynamic (CONFIG_WIFI_RMT_DYNAMIC_TX_BUFFER)
CONFIG_WIFI_RMT_STATIC_TX_BUFFER_NUM
Max number of WiFi static TX buffers
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Set the number of WiFi static TX buffers. Each buffer takes approximately 1.6KB of RAM. The static RX buffers are allocated when esp_wifi_init() is called, they are not released until esp_wifi_deinit() is called.
For each transmitted data frame from the higher layer TCP/IP stack, the WiFi driver makes a copy of it in a TX buffer. For some applications especially UDP applications, the upper layer can deliver frames faster than WiFi layer can transmit. In these cases, we may run out of TX buffers.
- Symbol can be set when:
CONFIG_WIFI_RMT_STATIC_TX_BUFFER is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 1 to 64
- Default value:
16
CONFIG_WIFI_RMT_CACHE_TX_BUFFER_NUM
Max number of WiFi cache TX buffers
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Set the number of WiFi cache TX buffer number.
For each TX packet from uplayer, such as LWIP etc, WiFi driver needs to allocate a static TX buffer and makes a copy of uplayer packet. If WiFi driver fails to allocate the static TX buffer, it caches the uplayer packets to a dedicated buffer queue, this option is used to configure the size of the cached TX queue.
- Symbol can be set when:
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 128
- Default value:
32
CONFIG_WIFI_RMT_DYNAMIC_TX_BUFFER_NUM
Max number of WiFi dynamic TX buffers
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Set the number of WiFi dynamic TX buffers. The size of each dynamic TX buffer is not fixed, it depends on the size of each transmitted data frame.
For each transmitted frame from the higher layer TCP/IP stack, the WiFi driver makes a copy of it in a TX buffer. For some applications, especially UDP applications, the upper layer can deliver frames faster than WiFi layer can transmit. In these cases, we may run out of TX buffers.
- Symbol can be set when:
CONFIG_WIFI_RMT_DYNAMIC_TX_BUFFER is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 1 to 128
- Default value:
32
CONFIG_WIFI_RMT_MGMT_RX_BUFFER
Type of WiFi RX MGMT buffers
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select type of WiFi RX MGMT buffers:
If "Static" is selected, WiFi RX MGMT buffers are allocated when WiFi is initialized and released when WiFi is de-initialized. The size of each static RX MGMT buffer is fixed to about 500 Bytes.
If "Dynamic" is selected, each WiFi RX MGMT buffer is allocated as needed when a MGMT data frame is received. The MGMT buffer is freed after the MGMT data frame has been processed by the WiFi driver.
Available options:
Static (CONFIG_WIFI_RMT_STATIC_RX_MGMT_BUFFER)
Dynamic (CONFIG_WIFI_RMT_DYNAMIC_RX_MGMT_BUFFER)
CONFIG_WIFI_RMT_RX_MGMT_BUF_NUM_DEF
Max number of WiFi RX MGMT buffers
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Set the number of WiFi RX_MGMT buffers.
For Management buffers, the number of dynamic and static management buffers is the same. In order to prevent memory fragmentation, the management buffer type should be set to static first.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 1 to 10
- Default value:
5
CONFIG_WIFI_RMT_CSI_ENABLED
WiFi CSI(Channel State Information)
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable CSI(Channel State Information) feature. CSI takes about CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM KB of RAM. If CSI is not used, it is better to disable this feature in order to save memory.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_CSI_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_AMPDU_TX_ENABLED
WiFi AMPDU TX
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable AMPDU TX feature
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_TX_BA_WIN
WiFi AMPDU TX BA window size
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_AMPDU_TX_ENABLED
Set the size of WiFi Block Ack TX window. Generally a bigger value means higher throughput but more memory. Most of time we should NOT change the default value unless special reason, e.g. test the maximum UDP TX throughput with iperf etc. For iperf test in shieldbox, the recommended value is 9~12.
- Symbol can be set when:
CONFIG_WIFI_RMT_AMPDU_TX_ENABLED is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 2 to 32 if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is disabled
from 2 to 64 if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled
- Default value:
6
CONFIG_WIFI_RMT_AMPDU_RX_ENABLED
WiFi AMPDU RX
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable AMPDU RX feature
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_RX_BA_WIN
WiFi AMPDU RX BA window size
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_AMPDU_RX_ENABLED
Set the size of WiFi Block Ack RX window. Generally a bigger value means higher throughput and better compatibility but more memory. Most of time we should NOT change the default value unless special reason, e.g. test the maximum UDP RX throughput with iperf etc. For iperf test in shieldbox, the recommended value is 9~12. If PSRAM is used and WiFi memory is preferred to allocate in PSRAM first, the default and minimum value should be 16 to achieve better throughput and compatibility with both stations and APs.
- Symbol can be set when:
CONFIG_WIFI_RMT_AMPDU_RX_ENABLED is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 2 to 32 if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is disabled
from 2 to 64 if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled
- Default value:
6 if !(CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled)
16 if CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled
CONFIG_WIFI_RMT_AMSDU_TX_ENABLED
WiFi AMSDU TX
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable AMSDU TX feature
- Symbol can be set when:
CONFIG_WIFI_RMT_CACHE_TX_BUFFER_NUM >= 2 && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_NVS_ENABLED
WiFi NVS flash
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable WiFi NVS flash
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_TASK_CORE_ID
WiFi Task Core ID
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Pinned WiFi task to core 0 or core 1.
Available options:
Core 0 (CONFIG_WIFI_RMT_TASK_PINNED_TO_CORE_0)
Core 1 (CONFIG_WIFI_RMT_TASK_PINNED_TO_CORE_1)
CONFIG_WIFI_RMT_SOFTAP_BEACON_MAX_LEN
Max length of WiFi SoftAP Beacon
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
ESP-MESH utilizes beacon frames to detect and resolve root node conflicts (see documentation). However the default length of a beacon frame can simultaneously hold only five root node identifier structures, meaning that a root node conflict of up to five nodes can be detected at one time. In the occurrence of more root nodes conflict involving more than five root nodes, the conflict resolution process will detect five of the root nodes, resolve the conflict, and re-detect more root nodes. This process will repeat until all root node conflicts are resolved. However this process can generally take a very long time.
To counter this situation, the beacon frame length can be increased such that more root nodes can be detected simultaneously. Each additional root node will require 36 bytes and should be added on top of the default beacon frame length of 752 bytes. For example, if you want to detect 10 root nodes simultaneously, you need to set the beacon frame length as 932 (752+36*5).
Setting a longer beacon length also assists with debugging as the conflicting root nodes can be identified more quickly.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 752 to 1256
- Default value:
752
CONFIG_WIFI_RMT_MGMT_SBUF_NUM
WiFi mgmt short buffer number
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Set the maximum number of Wi-Fi management short buffers. These buffers are dynamically allocated, with their size determined by the length of the management packet to be sent. When a management packet is less than 64 bytes, the Wi-Fi driver classifies it as a short management packet and assigns it to one of these buffers.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 6 to 32
- Default value:
32
CONFIG_WIFI_RMT_IRAM_OPT
WiFi IRAM speed optimization
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to place frequently called Wi-Fi library functions in IRAM. When this option is disabled, more than 10Kbytes of IRAM memory will be saved but Wi-Fi throughput will be reduced.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled if CONFIG_BT_ENABLED is enabled && CONFIG_SPIRAM is enabled && CONFIG_SLAVE_IDF_TARGET_ESP32 is enabled
Enabled
CONFIG_WIFI_RMT_EXTRA_IRAM_OPT
WiFi EXTRA IRAM speed optimization
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to place additional frequently called Wi-Fi library functions in IRAM. When this option is disabled, more than 5Kbytes of IRAM memory will be saved but Wi-Fi throughput will be reduced.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled
Disabled
CONFIG_WIFI_RMT_RX_IRAM_OPT
WiFi RX IRAM speed optimization
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to place frequently called Wi-Fi library RX functions in IRAM. When this option is disabled, more than 17Kbytes of IRAM memory will be saved but Wi-Fi performance will be reduced.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled if CONFIG_BT_ENABLED is enabled && CONFIG_SPIRAM is enabled && CONFIG_SLAVE_IDF_TARGET_ESP32 is enabled
Enabled
CONFIG_WIFI_RMT_ENABLE_WPA3_SAE
Enable WPA3-Personal
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to allow the device to establish a WPA3-Personal connection with eligible AP's. PMF (Protected Management Frames) is a prerequisite feature for a WPA3 connection, it needs to be explicitly configured before attempting connection. Please refer to the Wi-Fi Driver API Guide for details.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
CONFIG_WIFI_RMT_ENABLE_SAE_H2E
Enable SAE-H2E
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_ENABLE_WPA3_SAE
Select this option to enable SAE-H2E
- Symbol can be set when:
CONFIG_WIFI_RMT_ENABLE_WPA3_SAE is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_ENABLE_SAE_PK
Enable SAE-PK
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_ENABLE_WPA3_SAE > CONFIG_WIFI_RMT_ENABLE_SAE_H2E
Select this option to enable SAE-PK
- Symbol can be set when:
CONFIG_WIFI_RMT_ENABLE_SAE_H2E is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_SOFTAP_SAE_SUPPORT
Enable WPA3 Personal(SAE) SoftAP
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_ENABLE_WPA3_SAE
Select this option to enable SAE support in softAP mode.
- Symbol can be set when:
CONFIG_WIFI_RMT_ENABLE_WPA3_SAE is enabled && CONFIG_WIFI_RMT_SOFTAP_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_ENABLE_WPA3_OWE_STA
Enable OWE STA
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to allow the device to establish OWE connection with eligible AP's. PMF (Protected Management Frames) is a prerequisite feature for a WPA3 connection, it needs to be explicitly configured before attempting connection. Please refer to the Wi-Fi Driver API Guide for details.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
CONFIG_WIFI_RMT_WPA3_COMPATIBLE_SUPPORT
Enable WPA3 Compatible support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to support wpa3_compatible mode for station and AP
- Symbol can be set when:
CONFIG_WIFI_RMT_ENABLE_SAE_H2E is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_ENABLE_WPA3_OWE_SOFTAP
Enable OWE-ONLY SOFTAP
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to allow the device to enable OWE Only mode for softap.
- Symbol can be set when:
CONFIG_WIFI_RMT_SOFTAP_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
CONFIG_WIFI_RMT_PASN_SUPPORT
Enable PASN support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Pre-Association Security Negotiation (PASN) for Wi-Fi NAN. The wpa_supplicant exposes CONFIG_PASN when this is on.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_WIFI_RMT_NAN_PAIRING
CONFIG_WIFI_RMT_SLP_IRAM_OPT
WiFi SLP IRAM speed optimization
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to place called Wi-Fi library TBTT process and receive beacon functions in IRAM. Some functions can be put in IRAM either by WIFI_RMT_IRAM_OPT and WIFI_RMT_RX_IRAM_OPT, or this one. If already enabled WIFI_RMT_IRAM_OPT, the other 7.3KB IRAM memory would be taken by this option. If already enabled WIFI_RMT_RX_IRAM_OPT, the other 1.3KB IRAM memory would be taken by this option. If neither of them are enabled, the other 7.4KB IRAM memory would be taken by this option. Wi-Fi power-save mode average current would be reduced if this option is enabled.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_PM_SLP_DEFAULT_PARAMS_OPT
forcefully enables CONFIG_PM_SLEEP_FUNC_IN_IRAM
forcefully enables CONFIG_ESP_PERIPH_CTRL_FUNC_IN_IRAM
forcefully enables WIFI_RMT_PHY_IRAM_OPT
CONFIG_WIFI_RMT_SLP_DEFAULT_MIN_ACTIVE_TIME
Minimum active time
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Only for station in WIFI_PS_MIN_MODEM or WIFI_PS_MAX_MODEM. When the station enters the active state, it will work for at least WIFI_RMT_SLP_DEFAULT_MIN_ACTIVE_TIME. If a data packet is received or sent during this period, the time will be refreshed. If the time is up, but the station still has packets to receive or send, the time will also be refreshed. unit: milliseconds.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 8 to 60
- Default value:
50
CONFIG_WIFI_RMT_BSS_MAX_IDLE_SUPPORT
Enable bss max idle support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enables bss max idle support for Station and SoftAP. BSS max idle period enables an SoftAP to indicate a time period during which the AP does not disassociate a STA due to nonreceipt of frames from the STA. For station, max idle period is default 10 (1000TUs) and can be set through WIFI_RMT_SLP_DEFAULT_MAX_ACTIVE_TIME. For softap, bss max idle parameters will be set through bss_max_idle_cfg in wifi_ap_config_t.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled if CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled || CONFIG_WIFI_RMT_WNM_SUPPORT is enabled
CONFIG_WIFI_RMT_SLP_DEFAULT_MAX_ACTIVE_TIME
Maximum keep alive time
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Only for station. If no packet has been sent within WIFI_RMT_SLP_DEFAULT_MAX_ACTIVE_TIME, a null data packet will be sent to maintain the connection with the AP. If WIFI_RMT_BSS_MAX_IDLE_SUPPORT is set, it will be sent as bss max idle period in association request. unit: seconds.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 10 to 60
- Default value:
10
CONFIG_WIFI_RMT_SLP_DEFAULT_WAIT_BROADCAST_DATA_TIME
Minimum wait broadcast data time
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Only for station in WIFI_PS_MIN_MODEM or WIFI_PS_MAX_MODEM. When the station knows through the beacon that AP will send broadcast packet, it will wait for WIFI_RMT_SLP_DEFAULT_WAIT_BROADCAST_DATA_TIME before entering the sleep process. If a broadcast packet is received with more data bits, the time will refreshed. unit: milliseconds.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 10 to 30
- Default value:
15
CONFIG_WIFI_RMT_FTM_ENABLE
WiFi FTM
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable feature Fine Timing Measurement for calculating WiFi Round-Trip-Time (RTT).
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_FTM_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_FTM_INITIATOR_SUPPORT
FTM Initiator support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_FTM_ENABLE
- Symbol can be set when:
CONFIG_WIFI_RMT_FTM_ENABLE is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_FTM_RESPONDER_SUPPORT
FTM Responder support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_FTM_ENABLE
- Symbol can be set when:
CONFIG_WIFI_RMT_FTM_ENABLE is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_STA_DISCONNECTED_PM_ENABLE
Power Management for station at disconnected
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable power_management for station when disconnected. Chip will do modem-sleep when rf module is not in use any more.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_GCMP_SUPPORT
WiFi GCMP Support(GCMP128 and GCMP256)
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable GCMP support. GCMP support is compulsory for WiFi Suite-B support.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_GCMP_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_WIFI_RMT_SUITE_B_192
CONFIG_WIFI_RMT_GMAC_SUPPORT
WiFi GMAC Support(GMAC128 and GMAC256)
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable GMAC support. GMAC support is compulsory for WiFi 192 bit certification.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_WIFI_RMT_SUITE_B_192
CONFIG_WIFI_RMT_SOFTAP_SUPPORT
WiFi SoftAP Support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
WiFi module can be compiled without SoftAP to save code size.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_ENHANCED_LIGHT_SLEEP
WiFi modem automatically receives the beacon
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
The wifi modem automatically receives the beacon frame during light sleep.
- Symbol can be set when:
CONFIG_ESP_PHY_MAC_BB_PD is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT
Wifi sleep optimize when beacon lost
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable wifi sleep optimization when beacon loss occurs and immediately enter sleep mode when the WiFi module detects beacon loss.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
CONFIG_WIFI_RMT_SLP_BEACON_LOST_TIMEOUT
Beacon loss timeout
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT
Timeout time for close rf phy when beacon loss occurs, Unit: 1024 microsecond.
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 5 to 100
- Default value:
25 if CONFIG_ESP_COEX_SW_COEXIST_ENABLE is enabled
10 if CONFIG_ESP_COEX_SW_COEXIST_ENABLE is disabled
CONFIG_WIFI_RMT_SLP_BEACON_LOST_THRESHOLD
Maximum number of consecutive lost beacons allowed
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT
Maximum number of consecutive lost beacons allowed, the WiFi Rx state behaviour will be determined by WIFI_RMT_SLP_BEACON_LOST_OVER_THRESHOLD_POLICY when the number of consecutive beacons lost is greater than the given threshold.
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 8
- Default value:
3
CONFIG_WIFI_RMT_SLP_PHY_ON_DELTA_EARLY_TIME
Delta early time for RF PHY on
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT
Delta early time for rf phy on, When the beacon is lost, the next rf phy on will be earlier the time specified by the configuration item, Unit: 32 microsecond.
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT is enabled && CONFIG_SLAVE_SOC_WIFI_SUPPORT_VARIABLE_BEACON_WINDOW is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 100
- Default value:
2
CONFIG_WIFI_RMT_SLP_PHY_OFF_DELTA_TIMEOUT_TIME
Delta timeout time for RF PHY off
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT
Delta timeout time for rf phy off, When the beacon is lost, the next rf phy off will be delayed for the time specified by the configuration item. Unit: 1024 microsecond.
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT is enabled && CONFIG_SLAVE_SOC_WIFI_SUPPORT_VARIABLE_BEACON_WINDOW is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 8
- Default value:
2
CONFIG_WIFI_RMT_SLP_BEACON_LOST_OVER_THRESHOLD_POLICY
Beacon strategy when beacon loss exceeds threshold
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT
Select the strategy to apply when the number of lost beacons exceeds the threshold.
"Receive beacon": Keep RF on until a beacon is successfully received.
"Drop beacon": Turn off RF and skip beacon reception during this period.
- "Auto": Beacon will been dropped only if WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE enabled
and expected rx beacon probability stays below the standard.
Available options:
Receive beacon (CONFIG_WIFI_RMT_SLP_BEACON_LOST_OVER_THRESHOLD_RECEIVE)
Drop beacon (CONFIG_WIFI_RMT_SLP_BEACON_LOST_OVER_THRESHOLD_DROP)
Auto (CONFIG_WIFI_RMT_SLP_BEACON_LOST_OVER_THRESHOLD_AUTO)
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE
Sample beacon to calculate beacon offset
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT
Select to enable feature sampling beacons to calculate beacon offset.
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_BEACON_LOST_OPT is enabled && CONFIG_WIFI_RMT_ENHANCED_LIGHT_SLEEP is disabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
Beacon Sample Configuration Options
Contains:
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_COUNT
Sample beacons at wifi connected to adjust beacon parameters
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > Beacon Sample Configuration Options
Numble of sampled beacons at wifi connected to adjust beacon parameters.
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 100 to 1200
- Default value:
300
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_DIFFERENCE_PERCENT
Difference percentage triggers unstable event
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > Beacon Sample Configuration Options
Difference triggers event WIFI_EVENT_STA_BEACON_OFFSET_UNSTABLE when the actual rx beacon probability continuously falls below the expected probability by this value. unit: percentage
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 100
- Default value:
20
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_STANDARD_PERCENT
Standard percentage triggers beacon drop
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > Beacon Sample Configuration Options
Standard triggers beacon drop when the expected rx beacon probability falls below this value under WIFI_RMT_SLP_BEACON_LOST_DROP_BEACON_AUTO mode. unit: percentage
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 100
- Default value:
55
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_RESAMPLE_PERIOD
Resample period
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > Beacon Sample Configuration Options
Resample period if beacon drop is active under WIFI_RMT_SLP_BEACON_LOST_DROP_BEACON_AUTO mode. It means never resample if setting this value to 0. unit: hours
- Symbol can be set when:
CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_WIFI_RMT_SLP_SAMPLE_BEACON_FEATURE is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 255
- Default value:
3
CONFIG_WIFI_RMT_ESPNOW_MAX_ENCRYPT_NUM
Maximum espnow encrypt peers number
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Maximum number of encrypted peers supported by espnow. The number of hardware keys for encryption is fixed. And the espnow and SoftAP share the same hardware keys. So this configuration will affect the maximum connection number of SoftAP. Maximum espnow encrypted peers number + maximum number of connections of SoftAP = Max hardware keys number. When using ESP mesh, this value should be set to a maximum of 6.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 0 to 4 if CONFIG_SLAVE_IDF_TARGET_ESP32C2 is enabled
from 0 to 17 if CONFIG_SLAVE_IDF_TARGET_ESP32C2 is disabled
- Default value:
2 if CONFIG_SLAVE_IDF_TARGET_ESP32C2 is enabled
7 if CONFIG_SLAVE_IDF_TARGET_ESP32C2 is disabled
CONFIG_WIFI_RMT_NAN_SYNC_ENABLE
Enable Wi-Fi Aware: Synchronization (NAN-Sync)
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Wi-Fi Aware: Synchronization feature (NAN-Sync).
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_NAN_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_LWIP_IPV6
CONFIG_WIFI_RMT_NAN_SECURITY
Enable Wi-Fi Aware: Encrypted Pairwise Datapath (NDP Security)
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_NAN_SYNC_ENABLE
Enable encrypted pairwise datapath for Wi-Fi Aware (NAN). Adds PBKDF2 key derivation (mbedTLS PKCS#5), 4-way handshake (M1-M4), PTK derivation, and CCMP key installation for secured NAN data links. Disable to save code size when only open datapaths are needed.
Requires WIFI_RMT_MBEDTLS_CRYPTO + MBEDTLS_PKCS5_C + MBEDTLS_SHA256_C for ND-PMK derivation via pbkdf2_sha256() (MBEDTLS_MD_C is pulled in transitively by MBEDTLS_PKCS5_C).
- Symbol can be set when:
CONFIG_WIFI_RMT_NAN_SYNC_ENABLE is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_WIFI_RMT_MBEDTLS_CRYPTO is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_PKCS5_C
forcefully enables CONFIG_MBEDTLS_SHA256_C
CONFIG_WIFI_RMT_NAN_USD_ENABLE
Enable Wi-Fi Aware: Unsynchronized service discovery (NAN-USD)
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Wi-Fi Aware: Unsynchronized service discovery (NAN-USD)
- Symbol can be set when:
CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_NAN_PAIRING
Enable NAN Pairing
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable NAN Pairing support. This allows devices to establish secure pairing using bootstrapping methods like PIN code. Requires PASN in wpa_supplicant (WIFI_RMT_PASN_SUPPORT)
- Symbol can be set when:
CONFIG_WIFI_RMT_NAN_SECURITY is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_WIFI_RMT_MBEDTLS_CRYPTO is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_WIFI_RMT_PASN_SUPPORT
CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
Use MbedTLS crypto APIs
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable the use of MbedTLS crypto APIs. The internal crypto support within the supplicant is limited and may not suffice for all new security features, including WPA3.
It is recommended to always keep this option enabled. Additionally, note that MbedTLS can leverage hardware acceleration if available, resulting in significantly faster cryptographic operations.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_AES_C
forcefully enables CONFIG_MBEDTLS_ECP_C
forcefully enables CONFIG_MBEDTLS_ECDH_C
forcefully enables CONFIG_MBEDTLS_ECDSA_C
forcefully enables CONFIG_MBEDTLS_CMAC_C
forcefully enables CONFIG_MBEDTLS_ECP_DP_SECP256R1_ENABLED
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_WIFI_RMT_ENABLE_WPA3_SAE
forcefully enabled by CONFIG_WIFI_RMT_ENABLE_WPA3_OWE_STA
forcefully enabled by CONFIG_WIFI_RMT_ENABLE_WPA3_OWE_SOFTAP
forcefully enabled by CONFIG_WIFI_RMT_DPP_SUPPORT
CONFIG_WIFI_RMT_MBEDTLS_TLS_CLIENT
Use MbedTLS TLS client for WiFi Enterprise connection
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
Select this option to use MbedTLS TLS client for WPA2 enterprise connection. Please note that from MbedTLS-3.0 onwards, MbedTLS does not support SSL-3.0 TLS-v1.0, TLS-v1.1 versions. In case your server is using one of these version, it is advisable to update your server. Please disable this option for compatibility with older TLS versions.
- Symbol can be set when:
CONFIG_WIFI_RMT_ENTERPRISE_SUPPORT is enabled && CONFIG_WIFI_RMT_MBEDTLS_CRYPTO is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_TLS_ENABLED
CONFIG_WIFI_RMT_EAP_TLS1_3
Enable EAP-TLS v1.3 Support for WiFi Enterprise connection
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_MBEDTLS_CRYPTO > CONFIG_WIFI_RMT_MBEDTLS_TLS_CLIENT
Select this option to support EAP with TLS v1.3. This configuration still supports compatibility with EAP-TLS v1.2. Please note that enabling this configuration will cause every application which uses TLS go for TLS1.3 if server supports that. TLS1.3 is still in development in mbedtls and there may be interoperability issues with this. Please modify your application to set max version as TLS1.2 if you want to enable TLS1.3 only for WiFi connection.
- Symbol can be set when:
CONFIG_WIFI_RMT_MBEDTLS_TLS_CLIENT is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_WIFI_RMT_MBEDTLS_CRYPTO is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_SSL_PROTO_TLS1_3
CONFIG_WIFI_RMT_WAPI_PSK
Enable WAPI PSK support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable WAPI-PSK which is a Chinese National Standard Encryption for Wireless LANs (GB 15629.11-2003).
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_WAPI_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_SUITE_B_192
Enable NSA suite B support with 192 bit key
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable 192 bit NSA suite-B. This is necessary to support WPA3 192 bit security.
- Symbol can be set when:
CONFIG_WIFI_RMT_ENTERPRISE_SUPPORT is enabled && CONFIG_SLAVE_SOC_WIFI_GCMP_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_WIFI_RMT_GCMP_SUPPORT
forcefully enables CONFIG_WIFI_RMT_GMAC_SUPPORT
CONFIG_WIFI_RMT_11KV_SUPPORT
Enable 802.11k, 802.11v APIs Support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable 802.11k 802.11v APIs(RRM and BTM support).
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_WIFI_RMT_MBO_SUPPORT
CONFIG_WIFI_RMT_RRM_SUPPORT
Enable 802.11k APIs Support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_11KV_SUPPORT
Select this option to enable 802.11k APIs(RRM support). Only APIs which are helpful for network assisted roaming are supported for now. Enable this option with RRM enabled in sta config to make device ready for network assisted roaming. RRM: Radio measurements enable STAs to understand the radio environment, it enables STAs to observe and gather data on radio link performance and on the radio environment. Current implementation adds beacon report, link measurement, neighbor report.
- Symbol can be set when:
CONFIG_WIFI_RMT_11KV_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_WIFI_RMT_MBO_SUPPORT
CONFIG_WIFI_RMT_WNM_SUPPORT
Enable 802.11v APIs Support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_11KV_SUPPORT
Select this option to enable 802.11v APIs(BTM support). Only APIs which are helpful for network assisted roaming are supported for now. Enable this option with BTM enabled in sta config to make device ready for network assisted roaming. BTM: BSS transition management enables an AP to request a station to transition to a specific AP, or to indicate to a station a set of preferred APs.
- Symbol can be set when:
CONFIG_WIFI_RMT_11KV_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_WIFI_RMT_MBO_SUPPORT
CONFIG_WIFI_RMT_SCAN_CACHE
Keep scan results in cache
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Keep scan results in cache, if not enabled, those will be flushed immediately.
- Symbol can be set when:
CONFIG_WIFI_RMT_RRM_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_WIFI_RMT_MBO_SUPPORT
CONFIG_WIFI_RMT_MBO_SUPPORT
Enable Multi Band Operation Certification Support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable WiFi Multiband operation certification support.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_WIFI_RMT_11KV_SUPPORT
forcefully enables CONFIG_WIFI_RMT_RRM_SUPPORT
forcefully enables CONFIG_WIFI_RMT_WNM_SUPPORT
forcefully enables CONFIG_WIFI_RMT_SCAN_CACHE
CONFIG_WIFI_RMT_ENABLE_ROAMING_APP
Advanced support for Wi-Fi Roaming
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Espressif's roaming app to allow for efficient Wi-Fi roaming. This includes configurable periodic environment scans, maintaining a cache of the best APs, handling low rssi events etc.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
Configure roaming App
CONFIG_WIFI_RMT_DPP_SUPPORT
Enable DPP support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable WiFi Easy Connect Support.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
CONFIG_WIFI_RMT_DPP_MAX_CONF_OBJ
Maximum number of DPP configuration objects
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_DPP_SUPPORT
Maximum number of configuration objects that can be received and stored during a DPP configuration exchange. DPP v2 configurators may send multiple configuration objects (e.g., for different SSIDs or AKMs). Increasing this value will increase the memory usage for DPP events.
- Symbol can be set when:
CONFIG_WIFI_RMT_DPP_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 1 to 10
- Default value:
3
CONFIG_WIFI_RMT_11R_SUPPORT
Enable 802.11R (Fast Transition) Support
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable WiFi Fast Transition Support.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_WPS_SOFTAP_REGISTRAR
Add WPS Registrar support in SoftAP mode
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable WPS registrar support in softAP mode.
- Symbol can be set when:
CONFIG_WIFI_RMT_SOFTAP_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_ENABLE_WIFI_TX_STATS
Enable Wi-Fi transmission statistics
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Wi-Fi transmission statistics. Total support 4 access category. Each access category will use 346 bytes memory.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_ENABLE_WIFI_RX_STATS
Enable Wi-Fi reception statistics
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Wi-Fi reception statistics. Total support 2 access category. Each access category will use 190 bytes memory.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_ENABLE_WIFI_RX_MU_STATS
Enable Wi-Fi DL MU-MIMO and DL OFDMA reception statistics
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_ENABLE_WIFI_RX_STATS
Enable Wi-Fi DL MU-MIMO and DL OFDMA reception statistics. Will use 10932 bytes memory.
- Symbol can be set when:
CONFIG_WIFI_RMT_ENABLE_WIFI_RX_STATS is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_TX_HETB_QUEUE_NUM
WiFi TX HE TB QUEUE number for STA HE TB PPDU transmission
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Set the maximum number of queue that can be aggregated by the STA in the A-MPDU carried in the HE TB PPDU.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_HE_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 1 to 4
- Default value:
3
CONFIG_WIFI_RMT_ENABLE_DUMP_HESIGB
Enable Wi-Fi dump HE-SIGB which is contained in DL HE MU PPDUs
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Wi-Fi dump HE-SIGB which is contained in DL HE MU PPDUs.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_SUPPORT_5G is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_ENABLE_DUMP_MU_CFO
Enable Wi-Fi dump MU CFO
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Wi-Fi dump MU CFO.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_SUPPORT_5G is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_ENABLE_DUMP_CTRL_NDPA
Enable Wi-Fi dump NDPA frames
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Wi-Fi dump NDPA frames.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_SUPPORT_5G is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_ENABLE_DUMP_CTRL_BFRP
Enable Wi-Fi dump BFRP frames
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable Wi-Fi dump BFRP frames.
- Symbol can be set when:
CONFIG_SLAVE_SOC_WIFI_SUPPORT_5G is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
WPS Configuration Options
Contains:
CONFIG_WIFI_RMT_WPS_STRICT
Strictly validate all WPS attributes
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > WPS Configuration Options
Select this option to enable validate each WPS attribute rigorously. Disabling this add the workarounds with various APs. Enabling this may cause inter operability issues with some APs.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_WPS_PASSPHRASE
Get WPA2 passphrase in WPS config
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > WPS Configuration Options
Select this option to get passphrase during WPS configuration. This option fakes the virtual display capabilities to get the configuration in passphrase mode. Not recommended to be used since WPS credentials should not be shared to other devices, making it in readable format increases that risk, also passphrase requires pbkdf2 to convert in psk.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_WPS_RECONNECT_ON_FAIL
Reconnect to previous SSID if WPS failed
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > WPS Configuration Options
Select this option to enable reconnection to previous SSID if WPS fails. This option will only work if station was connected to a network when WPS was started.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_DEBUG_PRINT
Print debug messages from WPA Supplicant
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to print logging information from WPA supplicant, this includes handshake information and key hex dumps depending on the project logging level.
Enabling this could increase the build size ~60kb depending on the project logging level.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_ENTERPRISE_SUPPORT
Enable enterprise option
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this to enable/disable enterprise connection support.
disabling this will reduce binary size. disabling this will disable the use of any esp_wifi_sta_wpa2_ent_* (as APIs will be meaningless)
Note that when using bigger certificates on low-power chips without crypto hardware acceleration, it is recommended to adjust the task watchdog timer (TWDT) if it is enabled. For precise information on timing requirements, you can check performance numbers at https://github.com/espressif/mbedtls/wiki/Performance-Numbers.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_WIFI_RMT_ENT_FREE_DYNAMIC_BUFFER
Free dynamic buffers during WiFi enterprise connection
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_ENTERPRISE_SUPPORT
Select this configuration to free dynamic buffers during WiFi enterprise connection. This will enable chip to reduce heap consumption during WiFi enterprise connection.
- Symbol can be set when:
CONFIG_WIFI_RMT_ENTERPRISE_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled if CONFIG_SLAVE_IDF_TARGET_ESP32C2 is enabled
Disabled if CONFIG_SLAVE_IDF_TARGET_ESP32C2 is disabled
CONFIG_WIFI_RMT_MODEM_RF_FLAG_UPDATE_DEBUG
Enable debug assertions for modem RF flag update
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Enable debug assertions to verify modem RF flag update operations. This option enables assert checks to verify that modem RF power state is correctly cleared before pmu sleep.
- Symbol can be set when:
CONFIG_WIFI_RMT_ENHANCED_LIGHT_SLEEP is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_PRIVACY_ENHANCEMENTS_ENABLED
WiFi Privacy Enhancements enabled
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration
Select this option to enable WiFi Privacy Enhancements (enables random mac, seq number, dialogue token number, vendor seq number cnt). Supported on station interface only; softAP may be added in future.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Disabled
CONFIG_WIFI_RMT_RMAC_AUTO_RESET_INTERVAL
Random MAC Auto-Reset Interval time
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED > Wi-Fi configuration > CONFIG_WIFI_RMT_PRIVACY_ENHANCEMENTS_ENABLED
Interval in hours to rotate the random MAC while not connected to an AP. Values below 1 or above 24 are not allowed.
- Symbol can be set when:
CONFIG_WIFI_RMT_PRIVACY_ENHANCEMENTS_ENABLED is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Range:
from 1 to 24
- Default value:
12
CONFIG_ESP_WIFI_REMOTE_LIBRARY
Choose WiFi-remote implementation
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED
Select type of WiFi Remote implementation
ESP-HOSTED is the default and most versatile option. It's possible to use EPPP, which uses PPPoS link between micros and NAPT, so it's slower, but allows for more customization on the slave side. It's also possible to select CUSTOM and provide wifi_remote implementation in any other component or application (needs to set link dependency from wifi-remote to the custom implementation)
Available options:
ESP-HOSTED (CONFIG_ESP_WIFI_REMOTE_LIBRARY_HOSTED)
EPPP (CONFIG_ESP_WIFI_REMOTE_LIBRARY_EPPP)
CUSTOM (CONFIG_ESP_WIFI_REMOTE_LIBRARY_CUSTOM)
CONFIG_ESP_WIFI_REMOTE_EAP_ENABLED
Enable EAP client remote API
Found in: Component config > Wi-Fi Remote > CONFIG_ESP_WIFI_REMOTE_ENABLED
When enabled, the EAP client remote API will be available. This allows remote control of EAP authentication functions.
- Symbol can be set when:
CONFIG_WIFI_RMT_ENTERPRISE_SUPPORT is enabled && CONFIG_ESP_WIFI_REMOTE_ENABLED is enabled
- Default value:
Enabled
CONFIG_ESP_WIFI_REMOTE_IS_DISABLED
Wi-Fi Remote is disabled (Host Wi-Fi is ON)
Found in: Component config > Wi-Fi Remote
Wi-Fi Remote is disabled because ESP_HOST_WIFI_ENABLED is ON. These options are mutually exclusive. Disable ESP_HOST_WIFI_ENABLED to use ESP_WIFI_REMOTE.
- Symbol can be set when:
CONFIG_ESP_WIFI_REMOTE_ENABLED is disabled
- Default value:
Enabled
Core dump
Contains:
CONFIG_ESP_COREDUMP_TO_FLASH_OR_UART
Data destination
Found in: Component config > Core dump
Select place to store core dump: flash, uart or none (to disable core dumps generation).
Core dumps to Flash are not available if PSRAM is used for task stacks.
If core dump is configured to be stored in flash and custom partition table is used add corresponding entry to your CSV. For examples, please see predefined partition table CSV descriptions in the components/partition_table directory.
Available options:
Flash (CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH)
UART (CONFIG_ESP_COREDUMP_ENABLE_TO_UART)
None (CONFIG_ESP_COREDUMP_ENABLE_TO_NONE)
CONFIG_ESP_COREDUMP_CAPTURE_DRAM
Include whole .bss and .data sections and heap data into core dump file
Found in: Component config > Core dump
Storing these sections can help with easier debugging and troubleshooting. However, additional storage space will be required in the core dump partition. At least 128KB should be reserved, but the actual amount required may vary based on the application's DRAM usage. Note that sections located in external RAM will not be stored.
- Symbol can be set when:
CONFIG_ESP_COREDUMP_ENABLE is enabled
- Default value:
Disabled
CONFIG_ESP_COREDUMP_CHECK_BOOT
Check core dump data integrity on boot
Found in: Component config > Core dump
When enabled, if any data are found on the flash core dump partition, they will be checked by calculating their checksum.
- Symbol can be set when:
CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH is enabled
- Default value:
Enabled
CONFIG_ESP_COREDUMP_LOGS
Enable coredump logs for debugging
Found in: Component config > Core dump
Enable/disable coredump logs. Logs strings from espcoredump component are placed in DRAM. Disabling these helps to save ~5KB of internal memory.
- Symbol can be set when:
CONFIG_ESP_COREDUMP_ENABLE is enabled
- Default value:
Enabled
CONFIG_ESP_COREDUMP_MAX_TASKS_NUM
Maximum number of tasks
Found in: Component config > Core dump
Maximum number of tasks that will be included in the core dump. Crashed task registers and stacks are always included. Other tasks are included in order of their priority. (Highest priority ready task first)
- Symbol can be set when:
CONFIG_ESP_COREDUMP_ENABLE is enabled
- Default value:
64
CONFIG_ESP_COREDUMP_UART_DELAY
Delay before print to UART
Found in: Component config > Core dump
Config delay (in ms) before printing core dump to UART. Delay can be interrupted by pressing Enter key.
- Symbol can be set when:
CONFIG_ESP_COREDUMP_ENABLE_TO_UART is enabled
- Default value:
0
CONFIG_ESP_COREDUMP_FLASH_NO_OVERWRITE
Don't overwrite existing core dump
Found in: Component config > Core dump
Don't overwrite an existing core dump already present in flash. Enable this option to only keep the first of multiple core dumps.
If enabled, the core dump partition must be erased before the first core dump can be written.
- Symbol can be set when:
CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH is enabled
- Default value:
Disabled
CONFIG_ESP_COREDUMP_STACK_SIZE
Reserved stack size
Found in: Component config > Core dump
Size of the memory to be reserved for core dump stack. If 0 core dump process will run on the stack of crashed task/ISR, otherwise special stack will be allocated. To ensure that core dump itself will not overflow task/ISR stack set this to the value around 1300-1800 depending on the chosen checksum calculation method. SHA256 method needs more stack space than CRC32. NOTE: It eats DRAM.
- Symbol can be set when:
CONFIG_ESP_COREDUMP_ENABLE is enabled
- Range:
from 0 to 4096 if CONFIG_ESP_COREDUMP_USE_STACK_SIZE is disabled
from 1792 to 4096 if CONFIG_ESP_COREDUMP_USE_STACK_SIZE is enabled
- Default value:
0 if CONFIG_ESP_COREDUMP_USE_STACK_SIZE is disabled
1792 if CONFIG_ESP_COREDUMP_USE_STACK_SIZE is enabled
CONFIG_ESP_COREDUMP_SUMMARY_STACKDUMP_SIZE
Size of the stack dump buffer
Found in: Component config > Core dump
Size of the buffer that would be reserved for extracting backtrace info summary. This buffer will contain the stack dump of the crashed task. This dump is useful in generating backtrace
- Symbol can be set when:
CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH is enabled
- Range:
from 512 to 4096
- Default value:
1024
CONFIG_ESP_COREDUMP_DECODE
Handling of UART core dumps in IDF Monitor
Found in: Component config > Core dump
Available options:
Decode and show summary (info_corefile) (CONFIG_ESP_COREDUMP_DECODE_INFO)
Don't decode (CONFIG_ESP_COREDUMP_DECODE_DISABLE)
FAT Filesystem support
Contains:
CONFIG_FATFS_VOLUME_COUNT
Number of volumes
Found in: Component config > FAT Filesystem support
Number of volumes (logical drives) to use.
- Range:
from 1 to 10
- Default value:
2
CONFIG_FATFS_LONG_FILENAMES
Long filename support
Found in: Component config > FAT Filesystem support
Support long filenames in FAT. Long filename data increases memory usage. FATFS can be configured to store the buffer for long filename data in stack or heap.
Available options:
No long filenames (CONFIG_FATFS_LFN_NONE)
Long filename buffer in heap (CONFIG_FATFS_LFN_HEAP)
Long filename buffer on stack (CONFIG_FATFS_LFN_STACK)
CONFIG_FATFS_SECTOR_SIZE
Sector size
Found in: Component config > FAT Filesystem support
Specify the size of the sector in bytes for FATFS partition generator.
Available options:
512 (CONFIG_FATFS_SECTOR_512)
4096 (CONFIG_FATFS_SECTOR_4096)
CONFIG_FATFS_CHOOSE_CODEPAGE
OEM Code Page
Found in: Component config > FAT Filesystem support
OEM code page used for file name encodings.
If "Dynamic" is selected, code page can be chosen at runtime using f_setcp function. Note that choosing this option will increase application size by ~480kB.
Available options:
Dynamic (all code pages supported) (CONFIG_FATFS_CODEPAGE_DYNAMIC)
US (CP437) (CONFIG_FATFS_CODEPAGE_437)
Arabic (CP720) (CONFIG_FATFS_CODEPAGE_720)
Greek (CP737) (CONFIG_FATFS_CODEPAGE_737)
KBL (CP771) (CONFIG_FATFS_CODEPAGE_771)
Baltic (CP775) (CONFIG_FATFS_CODEPAGE_775)
Latin 1 (CP850) (CONFIG_FATFS_CODEPAGE_850)
Latin 2 (CP852) (CONFIG_FATFS_CODEPAGE_852)
Cyrillic (CP855) (CONFIG_FATFS_CODEPAGE_855)
Turkish (CP857) (CONFIG_FATFS_CODEPAGE_857)
Portuguese (CP860) (CONFIG_FATFS_CODEPAGE_860)
Icelandic (CP861) (CONFIG_FATFS_CODEPAGE_861)
Hebrew (CP862) (CONFIG_FATFS_CODEPAGE_862)
Canadian French (CP863) (CONFIG_FATFS_CODEPAGE_863)
Arabic (CP864) (CONFIG_FATFS_CODEPAGE_864)
Nordic (CP865) (CONFIG_FATFS_CODEPAGE_865)
Russian (CP866) (CONFIG_FATFS_CODEPAGE_866)
Greek 2 (CP869) (CONFIG_FATFS_CODEPAGE_869)
Japanese (DBCS) (CP932) (CONFIG_FATFS_CODEPAGE_932)
Simplified Chinese (DBCS) (CP936) (CONFIG_FATFS_CODEPAGE_936)
Korean (DBCS) (CP949) (CONFIG_FATFS_CODEPAGE_949)
Traditional Chinese (DBCS) (CP950) (CONFIG_FATFS_CODEPAGE_950)
CONFIG_FATFS_MAX_LFN
Max long filename length
Found in: Component config > FAT Filesystem support
Maximum long filename length. Can be reduced to save RAM.
- Symbol can be set when:
CONFIG_FATFS_LFN_NONE is disabled
- Range:
from 12 to 255
- Default value:
255
CONFIG_FATFS_API_ENCODING
API character encoding
Found in: Component config > FAT Filesystem support
Choose encoding for character and string arguments/returns when using FATFS APIs. The encoding of arguments will usually depend on text editor settings.
Available options:
API uses ANSI/OEM encoding (CONFIG_FATFS_API_ENCODING_ANSI_OEM)
API uses UTF-8 encoding (CONFIG_FATFS_API_ENCODING_UTF_8)
CONFIG_FATFS_FS_LOCK
Number of simultaneously open files protected by lock function
Found in: Component config > FAT Filesystem support
This option sets the FATFS configuration value _FS_LOCK. The option _FS_LOCK switches file lock function to control duplicated file open and illegal operation to open objects.
* 0: Disable file lock function. To avoid volume corruption, application should avoid illegal open, remove and rename to the open objects.
* >0: Enable file lock function. The value defines how many files/sub-directories can be opened simultaneously under file lock control.
Note that the file lock control is independent of re-entrancy.
- Range:
from 0 to 65535
- Default value:
0
CONFIG_FATFS_TIMEOUT_MS
Timeout for acquiring a file lock, ms
Found in: Component config > FAT Filesystem support
This option sets FATFS configuration value _FS_TIMEOUT, scaled to milliseconds. Sets the number of milliseconds FATFS will wait to acquire a mutex when operating on an open file. For example, if one task is performing a lengthy operation, another task will wait for the first task to release the lock, and time out after amount of time set by this option.
- Default value:
10000
CONFIG_FATFS_PER_FILE_CACHE
Use separate cache for each file
Found in: Component config > FAT Filesystem support
This option affects FATFS configuration value _FS_TINY.
If this option is set, _FS_TINY is 0, and each open file has its own cache, size of the cache is equal to the _MAX_SS variable (512 or 4096 bytes). This option uses more RAM if more than 1 file is open, but needs less reads and writes to the storage for some operations.
If this option is not set, _FS_TINY is 1, and single cache is used for all open files, size is also equal to _MAX_SS variable. This reduces the amount of heap used when multiple files are open, but increases the number of read and write operations which FATFS needs to make.
- Default value:
Enabled
CONFIG_FATFS_ALLOC_PREFER_EXTRAM
Prefer external RAM when allocating FATFS buffers
Found in: Component config > FAT Filesystem support
When the option is enabled, internal buffers used by FATFS will be allocated from external RAM. If the allocation from external RAM fails, the buffer will be allocated from the internal RAM. Disable this option if optimizing for performance. Enable this option if optimizing for internal memory size.
- Symbol can be set when:
CONFIG_SPIRAM_USE_CAPS_ALLOC is enabled || CONFIG_SPIRAM_USE_MALLOC is enabled
- Default value:
Enabled
CONFIG_FATFS_ALLOC_PREFER_ALIGNED_WORK_BUFFERS
Prefer aligned, DMA capable RAM when allocating FATFS buffers
Found in: Component config > FAT Filesystem support
Tries to allocate FATFS heap buffers in a way they can be used directly by the SDMMC driver without extra copies when DMA is enabled (for example when using PSRAM on ESP32-P4). Disable this if you need the absolute minimum heap overhead and do not use SDMMC. This option can be combined with CONFIG_FATFS_ALLOC_PREFER_EXTRAM, in which case, the following order is tried: DMA capable RAM, external RAM, internal RAM.
- Default value:
Disabled
CONFIG_FATFS_USE_FASTSEEK
Enable fast seek algorithm when using lseek function through VFS FAT
Found in: Component config > FAT Filesystem support
The fast seek feature enables fast backward/long seek operations without FAT access by using an in-memory CLMT (cluster link map table). Please note, fast-seek is only allowed for read-mode files, if a file is opened in write-mode, the seek mechanism will automatically fallback to the default implementation.
- Default value:
Disabled
CONFIG_FATFS_USE_STRFUNC_CHOICE
Enable string functions, f_gets(), f_putc(), f_puts() and f_printf()
Found in: Component config > FAT Filesystem support
These are specialized alternatives to stdio functions for working directly with FATFS without VFS. Legacy code may need functions, but for new development, it is advised to use stdio under VFS.
0: Disable. FF_PRINT_LLI, FF_PRINT_FLOAT and FF_STRF_ENCODE have no effect. 1: Enable without LF-CRLF conversion. 2: Enable with LF-CRLF conversion.
Available options:
0:Disable (CONFIG_FATFS_USE_STRFUNC_NONE)
1:Enable without LF-CRLF conversion (CONFIG_FATFS_USE_STRFUNC_WITHOUT_CRLF_CONV)
2:Enable with LF-CRLF conversion (CONFIG_FATFS_USE_STRFUNC_WITH_CRLF_CONV)
CONFIG_FATFS_PRINT_LLI
Make fatfs f_printf() support long long argument
Found in: Component config > FAT Filesystem support
- Symbol can be set when:
CONFIG_FATFS_USE_STRFUNC_NONE is disabled
- Default value:
Disabled
CONFIG_FATFS_PRINT_FLOAT
Make fatfs f_printf() support floating point argument
Found in: Component config > FAT Filesystem support
- Symbol can be set when:
CONFIG_FATFS_USE_STRFUNC_NONE is disabled
- Default value:
Disabled
CONFIG_FATFS_STRF_ENCODE_CHOICE
FatFS string functions: convert character encoding
Found in: Component config > FAT Filesystem support
When FF_LFN_UNICODE >= 1 with LFN enabled, string functions convert the character encoding in it. FF_STRF_ENCODE selects assumption of character encoding ON THE FILE to be read/written via those functions. 0: ANSI/OEM in current CP 1: Unicode in UTF-16LE 2: Unicode in UTF-16BE 3: Unicode in UTF-8
Available options:
0:ANSI/OEM in current CP (CONFIG_FATFS_STRF_ENCODE_ANSI)
1:Unicode in UTF-16LE (CONFIG_FATFS_STRF_ENCODE_UTF16LE)
2:Unicode in UTF-16BE (CONFIG_FATFS_STRF_ENCODE_UTF16BE)
3:Unicode in UTF-8 (CONFIG_FATFS_STRF_ENCODE_UTF8)
CONFIG_FATFS_FAST_SEEK_BUFFER_SIZE
Fast seek CLMT buffer size
Found in: Component config > FAT Filesystem support
If fast seek algorithm is enabled, this defines the size of CLMT buffer used by this algorithm in 32-bit word units. This value should be chosen based on prior knowledge of maximum elements of each file entry would store.
- Symbol can be set when:
CONFIG_FATFS_USE_FASTSEEK is enabled
- Default value:
64
CONFIG_FATFS_VFS_FSTAT_BLKSIZE
Default block size
Found in: Component config > FAT Filesystem support
If set to 0, the 'newlib' library's default size (BLKSIZ) is used (128 B). If set to a non-zero value, the value is used as the block size. Default file buffer size is set to this value and the buffer is allocated when first attempt of reading/writing to a file is made. Increasing this value improves fread() speed, however the heap usage is increased as well.
NOTE: The block size value is shared by all the filesystem functions accessing target media for given file descriptor! See 'Improving I/O performance' section of 'Maximizing Execution Speed' documentation page for more details.
- Default value:
0
CONFIG_FATFS_IMMEDIATE_FSYNC
Enable automatic f_sync
Found in: Component config > FAT Filesystem support
Enables automatic calling of f_sync() to flush recent file changes after each call of vfs_fat_write(), vfs_fat_pwrite(), vfs_fat_link(), vfs_fat_truncate() and vfs_fat_ftruncate() functions. This feature improves file-consistency and size reporting accuracy for the FatFS, at a price on decreased performance due to frequent disk operations
- Default value:
Disabled
CONFIG_FATFS_USE_LABEL
Use FATFS volume label
Found in: Component config > FAT Filesystem support
Allows FATFS volume label to be specified using f_setlabel
- Default value:
Disabled
CONFIG_FATFS_LINK_LOCK
Perform the whole link operation under lock
Found in: Component config > FAT Filesystem support
If enabled, the whole link operation (including file copying) is performed under lock. This ensures that the link operation is atomic, but may cause performance for large files. It may create less fragmented file copy.
- Default value:
Enabled
CONFIG_FATFS_USE_DYN_BUFFERS
Use dynamic buffers
Found in: Component config > FAT Filesystem support
If enabled, the buffers used by FATFS will be allocated separately from the rest of the structure. This option is useful when using multiple FATFS instances with different sector sizes, as the buffers will be allocated according to the sector size. If disabled, the greatest sector size will be used for all FATFS instances. (In most cases, this would be the sector size of Wear Levelling library) This might cause more memory to be used than necessary.
- Default value:
Enabled
File system free space calculation behavior
Controls if the file system does or does not trust cached data like free cluster count and allocated cluster number. Setting these to do not trust the data may result of more accurate output from f_getfree() function but increased overhead (forces a full FAT scan, etc.).
Contains:
CONFIG_FATFS_DONT_TRUST_FREE_CLUSTER_CNT
Don't trust free cluster count
Found in: Component config > FAT Filesystem support > File system free space calculation behavior
If 1, the file system will not trust the free cluster count in the FSINFO (in FATFS struct). This may result in more accurate output from f_getfree() function but increased overhead.
- Range:
from 0 to 1
- Default value:
0
CONFIG_FATFS_DONT_TRUST_LAST_ALLOC
Don't trust allocated cluster number
Found in: Component config > FAT Filesystem support > File system free space calculation behavior
If 1, the file system will not trust the last allocated cluster number in the FSINFO (in FATFS struct). This may result in more accurate output from f_getfree() function but increased overhead.
- Range:
from 0 to 1
- Default value:
0
FreeRTOS
Contains:
Kernel
Contains:
CONFIG_FREERTOS_UNICORE
Run FreeRTOS only on first core
Found in: Component config > FreeRTOS > Kernel
This version of FreeRTOS normally takes control of all cores of the CPU. Select this if you only want to start it on the first core. This is needed when e.g. another process needs complete control over the second core.
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_SYSTEM_SINGLE_CORE_MODE
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_IDF_TARGET_ESP32C61
CONFIG_FREERTOS_HZ
configTICK_RATE_HZ
Found in: Component config > FreeRTOS > Kernel
Sets the FreeRTOS tick interrupt frequency in Hz (see configTICK_RATE_HZ documentation for more details).
- Range:
from 1 to 1000
- Default value:
100
CONFIG_FREERTOS_OPTIMIZED_SCHEDULER
configUSE_PORT_OPTIMISED_TASK_SELECTION
Found in: Component config > FreeRTOS > Kernel
Enables port specific task selection method. This option can speed up the search of ready tasks when scheduling (see configUSE_PORT_OPTIMISED_TASK_SELECTION documentation for more details).
- Default value:
Enabled
CONFIG_FREERTOS_CHECK_STACKOVERFLOW
configCHECK_FOR_STACK_OVERFLOW
Found in: Component config > FreeRTOS > Kernel
Enables FreeRTOS to check for stack overflows (see configCHECK_FOR_STACK_OVERFLOW documentation for more details).
Note: If users do not provide their own
vApplicationStackOverflowHook()function, a default function will be provided by ESP-IDF.Available options:
No checking (CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE)
Do not check for stack overflows (configCHECK_FOR_STACK_OVERFLOW = 0)
Check by stack pointer value (Method 1) (CONFIG_FREERTOS_CHECK_STACKOVERFLOW_PTRVAL)
Check for stack overflows on each context switch by checking if the stack pointer is in a valid range. Quick but does not detect stack overflows that happened between context switches (configCHECK_FOR_STACK_OVERFLOW = 1)
Check using canary bytes (Method 2) (CONFIG_FREERTOS_CHECK_STACKOVERFLOW_CANARY)
Places some magic bytes at the end of the stack area and on each context switch, check if these bytes are still intact. More thorough than just checking the pointer, but also slightly slower. (configCHECK_FOR_STACK_OVERFLOW = 2)
CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS
configNUM_THREAD_LOCAL_STORAGE_POINTERS
Found in: Component config > FreeRTOS > Kernel
Set the number of thread local storage pointers in each task (see configNUM_THREAD_LOCAL_STORAGE_POINTERS documentation for more details).
Note: In ESP-IDF, this value must be at least 1. Index 0 is reserved for use by the pthreads API thread-local-storage. Other indexes can be used for any desired purpose.
- Range:
from 1 to 256
- Default value:
1
CONFIG_FREERTOS_IDLE_TASK_STACKSIZE
configMINIMAL_STACK_SIZE (Idle task stack size)
Found in: Component config > FreeRTOS > Kernel
Sets the idle task stack size in bytes (see configMINIMAL_STACK_SIZE documentation for more details).
Note:
ESP-IDF specifies stack sizes in bytes instead of words.
The default size is enough for most use cases.
The stack size may need to be increased above the default if the app installs idle or thread local storage cleanup hooks that use a lot of stack memory.
Conversely, the stack size can be reduced to the minimum if non of the idle features are used.
- Range:
from 768 to 32768
- Default value:
1536
CONFIG_FREERTOS_USE_IDLE_HOOK
configUSE_IDLE_HOOK
Found in: Component config > FreeRTOS > Kernel
Enables the idle task application hook (see configUSE_IDLE_HOOK documentation for more details).
Note:
The application must provide the hook function
void vApplicationIdleHook( void );
vApplicationIdleHook()is called from FreeRTOS idle task(s)The FreeRTOS idle hook is NOT the same as the ESP-IDF Idle Hook, but both can be enabled simultaneously.
- Default value:
Disabled
CONFIG_FREERTOS_USE_TICK_HOOK
configUSE_TICK_HOOK
Found in: Component config > FreeRTOS > Kernel
Enables the tick hook (see configUSE_TICK_HOOK documentation for more details).
Note:
The application must provide the hook function
void vApplicationTickHook( void );
vApplicationTickHook()is called from FreeRTOS's tick handling functionxTaskIncrementTick()The FreeRTOS tick hook is NOT the same as the ESP-IDF Tick Interrupt Hook, but both can be enabled simultaneously.
- Default value:
Disabled
CONFIG_FREERTOS_MAX_TASK_NAME_LEN
configMAX_TASK_NAME_LEN
Found in: Component config > FreeRTOS > Kernel
Sets the maximum number of characters for task names (see configMAX_TASK_NAME_LEN documentation for more details).
Note: For most uses, the default of 16 characters is sufficient.
- Range:
from 1 to 256
- Default value:
16
CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY
configENABLE_BACKWARD_COMPATIBILITY
Found in: Component config > FreeRTOS > Kernel
Enable backward compatibility with APIs prior to FreeRTOS v8.0.0. (see configENABLE_BACKWARD_COMPATIBILITY documentation for more details).
- Default value:
Disabled
CONFIG_FREERTOS_USE_TIMERS
configUSE_TIMERS
Found in: Component config > FreeRTOS > Kernel
Enable FreeRTOS Software Timers. Normally the timer task will only get pulled into the build and created if any software timer related functions are used. This is achieved through IDF defining a weak empty function for xTimerCreateTimerTask, which should take effect if timers.c is not pulled into the build.
In certain special cases (if you use configUSE_TRACE_FACILITY=y and event groups) the linker will still pull in the xTimerCreateTimerTask from timers.c even if the function that utilized it gets discarded due to not being used.
In these cases you can use this option to force the timer task to be disabled.
- Default value:
Enabled
CONFIG_FREERTOS_TIMER_SERVICE_TASK_NAME
configTIMER_SERVICE_TASK_NAME
Found in: Component config > FreeRTOS > Kernel > CONFIG_FREERTOS_USE_TIMERS
Sets the timer task's name (see configTIMER_SERVICE_TASK_NAME documentation for more details).
- Symbol can be set when:
CONFIG_FREERTOS_USE_TIMERS is enabled
- Default value:
"Tmr Svc"
CONFIG_FREERTOS_TIMER_SERVICE_TASK_CORE_AFFINITY
configTIMER_SERVICE_TASK_CORE_AFFINITY
Found in: Component config > FreeRTOS > Kernel > CONFIG_FREERTOS_USE_TIMERS
Sets the timer task's core affinity (see configTIMER_SERVICE_TASK_CORE_AFFINITY documentation for more details).
Available options:
CPU0 (CONFIG_FREERTOS_TIMER_TASK_AFFINITY_CPU0)
CPU1 (CONFIG_FREERTOS_TIMER_TASK_AFFINITY_CPU1)
No affinity (CONFIG_FREERTOS_TIMER_TASK_NO_AFFINITY)
CONFIG_FREERTOS_TIMER_TASK_PRIORITY
configTIMER_TASK_PRIORITY
Found in: Component config > FreeRTOS > Kernel > CONFIG_FREERTOS_USE_TIMERS
Sets the timer task's priority (see configTIMER_TASK_PRIORITY documentation for more details).
- Symbol can be set when:
CONFIG_FREERTOS_USE_TIMERS is enabled
- Range:
from 1 to 25
- Default value:
1
CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH
configTIMER_TASK_STACK_DEPTH
Found in: Component config > FreeRTOS > Kernel > CONFIG_FREERTOS_USE_TIMERS
Set the timer task's stack size (see configTIMER_TASK_STACK_DEPTH documentation for more details).
- Symbol can be set when:
CONFIG_FREERTOS_USE_TIMERS is enabled
- Range:
from 1536 to 32768
- Default value:
2048
CONFIG_FREERTOS_TIMER_QUEUE_LENGTH
configTIMER_QUEUE_LENGTH
Found in: Component config > FreeRTOS > Kernel > CONFIG_FREERTOS_USE_TIMERS
Set the timer task's command queue length (see configTIMER_QUEUE_LENGTH documentation for more details).
- Symbol can be set when:
CONFIG_FREERTOS_USE_TIMERS is enabled
- Range:
from 5 to 20
- Default value:
10
CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE
configQUEUE_REGISTRY_SIZE
Found in: Component config > FreeRTOS > Kernel
Set the size of the queue registry (see configQUEUE_REGISTRY_SIZE documentation for more details).
Note: A value of 0 will disable queue registry functionality
- Range:
from 0 to 20
- Default value:
0
CONFIG_FREERTOS_TASK_NOTIFICATION_ARRAY_ENTRIES
configTASK_NOTIFICATION_ARRAY_ENTRIES
Found in: Component config > FreeRTOS > Kernel
Set the size of the task notification array of each task. When increasing this value, keep in mind that this means additional memory for each and every task on the system. However, task notifications in general are more light weight compared to alternatives such as semaphores.
- Range:
from 1 to 32
- Default value:
1
CONFIG_FREERTOS_USE_TRACE_FACILITY
configUSE_TRACE_FACILITY
Found in: Component config > FreeRTOS > Kernel
Enables additional structure members and functions to assist with execution visualization and tracing (see configUSE_TRACE_FACILITY documentation for more details).
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS
configUSE_STATS_FORMATTING_FUNCTIONS
Found in: Component config > FreeRTOS > Kernel > CONFIG_FREERTOS_USE_TRACE_FACILITY
Set configUSE_TRACE_FACILITY and configUSE_STATS_FORMATTING_FUNCTIONS to 1 to include the
vTaskList()andvTaskGetRunTimeStats()functions in the build (see configUSE_STATS_FORMATTING_FUNCTIONS documentation for more details).
- Symbol can be set when:
CONFIG_FREERTOS_USE_TRACE_FACILITY is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS
CONFIG_FREERTOS_USE_LIST_DATA_INTEGRITY_CHECK_BYTES
configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES
Found in: Component config > FreeRTOS > Kernel
Enable list integrity checker (see configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES documentation for more details).
- Default value:
Disabled
CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID
Enable display of xCoreID in vTaskList
Found in: Component config > FreeRTOS > Kernel
If enabled, this will include an extra column when vTaskList is called to display the CoreID the task is pinned to (0,1) or -1 if not pinned.
- Symbol can be set when:
- Default value:
Disabled
CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS
configGENERATE_RUN_TIME_STATS
Found in: Component config > FreeRTOS > Kernel
Enables collection of run time statistics for each task (see configGENERATE_RUN_TIME_STATS documentation for more details).
Note: The clock used for run time statistics can be configured in FREERTOS_RUN_TIME_STATS_CLK.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_FREERTOS_USE_TRACE_FACILITY
forcefully enables CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS
CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE
configRUN_TIME_COUNTER_TYPE
Found in: Component config > FreeRTOS > Kernel > CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS
Sets the data type used for the FreeRTOS run time stats. A larger data type can be used to reduce the frequency of the counter overflowing.
Available options:
uint32_t (CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE_U32)
configRUN_TIME_COUNTER_TYPE is set to uint32_t
uint64_t (CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE_U64)
configRUN_TIME_COUNTER_TYPE is set to uint64_t
CONFIG_FREERTOS_USE_TICKLESS_IDLE
configUSE_TICKLESS_IDLE
Found in: Component config > FreeRTOS > Kernel
If power management support is enabled, FreeRTOS will be able to put the system into light sleep mode when no tasks need to run for a number of ticks. This number can be set using FREERTOS_IDLE_TIME_BEFORE_SLEEP option. This feature is also known as "automatic light sleep".
Note that timers created using esp_timer APIs may prevent the system from entering sleep mode, even when no tasks need to run. To skip unnecessary wake-up initialize a timer with the "skip_unhandled_events" option as true.
While the OS tick interrupt is suppressed during tickless idle, tick hooks are not invoked for those suppressed ticks. This applies to esp_register_freertos_tick_hook() callbacks and to configUSE_TICK_HOOK.
If disabled, automatic light sleep support will be disabled.
- Symbol can be set when:
CONFIG_PM_ENABLE is enabled
- Default value:
Disabled
CONFIG_FREERTOS_IDLE_TIME_BEFORE_SLEEP
configEXPECTED_IDLE_TIME_BEFORE_SLEEP
Found in: Component config > FreeRTOS > Kernel > CONFIG_FREERTOS_USE_TICKLESS_IDLE
FreeRTOS will enter light sleep mode if no tasks need to run for this number of ticks. You can enable PM_PROFILING feature in esp_pm components and dump the sleep status with esp_pm_dump_locks, if the proportion of rejected sleeps is too high, please increase this value to improve scheduling efficiency
- Symbol can be set when:
CONFIG_FREERTOS_USE_TICKLESS_IDLE is enabled
- Range:
from 2 to 4294967295
- Default value:
8 if CONFIG_PM_SLP_IRAM_OPT is disabled && CONFIG_FREERTOS_HZ > 200
3
CONFIG_FREERTOS_USE_APPLICATION_TASK_TAG
configUSE_APPLICATION_TASK_TAG
Found in: Component config > FreeRTOS > Kernel
Enables task tagging functionality and its associated API (see configUSE_APPLICATION_TASK_TAG documentation for more details).
- Default value:
Disabled
Port
Contains:
CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER
Wrap task functions
Found in: Component config > FreeRTOS > Port
If enabled, all FreeRTOS task functions will be enclosed in a wrapper function. If a task function mistakenly returns (i.e. does not delete), the call flow will return to the wrapper function. The wrapper function will then log an error and abort the application. This option is also required for GDB backtraces and C++ exceptions to work correctly inside top-level task functions.
- Symbol can be set when:
CONFIG_COMPILER_OPTIMIZATION_DEBUG is enabled || CONFIG_ESP_COREDUMP_ENABLE is enabled || CONFIG_ESP_SYSTEM_PANIC_GDBSTUB is enabled || CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME is enabled
- Default value:
Enabled
CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK
Enable stack overflow debug watchpoint
Found in: Component config > FreeRTOS > Port
FreeRTOS can check if a stack has overflown its bounds by checking either the value of the stack pointer or by checking the integrity of canary bytes. (See FREERTOS_CHECK_STACKOVERFLOW for more information.) These checks only happen on a context switch, and the situation that caused the stack overflow may already be long gone by then. This option will use the last debug memory watchpoint to allow breaking into the debugger (or panic'ing) as soon as any of the last 32 bytes on the stack of a task are overwritten. The side effect is that using gdb, you effectively have one hardware watchpoint less because the last one is overwritten as soon as a task switch happens.
Another consequence is that due to alignment requirements of the watchpoint, the usable stack size decreases by up to 60 bytes. This is because the watchpoint region has to be aligned to its size and the size for the stack watchpoint in IDF is 32 bytes.
This check only triggers if the stack overflow writes within 32 bytes near the end of the stack, rather than overshooting further, so it is worth combining this approach with one of the other stack overflow check methods.
When this watchpoint is hit, gdb will stop with a SIGTRAP message. When no JTAG OCD is attached, esp-idf will panic on an unhandled debug exception.
- Default value:
Disabled
CONFIG_FREERTOS_TLSP_DELETION_CALLBACKS
Enable thread local storage pointers deletion callbacks
Found in: Component config > FreeRTOS > Port
ESP-IDF provides users with the ability to free TLSP memory by registering TLSP deletion callbacks. These callbacks are automatically called by FreeRTOS when a task is deleted. When this option is turned on, the memory reserved for TLSPs in the TCB is doubled to make space for storing the deletion callbacks. If the user does not wish to use TLSP deletion callbacks then this option could be turned off to save space in the TCB memory.
- Symbol can be set when:
- Default value:
Enabled
CONFIG_FREERTOS_TASK_PRE_DELETION_HOOK
Enable task pre-deletion hook
Found in: Component config > FreeRTOS > Port
Enable this option to make FreeRTOS call a user provided hook function right before it deletes a task (i.e., frees/releases a dynamically/statically allocated task's memory). This is useful if users want to know when a task is actually deleted (in case the task's deletion is delegated to the IDLE task).
If this config option is enabled, users must define a
void vTaskPreDeletionHook( void \* pxTCB )hook function in their application.
- Default value:
Disabled
CONFIG_FREERTOS_ISR_STACKSIZE
ISR stack size
Found in: Component config > FreeRTOS > Port
The interrupt handlers have their own stack. The size of the stack can be defined here. Each processor has its own stack, so the total size occupied will be twice this.
- Range:
from 2096 to 32768 if CONFIG_ESP_COREDUMP_ENABLE is enabled
from 1536 to 32768
- Default value:
2096 if CONFIG_ESP_COREDUMP_ENABLE is enabled
1536
CONFIG_FREERTOS_INTERRUPT_BACKTRACE
Enable backtrace from interrupt to task context
Found in: Component config > FreeRTOS > Port
If this option is enabled, interrupt stack frame will be modified to point to the code of the interrupted task as its return address. This helps the debugger (or the panic handler) show a backtrace from the interrupt to the task which was interrupted. This also works for nested interrupts: higher level interrupt stack can be traced back to the lower level interrupt. This option adds 4 instructions to the interrupt dispatching code.
- Default value:
Enabled
CONFIG_FREERTOS_CORETIMER
Tick timer source (Xtensa Only)
Found in: Component config > FreeRTOS > Port
FreeRTOS needs a timer with an associated interrupt to use as the main tick source to increase counters, run timers and do pre-emptive multitasking with. There are multiple timers available to do this, with different interrupt priorities.
Available options:
Timer 0 (int 6, level 1) (CONFIG_FREERTOS_CORETIMER_0)
Select this to use timer 0
Timer 1 (int 15, level 3) (CONFIG_FREERTOS_CORETIMER_1)
Select this to use timer 1
SYSTIMER 0 (level 1) (CONFIG_FREERTOS_CORETIMER_SYSTIMER_LVL1)
Select this to use systimer with the 1 interrupt priority.
SYSTIMER 0 (level 3) (CONFIG_FREERTOS_CORETIMER_SYSTIMER_LVL3)
Select this to use systimer with the 3 interrupt priority.
CONFIG_FREERTOS_RUN_TIME_STATS_CLK
Choose the clock source for run time stats
Found in: Component config > FreeRTOS > Port
Choose the clock source for FreeRTOS run time stats. Options are CPU0's CPU Clock or the ESP Timer. Both clock sources are 32 bits. The CPU Clock can run at a higher frequency hence provide a finer resolution but will overflow much quicker. Note that run time stats are only valid until the clock source overflows.
Available options:
Use ESP TIMER for run time stats (CONFIG_FREERTOS_RUN_TIME_STATS_USING_ESP_TIMER)
ESP Timer will be used as the clock source for FreeRTOS run time stats. The ESP Timer runs at a frequency of 1MHz regardless of Dynamic Frequency Scaling. Therefore the ESP Timer will overflow in approximately 4290 seconds.
Use CPU Clock for run time stats (CONFIG_FREERTOS_RUN_TIME_STATS_USING_CPU_CLK)
CPU Clock will be used as the clock source for the generation of run time stats. The CPU Clock has a frequency dependent on ESP_DEFAULT_CPU_FREQ_MHZ and Dynamic Frequency Scaling (DFS). Therefore the CPU Clock frequency can fluctuate between 80 to 240MHz. Run time stats generated using the CPU Clock represents the number of CPU cycles each task is allocated and DOES NOT reflect the amount of time each task runs for (as CPU clock frequency can change). If the CPU clock consistently runs at the maximum frequency of 240MHz, it will overflow in approximately 17 seconds.
CONFIG_FREERTOS_IN_IRAM
Place FreeRTOS functions in IRAM
Found in: Component config > FreeRTOS > Port
Place FreeRTOS functions in IRAM for better performance. By default, FreeRTOS functions are placed in Flash to save IRAM. Enable this option if you need maximum performance for FreeRTOS operations.
Note: This option increases IRAM usage.
- Default value:
Disabled
CONFIG_FREERTOS_PLACE_ISR_FUNCTIONS_INTO_FLASH
Place FreeRTOS functions called from ISR context into Flash
Found in: Component config > FreeRTOS > Port
When enabled additional FreeRTOS functions which maybe called from an ISR context are also placed in Flash, thus freeing up more IRAM. This option is only applicable when the SPI_FLASH_AUTO_SUSPEND feature is supported.
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled
- Default value:
Disabled
CONFIG_FREERTOS_CHECK_PORT_CRITICAL_COMPLIANCE
Tests compliance with Vanilla FreeRTOS port*_CRITICAL calls
Found in: Component config > FreeRTOS > Port
If enabled, context of port*_CRITICAL calls (ISR or Non-ISR) would be checked to be in compliance with Vanilla FreeRTOS. e.g Calling port*_CRITICAL from ISR context would cause assert failure
- Default value:
Disabled
CONFIG_FREERTOS_PORT_THREAD_SAFE_CLAIM
Enable xPortThreadSafeClaim/xPortThreadSafeDisclaim APIs
Found in: Component config > FreeRTOS > Port
Enables the xPortThreadSafeClaim() and xPortThreadSafeDisclaim() APIs, which allow a caller to declare that it has already ensured thread safety (e.g. by disabling interrupts and stalling all other cores), causing subsequent vPortEnterCritical/vPortExitCritical calls to become no-ops for the duration of the claim.
This feature adds a branch check to every port-layer critical-section enter/exit path. On chips with a hardware branch predictor (SOC_BRANCH_PREDICTOR_SUPPORTED) the branch is predicted-not-taken and has negligible overhead. On older chips without a branch predictor the branch has a measurable per-critical-section cost, so this option defaults to disabled.
- Default value:
Enabled
Extra
Contains:
CONFIG_FREERTOS_TASK_CREATE_ALLOW_EXT_MEM
Allow external memory as an argument to xTaskCreateStatic (READ HELP)
Found in: Component config > FreeRTOS > Extra
Accessing memory in PSRAM has certain restrictions, so task stacks allocated by xTaskCreate are by default allocated from internal RAM.
This option allows for passing memory allocated from SPIRAM to be passed to xTaskCreateStatic. This should only be used for tasks where the stack is never accessed while the cache is disabled.
Extra notes for ESP32:
Because some bits of the ESP32 code environment cannot be recompiled with the cache workaround, normally tasks cannot be safely run with their stack residing in external memory; for this reason xTaskCreate (and related task creation functions) always allocate stack in internal memory and xTaskCreateStatic will check if the memory passed to it is in internal memory. If you have a task that needs a large amount of stack and does not call on ROM code in any way (no direct calls, but also no Bluetooth/WiFi), you can try enable this to cause xTaskCreateStatic to allow tasks stack in external memory.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION is enabled
- Default value:
Enabled
CONFIG_FREERTOS_PLACE_TASK_STACKS_IN_EXT_RAM
Place dynamic task stacks in PSRAM by default
Found in: Component config > FreeRTOS > Extra > CONFIG_FREERTOS_TASK_CREATE_ALLOW_EXT_MEM
When enabled, task stacks allocated by xTaskCreate() / xTaskCreatePinnedToCore() are placed in PSRAM (with internal RAM as fallback). TCBs are still allocated from internal RAM.
Restrictions that still require user attention:
Flash operations cannot be called from tasks a PSRAM stack as they will run while cache is disabled. This includes all filesystem access and NVS. The recommended approach here is to use esp-flash-dispatcher,
idf.py add-dependency "espressif/esp_flash_dispatcher"
which automatically routes all flash API calls to a dedicated task placed in internal RAM.
Deep-sleep requests issued from a task with a PSRAM stack are rejected at runtime. Auto-light-sleep is unaffected because it runs from the idle task, whose stack is always in internal RAM.
Components that spawn tasks via xTaskCreate and require cache-disabled-safe stacks should use xTaskCreateWithCaps(..., MALLOC_CAP_INTERNAL) instead.
xTaskCreateStatic is unaffected; the caller always decides where the stack lives.
- Symbol can be set when:
CONFIG_FREERTOS_TASK_CREATE_ALLOW_EXT_MEM is enabled
- Default value:
Disabled
Hardware Abstraction Layer (HAL) and Low Level (LL)
Contains:
CONFIG_HAL_DEFAULT_ASSERTION_LEVEL
Default HAL assertion level
Found in: Component config > Hardware Abstraction Layer (HAL) and Low Level (LL)
Set the assert behavior / level for HAL component. HAL component assert level can be set separately, but the level can't exceed the system assertion level. e.g. If the system assertion is disabled, then the HAL assertion can't be enabled either. If the system assertion is enable, then the HAL assertion can still be disabled by this Kconfig option.
Available options:
Same as system assertion level (CONFIG_HAL_ASSERTION_EQUALS_SYSTEM)
Disabled (CONFIG_HAL_ASSERTION_DISABLE)
Silent (CONFIG_HAL_ASSERTION_SILENT)
Enabled (CONFIG_HAL_ASSERTION_ENABLE)
CONFIG_HAL_LOG_LEVEL
HAL layer log verbosity
Found in: Component config > Hardware Abstraction Layer (HAL) and Low Level (LL)
Specify how much output to see in HAL logs.
Available options:
No output (CONFIG_HAL_LOG_LEVEL_NONE)
Error (CONFIG_HAL_LOG_LEVEL_ERROR)
Warning (CONFIG_HAL_LOG_LEVEL_WARN)
Info (CONFIG_HAL_LOG_LEVEL_INFO)
Debug (CONFIG_HAL_LOG_LEVEL_DEBUG)
Verbose (CONFIG_HAL_LOG_LEVEL_VERBOSE)
CONFIG_HAL_WDT_USE_ROM_IMPL
Use ROM implementation of WDT HAL driver
Found in: Component config > Hardware Abstraction Layer (HAL) and Low Level (LL)
Enable this flag to use HAL functions from ROM instead of ESP-IDF.
If keeping this as "n" in your project, you will have less free IRAM. If making this as "y" in your project, you will increase free IRAM, but you will lose the possibility to debug this module, and some new features will be added and bugs will be fixed in the IDF source but cannot be synced to ROM.
- Default value:
Enabled
CONFIG_HAL_SYSTIMER_USE_ROM_IMPL
Use ROM implementation of SysTimer HAL driver
Found in: Component config > Hardware Abstraction Layer (HAL) and Low Level (LL)
Enable this flag to use HAL functions from ROM instead of ESP-IDF.
If keeping this as "n" in your project, you will have less free IRAM. If making this as "y" in your project, you will increase free IRAM, but you will lose the possibility to debug this module, and some new features will be added and bugs will be fixed in the IDF source but cannot be synced to ROM.
- Default value:
Enabled
CONFIG_HAL_GPIO_USE_ROM_IMPL
Use ROM implementation of GPIO HAL driver
Found in: Component config > Hardware Abstraction Layer (HAL) and Low Level (LL)
Enable this flag to use HAL functions from ROM when applicable instead of ESP-IDF.
If keeping this as "n" in your project, you will have less free IRAM. When compiling an application for a CPU that cannot access to the ROM memory, this option should be disabled.
- Default value:
Enabled
Heap memory debugging
Contains:
CONFIG_HEAP_CORRUPTION_DETECTION
Heap corruption detection
Found in: Component config > Heap memory debugging
Enable heap poisoning features to detect heap corruption caused by out-of-bounds access to heap memory.
See the "Heap Memory Debugging" page of the IDF documentation for a description of each level of heap corruption detection.
Available options:
Basic (no poisoning) (CONFIG_HEAP_POISONING_DISABLED)
Light impact (CONFIG_HEAP_POISONING_LIGHT)
Comprehensive (CONFIG_HEAP_POISONING_COMPREHENSIVE)
CONFIG_HEAP_TRACING_DEST
Heap tracing
Found in: Component config > Heap memory debugging
Enables the heap tracing API defined in esp_heap_trace.h.
This function causes a moderate increase in IRAM code side and a minor increase in heap function (malloc/free/realloc) CPU overhead, even when the tracing feature is not used. So it's best to keep it disabled unless tracing is being used.
Available options:
Disabled (CONFIG_HEAP_TRACING_OFF)
Standalone (CONFIG_HEAP_TRACING_STANDALONE)
Host-based (CONFIG_HEAP_TRACING_TOHOST)
CONFIG_HEAP_TRACE_HASH_MAP
Use hash map mechanism to access heap trace records
Found in: Component config > Heap memory debugging
Enable this flag to use a hash map to increase performance in handling heap trace records.
Heap trace standalone supports storing records as a list, or a list + hash map.
Using only a list takes less memory, but calls to 'free' will get slower as the list grows. This is particularly affected when using HEAP_TRACE_ALL mode.
By using a list + hash map, calls to 'free' remain fast, at the cost of additional memory to store the hash map.
- Symbol can be set when:
CONFIG_HEAP_TRACING_STANDALONE is enabled
- Default value:
Disabled
CONFIG_HEAP_TRACE_HASH_MAP_IN_EXT_RAM
Place hash map in external RAM
Found in: Component config > Heap memory debugging > CONFIG_HEAP_TRACE_HASH_MAP
When enabled this configuration forces the hash map to be placed in external RAM.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && CONFIG_HEAP_TRACE_HASH_MAP is enabled
- Default value:
Disabled
CONFIG_HEAP_TRACE_HASH_MAP_SIZE
The number of entries in the hash map
Found in: Component config > Heap memory debugging > CONFIG_HEAP_TRACE_HASH_MAP
Defines the number of entries in the heap trace hashmap. Each entry takes 8 bytes. The bigger this number is, the better the performance. Recommended range: 200 - 2000.
- Symbol can be set when:
CONFIG_HEAP_TRACE_HASH_MAP is enabled
- Default value:
512
CONFIG_HEAP_TRACING_STACK_DEPTH
Heap tracing stack depth
Found in: Component config > Heap memory debugging
Number of stack frames to save when tracing heap operation callers.
More stack frames uses more memory in the heap trace buffer (and slows down allocation), but can provide useful information.
- Symbol can be set when:
CONFIG_HEAP_TRACING is enabled
- Range:
from 0 to 0 if CONFIG_ESP_SYSTEM_USE_FRAME_POINTER is disabled
from 0 to 32
- Default value:
0 if CONFIG_ESP_SYSTEM_USE_FRAME_POINTER is disabled
2
CONFIG_HEAP_USE_HOOKS
Use allocation and free hooks
Found in: Component config > Heap memory debugging
Enable the user to implement function hooks triggered for each successful allocation and free.
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_COMPILER_KASAN
CONFIG_HEAP_TASK_TRACKING
Enable heap task tracking
Found in: Component config > Heap memory debugging
Enables tracking the task responsible for each heap allocation.
Note: Allocating or freeing memory or using the task tracking API will lead to a crash when the scheduler is not working (e.g, after calling vTaskSuspendAll).
CONFIG_HEAP_TRACK_DELETED_TASKS
Keep information about the memory usage of deleted tasks
Found in: Component config > Heap memory debugging > CONFIG_HEAP_TASK_TRACKING
When enabled, this configuration allows the user to keep trace of the memory usage of a task that has been deleted.
This allows the user to verify that no memory allocated within a task remains unfreed before terminating the task
Note that this feature cannot keep track of a task deletion if the task is allocated statically
- Symbol can be set when:
CONFIG_HEAP_TASK_TRACKING is enabled
- Default value:
Disabled
CONFIG_HEAP_ABORT_WHEN_ALLOCATION_FAILS
Abort if memory allocation fails
Found in: Component config > Heap memory debugging
When enabled, if a memory allocation operation fails it will cause a system abort.
- Default value:
Disabled
CONFIG_HEAP_TLSF_USE_ROM_IMPL
Use ROM implementation of heap tlsf library
Found in: Component config > Heap memory debugging
Enable this flag to use heap functions from ROM instead of ESP-IDF.
If keeping this as "n" in your project, you will have less free IRAM. If making this as "y" in your project, you will increase free IRAM, but you will lose the possibility to debug this module, and some new features will be added and bugs will be fixed in the IDF source but cannot be synced to ROM.
- Default value:
Enabled
CONFIG_HEAP_PLACE_FUNCTION_INTO_FLASH
Force the entire heap component to be placed in flash memory
Found in: Component config > Heap memory debugging
Enable this flag to save up RAM space by placing the heap component in the flash memory
Note that it is only safe to enable this configuration if no functions from esp_heap_caps.h or esp_heap_trace.h are called from IRAM ISR which runs when cache is disabled.
- Default value:
Disabled
Log
Contains:
CONFIG_LOG_VERSION
Log version
Found in: Component config > Log
Select the log version to be used by the ESP log component.
- "V1": This version integrates log formatting into the format string provided by the user.
Logs are processed and formatted during compile time, leading to a larger binary file. Example: ESP_LOGI("boot", "chip revision: v%d.%d", major, minor); Output: I (56) boot: chip revision: v3.0 Note: Log strings are stored in Flash with added formatting characters. Format string on flash: "[0;32mI (%lu) %s: chip revision: v%d.%d [0m"
- "V2": This version centralizes log formatting within the esp_log() function.
User-supplied format strings are stored without added formatting, reducing binary size. Example: ESP_LOGI("boot", "chip revision: v%d.%d", major, minor); Output: I (56) boot: chip revision: v3.0 Note: This version supports runtime configuration of formatting and is more flexible, logging from constrained environments (ex.: ISR, Startup, Cache disabled). It may consumes a bit more stack and affect performance. Format string on flash: "chip revision: v%d.%d"
Use V1 for minimal stack usage and simpler implementation. Use V2 for smaller binary sizes, more flexible log formatting, and advanced features like disabling colors or timestamps.
Available options:
V1 (CONFIG_LOG_VERSION_1)
Select this option to use Log V1. Recommended for projects with strict stack constraints or that prioritize performance over flexibility.
V2 (CONFIG_LOG_VERSION_2)
Select this option to use Log V2. Recommended for projects that require smaller binaries, runtime log formatting configuration, or advanced logging features.
Log Level
Contains:
CONFIG_LOG_DEFAULT_LEVEL
Default log verbosity
Found in: Component config > Log > Log Level
Specify how much output to see in logs by default. You can set lower verbosity level at runtime using esp_log_level_set() function if LOG_DYNAMIC_LEVEL_CONTROL is enabled.
By default, this setting limits which log statements are compiled into the program. For example, selecting "Warning" would mean that changing log level to "Debug" at runtime will not be possible. To allow increasing log level above the default at runtime, see the next option.
Available options:
No output (CONFIG_LOG_DEFAULT_LEVEL_NONE)
Error (CONFIG_LOG_DEFAULT_LEVEL_ERROR)
Warning (CONFIG_LOG_DEFAULT_LEVEL_WARN)
Info (CONFIG_LOG_DEFAULT_LEVEL_INFO)
Debug (CONFIG_LOG_DEFAULT_LEVEL_DEBUG)
Verbose (CONFIG_LOG_DEFAULT_LEVEL_VERBOSE)
CONFIG_LOG_MAXIMUM_LEVEL
Maximum log verbosity
Found in: Component config > Log > Log Level
This config option sets the highest log verbosity that it's possible to select at runtime by calling esp_log_level_set(). This level may be higher than the default verbosity level which is set when the app starts up.
This can be used enable debugging output only at a critical point, for a particular tag, or to minimize startup time but then enable more logs once the firmware has loaded.
Note that increasing the maximum available log level will increase the firmware binary size.
This option only applies to logging from the app, the bootloader log level is fixed at compile time to the separate "Bootloader log verbosity" setting.
Available options:
Same as default (CONFIG_LOG_MAXIMUM_EQUALS_DEFAULT)
Error (CONFIG_LOG_MAXIMUM_LEVEL_ERROR)
Warning (CONFIG_LOG_MAXIMUM_LEVEL_WARN)
Info (CONFIG_LOG_MAXIMUM_LEVEL_INFO)
Debug (CONFIG_LOG_MAXIMUM_LEVEL_DEBUG)
Verbose (CONFIG_LOG_MAXIMUM_LEVEL_VERBOSE)
Level Settings
Contains:
CONFIG_LOG_MASTER_LEVEL
Enable global master log level
Found in: Component config > Log > Log Level > Level Settings
Enables an additional global "master" log level check that occurs before a log tag cache lookup. This is useful if you want to compile in a lot of logs that are selectable at runtime, but avoid the performance hit during periods where you don't want log output.
Examples include remote log forwarding, or disabling logs during a time-critical or CPU-intensive section and re-enabling them later. Results in larger program size depending on number of logs compiled in.
If enabled, defaults to LOG_DEFAULT_LEVEL and can be set using esp_log_set_level_master(). This check takes precedence over ESP_LOG_LEVEL_LOCAL.
- Default value:
Disabled
CONFIG_LOG_DYNAMIC_LEVEL_CONTROL
Enable dynamic log level changes at runtime
Found in: Component config > Log > Log Level > Level Settings
Enabling this option allows dynamic changes to the log level at runtime (using esp_log_level_set()), providing the ability to increase or decrease the log level during program execution. If disabled, the log level remains static once set at compile-time and calling esp_log_level_set() will have no effect. If binary size is a critical consideration and dynamic log level changes are not needed, consider disabling this option when LOG_TAG_LEVEL_IMPL_NONE=y to minimize program size.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_LOG_TAG_LEVEL_IMPL_LINKED_LIST
forcefully enabled by CONFIG_LOG_TAG_LEVEL_IMPL_CACHE_AND_LINKED_LIST
CONFIG_LOG_TAG_LEVEL_IMPL
Method of tag level checks
Found in: Component config > Log > Log Level > Level Settings
Choose the per-tag log level implementation for the log library. This functionality is used to enable/disable logs for a particular tag at run time. Applicable only for application logs (i.e., not bootloader logs).
Available options:
None (CONFIG_LOG_TAG_LEVEL_IMPL_NONE)
This option disables the ability to set the log level per tag. The ability to change the log level at runtime depends on LOG_DYNAMIC_LEVEL_CONTROL. If LOG_DYNAMIC_LEVEL_CONTROL is disabled, then changing the log level at runtime using esp_log_level_set() is not possible. This implementation is suitable for highly constrained environments.
Linked List (CONFIG_LOG_TAG_LEVEL_IMPL_LINKED_LIST)
Select this option to use the linked list-only implementation (no cache) for log level retrieval. This approach searches the linked list of all tags for the log level, which may be slower for a large number of tags but may have lower memory requirements than the CACHE approach. The linked list approach compares the whole strings of log tags for finding the log level.
Cache + Linked List (CONFIG_LOG_TAG_LEVEL_IMPL_CACHE_AND_LINKED_LIST)
Select this option to use a hybrid mode: cache in combination with the linked list for log tag level checks. This hybrid approach offers a balance between speed and memory usage.
The cache stores recently accessed log tags and their corresponding log levels, providing faster lookups for frequently used tags. The cache approach compares the tag pointers, which is faster than comparing the whole strings.
For less frequently used tags, the linked list is used to search for the log level, which may be slower for a large number of tags but has lower memory requirements compared to a full cache.
This hybrid approach aims to improve the efficiency of log level retrieval by combining the benefits of both cache and linked list implementations.
CONFIG_LOG_TAG_LEVEL_CACHE_IMPL
Cache implementation
Found in: Component config > Log > Log Level > Level Settings
The cache stores recently accessed log tags (address of tag) and their corresponding log levels, providing faster lookups for frequently used tags. Cache size can be configured using the LOG_TAG_LEVEL_IMPL_CACHE_SIZE option. The cache approach compares the tag pointers, which is faster than comparing the whole strings.
Available options:
Array (CONFIG_LOG_TAG_LEVEL_CACHE_ARRAY)
This option enables the use of a simple array-based cache implementation for storing and retrieving log tag levels. There is no additional code that reorders the cache for fast lookups. Suitable for projects where memory usage optimization is crucial and the simplicity of implementation is preferred.
Binary Min-Heap (CONFIG_LOG_TAG_LEVEL_CACHE_BINARY_MIN_HEAP)
This option enables the use of a binary min-heap-based cache implementation for efficient storage and retrieval of log tag levels. It does automatically optimizing cache for fast lookups. Suitable for projects where speed of lookup is critical and memory usage can accommodate the overhead of maintaining a binary min-heap structure.
CONFIG_LOG_TAG_LEVEL_IMPL_CACHE_SIZE
Log Tag Cache Size
Found in: Component config > Log > Log Level > Level Settings
This option sets the size of the cache used for log tag entries. The cache stores recently accessed log tags and their corresponding log levels, which helps improve the efficiency of log level retrieval. The value must be a power of 2 minus 1 (e.g., 1, 3, 7, 15, 31, 63, 127, 255, ...) to ensure proper cache behavior. For LOG_TAG_LEVEL_CACHE_ARRAY option the value can be any, without restrictions.
Note: A larger cache size can improve lookup performance for frequently used log tags but may consume more memory. Conversely, a smaller cache size reduces memory usage but may lead to more frequent cache evictions for less frequently used log tags.
- Symbol can be set when:
CONFIG_LOG_TAG_LEVEL_CACHE_ARRAY is enabled || CONFIG_LOG_TAG_LEVEL_CACHE_BINARY_MIN_HEAP is enabled
- Default value:
31
Format
Contains:
CONFIG_LOG_COLORS
Color
Found in: Component config > Log > Format
Enable ANSI terminal color codes. Logs (info, errors, warnings) will contain color codes. In order to view these, your terminal program must support ANSI color codes.
This is disabled by default, as colors are added in IDF Monitor. If you want to use new lines in the messages or you are using a different terminal program, you may want to enable this option.
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_LOG_COLORS_SUPPORT if CONFIG_LOG_VERSION_2 is enabled
CONFIG_LOG_COLORS_SUPPORT
Allow enabling color output at run time
Found in: Component config > Log > Format
Enables support for color codes in the esp_log() function. If CONFIG_LOG_COLORS is enabled, this option is always active. If CONFIG_LOG_COLORS is disabled, this option allows you to still handle color codes in specific files by defining ESP_LOG_COLOR_DISABLED as 0 before including esp_log.h.
Note that enabling this option may slightly increase IRAM usage due to additional color handling functionality. It provides flexibility to manage color output even when CONFIG_LOG_COLORS is turned off.
- Symbol can be set when:
CONFIG_LOG_VERSION_2 is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_LOG_COLORS if CONFIG_LOG_VERSION_2 is enabled
CONFIG_LOG_TIMESTAMP_SOURCE
Timestamp
Found in: Component config > Log > Format
Choose what sort of timestamp is displayed in the log output:
"None" - The log will only contain the actual log messages themselves without any time-related information. Avoiding timestamps can help conserve processing power and memory. It might useful when you perform log analysis or debugging, sometimes it's more straightforward to work with logs that lack timestamps, especially if the time of occurrence is not critical for understanding the issues.
"Milliseconds since boot" is calculated from the RTOS tick count multiplied by the tick period. This time will reset after a software reboot. e.g. (90000)
"System time (HH:MM:SS.sss)" is taken from POSIX time functions which use the chip's RTC and high resolution timers to maintain an accurate time. The system time is initialized to 0 on startup, it can be set with an SNTP sync, or with POSIX time functions. This time will not reset after a software reboot. e.g. (00:01:30.000)
"System time (YY-MM-DD HH:MM:SS.sss)" it is the same as the above, but also prints the date as well.
"Unix time in milliseconds" is the same as the two above, but in Unix time format and in milliseconds. e.g. (1718795571035).
NOTE: Currently this will not get used in logging from binary blobs (i.e WiFi & Bluetooth libraries), these will always print milliseconds since boot.
Available options:
None (CONFIG_LOG_TIMESTAMP_SOURCE_NONE)
Milliseconds Since Boot (CONFIG_LOG_TIMESTAMP_SOURCE_RTOS)
System Time (HH:MM:SS.sss) (CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM)
System Time (YY-MM-DD HH:MM:SS.sss) (CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM_FULL)
Unix time in milliseconds (CONFIG_LOG_TIMESTAMP_SOURCE_UNIX)
CONFIG_LOG_TIMESTAMP_SUPPORT
Allow enabling timestamp output at run time
Found in: Component config > Log > Format
Enables support for timestamp in the esp_log() function. If CONFIG_LOG_TIMESTAMP_SOURCE_NONE, this option allows you to still handle timestamp in specific files by defining ESP_LOG_TIMESTAMP_DISABLED as 0 before including esp_log.h.
Note that enabling this option may slightly increase IRAM usage due to additional timestamp handling functionality. It provides flexibility to manage timestamp output even when CONFIG_LOG_TIMESTAMP_SOURCE_NONE.
- Symbol can be set when:
CONFIG_LOG_VERSION_2 is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_LOG_TIMESTAMP_SOURCE_RTOS if CONFIG_LOG_VERSION_2 is enabled
forcefully enabled by CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM if CONFIG_LOG_VERSION_2 is enabled
forcefully enabled by CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM_FULL if CONFIG_LOG_VERSION_2 is enabled
forcefully enabled by CONFIG_LOG_TIMESTAMP_SOURCE_UNIX if CONFIG_LOG_VERSION_2 is enabled
Settings
Contains:
CONFIG_LOG_MODE
Log Mode
Found in: Component config > Log > Settings
Available options:
Text Log Mode (CONFIG_LOG_MODE_TEXT)
Enables text-based logging, where log messages are stored in a human-readable format. This mode is useful for development and debugging, as it allows logs to be easily read and interpreted without additional processing.
Binary Log Mode (CONFIG_LOG_MODE_BINARY)
Enables binary logging with host-side format string expansion. In this mode, the format argument of ESP_LOGx, ESP_EARLY_LOG, and ESP_DRAM_LOG macros is stored in a NOLOAD section, not included in the final binary file. This reduces flash usage by approximately 10% - 35%. The esp_log() function uses the binary log handler to output messages. Instead of sending the full log string, the chip transmits only the addresses of these strings (if present in the ELF file). If the format string cannot be found in the ELF file, the chip sends the entire string. The host-side monitor tool, which has access to the ELF file, reconstructs the log message using the format string. This reduces firmware size by eliminating format strings from flash memory and removing the usage of printf-like functions, potentially freeing up a few kilobytes of space. To further reduce firmware size, wrap string data with ESP_LOG_ATTR_STR.
CONFIG_LOG_API_CONSTRAINED_ENV_SAFE
Enable safe ESP_LOGx fallback in constrained environments (ISR, cache disabled)
Found in: Component config > Log
This option is only relevant on chips where ets_vprintf is NOT in ROM
When enabled, Log V2 routes ESP_DRAM_LOGx, ESP_EARLY_LOGx, and runtime constrained-environment log calls (ISR, cache disabled) through esp_log(), which uses esp_rom_vprintf for formatting.
When disabled, ESP_DRAM_LOGx and ESP_EARLY_LOGx expand directly to esp_rom_printf (a true ROM function with zero IRAM cost), bypassing esp_log(). Normal ESP_LOGx calls that happen to run in a constrained environment (ISR, cache disabled) will use the standard vprintf function instead of esp_rom_vprintf; if the standard vprintf resides in flash, such calls may crash. Use ESP_DRAM_LOGx for any logging that must work with cache disabled or from an ISR.
Disable this option to save ~1.2 KB of IRAM on memory-constrained devices. Enable it if you need ESP_LOGx to safely fall back to ROM-based printing in ISRs or with cache disabled, or if you need constrained-environment logs in binary log format.
- Symbol can be set when:
CONFIG_LOG_VERSION_2 is enabled && CONFIG_LOG_MODE_BINARY_EN is disabled
- Default value:
Enabled
CONFIG_LOG_IN_IRAM
Place logging functions in IRAM
Found in: Component config > Log
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_ESP_ROM_PRINT_IN_IRAM
LWIP
Contains:
CONFIG_LWIP_ENABLE
Enable LwIP stack
Found in: Component config > LWIP
Builds normally if selected. Excludes LwIP from build if unselected, even if it is a dependency of a component or application. Some applications can switch their IP stacks, e.g., when switching between chip and Linux targets (LwIP stack vs. Linux IP stack). Since the LwIP dependency cannot easily be excluded based on a Kconfig option, it has to be a dependency in all cases. This switch allows the LwIP stack to be built selectively, even if it is a dependency.
- Default value:
Enabled
CONFIG_LWIP_LOCAL_HOSTNAME
Local netif hostname
Found in: Component config > LWIP
The default name this device will report to other devices on the network. Could be updated at runtime with esp_netif_set_hostname()
- Default value:
"espressif"
CONFIG_LWIP_TCPIP_TASK_PRIO
LWIP TCP/IP Task Priority
Found in: Component config > LWIP
LWIP tcpip task priority. In case of high throughput, this parameter could be changed up to (configMAX_PRIORITIES-1).
- Range:
from 1 to 24
- Default value:
18
CONFIG_LWIP_TCPIP_CORE_LOCKING
Enable tcpip core locking
Found in: Component config > LWIP
If Enable tcpip core locking,Creates a global mutex that is held during TCPIP thread operations.Can be locked by client code to perform lwIP operations without changing into TCPIP thread using callbacks. See LOCK_TCPIP_CORE() and UNLOCK_TCPIP_CORE().
If disable tcpip core locking,TCP IP will perform tasks through context switching
- Default value:
Disabled
CONFIG_LWIP_TCPIP_CORE_LOCKING_INPUT
Enable tcpip core locking input
Found in: Component config > LWIP > CONFIG_LWIP_TCPIP_CORE_LOCKING
when LWIP_TCPIP_CORE_LOCKING is enabled, this lets tcpip_input() grab the mutex for input packets as well, instead of allocating a message and passing it to tcpip_thread.
- Symbol can be set when:
CONFIG_LWIP_TCPIP_CORE_LOCKING is enabled
- Default value:
Disabled
CONFIG_LWIP_CHECK_THREAD_SAFETY
Checks that lwip API runs in expected context
Found in: Component config > LWIP
Enable to check that the project does not violate lwip thread safety. If enabled, all lwip functions that require thread awareness run an assertion to verify that the TCP/IP core functionality is either locked or accessed from the correct thread.
- Default value:
Disabled
CONFIG_LWIP_DNS_SUPPORT_MDNS_QUERIES
Enable mDNS queries in resolving host name
Found in: Component config > LWIP
If this feature is enabled, standard API such as gethostbyname support .local addresses by sending one shot multicast mDNS query
- Default value:
Enabled
CONFIG_LWIP_L2_TO_L3_COPY
Enable copy between Layer2 and Layer3 packets
Found in: Component config > LWIP
If this feature is enabled, all traffic from layer2(WIFI Driver) will be copied to a new buffer before sending it to layer3(LWIP stack), freeing the layer2 buffer. Please be notified that the total layer2 receiving buffer is fixed and ESP32 currently supports 25 layer2 receiving buffer, when layer2 buffer runs out of memory, then the incoming packets will be dropped in hardware. The layer3 buffer is allocated from the heap, so the total layer3 receiving buffer depends on the available heap size, when heap runs out of memory, no copy will be sent to layer3 and packet will be dropped in layer2. Please make sure you fully understand the impact of this feature before enabling it.
- Default value:
Disabled
CONFIG_LWIP_IRAM_OPTIMIZATION
Enable LWIP IRAM optimization
Found in: Component config > LWIP
If this feature is enabled, some functions relating to RX/TX in LWIP will be put into IRAM, it can improve UDP/TCP throughput by >10% for single core mode, it doesn't help too much for dual core mode. On the other hand, it needs about 10KB IRAM for these optimizations.
If this feature is disabled, all lwip functions will be put into FLASH.
- Default value:
Disabled
CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION
Enable LWIP IRAM optimization for TCP part
Found in: Component config > LWIP
If this feature is enabled, some tcp part functions relating to RX/TX in LWIP will be put into IRAM, it can improve TCP throughput. On the other hand, it needs about 17KB IRAM for these optimizations.
- Default value:
Disabled
CONFIG_LWIP_TIMERS_ONDEMAND
Enable LWIP Timers on demand
Found in: Component config > LWIP
If this feature is enabled, IGMP and MLD6 timers will be activated only when joining groups or receiving QUERY packets.
This feature will reduce the power consumption for applications which do not use IGMP and MLD6.
- Default value:
Enabled
CONFIG_LWIP_ND6
LWIP NDP6 Enable/Disable
Found in: Component config > LWIP
This option is used to disable the Network Discovery Protocol (NDP) if it is not required. Please use this option with caution, as the NDP is essential for IPv6 functionality within a local network.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
Enabled
CONFIG_LWIP_ND6_SUPPORT_STATIC_ENTRIES
Enable API for static IPv6 neighbor cache entries
Found in: Component config > LWIP > CONFIG_LWIP_ND6
Enable APIs to add/remove permanent IPv6->MAC neighbor cache entries that bypass Neighbor Discovery (no NS/NA). IPv6 counterpart of ETHARP_SUPPORT_STATIC_ENTRIES.
- Symbol can be set when:
CONFIG_LWIP_ND6 is enabled
- Default value:
Disabled
CONFIG_LWIP_FORCE_ROUTER_FORWARDING
LWIP Force Router Forwarding Enable/Disable
Found in: Component config > LWIP > CONFIG_LWIP_ND6
This option is used to set the the router flag for the NA packets. When enabled, the router flag in NA packet will always set to 1, otherwise, never set router flag for NA packets.
- Symbol can be set when:
CONFIG_LWIP_ND6 is enabled
- Default value:
Disabled
CONFIG_LWIP_MAX_SOCKETS
Max number of open sockets
Found in: Component config > LWIP
The practical maximum limit is determined by available heap memory at runtime.
Sockets take up a certain amount of memory, and allowing fewer sockets to be open at the same time conserves memory. Specify the maximum amount of sockets here. The valid value is from 1 to 253. If using value above 61, update CMakeLists defining FD_SETSIZE to the number of sockets used plus the expected open files (minimum of +3 for stdout, stderr and stdin).
- Range:
from 1 to 253
- Default value:
10
CONFIG_LWIP_USE_ONLY_LWIP_SELECT
Support LWIP socket select() only (DEPRECATED)
Found in: Component config > LWIP
This option is deprecated. Do not use this option, use VFS_SUPPORT_SELECT instead.
- Default value:
Disabled
CONFIG_LWIP_SO_LINGER
Enable SO_LINGER processing
Found in: Component config > LWIP
Enabling this option allows SO_LINGER processing. l_onoff = 1,l_linger can set the timeout.
If l_linger=0, When a connection is closed, TCP will terminate the connection. This means that TCP will discard any data packets stored in the socket send buffer and send an RST to the peer.
If l_linger!=0,Then closesocket() calls to block the process until the remaining data packets has been sent or timed out.
- Default value:
Disabled
CONFIG_LWIP_SO_REUSE
Enable SO_REUSEADDR option
Found in: Component config > LWIP
Enabling this option allows binding to a port which remains in TIME_WAIT.
- Default value:
Enabled
CONFIG_LWIP_SO_REUSE_RXTOALL
SO_REUSEADDR copies broadcast/multicast to all matches
Found in: Component config > LWIP > CONFIG_LWIP_SO_REUSE
Enabling this option means that any incoming broadcast or multicast packet will be copied to all of the local sockets that it matches (may be more than one if SO_REUSEADDR is set on the socket.)
This increases memory overhead as the packets need to be copied, however they are only copied per matching socket. You can safely disable it if you don't plan to receive broadcast or multicast traffic on more than one socket at a time.
- Symbol can be set when:
CONFIG_LWIP_SO_REUSE is enabled
- Default value:
Enabled
CONFIG_LWIP_SO_RCVBUF
Enable SO_RCVBUF option
Found in: Component config > LWIP
Enabling this option allows checking for available data on a netconn.
- Default value:
Disabled
CONFIG_LWIP_NETBUF_RECVINFO
Enable IP_PKTINFO option
Found in: Component config > LWIP
Enabling this option allows checking for the destination address of a received IPv4 Packet.
- Default value:
Disabled
CONFIG_LWIP_IP_DEFAULT_TTL
The value for Time-To-Live used by transport layers
Found in: Component config > LWIP
Set value for Time-To-Live used by transport layers.
- Range:
from 1 to 255
- Default value:
64
CONFIG_LWIP_IP4_FRAG
Enable fragment outgoing IP4 packets
Found in: Component config > LWIP
Enabling this option allows fragmenting outgoing IP4 packets if their size exceeds MTU.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Default value:
Enabled
CONFIG_LWIP_IP6_FRAG
Enable fragment outgoing IP6 packets
Found in: Component config > LWIP
Enabling this option allows fragmenting outgoing IP6 packets if their size exceeds MTU.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
Enabled
CONFIG_LWIP_IP4_REASSEMBLY
Enable reassembly incoming fragmented IP4 packets
Found in: Component config > LWIP
Enabling this option allows reassemblying incoming fragmented IP4 packets.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Default value:
Disabled
CONFIG_LWIP_IP6_REASSEMBLY
Enable reassembly incoming fragmented IP6 packets
Found in: Component config > LWIP
Enabling this option allows reassemblying incoming fragmented IP6 packets.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
Disabled
CONFIG_LWIP_IP_REASS_MAX_PBUFS
The maximum amount of pbufs waiting to be reassembled
Found in: Component config > LWIP
Set the maximum amount of pbufs waiting to be reassembled.
- Range:
from 10 to 100
- Default value:
10
CONFIG_LWIP_IPV6_DUP_DETECT_ATTEMPTS
Number of duplicate address detection attempts
Found in: Component config > LWIP
Set the number of duplicate address detection attempts.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Range:
from 0 to 7
- Default value:
1
CONFIG_LWIP_IP_FORWARD
Enable IP forwarding
Found in: Component config > LWIP
Enabling this option allows packets forwarding across multiple interfaces.
- Default value:
Disabled
CONFIG_LWIP_IPV4_NAPT
Enable NAT
Found in: Component config > LWIP > CONFIG_LWIP_IP_FORWARD
Enabling this option allows Network Address and Port Translation.
- Symbol can be set when:
CONFIG_LWIP_IP_FORWARD is enabled
- Default value:
Disabled
CONFIG_LWIP_IPV4_NAPT_PORTMAP
Enable NAT Port Mapping
Found in: Component config > LWIP > CONFIG_LWIP_IP_FORWARD > CONFIG_LWIP_IPV4_NAPT
Enabling this option allows Port Forwarding or Port mapping.
- Symbol can be set when:
CONFIG_LWIP_IPV4_NAPT is enabled
- Default value:
Enabled
CONFIG_LWIP_STATS
Enable LWIP statistics
Found in: Component config > LWIP
Enabling this option allows LWIP statistics
- Default value:
Disabled
CONFIG_LWIP_ESP_GRATUITOUS_ARP
Send gratuitous ARP periodically
Found in: Component config > LWIP
Enable this option allows to send gratuitous ARP periodically.
This option solve the compatibility issues.If the ARP table of the AP is old, and the AP doesn't send ARP request to update it's ARP table, this will lead to the STA sending IP packet fail. Thus we send gratuitous ARP periodically to let AP update it's ARP table.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Default value:
Enabled
CONFIG_LWIP_GARP_TMR_INTERVAL
GARP timer interval(seconds)
Found in: Component config > LWIP > CONFIG_LWIP_ESP_GRATUITOUS_ARP
Set the timer interval for gratuitous ARP. The default value is 60s
- Symbol can be set when:
CONFIG_LWIP_ESP_GRATUITOUS_ARP is enabled
- Default value:
60
CONFIG_LWIP_ESP_MLDV6_REPORT
Send mldv6 report periodically
Found in: Component config > LWIP
Enable this option allows to send mldv6 report periodically.
This option solve the issue that failed to receive multicast data. Some routers fail to forward multicast packets. To solve this problem, send multicast mdlv6 report to routers regularly.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
Enabled
CONFIG_LWIP_MLDV6_TMR_INTERVAL
mldv6 report timer interval(seconds)
Found in: Component config > LWIP > CONFIG_LWIP_ESP_MLDV6_REPORT
Set the timer interval for mldv6 report. The default value is 30s
- Symbol can be set when:
CONFIG_LWIP_ESP_MLDV6_REPORT is enabled
- Default value:
40
CONFIG_LWIP_TCPIP_RECVMBOX_SIZE
TCPIP task receive mail box size
Found in: Component config > LWIP
Set TCPIP task receive mail box size. Generally bigger value means higher throughput but more memory. The value should be bigger than UDP/TCP mail box size.
- Range:
from 6 to 64 if CONFIG_LWIP_WND_SCALE is disabled
from 6 to 1024 if CONFIG_LWIP_WND_SCALE is enabled
- Default value:
32
CONFIG_LWIP_DHCP_CHECKS_OFFERED_ADDRESS
Choose how DHCP validates offered IP
Found in: Component config > LWIP
Choose the preferred way of DHCP client to check if the offered address is available: * Using Address Conflict Detection (ACD) module assures that the offered IP address is properly probed and announced before binding in DHCP. This conforms to RFC5227, but takes several seconds. * Using ARP check, we only send two ARP requests to check for replies. This process lasts 1 - 2 seconds. * No conflict detection: We directly bind the offered address.
Available options:
DHCP provides simple ARP check (CONFIG_LWIP_DHCP_DOES_ARP_CHECK)
DHCP provides Address Conflict Detection (ACD) (CONFIG_LWIP_DHCP_DOES_ACD_CHECK)
DHCP does not detect conflict on the offered IP (CONFIG_LWIP_DHCP_DOES_NOT_CHECK_OFFERED_IP)
CONFIG_LWIP_DHCP_DISABLE_CLIENT_ID
DHCP: Disable Use of HW address as client identification
Found in: Component config > LWIP
This option could be used to disable DHCP client identification with its MAC address. (Client id is used by DHCP servers to uniquely identify clients and are included in the DHCP packets as an option 61) Set this option to "y" in order to exclude option 61 from DHCP packets.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Default value:
Disabled
CONFIG_LWIP_DHCP_DISABLE_VENDOR_CLASS_ID
DHCP: Disable Use of vendor class identification
Found in: Component config > LWIP
This option could be used to disable DHCP client vendor class identification. Set this option to "y" in order to exclude option 60 from DHCP packets.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Default value:
Enabled
CONFIG_LWIP_DHCP_RESTORE_LAST_IP
DHCP: Restore last IP obtained from DHCP server
Found in: Component config > LWIP
When this option is enabled, DHCP client tries to re-obtain last valid IP address obtained from DHCP server. Last valid DHCP configuration is stored in nvs and restored after reset/power-up. If IP is still available, there is no need for sending discovery message to DHCP server and save some time.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Default value:
Disabled
CONFIG_LWIP_DHCP_OPTIONS_LEN
DHCP total option length
Found in: Component config > LWIP
Set total length of outgoing DHCP option msg. Generally bigger value means it can carry more options and values. If your code meets LWIP_ASSERT due to option value is too long. Please increase the LWIP_DHCP_OPTIONS_LEN value.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Range:
from 69 to 255
- Default value:
69 if CONFIG_LWIP_DHCP_DISABLE_VENDOR_CLASS_ID is enabled
109 if CONFIG_LWIP_DHCP_DISABLE_VENDOR_CLASS_ID is disabled
CONFIG_LWIP_NUM_NETIF_CLIENT_DATA
Number of clients store data in netif
Found in: Component config > LWIP
Number of clients that may store data in client_data member array of struct netif.
- Range:
from 0 to 256
- Default value:
0
CONFIG_LWIP_DHCP_COARSE_TIMER_SECS
DHCP coarse timer interval(s)
Found in: Component config > LWIP
Set DHCP coarse interval in seconds. A higher value will be less precise but cost less power consumption.
- Range:
from 1 to 10
- Default value:
1
DHCP server
Contains:
CONFIG_LWIP_DHCPS
DHCPS: Enable IPv4 Dynamic Host Configuration Protocol Server (DHCPS)
Found in: Component config > LWIP > DHCP server
Enabling this option allows the device to run the DHCP server (to dynamically assign IPv4 addresses to clients).
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Default value:
Enabled
CONFIG_LWIP_DHCPS_REPORT_CLIENT_HOSTNAME
DHCPS: Report client hostname in assigned-IP event
Found in: Component config > LWIP > DHCP server > CONFIG_LWIP_DHCPS
When enabled, the DHCP server parses client hostname (DHCP option 12) and makes it available via IP_EVENT_ASSIGNED_IP_TO_CLIENT. This adds a small amount of RAM usage per lease to store the hostname.
- Symbol can be set when:
CONFIG_LWIP_DHCPS is enabled
- Default value:
Enabled
CONFIG_LWIP_DHCPS_LEASE_UNIT
Multiplier for lease time, in seconds
Found in: Component config > LWIP > DHCP server > CONFIG_LWIP_DHCPS
The DHCP server is calculating lease time multiplying the sent and received times by this number of seconds per unit. The default is 60, that equals one minute.
- Symbol can be set when:
CONFIG_LWIP_DHCPS is enabled
- Range:
from 1 to 3600
- Default value:
60
CONFIG_LWIP_DHCPS_MAX_STATION_NUM
Maximum number of stations
Found in: Component config > LWIP > DHCP server > CONFIG_LWIP_DHCPS
The maximum number of DHCP clients that are connected to the server. After this number is exceeded, DHCP server removes of the oldest device from it's address pool, without notification.
- Symbol can be set when:
CONFIG_LWIP_DHCPS is enabled
- Range:
from 1 to 64
- Default value:
8
CONFIG_LWIP_DHCPS_MAX_HOSTNAME_LEN
Maximum client hostname length stored by DHCPS
Found in: Component config > LWIP > DHCP server
Maximum number of bytes stored per-client for DHCP option 12 (hostname), including the terminating null when used in esp-netif events. Longer hostnames will be truncated.
- Symbol can be set when:
CONFIG_LWIP_DHCPS_REPORT_CLIENT_HOSTNAME is enabled
- Range:
from 1 to 255
- Default value:
64
CONFIG_LWIP_DHCPS_STATIC_ENTRIES
Enable ARP static entries
Found in: Component config > LWIP > DHCP server
Enabling this option allows DHCP server to support temporary static ARP entries for DHCP Client. This will help the DHCP server to send the DHCP OFFER and DHCP ACK using IP unicast.
- Symbol can be set when:
CONFIG_LWIP_DHCPS is enabled
- Default value:
Enabled
CONFIG_LWIP_AUTOIP
Enable IPV4 Link-Local Addressing (AUTOIP)
Found in: Component config > LWIP
Enabling this option allows the device to self-assign an address in the 169.256/16 range if none is assigned statically or via DHCP.
See RFC 3927.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled
- Default value:
Disabled
Contains:
CONFIG_LWIP_AUTOIP_TRIES
DHCP Probes before self-assigning IPv4 LL address
Found in: Component config > LWIP > CONFIG_LWIP_AUTOIP
DHCP client will send this many probes before self-assigning a link local address.
From LWIP help: "This can be set as low as 1 to get an AutoIP address very quickly, but you should be prepared to handle a changing IP address when DHCP overrides AutoIP." (In the case of ESP-IDF, this means multiple SYSTEM_EVENT_STA_GOT_IP events.)
- Symbol can be set when:
CONFIG_LWIP_AUTOIP is enabled
- Range:
from 1 to 100
- Default value:
2
CONFIG_LWIP_AUTOIP_MAX_CONFLICTS
Max IP conflicts before rate limiting
Found in: Component config > LWIP > CONFIG_LWIP_AUTOIP
If the AUTOIP functionality detects this many IP conflicts while self-assigning an address, it will go into a rate limited mode.
- Symbol can be set when:
CONFIG_LWIP_AUTOIP is enabled
- Range:
from 1 to 100
- Default value:
9
CONFIG_LWIP_AUTOIP_RATE_LIMIT_INTERVAL
Rate limited interval (seconds)
Found in: Component config > LWIP > CONFIG_LWIP_AUTOIP
If rate limiting self-assignment requests, wait this long between each request.
- Symbol can be set when:
CONFIG_LWIP_AUTOIP is enabled
- Range:
from 5 to 120
- Default value:
20
CONFIG_LWIP_IPV4
Enable IPv4
Found in: Component config > LWIP
Enable IPv4 stack. If you want to use IPv6 only TCP/IP stack, disable this.
- Default value:
Enabled
CONFIG_LWIP_IPV6
Enable IPv6
Found in: Component config > LWIP
Enable IPv6 function. If not use IPv6 function, set this option to n. If disabling LWIP_IPV6 then some other components (asio) will no longer be available.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_NAN_SYNC_ENABLE
forcefully enabled by CONFIG_WIFI_RMT_NAN_SYNC_ENABLE
CONFIG_LWIP_IPV6_AUTOCONFIG
Enable IPV6 stateless address autoconfiguration (SLAAC)
Found in: Component config > LWIP > CONFIG_LWIP_IPV6
Enabling this option allows the devices to IPV6 stateless address autoconfiguration (SLAAC).
See RFC 4862.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
Disabled
CONFIG_LWIP_IPV6_NUM_ADDRESSES
Number of IPv6 addresses on each network interface
Found in: Component config > LWIP > CONFIG_LWIP_IPV6
The maximum number of IPv6 addresses on each interface. Any additional addresses will be discarded.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
3
CONFIG_LWIP_IPV6_FORWARD
Enable IPv6 forwarding between interfaces
Found in: Component config > LWIP > CONFIG_LWIP_IPV6
Forwarding IPv6 packets between interfaces is only required when acting as a router.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
Disabled
CONFIG_LWIP_IPV6_RDNSS_MAX_DNS_SERVERS
Use IPv6 Router Advertisement Recursive DNS Server Option
Found in: Component config > LWIP
Use IPv6 Router Advertisement Recursive DNS Server Option (as per RFC 6106) to copy a defined maximum number of DNS servers to the DNS module. Set this option to a number of desired DNS servers advertised in the RA protocol. This feature is disabled when set to 0.
- Symbol can be set when:
CONFIG_LWIP_IPV6_AUTOCONFIG is enabled
- Default value:
0
CONFIG_LWIP_IPV6_DHCP6
Enable DHCPv6 stateless address autoconfiguration
Found in: Component config > LWIP
Enable DHCPv6 for IPv6 stateless address autoconfiguration. Note that the dhcpv6 client has to be started using dhcp6_enable_stateless(netif); Note that the stateful address autoconfiguration is not supported.
- Symbol can be set when:
CONFIG_LWIP_IPV6_AUTOCONFIG is enabled
- Default value:
Disabled
CONFIG_LWIP_NETIF_STATUS_CALLBACK
Enable status callback for network interfaces
Found in: Component config > LWIP
Enable callbacks when the network interface is up/down and addresses are changed.
- Default value:
Disabled
CONFIG_LWIP_NETIF_LINK_CALLBACK
Enable link callback for network interfaces
Found in: Component config > LWIP
Enable callbacks when the physical network link is up/down.
- Default value:
Disabled
CONFIG_LWIP_NETIF_LOOPBACK
Support per-interface loopback
Found in: Component config > LWIP
Enabling this option means that if a packet is sent with a destination address equal to the interface's own IP address, it will "loop back" and be received by this interface. Disabling this option disables support of loopback interface in lwIP
- Default value:
Enabled
Contains:
CONFIG_LWIP_LOOPBACK_MAX_PBUFS
Max queued loopback packets per interface
Found in: Component config > LWIP > CONFIG_LWIP_NETIF_LOOPBACK
Configure the maximum number of packets which can be queued for loopback on a given interface. Reducing this number may cause packets to be dropped, but will avoid filling memory with queued packet data.
- Symbol can be set when:
CONFIG_LWIP_NETIF_LOOPBACK is enabled
- Range:
from 0 to 16
- Default value:
8
TCP
Contains:
CONFIG_LWIP_MAX_ACTIVE_TCP
Maximum active TCP Connections
Found in: Component config > LWIP > TCP
The maximum number of simultaneously active TCP connections. The practical maximum limit is determined by available heap memory at runtime.
Changing this value by itself does not substantially change the memory usage of LWIP, except for preventing new TCP connections after the limit is reached.
- Range:
from 1 to 1024
- Default value:
16
CONFIG_LWIP_MAX_LISTENING_TCP
Maximum listening TCP Connections
Found in: Component config > LWIP > TCP
The maximum number of simultaneously listening TCP connections. The practical maximum limit is determined by available heap memory at runtime.
Changing this value by itself does not substantially change the memory usage of LWIP, except for preventing new listening TCP connections after the limit is reached.
- Range:
from 1 to 1024
- Default value:
16
CONFIG_LWIP_TCP_HIGH_SPEED_RETRANSMISSION
TCP high speed retransmissions
Found in: Component config > LWIP > TCP
Speed up the TCP retransmission interval. If disabled, it is recommended to change the number of SYN retransmissions to 6, and TCP initial rto time to 3000.
- Default value:
Enabled
CONFIG_LWIP_TCP_MAXRTX
Maximum number of retransmissions of data segments
Found in: Component config > LWIP > TCP
Set maximum number of retransmissions of data segments.
- Range:
from 3 to 12
- Default value:
12
CONFIG_LWIP_TCP_SYNMAXRTX
Maximum number of retransmissions of SYN segments
Found in: Component config > LWIP > TCP
Set maximum number of retransmissions of SYN segments.
- Range:
from 3 to 12
- Default value:
6 if CONFIG_LWIP_TCP_HIGH_SPEED_RETRANSMISSION is disabled
12 if CONFIG_LWIP_TCP_HIGH_SPEED_RETRANSMISSION is enabled
CONFIG_LWIP_TCP_MSS
Maximum Segment Size (MSS)
Found in: Component config > LWIP > TCP
Set maximum segment size for TCP transmission.
Can be set lower to save RAM, the default value 1460(ipv4)/1440(ipv6) will give best throughput. IPv4 TCP_MSS Range: 576 <= TCP_MSS <= 1460 IPv6 TCP_MSS Range: 1220<= TCP_MSS <= 1440
- Range:
from 536 to 1460
- Default value:
1440
CONFIG_LWIP_TCP_TMR_INTERVAL
TCP timer interval(ms)
Found in: Component config > LWIP > TCP
Set TCP timer interval in milliseconds.
Can be used to speed connections on bad networks. A lower value will redeliver unacked packets faster.
- Default value:
250
CONFIG_LWIP_TCP_MSL
Maximum segment lifetime (MSL)
Found in: Component config > LWIP > TCP
Set maximum segment lifetime in milliseconds.
- Default value:
60000
CONFIG_LWIP_TCP_FIN_WAIT_TIMEOUT
Maximum FIN segment lifetime
Found in: Component config > LWIP > TCP
Set maximum segment lifetime in milliseconds.
- Default value:
20000
CONFIG_LWIP_TCP_SND_BUF_DEFAULT
Default send buffer size
Found in: Component config > LWIP > TCP
Set default send buffer size for new TCP sockets.
Per-socket send buffer size can be changed at runtime with lwip_setsockopt(s, TCP_SNDBUF, ...).
This value must be at least 2x the MSS size, and the default is 4x the default MSS size.
Setting a smaller default SNDBUF size can save some RAM, but will decrease performance.
- Range:
from 2440 to 65535 if CONFIG_LWIP_WND_SCALE is disabled
from 2440 to 1024000 if CONFIG_LWIP_WND_SCALE is enabled
- Default value:
5760
CONFIG_LWIP_TCP_WND_DEFAULT
Default receive window size
Found in: Component config > LWIP > TCP
Set default TCP receive window size for new TCP sockets.
Per-socket receive window size can be changed at runtime with lwip_setsockopt(s, TCP_WINDOW, ...).
Setting a smaller default receive window size can save some RAM, but will significantly decrease performance.
- Range:
from 2440 to 65535 if CONFIG_LWIP_WND_SCALE is disabled
from 2440 to 1024000 if CONFIG_LWIP_WND_SCALE is enabled
- Default value:
5760
CONFIG_LWIP_TCP_RECVMBOX_SIZE
Default TCP receive mail box size
Found in: Component config > LWIP > TCP
Set TCP receive mail box size. Generally bigger value means higher throughput but more memory. The recommended value is: LWIP_TCP_WND_DEFAULT/TCP_MSS + 2, e.g. if LWIP_TCP_WND_DEFAULT=14360, TCP_MSS=1436, then the recommended receive mail box size is (14360/1436 + 2) = 12.
TCP receive mail box is a per socket mail box, when the application receives packets from TCP socket, LWIP core firstly posts the packets to TCP receive mail box and the application then fetches the packets from mail box. It means LWIP can caches maximum LWIP_TCP_RECCVMBOX_SIZE packets for each TCP socket, so the maximum possible cached TCP packets for all TCP sockets is LWIP_TCP_RECCVMBOX_SIZE multiples the maximum TCP socket number. In other words, the bigger LWIP_TCP_RECVMBOX_SIZE means more memory. On the other hand, if the receive mail box is too small, the mail box may be full. If the mail box is full, the LWIP drops the packets. So generally we need to make sure the TCP receive mail box is big enough to avoid packet drop between LWIP core and application.
- Range:
from 6 to 64 if CONFIG_LWIP_WND_SCALE is disabled
from 6 to 1024 if CONFIG_LWIP_WND_SCALE is enabled
- Default value:
6
CONFIG_LWIP_TCP_ACCEPTMBOX_SIZE
Default TCP accept mail box size
Found in: Component config > LWIP > TCP
Set TCP accept mail box size. Generally bigger value means supporting larger backlogs but more memory. The recommended value is 6, but applications can set it to a lower value if listening servers are meant to have a smaller backlog.
TCP accept mail box is a per socket mail box, when the application listens for connections with a given listening TCP socket. If the mailbox is full, LWIP will send a RST packet and the client will fail to connect.
- Range:
from 1 to 64 if CONFIG_LWIP_WND_SCALE is disabled
from 1 to 255 if CONFIG_LWIP_WND_SCALE is enabled
- Default value:
6
CONFIG_LWIP_TCP_QUEUE_OOSEQ
Queue incoming out-of-order segments
Found in: Component config > LWIP > TCP
Queue incoming out-of-order segments for later use.
Disable this option to save some RAM during TCP sessions, at the expense of increased retransmissions if segments arrive out of order.
- Default value:
Enabled
CONFIG_LWIP_TCP_OOSEQ_TIMEOUT
Timeout for each pbuf queued in TCP OOSEQ, in RTOs.
Found in: Component config > LWIP > TCP > CONFIG_LWIP_TCP_QUEUE_OOSEQ
The timeout value is TCP_OOSEQ_TIMEOUT * RTO.
- Symbol can be set when:
CONFIG_LWIP_TCP_QUEUE_OOSEQ is enabled
- Range:
from 1 to 30
- Default value:
6
CONFIG_LWIP_TCP_OOSEQ_MAX_PBUFS
The maximum number of pbufs queued on OOSEQ per pcb
Found in: Component config > LWIP > TCP > CONFIG_LWIP_TCP_QUEUE_OOSEQ
If LWIP_TCP_OOSEQ_MAX_PBUFS = 0, TCP will not control the number of OOSEQ pbufs.
In a poor network environment, many out-of-order tcp pbufs will be received. These out-of-order pbufs will be cached in the TCP out-of-order queue which will cause Wi-Fi/Ethernet fail to release RX buffer in time. It is possible that all RX buffers for MAC layer are used by OOSEQ.
Control the number of out-of-order pbufs to ensure that the MAC layer has enough RX buffer to receive packets.
In the Wi-Fi scenario, recommended OOSEQ PBUFS Range: 0 <= TCP_OOSEQ_MAX_PBUFS <= CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM/(MAX_TCP_NUMBER + 1)
In the Ethernet scenario,recommended Ethernet OOSEQ PBUFS Range: 0 <= TCP_OOSEQ_MAX_PBUFS <= CONFIG_ETH_DMA_RX_BUFFER_NUM/(MAX_TCP_NUMBER + 1)
Within the recommended value range, the larger the value, the better the performance.
MAX_TCP_NUMBER represent Maximum number of TCP connections in Wi-Fi(STA+SoftAP) and Ethernet scenario.
- Symbol can be set when:
CONFIG_LWIP_TCP_QUEUE_OOSEQ is enabled
- Range:
from 0 to 12
- Default value:
4 if !(CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled)
0 if CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled
CONFIG_LWIP_TCP_SACK_OUT
Support sending selective acknowledgements
Found in: Component config > LWIP > TCP > CONFIG_LWIP_TCP_QUEUE_OOSEQ
TCP will support sending selective acknowledgements (SACKs).
- Symbol can be set when:
CONFIG_LWIP_TCP_QUEUE_OOSEQ is enabled
- Default value:
Disabled
CONFIG_LWIP_TCP_OVERSIZE
Pre-allocate transmit PBUF size
Found in: Component config > LWIP > TCP
Allows enabling "oversize" allocation of TCP transmission pbufs ahead of time, which can reduce the length of pbuf chains used for transmission.
This will not make a difference to sockets where Nagle's algorithm is disabled.
Default value of MSS is fine for most applications, 25% MSS may save some RAM when only transmitting small amounts of data. Disabled will have worst performance and fragmentation characteristics, but uses least RAM overall.
Available options:
MSS (CONFIG_LWIP_TCP_OVERSIZE_MSS)
25% MSS (CONFIG_LWIP_TCP_OVERSIZE_QUARTER_MSS)
Disabled (CONFIG_LWIP_TCP_OVERSIZE_DISABLE)
CONFIG_LWIP_WND_SCALE
Support TCP window scale
Found in: Component config > LWIP > TCP
Enable this feature to support TCP window scaling.
- Symbol can be set when:
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP is enabled && CONFIG_SPIRAM_IGNORE_NOTFOUND is disabled
- Default value:
Disabled
CONFIG_LWIP_TCP_RCV_SCALE
Set TCP receiving window scaling factor
Found in: Component config > LWIP > TCP > CONFIG_LWIP_WND_SCALE
Enable this feature to support TCP window scaling.
- Symbol can be set when:
CONFIG_LWIP_WND_SCALE is enabled
- Range:
from 0 to 14
- Default value:
0
CONFIG_LWIP_TCP_RTO_TIME
Default TCP rto time
Found in: Component config > LWIP > TCP
Set default TCP rto time for a reasonable initial rto. In bad network environment, recommend set value of rto time to 1500.
- Default value:
3000 if CONFIG_LWIP_TCP_HIGH_SPEED_RETRANSMISSION is disabled
1500 if CONFIG_LWIP_TCP_HIGH_SPEED_RETRANSMISSION is enabled
UDP
Contains:
CONFIG_LWIP_MAX_UDP_PCBS
Maximum active UDP control blocks
Found in: Component config > LWIP > UDP
The maximum number of active UDP "connections" (ie UDP sockets sending/receiving data). The practical maximum limit is determined by available heap memory at runtime.
- Range:
from 1 to 1024
- Default value:
16
CONFIG_LWIP_UDP_RECVMBOX_SIZE
Default UDP receive mail box size
Found in: Component config > LWIP > UDP
Set UDP receive mail box size. The recommended value is 6.
UDP receive mail box is a per socket mail box, when the application receives packets from UDP socket, LWIP core firstly posts the packets to UDP receive mail box and the application then fetches the packets from mail box. It means LWIP can caches maximum UDP_RECCVMBOX_SIZE packets for each UDP socket, so the maximum possible cached UDP packets for all UDP sockets is UDP_RECCVMBOX_SIZE multiples the maximum UDP socket number. In other words, the bigger UDP_RECVMBOX_SIZE means more memory. On the other hand, if the receive mail box is too small, the mail box may be full. If the mail box is full, the LWIP drops the packets. So generally we need to make sure the UDP receive mail box is big enough to avoid packet drop between LWIP core and application.
- Range:
from 6 to 64
- Default value:
6
Checksums
Contains:
CONFIG_LWIP_CHECKSUM_CHECK_IP
Enable LWIP IP checksums
Found in: Component config > LWIP > Checksums
Enable checksum checking for received IP messages
- Default value:
Disabled
CONFIG_LWIP_CHECKSUM_CHECK_UDP
Enable LWIP UDP checksums
Found in: Component config > LWIP > Checksums
Enable checksum checking for received UDP messages
- Default value:
Disabled
CONFIG_LWIP_CHECKSUM_CHECK_ICMP
Enable LWIP ICMP checksums
Found in: Component config > LWIP > Checksums
Enable checksum checking for received ICMP messages
- Default value:
Enabled
CONFIG_LWIP_TCPIP_TASK_STACK_SIZE
TCP/IP Task Stack Size
Found in: Component config > LWIP
Configure TCP/IP task stack size, used by LWIP to process multi-threaded TCP/IP operations. Setting this stack too small will result in stack overflow crashes.
- Range:
from 2048 to 65536 if CONFIG_LOG_DEFAULT_LEVEL < 4
from 2560 to 65536 if CONFIG_LOG_DEFAULT_LEVEL >= 4
- Default value:
3072
CONFIG_LWIP_TCPIP_TASK_AFFINITY
TCP/IP task affinity
Found in: Component config > LWIP
Allows setting LwIP tasks affinity, i.e. whether the task is pinned to CPU0, pinned to CPU1, or allowed to run on any CPU. Currently this applies to "TCP/IP" task and "Ping" task.
Available options:
No affinity (CONFIG_LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY)
CPU0 (CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0)
CPU1 (CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU1)
CONFIG_LWIP_IPV6_MEMP_NUM_ND6_QUEUE
Max number of IPv6 packets to queue during MAC resolution
Found in: Component config > LWIP
Config max number of IPv6 packets to queue during MAC resolution.
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Range:
from 3 to 20
- Default value:
3
CONFIG_LWIP_IPV6_ND6_NUM_NEIGHBORS
Max number of entries in IPv6 neighbor cache
Found in: Component config > LWIP
Config max number of entries in IPv6 neighbor cache
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Range:
from 3 to 10
- Default value:
5
CONFIG_LWIP_IPV6_ND6_NUM_PREFIXES
Max number of entries in IPv6 on-link prefixes cache
Found in: Component config > LWIP
Maximum number of entries in IPv6 on-link prefixes cache
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
5
CONFIG_LWIP_IPV6_ND6_NUM_ROUTERS
Max number of entries in IPv6 default routers cache
Found in: Component config > LWIP
Maximum number of entries in IPv6 default routers cache
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
3
CONFIG_LWIP_IPV6_ND6_NUM_DESTINATIONS
Max number of entries in IPv6 destinations cache
Found in: Component config > LWIP
Maximum number of entries in IPv6 destinations cache
- Symbol can be set when:
CONFIG_LWIP_IPV6 is enabled
- Default value:
10
CONFIG_LWIP_IPV6_ND6_ROUTE_INFO_OPTION_SUPPORT
Enable IPV6 ND6 route information option support
Found in: Component config > LWIP
Enable route information option (RIO) support in IPV6 ND6
- Symbol can be set when:
CONFIG_LWIP_ND6 is enabled
- Default value:
Disabled
CONFIG_LWIP_IPV6_ND6_NUM_ROUTE_INFO
Max number of entries in IPv6 route information options cache
Found in: Component config > LWIP > CONFIG_LWIP_IPV6_ND6_ROUTE_INFO_OPTION_SUPPORT
Maximum number of entries in IPv6 route information options cache
- Symbol can be set when:
- Default value:
10
CONFIG_LWIP_PPP_SUPPORT
Enable PPP support
Found in: Component config > LWIP
Enable PPP stack. Now only PPP over serial is possible.
- Default value:
Disabled
Contains:
CONFIG_LWIP_PPP_ENABLE_IPV4
Enable IPV4 support for PPP connections (IPCP)
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable IPCP protocol in PPP negotiations, which assigns IPv4 addresses to the PPP client, as well as IPv4 DNS servers. You can disable this if your modem supports IPv6 only.
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled && CONFIG_LWIP_IPV4 is enabled
- Default value:
Enabled
CONFIG_LWIP_PPP_ENABLE_IPV6
Enable IPV6 support for PPP connections (IPV6CP)
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable IPV6 support in PPP for the local link between the DTE (processor) and DCE (modem). There are some modems which do not support the IPV6 addressing in the local link. If they are requested for IPV6CP negotiation, they may time out. This would in turn fail the configuration for the whole link. If your modem is not responding correctly to PPP Phase Network, try to disable IPV6 support.
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled && CONFIG_LWIP_IPV6 is enabled
- Default value:
Enabled
CONFIG_LWIP_PPP_NOTIFY_PHASE_SUPPORT
Enable Notify Phase Callback
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable to set a callback which is called on change of the internal PPP state machine.
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Disabled
CONFIG_LWIP_PPP_PAP_SUPPORT
Enable PAP support
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable Password Authentication Protocol (PAP) support
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Disabled
CONFIG_LWIP_PPP_CHAP_SUPPORT
Enable CHAP support
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable Challenge Handshake Authentication Protocol (CHAP) support
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Disabled
CONFIG_LWIP_PPP_MSCHAP_SUPPORT
Enable MSCHAP support
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable Microsoft version of the Challenge-Handshake Authentication Protocol (MSCHAP) support
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Disabled
CONFIG_LWIP_PPP_MPPE_SUPPORT
Enable MPPE support
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable Microsoft Point-to-Point Encryption (MPPE) support
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Disabled
CONFIG_LWIP_PPP_SERVER_SUPPORT
Enable PPP server support
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable to use PPP server
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Disabled
CONFIG_LWIP_PPP_VJ_HEADER_COMPRESSION
Enable VJ IP Header compression
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable support for VJ header compression. Please disable this if you're using NAPT on PPP interface, since the compressed IP header might not be correctly interpreted in NAT causing the compressed packet to be dropped.
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Enabled
CONFIG_LWIP_ENABLE_LCP_ECHO
Enable LCP ECHO
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable LCP echo keepalive requests
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Disabled
CONFIG_LWIP_LCP_ECHOINTERVAL
Echo interval (s)
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT > CONFIG_LWIP_ENABLE_LCP_ECHO
Interval in seconds between keepalive LCP echo requests, 0 to disable.
- Symbol can be set when:
CONFIG_LWIP_ENABLE_LCP_ECHO is enabled
- Range:
from 0 to 1000000
- Default value:
3
CONFIG_LWIP_LCP_MAXECHOFAILS
Maximum echo failures
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT > CONFIG_LWIP_ENABLE_LCP_ECHO
Number of consecutive unanswered echo requests before failure is indicated.
- Symbol can be set when:
CONFIG_LWIP_ENABLE_LCP_ECHO is enabled
- Range:
from 0 to 100000
- Default value:
3
CONFIG_LWIP_PPP_DEBUG_ON
Enable PPP debug log output
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
Enable PPP debug log output
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled
- Default value:
Disabled
CONFIG_LWIP_USE_EXTERNAL_MBEDTLS
Use mbedTLS instead of internal polarSSL
Found in: Component config > LWIP > CONFIG_LWIP_PPP_SUPPORT
This option uses mbedTLS crypto functions (instead of internal PolarSSL implementation) for PPP authentication modes (PAP, CHAP, etc.). You can use this option to address symbol duplication issues, since the internal functions are not namespaced (e.g. md5_init()).
- Symbol can be set when:
CONFIG_LWIP_PPP_SUPPORT is enabled && CONFIG_LWIP_PPP_MPPE_SUPPORT is disabled && CONFIG_LWIP_PPP_MSCHAP_SUPPORT is disabled
- Default value:
Disabled
CONFIG_LWIP_SLIP_SUPPORT
Enable SLIP support (new/experimental)
Found in: Component config > LWIP
Enable SLIP stack. Now only SLIP over serial is possible.
SLIP over serial support is experimental and unsupported.
- Default value:
Disabled
Contains:
CONFIG_LWIP_SLIP_DEBUG_ON
Enable SLIP debug log output
Found in: Component config > LWIP > CONFIG_LWIP_SLIP_SUPPORT
Enable SLIP debug log output
- Symbol can be set when:
CONFIG_LWIP_SLIP_SUPPORT is enabled
- Default value:
Disabled
ICMP
Contains:
CONFIG_LWIP_ICMP
ICMP: Enable ICMP
Found in: Component config > LWIP > ICMP
Enable ICMP module for check network stability
- Default value:
Enabled
CONFIG_LWIP_MULTICAST_PING
Respond to multicast pings
Found in: Component config > LWIP > ICMP
- Symbol can be set when:
CONFIG_LWIP_ICMP is enabled
- Default value:
Disabled
CONFIG_LWIP_BROADCAST_PING
Respond to broadcast pings
Found in: Component config > LWIP > ICMP
- Symbol can be set when:
CONFIG_LWIP_ICMP is enabled
- Default value:
Disabled
LWIP RAW API
Contains:
CONFIG_LWIP_MAX_RAW_PCBS
Maximum LWIP RAW PCBs
Found in: Component config > LWIP > LWIP RAW API
The maximum number of simultaneously active LWIP RAW protocol control blocks. The practical maximum limit is determined by available heap memory at runtime.
- Range:
from 1 to 1024
- Default value:
16
SNTP
Contains:
CONFIG_LWIP_SNTP_MAX_SERVERS
Maximum number of NTP servers
Found in: Component config > LWIP > SNTP
Set maximum number of NTP servers used by LwIP SNTP module. First argument of sntp_setserver/sntp_setservername functions is limited to this value.
- Range:
from 1 to 16
- Default value:
1
CONFIG_LWIP_DHCP_GET_NTP_SRV
Request NTP servers from DHCP
Found in: Component config > LWIP > SNTP
If enabled, LWIP will add 'NTP' to Parameter-Request Option sent via DHCP-request. DHCP server might reply with an NTP server address in option 42. SNTP callback for such replies should be set accordingly (see sntp_servermode_dhcp() func.)
- Default value:
Disabled
CONFIG_LWIP_DHCP_MAX_NTP_SERVERS
Maximum number of NTP servers acquired via DHCP
Found in: Component config > LWIP > SNTP > CONFIG_LWIP_DHCP_GET_NTP_SRV
Set maximum number of NTP servers acquired via DHCP-offer. Should be less or equal to "Maximum number of NTP servers", any extra servers would be just ignored.
- Symbol can be set when:
CONFIG_LWIP_DHCP_GET_NTP_SRV is enabled
- Range:
from 1 to 16
- Default value:
1
CONFIG_LWIP_SNTP_UPDATE_DELAY
Request interval to update time (ms)
Found in: Component config > LWIP > SNTP
This option allows you to set the time update period via SNTP. Default is 1 hour. Must not be below 15 seconds by specification. (SNTPv4 RFC 4330 enforces a minimum update time of 15 seconds).
- Range:
from 15000 to 4294967295
- Default value:
3600000
CONFIG_LWIP_SNTP_STARTUP_DELAY
Enable SNTP startup delay
Found in: Component config > LWIP > SNTP
It is recommended (RFC 4330) to delay the initial request after by a random timeout from 1 to 5 minutes to reduce potential load of NTP servers after simultaneous power-up of many devices. This option disables this initial delay. Please use this option with care, it could improve a single device responsiveness but might cause peaks on the network after reset. Another option to address responsiveness of devices while using the initial random delay is to adjust LWIP_SNTP_MAXIMUM_STARTUP_DELAY.
- Default value:
Enabled
CONFIG_LWIP_SNTP_MAXIMUM_STARTUP_DELAY
Maximum startup delay (ms)
Found in: Component config > LWIP > SNTP > CONFIG_LWIP_SNTP_STARTUP_DELAY
RFC 4330 recommends a startup delay before sending the initial request. LWIP calculates this delay to a random number of milliseconds between 0 and this value.
- Symbol can be set when:
CONFIG_LWIP_SNTP_STARTUP_DELAY is enabled
- Range:
from 100 to 300000
- Default value:
5000
DNS
Contains:
CONFIG_LWIP_DNS_MAX_HOST_IP
Maximum number of IP addresses per host
Found in: Component config > LWIP > DNS
Maximum number of IP addresses that can be returned by DNS queries for a single host. Allowed values are 1--8. In lwIP this is
DNS\_MAX\_HOST\_IP. Multi-IP DNS APIs require the caller'saddr\_cntargument to satisfy 0 < addr_cnt <= DNS_MAX_HOST_IP; otherwise they returnERR\_ARG.
- Range:
from 1 to 8
- Default value:
1
CONFIG_LWIP_DNS_MAX_SERVERS
Maximum number of DNS servers
Found in: Component config > LWIP > DNS
Set maximum number of DNS servers. If fallback DNS servers are supported, the number of DNS servers needs to be greater than or equal to 3.
- Range:
from 1 to 4
- Default value:
3
CONFIG_LWIP_FALLBACK_DNS_SERVER_SUPPORT
Enable DNS fallback server support
Found in: Component config > LWIP > DNS
Enable this feature to support DNS fallback server.
- Symbol can be set when:
- Default value:
Disabled
CONFIG_LWIP_FALLBACK_DNS_SERVER_ADDRESS
DNS fallback server address
Found in: Component config > LWIP > DNS > CONFIG_LWIP_FALLBACK_DNS_SERVER_SUPPORT
This option allows you to config dns fallback server address.
- Symbol can be set when:
CONFIG_LWIP_FALLBACK_DNS_SERVER_SUPPORT is enabled
- Default value:
"114.114.114.114"
CONFIG_LWIP_DNS_SETSERVER_WITH_NETIF
Enable DNS server settings with netif
Found in: Component config > LWIP > DNS
This option allows collecting DNS server settings per netif using configurable callback function. It's typically used with CONFIG_ESP_NETIF_SET_DNS_PER_DEFAULT_NETIF which configures a callback to collect the DNS info on esp_netif layer.
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_NETIF_SET_DNS_PER_DEFAULT_NETIF
CONFIG_LWIP_USE_ESP_GETADDRINFO
Enable esp_getaddrinfo() instead of lwip_getaddrinfo()
Found in: Component config > LWIP > DNS
Use esp_getaddrinfo() for DNS lookups instead of lwip_getaddrinfo(). This function correctly handles the AF_UNSPEC flag for resolving both IPv4 and IPv6 addresses. Available only when both IPv4 and IPv6 are enabled.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled && CONFIG_LWIP_IPV6 is enabled
- Default value:
Disabled
CONFIG_LWIP_BRIDGEIF_MAX_PORTS
Maximum number of bridge ports
Found in: Component config > LWIP
Set maximum number of ports a bridge can consists of.
- Range:
from 1 to 63
- Default value:
7
CONFIG_LWIP_ESP_LWIP_ASSERT
Enable LWIP ASSERT checks
Found in: Component config > LWIP
Enable this option keeps LWIP assertion checks enabled. It is recommended to keep this option enabled.
If asserts are disabled for the entire project, they are also disabled for LWIP and this option is ignored.
- Symbol can be set when:
CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE is disabled
- Default value:
Enabled
Hooks
Contains:
CONFIG_LWIP_HOOK_TCP_ISN
TCP ISN Hook
Found in: Component config > LWIP > Hooks
Enables to define a TCP ISN hook to randomize initial sequence number in TCP connection. The default TCP ISN algorithm used in IDF (standardized in RFC 6528) produces ISN by combining an MD5 of the new TCP id and a stable secret with the current time. This is because the lwIP implementation (tcp_next_iss) is not very strong, as it does not take into consideration any platform specific entropy source.
Set to LWIP_HOOK_TCP_ISN_CUSTOM to provide custom implementation. Set to LWIP_HOOK_TCP_ISN_NONE to use lwIP implementation.
Available options:
No hook declared (CONFIG_LWIP_HOOK_TCP_ISN_NONE)
Default implementation (CONFIG_LWIP_HOOK_TCP_ISN_DEFAULT)
Custom implementation (CONFIG_LWIP_HOOK_TCP_ISN_CUSTOM)
CONFIG_LWIP_HOOK_IP6_ROUTE
IPv6 route Hook
Found in: Component config > LWIP > Hooks
Enables custom IPv6 route hook. Setting this to "default" provides weak implementation stub that could be overwritten in application code. Setting this to "custom" provides hook's declaration only and expects the application to implement it.
Available options:
No hook declared (CONFIG_LWIP_HOOK_IP6_ROUTE_NONE)
Default (weak) implementation (CONFIG_LWIP_HOOK_IP6_ROUTE_DEFAULT)
Custom implementation (CONFIG_LWIP_HOOK_IP6_ROUTE_CUSTOM)
CONFIG_LWIP_HOOK_ND6_GET_GW
IPv6 get gateway Hook
Found in: Component config > LWIP > Hooks
Enables custom IPv6 route hook. Setting this to "default" provides weak implementation stub that could be overwritten in application code. Setting this to "custom" provides hook's declaration only and expects the application to implement it.
Available options:
No hook declared (CONFIG_LWIP_HOOK_ND6_GET_GW_NONE)
Default (weak) implementation (CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT)
Custom implementation (CONFIG_LWIP_HOOK_ND6_GET_GW_CUSTOM)
CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR
IPv6 source address selection Hook
Found in: Component config > LWIP > Hooks
Enables custom IPv6 source address selection. Setting this to "default" provides weak implementation stub that could be overwritten in application code. Setting this to "custom" provides hook's declaration only and expects the application to implement it.
Available options:
No hook declared (CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_NONE)
Default (weak) implementation (CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_DEFAULT)
Custom implementation (CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_CUSTOM)
CONFIG_LWIP_HOOK_DHCP_EXTRA_OPTION
DHCP extra option hook
Found in: Component config > LWIP > Hooks
Enables custom hook to receive and parse extra DHCP options. Setting this to "default" provides weak implementation stub that could be overwritten in application code. Setting this to "custom" provides hook's declaration only and expects the application to implement it.
Available options:
No hook declared (CONFIG_LWIP_HOOK_DHCP_EXTRA_OPTION_NONE)
Default (weak) implementation (CONFIG_LWIP_HOOK_DHCP_EXTRA_OPTION_DEFAULT)
Custom implementation (CONFIG_LWIP_HOOK_DHCP_EXTRA_OPTION_CUSTOM)
CONFIG_LWIP_HOOK_NETCONN_EXTERNAL_RESOLVE
Netconn external resolve Hook
Found in: Component config > LWIP > Hooks
Enables custom DNS resolve hook (without callback). Setting this to "default" provides weak implementation stub that could be overwritten in application code. Setting this to "custom" provides hook's declaration only and expects the application to implement it.
Available options:
No hook declared (CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_NONE)
Default (weak) implementation (CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_DEFAULT)
Custom implementation (CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_CUSTOM)
CONFIG_LWIP_HOOK_DNS_EXTERNAL_RESOLVE
DNS external resolve Hook
Found in: Component config > LWIP > Hooks
Enables custom DNS resolve hook (with callback). Setting this to "custom" provides hook's declaration only and expects the application to implement it.
Available options:
No hook declared (CONFIG_LWIP_HOOK_DNS_EXT_RESOLVE_NONE)
Custom implementation (CONFIG_LWIP_HOOK_DNS_EXT_RESOLVE_CUSTOM)
CONFIG_LWIP_HOOK_IP6_INPUT
IPv6 packet input
Found in: Component config > LWIP > Hooks
Enables custom IPv6 packet input. Setting this to "default" provides weak IDF implementation, which drops all incoming IPv6 traffic if the interface has no link local address. (this default implementation is "weak" and could be still overwritten in the application if some additional IPv6 input packet filtering is needed) Setting this to "none" removes this default filter and conforms to the lwIP implementation (which accepts multicasts even if the interface has no link local address) Setting this to "custom" provides hook's declaration only and expects the application to implement it.
Available options:
No hook declared (CONFIG_LWIP_HOOK_IP6_INPUT_NONE)
Default (weak) implementation (CONFIG_LWIP_HOOK_IP6_INPUT_DEFAULT)
Custom implementation (CONFIG_LWIP_HOOK_IP6_INPUT_CUSTOM)
CONFIG_LWIP_DEBUG
Enable LWIP Debug
Found in: Component config > LWIP
Enabling this option allows different kinds of lwIP debug output.
All lwIP debug features increase the size of the final binary.
- Default value:
Disabled
Contains:
CONFIG_LWIP_DEBUG_ESP_LOG
Route LWIP debugs through ESP_LOG interface
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
Enabling this option routes all enabled LWIP debugs through ESP_LOGD.
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_NETIF_DEBUG
Enable netif debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_PBUF_DEBUG
Enable pbuf debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_ETHARP_DEBUG
Enable etharp debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_API_LIB_DEBUG
Enable api lib debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_SOCKETS_DEBUG
Enable socket debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_IP_DEBUG
Enable IP debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_ICMP_DEBUG
Enable ICMP debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled && CONFIG_LWIP_ICMP is enabled
- Default value:
Disabled
CONFIG_LWIP_DHCP_STATE_DEBUG
Enable DHCP state tracking
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_DHCP_DEBUG
Enable DHCP debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_IP6_DEBUG
Enable IP6 debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_ICMP6_DEBUG
Enable ICMP6 debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_TCP_DEBUG
Enable TCP debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_UDP_DEBUG
Enable UDP debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_SNTP_DEBUG
Enable SNTP debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_DNS_DEBUG
Enable DNS debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_NAPT_DEBUG
Enable NAPT debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled && CONFIG_LWIP_IPV4_NAPT is enabled
- Default value:
Disabled
CONFIG_LWIP_BRIDGEIF_DEBUG
Enable bridge generic debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_BRIDGEIF_FDB_DEBUG
Enable bridge FDB debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
CONFIG_LWIP_BRIDGEIF_FW_DEBUG
Enable bridge forwarding debug messages
Found in: Component config > LWIP > CONFIG_LWIP_DEBUG
- Symbol can be set when:
CONFIG_LWIP_DEBUG is enabled
- Default value:
Disabled
mbedTLS
Contains:
Core Configuration
Contains:
CONFIG_MBEDTLS_COMPILER_OPTIMIZATION
Compiler optimization level
Found in: Component config > mbedTLS > Core Configuration
This option selects the compiler optimization level for mbedTLS. By default, mbedTLS is optimized for size (-Os). If the project optimization level (CONFIG_COMPILER_OPTIMIZATION) is set to "Optimize for performance (-O2)", mbedTLS also defaults to -O2. You can override the default with this option. The "No optimization" setting adds no flags, so mbedTLS compiles with the project optimization level.
Available options:
No optimization (CONFIG_MBEDTLS_COMPILER_OPTIMIZATION_NONE)
Optimize for size (-Os) (CONFIG_MBEDTLS_COMPILER_OPTIMIZATION_SIZE)
Optimize for performance (-O2) (CONFIG_MBEDTLS_COMPILER_OPTIMIZATION_PERF)
CONFIG_MBEDTLS_FS_IO
Enable functions that use the filesystem
Found in: Component config > mbedTLS > Core Configuration
This option enables functions in mbedTLS that use the filesystem. It uses the default filesystem support for the target, which is added through vfs component for ESP32 based targets or by the host system when the target is Linux.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_IO is enabled && CONFIG_VFS_SUPPORT_DIR is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_PSA_ITS_CUSTOM_STORAGE_BACKEND
Enable custom storage backend for PSA ITS
Found in: Component config > mbedTLS > Core Configuration
Enable support for registering a custom storage backend that handles PSA ITS operations for keys in a reserved UID range. When enabled, users can call esp_psa_its_register_custom_backend() to route storage operations for UIDs in the configured range to their own implementation. UIDs outside the range continue using the default NVS backend.
- Default value:
Disabled
CONFIG_MBEDTLS_PSA_ITS_CUSTOM_BACKEND_UID_MIN
Minimum UID for custom backend range
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_PSA_ITS_CUSTOM_STORAGE_BACKEND
The minimum UID value (inclusive) that will be routed to the custom storage backend. Must be within the PSA user key ID range (0x00000001 - 0x3FFFFFFF).
- Symbol can be set when:
- Range:
from 0x00000001 to 0x3FFFFFFF
- Default value:
"0x30000000"
CONFIG_MBEDTLS_PSA_ITS_CUSTOM_BACKEND_UID_MAX
Maximum UID for custom backend range
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_PSA_ITS_CUSTOM_STORAGE_BACKEND
The maximum UID value (inclusive) that will be routed to the custom storage backend. Must be >= the minimum UID and within the PSA user key ID range (0x00000001 - 0x3FFFFFFF); the lower bound is enforced by Kconfig.
- Symbol can be set when:
- Range:
from to 0x3FFFFFFF
- Default value:
"0x3FFFFFFF"
CONFIG_MBEDTLS_THREADING_C
Enable the threading abstraction layer
Found in: Component config > mbedTLS > Core Configuration
If you do intend to use contexts between threads, you will need to enable this layer to prevent race conditions.
- Default value:
Enabled
CONFIG_MBEDTLS_THREADING_IMPLEMENTATION
Threading implementation
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_THREADING_C
Available options:
Enable threading alternate implementation (CONFIG_MBEDTLS_THREADING_ALT)
Enable threading alt to allow your own alternate threading implementation.
Enable threading pthread implementation (CONFIG_MBEDTLS_THREADING_PTHREAD)
Enable the pthread wrapper layer for the threading layer.
CONFIG_MBEDTLS_ERROR_STRINGS
Enable error code to error string conversion
Found in: Component config > mbedTLS > Core Configuration
Enables mbedtls_strerror() for converting error codes to error strings. Disabling this config can save some code/rodata size as the error string conversion implementation is replaced with an empty stub.
- Default value:
Enabled
CONFIG_MBEDTLS_ERROR_STRERROR_DUMMY
Enable a dummy error function to make use of mbedtls_strerror()
Found in: Component config > mbedTLS > Core Configuration
This option enables a dummy error function to make use of mbedtls_strerror() when MBEDTLS_ERROR_STRINGS is disabled. This is useful for applications that use mbedtls_strerror() but do not need the actual error strings. This option can be used to save code size when MBEDTLS_ERROR_STRINGS is disabled.
- Symbol can be set when:
CONFIG_MBEDTLS_ERROR_STRINGS is disabled
- Default value:
Disabled
CONFIG_MBEDTLS_VERSION_C
Enable version information
Found in: Component config > mbedTLS > Core Configuration
Enable version information functions.
- Default value:
Enabled
CONFIG_MBEDTLS_HAVE_TIME
Enable mbedtls time support
Found in: Component config > mbedTLS > Core Configuration
Enable use of time.h functions (time() and gmtime()) by mbedTLS.
This option doesn't require the system time to be correct, but enables functionality that requires relative timekeeping - for example periodic expiry of TLS session tickets or session cache entries.
Disabling this option will save some firmware size, particularly if the rest of the firmware doesn't call any standard timekeeping functions.
- Symbol can be set when:
CONFIG_ESP_TIME_FUNCS_USE_NONE is disabled
- Default value:
Enabled
CONFIG_MBEDTLS_PLATFORM_TIME_ALT
Enable mbedtls time support: platform-specific
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_HAVE_TIME
Enabling this config will provide users with a function "mbedtls_platform_set_time()" that allows to set an alternative time function pointer.
- Symbol can be set when:
CONFIG_MBEDTLS_HAVE_TIME is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_HAVE_TIME_DATE
Enable mbedtls certificate expiry check
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_HAVE_TIME
Enables X.509 certificate expiry checks in mbedTLS.
If this option is disabled (default) then X.509 certificate "valid from" and "valid to" timestamp fields are ignored.
If this option is enabled, these fields are compared with the current system date and time. The time is retrieved using the standard time() and gmtime() functions. If the certificate is not valid for the current system time then verification will fail with code MBEDTLS_X509_BADCERT_FUTURE or MBEDTLS_X509_BADCERT_EXPIRED.
Enabling this option requires adding functionality in the firmware to set the system clock to a valid timestamp before using TLS. The recommended way to do this is via ESP-IDF's SNTP functionality, but any method can be used.
In the case where only a small number of certificates are trusted by the device, please carefully consider the tradeoffs of enabling this option. There may be undesired consequences, for example if all trusted certificates expire while the device is offline and a TLS connection is required to update. Or if an issue with the SNTP server means that the system time is invalid for an extended period after a reset.
- Symbol can be set when:
CONFIG_MBEDTLS_HAVE_TIME is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_MEM_ALLOC_MODE
Memory allocation strategy
Found in: Component config > mbedTLS > Core Configuration
Allocation strategy for mbedTLS, 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
- Custom allocation mode, by overwriting calloc()/free()
using mbedtls_platform_set_calloc_free() function
Internal IRAM memory wherever applicable else internal DRAM
Recommended mode here is always internal (*), since that is most preferred from security perspective. But if application requirement does not allow sufficient free internal memory then alternate mode can be selected.
(*) In case of ESP32-S2/ESP32-S3, hardware allows encryption of external SPIRAM contents provided hardware flash encryption feature is enabled. In that case, using external SPIRAM allocation strategy is also safe choice from security perspective.
Available options:
Internal memory (CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC)
External SPIRAM (CONFIG_MBEDTLS_EXTERNAL_MEM_ALLOC)
Default alloc mode (CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC)
Custom alloc mode (CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC)
Internal IRAM (CONFIG_MBEDTLS_IRAM_8BIT_MEM_ALLOC)
Allows to use IRAM memory region as 8bit accessible region.
TLS input and output buffers will be allocated in IRAM section which is 32bit aligned memory. Every unaligned (8bit or 16bit) access will result in an exception and incur penalty of certain clock cycles per unaligned read/write.
CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN
TLS maximum message content length
Found in: Component config > mbedTLS > Core Configuration
Maximum TLS message length (in bytes) supported by mbedTLS.
16384 is the default and this value is required to comply fully with TLS standards.
However you can set a lower value in order to save RAM. This is safe if the other end of the connection supports Maximum Fragment Length Negotiation Extension (max_fragment_length, see RFC6066) or you know for certain that it will never send a message longer than a certain number of bytes.
If the value is set too low, symptoms are a failed TLS handshake or a return value of MBEDTLS_ERR_SSL_INVALID_RECORD (-0x7200).
- Symbol can be set when:
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN is disabled
- Range:
from 512 to 16384
- Default value:
16384
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN
Asymmetric in/out fragment length
Found in: Component config > mbedTLS > Core Configuration
If enabled, this option allows customizing TLS in/out fragment length in asymmetric way. Please note that enabling this with default values saves 12KB of dynamic memory per TLS connection.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_DYNAMIC_BUFFER
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN
TLS maximum incoming fragment length
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN
This defines maximum incoming fragment length, overriding default maximum content length (MBEDTLS_SSL_MAX_CONTENT_LEN).
- Symbol can be set when:
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN is enabled
- Range:
from 512 to 16384
- Default value:
16384
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN
TLS maximum outgoing fragment length
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN
This defines maximum outgoing fragment length, overriding default maximum content length (MBEDTLS_SSL_MAX_CONTENT_LEN).
- Symbol can be set when:
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN is enabled
- Range:
from 512 to 16384
- Default value:
4096
CONFIG_MBEDTLS_DYNAMIC_BUFFER
Using dynamic TX/RX buffer
Found in: Component config > mbedTLS > Core Configuration
Using dynamic TX/RX buffer. After enabling this option, mbedTLS will allocate TX buffer when need to send data and then free it if all data is sent, allocate RX buffer when need to receive data and then free it when all data is used or read by upper layer.
By default, when SSL is initialized, mbedTLS also allocate TX and RX buffer with the default value of "MBEDTLS_SSL_OUT_CONTENT_LEN" or "MBEDTLS_SSL_IN_CONTENT_LEN", so to save more heap, users can set the options to be an appropriate value.
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_DTLS is disabled && CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH is disabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN
CONFIG_MBEDTLS_DYNAMIC_FREE_CONFIG_DATA
Free private key and DHM data after its usage
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_DYNAMIC_BUFFER
Free private key and DHM data after its usage in handshake process.
The option will decrease heap cost when handshake, but also lead to problem:
Because all certificate, private key and DHM data are freed so users should register certificate and private key to ssl config object again.
- Symbol can be set when:
CONFIG_MBEDTLS_DYNAMIC_BUFFER is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_DYNAMIC_FREE_CA_CERT
Free SSL CA certificate after its usage
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_DYNAMIC_BUFFER > CONFIG_MBEDTLS_DYNAMIC_FREE_CONFIG_DATA
Free CA certificate after its usage in the handshake process. This option will decrease the heap footprint for the TLS handshake, but may lead to a problem: If the respective ssl object needs to perform the TLS handshake again, the CA certificate should once again be registered to the ssl object.
- Symbol can be set when:
CONFIG_MBEDTLS_DYNAMIC_FREE_CONFIG_DATA is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_VERSION_FEATURES
Enable mbedTLS version features
Found in: Component config > mbedTLS > Core Configuration
Enable mbedTLS version features. This option allows Allow run-time checking of compile-time enabled features. Disabling this option will save some code size.
- Default value:
Disabled
CONFIG_MBEDTLS_DEBUG
Enable mbedTLS debugging
Found in: Component config > mbedTLS > Core Configuration
Enable mbedTLS debugging functions at compile time.
If this option is enabled, you can include "mbedtls/esp_debug.h" and call mbedtls_esp_enable_debug_log() at runtime in order to enable mbedTLS debug output via the ESP log mechanism.
- Default value:
Disabled
CONFIG_MBEDTLS_DEBUG_LEVEL
Set mbedTLS debugging level
Found in: Component config > mbedTLS > Core Configuration > CONFIG_MBEDTLS_DEBUG
Set mbedTLS debugging level
Available options:
Warning (CONFIG_MBEDTLS_DEBUG_LEVEL_WARN)
Info (CONFIG_MBEDTLS_DEBUG_LEVEL_INFO)
Debug (CONFIG_MBEDTLS_DEBUG_LEVEL_DEBUG)
Verbose (CONFIG_MBEDTLS_DEBUG_LEVEL_VERBOSE)
CONFIG_MBEDTLS_SELF_TEST
Enable mbedTLS self-test
Found in: Component config > mbedTLS > Core Configuration
Enable mbedTLS self-test functions.
- Default value:
Enabled
Certificates
Contains:
CONFIG_MBEDTLS_X509_USE_C
Enable X.509 certificate support
Found in: Component config > mbedTLS > Certificates
Enable X.509 certificate support.
- Default value:
Enabled
CONFIG_MBEDTLS_PEM_PARSE_C
Read & Parse PEM formatted certificates
Found in: Component config > mbedTLS > Certificates
Enable decoding/parsing of PEM formatted certificates.
If your certificates are all in the simpler DER format, disabling this option will save some code size.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_BASE64_C
CONFIG_MBEDTLS_PEM_WRITE_C
Write PEM formatted certificates
Found in: Component config > mbedTLS > Certificates
Enable writing of PEM formatted certificates.
If writing certificate data only in DER format, disabling this option will save some code size.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_BASE64_C
CONFIG_MBEDTLS_PK_C
Enable generic public key layer
Found in: Component config > mbedTLS > Certificates
Enable support for generic public key layer.
- Symbol can be set when:
CONFIG_MBEDTLS_MD_C is enabled && (CONFIG_MBEDTLS_RSA_C is enabled || CONFIG_MBEDTLS_ECP_C is enabled)
- Default value:
Enabled
CONFIG_MBEDTLS_PK_PARSE_C
Enables generic public key parsing functions
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_PK_C
Enable generic public key parsing functions.
- Symbol can be set when:
CONFIG_MBEDTLS_ASN1_PARSE_C is enabled && CONFIG_MBEDTLS_PK_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_PK_WRITE_C
Enables generic public key writing functions
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_PK_C
Enable generic public key writing functions.
- Symbol can be set when:
CONFIG_MBEDTLS_PK_C is enabled && CONFIG_MBEDTLS_ASN1_WRITE_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_X509_REMOVE_INFO
Remove X.509 debug info
Found in: Component config > mbedTLS > Certificates
Removes mbedtls_x509_*_info(), as well as mbedtls_debug_print_crt() and other functions/constants only used by these functions. This will save some code size.
- Default value:
Disabled
CONFIG_MBEDTLS_X509_CRL_PARSE_C
X.509 CRL parsing
Found in: Component config > mbedTLS > Certificates
Support for parsing X.509 Certificate Revocation Lists.
- Default value:
Enabled
CONFIG_MBEDTLS_X509_CRT_PARSE_C
Enable X.509 certificate parsing
Found in: Component config > mbedTLS > Certificates
Enable X.509 certificate parsing. This is required for TLS and DTLS.
- Symbol can be set when:
CONFIG_MBEDTLS_X509_USE_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_X509_CSR_PARSE_C
X.509 CSR parsing
Found in: Component config > mbedTLS > Certificates
Support for parsing X.509 Certificate Signing Requests
- Default value:
Enabled
CONFIG_MBEDTLS_X509_CREATE_C
X.509 certificate creation
Found in: Component config > mbedTLS > Certificates
Support for creating X.509 certificates and CSRs.
- Symbol can be set when:
CONFIG_MBEDTLS_PK_WRITE_C is enabled && CONFIG_MBEDTLS_MD_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_X509_CRT_WRITE_C
X.509 certificate writing
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_X509_CREATE_C
Support for writing X.509 certificates
- Symbol can be set when:
CONFIG_MBEDTLS_X509_CREATE_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_X509_CSR_WRITE_C
X.509 CSR writing
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_X509_CREATE_C
Support for writing X.509 CSRs
- Symbol can be set when:
CONFIG_MBEDTLS_X509_CREATE_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_X509_RSASSA_PSS_SUPPORT
X.509 PSS support
Found in: Component config > mbedTLS > Certificates
Support for parsing X.509 certificates with RSASSA-PSS signatures.
- Symbol can be set when:
CONFIG_MBEDTLS_X509_CRL_PARSE_C is enabled || CONFIG_MBEDTLS_X509_CSR_PARSE_C is enabled || CONFIG_MBEDTLS_X509_CRT_PARSE_C is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_PKCS1_V21
CONFIG_MBEDTLS_X509_TRUSTED_CERT_CALLBACK
Enable trusted certificate callbacks
Found in: Component config > mbedTLS > Certificates
Enables users to configure the set of trusted certificates through a callback instead of a linked list.
See mbedTLS documentation for required API and more details.
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_CROSS_SIGNED_VERIFY
CONFIG_MBEDTLS_ASN1_PARSE_C
Enable ASN.1 parsing
Found in: Component config > mbedTLS > Certificates
Enable ASN.1 parsing functions.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_ECDSA_C
CONFIG_MBEDTLS_ASN1_WRITE_C
Enable ASN.1 writing
Found in: Component config > mbedTLS > Certificates
Enable ASN.1 writing functions.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_ECDSA_C
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE
Enable trusted root certificate bundle
Found in: Component config > mbedTLS > Certificates
Enable support for large number of default root certificates
When enabled this option allows user to store default as well as customer specific root certificates in compressed format rather than storing full certificate. For the root certificates the public key and the subject name will be stored.
- Default value:
Enabled
Certificate Bundle Configuration
Contains:
CONFIG_MBEDTLS_DEFAULT_CERTIFICATE_BUNDLE
Default certificate bundle options
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_CERTIFICATE_BUNDLE > Certificate Bundle Configuration
Available options:
Use the full default certificate bundle (CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL)
Use only the most common certificates from the default bundles (CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN)
Use only the most common certificates from the default bundles, reducing the size with 50%, while still having around 99% coverage.
Do not use the default certificate bundle (CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE)
CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE
Add custom certificates to the default bundle
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_CERTIFICATE_BUNDLE > Certificate Bundle Configuration
- Symbol can be set when:
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is enabled && CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE_PATH
Custom certificate bundle path
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_CERTIFICATE_BUNDLE > Certificate Bundle Configuration > CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE
Name of the custom certificate directory or file. This path is evaluated relative to the project root directory.
Certificates must be either PEM encoded with a .pem extension, or DER encoded with a .der extension. Files with any other extension are not parsed: pointing this option directly at such a file fails the build, while such files inside a directory are skipped with a warning.
- Symbol can be set when:
CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is enabled && CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is enabled
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEPRECATED_LIST
Add deprecated root certificates
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_CERTIFICATE_BUNDLE > Certificate Bundle Configuration
Include the deprecated list of root certificates in the bundle. This list gets updated when a certificate is removed from the Mozilla's NSS root certificate store. This config can be enabled if you would like to ensure that none of the certificates that were deployed in the product are affected because of the update to bundle. In turn, enabling this setting keeps expired, retracted certificates in the bundle and it may pose a security risk. - Deprecated cert list may grow based based on sync with upstream bundle - Deprecated certs would be removed in ESP-IDF (next) major release
- Symbol can be set when:
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is enabled && CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is disabled && CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is enabled
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS
Maximum no of certificates allowed in certificate bundle
Found in: Component config > mbedTLS > Certificates > CONFIG_MBEDTLS_CERTIFICATE_BUNDLE > Certificate Bundle Configuration
- Symbol can be set when:
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is enabled && CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is enabled
- Default value:
200
CONFIG_MBEDTLS_ALLOW_WEAK_CERTIFICATE_VERIFICATION
Allow weak certificate verification
Found in: Component config > mbedTLS > Certificates
This options allows weak certificate verification by skipping the hostname verification. It is not recommended to use this option.
- Default value:
Disabled
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_CROSS_SIGNED_VERIFY
Support cross-signed certificate verification in certificate bundle
Found in: Component config > mbedTLS > Certificates
Enable support for cross-signed certificate verification in the certificate bundle. This feature uses an internal callback to verify the cross-signed certificates.
Enabling this feature increases peak heap usage during the TLS handshake by approximately 1 KB. This is a transient allocation (a candidate CA certificate built during certificate verification) that is freed once the handshake completes, and the exact amount scales with the maximum supported RSA key size.
- Symbol can be set when:
CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_X509_TRUSTED_CERT_CALLBACK
CONFIG_MBEDTLS_TLS_ENABLED
Enable TLS protocol support
Found in: Component config > mbedTLS
Enable support for the TLS protocol, which is used for secure communication over networks. This option is required for most secure network protocols, including HTTPS, FTPS, and others.
If you do not need TLS support, you can disable this option to save code size.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_SHA256_C
forcefully enables CONFIG_MBEDTLS_MD_C
forcefully enables CONFIG_MBEDTLS_SSL_PROTO_TLS1_2
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_TLS_USING_MBEDTLS
forcefully enabled by CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
forcefully enabled by CONFIG_WIFI_RMT_MBEDTLS_TLS_CLIENT
TLS Protocol Configuration
Contains:
CONFIG_MBEDTLS_SSL_PROTO_TLS1_2
Support TLS 1.2 protocol
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_TLS_ENABLED
CONFIG_MBEDTLS_SSL_PROTO_TLS1_3
Support TLS 1.3 protocol
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_EAP_TLS1_3 if CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
forcefully enabled by CONFIG_WIFI_RMT_EAP_TLS1_3
TLS 1.3 Configuration
Contains:
CONFIG_MBEDTLS_SSL_TLS1_3_COMPATIBILITY_MODE
TLS 1.3 middlebox compatibility mode
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 > TLS 1.3 Configuration
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_TLS1_3_KEXM_PSK
TLS 1.3 PSK key exchange mode
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 > TLS 1.3 Configuration
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_TLS1_3_KEXM_EPHEMERAL
TLS 1.3 ephemeral key exchange mode
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 > TLS 1.3 Configuration
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_TLS1_3_KEXM_PSK_EPHEMERAL
TLS 1.3 PSK ephemeral key exchange mode
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 > TLS 1.3 Configuration
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_EARLY_DATA
TLS 1.3 early data
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 > TLS 1.3 Configuration
Enable support for TLS 1.3 early data (0-RTT).
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_CLIENT_SSL_SESSION_TICKETS is enabled && CONFIG_MBEDTLS_SSL_TLS1_3_KEXM_PSK is enabled && CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_SSL_PROTO_GMTSSL1_1
Support GM/T SSL 1.1 protocol
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Provisions for GM/T SSL 1.1 support
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_TLS_MODE
TLS Protocol Role
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
mbedTLS can be compiled with protocol support for the TLS server, TLS client, or both server and client.
Reducing the number of TLS roles supported saves code size.
Available options:
Server & Client (CONFIG_MBEDTLS_TLS_SERVER_AND_CLIENT)
Server (CONFIG_MBEDTLS_TLS_SERVER_ONLY)
Client (CONFIG_MBEDTLS_TLS_CLIENT_ONLY)
CONFIG_MBEDTLS_SSL_CID_PADDING_GRANULARITY
Record plaintext padding
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Controls the use of record plaintext padding in TLS 1.3 and when using the Connection ID extension in DTLS 1.2.
The padding will always be chosen so that the length of the padded plaintext is a multiple of the value of this option.
Notes: A value of 1 means that no padding will be used for outgoing records. On systems lacking division instructions, a power of two should be preferred.
- Symbol can be set when:
(CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled || CONFIG_MBEDTLS_SSL_DTLS_CONNECTION_ID is enabled) && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Range:
from 0 to 32
- Default value:
16
CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE
Keep peer certificate after handshake completion
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Keep the peer's certificate after completion of the handshake. Disabling this option will save about 4kB of heap and some code size.
See mbedTLS documentation for required API and more details.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_SSL_PROTO_TLS1_3
CONFIG_MBEDTLS_SSL_CONTEXT_SERIALIZATION
Enable serialization of the TLS context structures
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Enable serialization of the TLS context structures This is a local optimization in handling a single, potentially long-lived connection.
See mbedTLS documentation for required API and more details. Disabling this option will save some code and RAM size.
- Symbol can be set when:
(CONFIG_MBEDTLS_GCM_C is enabled || CONFIG_MBEDTLS_CCM_C is enabled || CONFIG_MBEDTLS_CHACHAPOLY_C is enabled) && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_SSL_CACHE_C
Enable SSL session cache
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Enable simple SSL session cache implementation.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_ALL_ALERT_MESSAGES
Enable all TLS alert messages
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Enable all TLS alert messages in case of encountered errors as per RFC. If disabled, Mbed TLS can still communicate with other servers, only debugging of failures is harder. The advantage of not sending alert messages, is that no information is given about reasons for failures thus preventing adversaries of gaining intel.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
TLS Key Exchange Configuration
Contains:
CONFIG_MBEDTLS_PSK_MODES
Enable pre-shared-key ciphersuites
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration
Enable to show configuration for different types of pre-shared-key TLS authentatication methods.
Leaving this options disabled will save code size if they are not used.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_TLS_PSK_VERIFICATION if CONFIG_ESP_TLS_USING_MBEDTLS is enabled
CONFIG_MBEDTLS_KEY_EXCHANGE_PSK
Enable PSK based ciphersuite modes
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration > CONFIG_MBEDTLS_PSK_MODES
Enable to support symmetric key PSK (pre-shared-key) TLS key exchange modes.
- Symbol can be set when:
CONFIG_MBEDTLS_PSK_MODES is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_TLS_PSK_VERIFICATION if CONFIG_ESP_TLS_USING_MBEDTLS is enabled
CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_PSK
Enable ECDHE-PSK based ciphersuite modes
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration > CONFIG_MBEDTLS_PSK_MODES
Enable to support Elliptic-Curve-Diffie-Hellman PSK (pre-shared-key) TLS authentication modes.
- Symbol can be set when:
CONFIG_MBEDTLS_PSK_MODES is enabled && CONFIG_MBEDTLS_ECDH_C is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_TLS_PSK_VERIFICATION if CONFIG_ESP_TLS_USING_MBEDTLS is enabled && CONFIG_MBEDTLS_ECDH_C is enabled
CONFIG_MBEDTLS_KEY_EXCHANGE_RSA_PSK
Enable RSA-PSK based ciphersuite modes
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration > CONFIG_MBEDTLS_PSK_MODES
Enable to support RSA PSK (pre-shared-key) TLS authentication modes.
- Symbol can be set when:
CONFIG_MBEDTLS_PSK_MODES is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_KEY_EXCHANGE_RSA
Enable RSA-only based ciphersuite modes
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration
Enable to support ciphersuites with prefix TLS-RSA-WITH-
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE
Support Elliptic Curve based ciphersuites
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration
Enable to show Elliptic Curve based ciphersuite mode options. Disabling all Elliptic Curve ciphersuites saves code size and can give slightly faster TLS handshakes, provided the server supports RSA-only ciphersuite modes.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA
Enable ECDHE-RSA based ciphersuite modes
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration > CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE
Enable to support ciphersuites with prefix TLS-ECDHE-RSA-WITH-
- Symbol can be set when:
CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE is enabled && CONFIG_MBEDTLS_ECDH_C is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA
Enable ECDHE-ECDSA based ciphersuite modes
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration > CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE
Enable to support ciphersuites with prefix TLS-ECDHE-ECDSA-WITH-
- Symbol can be set when:
CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE is enabled && CONFIG_MBEDTLS_ECDH_C is enabled && CONFIG_MBEDTLS_ECDSA_C is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_KEY_EXCHANGE_ECJPAKE
Enable ECJPAKE based ciphersuite modes
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration > TLS Key Exchange Configuration
Enable to support ciphersuites with prefix TLS-ECJPAKE-WITH-
- Symbol can be set when:
CONFIG_MBEDTLS_ECJPAKE_C is enabled && CONFIG_MBEDTLS_ECP_DP_SECP256R1_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_SSL_SERVER_NAME_INDICATION
Enable server name indication
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Enable support for RFC 6066 server name indication (SNI).
- Symbol can be set when:
CONFIG_MBEDTLS_X509_CRT_PARSE_C is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_ALPN
Support ALPN (Application Layer Protocol Negotiation)
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Disabling this option will save some code size if it is not needed.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
Enable support for TLS max fragment length extension
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Enable support for the TLS max fragment length extension.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_RECORD_SIZE_LIMIT
Enable support for record size limit
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Enable support for record size limit in TLS 1.3.
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH
Variable SSL buffer length
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
This enables the SSL buffer to be resized automatically based on the negotiated maximum fragment length in each direction.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_SSL_RENEGOTIATION
Support TLS renegotiation
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
The two main uses of renegotiation are (1) refresh keys on long-lived connections and (2) client authentication after the initial handshake. If you don't need renegotiation, disabling it will save code size and reduce the possibility of abuse/vulnerability.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_SSL_PROTO_TLS1_2 is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_CLIENT_SSL_SESSION_TICKETS
TLS: Client Support for RFC 5077 SSL session tickets
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Client support for RFC 5077 session tickets. See mbedTLS documentation for more details. Disabling this option will save some code size.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SERVER_SSL_SESSION_TICKETS
TLS: Server Support for RFC 5077 SSL session tickets
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Server support for RFC 5077 session tickets. See mbedTLS documentation for more details. Disabling this option will save some code size.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && (CONFIG_MBEDTLS_GCM_C is enabled || CONFIG_MBEDTLS_CCM_C is enabled || CONFIG_MBEDTLS_CHACHAPOLY_C is enabled) && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_SSL_KEYING_MATERIAL_EXPORT
Enable keying material export
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_TLS_ENABLED > TLS Protocol Configuration
Enable shared symmetric keys export for TLS sessions using mbedtls_ssl_export_keying_material() after SSL handshake. The process for deriving the keys is specified in RFC 5705 for TLS 1.2 and in RFC 8446, Section 7.5, for TLS 1.3.
- Symbol can be set when:
CONFIG_MBEDTLS_TLS_ENABLED is enabled && CONFIG_MBEDTLS_TLS_ENABLED is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_SSL_PROTO_DTLS
Support DTLS protocol (all versions)
Found in: Component config > mbedTLS
Requires TLS 1.2 to be enabled for DTLS 1.2
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_TLS1_2 is enabled
- Default value:
Disabled
DTLS-based configurations
Contains:
CONFIG_MBEDTLS_SSL_DTLS_CONNECTION_ID
Support for the DTLS Connection ID extension
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_SSL_PROTO_DTLS > DTLS-based configurations
Enable support for the DTLS Connection ID extension which allows to identify DTLS connections across changes in the underlying transport.
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_DTLS is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_SSL_CID_IN_LEN_MAX
Maximum length of CIDs used for incoming DTLS messages
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_SSL_PROTO_DTLS > DTLS-based configurations > CONFIG_MBEDTLS_SSL_DTLS_CONNECTION_ID
Maximum length of CIDs used for incoming DTLS messages
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_DTLS_CONNECTION_ID is enabled && CONFIG_MBEDTLS_SSL_PROTO_DTLS is enabled
- Range:
from 0 to 32
- Default value:
32
CONFIG_MBEDTLS_SSL_CID_OUT_LEN_MAX
Maximum length of CIDs used for outgoing DTLS messages
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_SSL_PROTO_DTLS > DTLS-based configurations > CONFIG_MBEDTLS_SSL_DTLS_CONNECTION_ID
Maximum length of CIDs used for outgoing DTLS messages
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_DTLS_CONNECTION_ID is enabled && CONFIG_MBEDTLS_SSL_PROTO_DTLS is enabled
- Range:
from 0 to 32
- Default value:
32
CONFIG_MBEDTLS_SSL_DTLS_SRTP
Enable support for negotiation of DTLS-SRTP (RFC 5764)
Found in: Component config > mbedTLS > CONFIG_MBEDTLS_SSL_PROTO_DTLS > DTLS-based configurations
Enable support for negotiation of DTLS-SRTP (RFC 5764) through the use_srtp extension.
See mbedTLS documentation for required API and more details. Disabling this option will save some code size.
- Symbol can be set when:
CONFIG_MBEDTLS_SSL_PROTO_DTLS is enabled
- Default value:
Disabled
Symmetric Ciphers
Contains:
CONFIG_MBEDTLS_AES_C
AES block cipher
Found in: Component config > mbedTLS > Symmetric Ciphers
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_SMP_CRYPTO_STACK_MBEDTLS
forcefully enabled by CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
forcefully enabled by CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
CONFIG_MBEDTLS_CAMELLIA_C
Camellia block cipher
Found in: Component config > mbedTLS > Symmetric Ciphers
- Default value:
Disabled
CONFIG_MBEDTLS_ARIA_C
CONFIG_MBEDTLS_CAMELLIA_SMALL_MEMORY
Use small memory implementation of Camellia
Found in: Component config > mbedTLS > Symmetric Ciphers
Reduces ROM usage of the Camellia implementation
- Symbol can be set when:
CONFIG_MBEDTLS_CAMELLIA_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_DES_C
DES block cipher (legacy, insecure)
Found in: Component config > mbedTLS > Symmetric Ciphers
Enables the DES block cipher to support 3DES-based TLS ciphersuites.
3DES is vulnerable to the Sweet32 attack and should only be enabled if absolutely necessary.
- Default value:
Disabled
CONFIG_MBEDTLS_CCM_C
CCM (Counter with CBC-MAC) block cipher modes
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable Counter with CBC-MAC (CCM) modes for AES and/or Camellia ciphers.
Disabling this option saves some code size.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled || CONFIG_MBEDTLS_CAMELLIA_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_CIPHER_MODE_CBC
CBC (Cipher Block Chaining) block cipher modes
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable Cipher Block Chaining (CBC) modes for AES and/or Camellia ciphers.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled || CONFIG_MBEDTLS_CAMELLIA_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_CIPHER_MODE_CFB
CFB (Cipher Feedback) block cipher modes
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable Cipher Feedback (CFB) modes for AES and/or Camellia ciphers.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled || CONFIG_MBEDTLS_CAMELLIA_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_CIPHER_MODE_CTR
CTR (Counter) block cipher modes
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable Counter (CTR) modes for AES and/or Camellia ciphers.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled || CONFIG_MBEDTLS_CAMELLIA_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_CIPHER_MODE_OFB
OFB (Output Feedback) block cipher modes
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable Output Feedback (OFB) modes for AES and/or Camellia ciphers.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled || CONFIG_MBEDTLS_CAMELLIA_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_CIPHER_MODE_XTS
XTS (XEX Tweakable Block Cipher with Ciphertext Stealing) block cipher modes
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable XEX Tweakable Block Cipher with Ciphertext Stealing (XTS) modes for AES and/or Camellia ciphers.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled || CONFIG_MBEDTLS_CAMELLIA_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_GCM_C
GCM (Galois/Counter) block cipher modes
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable Galois/Counter Mode for AES and/or Camellia ciphers.
This option is generally faster than CCM.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled || CONFIG_MBEDTLS_CAMELLIA_C is enabled || CONFIG_MBEDTLS_ARIA_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_NIST_KW_C
NIST key wrapping (KW) and KW padding (KWP)
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable NIST key wrapping and key wrapping padding.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_AES_ROM_TABLES
Store AES tables in ROM
Found in: Component config > mbedTLS > Symmetric Ciphers
Store the AES tables in ROM instead of generating them at runtime. Using precomputed ROM tables reduces RAM usage, but increases flash usage.
- Default value:
Enabled
CONFIG_MBEDTLS_AES_FEWER_TABLES
Use fewer AES tables
Found in: Component config > mbedTLS > Symmetric Ciphers
Use fewer AES tables to reduce ROM/RAM usage. Using fewer tables increases the time taken to generate the tables at runtime, but reduces ROM/RAM usage.
- Default value:
Disabled
CONFIG_MBEDTLS_AES_ONLY_128_BIT_KEY_LENGTH
Only support 128-bit AES keys
Found in: Component config > mbedTLS > Symmetric Ciphers
Only support 128-bit AES keys. This reduces code size, but disables support for 192-bit and 256-bit AES keys.
- Default value:
Disabled
CONFIG_MBEDTLS_CMAC_C
Enable CMAC mode for block ciphers
Found in: Component config > mbedTLS > Symmetric Ciphers
Enable the CMAC (Cipher-based Message Authentication Code) mode for block ciphers.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled || CONFIG_MBEDTLS_DES_C is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_SMP_CRYPTO_STACK_MBEDTLS
forcefully enabled by CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS
forcefully enabled by CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
forcefully enabled by CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
Asymmetric Ciphers
Contains:
CONFIG_MBEDTLS_RSA_C
RSA public key cryptosystem
Found in: Component config > mbedTLS > Asymmetric Ciphers
Enable RSA. Needed to use RSA-xxx TLS ciphersuites.
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_C
Enable Elliptic Curve Ciphers(ECC) support
Found in: Component config > mbedTLS > Asymmetric Ciphers
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_SMP_CRYPTO_STACK_MBEDTLS
forcefully enabled by CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
forcefully enabled by CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
Supported Curves
Contains:
CONFIG_MBEDTLS_ECP_DP_SECP256R1_ENABLED
Enable SECP256R1 curve
Found in: Component config > mbedTLS > Asymmetric Ciphers > Supported Curves
Enable support for SECP256R1 Elliptic Curve.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_SMP_CRYPTO_STACK_MBEDTLS
forcefully enabled by CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
forcefully enabled by CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
CONFIG_MBEDTLS_ECP_DP_SECP384R1_ENABLED
Enable SECP384R1 curve
Found in: Component config > mbedTLS > Asymmetric Ciphers > Supported Curves
Enable support for SECP384R1 Elliptic Curve.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_DP_SECP521R1_ENABLED
Enable SECP521R1 curve
Found in: Component config > mbedTLS > Asymmetric Ciphers > Supported Curves
Enable support for SECP521R1 Elliptic Curve.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_DP_SECP256K1_ENABLED
Enable SECP256K1 curve
Found in: Component config > mbedTLS > Asymmetric Ciphers > Supported Curves
Enable support for SECP256K1 Elliptic Curve.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_DP_BP256R1_ENABLED
Enable BP256R1 curve
Found in: Component config > mbedTLS > Asymmetric Ciphers > Supported Curves
support for DP Elliptic Curve.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_DP_BP384R1_ENABLED
Enable BP384R1 curve
Found in: Component config > mbedTLS > Asymmetric Ciphers > Supported Curves
support for DP Elliptic Curve.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_DP_BP512R1_ENABLED
Enable BP512R1 curve
Found in: Component config > mbedTLS > Asymmetric Ciphers > Supported Curves
support for DP Elliptic Curve.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_DP_CURVE25519_ENABLED
Enable CURVE25519 curve
Found in: Component config > mbedTLS > Asymmetric Ciphers > Supported Curves
Enable support for CURVE25519 Elliptic Curve.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
Elliptic Curve Ciphers Configuration
Contains:
CONFIG_MBEDTLS_ECP_NIST_OPTIM
NIST 'modulo p' optimisations
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
NIST 'modulo p' optimisations increase Elliptic Curve operation performance.
Disabling this option saves some code size.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_FIXED_POINT_OPTIM
Enable fixed-point multiplication optimisations
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
This configuration option enables optimizations to speedup (about 3 ~ 4 times) the ECP fixed point multiplication using pre-computed tables in the flash memory. Enabling this configuration option increases the flash footprint (about 29KB if all Elliptic Curve selected) in the application binary.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_ECDH_LEGACY_CONTEXT
Use a backward compatible ECDH context (Experimental)
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Use the legacy ECDH context format. Define this option only if you enable MBEDTLS_ECP_RESTARTABLE or if you want to access ECDH context fields directly.
- Symbol can be set when:
CONFIG_MBEDTLS_ECDH_C is enabled && CONFIG_MBEDTLS_ECP_RESTARTABLE is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_ECP_RESTARTABLE
CONFIG_MBEDTLS_DHM_C
Diffie-Hellman-Merkle key exchange (DHM)
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Enable DHM. Needed to use DHE-xxx TLS ciphersuites.
Note that the security of Diffie-Hellman key exchanges depends on a suitable prime being used for the exchange. Please see detailed warning text about this in file mbedtls/dhm.h file.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_ECDH_C
Elliptic Curve Diffie-Hellman (ECDH)
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Enable ECDH. Needed to use ECDHE-xxx TLS ciphersuites.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_BT_SMP_CRYPTO_STACK_MBEDTLS
forcefully enabled by CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
forcefully enabled by CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
CONFIG_MBEDTLS_ECJPAKE_C
Elliptic curve J-PAKE
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Enable ECJPAKE. Needed to use ECJPAKE-xxx TLS ciphersuites.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_ECDSA_C
Elliptic Curve DSA
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Enable ECDSA. Needed to use ECDSA-xxx TLS ciphersuites.
- Symbol can be set when:
CONFIG_MBEDTLS_ECDH_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_ASN1_WRITE_C
forcefully enables CONFIG_MBEDTLS_ASN1_PARSE_C
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_MBEDTLS_CRYPTO
forcefully enabled by CONFIG_WIFI_RMT_MBEDTLS_CRYPTO
CONFIG_MBEDTLS_PK_PARSE_EC_EXTENDED
Enhance support for reading EC keys
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Enhance support for reading EC keys using variants of SEC1 not allowed by RFC 5915 and RFC 5480.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_PK_PARSE_EC_COMPRESSED
Enable the support for parsing public keys of type Short Weierstrass
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Enable the support for parsing public keys of type Short Weierstrass (MBEDTLS_ECP_DP_SECP_XXX and MBEDTLS_ECP_DP_BP_XXX) which are using the compressed point format. This parsing is done through ECP module's functions. depends on MBEDTLS_ECP_C
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECDSA_DETERMINISTIC
Enable deterministic ECDSA
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Standard ECDSA is "fragile" in the sense that lack of entropy when signing may result in a compromise of the long-term signing key.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_ECP_RESTARTABLE
Enable mbedTLS ecp restartable
Found in: Component config > mbedTLS > Asymmetric Ciphers > Elliptic Curve Ciphers Configuration
Enable "non-blocking" ECC operations that can return early and be resumed.
- Symbol can be set when:
CONFIG_MBEDTLS_ECP_C is enabled && CONFIG_MBEDTLS_ECP_C is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_ECDH_LEGACY_CONTEXT
Hash functions
Contains:
CONFIG_MBEDTLS_RIPEMD160_C
Enable RIPEMD-160 hash algorithm
Found in: Component config > mbedTLS > Hash functions
Enable the RIPEMD-160 hash algorithm.
- Default value:
Disabled
CONFIG_MBEDTLS_MD_C
Enable message digest support
Found in: Component config > mbedTLS > Hash functions
Enable generic layer for message digest algorithms.
- Symbol can be set when:
CONFIG_MBEDTLS_MD5_C is enabled || CONFIG_MBEDTLS_RIPEMD160_C is enabled || CONFIG_MBEDTLS_SHA1_C is enabled || CONFIG_MBEDTLS_SHA224_C is enabled || CONFIG_MBEDTLS_SHA256_C is enabled || CONFIG_MBEDTLS_SHA384_C is enabled || CONFIG_MBEDTLS_SHA512_C is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_TLS_ENABLED
forcefully enabled by CONFIG_MBEDTLS_PKCS5_C
CONFIG_MBEDTLS_MD5_C
Enable the MD5 cryptographic hash algorithm
Found in: Component config > mbedTLS > Hash functions
Enables support for MD5. This module is required for TLS 1.2 depending on the handshake parameters. Further, it is used for checking MD5-signed certificates, and for PBKDF1 when decrypting PEM-encoded encrypted keys. MD5 is considered a weak message digest and its use constitutes a security risk. If possible, consider stronger message digests such as SHA-256 (part of the SHA-2 family).
- Default value:
Enabled
CONFIG_MBEDTLS_SHA1_C
Enable the SHA-1 cryptographic hash algorithm
Found in: Component config > mbedTLS > Hash functions
Enabling MBEDTLS_SHA1_C adds support for SHA-1. SHA-1 is considered a weak message digest and its use constitutes a security risk. Disabling this configuration option could impact TLS 1.2 / Wi-Fi Enterprise compatibility with certain older certificates that rely on SHA-1 for digital signatures. Before proceeding, ensure that all your certificates are using stronger hash algorithms, such as SHA-256 (part of the SHA-2 family). If you're using older certificates or if you're unsure about the impact on your product, please consider testing the changes in a controlled environment for individual features like OTA updates, cloud connectivity, secure local control, etc.
- Default value:
Enabled
CONFIG_MBEDTLS_SHA224_C
Enable the SHA-224 cryptographic hash algorithm
Found in: Component config > mbedTLS > Hash functions
Enable MBEDTLS_SHA224_C adds support for SHA-224.
- Default value:
Disabled
CONFIG_MBEDTLS_SHA256_C
Enable the SHA-256 cryptographic hash algorithm
Found in: Component config > mbedTLS > Hash functions
Enable MBEDTLS_SHA256_C adds support for SHA-256.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_NAN_SECURITY if CONFIG_ESP_WIFI_NAN_SYNC_ENABLE is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
forcefully enabled by CONFIG_WIFI_RMT_NAN_SECURITY
forcefully enabled by CONFIG_MBEDTLS_TLS_ENABLED
CONFIG_MBEDTLS_SHA384_C
Enable the SHA-384 cryptographic hash algorithm
Found in: Component config > mbedTLS > Hash functions
Enable MBEDTLS_SHA384_C adds support for SHA-384.
- Default value:
Enabled
CONFIG_MBEDTLS_SHA512_C
Enable the SHA-384 and SHA-512 cryptographic hash algorithms
Found in: Component config > mbedTLS > Hash functions
Enable MBEDTLS_SHA512_C adds support for SHA-512.
- Default value:
Enabled
CONFIG_MBEDTLS_SHA3_C
Enable the SHA3 cryptographic hash algorithm
Found in: Component config > mbedTLS > Hash functions
Enabling MBEDTLS_SHA3_C adds support for SHA3. Enabling this configuration option increases the flash footprint by almost 4KB.
- Default value:
Disabled
CONFIG_MBEDTLS_ROM_MD5
Use MD5 implementation in ROM
Found in: Component config > mbedTLS > Hash functions
Use ROM MD5 in mbedTLS.
- Default value:
Enabled
CONFIG_MBEDTLS_SHA256_SMALLER
Enable SHA-256 smaller implementation
Found in: Component config > mbedTLS > Hash functions
Enable a smaller implementation of SHA-256 that has lower ROM footprint but is slower than the default implementation.
- Symbol can be set when:
CONFIG_MBEDTLS_HARDWARE_SHA is disabled && CONFIG_MBEDTLS_SHA256_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_SHA512_SMALLER
Enable SHA-512 smaller implementation
Found in: Component config > mbedTLS > Hash functions
Enable a smaller implementation of SHA-512 that has lower ROM footprint but is slower than the default implementation.
- Symbol can be set when:
CONFIG_MBEDTLS_HARDWARE_SHA is disabled && CONFIG_MBEDTLS_SHA512_C is enabled
- Default value:
Disabled
Hardware Acceleration
Contains:
CONFIG_MBEDTLS_HARDWARE_ECDSA_VERIFY
Enable ECDSA signature verification using on-chip ECDSA peripheral
Found in: Component config > mbedTLS > Hardware Acceleration
Enable hardware accelerated ECDSA peripheral to verify signature on curve SECP192R1 and SECP256R1 in mbedTLS. Note that SECP192R1 support is disabled by default.
- Default value:
Enabled
CONFIG_MBEDTLS_HARDWARE_ECDSA_SIGN
Enable ECDSA signing using on-chip ECDSA peripheral
Found in: Component config > mbedTLS > Hardware Acceleration
Enable hardware accelerated ECDSA peripheral to sign data on curve SECP192R1 and SECP256R1 in mbedTLS. Note that SECP192R1 support is disabled by default.
Note that for signing, the private key has to be burnt in an efuse key block with key purpose set to ECDSA_KEY. If no key is burnt, it will report an error
The key should be burnt in little endian format. espefuse utility handles it internally but care needs to be taken while burning using esp_efuse APIs
- Default value:
Disabled
CONFIG_MBEDTLS_TEE_SEC_STG_ECDSA_SIGN
Enable ECDSA signing using TEE secure storage
Found in: Component config > mbedTLS > Hardware Acceleration
- Symbol can be set when:
CONFIG_SECURE_ENABLE_TEE is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_HARDWARE_ECC
Enable hardware ECC acceleration
Found in: Component config > mbedTLS > Hardware Acceleration
Enable hardware accelerated ECC point multiplication and point verification for points on curve SECP192R1 and SECP256R1 in mbedTLS Note that SECP192R1 support is disabled by default.
- Default value:
Enabled
CONFIG_MBEDTLS_ECC_OTHER_CURVES_SOFT_FALLBACK
Fallback to software implementation for curves not supported in hardware
Found in: Component config > mbedTLS > Hardware Acceleration > CONFIG_MBEDTLS_HARDWARE_ECC
Fallback to software implementation of ECC point multiplication and point verification for curves not supported in hardware.
- Symbol can be set when:
CONFIG_MBEDTLS_HARDWARE_ECC is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_HARDWARE_SHA
Enable hardware SHA acceleration
Found in: Component config > mbedTLS > Hardware Acceleration
Enable hardware accelerated SHA1, SHA256, SHA384 & SHA512 in mbedTLS.
Due to a hardware limitation, on the ESP32 hardware acceleration is only guaranteed if SHA digests are calculated one at a time. If more than one SHA digest is calculated at the same time, one will be calculated fully in hardware and the rest will be calculated (at least partially calculated) in software. This happens automatically.
SHA hardware acceleration is faster than software in some situations but slower in others. You should benchmark to find the best setting for you.
- Default value:
Enabled
Security hardening
Contains:
CONFIG_MBEDTLS_CONSTANT_TIME_PRIME_GEN
Constant-time prime generation
Found in: Component config > mbedTLS > Hardware Acceleration > Security hardening
Use mbedtls' constant-time small-factor test (a constant-time GCD against the product of all odd primes up to 997) when generating prime numbers, e.g. during RSA key generation.
The constant-time implementation avoids a timing side channel in prime generation, but it makes RSA key generation roughly ten times slower, and its long non-yielding software computations can starve the idle task and trigger the task watchdog, so key generation code may need a larger watchdog timeout or the watchdog disabled.
If disabled, the variable-time trial division that mbedtls used before versions 3.6.7/4.1.1 is used instead, restoring key generation performance.
Please see issue: https://github.com/Mbed-TLS/mbedtls/issues/10830
- Default value:
Disabled
CONFIG_MBEDTLS_SECURE_ELEMENT_DRIVER_ENABLED
Enable secure element hardware support (e.g., ATECC608A)
Found in: Component config > mbedTLS > Hardware Acceleration
Enable PSA Crypto driver support for external secure elements. This enables sign, verify, and key export operations via runtime-registered callbacks from the secure element component (e.g., esp-cryptoauthlib). The private key never leaves the secure element.
- Default value:
Disabled
Entropy and Random Number Generation
Contains:
CONFIG_MBEDTLS_ENTROPY_FORCE_SHA256
Force SHA-256 for entropy
Found in: Component config > mbedTLS > Entropy and Random Number Generation
Force SHA-256 to be used for the entropy pool if both SHA-256 and SHA-512 are enabled. On 32-bit architectures, SHA-256 can be faster than SHA-512
- Symbol can be set when:
CONFIG_MBEDTLS_SHA256_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_CTR_DRBG_C
Enable CTR_DRBG
Found in: Component config > mbedTLS > Entropy and Random Number Generation
Enable CTR_DRBG (CTR mode Deterministic Random Bit Generator). The CTR_DRBG generator uses AES-256 by default.
- Symbol can be set when:
CONFIG_MBEDTLS_AES_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_HMAC_DRBG_C
Enable HMAC_DRBG
Found in: Component config > mbedTLS > Entropy and Random Number Generation
Enable HMAC_DRBG (HMAC mode Deterministic Random Bit Generator).
- Symbol can be set when:
CONFIG_MBEDTLS_MD_C is enabled
- Default value:
Enabled
Encoding/Decoding
Contains:
CONFIG_MBEDTLS_BASE64_C
Enable Base64 encoding/decoding
Found in: Component config > mbedTLS > Encoding/Decoding
Enable Base64 encoding and decoding functions. This is required for PEM support.
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_PEM_PARSE_C
forcefully enabled by CONFIG_MBEDTLS_PEM_WRITE_C
CONFIG_MBEDTLS_PKCS5_C
Enable PKCS#5 functions
Found in: Component config > mbedTLS > Encoding/Decoding
Enable support for PKCS#5 functions.
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_MBEDTLS_MD_C
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_ESP_WIFI_NAN_SECURITY if CONFIG_ESP_WIFI_NAN_SYNC_ENABLE is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_ESP_WIFI_MBEDTLS_CRYPTO is enabled
forcefully enabled by CONFIG_WIFI_RMT_NAN_SECURITY
CONFIG_MBEDTLS_PKCS7_C
Enable PKCS number 7
Found in: Component config > mbedTLS > Encoding/Decoding
Enable PKCS number 7 core for using PKCS number 7-formatted signatures.
- Symbol can be set when:
CONFIG_MBEDTLS_ASN1_PARSE_C is enabled && CONFIG_MBEDTLS_PK_PARSE_C is enabled && CONFIG_MBEDTLS_X509_CRT_PARSE_C is enabled && CONFIG_MBEDTLS_X509_CRL_PARSE_C is enabled && CONFIG_MBEDTLS_MD_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_PKCS1_V15
Enable PKCS#1 v1.5 padding
Found in: Component config > mbedTLS > Encoding/Decoding
Enable support for PKCS#1 v1.5 operations.
- Symbol can be set when:
CONFIG_MBEDTLS_RSA_C is enabled
- Default value:
Enabled
CONFIG_MBEDTLS_PKCS1_V21
Enable PKCS#1 v2.1 padding
Found in: Component config > mbedTLS > Encoding/Decoding
Enable support for PKCS#1 v2.1 operations.
- Symbol can be set when:
CONFIG_MBEDTLS_RSA_C is enabled && CONFIG_MBEDTLS_MD_C is enabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_MBEDTLS_X509_RSASSA_PSS_SUPPORT
Stream Cipher
Contains:
CONFIG_MBEDTLS_CHACHAPOLY_C
ChaCha20-Poly1305 AEAD algorithm
Found in: Component config > mbedTLS > Stream Cipher
Enable support for ChaCha20-Poly1305 AEAD algorithm.
- Symbol can be set when:
CONFIG_MBEDTLS_CHACHA20_C is enabled
- Default value:
Disabled
CONFIG_MBEDTLS_CHACHA20_C
Chacha20 stream cipher
Found in: Component config > mbedTLS > Stream Cipher
Enable support for Chacha20 stream cipher.
- Default value:
Disabled
NVS
Contains:
CONFIG_NVS_ENCRYPTION
Enable NVS encryption
Found in: Component config > NVS
This option enables encryption for NVS. When enabled, XTS-AES is used to encrypt the complete NVS data, except the page headers. It requires XTS encryption keys to be stored in an encrypted partition (enabling flash encryption is mandatory here) or to be derived from an HMAC key burnt in eFuse.
- Symbol can be set when:
CONFIG_SECURE_FLASH_ENC_ENABLED is enabled
- Default value:
Enabled if CONFIG_SECURE_FLASH_ENC_ENABLED is enabled
CONFIG_NVS_COMPATIBLE_PRE_V4_3_ENCRYPTION_FLAG
NVS partition encrypted flag compatible with ESP-IDF before v4.3
Found in: Component config > NVS
Enabling this will ignore "encrypted" flag for NVS partitions. NVS encryption scheme is different than hardware flash encryption and hence it is not recommended to have "encrypted" flag for NVS partitions. This was not being checked in pre v4.3 IDF. Hence, if you have any devices where this flag is kept enabled in partition table then enabling this config will allow to have same behavior as pre v4.3 IDF.
- Symbol can be set when:
CONFIG_SECURE_FLASH_ENC_ENABLED is enabled
CONFIG_NVS_ASSERT_ERROR_CHECK
Use assertions for error checking
Found in: Component config > NVS
This option switches error checking type between assertions (y) or return codes (n).
- Default value:
Disabled
CONFIG_NVS_LEGACY_DUP_KEYS_COMPATIBILITY
Enable legacy nvs_set function behavior when same key is reused with different data types
Found in: Component config > NVS
Enabling this option will switch the nvs_set() family of functions to the legacy mode: when called repeatedly with the same key but different data type, the existing value in the NVS remains active and the new value is just stored, actually not accessible through corresponding nvs_get() call for the key given. Use this option only when your application relies on such NVS API behaviour.
- Default value:
Disabled
CONFIG_NVS_ALLOCATE_CACHE_IN_SPIRAM
Prefers allocation of in-memory cache structures in SPI connected PSRAM
Found in: Component config > NVS
Enabling this option lets NVS library try to allocate page cache and key hash list in SPIRAM instead of internal RAM. It can help applications using large nvs partitions or large number of keys to save heap space in internal RAM. SPIRAM heap allocation negatively impacts speed of NVS operations as the CPU accesses NVS cache via SPI instead of direct access to the internal RAM.
- Symbol can be set when:
CONFIG_SPIRAM is enabled && (CONFIG_SPIRAM_USE_CAPS_ALLOC is enabled || CONFIG_SPIRAM_USE_MALLOC is enabled)
- Default value:
Disabled
CONFIG_NVS_BDL_STACK
Run NVS on BDL instead of ESP_Partition
Found in: Component config > NVS
This option enforces internal use of Block Device Layer instead ESP_Partition.
- Default value:
Disabled
CONFIG_NVS_FLASH_VERIFY_ERASE
Enable verification of erase operations by reading back the erased data
Found in: Component config > NVS
This option ensures that erase operations are verified by reading back the flash memory.
- Default value:
Disabled
CONFIG_NVS_FLASH_ERASE_ATTEMPTS
Total number of flash erase attempts in case the erase verification fails
Found in: Component config > NVS > CONFIG_NVS_FLASH_VERIFY_ERASE
Configures the total number of flash erase attempts. The flash erase operation will be attempted up to this number of times before returning an error. Minimum value is 1, maximum value is 10.
- Symbol can be set when:
CONFIG_NVS_FLASH_VERIFY_ERASE is enabled
- Range:
from 1 to 10
- Default value:
2
NVS Security Provider
Contains:
CONFIG_NVS_SEC_KEY_PROTECTION_SCHEME
NVS Encryption: Key Protection Scheme
Found in: Component config > NVS Security Provider
This choice defines the default NVS encryption keys protection scheme; which will be used for the default NVS partition. Users can use the corresponding scheme registration APIs to register other schemes for the default as well as other NVS partitions.
Available options:
Using Flash Encryption (CONFIG_NVS_SEC_KEY_PROTECT_USING_FLASH_ENC)
Protect the NVS Encryption Keys using Flash Encryption Requires a separate 'nvs_keys' partition (which will be encrypted by flash encryption) for storing the NVS encryption keys
Using HMAC peripheral (CONFIG_NVS_SEC_KEY_PROTECT_USING_HMAC)
Derive and protect the NVS Encryption Keys using the HMAC peripheral Requires the specified eFuse block (NVS_SEC_HMAC_EFUSE_KEY_ID or the v2 API argument) to be empty or pre-written with a key with the purpose ESP_EFUSE_KEY_PURPOSE_HMAC_UP
None (CONFIG_NVS_SEC_KEY_PROTECT_NONE)
Select this option if key derivation/protection is handled by a custom implementation, and not by the nvs_sec_provider component.
OpenThread
Contains:
CONFIG_OPENTHREAD_ENABLED
OpenThread
Found in: Component config > OpenThread
Select this option to enable OpenThread and show the submenu with OpenThread configuration choices.
- Default value:
Disabled
Thread Task Parameters
Contains:
CONFIG_OPENTHREAD_TASK_NAME
OpenThread task name
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Task Parameters
The OpenThread task name.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"ot_main"
CONFIG_OPENTHREAD_TASK_SIZE
Size of OpenThread task
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Task Parameters
The size in bytes of OpenThread task.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
8192
CONFIG_OPENTHREAD_TASK_PRIORITY
Priority of OpenThread task
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Task Parameters
The priority of OpenThread task.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
5
Thread Version Message
Contains:
CONFIG_OPENTHREAD_PACKAGE_NAME
OpenThread package name
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Version Message
The OpenThread package name.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"openthread-esp32"
CONFIG_OPENTHREAD_PLATFORM_INFO
platform information
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Version Message
The OpenThread platform information.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
CONFIG_IDF_TARGET
Thread Console
Contains:
CONFIG_OPENTHREAD_CONSOLE_ENABLE
Enable OpenThread console
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Console
Enable the OpenThread-specific console provided by the SDK. This only controls whether the SDK sets up a dedicated console for OpenThread. Even if disabled, the default ESP-IDF console (if initialized elsewhere) can still be used independently.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
CONFIG_OPENTHREAD_CONSOLE_TYPE
OpenThread console type
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Console > CONFIG_OPENTHREAD_CONSOLE_ENABLE
Select OpenThread console type
Available options:
OpenThread console type UART (CONFIG_OPENTHREAD_CONSOLE_TYPE_UART)
OpenThread console type USB Serial/JTAG Controller (CONFIG_OPENTHREAD_CONSOLE_TYPE_USB_SERIAL_JTAG)
CONFIG_OPENTHREAD_CLI
Enable Openthread Command-Line Interface
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Console
Select this option to enable Command-Line Interface in OpenThread.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
CONFIG_OPENTHREAD_CONSOLE_COMMAND_PREFIX
The prefix of the openthread CLI command registered on the esp console
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Console
A prefix string used before a Thread CLI command, allowing the ESP console to identify it and delegate the remaining command to the OpenThread callback for processing.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"ot"
Thread Core Features
Contains:
Thread Operational Dataset
Contains:
CONFIG_OPENTHREAD_NETWORK_NAME
OpenThread network name
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Operational Dataset
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"OpenThread-ESP"
CONFIG_OPENTHREAD_MESH_LOCAL_PREFIX
OpenThread mesh local prefix, format <address>/<plen>
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Operational Dataset
A string in the format "<address>/<plen>", where <address> is an IPv6 address and <plen> is a prefix length. For example "fd00:db8:a0:0::/64"
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"fd00:db8:a0:0::/64"
CONFIG_OPENTHREAD_NETWORK_CHANNEL
OpenThread network channel
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Operational Dataset
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Range:
from 11 to 26
- Default value:
15
CONFIG_OPENTHREAD_NETWORK_PANID
OpenThread network pan id
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Operational Dataset
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Range:
from 0 to 0xFFFE
- Default value:
"0x1234"
CONFIG_OPENTHREAD_NETWORK_EXTPANID
OpenThread extended pan id
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Operational Dataset
The OpenThread network extended pan id in hex string format
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
dead00beef00cafe
CONFIG_OPENTHREAD_NETWORK_MASTERKEY
OpenThread network key
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Operational Dataset
The OpenThread network network key in hex string format
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
00112233445566778899aabbccddeeff
CONFIG_OPENTHREAD_NETWORK_PSKC
OpenThread pre-shared commissioner key
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Operational Dataset
The OpenThread pre-shared commissioner key in hex string format
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
104810e2315100afd6bc9215a6bfac53
CONFIG_OPENTHREAD_DEVICE_TYPE
Thread device type
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
OpenThread can be configured to different device types (FTD, MTD, Radio)
Available options:
Full Thread Device (CONFIG_OPENTHREAD_FTD)
Select this to enable Full Thread Device which can act as router and leader in a Thread network.
Minimal Thread Device (CONFIG_OPENTHREAD_MTD)
Select this to enable Minimal Thread Device which can only act as end device in a Thread network. This will reduce the code size of the OpenThread stack.
Radio Only Device (CONFIG_OPENTHREAD_RADIO)
Select this to enable Radio Only Device which can only forward 15.4 packets to the host. The OpenThread stack will be run on the host and OpenThread will have minimal footprint on the radio only device.
Thread 15.4 Radio Link
Contains:
CONFIG_OPENTHREAD_RADIO_TYPE
Config the Thread radio type with 15.4 link
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread 15.4 Radio Link
Configure how OpenThread connects to the 15.4 radio
Available options:
Native 15.4 radio (CONFIG_OPENTHREAD_RADIO_NATIVE)
Select this to use the native 15.4 radio.
Connect via UART (CONFIG_OPENTHREAD_RADIO_SPINEL_UART)
Select this to connect to a Radio Co-Processor via UART.
Connect via SPI (CONFIG_OPENTHREAD_RADIO_SPINEL_SPI)
Select this to connect to a Radio Co-Processor via SPI.
Connect via Custom Transport (CONFIG_OPENTHREAD_RADIO_SPINEL_CUSTOM)
Select this to connect to a Radio Co-Processor via a provided Custom Transport.
Disable the Thread radio based on 15.4 link (CONFIG_OPENTHREAD_RADIO_154_NONE)
Select this to disable the Thread radio based on 15.4 link.
Thread Radio Co-Processor Feature
Contains:
CONFIG_OPENTHREAD_RCP_TRANSPORT
The RCP transport type
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Radio Co-Processor Feature
Available options:
UART RCP (CONFIG_OPENTHREAD_RCP_UART)
Select this to enable UART connection to host.
SPI RCP (CONFIG_OPENTHREAD_RCP_SPI)
Select this to enable SPI connection to host.
USB RCP (CONFIG_OPENTHREAD_RCP_USB_SERIAL_JTAG)
Select this to enable connection to host over USB JTAG serial.
Custom Transport RCP (CONFIG_OPENTHREAD_RCP_CUSTOM)
Select this to enable a custom transport connection to host
CONFIG_OPENTHREAD_NCP_VENDOR_HOOK
Enable vendor command for RCP
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Radio Co-Processor Feature
Select this to enable OpenThread NCP vendor commands.
- Symbol can be set when:
CONFIG_OPENTHREAD_RADIO is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
CONFIG_OPENTHREAD_RCP_SPINEL_CONSOLE
Enable RCP console via Spinel
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Radio Co-Processor Feature
Select this to enable sending console commands to OpenThread RCP via Spinel.
- Symbol can be set when:
CONFIG_OPENTHREAD_RADIO is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_BORDER_ROUTER
Enable Border Router
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable border router features in OpenThread.
- Symbol can be set when:
CONFIG_OPENTHREAD_FTD is enabled && CONFIG_OPENTHREAD_PLATFORM_NETIF is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_COMMISSIONER
Enable Commissioner
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable commissioner in OpenThread. This will enable the device to act as a commissioner in the Thread network. A commissioner checks the pre-shared key from a joining device with the Thread commissioning protocol and shares the network parameter with the joining device upon success.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
Commissioner Configurations
Contains:
CONFIG_OPENTHREAD_COMM_MAX_JOINER_ENTRIES
The size of max commissioning joiner entries
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > CONFIG_OPENTHREAD_COMMISSIONER > Commissioner Configurations
- Symbol can be set when:
CONFIG_OPENTHREAD_COMMISSIONER is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
2
CONFIG_OPENTHREAD_JOINER
Enable Joiner
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable Joiner in OpenThread. This allows a device to join the Thread network with a pre-shared key using the Thread commissioning protocol.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_SRP_CLIENT
Enable SRP Client
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable SRP Client in OpenThread. This allows a device to register SRP services to SRP Server.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
SRP Client Configurations
Contains:
CONFIG_OPENTHREAD_SRP_CLIENT_MAX_SERVICES
Specifies number of service entries in the SRP client service pool
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > CONFIG_OPENTHREAD_SRP_CLIENT > SRP Client Configurations
Set the max buffer size of service entries in the SRP client service pool.
- Symbol can be set when:
CONFIG_OPENTHREAD_SRP_CLIENT is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
5
CONFIG_OPENTHREAD_DNS_CLIENT
Enable DNS Client
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable DNS Client in OpenThread.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
CONFIG_OPENTHREAD_DNS64_CLIENT
Enable DNS64 Client
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to acquire NAT64 address from dns servers.
- Symbol can be set when:
CONFIG_LWIP_IPV4 is enabled && CONFIG_OPENTHREAD_PLATFORM_NETIF is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_LWIP_HOOK_DNS_EXTERNAL_RESOLVE_SELECT_CUSTOM
DNS64 Client Configurations
Contains:
CONFIG_OPENTHREAD_DNS_SERVER_ADDR
DNS server address (IPv4)
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > CONFIG_OPENTHREAD_DNS64_CLIENT > DNS64 Client Configurations
Set the DNS server IPv4 address.
- Symbol can be set when:
CONFIG_OPENTHREAD_DNS64_CLIENT is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"8.8.8.8"
CONFIG_OPENTHREAD_TIMING_OPTIMIZATION
Enable timing optimization
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable timing optimization for link metrics / CSL features.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_OPENTHREAD_LINK_METRICS if CONFIG_OPENTHREAD_RADIO_NATIVE is enabled
forcefully enabled by CONFIG_OPENTHREAD_CSL_ENABLE
CONFIG_OPENTHREAD_LINK_METRICS
Enable link metrics feature
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable link metrics feature
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_OPENTHREAD_TIMING_OPTIMIZATION if CONFIG_OPENTHREAD_RADIO_NATIVE is enabled
CONFIG_OPENTHREAD_BORDER_AGENT_ENABLE
Enable border agent feature
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable border agent feature
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled if CONFIG_OPENTHREAD_BORDER_ROUTER is enabled
Disabled if CONFIG_OPENTHREAD_BORDER_ROUTER is disabled
CONFIG_OPENTHREAD_MACFILTER_ENABLE
Enable mac filter feature
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable mac filter feature
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_CSL_ENABLE
Enable CSL feature
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable CSL feature
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_OPENTHREAD_TIMING_OPTIMIZATION
CSL Configurations
Contains:
CONFIG_OPENTHREAD_CSL_ACCURACY
The current CSL rx/tx scheduling drift, in units of ± ppm
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > CSL Configurations
The current accuracy of the clock used for scheduling CSL operations
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
50
CONFIG_OPENTHREAD_CSL_UNCERTAIN
The CSL Uncertainty in units of 10 us.
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > CSL Configurations
The fixed uncertainty of the Device for scheduling CSL Transmissions in units of 10 microseconds.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
50
CONFIG_OPENTHREAD_CSL_DEBUG_ENABLE
Enable CSL debug
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > CSL Configurations
Select this option to set rx on when sleep in CSL feature, only for debug
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_TIME_SYNC
Enable the time synchronization service feature
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable time synchronization feature, the devices in the same Thread network could sync to the same network time.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_RADIO_STATS_ENABLE
Enable Radio Statistics feature
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable the radio statistics feature, you can use radio command to print some radio Statistics information.
- Symbol can be set when:
(CONFIG_OPENTHREAD_FTD is enabled || CONFIG_OPENTHREAD_MTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_RX_ON_WHEN_IDLE
Enable OpenThread radio capability rx on when idle
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable OpenThread radio capability rx on when idle. Do not support this feature when SW coexistence is enabled.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled if CONFIG_ESP_COEX_SW_COEXIST_ENABLE is disabled && CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE is disabled
Disabled if CONFIG_ESP_COEX_SW_COEXIST_ENABLE is enabled || CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE is enabled
CONFIG_OPENTHREAD_DIAG
Enable diag
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable Diag in OpenThread. This will enable diag mode and a series of diag commands in the OpenThread command line. These commands allow users to manipulate low-level features of the storage and 15.4 radio.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
CONFIG_OPENTHREAD_PARENT_SEARCH_MTD
Enable Parent Search
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Select this option to enable "Periodic Parent Search" function for MTD. This checks the average RSS to its current parent every periodically and starts a parent search process if the average RSS is below OPENTHREAD_PARENT_SEARCH_RSS_THRESHOLD. This feature is always enabled for FTDs.
- Symbol can be set when:
CONFIG_OPENTHREAD_MTD is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
Parent Search Configurations
Contains:
CONFIG_OPENTHREAD_PARENT_SEARCH_CHECK_INTERVAL_MINS
The interval in minutes for a child to check the trigger condition to perform a parent search
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Parent Search Configurations
- Symbol can be set when:
(CONFIG_OPENTHREAD_PARENT_SEARCH_MTD is enabled || CONFIG_OPENTHREAD_FTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
9
CONFIG_OPENTHREAD_PARENT_SEARCH_BACKOFF_INTERVAL_MINS
The backoff interval in minutes for a child to not perform a parent search after triggering one
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Parent Search Configurations
- Symbol can be set when:
(CONFIG_OPENTHREAD_PARENT_SEARCH_MTD is enabled || CONFIG_OPENTHREAD_FTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
600
CONFIG_OPENTHREAD_PARENT_SEARCH_RSS_THRESHOLD
The RSS threshold used to trigger a parent search
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Parent Search Configurations
- Symbol can be set when:
(CONFIG_OPENTHREAD_PARENT_SEARCH_MTD is enabled || CONFIG_OPENTHREAD_FTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"-65"
CONFIG_OPENTHREAD_PARENT_SEARCH_RESELECT_TIMEOUT_MINS
The parent reselect timeout duration in minutes used on FTD child devices
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Parent Search Configurations
- Symbol can be set when:
(CONFIG_OPENTHREAD_PARENT_SEARCH_MTD is enabled || CONFIG_OPENTHREAD_FTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
90
CONFIG_OPENTHREAD_PARENT_SEARCH_RSS_MARGIN
The RSS margin over the current parent RSS used on FTD child devices
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Parent Search Configurations
- Symbol can be set when:
(CONFIG_OPENTHREAD_PARENT_SEARCH_MTD is enabled || CONFIG_OPENTHREAD_FTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
7
Thread Memory Allocation
Contains:
CONFIG_OPENTHREAD_PLATFORM_MALLOC_CAP_SPIRAM
Allocate memory from PSRAM
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Memory Allocation
Select this option to allocate buffer from PSRAM for Thread
- Symbol can be set when:
(CONFIG_SPIRAM_USE_CAPS_ALLOC is enabled || CONFIG_SPIRAM_USE_MALLOC is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
CONFIG_OPENTHREAD_PLATFORM_MSGPOOL_MANAGEMENT
Allocate message pool buffer from platform
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > Thread Memory Allocation
If enabled, the message pool is managed by platform defined logic.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
OpenThread Stack Parameters
Contains:
Thread Address Query Config
Contains:
CONFIG_OPENTHREAD_ADDRESS_QUERY_TIMEOUT
Timeout (in seconds) for a address notification response after sending an address query.
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters > Thread Address Query Config
- Symbol can be set when:
(CONFIG_OPENTHREAD_FTD is enabled || CONFIG_OPENTHREAD_MTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
3
CONFIG_OPENTHREAD_ADDRESS_QUERY_RETRY_DELAY
Initial retry delay for address query (in seconds).
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters > Thread Address Query Config
- Symbol can be set when:
(CONFIG_OPENTHREAD_FTD is enabled || CONFIG_OPENTHREAD_MTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
15
CONFIG_OPENTHREAD_ADDRESS_QUERY_MAX_RETRY_DELAY
Maximum retry delay for address query (in seconds).
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters > Thread Address Query Config
- Symbol can be set when:
(CONFIG_OPENTHREAD_FTD is enabled || CONFIG_OPENTHREAD_MTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
120
CONFIG_OPENTHREAD_PREFERRED_CHANNEL_MASK
Preferred channel mask
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"0x7fff800"
CONFIG_OPENTHREAD_SUPPORTED_CHANNEL_MASK
Supported channel mask
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"0x7fff800"
CONFIG_OPENTHREAD_NUM_MESSAGE_BUFFERS
The number of openthread message buffers
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
65 if CONFIG_OPENTHREAD_PLATFORM_MALLOC_CAP_SPIRAM is disabled
1024 if CONFIG_OPENTHREAD_PLATFORM_MALLOC_CAP_SPIRAM is enabled
CONFIG_OPENTHREAD_XTAL_ACCURACY
The accuracy of the XTAL
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
The device's XTAL accuracy, in ppm.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
10
CONFIG_OPENTHREAD_BUS_LATENCY
The bus latency between host and radio chip
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
The device's bus latency, in us.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
4000
CONFIG_OPENTHREAD_MLE_MAX_CHILDREN
The size of max MLE children entries
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
10
CONFIG_OPENTHREAD_TMF_ADDR_CACHE_ENTRIES
The size of max TMF address cache entries
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
20
CONFIG_OPENTHREAD_UART_BUFFER_SIZE
The uart received buffer size of openthread
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
Set the OpenThread UART buffer size.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
2048
CONFIG_OPENTHREAD_TRANSPORT_BUFFER_SIZE
The custom transport received buffer size of openthread
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
Set the OpenThread Custom transport buffer size.
- Symbol can be set when:
(CONFIG_OPENTHREAD_RCP_CUSTOM is enabled || CONFIG_OPENTHREAD_RADIO_SPINEL_CUSTOM is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
2048
CONFIG_OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT
Maximum backoffs times before declaring a channel access failure.
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features > OpenThread Stack Parameters
The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
4
CONFIG_OPENTHREAD_PLATFORM_NETIF
Enable esp_netif/lwIP glue
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Enable the default ESP-IDF OpenThread integration which creates an OpenThread esp_netif, attaches the esp_netif glue, and enables lwIP-specific DNS/netif handling.
- Symbol can be set when:
(CONFIG_OPENTHREAD_FTD is enabled || CONFIG_OPENTHREAD_MTD is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
CONFIG_OPENTHREAD_MULTIPAN_HOST_ENABLE
Enable Multipan Host
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Enable MULTI-PAN host support over the UART radio spinel interface. The host talks to a multipan RCP and demultiplexes Spinel frames by interface ID.
- Symbol can be set when:
CONFIG_OPENTHREAD_RADIO_SPINEL_UART is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_MULTIPLE_INTERFACES_COUNT
The number of multiple interfaces
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Core Features
Number of Spinel interfaces used by the multipan host or RCP.
- Symbol can be set when:
(CONFIG_OPENTHREAD_MULTIPAN_HOST_ENABLE is enabled || CONFIG_OPENTHREAD_MULTIPAN_RCP_ENABLE is enabled) && CONFIG_OPENTHREAD_ENABLED is enabled
- Range:
from 2 to 3
- Default value:
2
Thread Log
Contains:
CONFIG_OPENTHREAD_LOG_LEVEL_DYNAMIC
Enable dynamic log level control
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Log
Select this option to enable dynamic log level control for OpenThread
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Enabled
CONFIG_OPENTHREAD_LOG_LEVEL
OpenThread log verbosity
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Log
Select OpenThread log level.
Available options:
No logs (CONFIG_OPENTHREAD_LOG_LEVEL_NONE)
Error logs (CONFIG_OPENTHREAD_LOG_LEVEL_CRIT)
Warning logs (CONFIG_OPENTHREAD_LOG_LEVEL_WARN)
Notice logs (CONFIG_OPENTHREAD_LOG_LEVEL_NOTE)
Info logs (CONFIG_OPENTHREAD_LOG_LEVEL_INFO)
Debug logs (CONFIG_OPENTHREAD_LOG_LEVEL_DEBG)
Thread Extensioned Features
Contains:
CONFIG_OPENTHREAD_HEADER_CUSTOM
Use a header file defined by customer
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Extensioned Features
This option allows users to tailor the values of openthread macros according to their requirements. The openthread submodule contains numerous macros, each with a default value set. In the Kconfig of ESP openthread, users can set specific openthread parameters, which will be applied for certain openthread macros in the openthread-core-esp32x-xxx-config.h file. During compilation, the values specified in openthread-core-esp32x-xxx-config.h will replace the default settings in the openthread submodule. However, Kconfig does not cover all openthread macros, particularly those typically using default values. For such macros, users can enable the OPENTHREAD_HEADER_CUSTOM option in the Kconfig and provide a custom header file. Macros defined in the custom header file will have the highest priority.
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
Disabled
OpenThread Custom Header Config
Contains:
CONFIG_OPENTHREAD_CUSTOM_HEADER_PATH
Path of custom header file
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Extensioned Features > CONFIG_OPENTHREAD_HEADER_CUSTOM > OpenThread Custom Header Config
Please use relative paths with respect to the project folder.
- Symbol can be set when:
CONFIG_OPENTHREAD_HEADER_CUSTOM is enabled && CONFIG_OPENTHREAD_HEADER_CUSTOM is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
CONFIG_OPENTHREAD_CUSTOM_HEADER_FILE_NAME
Name of custom header file
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_ENABLED > Thread Extensioned Features > CONFIG_OPENTHREAD_HEADER_CUSTOM > OpenThread Custom Header Config
Name of custom header file.
- Symbol can be set when:
CONFIG_OPENTHREAD_HEADER_CUSTOM is enabled && CONFIG_OPENTHREAD_HEADER_CUSTOM is enabled && CONFIG_OPENTHREAD_ENABLED is enabled
- Default value:
"esp_ot_custom_config.h"
OpenThread Spinel
Contains:
CONFIG_OPENTHREAD_SPINEL_ONLY
Enable OpenThread External Radio Spinel feature
Found in: Component config > OpenThread > OpenThread Spinel
Select this option to enable the OpenThread Radio Spinel for external protocol stack, such as Zigbee.
- Default value:
Disabled
CONFIG_OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE
The size of openthread spinel rx frame buffer
Found in: Component config > OpenThread > OpenThread Spinel
- Symbol can be set when:
CONFIG_OPENTHREAD_ENABLED is enabled || CONFIG_OPENTHREAD_SPINEL_ONLY is enabled
- Default value:
1024 if CONFIG_OPENTHREAD_MTD is enabled || CONFIG_OPENTHREAD_RADIO is enabled
2048 if CONFIG_OPENTHREAD_FTD is enabled || CONFIG_OPENTHREAD_SPINEL_ONLY is enabled
CONFIG_OPENTHREAD_SPINEL_MAC_MAX_CSMA_BACKOFFS_DIRECT
Maximum backoffs times before declaring a channel access failure.
Found in: Component config > OpenThread > OpenThread Spinel
The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.
- Symbol can be set when:
CONFIG_OPENTHREAD_SPINEL_ONLY is enabled
- Default value:
4
CONFIG_OPENTHREAD_SPINEL_UART_DRIVER_BUFFER_SIZE
UART driver buffer size for radio spinel interface
Found in: Component config > OpenThread > OpenThread Spinel
RX buffer size passed to uart_driver_install() for the radio spinel UART interface.
- Symbol can be set when:
CONFIG_OPENTHREAD_SPINEL_ONLY is enabled || CONFIG_OPENTHREAD_RADIO_SPINEL_UART is enabled
- Default value:
1024
CONFIG_OPENTHREAD_DEBUG
Enable ESP OpenThread Debug
Found in: Component config > OpenThread
Enable additional debugging support for ESP OpenThread integration. This includes various diagnostic tools and logs to help track down issues in OpenThread networking or system integration
- Default value:
Disabled
Contains:
CONFIG_OPENTHREAD_TASK_BLOCK_MONITOR
Enable OpenThread Task Block Monitor
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_DEBUG
Enable monitoring of OpenThread tasks to detect if a task is blocked and unable to continue its normal execution loop. Useful for debugging issues where tasks stop progressing due to deadlocks or resource waits. On RISC-V targets, in order to get meaningful backtraces when a task is detected as blocked, ESP_SYSTEM_USE_FRAME_POINTER must be enabled in ESP System Settings -> Backtracing method.
- Symbol can be set when:
CONFIG_OPENTHREAD_DEBUG is enabled
- Default value:
Disabled
CONFIG_OPENTHREAD_TASK_BLOCK_MONITOR_TIMEOUT
Task Block Monitor Timeout (seconds)
Found in: Component config > OpenThread > CONFIG_OPENTHREAD_DEBUG > CONFIG_OPENTHREAD_TASK_BLOCK_MONITOR
Set the timeout (in seconds) for detecting a blocked task. The timer is started at the beginning of each task main loop and stopped at the end. If the timer expires, the task is considered blocked.
- Symbol can be set when:
CONFIG_OPENTHREAD_TASK_BLOCK_MONITOR is enabled
- Range:
from 1 to 60
- Default value:
20
Protocomm
Contains:
CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_0
Support protocomm security version 0 (no security)
Found in: Component config > Protocomm
Enable support of security version 0. This version provides no encryption or authentication and should not be used in production. Use only for development and testing. Disabling this option saves some code size. Consult the Enabling protocomm security version section of the Protocomm documentation in ESP-IDF Programming guide for more details.
- Default value:
Disabled
CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_1
Support protocomm security version 1 (Curve25519 key exchange + AES-CTR encryption/decryption)
Found in: Component config > Protocomm
Enable support of security version 1. Security version 2 (SRP6a + AES-GCM) is recommended over this version for new designs. Disabling this option saves some code size. Consult the Enabling protocomm security version section of the Protocomm documentation in ESP-IDF Programming guide for more details.
- Default value:
Disabled
CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_2
Support protocomm security version 2 (SRP6a-based key exchange + AES-GCM encryption/decryption)
Found in: Component config > Protocomm
Enable support of security version 2. Disabling this option saves some code size. Consult the Enabling protocomm security version section of the Protocomm documentation in ESP-IDF Programming guide for more details.
- Default value:
Enabled
PThreads
Contains:
CONFIG_PTHREAD_TASK_PRIO_DEFAULT
Default task priority
Found in: Component config > PThreads
Priority used to create new tasks with default pthread parameters.
- Range:
from 0 to 255
- Default value:
5
CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT
Default task stack size
Found in: Component config > PThreads
Stack size used to create new tasks with default pthread parameters.
- Default value:
3072
CONFIG_PTHREAD_STACK_MIN
Minimum allowed pthread stack size
Found in: Component config > PThreads
Minimum allowed pthread stack size set in attributes passed to pthread_create
- Default value:
768
CONFIG_PTHREAD_TASK_NAME_DEFAULT
Default name of pthreads
Found in: Component config > PThreads
The default name of pthreads.
- Default value:
"pthread"
SD Protocol Layer Configuration
Contains:
CONFIG_SD_ENABLE_SDIO_SUPPORT
Enable SDIO support
Found in: Component config > SD Protocol Layer Configuration
Enable SDIO support. Disabling this will skip SDIO-specific initialization steps
- Default value:
Enabled
CONFIG_SD_READY_POLL_PERIOD_START_US
Initial delay between card status polls (us)
Found in: Component config > SD Protocol Layer Configuration
While waiting for the card to leave its busy state (for example after a write), the driver polls it with CMD13 (SEND_STATUS). This is the delay before the first re-poll; the delay then doubles after every poll, up to one FreeRTOS tick period.
Polling back-to-back without a delay turns every write into a storm of hundreds of CMD13 commands, which occupies the host controller and slows down unrelated work on both cores.
The exponential backoff means a card that becomes ready after 1.5 ms is detected at about 1.5 ms rather than at the next FreeRTOS tick, using a handful of commands instead of hundreds. Once the delay reaches one tick period it stops growing, so a long busy period costs one poll per tick and is detected within one tick of the card becoming ready.
Lower this value to detect very short busy periods sooner, at the cost of more commands on the bus. Values larger than one FreeRTOS tick period are clamped to it, so the largest useful setting depends on CONFIG_FREERTOS_HZ.
Delays shorter than one FreeRTOS tick period are spent busy-waiting, since there is no shorter blocking sleep available; a delay of one tick blocks on vTaskDelay() and lets other tasks run.
The busy-waited part of the ramp does not yield, so lower-priority tasks on that core are held off for its duration. It lasts at most until the backoff reaches one tick: with the default 100 us start, about 1.5 ms at a 1 kHz tick (100+200+400+800 us) and about 12.7 ms at a 100 Hz tick. A card that becomes ready sooner ends the wait sooner. No CMD13 is issued during the delays, so the host controller and the bus stay idle throughout.
- Range:
from 1 to 10000
- Default value:
100
SoC Settings
Contains:
MMU Config
Main Flash configuration
Contains:
SPI Flash behavior when brownout
Contains:
CONFIG_SPI_FLASH_BROWNOUT_RESET_XMC
Enable sending reset when brownout for XMC flash chips
Found in: Component config > Main Flash configuration > SPI Flash behavior when brownout
When this option is selected, the patch will be enabled for XMC. Follow the recommended flow by XMC for better stability.
DO NOT DISABLE UNLESS YOU KNOW WHAT YOU ARE DOING.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled
- This symbol affects the value of following symbols:
forcefully enables CONFIG_SPI_FLASH_BROWNOUT_RESET
Optional and Experimental Features (READ DOCS FIRST)
Contains:
CONFIG_SPI_FLASH_HPM
High Performance Mode (READ DOCS FIRST, > 80MHz)
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
Whether the High Performance Mode of Flash is enabled. As an optional feature, user needs to manually enable this option as a confirmation. To be back-compatible with earlier IDF version, this option is automatically enabled with warning when Flash running > 80Mhz.
Available options:
Enable (CONFIG_SPI_FLASH_HPM_ENA)
Auto (Not recommended) (CONFIG_SPI_FLASH_HPM_AUTO)
Disabled (CONFIG_SPI_FLASH_HPM_DIS)
CONFIG_SPI_FLASH_HPM_DC
Support HPM using DC (READ DOCS FIRST)
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
This feature needs your bootloader to be compiled DC-aware (BOOTLOADER_FLASH_DC_AWARE=y). Otherwise the chip will not be able to boot after a reset.
Available options:
Auto (Enable when bootloader support enabled (BOOTLOADER_FLASH_DC_AWARE)) (CONFIG_SPI_FLASH_HPM_DC_AUTO)
Disable (READ DOCS FIRST) (CONFIG_SPI_FLASH_HPM_DC_DISABLE)
CONFIG_SPI_FLASH_AUTO_SUSPEND
Auto suspend long erase/write operations (READ DOCS FIRST)
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
This option is disabled by default because it is supported only for specific flash chips and for specific Espressif chips. To evaluate if you can use this feature refer to Optional Features for Flash > Auto Suspend & Resume of the ESP-IDF Programming Guide.
CAUTION: If you want to OTA to an app with this feature turned on, please make sure the bootloader has the support for it. (later than IDF v4.3)
If you are using an official Espressif module, please contact Espressif Business support to check if the module has the flash that support this feature installed. Also refer to Concurrency Constraints for Flash on SPI1 > Flash Auto Suspend Feature before enabling this option.
- Symbol can be set when:
CONFIG_SPI_FLASH_ROM_IMPL is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_SUSPEND_TSUS_VAL_US
SPI flash tSUS value (refer to chapter AC CHARACTERISTICS)
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
This config is used for setting Tsus parameter. Tsus means CS# high to next command after suspend. You can refer to the chapter of AC CHARACTERISTICS of flash datasheet.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Range:
from 20 to 100
- Default value:
50
CONFIG_SPI_FLASH_SUSPEND_TRS_VAL_US
SPI flash tRS value (refer to chapter AC CHARACTERISTICS)
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
This config is used for setting Trs parameter. Trs means CS Latency Between Resume And Next Suspend. You can refer to the chapter of AC CHARACTERISTICS of flash datasheet. For high-performance scenarios, some flash chips allow this set value to be smaller than the given value in the datasheet without causing errors in the flash state machine. When you have any related needs, please contact espressif business team.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Range:
from 20 to 200
- Default value:
50
CONFIG_SPI_FLASH_FORCE_ENABLE_XMC_C_SUSPEND
Enable XMC-C series flash chip suspend feature anyway
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
XMC-C series is regarded as not qualified for the Suspend feature, since its specification has a tRS >= 1ms restriction. We strongly do not suggest using it for the Suspend feature. However, if your product in field has enabled this feature, you may still enable this config option to keep the legacy behavior.
For new users, DO NOT enable this config.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_FORCE_ENABLE_C6_H2_SUSPEND
Enable chip suspend feature on c6 or h2 anyway (DO NOT ENABLE FOR NEW USERS OR APPLICATIONS)
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
Flash suspend has a defect on ESP32C6 until v0.2 and ESP32H2 until v1.2. If you already use suspend feature for mass production, you can enable this for bypassing check after knowing the risk. But if you are new users, or developing new applications, or producing a new batch, please DO NOT enable this config option.
For more information, please refer to errata or connect to Espressif business support team.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_SOFTWARE_RESUME
Resume flash program/erase form suspend state by software control
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
Enable this config will disable auto-resume from hardware. Thus the software will resume the chip after any higher priority task/interrupt which suspend the chip. The benefit is that the suspend-resume will not disturb the higher priority task and interrupt.
This currently is only valid on single core chip.
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled && CONFIG_IDF_EXPERIMENTAL_FEATURES is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_DISABLE_SCHEDULER_IN_SUSPEND
Disable task scheduler when suspend is enabled when SPI1 operation is ongoing
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
Disable freertos task scheduler when CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled. Thus only interrupt can trigger a suspend. When SPI_FLASH_AUTO_SUSPEND is enabled, default behavior is not disable the task scheduler, so both interrupt and high priority task can suspend the erase/program operation. When this option is enabled, task scheduler is disabled, only interrupt can suspend erase/program operation.
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_AUTO_CHECK_SUSPEND_STATUS
Check flash status automatically after flash suspend
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
Majority flash supports to use flash register to judge if flash suspend status is done or not. So enable this config, the behavior would use flash register WIP bit to judge whether suspend is valid instead of waiting for a specific long time, which can save a lot of time and benefit for performance improvement.
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_PLACE_FUNCTIONS_IN_IRAM
Place spi_flash operation functions into IRAM
Found in: Component config > Main Flash configuration > Optional and Experimental Features (READ DOCS FIRST)
When disabled, certain functions in spi_flash component will be placed into Flash memory instead of IRAM. Disabling this option will save almost 10KB of IRAM depending on which functions are used.
When enabled, these functions will be placed in internal RAM, with better performance.
For more information please refer to programming guide.
- Symbol can be set when:
CONFIG_SPI_FLASH_AUTO_SUSPEND is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled
SPI Flash driver
Contains:
CONFIG_SPI_FLASH_VERIFY_WRITE
Verify SPI flash writes
Found in: Component config > SPI Flash driver
If this option is enabled, any time SPI flash is written then the data will be read back and verified. This can catch hardware problems with SPI flash, or flash which was not erased before verification.
This will slightly influence the write performance.
- Symbol can be set when:
CONFIG_SPI_FLASH_ROM_IMPL is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_LOG_FAILED_WRITE
Log errors if verification fails
Found in: Component config > SPI Flash driver > CONFIG_SPI_FLASH_VERIFY_WRITE
If this option is enabled, if SPI flash write verification fails then a log error line will be written with the address, expected & actual values. This can be useful when debugging hardware SPI flash problems.
- Symbol can be set when:
CONFIG_SPI_FLASH_VERIFY_WRITE is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_WARN_SETTING_ZERO_TO_ONE
Log warning if writing zero bits to ones
Found in: Component config > SPI Flash driver > CONFIG_SPI_FLASH_VERIFY_WRITE
If this option is enabled, any SPI flash write which tries to set zero bits in the flash to ones will log a warning. Such writes will not result in the requested data appearing identically in flash once written, as SPI NOR flash can only set bits to one when an entire sector is erased. After erasing, individual bits can only be written from one to zero.
Note that some software (such as SPIFFS) which is aware of SPI NOR flash may write one bits as an optimisation, relying on the data in flash becoming a bitwise AND of the new data and any existing data. Such software will log spurious warnings if this option is enabled.
- Symbol can be set when:
CONFIG_SPI_FLASH_VERIFY_WRITE is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_ENABLE_COUNTERS
Enable operation counters
Found in: Component config > SPI Flash driver
This option enables the following APIs:
esp_flash_reset_counters
esp_flash_dump_counters
esp_flash_get_counters
These APIs may be used to collect performance data for spi_flash APIs and to help understand behaviour of libraries which use SPI flash.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_ROM_IMPL
Use esp_flash implementation in ROM
Found in: Component config > SPI Flash driver
Enable this flag to use new SPI flash driver functions from ROM instead of ESP-IDF.
If keeping this as "n" in your project, you will have less free IRAM. But you can use all of our flash features.
If making this as "y" in your project, you will increase free IRAM. But you may miss out on some flash features and support for new flash chips.
Currently the ROM cannot support the following features:
SPI_FLASH_AUTO_SUSPEND (C3, S3)
- Symbol can be set when:
CONFIG_ESPTOOLPY_OCT_FLASH is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_DANGEROUS_WRITE
Writing to dangerous flash regions
Found in: Component config > SPI Flash driver
SPI flash APIs can optionally abort or return a failure code if erasing or writing addresses that fall at the beginning of flash (covering the bootloader and partition table) or that overlap the app partition that contains the running app.
It is not recommended to ever write to these regions from an IDF app, and this check prevents logic errors or corrupted firmware memory from damaging these regions.
Note that this feature *does not* check calls to the esp_rom_xxx SPI flash ROM functions. These functions should not be called directly from IDF applications.
Available options:
Aborts (CONFIG_SPI_FLASH_DANGEROUS_WRITE_ABORTS)
Fails (CONFIG_SPI_FLASH_DANGEROUS_WRITE_FAILS)
Allowed (CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED)
CONFIG_SPI_FLASH_BYPASS_BLOCK_ERASE
Bypass a block erase and always do sector erase
Found in: Component config > SPI Flash driver
Some flash chips can have very high "max" erase times, especially for block erase (32KB or 64KB). This option allows to bypass "block erase" and always do sector erase commands. This will be much slower overall in most cases, but improves latency for other code to run.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_YIELD_DURING_ERASE
Enables yield operation during flash erase
Found in: Component config > SPI Flash driver
This allows to yield the CPUs between erase commands. Prevents starvation of other tasks. Please use this configuration together with
SPI\_FLASH\_ERASE\_YIELD\_DURATION\_MSandSPI\_FLASH\_ERASE\_YIELD\_TICKSafter carefully checking flash datasheet to avoid a watchdog timeout. For more information, please check SPI Flash API reference documentation under section OS Function.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled
CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS
Duration of erasing to yield CPUs (ms)
Found in: Component config > SPI Flash driver > CONFIG_SPI_FLASH_YIELD_DURING_ERASE
If a duration of one erase command is large then it will yield CPUs after finishing a current command.
- Symbol can be set when:
CONFIG_SPI_FLASH_YIELD_DURING_ERASE is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
20
CONFIG_SPI_FLASH_ERASE_YIELD_TICKS
CPU release time (tick) for an erase operation
Found in: Component config > SPI Flash driver > CONFIG_SPI_FLASH_YIELD_DURING_ERASE
Defines how many ticks will be before returning to continue a erasing.
- Symbol can be set when:
CONFIG_SPI_FLASH_YIELD_DURING_ERASE is enabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
1
CONFIG_SPI_FLASH_WRITE_CHUNK_SIZE
Flash write chunk size
Found in: Component config > SPI Flash driver
Flash write is broken down in terms of multiple (smaller) write operations. This configuration options helps to set individual write chunk size, smaller value here ensures that cache (and non-IRAM resident interrupts) remains disabled for shorter duration.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Range:
from 256 to 8192
- Default value:
8192
CONFIG_SPI_FLASH_SIZE_OVERRIDE
Override flash size in bootloader header by ESPTOOLPY_FLASHSIZE
Found in: Component config > SPI Flash driver
SPI Flash driver uses the flash size configured in bootloader header by default. Enable this option to override flash size with latest ESPTOOLPY_FLASHSIZE value from the app header if the size in the bootloader header is incorrect.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_CHECK_ERASE_TIMEOUT_DISABLED
Flash timeout checkout disabled
Found in: Component config > SPI Flash driver
This option is helpful if you are using a flash chip whose timeout is quite large or unpredictable.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST
Override default chip driver list
Found in: Component config > SPI Flash driver
This option allows the chip driver list to be customized, instead of using the default list provided by ESP-IDF.
When this option is enabled, the default list is no longer compiled or linked. Instead, the default_registered_chips structure must be provided by the user.
See example: custom_chip_driver under examples/storage for more details.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
Auto-detect flash chips
Contains:
CONFIG_SPI_FLASH_SUPPORT_ISSI_CHIP
ISSI
Found in: Component config > SPI Flash driver > Auto-detect flash chips
Enable this to support auto detection of ISSI chips if chip vendor not directly given by
chip\_drvmember of the chip struct. This adds support for variant chips, however will extend detecting time.
- Symbol can be set when:
CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_SUPPORT_MXIC_CHIP
MXIC
Found in: Component config > SPI Flash driver > Auto-detect flash chips
Enable this to support auto detection of MXIC chips if chip vendor not directly given by
chip\_drvmember of the chip struct. This adds support for variant chips, however will extend detecting time.
- Symbol can be set when:
CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_SUPPORT_GD_CHIP
GigaDevice
Found in: Component config > SPI Flash driver > Auto-detect flash chips
Enable this to support auto detection of GD (GigaDevice) chips if chip vendor not directly given by
chip\_drvmember of the chip struct. If you are using Wrover modules, please don't disable this, otherwise your flash may not work in 4-bit mode.This adds support for variant chips, however will extend detecting time and image size. Note that the default chip driver supports the GD chips with product ID 60H.
- Symbol can be set when:
CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled if CONFIG_SPI_FLASH_VENDOR_GD_SUPPORT_ENABLED is enabled
Disabled
CONFIG_SPI_FLASH_SUPPORT_WINBOND_CHIP
Winbond
Found in: Component config > SPI Flash driver > Auto-detect flash chips
Enable this to support auto detection of Winbond chips if chip vendor not directly given by
chip\_drvmember of the chip struct. This adds support for variant chips, however will extend detecting time.
- Symbol can be set when:
CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_SUPPORT_BOYA_CHIP
BOYA
Found in: Component config > SPI Flash driver > Auto-detect flash chips
Enable this to support auto detection of BOYA chips if chip vendor not directly given by
chip\_drvmember of the chip struct. This adds support for variant chips, however will extend detecting time.
- Symbol can be set when:
CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_SUPPORT_TH_CHIP
TH
Found in: Component config > SPI Flash driver > Auto-detect flash chips
Enable this to support auto detection of TH chips if chip vendor not directly given by
chip\_drvmember of the chip struct. This adds support for variant chips, however will extend detecting time.
- Symbol can be set when:
CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is disabled && CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Disabled
CONFIG_SPI_FLASH_ENABLE_ENCRYPTED_READ_WRITE
Enable encrypted partition read/write operations
Found in: Component config > SPI Flash driver
This option enables flash read/write operations to encrypted partition/s. This option is kept enabled irrespective of state of flash encryption feature. However, in case application is not using flash encryption feature and is in need of some additional memory from IRAM region (~1KB) then this config can be disabled.
- Symbol can be set when:
CONFIG_APP_BUILD_TYPE_PURE_RAM_APP is disabled
- Default value:
Enabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_SECURE_FLASH_ENC_ENABLED
SPIFFS Configuration
Contains:
CONFIG_SPIFFS_MAX_PARTITIONS
Maximum Number of Partitions
Found in: Component config > SPIFFS Configuration
Define maximum number of partitions that can be mounted.
- Range:
from 1 to 10
- Default value:
3
SPIFFS Cache Configuration
Contains:
CONFIG_SPIFFS_CACHE
Enable SPIFFS Cache
Found in: Component config > SPIFFS Configuration > SPIFFS Cache Configuration
Enables/disable memory read caching of nucleus file system operations.
- Default value:
Enabled
CONFIG_SPIFFS_CACHE_WR
Enable SPIFFS Write Caching
Found in: Component config > SPIFFS Configuration > SPIFFS Cache Configuration > CONFIG_SPIFFS_CACHE
Enables memory write caching for file descriptors in hydrogen.
- Symbol can be set when:
CONFIG_SPIFFS_CACHE is enabled
- Default value:
Enabled
CONFIG_SPIFFS_CACHE_STATS
Enable SPIFFS Cache Statistics
Found in: Component config > SPIFFS Configuration > SPIFFS Cache Configuration > CONFIG_SPIFFS_CACHE
Enable/disable statistics on caching. Debug/test purpose only.
- Symbol can be set when:
CONFIG_SPIFFS_CACHE is enabled
- Default value:
Disabled
CONFIG_SPIFFS_PAGE_CHECK
Enable SPIFFS Page Check
Found in: Component config > SPIFFS Configuration
Always check header of each accessed page to ensure consistent state. If enabled it will increase number of reads from flash, especially if cache is disabled.
- Default value:
Enabled
CONFIG_SPIFFS_GC_MAX_RUNS
Set Maximum GC Runs
Found in: Component config > SPIFFS Configuration
Define maximum number of GC runs to perform to reach desired free pages.
- Range:
from 1 to 10000
- Default value:
10
CONFIG_SPIFFS_GC_STATS
Enable SPIFFS GC Statistics
Found in: Component config > SPIFFS Configuration
Enable/disable statistics on gc. Debug/test purpose only.
- Default value:
Disabled
CONFIG_SPIFFS_PAGE_SIZE
SPIFFS logical page size
Found in: Component config > SPIFFS Configuration
Logical page size of SPIFFS partition, in bytes. Must be multiple of flash page size (which is usually 256 bytes). Larger page sizes reduce overhead when storing large files, and improve filesystem performance when reading large files. Smaller page sizes reduce overhead when storing small (< page size) files.
- Range:
from 256 to 1024
- Default value:
256
CONFIG_SPIFFS_OBJ_NAME_LEN
Set SPIFFS Maximum Name Length
Found in: Component config > SPIFFS Configuration
Object name maximum length. Note that this length include the zero-termination character, meaning maximum string of characters can at most be SPIFFS_OBJ_NAME_LEN - 1.
SPIFFS_OBJ_NAME_LEN + SPIFFS_META_LENGTH should not exceed SPIFFS_PAGE_SIZE - 64.
- Range:
from 1 to 256
- Default value:
32
CONFIG_SPIFFS_FOLLOW_SYMLINKS
Enable symbolic links for image creation
Found in: Component config > SPIFFS Configuration
If this option is enabled, symbolic links are taken into account during partition image creation.
- Default value:
Disabled
CONFIG_SPIFFS_USE_MAGIC
Enable SPIFFS Filesystem Magic
Found in: Component config > SPIFFS Configuration
Enable this to have an identifiable spiffs filesystem. This will look for a magic in all sectors to determine if this is a valid spiffs system or not at mount time.
- Default value:
Enabled
CONFIG_SPIFFS_USE_MAGIC_LENGTH
Enable SPIFFS Filesystem Length Magic
Found in: Component config > SPIFFS Configuration > CONFIG_SPIFFS_USE_MAGIC
If this option is enabled, the magic will also be dependent on the length of the filesystem. For example, a filesystem configured and formatted for 4 megabytes will not be accepted for mounting with a configuration defining the filesystem as 2 megabytes.
- Symbol can be set when:
CONFIG_SPIFFS_USE_MAGIC is enabled
- Default value:
Enabled
CONFIG_SPIFFS_META_LENGTH
Size of per-file metadata field
Found in: Component config > SPIFFS Configuration
This option sets the number of extra bytes stored in the file header. These bytes can be used in an application-specific manner. Set this to at least 4 bytes to enable support for saving file modification time.
SPIFFS_OBJ_NAME_LEN + SPIFFS_META_LENGTH should not exceed SPIFFS_PAGE_SIZE - 64.
- Default value:
4
CONFIG_SPIFFS_USE_MTIME
Save file modification time
Found in: Component config > SPIFFS Configuration
If enabled, then the first 4 bytes of per-file metadata will be used to store file modification time (mtime), accessible through stat/fstat functions. Modification time is updated when the file is opened.
- Symbol can be set when:
- Default value:
Enabled
CONFIG_SPIFFS_MTIME_WIDE_64_BITS
The time field occupies 64 bits in the image instead of 32 bits
Found in: Component config > SPIFFS Configuration
If this option is not set, the time field is 32 bits (up to 2106 year), otherwise it is 64 bits and make sure it matches SPIFFS_META_LENGTH. If the chip already has the spiffs image with the time field = 32 bits then this option cannot be applied in this case. Erase it first before using this option. To resolve the Y2K38 problem for the spiffs, use a toolchain with 64-bit time_t support.
- Symbol can be set when:
- Default value:
Disabled
Debug Configuration
Contains:
CONFIG_SPIFFS_DBG
Enable general SPIFFS debug
Found in: Component config > SPIFFS Configuration > Debug Configuration
Enabling this option will print general debug messages to the console.
- Default value:
Disabled
CONFIG_SPIFFS_API_DBG
Enable SPIFFS API debug
Found in: Component config > SPIFFS Configuration > Debug Configuration
Enabling this option will print API debug messages to the console.
- Default value:
Disabled
CONFIG_SPIFFS_GC_DBG
Enable SPIFFS Garbage Cleaner debug
Found in: Component config > SPIFFS Configuration > Debug Configuration
Enabling this option will print GC debug messages to the console.
- Default value:
Disabled
CONFIG_SPIFFS_CACHE_DBG
Enable SPIFFS Cache debug
Found in: Component config > SPIFFS Configuration > Debug Configuration
Enabling this option will print cache debug messages to the console.
- Symbol can be set when:
CONFIG_SPIFFS_CACHE is enabled
- Default value:
Disabled
CONFIG_SPIFFS_CHECK_DBG
Enable SPIFFS Filesystem Check debug
Found in: Component config > SPIFFS Configuration > Debug Configuration
Enabling this option will print Filesystem Check debug messages to the console.
- Default value:
Disabled
CONFIG_SPIFFS_TEST_VISUALISATION
Enable SPIFFS Filesystem Visualization
Found in: Component config > SPIFFS Configuration > Debug Configuration
Enable this option to enable SPIFFS_vis function in the API.
- Default value:
Disabled
TCP Transport
Contains:
Websocket
Contains:
CONFIG_WS_TRANSPORT
Enable Websocket Transport
Found in: Component config > TCP Transport > Websocket
Enable support for creating websocket transport.
- Default value:
Enabled
CONFIG_WS_BUFFER_SIZE
Websocket transport buffer size
Found in: Component config > TCP Transport > Websocket > CONFIG_WS_TRANSPORT
Size of the buffer used for constructing the HTTP Upgrade request during connect
- Symbol can be set when:
CONFIG_WS_TRANSPORT is enabled
- Default value:
1024
CONFIG_WS_DYNAMIC_BUFFER
Using dynamic websocket transport buffer
Found in: Component config > TCP Transport > Websocket > CONFIG_WS_TRANSPORT
If enable this option, websocket transport buffer will be freed after connection succeed to save more heap.
- Symbol can be set when:
CONFIG_WS_TRANSPORT is enabled
- Default value:
Disabled
Unity unit testing library
Contains:
CONFIG_UNITY_ENABLE_FLOAT
Support for float type
Found in: Component config > Unity unit testing library
If not set, assertions on float arguments will not be available.
- Default value:
Enabled
CONFIG_UNITY_ENABLE_DOUBLE
Support for double type
Found in: Component config > Unity unit testing library
If not set, assertions on double arguments will not be available.
- Default value:
Enabled
CONFIG_UNITY_ENABLE_64BIT
Support for 64-bit integer types
Found in: Component config > Unity unit testing library
If not set, assertions on 64-bit integer types will always fail. If this feature is enabled, take care not to pass pointers (which are 32 bit) to UNITY_ASSERT_EQUAL, as that will cause pointer-to-int-cast warnings.
- Default value:
Disabled
CONFIG_UNITY_ENABLE_COLOR
Colorize test output
Found in: Component config > Unity unit testing library
If set, Unity will colorize test results using console escape sequences.
- Default value:
Disabled
CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER
Include ESP-IDF test registration/running helpers
Found in: Component config > Unity unit testing library
If set, then the following features will be available:
TEST_CASE macro which performs automatic registration of test functions
Functions to run registered test functions: unity_run_all_tests, unity_run_tests_with_filter, unity_run_single_test_by_name.
Interactive menu which lists test cases and allows choosing the tests to be run, available via unity_run_menu function.
Disable if a different test registration mechanism is used.
- Default value:
Enabled
CONFIG_UNITY_ENABLE_FIXTURE
Include Unity test fixture
Found in: Component config > Unity unit testing library
If set, unity_fixture.h header file and associated source files are part of the build. These provide an optional set of macros and functions to implement test groups.
- Default value:
Disabled
CONFIG_UNITY_ENABLE_BACKTRACE_ON_FAIL
Print a backtrace when a unit test fails
Found in: Component config > Unity unit testing library
If set, the unity framework will print the backtrace information before jumping back to the test menu. The jumping is usually occurs in assert functions such as TEST_ASSERT, TEST_FAIL etc.
- Default value:
Disabled
Virtual file system
Contains:
CONFIG_VFS_SUPPORT_IO
Provide basic I/O functions
Found in: Component config > Virtual file system
If enabled, the following functions are provided by the VFS component.
open, close, read, write, pread, pwrite, lseek, fstat, fsync, ioctl, fcntl
Filesystem drivers can then be registered to handle these functions for specific paths.
Disabling this option can save memory when the support for these functions is not required.
Note that the following functions can still be used with socket file descriptors when this option is disabled:
close, read, write, ioctl, fcntl.
- Default value:
Enabled
CONFIG_VFS_SUPPORT_DIR
Provide directory related functions
Found in: Component config > Virtual file system > CONFIG_VFS_SUPPORT_IO
If enabled, the following functions are provided by the VFS component.
stat, link, unlink, rename, utime, access, truncate, rmdir, mkdir, opendir, closedir, readdir, readdir_r, seekdir, telldir, rewinddir
Filesystem drivers can then be registered to handle these functions for specific paths.
Disabling this option can save memory when the support for these functions is not required.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_IO is enabled
- Default value:
Enabled
CONFIG_VFS_SUPPORT_SELECT
Provide select function
Found in: Component config > Virtual file system > CONFIG_VFS_SUPPORT_IO
If enabled, select function is provided by the VFS component, and can be used on peripheral file descriptors (such as UART) and sockets at the same time.
If disabled, the default select implementation will be provided by LWIP for sockets only.
Disabling this option can reduce code size if support for "select" on UART file descriptors is not required.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_IO is enabled && CONFIG_LWIP_USE_ONLY_LWIP_SELECT is disabled
- Default value:
Enabled
CONFIG_VFS_SUPPRESS_SELECT_DEBUG_OUTPUT
Suppress select() related debug outputs
Found in: Component config > Virtual file system > CONFIG_VFS_SUPPORT_IO > CONFIG_VFS_SUPPORT_SELECT
Select() related functions might produce an inconveniently lot of debug outputs when one sets the default log level to DEBUG or higher. It is possible to suppress these debug outputs by enabling this option.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_SELECT is enabled
- Default value:
Enabled
CONFIG_VFS_SELECT_IN_RAM
Make VFS driver select() callbacks IRAM-safe
Found in: Component config > Virtual file system > CONFIG_VFS_SUPPORT_IO > CONFIG_VFS_SUPPORT_SELECT
If enabled, VFS driver select() callback function will be placed in IRAM.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_SELECT is enabled
- Default value:
Disabled
- Following symbols affect the value of this symbol:
forcefully enabled by CONFIG_UART_ISR_IN_IRAM if CONFIG_VFS_SUPPORT_SELECT is enabled
CONFIG_VFS_SUPPORT_TERMIOS
Provide termios.h functions
Found in: Component config > Virtual file system > CONFIG_VFS_SUPPORT_IO
Disabling this option can save memory when the support for termios.h is not required.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_IO is enabled
- Default value:
Disabled
CONFIG_VFS_MAX_COUNT
Maximum Number of Virtual Filesystems
Found in: Component config > Virtual file system > CONFIG_VFS_SUPPORT_IO
Define maximum number of virtual filesystems that can be registered.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_IO is enabled
- Range:
from 1 to 20
- Default value:
8
CONFIG_VFS_SUPPRESS_CTX_DEPRECATION
Suppress context-less API deprecation warning
Found in: Component config > Virtual file system
The VFS APIs without context pointer are deprecated and will be removed in the next major release. Please switch to the APIs with context pointer, or alternatively enable this option to silence the warning.
- Default value:
Disabled
Host File System I/O (Semihosting)
Contains:
CONFIG_VFS_SEMIHOSTFS_MAX_MOUNT_POINTS
Host FS: Maximum number of the host filesystem mount points
Found in: Component config > Virtual file system > Host File System I/O (Semihosting)
Define maximum number of host filesystem mount points.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_IO is enabled
- Default value:
1
CONFIG_VFS_INITIALIZE_DEV_NULL
Initialize /dev/null VFS
Found in: Component config > Virtual file system
If enabled, /dev/null VFS will be automatically initialized at startup.
- Symbol can be set when:
CONFIG_VFS_SUPPORT_IO is enabled
- Default value:
Enabled
Wear Levelling
Contains:
CONFIG_WL_SECTOR_SIZE
Wear Levelling library sector size
Found in: Component config > Wear Levelling
Sector size used by wear levelling library. You can set default sector size or size that will fit to the flash device sector size.
With sector size set to 4096 bytes, wear levelling library is more efficient. However if FAT filesystem is used on top of wear levelling library, it will need more temporary storage: 4096 bytes for each mounted filesystem and 4096 bytes for each opened file.
With sector size set to 512 bytes, wear levelling library will perform more operations with flash memory, but less RAM will be used by FAT filesystem library (512 bytes for the filesystem and 512 bytes for each file opened).
Available options:
512 (CONFIG_WL_SECTOR_SIZE_512)
4096 (CONFIG_WL_SECTOR_SIZE_4096)
CONFIG_WL_SECTOR_MODE
Sector store mode
Found in: Component config > Wear Levelling
Specify the mode to store data into flash:
In Performance mode a data will be stored to the RAM and then stored back to the flash. Compared to the Safety mode, this operation is faster, but if power will be lost when erase sector operation is in progress, then the data from complete flash device sector will be lost.
In Safety mode data from complete flash device sector will be read from flash, modified, and then stored back to flash. Compared to the Performance mode, this operation is slower, but if power is lost during erase sector operation, then the data from full flash device sector will not be lost.
Available options:
Performance (CONFIG_WL_SECTOR_MODE_PERF)
Safety (CONFIG_WL_SECTOR_MODE_SAFE)
CONFIG_IDF_EXPERIMENTAL_FEATURES
Make experimental features visible
Found in:
By enabling this option, ESP-IDF experimental feature options will be visible.
Note you should still enable a certain experimental feature option to use it, and you should read the corresponding risk warning and known issue list carefully.
Current experimental feature list:
CONFIG_ESPTOOLPY_FLASHFREQ_120M && CONFIG_ESPTOOLPY_FLASH_SAMPLE_MODE_DTR
CONFIG_SPIRAM_SPEED_120M && CONFIG_SPIRAM_MODE_OCT
CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH
CONFIG_ESP_WIFI_EAP_TLS1_3
CONFIG_ESP_WIFI_NAN_SECURITY
CONFIG_USB_HOST_EXT_PORT_RESET_ATTEMPTS
CONFIG_GDMA_ENABLE_WEIGHTED_ARBITRATION
CONFIG_COMPILER_KASAN
CONFIG_ETH_SUBLAYER_SUPPORT
- Default value:
Disabled
Options not available for this target
The following options are defined in the Kconfig files, but their dependencies cannot be satisfied for the target this documentation is built for, so they cannot be set.
CONFIG_ADC_CALI_EFUSE_TP_ENABLE
Use Two Point Values
Not available for this target.
CONFIG_ADC_CALI_EFUSE_VREF_ENABLE
Use eFuse Vref
Not available for this target.
CONFIG_ADC_CALI_LUT_ENABLE
Use Lookup Tables
Not available for this target.
CONFIG_ADC_CONTINUOUS_FORCE_USE_ADC2_ON_C3_S3
Force use ADC2 continuous mode on ESP32S3 or ESP32C3
Not available for this target.
CONFIG_ADC_DISABLE_DAC_OUTPUT
Disable DAC when ADC2 is in use
Not available for this target.
CONFIG_ADC_ONESHOT_FORCE_USE_ADC2_ON_C3
Force use ADC2 oneshot mode on ESP32C3
Not available for this target.
CONFIG_APP_COMPATIBLE_PRE_V2_1_BOOTLOADERS
App compatible with bootloaders before ESP-IDF v2.1
Not available for this target.
CONFIG_APP_COMPATIBLE_PRE_V3_1_BOOTLOADERS
App compatible with bootloader and partition table before ESP-IDF v3.1
Not available for this target.
CONFIG_ASRC_ALLOW_PD
Allow power down of ASRC in light sleep
Not available for this target.
CONFIG_BITSCRAMBLER_CTRL_FUNC_IN_IRAM
Place BitScrambler control functions in IRAM
Not available for this target.
CONFIG_BLE_LOG_IS_ESP_LEGACY_CONTROLLER
Current BLE Controller is ESP BLE Legacy Controller
Not available for this target.
CONFIG_BLE_LOG_PRPH_UART_DMA_BAUD_RATE
Baud rate of UART port for UART DMA transport
Not available for this target.
CONFIG_BLE_LOG_PRPH_UART_DMA_PORT
UART port number for UART DMA transport
Not available for this target.
CONFIG_BLE_LOG_PRPH_UART_DMA_TX_IO_NUM
GPIO number for UART TX
Not available for this target.
CONFIG_BLE_MESH_FREERTOS_STATIC_ALLOC
Enable FreeRTOS static allocation
Not available for this target.
CONFIG_BLE_MESH_FREERTOS_STATIC_ALLOC_MODE
Memory allocation for FreeRTOS objects
Not available for this target.
CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC
Reserve RTC FAST memory for custom purposes
Not available for this target.
CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC_IN_CRC
Include custom memory in the CRC calculation
Not available for this target.
CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC_SIZE
Size in bytes for custom purposes
Not available for this target.
CONFIG_BOOTLOADER_SPI_CUSTOM_WP_PIN
Use custom SPI Flash WP Pin when flash pins set in eFuse (read help)
Not available for this target.
CONFIG_BOOTLOADER_SPI_WP_PIN
Custom SPI Flash WP Pin
Not available for this target.
CONFIG_BOOTLOADER_VDDSDIO_BOOST
VDDSDIO LDO voltage
Not available for this target.
CONFIG_BT_AICS_CLIENT_MAX_INSTANCE_COUNT
Audio Input Control Service client max instance count
Not available for this target.
CONFIG_BT_AICS_MAX_INPUT_DESCRIPTION_SIZE
Audio Input Control Service max input description size
Not available for this target.
CONFIG_BT_AICS_MAX_INSTANCE_COUNT
Audio Input Control Service max instance count
Not available for this target.
CONFIG_BT_ASCS
Audio Stream Control Service Support
Not available for this target.
CONFIG_BT_ASCS_ASE_BUF_TIMEOUT
Milliseconds of timeout when handle concurrent access to the long read ASE buffer
Not available for this target.
CONFIG_BT_ASCS_ISO_DISCONNECT_DELAY
Milliseconds of delay before ASCS disconnects ISO after stream stop
Not available for this target.
CONFIG_BT_ASCS_MAX_ACTIVE_ASES
Number of simultaneously supported ASE sessions
Not available for this target.
CONFIG_BT_ASCS_MAX_ASE_SNK_COUNT
Maximum number of Audio Stream Endpoint Sink Characteristics
Not available for this target.
CONFIG_BT_ASCS_MAX_ASE_SRC_COUNT
Maximum number of Audio Stream Endpoint Source Characteristics
Not available for this target.
CONFIG_BT_AUDIO_BSS_SEG_EXTERNAL_MEMORY
Place BLE Audio .bss segment in external SPIRAM
Not available for this target.
CONFIG_BT_AUDIO_CODEC_CAP_MAX_DATA_SIZE
Codec Capabilities Data Size
Not available for this target.
CONFIG_BT_AUDIO_CODEC_CAP_MAX_METADATA_SIZE
Codec Capabilities Metadata Size
Not available for this target.
CONFIG_BT_AUDIO_CODEC_CFG_MAX_DATA_SIZE
Codec Specific Configuration Data Size
Not available for this target.
CONFIG_BT_AUDIO_CODEC_CFG_MAX_METADATA_SIZE
Codec Specific Configuration Metadata Size
Not available for this target.
CONFIG_BT_AUDIO_HEAP_EXTERNAL_MEMORY
Place BLE Audio heap allocations in external SPIRAM
Not available for this target.
CONFIG_BT_AUDIO_LOG_LEVEL
BLE_AUDIO_LIB_LOG_LEVEL
Not available for this target.
CONFIG_BT_AUDIO_NO_LOG
Disable BLE Audio Lib Debug Log
Not available for this target.
CONFIG_BT_BAP_BASS_MAX_SUBGROUPS
Maximum number of subgroups supported for the BASS receive states
Not available for this target.
CONFIG_BT_BAP_BROADCAST_ASSISTANT
Basic Audio Profile Broadcast Assistant role support
Not available for this target.
CONFIG_BT_BAP_BROADCAST_ASSISTANT_RECV_STATE_COUNT
Broadcast Assistant Max Receive State Count
Not available for this target.
CONFIG_BT_BAP_BROADCAST_SINK
Bluetooth Broadcast Sink Audio Support
Not available for this target.
CONFIG_BT_BAP_BROADCAST_SNK_COUNT
Basic Audio Broadcaster Sink count
Not available for this target.
CONFIG_BT_BAP_BROADCAST_SNK_STREAM_COUNT
Basic Audio Broadcast Sink Stream count
Not available for this target.
CONFIG_BT_BAP_BROADCAST_SNK_SUBGROUP_COUNT
Basic Audio Profile Broadcast Sink subgroup count
Not available for this target.
CONFIG_BT_BAP_BROADCAST_SOURCE
Bluetooth Broadcast Source Audio Support
Not available for this target.
CONFIG_BT_BAP_BROADCAST_SRC_COUNT
Basic Audio Broadcaster source count
Not available for this target.
CONFIG_BT_BAP_BROADCAST_SRC_STREAM_COUNT
Basic Audio Broadcast Source Stream count
Not available for this target.
CONFIG_BT_BAP_BROADCAST_SRC_SUBGROUP_COUNT
Basic Audio Broadcast Source subgroup count
Not available for this target.
CONFIG_BT_BAP_DEBUG_STREAM_DATA
Bluetooth Audio Stream data debug
Not available for this target.
CONFIG_BT_BAP_DEBUG_STREAM_SEQ_NUM
Bluetooth Audio Stream sequence number debug
Not available for this target.
CONFIG_BT_BAP_SCAN_DELEGATOR
Basic Audio Profile Scan Delegator role support
Not available for this target.
CONFIG_BT_BAP_SCAN_DELEGATOR_BUF_TIMEOUT
Milliseconds of timeout when handle concurrent access to the long read ASE buffer
Not available for this target.
CONFIG_BT_BAP_SCAN_DELEGATOR_RECV_STATE_COUNT
Scan Delegator Receive State Count
Not available for this target.
CONFIG_BT_BAP_UNICAST_CLIENT
Bluetooth Unicast Audio Client Support
Not available for this target.
CONFIG_BT_BAP_UNICAST_CLIENT_ASE_SNK_COUNT
Basic Audio Profile ASE Sink count
Not available for this target.
CONFIG_BT_BAP_UNICAST_CLIENT_ASE_SRC_COUNT
Basic Audio Profile ASE Source count
Not available for this target.
CONFIG_BT_BAP_UNICAST_CLIENT_GROUP_COUNT
Basic Audio Unicast Group count
Not available for this target.
CONFIG_BT_BAP_UNICAST_CLIENT_GROUP_STREAM_COUNT
Basic Audio Profile Unicast Group Connected Isochronous Stream (CIS) count
Not available for this target.
CONFIG_BT_BAP_UNICAST_SERVER
Bluetooth Unicast Audio Server Support
Not available for this target.
CONFIG_BT_BLUEDROID_PINNED_TO_CORE_CHOICE
The cpu core which Bluedroid run
Not available for this target.
CONFIG_BT_CAP_ACCEPTOR
Common Audio Profile Acceptor Role Support
Not available for this target.
CONFIG_BT_CAP_ACCEPTOR_SET_MEMBER
Common Audio Profile Acceptor Role Set Member support
Not available for this target.
CONFIG_BT_CAP_COMMANDER
Common Audio Profile Initiator Role Support
Not available for this target.
CONFIG_BT_CAP_HANDOVER
Common Audio Profile Handover Procedures
Not available for this target.
CONFIG_BT_CAP_INITIATOR
Common Audio Profile Initiator Role Support
Not available for this target.
CONFIG_BT_CCP_CALL_CONTROL_CLIENT
Call Control Profile Client Support
Not available for this target.
CONFIG_BT_CCP_CALL_CONTROL_CLIENT_BEARER_COUNT
Telephone bearer count
Not available for this target.
CONFIG_BT_CCP_CALL_CONTROL_SERVER
Call Control Profile Call Control Server Support
Not available for this target.
CONFIG_BT_CCP_CALL_CONTROL_SERVER_BEARER_COUNT
Telephone bearer count
Not available for this target.
CONFIG_BT_CCP_CALL_CONTROL_SERVER_PROVIDER_NAME_MAX_LEN
The maximum length of the bearer provider name excluding null terminator
Not available for this target.
CONFIG_BT_CSIP_SET_COORDINATOR
Coordinated Set Identification Profile Set Coordinator Support
Not available for this target.
CONFIG_BT_CSIP_SET_COORDINATOR_ENC_SIRK_SUPPORT
Support for encrypted SIRK
Not available for this target.
CONFIG_BT_CSIP_SET_COORDINATOR_MAX_CSIS_INSTANCES
Coordinated Set Identification Service Count
Not available for this target.
CONFIG_BT_CSIP_SET_COORDINATOR_TEST_SAMPLE_DATA
Coordinated Set Identification Service Test Sample Data
Not available for this target.
CONFIG_BT_CSIP_SET_MEMBER
Coordinated Set Identification Profile Set Member support
Not available for this target.
CONFIG_BT_CSIP_SET_MEMBER_ENC_SIRK_SUPPORT
Support for encrypted SIRK
Not available for this target.
CONFIG_BT_CSIP_SET_MEMBER_MAX_INSTANCE_COUNT
Coordinated Set Identification Profile max service instance count
Not available for this target.
CONFIG_BT_CSIP_SET_MEMBER_SET_NAME_NOTIFIABLE
Coordinated Set Name notifiable support
Not available for this target.
CONFIG_BT_CSIP_SET_MEMBER_SIRK_NOTIFIABLE
SIRK notifiable Support
Not available for this target.
CONFIG_BT_CSIP_SET_MEMBER_SIZE_NOTIFIABLE
Set Size notifiable support
Not available for this target.
CONFIG_BT_CSIP_SET_MEMBER_TEST_SAMPLE_DATA
Coordinated Set Identification Service Test Sample Data
Not available for this target.
CONFIG_BT_GMAP
Gaming Audio Profile
Not available for this target.
CONFIG_BT_HAS
Hearing Access Service support
Not available for this target.
CONFIG_BT_HAS_CLIENT
Hearing Access Service Client support
Not available for this target.
CONFIG_BT_HAS_FEATURES_NOTIFIABLE
Hearing Aid Features Notifiable Support
Not available for this target.
CONFIG_BT_HAS_PRESET_CONTROL_POINT_NOTIFIABLE
Preset Control Point Notifiable support (depends on EATT)
Not available for this target.
CONFIG_BT_HAS_PRESET_COUNT
Preset record list size
Not available for this target.
CONFIG_BT_HAS_PRESET_NAME_DYNAMIC
Allow to set preset name on runtime
Not available for this target.
CONFIG_BT_ISO_BROADCASTER
Bluetooth Isochronous Broadcaster Support
Not available for this target.
CONFIG_BT_ISO_BSS_SEG_EXTERNAL_MEMORY
Place BLE ISO .bss segment in external SPIRAM
Not available for this target.
CONFIG_BT_ISO_CENTRAL
Bluetooth Isochronous Channel Unicast Central Support
Not available for this target.
CONFIG_BT_ISO_DISPATCH_DUMP_PERIOD_S
ISO dispatch stats dump period (in seconds)
Not available for this target.
CONFIG_BT_ISO_DISPATCH_MONITOR
Monitor ISO task callback dispatch latency
Not available for this target.
CONFIG_BT_ISO_DISPATCH_THRESHOLD_US
ISO dispatch threshold (in microseconds)
Not available for this target.
CONFIG_BT_ISO_HEAP_EXTERNAL_MEMORY
Place BLE ISO heap allocations in external SPIRAM
Not available for this target.
CONFIG_BT_ISO_LOG_LEVEL
BLE_ISO_LOG_LEVEL
Not available for this target.
CONFIG_BT_ISO_MAX_BIG
Maximum number of Broadcast Isochronous Groups (BIGs) to support
Not available for this target.
CONFIG_BT_ISO_MAX_CHAN
Maximum number of simultaneous ISO channels
Not available for this target.
CONFIG_BT_ISO_MAX_CIG
Maximum number of Connected Isochronous Groups (CIGs) to support
Not available for this target.
CONFIG_BT_ISO_NO_LOG
Disable BLE ISO Debug Log
Not available for this target.
CONFIG_BT_ISO_PERIPHERAL
Bluetooth Isochronous Channel Unicast Peripheral Support
Not available for this target.
CONFIG_BT_ISO_SYNC_RECEIVER
Bluetooth Isochronous Synchronized Receiver Support
Not available for this target.
CONFIG_BT_ISO_TEST_PARAMS
ISO test parameters support
Not available for this target.
CONFIG_BT_MCC
Media Control Client Support
Not available for this target.
CONFIG_BT_MCC_GROUP_RECORDS_MAX
Maximum number of records in a group object
Not available for this target.
CONFIG_BT_MCC_ICON_URL_MAX
Max length of media player icon URL
Not available for this target.
CONFIG_BT_MCC_MEDIA_PLAYER_NAME_MAX
Max length of media player name
Not available for this target.
CONFIG_BT_MCC_MINIMAL
Minimal Media Control Client without optional procedures
Not available for this target.
CONFIG_BT_MCC_OTC_OBJ_BUF_SIZE
The size of the buffer used for OTC object in MCC
Not available for this target.
CONFIG_BT_MCC_OTS
Media Control Client support for Object Transfer Service
Not available for this target.
CONFIG_BT_MCC_READ_CONTENT_CONTROL_ID
Support reading Content Control ID
Not available for this target.
CONFIG_BT_MCC_READ_MEDIA_CONTROL_POINT_OPCODES_SUPPORTED
Support reading Media Control Point Opcodes Supported
Not available for this target.
CONFIG_BT_MCC_READ_MEDIA_PLAYER_ICON_URL
Support reading Media Player Icon URL
Not available for this target.
CONFIG_BT_MCC_READ_MEDIA_STATE
Support reading Media State
Not available for this target.
CONFIG_BT_MCC_READ_PLAYBACK_SPEED
Support reading Playback Speed
Not available for this target.
CONFIG_BT_MCC_READ_PLAYING_ORDER
Support reading Playing Order
Not available for this target.
CONFIG_BT_MCC_READ_PLAYING_ORDER_SUPPORTED
Support reading Playing Order Supported
Not available for this target.
CONFIG_BT_MCC_READ_SEEKING_SPEED
Support reading Seeking Speed
Not available for this target.
CONFIG_BT_MCC_READ_TRACK_DURATION
Support reading Track Duration
Not available for this target.
CONFIG_BT_MCC_READ_TRACK_POSITION
Support reading Track Position
Not available for this target.
CONFIG_BT_MCC_READ_TRACK_TITLE
Support reading Track Title
Not available for this target.
CONFIG_BT_MCC_READ_TRACK_TITLE_ENABLE_SUBSCRIPTION
Support to enable or disable the subscription of Track Title
Not available for this target.
CONFIG_BT_MCC_SEGMENT_NAME_MAX
Max length of the name of a track segment
Not available for this target.
CONFIG_BT_MCC_SET_MEDIA_CONTROL_POINT
Support setting Media Control Point
Not available for this target.
CONFIG_BT_MCC_SET_PLAYBACK_SPEED
Support setting Playback Speed
Not available for this target.
CONFIG_BT_MCC_SET_PLAYING_ORDER
Support setting Playing Order
Not available for this target.
CONFIG_BT_MCC_SET_TRACK_POSITION
Support setting Track Position
Not available for this target.
CONFIG_BT_MCC_SHELL
Media Control Client Shell Support
Not available for this target.
CONFIG_BT_MCC_TOTAL_OBJ_CONTENT_MEM
Total memory size to use for storing the content of objects
Not available for this target.
CONFIG_BT_MCC_TRACK_SEGS_MAX_CNT
Maximum number of tracks segments in a track segment object
Not available for this target.
CONFIG_BT_MCC_TRACK_TITLE_MAX
Max length of the title of a track
Not available for this target.
CONFIG_BT_MCS
Media Control Service Support
Not available for this target.
CONFIG_BT_MCS_INSTANCE_COUNT
How many discrete MCS (0x1848) instances the device instantiates
Not available for this target.
CONFIG_BT_MCTL
Support for media player control
Not available for this target.
CONFIG_BT_MCTL_LOCAL_PLAYER_CONTROL
Support for control of local media player
Not available for this target.
CONFIG_BT_MCTL_LOCAL_PLAYER_LOCAL_CONTROL
Support for local control of local media player
Not available for this target.
CONFIG_BT_MCTL_LOCAL_PLAYER_REMOTE_CONTROL
Support for remote control of local media players
Not available for this target.
CONFIG_BT_MCTL_REMOTE_PLAYER_CONTROL
Support for control of remote media player
Not available for this target.
CONFIG_BT_MCTL_REMOTE_PLAYER_CONTROL_OBJECTS
Support for accessing objects on remote player
Not available for this target.
CONFIG_BT_MICP_MIC_CTLR
Microphone Control Profile Microphone Controller Support
Not available for this target.
CONFIG_BT_MICP_MIC_CTLR_MAX_AICS_INST
Maximum number of Audio Input Control Service instances to setup
Not available for this target.
CONFIG_BT_MICP_MIC_DEV
Microphone Control Profile Microphone Device Support
Not available for this target.
CONFIG_BT_MICP_MIC_DEV_AICS_INSTANCE_COUNT
Audio Input Control Service instance count for Microphone Control Service Microphone Device
Not available for this target.
CONFIG_BT_MPL
Support for media player
Not available for this target.
CONFIG_BT_MPL_GROUP_TITLE_MAX
Max length of the title of a group of tracks
Not available for this target.
CONFIG_BT_MPL_ICON_BITMAP_SIZE
Media player Icon bitmap object size
Not available for this target.
CONFIG_BT_MPL_ICON_URL
Media player Icon URL
Not available for this target.
CONFIG_BT_MPL_ICON_URL_MAX
Max length of media player icon URL
Not available for this target.
CONFIG_BT_MPL_MAX_OBJ_SIZE
Total memory size to use for storing the content of objects
Not available for this target.
CONFIG_BT_MPL_MEDIA_PLAYER_NAME
Media Player Name
Not available for this target.
CONFIG_BT_MPL_MEDIA_PLAYER_NAME_MAX
Max length of media player name
Not available for this target.
CONFIG_BT_MPL_OBJECTS
Support for media player objects
Not available for this target.
CONFIG_BT_MPL_SEGMENT_NAME_MAX
Max length of the name of a track segment
Not available for this target.
CONFIG_BT_MPL_TRACK_MAX_SIZE
Maximum size for a track object
Not available for this target.
CONFIG_BT_MPL_TRACK_TITLE_MAX
Max length of the title of a track
Not available for this target.
CONFIG_BT_NIMBLE_HOST_BASED_PRIVACY
Enable host based privacy for random address.
Not available for this target.
CONFIG_BT_NIMBLE_HS_FLOW_CTRL
Enable Host Flow control
Not available for this target.
CONFIG_BT_NIMBLE_HS_FLOW_CTRL_ITVL
Host Flow control interval
Not available for this target.
CONFIG_BT_NIMBLE_HS_FLOW_CTRL_THRESH
Host Flow control threshold
Not available for this target.
CONFIG_BT_NIMBLE_HS_FLOW_CTRL_TX_ON_DISCONNECT
Host Flow control on disconnect
Not available for this target.
CONFIG_BT_NIMBLE_PINNED_TO_CORE_CHOICE
The CPU core on which NimBLE host will run
Not available for this target.
CONFIG_BT_OTS
Object Transfer Service (OTS) [EXPERIMENTAL]
Not available for this target.
CONFIG_BT_OTS_CLIENT
Object Transfer Service Client [Experimental]
Not available for this target.
CONFIG_BT_OTS_DIR_LIST_OBJ
The Directory Listing Object
Not available for this target.
CONFIG_BT_OTS_DIR_LIST_OBJ_NAME
The object name of the Directory Listing Object
Not available for this target.
CONFIG_BT_OTS_L2CAP_CHAN_RX_MTU
Size of RX MTU for Object Transfer Channel
Not available for this target.
CONFIG_BT_OTS_L2CAP_CHAN_TX_MTU
Size of TX MTU for Object Transfer Channel
Not available for this target.
CONFIG_BT_OTS_MAX_INST_CNT
Maximum number of available OTS instances
Not available for this target.
CONFIG_BT_OTS_MAX_OBJ_CNT
Maximum number of objects that each service instance can store
Not available for this target.
CONFIG_BT_OTS_OACP_CHECKSUM_SUPPORT
Support OACP Calculate Checksum operation
Not available for this target.
CONFIG_BT_OTS_OACP_CREATE_SUPPORT
Support OACP Create Operation
Not available for this target.
CONFIG_BT_OTS_OACP_DELETE_SUPPORT
Support OACP Delete Operation
Not available for this target.
CONFIG_BT_OTS_OACP_PATCH_SUPPORT
Support patching of objects
Not available for this target.
CONFIG_BT_OTS_OACP_READ_SUPPORT
Support OACP Read Operation
Not available for this target.
CONFIG_BT_OTS_OACP_WRITE_SUPPORT
Support OACP Write Operation
Not available for this target.
CONFIG_BT_OTS_OBJ_NAME_WRITE_SUPPORT
Support object name write
Not available for this target.
CONFIG_BT_OTS_OLCP_GO_TO_SUPPORT
Support OLCP Go To Operation
Not available for this target.
CONFIG_BT_OTS_SECONDARY_SVC
Register OTS as Secondary Service
Not available for this target.
CONFIG_BT_PACS_SUPPORTED_CONTEXT_NOTIFIABLE
Supported Audio Context Notifiable Support
Not available for this target.
CONFIG_BT_PAC_SNK
Sink PAC Characteristic Support
Not available for this target.
CONFIG_BT_PAC_SNK_LOC
Sink PAC Location Support
Not available for this target.
CONFIG_BT_PAC_SNK_LOC_NOTIFIABLE
Sink Audio Location Notifiable Support
Not available for this target.
CONFIG_BT_PAC_SNK_LOC_WRITEABLE
Sink PAC Location Writable Support
Not available for this target.
CONFIG_BT_PAC_SNK_NOTIFIABLE
Sink PAC Notifiable Support
Not available for this target.
CONFIG_BT_PAC_SRC
Source PAC Characteristic Support
Not available for this target.
CONFIG_BT_PAC_SRC_LOC
Source PAC Location Support
Not available for this target.
CONFIG_BT_PAC_SRC_LOC_NOTIFIABLE
Source Audio Location Notifiable Support
Not available for this target.
CONFIG_BT_PAC_SRC_LOC_WRITEABLE
Source PAC Location Writable Support
Not available for this target.
CONFIG_BT_PAC_SRC_NOTIFIABLE
Source PAC Notifiable Support
Not available for this target.
CONFIG_BT_PBP
Public Broadcast Profile
Not available for this target.
CONFIG_BT_RELEASE_IRAM
Release Bluetooth text (READ DOCS FIRST)
Not available for this target.
CONFIG_BT_TBS
Telephone Bearer Service Support
Not available for this target.
CONFIG_BT_TBS_BEARER_COUNT
How many bearer instances the device instantiates
Not available for this target.
CONFIG_BT_TBS_CLIENT_ACCEPT_CALL
Support Accept Call
Not available for this target.
CONFIG_BT_TBS_CLIENT_BEARER_LIST_CURRENT_CALLS
Support reading Bearer List Current Calls
Not available for this target.
CONFIG_BT_TBS_CLIENT_BEARER_PROVIDER_NAME
Support reading Bearer Provider Name
Not available for this target.
CONFIG_BT_TBS_CLIENT_BEARER_SIGNAL_STRENGTH
Support reading Bearer Signal Strength
Not available for this target.
CONFIG_BT_TBS_CLIENT_BEARER_TECHNOLOGY
Support reading Bearer Technology
Not available for this target.
CONFIG_BT_TBS_CLIENT_BEARER_UCI
Support reading Bearer UCI
Not available for this target.
CONFIG_BT_TBS_CLIENT_BEARER_URI_SCHEMES_SUPPORTED_LIST
Support reading Bearer URI Schemes Supported List
Not available for this target.
CONFIG_BT_TBS_CLIENT_CALL_FRIENDLY_NAME
Support reading Call Friendly Name
Not available for this target.
CONFIG_BT_TBS_CLIENT_CCID
Support reading Content Control ID
Not available for this target.
CONFIG_BT_TBS_CLIENT_GTBS
Generic Telephone Bearer Service client support
Not available for this target.
CONFIG_BT_TBS_CLIENT_HOLD_CALL
Support Hold Call
Not available for this target.
CONFIG_BT_TBS_CLIENT_INCOMING_CALL
Support reading Incoming Call
Not available for this target.
CONFIG_BT_TBS_CLIENT_INCOMING_URI
Support reading Incoming Call Target Bearer URI
Not available for this target.
CONFIG_BT_TBS_CLIENT_JOIN_CALLS
Support Join Calls
Not available for this target.
CONFIG_BT_TBS_CLIENT_MAX_CALLS
Maximum Number Of Calls Supported
Not available for this target.
CONFIG_BT_TBS_CLIENT_MAX_TBS_INSTANCES
Maximum number of TBS instances to setup
Not available for this target.
CONFIG_BT_TBS_CLIENT_MINIMAL
Minimal TBS Client without optional procedures
Not available for this target.
CONFIG_BT_TBS_CLIENT_OPTIONAL_OPCODES
Support reading Optional Opcodes
Not available for this target.
CONFIG_BT_TBS_CLIENT_ORIGINATE_CALL
Support Originate Call
Not available for this target.
CONFIG_BT_TBS_CLIENT_READ_BEARER_SIGNAL_INTERVAL
Support reading Bearer Signal Strength Reporting Interval
Not available for this target.
CONFIG_BT_TBS_CLIENT_RETRIEVE_CALL
Support Retrieve Call
Not available for this target.
CONFIG_BT_TBS_CLIENT_SET_BEARER_SIGNAL_INTERVAL
Support setting Bearer Signal Strength Reporting Interval
Not available for this target.
CONFIG_BT_TBS_CLIENT_STATUS_FLAGS
Support reading Status Flags
Not available for this target.
CONFIG_BT_TBS_CLIENT_TBS
Telephone Bearer Service client support
Not available for this target.
CONFIG_BT_TBS_CLIENT_TERMINATE_CALL
Support Terminate Call
Not available for this target.
CONFIG_BT_TBS_MAX_CALLS
Telephone Bearer Service Maximum Number Of Calls Supported
Not available for this target.
CONFIG_BT_TBS_MAX_FRIENDLY_NAME_LENGTH
The maximum length of the friendly name supported
Not available for this target.
CONFIG_BT_TBS_MAX_PROVIDER_NAME_LENGTH
The maximum length of the bearer provider name
Not available for this target.
CONFIG_BT_TBS_MAX_SCHEME_LIST_LENGTH
The maximum length of the URI scheme list
Not available for this target.
CONFIG_BT_TBS_MAX_URI_LENGTH
The maximum length of the call URI supported
Not available for this target.
CONFIG_BT_TBS_SUPPORTED_FEATURES
Telephone Bearer Service Supported Features
Not available for this target.
CONFIG_BT_TMAP
Telephony and Media Audio Profile
Not available for this target.
CONFIG_BT_VCP_VOL_CTLR
Volume Control Profile Volume Controller Support
Not available for this target.
CONFIG_BT_VCP_VOL_CTLR_MAX_AICS_INST
Maximum number of AICS instances to setup
Not available for this target.
CONFIG_BT_VCP_VOL_CTLR_MAX_VOCS_INST
Maximum number of VOCS instances to setup
Not available for this target.
CONFIG_BT_VCP_VOL_REND
Volume Control Profile Volume Renderer Support
Not available for this target.
CONFIG_BT_VCP_VOL_REND_AICS_INSTANCE_COUNT
Audio Input Control Service instance count for VCS
Not available for this target.
CONFIG_BT_VCP_VOL_REND_VOCS_INSTANCE_COUNT
Volume Offset Control Service instance count
Not available for this target.
CONFIG_BT_VCP_VOL_REND_VOL_FLAGS_NOTIFIABLE
Volume Flags notifiable support
Not available for this target.
CONFIG_BT_VOCS_CLIENT_MAX_INSTANCE_COUNT
Volume Offset Control Service client max instance count
Not available for this target.
CONFIG_BT_VOCS_MAX_INSTANCE_COUNT
Volume Offset Control Service max instance count
Not available for this target.
CONFIG_BT_VOCS_MAX_OUTPUT_DESCRIPTION_SIZE
Volume Offset Control Service max output description size
Not available for this target.
CONFIG_CAM_CTLR_DVP_CAM_ISR_CACHE_SAFE
DVP ISR Cache-Safe
Not available for this target.
CONFIG_CAM_CTLR_ISP_DVP_ISR_CACHE_SAFE
ISP_DVP ISR Cache-Safe
Not available for this target.
CONFIG_CAM_CTLR_MIPI_CSI_ISR_CACHE_SAFE
CSI ISR Cache-Safe
Not available for this target.
CONFIG_COMPILER_LLVM_MEMCPY_OPTIMIZATION
Optimize memcpy with PIE
Not available for this target.
CONFIG_CORDIC_ONESHOT_CTRL_FUNC_IN_IRAM
Place cordic oneshot calculation function into IRAM
Not available for this target.
CONFIG_DAC_CTRL_FUNC_IN_IRAM
Place DAC control functions into IRAM
Not available for this target.
CONFIG_DAC_DMA_AUTO_16BIT_ALIGN
Align the continuous data to 16 bit automatically
Not available for this target.
CONFIG_DAC_ENABLE_DEBUG_LOG
Enable debug log
Not available for this target.
CONFIG_DAC_ISR_IRAM_SAFE
DAC ISR IRAM-Safe
Not available for this target.
CONFIG_DMA2D_ISR_IRAM_SAFE
2D-DMA ISR IRAM-Safe
Not available for this target.
CONFIG_DMA2D_OPERATION_FUNC_IN_IRAM
Place 2D-DMA operation functions into IRAM
Not available for this target.
CONFIG_DW_GDMA_ENABLE_DEBUG_LOG
Enable debug log
Not available for this target.
CONFIG_EFUSE_CODE_SCHEME_SELECTOR
Coding Scheme Compatibility
Not available for this target.
CONFIG_ESPTOOLPY_FLASH_MODE_AUTO_DETECT
Choose flash mode automatically (please read help)
Not available for this target.
CONFIG_ESPTOOLPY_OCT_FLASH
Enable Octal Flash
Not available for this target.
CONFIG_ESP_BUS_ENABLE_AUTO_GATE
Enable bus clock auto-gate
Not available for this target.
CONFIG_ESP_CONSOLE_USB_CDC_RX_BUF_SIZE
Size of USB CDC RX buffer
Not available for this target.
CONFIG_ESP_CONSOLE_USB_CDC_SUPPORT_ETS_PRINTF
Enable esp_rom_printf / ESP_EARLY_LOG via USB CDC
Not available for this target.
CONFIG_ESP_CRYPTO_CLK_ON_DEMAND
Enable on-demand crypto clock management
Not available for this target.
CONFIG_ESP_ECDSA_ENABLE_P192_CURVE
Enable ECDSA 192-curve operations
Not available for this target.
CONFIG_ESP_HOST_WIFI_ENABLED
Host WiFi Enable
Not available for this target.
CONFIG_ESP_INT_WDT_CHECK_CPU1
Also watch CPU1 tick interrupt
Not available for this target.
CONFIG_ESP_IPC_USES_CALLERS_PRIORITY
IPC runs at caller's priority
Not available for this target.
CONFIG_ESP_MAC_IGNORE_MAC_CRC_ERROR
Ignore MAC CRC error (not recommended)
Not available for this target.
CONFIG_ESP_PARTITION_ENABLE_STATS
Host test statistics enabled
Not available for this target.
CONFIG_ESP_PARTITION_ERASE_CHECK
Check if flash is erased before writing
Not available for this target.
CONFIG_ESP_PHY_ENABLE_USB
Keep the USB PHY enabled when initializing WiFi
Not available for this target.
CONFIG_ESP_PHY_IMPROVE_RX_11B
Improve Wi-Fi receive 11b pkts
Not available for this target.
CONFIG_ESP_PHY_INIT_IRAM
Place PHY (de)init in IRAM
Not available for this target.
CONFIG_ESP_SLEEP_POWER_DOWN_FLASH
Power down flash in light sleep when there is no SPIRAM or SPIRAM has independent power supply
Not available for this target.
CONFIG_ESP_SYSTEM_ALLOW_RTC_FAST_MEM_AS_HEAP
Enable RTC fast memory for dynamic allocations
Not available for this target.
CONFIG_ESP_SYSTEM_BBPLL_RECALIB
Re-calibration BBPLL at startup
Not available for this target.
CONFIG_ESP_SYSTEM_MEMPROT_PMP_LP_CORE_RESERVE_MEM_EXEC
Make LP core reserved memory executable from HP core
Not available for this target.
CONFIG_ESP_SYSTEM_MEMPROT_PMS_LOCK
Lock memory protection settings
Not available for this target.
CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1
Watch CPU1 Idle Task
Not available for this target.
CONFIG_ESP_TLS_USE_DS_PERIPHERAL
Use Digital Signature (DS) Peripheral with ESP-TLS
Not available for this target.
CONFIG_ESP_WIFI_ENABLE_DUMP_CTRL_BFRP
Enable Wi-Fi dump BFRP frames
Not available for this target.
CONFIG_ESP_WIFI_ENABLE_DUMP_CTRL_NDPA
Enable Wi-Fi dump NDPA frames
Not available for this target.
CONFIG_ESP_WIFI_ENABLE_DUMP_HESIGB
Enable Wi-Fi dump HE-SIGB which is contained in DL HE MU PPDUs
Not available for this target.
CONFIG_ESP_WIFI_ENABLE_DUMP_MU_CFO
Enable Wi-Fi dump MU CFO
Not available for this target.
CONFIG_ESP_WIFI_SLP_PHY_OFF_DELTA_TIMEOUT_TIME
Delta timeout time for RF PHY off
Not available for this target.
CONFIG_ESP_WIFI_SLP_PHY_ON_DELTA_EARLY_TIME
Delta early time for RF PHY on
Not available for this target.
CONFIG_ESP_WIFI_TASK_CORE_ID
WiFi Task Core ID
Not available for this target.
CONFIG_ESP_XT_WDT
Initialize XTAL32K watchdog timer on startup
Not available for this target.
CONFIG_ESP_XT_WDT_BACKUP_CLK_ENABLE
Automatically switch to BACKUP32K_CLK when timer expires
Not available for this target.
CONFIG_ESP_XT_WDT_TIMEOUT
XTAL32K watchdog timeout period
Not available for this target.
CONFIG_ETH_CLOCK_ADJTIME_PERIOD_MS
Period over which adjtime() applies corrections (ms)
Not available for this target.
CONFIG_ETH_CLOCK_ADJTIME_SLEWLIMIT_PPB
Maximum clock slew rate (ppb)
Not available for this target.
CONFIG_ETH_DMA_BUFFER_SIZE
Ethernet DMA buffer size (Byte)
Not available for this target.
CONFIG_ETH_DMA_RX_BUFFER_NUM
Amount of Ethernet DMA Rx buffers
Not available for this target.
CONFIG_ETH_DMA_TX_BUFFER_NUM
Amount of Ethernet DMA Tx buffers
Not available for this target.
CONFIG_ETH_EMAC_PHY_REF_CLK_SRC
PHY reference clock source
Not available for this target.
CONFIG_ETH_EMAC_RGMII_TX_CLK_SRC
RGMII Tx clock source
Not available for this target.
CONFIG_ETH_IRAM_OPTIMIZATION
Enable IRAM optimization
Not available for this target.
CONFIG_ETH_SOFT_FLOW_CONTROL
Enable software flow control
Not available for this target.
CONFIG_ETH_USE_ESP32_EMAC
Support ESP32 internal EMAC controller
Not available for this target.
CONFIG_FREERTOS_FPU_IN_ISR
Use float in Level 1 ISR
Not available for this target.
CONFIG_FREERTOS_SMP
Run the Amazon SMP FreeRTOS kernel instead (FEATURE UNDER DEVELOPMENT)
Not available for this target.
CONFIG_FREERTOS_USE_PASSIVE_IDLE_HOOK
Use FreeRTOS minimal idle hook
Not available for this target.
CONFIG_HAL_ECDSA_GEN_SIG_CM
Enable countermeasure for ECDSA signature generation
Not available for this target.
CONFIG_IEEE802154_ASSERT
Enrich the assert information
Not available for this target.
CONFIG_IEEE802154_CCA_MODE
Clear Channel Assessment (CCA) mode
Not available for this target.
CONFIG_IEEE802154_CCA_THRESHOLD
CCA detection threshold
Not available for this target.
CONFIG_IEEE802154_DEBUG
Enable IEEE802154 Debug
Not available for this target.
CONFIG_IEEE802154_DEBUG_ASSERT_MONITOR
Enable IEEE802154 assert monitor
Not available for this target.
CONFIG_IEEE802154_ENABLED
IEEE802154 Enable
Not available for this target.
CONFIG_IEEE802154_INTERFACE_NUM
Number of IEEE802154 interfaces
Not available for this target.
CONFIG_IEEE802154_MULTI_PAN_ENABLE
Enable multi-pan feature for frame filter
Not available for this target.
CONFIG_IEEE802154_PENDING_TABLE_SIZE
Pending table size
Not available for this target.
CONFIG_IEEE802154_PRINT_PHY_REG
Enable print IEEE802154 PHY register command
Not available for this target.
CONFIG_IEEE802154_RECORD
Record the information with IEEE802154 state and event
Not available for this target.
CONFIG_IEEE802154_RECORD_ABORT
Enable record abort information for debugging
Not available for this target.
CONFIG_IEEE802154_RECORD_ABORT_SIZE
Record abort table size
Not available for this target.
CONFIG_IEEE802154_RECORD_CMD
Enable record command information for debugging
Not available for this target.
CONFIG_IEEE802154_RECORD_CMD_SIZE
Record command table size
Not available for this target.
CONFIG_IEEE802154_RECORD_EVENT
Enable record event information for debugging
Not available for this target.
CONFIG_IEEE802154_RECORD_EVENT_SIZE
Record event table size
Not available for this target.
CONFIG_IEEE802154_RECORD_STATE
Enable record state information for debugging
Not available for this target.
CONFIG_IEEE802154_RECORD_STATE_SIZE
Record state table size
Not available for this target.
CONFIG_IEEE802154_RECORD_TXRX_FRAME
Enable record txrx packets for debugging
Not available for this target.
CONFIG_IEEE802154_RECORD_TXRX_FRAME_SIZE
Record frame table size
Not available for this target.
CONFIG_IEEE802154_RX_BUFFER_SIZE
The number of 802.15.4 receive buffers
Not available for this target.
CONFIG_IEEE802154_RX_BUFFER_STATISTIC
Rx buffer statistic
Not available for this target.
CONFIG_IEEE802154_SLEEP_ENABLE
Enable IEEE802154 light sleep
Not available for this target.
CONFIG_IEEE802154_TIMING_OPTIMIZATION
Enable throughput optimization
Not available for this target.
CONFIG_IEEE802154_TXRX_STATISTIC
Enable record tx/rx packets information for debugging
Not available for this target.
CONFIG_ISP_CTRL_FUNC_IN_IRAM
Place ISP control functions into IRAM
Not available for this target.
CONFIG_ISP_ISR_IRAM_SAFE
ISP driver ISR IRAM-Safe
Not available for this target.
CONFIG_JPEG_ENABLE_DEBUG_LOG
Enable debug log
Not available for this target.
CONFIG_LCD_DSI_ISR_CACHE_SAFE
Allow DSI ISR to execute when cache is disabled
Not available for this target.
CONFIG_LCD_DSI_ISR_HANDLER_IN_IRAM
Place DSI ISR handler in IRAM to reduce latency
Not available for this target.
CONFIG_LCD_RGB_ISR_IRAM_SAFE
RGB LCD ISR IRAM-Safe
Not available for this target.
CONFIG_LCD_RGB_RESTART_IN_VSYNC
Always restart RGB LCD transmission in VSYNC
Not available for this target.
CONFIG_MBEDTLS_AES_HW_SMALL_DATA_LEN_OPTIM
Enable performance optimisation for the small data length hardware AES operations
Not available for this target.
CONFIG_MBEDTLS_AES_INTERRUPT_LEVEL
AES hardware interrupt level
Not available for this target.
CONFIG_MBEDTLS_AES_SOFT_FALLBACK
Enable software fallback for AES
Not available for this target.
CONFIG_MBEDTLS_AES_USE_INTERRUPT
Use interrupt for long AES operations
Not available for this target.
CONFIG_MBEDTLS_AES_USE_PSEUDO_ROUND_FUNC
Enable AES hardware's pseudo round function
Not available for this target.
CONFIG_MBEDTLS_AES_USE_PSEUDO_ROUND_FUNC_STRENGTH
Strength of the pseudo rounds function
Not available for this target.
CONFIG_MBEDTLS_GCM_SUPPORT_NON_AES_CIPHER
Enable support for non-AES ciphers in GCM operation
Not available for this target.
CONFIG_MBEDTLS_HARDWARE_AES
Enable hardware AES acceleration
Not available for this target.
CONFIG_MBEDTLS_HARDWARE_ECDSA_SIGN_CONSTANT_TIME_CM
Make ECDSA signature operation pseudo constant time for software
Not available for this target.
CONFIG_MBEDTLS_HARDWARE_ECDSA_SIGN_MASKING_CM
Mask original ECDSA sign operation under dummy sign operations
Not available for this target.
CONFIG_MBEDTLS_HARDWARE_GCM
Enable partially hardware accelerated GCM
Not available for this target.
CONFIG_MBEDTLS_HARDWARE_MPI
Enable hardware MPI (bignum) acceleration
Not available for this target.
CONFIG_MBEDTLS_HARDWARE_RSA_DS_PERIPHERAL
Enable hardware RSA digital signature peripheral acceleration
Not available for this target.
CONFIG_MBEDTLS_LARGE_KEY_SOFTWARE_MPI
Fallback to software implementation for larger MPI values
Not available for this target.
CONFIG_MBEDTLS_MPI_INTERRUPT_LEVEL
MPI hardware interrupt level
Not available for this target.
CONFIG_MBEDTLS_MPI_USE_INTERRUPT
Use interrupt for MPI exp-mod operations
Not available for this target.
CONFIG_MBEDTLS_USE_CRYPTO_ROM_IMPL
Use ROM implementation of the crypto algorithm
Not available for this target.
CONFIG_MBEDTLS_USE_CRYPTO_ROM_IMPL_BOOTLOADER
Use ROM implementation of the crypto algorithm in the bootloader
Not available for this target.
CONFIG_MCPWM_CTRL_FUNC_IN_IRAM
Place MCPWM control functions in IRAM
Not available for this target.
CONFIG_MCPWM_ENABLE_DEBUG_LOG
Force enable debug log
Not available for this target.
CONFIG_MCPWM_ISR_CACHE_SAFE
Allow MCPWM ISR to execute when cache is disabled
Not available for this target.
CONFIG_MCPWM_ISR_HANDLER_IN_IRAM
Place MCPWM ISR handler into IRAM to reduce latency
Not available for this target.
CONFIG_NVS_SEC_HMAC_EFUSE_KEY_ID
eFuse key ID storing the HMAC key
Not available for this target.
CONFIG_OPENTHREAD_DUMP_MAC_ON_ASSERT
Dump 802.15.4 MAC debug info on OpenThread assert
Not available for this target.
CONFIG_OPENTHREAD_MULTIPAN_RCP_ENABLE
Enable Multipan RCP
Not available for this target.
CONFIG_OPENTHREAD_RADIO_TREL
Enable Thread Radio Encapsulation Link (TREL)
Not available for this target.
CONFIG_OPENTHREAD_TREL_BUFFER_SIZE
The receive buffer size of openthread trel
Not available for this target.
CONFIG_OPENTHREAD_TREL_PORT
The port of openthread trel service
Not available for this target.
CONFIG_PARLIO_ENABLE_DEBUG_LOG
Force enable debug log
Not available for this target.
CONFIG_PARLIO_ISR_IRAM_SAFE
Parallel IO ISR IRAM-Safe (Deprecated)
Not available for this target.
CONFIG_PARLIO_RX_ISR_CACHE_SAFE
Allow Parallel IO RX ISR to execute when cache is disabled
Not available for this target.
CONFIG_PARLIO_RX_ISR_HANDLER_IN_IRAM
Place Parallel IO RX ISR handler in IRAM to reduce latency
Not available for this target.
CONFIG_PARLIO_TX_ISR_CACHE_SAFE
Allow Parallel IO TX ISR to execute when cache is disabled
Not available for this target.
CONFIG_PARLIO_TX_ISR_HANDLER_IN_IRAM
Place Parallel IO TX ISR handler in IRAM to reduce latency
Not available for this target.
CONFIG_PCNT_CTRL_FUNC_IN_IRAM
Place PCNT control functions into IRAM
Not available for this target.
CONFIG_PCNT_ENABLE_DEBUG_LOG
Enable debug log
Not available for this target.
CONFIG_PCNT_ISR_IRAM_SAFE
PCNT ISR IRAM-Safe
Not available for this target.
CONFIG_PM_RESTORE_CACHE_TAGMEM_AFTER_LIGHT_SLEEP
Restore I/D-cache tag memory after power down CPU light sleep
Not available for this target.
CONFIG_PM_SLEEP_CLK_ICG_ENABLE
Enable clock gating control during light sleep
Not available for this target.
CONFIG_PTHREAD_TASK_CORE_DEFAULT
Default pthread core affinity
Not available for this target.
CONFIG_RMT_ENABLE_DEBUG_LOG
Force enable debug log
Not available for this target.
CONFIG_RMT_ENCODER_FUNC_IN_IRAM
Place RMT encoder function in IRAM
Not available for this target.
CONFIG_RMT_ISR_IRAM_SAFE
RMT ISR IRAM-Safe (Deprecated)
Not available for this target.
CONFIG_RMT_RECV_FUNC_IN_IRAM
Place RMT receive function in IRAM
Not available for this target.
CONFIG_RMT_RX_ISR_CACHE_SAFE
Allow RMT RX ISR to execute when cache is disabled
Not available for this target.
CONFIG_RMT_RX_ISR_HANDLER_IN_IRAM
Place RMT RX ISR handler in IRAM to reduce latency
Not available for this target.
CONFIG_RMT_TX_ISR_CACHE_SAFE
Allow RMT TX ISR to execute when cache is disabled
Not available for this target.
CONFIG_RMT_TX_ISR_HANDLER_IN_IRAM
Place RMT TX ISR handler in IRAM to reduce latency
Not available for this target.
CONFIG_SDM_CTRL_FUNC_IN_IRAM
Place SDM control functions into IRAM
Not available for this target.
CONFIG_SDM_ENABLE_DEBUG_LOG
Force enable debug log
Not available for this target.
CONFIG_SD_HOST_SDMMC_ISR_CACHE_SAFE
SD Host ISR Cache-Safe
Not available for this target.
CONFIG_SECURE_BOOTLOADER_KEY_ENCODING
Hardware Key Encoding
Not available for this target.
CONFIG_SECURE_BOOTLOADER_MODE
Secure bootloader mode
Not available for this target.
CONFIG_SECURE_BOOT_ALLOW_ROM_BASIC
Leave ROM BASIC Interpreter available on reset
Not available for this target.
CONFIG_SECURE_BOOT_SKIP_WRITE_PROTECTION_SCA
Skip write-protection of SECURE_FLASH_PSEUDO_ROUND_FUNC_STRENGTH
Not available for this target.
CONFIG_SECURE_BOOT_VERIFICATION_KEY
Secure boot public signature verification key
Not available for this target.
CONFIG_SECURE_FLASH_ENCRYPTION_KEYSIZE
Size of generated XTS-AES key
Not available for this target.
CONFIG_SECURE_FLASH_UART_BOOTLOADER_ALLOW_CACHE
Leave UART bootloader flash cache enabled
Not available for this target.
CONFIG_SECURE_FLASH_UART_BOOTLOADER_ALLOW_DEC
Leave UART bootloader decryption enabled
Not available for this target.
CONFIG_SECURE_SIGNED_ON_BOOT_NO_SECURE_BOOT
Bootloader verifies app signatures
Not available for this target.
CONFIG_SECURE_TEE_PBKDF2_EFUSE_HMAC_KEY_ID
Secure Storage: eFuse HMAC key ID for PBKDF2 key derivation
Not available for this target.
CONFIG_SECURE_TEE_SEC_STG_SUPPORT_SECP384R1_SIGN
SECP384R1
Not available for this target.
CONFIG_SPI_FLASH_SUPPORT_MXIC_OPI_CHIP
mxic (opi)
Not available for this target.
CONFIG_TOUCH_CTRL_FUNC_IN_IRAM
Place touch sensor control functions into IRAM
Not available for this target.
CONFIG_TOUCH_ENABLE_DEBUG_LOG
Enable debug log
Not available for this target.
CONFIG_TOUCH_ISR_IRAM_SAFE
Touch sensor ISR IRAM-Safe
Not available for this target.
CONFIG_TOUCH_SKIP_FSM_CHECK
Skip the FSM check
Not available for this target.
CONFIG_TOUCH_SKIP_LEGACY_CONFLICT_CHECK
Skip legacy conflict check
Not available for this target.
CONFIG_TOUCH_SUPPRESS_DEPRECATE_WARN
Suppress legacy driver deprecated warning
Not available for this target.
CONFIG_TWAI_ENABLE_DEBUG_LOG
Force enable debug log
Not available for this target.
CONFIG_TWAI_IO_FUNC_IN_IRAM
Place TWAI I/O functions in IRAM
Not available for this target.
CONFIG_TWAI_ISR_CACHE_SAFE
Allow TWAI ISR execute when cache disabled
Not available for this target.
CONFIG_TWAI_ISR_IN_IRAM
Place TWAI ISR function in IRAM
Not available for this target.
CONFIG_TWAI_ISR_IN_IRAM_LEGACY
Place TWAI ISR function in IRAM
Not available for this target.
CONFIG_TWAI_SKIP_LEGACY_CONFLICT_CHECK
Skip legacy driver conflict check
Not available for this target.
CONFIG_TWAI_SUPPRESS_DEPRECATE_WARN
Suppress legacy driver deprecated warning
Not available for this target.
CONFIG_ULP_COPROC_ENABLED
Enable Ultra Low Power (ULP) Co-processor
Not available for this target.
CONFIG_ULP_COPROC_RESERVE_HP_MEM_BYTES
HP SRAM size reserved for LP Core (bytes)
Not available for this target.
CONFIG_ULP_COPROC_RESERVE_MEM
RTC slow memory reserved for coprocessor
Not available for this target.
CONFIG_ULP_COPROC_RUN_FROM_HP_MEM
Run LP Core from HP memory
Not available for this target.
CONFIG_ULP_COPROC_TYPE_FSM
ULP FSM (Finite State Machine)
Not available for this target.
CONFIG_ULP_COPROC_TYPE_LP_CORE
LP core RISC-V
Not available for this target.
CONFIG_ULP_COPROC_TYPE_RISCV
ULP RISC-V
Not available for this target.
CONFIG_ULP_HP_UART_CONSOLE_PRINT
Route lp_core_printf to the console HP-UART
Not available for this target.
CONFIG_ULP_LP_CORE_MEMPROT
Enable LP Core memory protection (PMP)
Not available for this target.
CONFIG_ULP_NORESET_UNDER_DEBUG
Avoid resetting LP core when debugger is attached
Not available for this target.
CONFIG_ULP_PANIC_OUTPUT_ENABLE
Enable panic handler which outputs over LP UART
Not available for this target.
CONFIG_ULP_RISCV_I2C_RW_TIMEOUT
Set timeout for ULP RISC-V I2C transaction timeout in ticks.
Not available for this target.
CONFIG_ULP_RISCV_INTERRUPT_ENABLE
Enable ULP RISC-V interrupts
Not available for this target.
CONFIG_ULP_RISCV_UART_BAUDRATE
Baudrate used by the bitbanged ULP RISC-V UART driver
Not available for this target.
CONFIG_ULP_ROM_PRINT_ENABLE
Enable print utilities from LP ROM
Not available for this target.
CONFIG_ULP_TRAP_WAKEUP
Enable wakeup of HP-CPU when LP-core encounters an exception
Not available for this target.
Deprecated options and their replacements
CONFIG_A2DP_ENABLE (CONFIG_BT_A2DP_ENABLE)
- CONFIG_A2D_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_A2D_TRACE_LEVEL)
CONFIG_A2D_TRACE_LEVEL_NONE
CONFIG_A2D_TRACE_LEVEL_ERROR
CONFIG_A2D_TRACE_LEVEL_WARNING
CONFIG_A2D_TRACE_LEVEL_API
CONFIG_A2D_TRACE_LEVEL_EVENT
CONFIG_A2D_TRACE_LEVEL_DEBUG
CONFIG_A2D_TRACE_LEVEL_VERBOSE
CONFIG_ANA_CMPR_ISR_IRAM_SAFE (CONFIG_ANA_CMPR_ISR_CACHE_SAFE)
- CONFIG_APPL_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_APPL_TRACE_LEVEL)
CONFIG_APPL_TRACE_LEVEL_NONE
CONFIG_APPL_TRACE_LEVEL_ERROR
CONFIG_APPL_TRACE_LEVEL_WARNING
CONFIG_APPL_TRACE_LEVEL_API
CONFIG_APPL_TRACE_LEVEL_EVENT
CONFIG_APPL_TRACE_LEVEL_DEBUG
CONFIG_APPL_TRACE_LEVEL_VERBOSE
CONFIG_APP_ANTI_ROLLBACK (CONFIG_BOOTLOADER_APP_ANTI_ROLLBACK)
CONFIG_APP_SECURE_VERSION (CONFIG_BOOTLOADER_APP_SECURE_VERSION)
CONFIG_APP_SECURE_VERSION_SIZE_EFUSE_FIELD (CONFIG_BOOTLOADER_APP_SEC_VER_SIZE_EFUSE_FIELD)
- CONFIG_AVCT_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_AVCT_TRACE_LEVEL)
CONFIG_AVCT_TRACE_LEVEL_NONE
CONFIG_AVCT_TRACE_LEVEL_ERROR
CONFIG_AVCT_TRACE_LEVEL_WARNING
CONFIG_AVCT_TRACE_LEVEL_API
CONFIG_AVCT_TRACE_LEVEL_EVENT
CONFIG_AVCT_TRACE_LEVEL_DEBUG
CONFIG_AVCT_TRACE_LEVEL_VERBOSE
- CONFIG_AVDT_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_AVDT_TRACE_LEVEL)
CONFIG_AVDT_TRACE_LEVEL_NONE
CONFIG_AVDT_TRACE_LEVEL_ERROR
CONFIG_AVDT_TRACE_LEVEL_WARNING
CONFIG_AVDT_TRACE_LEVEL_API
CONFIG_AVDT_TRACE_LEVEL_EVENT
CONFIG_AVDT_TRACE_LEVEL_DEBUG
CONFIG_AVDT_TRACE_LEVEL_VERBOSE
- CONFIG_AVRC_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_AVRC_TRACE_LEVEL)
CONFIG_AVRC_TRACE_LEVEL_NONE
CONFIG_AVRC_TRACE_LEVEL_ERROR
CONFIG_AVRC_TRACE_LEVEL_WARNING
CONFIG_AVRC_TRACE_LEVEL_API
CONFIG_AVRC_TRACE_LEVEL_EVENT
CONFIG_AVRC_TRACE_LEVEL_DEBUG
CONFIG_AVRC_TRACE_LEVEL_VERBOSE
CONFIG_BLE_ACTIVE_SCAN_REPORT_ADV_SCAN_RSP_INDIVIDUALLY (CONFIG_BT_BLE_ACT_SCAN_REP_ADV_SCAN)
CONFIG_BLE_ESTABLISH_LINK_CONNECTION_TIMEOUT (CONFIG_BT_BLE_ESTAB_LINK_CONN_TOUT)
CONFIG_BLE_MESH_GATT_PROXY (CONFIG_BLE_MESH_GATT_PROXY_SERVER)
CONFIG_BLE_SMP_ENABLE (CONFIG_BT_BLE_SMP_ENABLE)
CONFIG_BLUEDROID_MEM_DEBUG (CONFIG_BT_BLUEDROID_MEM_DEBUG)
- CONFIG_BLUFI_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_BLUFI_TRACE_LEVEL)
CONFIG_BLUFI_TRACE_LEVEL_NONE
CONFIG_BLUFI_TRACE_LEVEL_ERROR
CONFIG_BLUFI_TRACE_LEVEL_WARNING
CONFIG_BLUFI_TRACE_LEVEL_API
CONFIG_BLUFI_TRACE_LEVEL_EVENT
CONFIG_BLUFI_TRACE_LEVEL_DEBUG
CONFIG_BLUFI_TRACE_LEVEL_VERBOSE
CONFIG_BNEP_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_BNEP_TRACE_LEVEL)
CONFIG_BROWNOUT_DET (CONFIG_ESP_BROWNOUT_DET)
- CONFIG_BROWNOUT_DET_LVL_SEL (CONFIG_ESP_BROWNOUT_DET_LVL_SEL)
CONFIG_BROWNOUT_DET_LVL_SEL_7
CONFIG_BROWNOUT_DET_LVL_SEL_6
CONFIG_BROWNOUT_DET_LVL_SEL_5
CONFIG_BROWNOUT_DET_LVL_SEL_4
CONFIG_BROWNOUT_DET_LVL_SEL_3
CONFIG_BROWNOUT_DET_LVL_SEL_2
- CONFIG_BTC_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_BTC_TRACE_LEVEL)
CONFIG_BTC_TRACE_LEVEL_NONE
CONFIG_BTC_TRACE_LEVEL_ERROR
CONFIG_BTC_TRACE_LEVEL_WARNING
CONFIG_BTC_TRACE_LEVEL_API
CONFIG_BTC_TRACE_LEVEL_EVENT
CONFIG_BTC_TRACE_LEVEL_DEBUG
CONFIG_BTC_TRACE_LEVEL_VERBOSE
CONFIG_BTC_TASK_STACK_SIZE (CONFIG_BT_BTC_TASK_STACK_SIZE)
- CONFIG_BTH_LOG_SDP_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_SDP_TRACE_LEVEL)
CONFIG_SDP_TRACE_LEVEL_NONE
CONFIG_SDP_TRACE_LEVEL_ERROR
CONFIG_SDP_TRACE_LEVEL_WARNING
CONFIG_SDP_TRACE_LEVEL_API
CONFIG_SDP_TRACE_LEVEL_EVENT
CONFIG_SDP_TRACE_LEVEL_DEBUG
CONFIG_SDP_TRACE_LEVEL_VERBOSE
- CONFIG_BTIF_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_BTIF_TRACE_LEVEL)
CONFIG_BTIF_TRACE_LEVEL_NONE
CONFIG_BTIF_TRACE_LEVEL_ERROR
CONFIG_BTIF_TRACE_LEVEL_WARNING
CONFIG_BTIF_TRACE_LEVEL_API
CONFIG_BTIF_TRACE_LEVEL_EVENT
CONFIG_BTIF_TRACE_LEVEL_DEBUG
CONFIG_BTIF_TRACE_LEVEL_VERBOSE
- CONFIG_BTM_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_BTM_TRACE_LEVEL)
CONFIG_BTM_TRACE_LEVEL_NONE
CONFIG_BTM_TRACE_LEVEL_ERROR
CONFIG_BTM_TRACE_LEVEL_WARNING
CONFIG_BTM_TRACE_LEVEL_API
CONFIG_BTM_TRACE_LEVEL_EVENT
CONFIG_BTM_TRACE_LEVEL_DEBUG
CONFIG_BTM_TRACE_LEVEL_VERBOSE
CONFIG_BTU_TASK_STACK_SIZE (CONFIG_BT_BTU_TASK_STACK_SIZE)
CONFIG_BT_NIMBLE_ACL_BUF_COUNT (CONFIG_BT_NIMBLE_TRANSPORT_ACL_FROM_LL_COUNT)
CONFIG_BT_NIMBLE_ACL_BUF_SIZE (CONFIG_BT_NIMBLE_TRANSPORT_ACL_SIZE)
CONFIG_BT_NIMBLE_HCI_EVT_BUF_SIZE (CONFIG_BT_NIMBLE_TRANSPORT_EVT_SIZE)
CONFIG_BT_NIMBLE_HCI_EVT_HI_BUF_COUNT (CONFIG_BT_NIMBLE_TRANSPORT_EVT_COUNT)
CONFIG_BT_NIMBLE_HCI_EVT_LO_BUF_COUNT (CONFIG_BT_NIMBLE_TRANSPORT_EVT_DISCARD_COUNT)
CONFIG_BT_NIMBLE_MSYS1_BLOCK_COUNT (CONFIG_BT_NIMBLE_MSYS_1_BLOCK_COUNT)
CONFIG_BT_NIMBLE_SM_SC_LVL (CONFIG_BT_NIMBLE_SM_LVL)
CONFIG_BT_NIMBLE_TASK_STACK_SIZE (CONFIG_BT_NIMBLE_HOST_TASK_STACK_SIZE)
CONFIG_CLASSIC_BT_ENABLED (CONFIG_BT_CLASSIC_ENABLED)
- CONFIG_CONSOLE_UART (CONFIG_ESP_CONSOLE_UART)
CONFIG_CONSOLE_UART_DEFAULT
CONFIG_CONSOLE_UART_CUSTOM
CONFIG_CONSOLE_UART_NONE, CONFIG_ESP_CONSOLE_UART_NONE
CONFIG_CONSOLE_UART_BAUDRATE (CONFIG_ESP_CONSOLE_UART_BAUDRATE)
- CONFIG_CONSOLE_UART_NUM (CONFIG_ESP_CONSOLE_UART_NUM)
CONFIG_CONSOLE_UART_CUSTOM_NUM_0
CONFIG_CONSOLE_UART_CUSTOM_NUM_1
CONFIG_CONSOLE_UART_RX_GPIO (CONFIG_ESP_CONSOLE_UART_RX_GPIO)
CONFIG_CONSOLE_UART_TX_GPIO (CONFIG_ESP_CONSOLE_UART_TX_GPIO)
CONFIG_CXX_EXCEPTIONS (CONFIG_COMPILER_CXX_EXCEPTIONS)
CONFIG_CXX_EXCEPTIONS_EMG_POOL_SIZE (CONFIG_COMPILER_CXX_EXCEPTIONS_EMG_POOL_SIZE)
CONFIG_EFUSE_SECURE_VERSION_EMULATE (CONFIG_BOOTLOADER_EFUSE_SECURE_VERSION_EMULATE)
CONFIG_ENABLE_STATIC_TASK_CLEAN_UP_HOOK (CONFIG_FREERTOS_TASK_PRE_DELETION_HOOK)
- CONFIG_ESP32_CORE_DUMP_DECODE (CONFIG_ESP_COREDUMP_DECODE)
CONFIG_ESP32_CORE_DUMP_DECODE_INFO
CONFIG_ESP32_CORE_DUMP_DECODE_DISABLE
CONFIG_ESP32_CORE_DUMP_MAX_TASKS_NUM (CONFIG_ESP_COREDUMP_MAX_TASKS_NUM)
CONFIG_ESP32_CORE_DUMP_STACK_SIZE (CONFIG_ESP_COREDUMP_STACK_SIZE)
CONFIG_ESP32_CORE_DUMP_UART_DELAY (CONFIG_ESP_COREDUMP_UART_DELAY)
CONFIG_ESP32_DEBUG_STUBS_ENABLE (CONFIG_ESP_DEBUG_STUBS_ENABLE)
CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE (CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE)
CONFIG_ESP32_PHY_DEFAULT_INIT_IF_INVALID (CONFIG_ESP_PHY_DEFAULT_INIT_IF_INVALID)
CONFIG_ESP32_PHY_INIT_DATA_ERROR (CONFIG_ESP_PHY_INIT_DATA_ERROR)
CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION (CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION)
CONFIG_ESP32_PHY_MAC_BB_PD (CONFIG_ESP_PHY_MAC_BB_PD)
CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER (CONFIG_ESP_PHY_MAX_WIFI_TX_POWER)
CONFIG_ESP32_PTHREAD_STACK_MIN (CONFIG_PTHREAD_STACK_MIN)
CONFIG_ESP32_PTHREAD_TASK_NAME_DEFAULT (CONFIG_PTHREAD_TASK_NAME_DEFAULT)
CONFIG_ESP32_PTHREAD_TASK_PRIO_DEFAULT (CONFIG_PTHREAD_TASK_PRIO_DEFAULT)
CONFIG_ESP32_PTHREAD_TASK_STACK_SIZE_DEFAULT (CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT)
CONFIG_ESP32_REDUCE_PHY_TX_POWER (CONFIG_ESP_PHY_REDUCE_TX_POWER)
CONFIG_ESP32_RTC_XTAL_BOOTSTRAP_CYCLES (CONFIG_ESP_SYSTEM_RTC_EXT_XTAL_BOOTSTRAP_CYCLES)
CONFIG_ESP32_SUPPORT_MULTIPLE_PHY_INIT_DATA_BIN (CONFIG_ESP_PHY_MULTIPLE_INIT_DATA_BIN)
CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED (CONFIG_ESP_WIFI_AMPDU_RX_ENABLED)
CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED (CONFIG_ESP_WIFI_AMPDU_TX_ENABLED)
CONFIG_ESP32_WIFI_AMSDU_TX_ENABLED (CONFIG_ESP_WIFI_AMSDU_TX_ENABLED)
CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM (CONFIG_ESP_WIFI_CACHE_TX_BUFFER_NUM)
CONFIG_ESP32_WIFI_CSI_ENABLED (CONFIG_ESP_WIFI_CSI_ENABLED)
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM (CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM)
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM (CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER_NUM)
CONFIG_ESP32_WIFI_ENABLE_WPA3_OWE_STA (CONFIG_ESP_WIFI_ENABLE_WPA3_OWE_STA)
CONFIG_ESP32_WIFI_ENABLE_WPA3_SAE (CONFIG_ESP_WIFI_ENABLE_WPA3_SAE)
CONFIG_ESP32_WIFI_IRAM_OPT (CONFIG_ESP_WIFI_IRAM_OPT)
CONFIG_ESP32_WIFI_MGMT_SBUF_NUM (CONFIG_ESP_WIFI_MGMT_SBUF_NUM)
CONFIG_ESP32_WIFI_NVS_ENABLED (CONFIG_ESP_WIFI_NVS_ENABLED)
CONFIG_ESP32_WIFI_RX_BA_WIN (CONFIG_ESP_WIFI_RX_BA_WIN)
CONFIG_ESP32_WIFI_RX_IRAM_OPT (CONFIG_ESP_WIFI_RX_IRAM_OPT)
CONFIG_ESP32_WIFI_SOFTAP_BEACON_MAX_LEN (CONFIG_ESP_WIFI_SOFTAP_BEACON_MAX_LEN)
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM (CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM)
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER_NUM (CONFIG_ESP_WIFI_STATIC_TX_BUFFER_NUM)
CONFIG_ESP32_WIFI_SW_COEXIST_ENABLE (CONFIG_ESP_COEX_SW_COEXIST_ENABLE)
CONFIG_ESP32_WIFI_TX_BA_WIN (CONFIG_ESP_WIFI_TX_BA_WIN)
- CONFIG_ESP32_WIFI_TX_BUFFER (CONFIG_ESP_WIFI_TX_BUFFER)
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER
CONFIG_ESP_GRATUITOUS_ARP (CONFIG_LWIP_ESP_GRATUITOUS_ARP)
CONFIG_ESP_SYSTEM_MEMPROT_FEATURE (CONFIG_ESP_SYSTEM_MEMPROT)
CONFIG_ESP_SYSTEM_MEMPROT_FEATURE_VIA_TEE (CONFIG_ESP_SYSTEM_MEMPROT)
CONFIG_ESP_SYSTEM_PMP_IDRAM_SPLIT (CONFIG_ESP_SYSTEM_MEMPROT)
CONFIG_ESP_SYSTEM_PM_POWER_DOWN_CPU (CONFIG_PM_POWER_DOWN_CPU_IN_LIGHT_SLEEP)
CONFIG_ESP_TASK_WDT (CONFIG_ESP_TASK_WDT_INIT)
CONFIG_ESP_WIFI_EXTERNAL_COEXIST_ENABLE (CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE)
CONFIG_ESP_WIFI_NAN_ENABLE (CONFIG_ESP_WIFI_NAN_SYNC_ENABLE)
CONFIG_ESP_WIFI_NETWORK_ASSISTED_ROAMING_IP_RENEW_SKIP (CONFIG_ESP_WIFI_ROAMING_IP_RENEW_SKIP)
CONFIG_ESP_WIFI_SW_COEXIST_ENABLE (CONFIG_ESP_COEX_SW_COEXIST_ENABLE)
CONFIG_EVENT_LOOP_PROFILING (CONFIG_ESP_EVENT_LOOP_PROFILING)
CONFIG_EXTERNAL_COEX_ENABLE (CONFIG_ESP_COEX_EXTERNAL_COEXIST_ENABLE)
CONFIG_FLASH_ENCRYPTION_ENABLED (CONFIG_SECURE_FLASH_ENC_ENABLED)
CONFIG_FLASH_ENCRYPTION_UART_BOOTLOADER_ALLOW_ENCRYPT (CONFIG_SECURE_FLASH_UART_BOOTLOADER_ALLOW_ENC)
- CONFIG_GAP_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_GAP_TRACE_LEVEL)
CONFIG_GAP_TRACE_LEVEL_NONE
CONFIG_GAP_TRACE_LEVEL_ERROR
CONFIG_GAP_TRACE_LEVEL_WARNING
CONFIG_GAP_TRACE_LEVEL_API
CONFIG_GAP_TRACE_LEVEL_EVENT
CONFIG_GAP_TRACE_LEVEL_DEBUG
CONFIG_GAP_TRACE_LEVEL_VERBOSE
CONFIG_GARP_TMR_INTERVAL (CONFIG_LWIP_GARP_TMR_INTERVAL)
CONFIG_GATTC_CACHE_NVS_FLASH (CONFIG_BT_GATTC_CACHE_NVS_FLASH)
CONFIG_GATTC_ENABLE (CONFIG_BT_GATTC_ENABLE)
CONFIG_GATTS_ENABLE (CONFIG_BT_GATTS_ENABLE)
- CONFIG_GATTS_SEND_SERVICE_CHANGE_MODE (CONFIG_BT_GATTS_SEND_SERVICE_CHANGE_MODE)
CONFIG_GATTS_SEND_SERVICE_CHANGE_MANUAL
CONFIG_GATTS_SEND_SERVICE_CHANGE_AUTO
- CONFIG_GATT_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_GATT_TRACE_LEVEL)
CONFIG_GATT_TRACE_LEVEL_NONE
CONFIG_GATT_TRACE_LEVEL_ERROR
CONFIG_GATT_TRACE_LEVEL_WARNING
CONFIG_GATT_TRACE_LEVEL_API
CONFIG_GATT_TRACE_LEVEL_EVENT
CONFIG_GATT_TRACE_LEVEL_DEBUG
CONFIG_GATT_TRACE_LEVEL_VERBOSE
CONFIG_GDBSTUB_MAX_TASKS (CONFIG_ESP_GDBSTUB_MAX_TASKS)
CONFIG_GDBSTUB_SUPPORT_TASKS (CONFIG_ESP_GDBSTUB_SUPPORT_TASKS)
CONFIG_GPTIMER_ISR_IRAM_SAFE (CONFIG_GPTIMER_ISR_CACHE_SAFE)
- CONFIG_HCI_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_HCI_TRACE_LEVEL)
CONFIG_HCI_TRACE_LEVEL_NONE
CONFIG_HCI_TRACE_LEVEL_ERROR
CONFIG_HCI_TRACE_LEVEL_WARNING
CONFIG_HCI_TRACE_LEVEL_API
CONFIG_HCI_TRACE_LEVEL_EVENT
CONFIG_HCI_TRACE_LEVEL_DEBUG
CONFIG_HCI_TRACE_LEVEL_VERBOSE
CONFIG_HFP_AG_ENABLE (CONFIG_BT_HFP_AG_ENABLE)
- CONFIG_HFP_AUDIO_DATA_PATH (CONFIG_BT_HFP_AUDIO_DATA_PATH)
CONFIG_HFP_AUDIO_DATA_PATH_PCM
CONFIG_HFP_AUDIO_DATA_PATH_HCI
CONFIG_HFP_CLIENT_ENABLE (CONFIG_BT_HFP_CLIENT_ENABLE)
CONFIG_HFP_ENABLE (CONFIG_BT_HFP_ENABLE)
- CONFIG_HID_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_HID_TRACE_LEVEL)
CONFIG_HID_TRACE_LEVEL_NONE
CONFIG_HID_TRACE_LEVEL_ERROR
CONFIG_HID_TRACE_LEVEL_WARNING
CONFIG_HID_TRACE_LEVEL_API
CONFIG_HID_TRACE_LEVEL_EVENT
CONFIG_HID_TRACE_LEVEL_DEBUG
CONFIG_HID_TRACE_LEVEL_VERBOSE
CONFIG_INT_WDT (CONFIG_ESP_INT_WDT)
CONFIG_INT_WDT_TIMEOUT_MS (CONFIG_ESP_INT_WDT_TIMEOUT_MS)
CONFIG_IPC_TASK_STACK_SIZE (CONFIG_ESP_IPC_TASK_STACK_SIZE)
- CONFIG_L2CAP_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_L2CAP_TRACE_LEVEL)
CONFIG_L2CAP_TRACE_LEVEL_NONE
CONFIG_L2CAP_TRACE_LEVEL_ERROR
CONFIG_L2CAP_TRACE_LEVEL_WARNING
CONFIG_L2CAP_TRACE_LEVEL_API
CONFIG_L2CAP_TRACE_LEVEL_EVENT
CONFIG_L2CAP_TRACE_LEVEL_DEBUG
CONFIG_L2CAP_TRACE_LEVEL_VERBOSE
CONFIG_L2_TO_L3_COPY (CONFIG_LWIP_L2_TO_L3_COPY)
- CONFIG_LOG_BOOTLOADER_LEVEL (CONFIG_BOOTLOADER_LOG_LEVEL)
CONFIG_LOG_BOOTLOADER_LEVEL_NONE
CONFIG_LOG_BOOTLOADER_LEVEL_ERROR
CONFIG_LOG_BOOTLOADER_LEVEL_WARN
CONFIG_LOG_BOOTLOADER_LEVEL_INFO
CONFIG_LOG_BOOTLOADER_LEVEL_DEBUG
CONFIG_LOG_BOOTLOADER_LEVEL_VERBOSE
CONFIG_MAC_BB_PD (CONFIG_ESP_PHY_MAC_BB_PD)
CONFIG_MAIN_TASK_STACK_SIZE (CONFIG_ESP_MAIN_TASK_STACK_SIZE)
CONFIG_MBEDTLS_ATCA_HW_ECDSA_SIGN (CONFIG_MBEDTLS_SECURE_ELEMENT_DRIVER_ENABLED)
CONFIG_MBEDTLS_ATCA_HW_ECDSA_VERIFY (CONFIG_MBEDTLS_SECURE_ELEMENT_DRIVER_ENABLED)
- CONFIG_MCA_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_MCA_TRACE_LEVEL)
CONFIG_MCA_TRACE_LEVEL_NONE
CONFIG_MCA_TRACE_LEVEL_ERROR
CONFIG_MCA_TRACE_LEVEL_WARNING
CONFIG_MCA_TRACE_LEVEL_API
CONFIG_MCA_TRACE_LEVEL_EVENT
CONFIG_MCA_TRACE_LEVEL_DEBUG
CONFIG_MCA_TRACE_LEVEL_VERBOSE
CONFIG_NEWLIB_NANO_FORMAT (CONFIG_LIBC_NEWLIB_NANO_FORMAT)
- CONFIG_NEWLIB_STDIN_LINE_ENDING (CONFIG_LIBC_STDIN_LINE_ENDING)
CONFIG_NEWLIB_STDIN_LINE_ENDING_CRLF
CONFIG_NEWLIB_STDIN_LINE_ENDING_LF
CONFIG_NEWLIB_STDIN_LINE_ENDING_CR
- CONFIG_NEWLIB_STDOUT_LINE_ENDING (CONFIG_LIBC_STDOUT_LINE_ENDING)
CONFIG_NEWLIB_STDOUT_LINE_ENDING_CRLF
CONFIG_NEWLIB_STDOUT_LINE_ENDING_LF
CONFIG_NEWLIB_STDOUT_LINE_ENDING_CR
- CONFIG_NEWLIB_TIME_SYSCALL (CONFIG_LIBC_TIME_SYSCALL)
CONFIG_NEWLIB_TIME_SYSCALL_USE_RTC_HRT
CONFIG_NEWLIB_TIME_SYSCALL_USE_RTC
CONFIG_NEWLIB_TIME_SYSCALL_USE_HRT
CONFIG_NEWLIB_TIME_SYSCALL_USE_NONE
CONFIG_NIMBLE_ATT_PREFERRED_MTU (CONFIG_BT_NIMBLE_ATT_PREFERRED_MTU)
CONFIG_NIMBLE_CRYPTO_STACK_MBEDTLS (CONFIG_BT_NIMBLE_CRYPTO_STACK_MBEDTLS)
CONFIG_NIMBLE_DEBUG (CONFIG_BT_NIMBLE_DEBUG)
CONFIG_NIMBLE_GAP_DEVICE_NAME_MAX_LEN (CONFIG_BT_NIMBLE_GAP_DEVICE_NAME_MAX_LEN)
CONFIG_NIMBLE_L2CAP_COC_MAX_NUM (CONFIG_BT_NIMBLE_L2CAP_COC_MAX_NUM)
CONFIG_NIMBLE_MAX_BONDS (CONFIG_BT_NIMBLE_MAX_BONDS)
CONFIG_NIMBLE_MAX_CCCDS (CONFIG_BT_NIMBLE_MAX_CCCDS)
CONFIG_NIMBLE_MAX_CONNECTIONS (CONFIG_BT_NIMBLE_MAX_CONNECTIONS)
- CONFIG_NIMBLE_MEM_ALLOC_MODE (CONFIG_BT_NIMBLE_MEM_ALLOC_MODE)
CONFIG_NIMBLE_MEM_ALLOC_MODE_INTERNAL
CONFIG_NIMBLE_MEM_ALLOC_MODE_EXTERNAL
CONFIG_NIMBLE_MEM_ALLOC_MODE_DEFAULT
CONFIG_NIMBLE_MESH (CONFIG_BT_NIMBLE_MESH)
CONFIG_NIMBLE_MESH_DEVICE_NAME (CONFIG_BT_NIMBLE_MESH_DEVICE_NAME)
CONFIG_NIMBLE_MESH_FRIEND (CONFIG_BT_NIMBLE_MESH_FRIEND)
CONFIG_NIMBLE_MESH_GATT_PROXY (CONFIG_BT_NIMBLE_MESH_GATT_PROXY)
CONFIG_NIMBLE_MESH_LOW_POWER (CONFIG_BT_NIMBLE_MESH_LOW_POWER)
CONFIG_NIMBLE_MESH_PB_ADV (CONFIG_BT_NIMBLE_MESH_PB_ADV)
CONFIG_NIMBLE_MESH_PB_GATT (CONFIG_BT_NIMBLE_MESH_PB_GATT)
CONFIG_NIMBLE_MESH_PROV (CONFIG_BT_NIMBLE_MESH_PROV)
CONFIG_NIMBLE_MESH_PROXY (CONFIG_BT_NIMBLE_MESH_PROXY)
CONFIG_NIMBLE_MESH_RELAY (CONFIG_BT_NIMBLE_MESH_RELAY)
CONFIG_NIMBLE_NVS_PERSIST (CONFIG_BT_NIMBLE_NVS_PERSIST)
CONFIG_NIMBLE_ROLE_BROADCASTER (CONFIG_BT_NIMBLE_ROLE_BROADCASTER)
CONFIG_NIMBLE_ROLE_CENTRAL (CONFIG_BT_NIMBLE_ROLE_CENTRAL)
CONFIG_NIMBLE_ROLE_OBSERVER (CONFIG_BT_NIMBLE_ROLE_OBSERVER)
CONFIG_NIMBLE_ROLE_PERIPHERAL (CONFIG_BT_NIMBLE_ROLE_PERIPHERAL)
CONFIG_NIMBLE_RPA_TIMEOUT (CONFIG_BT_NIMBLE_RPA_TIMEOUT)
CONFIG_NIMBLE_SM_LEGACY (CONFIG_BT_NIMBLE_SM_LEGACY)
CONFIG_NIMBLE_SM_SC (CONFIG_BT_NIMBLE_SM_SC)
CONFIG_NIMBLE_SM_SC_DEBUG_KEYS (CONFIG_BT_NIMBLE_SM_SC_DEBUG_KEYS)
CONFIG_NIMBLE_SVC_GAP_APPEARANCE (CONFIG_BT_NIMBLE_SVC_GAP_APPEARANCE)
CONFIG_NIMBLE_SVC_GAP_DEVICE_NAME (CONFIG_BT_NIMBLE_SVC_GAP_DEVICE_NAME)
CONFIG_NIMBLE_TASK_STACK_SIZE (CONFIG_BT_NIMBLE_HOST_TASK_STACK_SIZE)
CONFIG_NO_BLOBS (CONFIG_APP_NO_BLOBS)
- CONFIG_OPTIMIZATION_ASSERTION_LEVEL (CONFIG_COMPILER_OPTIMIZATION_ASSERTION_LEVEL)
CONFIG_OPTIMIZATION_ASSERTIONS_ENABLED
CONFIG_OPTIMIZATION_ASSERTIONS_SILENT
CONFIG_OPTIMIZATION_ASSERTIONS_DISABLED
- CONFIG_OPTIMIZATION_COMPILER (CONFIG_COMPILER_OPTIMIZATION)
CONFIG_OPTIMIZATION_LEVEL_DEBUG, CONFIG_COMPILER_OPTIMIZATION_LEVEL_DEBUG, CONFIG_COMPILER_OPTIMIZATION_DEFAULT
CONFIG_OPTIMIZATION_LEVEL_RELEASE, CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE
- CONFIG_OSI_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_OSI_TRACE_LEVEL)
CONFIG_OSI_TRACE_LEVEL_NONE
CONFIG_OSI_TRACE_LEVEL_ERROR
CONFIG_OSI_TRACE_LEVEL_WARNING
CONFIG_OSI_TRACE_LEVEL_API
CONFIG_OSI_TRACE_LEVEL_EVENT
CONFIG_OSI_TRACE_LEVEL_DEBUG
CONFIG_OSI_TRACE_LEVEL_VERBOSE
CONFIG_OTA_ALLOW_HTTP (CONFIG_ESP_HTTPS_OTA_ALLOW_HTTP)
- CONFIG_PAN_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_PAN_TRACE_LEVEL)
CONFIG_PAN_TRACE_LEVEL_NONE
CONFIG_PAN_TRACE_LEVEL_ERROR
CONFIG_PAN_TRACE_LEVEL_WARNING
CONFIG_PAN_TRACE_LEVEL_API
CONFIG_PAN_TRACE_LEVEL_EVENT
CONFIG_PAN_TRACE_LEVEL_DEBUG
CONFIG_PAN_TRACE_LEVEL_VERBOSE
CONFIG_PERIPH_CTRL_FUNC_IN_IRAM (CONFIG_ESP_PERIPH_CTRL_FUNC_IN_IRAM)
CONFIG_POST_EVENTS_FROM_IRAM_ISR (CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR)
CONFIG_POST_EVENTS_FROM_ISR (CONFIG_ESP_EVENT_POST_FROM_ISR)
CONFIG_PPP_CHAP_SUPPORT (CONFIG_LWIP_PPP_CHAP_SUPPORT)
CONFIG_PPP_DEBUG_ON (CONFIG_LWIP_PPP_DEBUG_ON)
CONFIG_PPP_MPPE_SUPPORT (CONFIG_LWIP_PPP_MPPE_SUPPORT)
CONFIG_PPP_MSCHAP_SUPPORT (CONFIG_LWIP_PPP_MSCHAP_SUPPORT)
CONFIG_PPP_NOTIFY_PHASE_SUPPORT (CONFIG_LWIP_PPP_NOTIFY_PHASE_SUPPORT)
CONFIG_PPP_PAP_SUPPORT (CONFIG_LWIP_PPP_PAP_SUPPORT)
CONFIG_PPP_SUPPORT (CONFIG_LWIP_PPP_SUPPORT)
CONFIG_REDUCE_PHY_TX_POWER (CONFIG_ESP_PHY_REDUCE_TX_POWER)
- CONFIG_RFCOMM_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_RFCOMM_TRACE_LEVEL)
CONFIG_RFCOMM_TRACE_LEVEL_NONE
CONFIG_RFCOMM_TRACE_LEVEL_ERROR
CONFIG_RFCOMM_TRACE_LEVEL_WARNING
CONFIG_RFCOMM_TRACE_LEVEL_API
CONFIG_RFCOMM_TRACE_LEVEL_EVENT
CONFIG_RFCOMM_TRACE_LEVEL_DEBUG
CONFIG_RFCOMM_TRACE_LEVEL_VERBOSE
CONFIG_SECURE_SIGNED_DATA_PARTITION (CONFIG_APP_UPDATE_SECURE_SIGNED_DATA_PARTITION)
CONFIG_SEMIHOSTFS_MAX_MOUNT_POINTS (CONFIG_VFS_SEMIHOSTFS_MAX_MOUNT_POINTS)
- CONFIG_SMP_INITIAL_TRACE_LEVEL (CONFIG_BT_LOG_SMP_TRACE_LEVEL)
CONFIG_SMP_TRACE_LEVEL_NONE
CONFIG_SMP_TRACE_LEVEL_ERROR
CONFIG_SMP_TRACE_LEVEL_WARNING
CONFIG_SMP_TRACE_LEVEL_API
CONFIG_SMP_TRACE_LEVEL_EVENT
CONFIG_SMP_TRACE_LEVEL_DEBUG
CONFIG_SMP_TRACE_LEVEL_VERBOSE
CONFIG_SMP_SLAVE_CON_PARAMS_UPD_ENABLE (CONFIG_BT_SMP_SLAVE_CON_PARAMS_UPD_ENABLE)
CONFIG_SPIRAM_ALLOW_STACK_EXTERNAL_MEMORY (CONFIG_FREERTOS_TASK_CREATE_ALLOW_EXT_MEM)
CONFIG_SPI_FLASH_32BIT_ADDR_ENABLE (CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH)
CONFIG_SPI_FLASH_QUAD_32BIT_ADDR_ENABLE (CONFIG_BOOTLOADER_CACHE_32BIT_ADDR_QUAD_FLASH)
- CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS (CONFIG_SPI_FLASH_DANGEROUS_WRITE)
CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ABORTS
CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_FAILS
CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ALLOWED
- CONFIG_STACK_CHECK_MODE (CONFIG_COMPILER_STACK_CHECK_MODE)
CONFIG_STACK_CHECK_NONE
CONFIG_STACK_CHECK_NORM
CONFIG_STACK_CHECK_STRONG
CONFIG_STACK_CHECK_ALL
CONFIG_SUPPORT_TERMIOS (CONFIG_VFS_SUPPORT_TERMIOS)
CONFIG_SUPPRESS_SELECT_DEBUG_OUTPUT (CONFIG_VFS_SUPPRESS_SELECT_DEBUG_OUTPUT)
CONFIG_SW_COEXIST_ENABLE (CONFIG_ESP_COEX_SW_COEXIST_ENABLE)
CONFIG_SYSTEM_EVENT_QUEUE_SIZE (CONFIG_ESP_SYSTEM_EVENT_QUEUE_SIZE)
CONFIG_SYSTEM_EVENT_TASK_STACK_SIZE (CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE)
CONFIG_TASK_WDT (CONFIG_ESP_TASK_WDT_INIT)
CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU0 (CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0)
CONFIG_TASK_WDT_PANIC (CONFIG_ESP_TASK_WDT_PANIC)
CONFIG_TASK_WDT_TIMEOUT_S (CONFIG_ESP_TASK_WDT_TIMEOUT_S)
CONFIG_TCPIP_RECVMBOX_SIZE (CONFIG_LWIP_TCPIP_RECVMBOX_SIZE)
- CONFIG_TCPIP_TASK_AFFINITY (CONFIG_LWIP_TCPIP_TASK_AFFINITY)
CONFIG_TCPIP_TASK_AFFINITY_NO_AFFINITY
CONFIG_TCPIP_TASK_AFFINITY_CPU0
CONFIG_TCPIP_TASK_AFFINITY_CPU1
CONFIG_TCPIP_TASK_STACK_SIZE (CONFIG_LWIP_TCPIP_TASK_STACK_SIZE)
CONFIG_TCP_MAXRTX (CONFIG_LWIP_TCP_MAXRTX)
CONFIG_TCP_MSL (CONFIG_LWIP_TCP_MSL)
CONFIG_TCP_MSS (CONFIG_LWIP_TCP_MSS)
- CONFIG_TCP_OVERSIZE (CONFIG_LWIP_TCP_OVERSIZE)
CONFIG_TCP_OVERSIZE_MSS
CONFIG_TCP_OVERSIZE_QUARTER_MSS
CONFIG_TCP_OVERSIZE_DISABLE
CONFIG_TCP_QUEUE_OOSEQ (CONFIG_LWIP_TCP_QUEUE_OOSEQ)
CONFIG_TCP_RECVMBOX_SIZE (CONFIG_LWIP_TCP_RECVMBOX_SIZE)
CONFIG_TCP_SND_BUF_DEFAULT (CONFIG_LWIP_TCP_SND_BUF_DEFAULT)
CONFIG_TCP_SYNMAXRTX (CONFIG_LWIP_TCP_SYNMAXRTX)
CONFIG_TCP_WND_DEFAULT (CONFIG_LWIP_TCP_WND_DEFAULT)
CONFIG_TIMER_QUEUE_LENGTH (CONFIG_FREERTOS_TIMER_QUEUE_LENGTH)
CONFIG_TIMER_TASK_PRIORITY (CONFIG_FREERTOS_TIMER_TASK_PRIORITY)
CONFIG_TIMER_TASK_STACK_DEPTH (CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH)
CONFIG_TIMER_TASK_STACK_SIZE (CONFIG_ESP_TIMER_TASK_STACK_SIZE)
CONFIG_UDP_RECVMBOX_SIZE (CONFIG_LWIP_UDP_RECVMBOX_SIZE)
CONFIG_WARN_WRITE_STRINGS (CONFIG_COMPILER_WARN_WRITE_STRINGS)
CONFIG_WPA_11KV_SUPPORT (CONFIG_ESP_WIFI_11KV_SUPPORT)
CONFIG_WPA_11R_SUPPORT (CONFIG_ESP_WIFI_11R_SUPPORT)
CONFIG_WPA_DEBUG_PRINT (CONFIG_ESP_WIFI_DEBUG_PRINT)
CONFIG_WPA_DPP_SUPPORT (CONFIG_ESP_WIFI_DPP_SUPPORT)
CONFIG_WPA_MBEDTLS_CRYPTO (CONFIG_ESP_WIFI_MBEDTLS_CRYPTO)
CONFIG_WPA_MBEDTLS_TLS_CLIENT (CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT)
CONFIG_WPA_MBO_SUPPORT (CONFIG_ESP_WIFI_MBO_SUPPORT)
CONFIG_WPA_SCAN_CACHE (CONFIG_ESP_WIFI_SCAN_CACHE)
CONFIG_WPA_SUITE_B_192 (CONFIG_ESP_WIFI_SUITE_B_192)
CONFIG_WPA_WAPI_PSK (CONFIG_ESP_WIFI_WAPI_PSK)
CONFIG_WPA_WPS_SOFTAP_REGISTRAR (CONFIG_ESP_WIFI_WPS_SOFTAP_REGISTRAR)
CONFIG_WPA_WPS_STRICT (CONFIG_ESP_WIFI_WPS_STRICT)