menu "OpenThread" config OPENTHREAD_ENABLED bool "OpenThread" default n help Select this option to enable OpenThread and show the submenu with OpenThread configuration choices. menu "Thread Version Message" depends on OPENTHREAD_ENABLED config OPENTHREAD_PACKAGE_NAME string "OpenThread package name" default "openthread-esp32" help The OpenThread package name. config OPENTHREAD_PLATFORM_INFO string "platform information" default IDF_TARGET help The OpenThread platform information. endmenu menu "Thread Console" depends on OPENTHREAD_ENABLED choice OPENTHREAD_CONSOLE_TYPE prompt "OpenThread console type" default OPENTHREAD_CONSOLE_TYPE_UART help Select OpenThread console type config OPENTHREAD_CONSOLE_TYPE_UART depends on ESP_CONSOLE_UART_DEFAULT || ESP_CONSOLE_UART_CUSTOM bool "OpenThread console type UART" config OPENTHREAD_CONSOLE_TYPE_USB_SERIAL_JTAG depends on ESP_CONSOLE_USB_SERIAL_JTAG || ESP_CONSOLE_SECONDARY_USB_SERIAL_JTAG bool "OpenThread console type USB Serial/JTAG Controller" endchoice #OPENTHREAD_CONSOLE_TYPE config OPENTHREAD_CLI bool "Enable Openthread Command-Line Interface" default y help Select this option to enable Command-Line Interface in OpenThread. endmenu menu "Thread Core Features" depends on OPENTHREAD_ENABLED menu "Thread Operational Dataset" config OPENTHREAD_NETWORK_NAME string "OpenThread network name" default "OpenThread-ESP" config OPENTHREAD_MESH_LOCAL_PREFIX string "OpenThread mesh local prefix, format
/" default "fd00:db8:a0:0::/64" help A string in the format "
/", where `
` is an IPv6 address and `` is a prefix length. For example "fd00:db8:a0:0::/64" config OPENTHREAD_NETWORK_CHANNEL int "OpenThread network channel" range 11 26 default 15 config OPENTHREAD_NETWORK_PANID hex "OpenThread network pan id" range 0 0xFFFE default 0x1234 config OPENTHREAD_NETWORK_EXTPANID string "OpenThread extended pan id" default "dead00beef00cafe" help The OpenThread network extended pan id in hex string format config OPENTHREAD_NETWORK_MASTERKEY string "OpenThread network key" default "00112233445566778899aabbccddeeff" help The OpenThread network network key in hex string format config OPENTHREAD_NETWORK_PSKC string "OpenThread pre-shared commissioner key" default "104810e2315100afd6bc9215a6bfac53" help The OpenThread pre-shared commissioner key in hex string format endmenu choice OPENTHREAD_DEVICE_TYPE prompt "Thread device type" default OPENTHREAD_FTD help OpenThread can be configured to different device types (FTD, MTD, Radio) config OPENTHREAD_FTD bool "Full Thread Device" help Select this to enable Full Thread Device which can act as router and leader in a Thread network. config OPENTHREAD_MTD bool "Minimal Thread Device" help 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. config OPENTHREAD_RADIO bool "Radio Only Device" help 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. endchoice menu "Thread Trel Radio Link" depends on EXAMPLE_CONNECT_WIFI || EXAMPLE_CONNECT_ETHERNET config OPENTHREAD_RADIO_TREL bool "Enable Thread Radio Encapsulation Link (TREL)" default n help Select this option to enable Thread Radio Encapsulation Link. config OPENTHREAD_TREL_PORT int "The port of openthread trel service" depends on OPENTHREAD_RADIO_TREL default 12390 help Configure the port number of TREL service. endmenu menu "Thread 15.4 Radio Link" choice OPENTHREAD_RADIO_TYPE prompt "Config the Thread radio type with 15.4 link" default OPENTHREAD_RADIO_NATIVE if SOC_IEEE802154_SUPPORTED default OPENTHREAD_RADIO_SPINEL_UART help Configure how OpenThread connects to the 15.4 radio config OPENTHREAD_RADIO_NATIVE bool "Native 15.4 radio" help Select this to use the native 15.4 radio. config OPENTHREAD_RADIO_SPINEL_UART select UART_ISR_IN_IRAM bool "Connect via UART" help Select this to connect to a Radio Co-Processor via UART. config OPENTHREAD_RADIO_SPINEL_SPI bool "Connect via SPI" help Select this to connect to a Radio Co-Processor via SPI. config OPENTHREAD_RADIO_154_NONE bool "Disable the Thread radio based on 15.4 link" help Select this to disable the Thread radio based on 15.4 link. endchoice endmenu menu "Thread Radio Co-Processor Feature" depends on OPENTHREAD_RADIO choice OPENTHREAD_RCP_TRANSPORT prompt "The RCP transport type" default OPENTHREAD_RCP_UART config OPENTHREAD_RCP_UART select UART_ISR_IN_IRAM bool "UART RCP" help Select this to enable UART connection to host. config OPENTHREAD_RCP_SPI bool "SPI RCP" select GPIO_CTRL_FUNC_IN_IRAM help Select this to enable SPI connection to host. endchoice config OPENTHREAD_NCP_VENDOR_HOOK bool "Enable vendor command for RCP" default y help Select this to enable OpenThread NCP vendor commands. endmenu config OPENTHREAD_BORDER_ROUTER bool "Enable Border Router" depends on OPENTHREAD_FTD default n help Select this option to enable border router features in OpenThread. config OPENTHREAD_COMMISSIONER bool "Enable Commissioner" default n help 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. menu "Commissioner Configurations" depends on OPENTHREAD_COMMISSIONER config OPENTHREAD_COMM_MAX_JOINER_ENTRIES int "The size of max commissioning joiner entries" default 2 endmenu config OPENTHREAD_JOINER bool "Enable Joiner" default n help 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. config OPENTHREAD_SRP_CLIENT bool "Enable SRP Client" default y help Select this option to enable SRP Client in OpenThread. This allows a device to register SRP services to SRP Server. menu "SRP Client Configurations" depends on OPENTHREAD_SRP_CLIENT config OPENTHREAD_SRP_CLIENT_MAX_SERVICES int "Specifies number of service entries in the SRP client service pool" default 5 help Set the max buffer size of service entries in the SRP client service pool. endmenu config OPENTHREAD_DNS_CLIENT bool "Enable DNS Client" default y help Select this option to enable DNS Client in OpenThread. config OPENTHREAD_DNS64_CLIENT bool "Enable DNS64 Client" depends on LWIP_IPV4 select LWIP_HOOK_DNS_EXTERNAL_RESOLVE_SELECT_CUSTOM default n help Select this option to acquire NAT64 address from dns servers. menu "DNS64 Client Configurations" depends on OPENTHREAD_DNS64_CLIENT config OPENTHREAD_DNS_SERVER_ADDR string "DNS server address (IPv4)" default "8.8.8.8" help Set the DNS server IPv4 address. endmenu config OPENTHREAD_LINK_METRICS bool "Enable link metrics feature" default n help Select this option to enable link metrics feature config OPENTHREAD_MACFILTER_ENABLE bool "Enable mac filter feature" default n help Select this option to enable mac filter feature config OPENTHREAD_CSL_ENABLE bool "Enable CSL feature" default n help Select this option to enable CSL feature menu "CSL Configurations" depends on OPENTHREAD_CSL_ENABLE config OPENTHREAD_CSL_ACCURACY int "The current CSL rx/tx scheduling drift, in units of ± ppm" default 1 help The current accuracy of the clock used for scheduling CSL operations config OPENTHREAD_CSL_UNCERTAIN int "The CSL Uncertainty in units of 10 us." default 1 help The fixed uncertainty of the Device for scheduling CSL Transmissions in units of 10 microseconds. config OPENTHREAD_CSL_DEBUG_ENABLE bool "Enable CSL debug" default n help Select this option to set rx on when sleep in CSL feature, only for debug endmenu config OPENTHREAD_TIME_SYNC bool "Enable the time synchronization service feature" default n help Select this option to enable time synchronization feature, the devices in the same Thread network could sync to the same network time. config OPENTHREAD_RADIO_STATS_ENABLE bool "Enable Radio Statistics feature" depends on OPENTHREAD_FTD || OPENTHREAD_MTD default n help Select this option to enable the radio statistics feature, you can use radio command to print some radio Statistics information. config OPENTHREAD_RX_ON_WHEN_IDLE bool "Enable OpenThread radio capability rx on when idle" default y if !ESP_COEX_SW_COEXIST_ENABLE default n if ESP_COEX_SW_COEXIST_ENABLE help Select this option to enable OpenThread radio capability rx on when idle. Do not support this feature when SW coexistence is enabled. config OPENTHREAD_DIAG bool "Enable diag" default y help 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. menu "Thread Memory Allocation" depends on (SPIRAM_USE_CAPS_ALLOC || SPIRAM_USE_MALLOC) config OPENTHREAD_PLATFORM_MALLOC_CAP_SPIRAM bool 'Allocate memory from PSRAM' default y help Select this option to allocate buffer from PSRAM for Thread config OPENTHREAD_PLATFORM_MSGPOOL_MANAGEMENT bool 'Allocate message pool buffer from PSRAM' default n help If enabled, the message pool is managed by platform defined logic. endmenu menu "OpenThread Stack Parameters" menu "Thread Address Query Config" config OPENTHREAD_ADDRESS_QUERY_TIMEOUT int "Timeout (in seconds) for a address notification response after sending an address query." depends on OPENTHREAD_FTD || OPENTHREAD_MTD default 3 config OPENTHREAD_ADDRESS_QUERY_RETRY_DELAY int "Initial retry delay for address query (in seconds)." depends on OPENTHREAD_FTD || OPENTHREAD_MTD default 15 config OPENTHREAD_ADDRESS_QUERY_MAX_RETRY_DELAY int "Maximum retry delay for address query (in seconds)." depends on OPENTHREAD_FTD || OPENTHREAD_MTD default 120 endmenu config OPENTHREAD_PREFERRED_CHANNEL_MASK hex "Preferred channel mask" default 0x7fff800 config OPENTHREAD_SUPPORTED_CHANNEL_MASK hex "Supported channel mask" default 0x7fff800 config OPENTHREAD_NUM_MESSAGE_BUFFERS int "The number of openthread message buffers" default 65 config OPENTHREAD_XTAL_ACCURACY int "The accuracy of the XTAL" default 130 help The device's XTAL accuracy, in ppm. config OPENTHREAD_MLE_MAX_CHILDREN int "The size of max MLE children entries" default 10 config OPENTHREAD_TMF_ADDR_CACHE_ENTRIES int "The size of max TMF address cache entries" default 20 config OPENTHREAD_UART_BUFFER_SIZE int "The uart received buffer size of openthread" default 2048 help Set the OpenThread UART buffer size. config OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT int "Maximum backoffs times before declaring a channel access failure." default 4 help The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure. endmenu endmenu menu "Thread Log" depends on OPENTHREAD_ENABLED config OPENTHREAD_LOG_LEVEL_DYNAMIC bool "Enable dynamic log level control" default y help Select this option to enable dynamic log level control for OpenThread choice OPENTHREAD_LOG_LEVEL prompt "OpenThread log verbosity" depends on !OPENTHREAD_LOG_LEVEL_DYNAMIC default OPENTHREAD_LOG_LEVEL_INFO help Select OpenThread log level. config OPENTHREAD_LOG_LEVEL_NONE bool "No logs" config OPENTHREAD_LOG_LEVEL_CRIT bool "Error logs" config OPENTHREAD_LOG_LEVEL_WARN bool "Warning logs" config OPENTHREAD_LOG_LEVEL_NOTE bool "Notice logs" config OPENTHREAD_LOG_LEVEL_INFO bool "Info logs" config OPENTHREAD_LOG_LEVEL_DEBG bool "Debug logs" endchoice #OPENTHREAD_LOG_LEVEL config OPENTHREAD_LOG_LEVEL int depends on !OPENTHREAD_LOG_LEVEL_DYNAMIC default 0 if OPENTHREAD_LOG_LEVEL_NONE default 1 if OPENTHREAD_LOG_LEVEL_CRIT default 2 if OPENTHREAD_LOG_LEVEL_WARN default 3 if OPENTHREAD_LOG_LEVEL_NOTE default 4 if OPENTHREAD_LOG_LEVEL_INFO default 5 if OPENTHREAD_LOG_LEVEL_DEBG endmenu menu "Thread Extensioned Features" depends on OPENTHREAD_ENABLED config OPENTHREAD_HEADER_CUSTOM bool "Use a header file defined by customer" default n help 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. menu "OpenThread Custom Header Config" depends on OPENTHREAD_HEADER_CUSTOM config OPENTHREAD_CUSTOM_HEADER_PATH string "Path of custom header file" depends on OPENTHREAD_HEADER_CUSTOM default "" help Please use relative paths with respect to the project folder. config OPENTHREAD_CUSTOM_HEADER_FILE_NAME string "Name of custom header file" depends on OPENTHREAD_HEADER_CUSTOM default "esp_ot_custom_config.h" help Name of custom header file. endmenu endmenu menu "OpenThread Spinel" config OPENTHREAD_SPINEL_ONLY bool "Enable OpenThread External Radio Spinel feature" default n help Select this option to enable the OpenThread Radio Spinel for external protocol stack, such as Zigbee. config OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE int "The size of openthread spinel rx frame buffer" depends on OPENTHREAD_ENABLED || OPENTHREAD_SPINEL_ONLY default 1024 if OPENTHREAD_MTD || OPENTHREAD_RADIO default 2048 if OPENTHREAD_FTD || OPENTHREAD_SPINEL_ONLY config OPENTHREAD_SPINEL_MAC_MAX_CSMA_BACKOFFS_DIRECT int "Maximum backoffs times before declaring a channel access failure." depends on OPENTHREAD_SPINEL_ONLY default 4 help The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure. endmenu endmenu