mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-30 02:37:19 +02:00
Merge branch 'backport/openthread_related_feature_v52_20241125' into 'release/v5.2'
Backport openthread related features to 5.2 See merge request espressif/esp-idf!35173
This commit is contained in:
@ -23,7 +23,7 @@ if(CONFIG_OPENTHREAD_ENABLED)
|
|||||||
"openthread/src/ncp"
|
"openthread/src/ncp"
|
||||||
"private_include")
|
"private_include")
|
||||||
|
|
||||||
set(src_dirs
|
set(src_dirs
|
||||||
"src"
|
"src"
|
||||||
"src/port"
|
"src/port"
|
||||||
"openthread/examples/platforms/utils"
|
"openthread/examples/platforms/utils"
|
||||||
@ -244,6 +244,12 @@ elseif(CONFIG_OPENTHREAD_SPINEL_ONLY)
|
|||||||
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(CONFIG_OPENTHREAD_HEADER_CUSTOM)
|
||||||
|
idf_build_get_property(project_dir PROJECT_DIR)
|
||||||
|
list(APPEND private_include_dirs
|
||||||
|
"${project_dir}/${CONFIG_OPENTHREAD_CUSTOM_HEADER_PATH}")
|
||||||
|
endif()
|
||||||
|
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND git rev-parse --short HEAD
|
COMMAND git rev-parse --short HEAD
|
||||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
@ -6,189 +6,7 @@ menu "OpenThread"
|
|||||||
help
|
help
|
||||||
Select this option to enable OpenThread and show the submenu with OpenThread configuration choices.
|
Select this option to enable OpenThread and show the submenu with OpenThread configuration choices.
|
||||||
|
|
||||||
config OPENTHREAD_LOG_LEVEL_DYNAMIC
|
menu "Thread Version Message"
|
||||||
bool "Enable dynamic log level control"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
|
||||||
default y
|
|
||||||
help
|
|
||||||
Select this option to enable dynamic log level control for OpenThread
|
|
||||||
|
|
||||||
choice OPENTHREAD_CONSOLE_TYPE
|
|
||||||
prompt "OpenThread console type"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
|
||||||
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
|
|
||||||
|
|
||||||
choice OPENTHREAD_LOG_LEVEL
|
|
||||||
prompt "OpenThread log verbosity"
|
|
||||||
depends on OPENTHREAD_ENABLED && !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
|
|
||||||
|
|
||||||
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 <address>/<plen>"
|
|
||||||
default "fd00:db8:a0:0::/64"
|
|
||||||
help
|
|
||||||
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"
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
config OPENTHREAD_LOG_LEVEL
|
|
||||||
int
|
|
||||||
depends on OPENTHREAD_ENABLED && !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
|
|
||||||
|
|
||||||
choice OPENTHREAD_RADIO_TYPE
|
|
||||||
prompt "Config the Thread radio type with 15.4 link"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
|
||||||
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
|
|
||||||
|
|
||||||
config OPENTHREAD_RADIO_TREL
|
|
||||||
bool "Enable Thread Radio Encapsulation Link (TREL)"
|
|
||||||
depends on EXAMPLE_CONNECT_WIFI || EXAMPLE_CONNECT_ETHERNET
|
|
||||||
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.
|
|
||||||
|
|
||||||
choice OPENTHREAD_DEVICE_TYPE
|
|
||||||
prompt "Config the Thread device type"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
|
||||||
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
|
|
||||||
|
|
||||||
choice OPENTHREAD_RCP_TRANSPORT
|
|
||||||
prompt "The RCP transport type"
|
|
||||||
depends on OPENTHREAD_RADIO
|
|
||||||
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
|
|
||||||
|
|
||||||
menu "OpenThread version message"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
depends on OPENTHREAD_ENABLED
|
||||||
|
|
||||||
config OPENTHREAD_PACKAGE_NAME
|
config OPENTHREAD_PACKAGE_NAME
|
||||||
@ -204,246 +22,472 @@ menu "OpenThread"
|
|||||||
The OpenThread platform information.
|
The OpenThread platform information.
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
config OPENTHREAD_NCP_VENDOR_HOOK
|
menu "Thread Console"
|
||||||
bool "Enable vendor command for RCP"
|
|
||||||
depends on OPENTHREAD_RADIO
|
|
||||||
default y
|
|
||||||
help
|
|
||||||
Select this to enable OpenThread NCP vendor commands.
|
|
||||||
|
|
||||||
config OPENTHREAD_CLI
|
|
||||||
bool "Enable Openthread Command-Line Interface"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
depends on OPENTHREAD_ENABLED
|
||||||
default y
|
|
||||||
help
|
|
||||||
Select this option to enable Command-Line Interface in OpenThread.
|
|
||||||
|
|
||||||
config OPENTHREAD_DIAG
|
choice OPENTHREAD_CONSOLE_TYPE
|
||||||
bool "Enable diag"
|
prompt "OpenThread console type"
|
||||||
depends on OPENTHREAD_ENABLED
|
default OPENTHREAD_CONSOLE_TYPE_UART
|
||||||
default y
|
help
|
||||||
help
|
Select OpenThread console type
|
||||||
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.
|
|
||||||
|
|
||||||
config OPENTHREAD_COMMISSIONER
|
config OPENTHREAD_CONSOLE_TYPE_UART
|
||||||
bool "Enable Commissioner"
|
depends on ESP_CONSOLE_UART_DEFAULT || ESP_CONSOLE_UART_CUSTOM
|
||||||
depends on OPENTHREAD_ENABLED
|
bool "OpenThread console type UART"
|
||||||
default n
|
config OPENTHREAD_CONSOLE_TYPE_USB_SERIAL_JTAG
|
||||||
help
|
depends on ESP_CONSOLE_USB_SERIAL_JTAG || ESP_CONSOLE_SECONDARY_USB_SERIAL_JTAG
|
||||||
Select this option to enable commissioner in OpenThread. This will enable the device to act as a
|
bool "OpenThread console type USB Serial/JTAG Controller"
|
||||||
commissioner in the Thread network. A commissioner checks the pre-shared key from a joining device with
|
endchoice #OPENTHREAD_CONSOLE_TYPE
|
||||||
the Thread commissioning protocol and shares the network parameter with the joining device upon success.
|
|
||||||
|
|
||||||
config OPENTHREAD_COMM_MAX_JOINER_ENTRIES
|
config OPENTHREAD_CLI
|
||||||
int "The size of max commissioning joiner entries"
|
bool "Enable Openthread Command-Line Interface"
|
||||||
depends on OPENTHREAD_COMMISSIONER
|
|
||||||
default 2
|
|
||||||
|
|
||||||
config OPENTHREAD_JOINER
|
|
||||||
bool "Enable Joiner"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
|
||||||
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"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
|
||||||
default y
|
|
||||||
help
|
|
||||||
Select this option to enable SRP Client in OpenThread. This allows a device to register SRP services to SRP
|
|
||||||
Server.
|
|
||||||
|
|
||||||
config OPENTHREAD_SRP_CLIENT_MAX_SERVICES
|
|
||||||
int "Specifies number of service entries in the SRP client service pool"
|
|
||||||
depends on OPENTHREAD_SRP_CLIENT
|
|
||||||
default 5
|
|
||||||
help
|
|
||||||
Set the max buffer size of service entries in the SRP client service pool.
|
|
||||||
|
|
||||||
config OPENTHREAD_DNS_CLIENT
|
|
||||||
bool "Enable DNS Client"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
|
||||||
default y
|
|
||||||
help
|
|
||||||
Select this option to enable DNS Client in OpenThread.
|
|
||||||
|
|
||||||
config OPENTHREAD_BORDER_ROUTER
|
|
||||||
bool "Enable Border Router"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
|
||||||
default n
|
|
||||||
help
|
|
||||||
Select this option to enable border router features in OpenThread.
|
|
||||||
|
|
||||||
menu "Thread Memory Allocation Config"
|
|
||||||
depends on OPENTHREAD_ENABLED && (SPIRAM_USE_CAPS_ALLOC || SPIRAM_USE_MALLOC)
|
|
||||||
config OPENTHREAD_MEM_ALLOC_EXTERNAL
|
|
||||||
bool 'Allocate memory from PSRAM'
|
|
||||||
default y
|
default y
|
||||||
help
|
help
|
||||||
Select this option to allocate buffer from PSRAM for Thread
|
Select this option to enable Command-Line Interface in OpenThread.
|
||||||
|
|
||||||
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
|
endmenu
|
||||||
|
|
||||||
config OPENTHREAD_NUM_MESSAGE_BUFFERS
|
menu "Thread Core Features"
|
||||||
int "The number of openthread message buffers"
|
|
||||||
depends on OPENTHREAD_ENABLED
|
depends on OPENTHREAD_ENABLED
|
||||||
default 65
|
|
||||||
|
|
||||||
config OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE
|
menu "Thread Operational Dataset"
|
||||||
int "The size of openthread spinel rx frame buffer"
|
config OPENTHREAD_NETWORK_NAME
|
||||||
depends on OPENTHREAD_ENABLED || OPENTHREAD_SPINEL_ONLY
|
string "OpenThread network name"
|
||||||
default 1024 if OPENTHREAD_MTD || OPENTHREAD_RADIO
|
default "OpenThread-ESP"
|
||||||
default 2048 if OPENTHREAD_FTD || OPENTHREAD_SPINEL_ONLY
|
|
||||||
|
|
||||||
config OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
config OPENTHREAD_MESH_LOCAL_PREFIX
|
||||||
int "Maximum backoffs times before declaring a channel access failure."
|
string "OpenThread mesh local prefix, format <address>/<plen>"
|
||||||
depends on OPENTHREAD_ENABLED || OPENTHREAD_SPINEL_ONLY
|
default "fd00:db8:a0:0::/64"
|
||||||
default 4
|
help
|
||||||
help
|
A string in the format "<address>/<plen>", where `<address>` is an IPv6
|
||||||
The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access
|
address and `<plen>` is a prefix length. For example "fd00:db8:a0:0::/64"
|
||||||
failure.
|
|
||||||
|
|
||||||
config OPENTHREAD_MLE_MAX_CHILDREN
|
config OPENTHREAD_NETWORK_CHANNEL
|
||||||
int "The size of max MLE children entries"
|
int "OpenThread network channel"
|
||||||
depends on OPENTHREAD_ENABLED
|
range 11 26
|
||||||
default 10
|
default 15
|
||||||
|
|
||||||
config OPENTHREAD_TMF_ADDR_CACHE_ENTRIES
|
config OPENTHREAD_NETWORK_PANID
|
||||||
int "The size of max TMF address cache entries"
|
hex "OpenThread network pan id"
|
||||||
depends on OPENTHREAD_ENABLED
|
range 0 0xFFFE
|
||||||
default 20
|
default 0x1234
|
||||||
|
|
||||||
config OPENTHREAD_DNS64_CLIENT
|
config OPENTHREAD_NETWORK_EXTPANID
|
||||||
bool "Use dns64 client"
|
string "OpenThread extended pan id"
|
||||||
depends on OPENTHREAD_ENABLED && LWIP_IPV4
|
default "dead00beef00cafe"
|
||||||
select LWIP_HOOK_DNS_EXTERNAL_RESOLVE_SELECT_CUSTOM
|
help
|
||||||
default n
|
The OpenThread network extended pan id in hex string format
|
||||||
help
|
|
||||||
Select this option to acquire NAT64 address from dns servers.
|
|
||||||
|
|
||||||
config OPENTHREAD_DNS_SERVER_ADDR
|
config OPENTHREAD_NETWORK_MASTERKEY
|
||||||
string "DNS server address (IPv4)"
|
string "OpenThread network key"
|
||||||
depends on OPENTHREAD_DNS64_CLIENT
|
default "00112233445566778899aabbccddeeff"
|
||||||
default "8.8.8.8"
|
help
|
||||||
help
|
The OpenThread network network key in hex string format
|
||||||
Set the DNS server IPv4 address.
|
|
||||||
|
|
||||||
config OPENTHREAD_UART_BUFFER_SIZE
|
config OPENTHREAD_NETWORK_PSKC
|
||||||
int "The uart received buffer size of openthread"
|
string "OpenThread pre-shared commissioner key"
|
||||||
depends on OPENTHREAD_ENABLED
|
default "104810e2315100afd6bc9215a6bfac53"
|
||||||
default 2048
|
help
|
||||||
help
|
The OpenThread pre-shared commissioner key in hex string format
|
||||||
Set the OpenThread UART buffer size.
|
endmenu
|
||||||
|
|
||||||
config OPENTHREAD_LINK_METRICS
|
choice OPENTHREAD_DEVICE_TYPE
|
||||||
bool "Enable link metrics feature"
|
prompt "Thread device type"
|
||||||
depends on OPENTHREAD_ENABLED
|
default OPENTHREAD_FTD
|
||||||
default n
|
help
|
||||||
help
|
OpenThread can be configured to different device types (FTD, MTD, Radio)
|
||||||
Select this option to enable link metrics feature
|
|
||||||
|
|
||||||
config OPENTHREAD_MACFILTER_ENABLE
|
config OPENTHREAD_FTD
|
||||||
bool "Enable mac filter feature"
|
bool "Full Thread Device"
|
||||||
depends on OPENTHREAD_ENABLED
|
help
|
||||||
default n
|
Select this to enable Full Thread Device which can act as router and leader in a Thread network.
|
||||||
help
|
|
||||||
Select this option to enable mac filter feature
|
|
||||||
|
|
||||||
config OPENTHREAD_CSL_ENABLE
|
config OPENTHREAD_MTD
|
||||||
bool "Enable CSL feature"
|
bool "Minimal Thread Device"
|
||||||
depends on OPENTHREAD_ENABLED
|
help
|
||||||
default n
|
Select this to enable Minimal Thread Device which can only act as end device in a Thread network.
|
||||||
help
|
This will reduce the code size of the OpenThread stack.
|
||||||
Select this option to enable CSL feature
|
|
||||||
|
|
||||||
config OPENTHREAD_XTAL_ACCURACY
|
config OPENTHREAD_RADIO
|
||||||
int "The accuracy of the XTAL"
|
bool "Radio Only Device"
|
||||||
default 130
|
help
|
||||||
help
|
Select this to enable Radio Only Device which can only forward 15.4 packets to the host.
|
||||||
The device's XTAL accuracy, in ppm.
|
The OpenThread stack will be run on the host and OpenThread will have minimal footprint on the
|
||||||
|
radio only device.
|
||||||
|
endchoice
|
||||||
|
|
||||||
config OPENTHREAD_CSL_ACCURACY
|
menu "Thread Trel Radio Link"
|
||||||
int "The current CSL rx/tx scheduling drift, in units of ± ppm"
|
depends on EXAMPLE_CONNECT_WIFI || EXAMPLE_CONNECT_ETHERNET
|
||||||
depends on OPENTHREAD_CSL_ENABLE
|
|
||||||
default 1
|
|
||||||
help
|
|
||||||
The current accuracy of the clock used for scheduling CSL operations
|
|
||||||
|
|
||||||
config OPENTHREAD_CSL_UNCERTAIN
|
config OPENTHREAD_RADIO_TREL
|
||||||
int "The CSL Uncertainty in units of 10 us."
|
bool "Enable Thread Radio Encapsulation Link (TREL)"
|
||||||
depends on OPENTHREAD_CSL_ENABLE
|
default n
|
||||||
default 1
|
help
|
||||||
help
|
Select this option to enable Thread Radio Encapsulation Link.
|
||||||
The fixed uncertainty of the Device for scheduling CSL Transmissions in units of 10 microseconds.
|
|
||||||
|
|
||||||
config OPENTHREAD_CSL_DEBUG_ENABLE
|
config OPENTHREAD_TREL_PORT
|
||||||
bool "Enable CSL debug"
|
int "The port of openthread trel service"
|
||||||
depends on OPENTHREAD_CSL_ENABLE
|
depends on OPENTHREAD_RADIO_TREL
|
||||||
default n
|
default 12390
|
||||||
help
|
help
|
||||||
Select this option to set rx on when sleep in CSL feature, only for debug
|
Configure the port number of TREL service.
|
||||||
|
endmenu
|
||||||
|
|
||||||
config OPENTHREAD_DUA_ENABLE
|
menu "Thread 15.4 Radio Link"
|
||||||
bool "Enable Domain Unicast Address feature"
|
choice OPENTHREAD_RADIO_TYPE
|
||||||
depends on OPENTHREAD_ENABLED
|
prompt "Config the Thread radio type with 15.4 link"
|
||||||
default n
|
default OPENTHREAD_RADIO_NATIVE if SOC_IEEE802154_SUPPORTED
|
||||||
help
|
default OPENTHREAD_RADIO_SPINEL_UART
|
||||||
Only used for Thread1.2 certification
|
help
|
||||||
|
Configure how OpenThread connects to the 15.4 radio
|
||||||
|
|
||||||
config OPENTHREAD_TIME_SYNC
|
config OPENTHREAD_RADIO_NATIVE
|
||||||
bool "Enable the time synchronization service feature"
|
bool "Native 15.4 radio"
|
||||||
depends on OPENTHREAD_ENABLED
|
help
|
||||||
default n
|
Select this to use the native 15.4 radio.
|
||||||
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
|
config OPENTHREAD_RADIO_SPINEL_UART
|
||||||
bool "Enable Radio Statistics feature"
|
select UART_ISR_IN_IRAM
|
||||||
depends on OPENTHREAD_FTD || OPENTHREAD_MTD
|
bool "Connect via UART"
|
||||||
default n
|
help
|
||||||
help
|
Select this to connect to a Radio Co-Processor via UART.
|
||||||
Select this option to enable the radio statistics feature, you can use radio command to print some radio
|
|
||||||
Statistics information.
|
|
||||||
|
|
||||||
config OPENTHREAD_SPINEL_ONLY
|
config OPENTHREAD_RADIO_SPINEL_SPI
|
||||||
bool "Enable OpenThread External Radio Spinel feature"
|
bool "Connect via SPI"
|
||||||
default n
|
help
|
||||||
help
|
Select this to connect to a Radio Co-Processor via SPI.
|
||||||
Select this option to enable the OpenThread Radio Spinel for external protocol stack, such as Zigbee.
|
|
||||||
|
|
||||||
config OPENTHREAD_RX_ON_WHEN_IDLE
|
config OPENTHREAD_RADIO_154_NONE
|
||||||
bool "Enable OpenThread radio capability rx on when idle"
|
bool "Disable the Thread radio based on 15.4 link"
|
||||||
default y if !ESP_COEX_SW_COEXIST_ENABLE
|
help
|
||||||
default n if ESP_COEX_SW_COEXIST_ENABLE
|
Select this to disable the Thread radio based on 15.4 link.
|
||||||
help
|
endchoice
|
||||||
Select this option to enable OpenThread radio capability rx on when idle. Do not support this feature when
|
endmenu
|
||||||
SW coexistence is enabled.
|
|
||||||
|
|
||||||
menu "Thread Address Query Config"
|
menu "Thread Radio Co-Processor Feature"
|
||||||
config OPENTHREAD_ADDRESS_QUERY_TIMEOUT
|
depends on OPENTHREAD_RADIO
|
||||||
int "Timeout value (in seconds) for a address notification response after sending an address query."
|
|
||||||
|
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
|
depends on OPENTHREAD_FTD || OPENTHREAD_MTD
|
||||||
default 3
|
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_ADDRESS_QUERY_RETRY_DELAY
|
config OPENTHREAD_RX_ON_WHEN_IDLE
|
||||||
int "Initial retry delay for address query (in seconds)."
|
bool "Enable OpenThread radio capability rx on when idle"
|
||||||
depends on OPENTHREAD_FTD || OPENTHREAD_MTD
|
default y if !ESP_COEX_SW_COEXIST_ENABLE
|
||||||
default 15
|
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_ADDRESS_QUERY_MAX_RETRY_DELAY
|
config OPENTHREAD_DIAG
|
||||||
int "Maximum retry delay for address query (in seconds)."
|
bool "Enable diag"
|
||||||
depends on OPENTHREAD_FTD || OPENTHREAD_MTD
|
default y
|
||||||
default 120
|
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_MEM_ALLOC_EXTERNAL
|
||||||
|
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_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
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -8,38 +8,44 @@
|
|||||||
|
|
||||||
#include "sdkconfig.h"
|
#include "sdkconfig.h"
|
||||||
|
|
||||||
|
#if CONFIG_OPENTHREAD_HEADER_CUSTOM
|
||||||
|
#include CONFIG_OPENTHREAD_CUSTOM_HEADER_FILE_NAME
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define OPENTHREAD_MTD 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_INFO
|
* @def OPENTHREAD_CONFIG_PLATFORM_INFO
|
||||||
*
|
*
|
||||||
* The platform-specific string to insert into the OpenThread version string.
|
* The platform-specific string to insert into the OpenThread version string.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_PLATFORM_INFO
|
||||||
|
#error `OPENTHREAD_CONFIG_PLATFORM_INFO` is redefined.
|
||||||
|
#endif
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_INFO CONFIG_OPENTHREAD_PLATFORM_INFO
|
#define OPENTHREAD_CONFIG_PLATFORM_INFO CONFIG_OPENTHREAD_PLATFORM_INFO
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT
|
* @def PACKAGE_NAME
|
||||||
*
|
*
|
||||||
* The assert is managed by platform defined logic when this flag is set.
|
* Define to the full name of this package.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT 1
|
#ifdef PACKAGE_NAME
|
||||||
|
#error `PACKAGE_NAME` is redefined.
|
||||||
|
#endif
|
||||||
|
#define PACKAGE_NAME CONFIG_OPENTHREAD_PACKAGE_NAME
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE
|
* @def PACKAGE_STRING
|
||||||
*
|
*
|
||||||
* Define to 1 to enable otPlatFlash* APIs to support non-volatile storage.
|
* Define to the full name and version of this package.
|
||||||
*
|
|
||||||
* When defined to 1, the platform MUST implement the otPlatFlash* APIs instead of the otPlatSettings* APIs.
|
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE 0
|
#ifdef PACKAGE_STRING
|
||||||
|
#error `PACKAGE_STRING` is redefined.
|
||||||
/**
|
#endif
|
||||||
* @def OPENTHREAD_CONFIG_LOG_OUTPUT
|
#define PACKAGE_STRING (PACKAGE_NAME " - " PACKAGE_VERSION)
|
||||||
*
|
|
||||||
* The ESP-IDF platform provides an otPlatLog() function.
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_LOG_OUTPUT OPENTHREAD_CONFIG_LOG_OUTPUT_PLATFORM_DEFINED
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE
|
* @def OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE
|
||||||
@ -47,6 +53,9 @@
|
|||||||
* Configuration option to enable dynamic log level control.
|
* Configuration option to enable dynamic log level control.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
#define OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE CONFIG_OPENTHREAD_LOG_LEVEL_DYNAMIC
|
#define OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE CONFIG_OPENTHREAD_LOG_LEVEL_DYNAMIC
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -56,30 +65,197 @@
|
|||||||
* verbose log level possible. See `OPENTHREAD_CONFIG_LOG_LEVEL_INIT` to set the initial log level.
|
* verbose log level possible. See `OPENTHREAD_CONFIG_LOG_LEVEL_INIT` to set the initial log level.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#if OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE
|
#ifdef OPENTHREAD_CONFIG_LOG_LEVEL
|
||||||
|
#error `OPENTHREAD_CONFIG_LOG_LEVEL` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_LOG_LEVEL_DYNAMIC
|
||||||
#define OPENTHREAD_CONFIG_LOG_LEVEL OT_LOG_LEVEL_DEBG
|
#define OPENTHREAD_CONFIG_LOG_LEVEL OT_LOG_LEVEL_DEBG
|
||||||
#else
|
#else
|
||||||
#define OPENTHREAD_CONFIG_LOG_LEVEL CONFIG_OPENTHREAD_LOG_LEVEL
|
#define OPENTHREAD_CONFIG_LOG_LEVEL CONFIG_OPENTHREAD_LOG_LEVEL
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define OPENTHREAD_CONFIG_LOG_CLI 1
|
|
||||||
#define OPENTHREAD_CONFIG_LOG_PKT_DUMP 1
|
|
||||||
#define OPENTHREAD_CONFIG_LOG_PLATFORM 1
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS
|
* @def OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS
|
||||||
*
|
*
|
||||||
* The number of message buffers in buffer pool
|
* The number of message buffers in buffer pool
|
||||||
*/
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS
|
||||||
|
#error `OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS` is redefined.
|
||||||
|
#endif
|
||||||
#define OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS CONFIG_OPENTHREAD_NUM_MESSAGE_BUFFERS
|
#define OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS CONFIG_OPENTHREAD_NUM_MESSAGE_BUFFERS
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE
|
||||||
|
*
|
||||||
|
* Specifies the rx frame buffer size used by `SpinelInterface` in RCP host code. This is applicable/used when
|
||||||
|
* `RadioSpinel` platform is used.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE
|
||||||
|
#error `OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE CONFIG_OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE
|
||||||
|
|
||||||
|
#ifdef OPENTHREAD_CONFIG_COMMISSIONER_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_COMMISSIONER_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_COMMISSIONER
|
||||||
|
#define OPENTHREAD_CONFIG_COMMISSIONER_ENABLE 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_CONFIG_COMMISSIONER_ENABLE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef OPENTHREAD_CONFIG_MAC_FILTER_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_MAC_FILTER_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_MACFILTER_ENABLE
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_FILTER_ENABLE 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_FILTER_ENABLE 0
|
||||||
|
#endif // CONFIG_OPENTHREAD_MACFILTER_ENABLE
|
||||||
|
|
||||||
|
#ifdef OPENTHREAD_CONFIG_JOINER_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_JOINER_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_JOINER
|
||||||
|
#define OPENTHREAD_CONFIG_JOINER_ENABLE 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_CONFIG_JOINER_ENABLE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef OPENTHREAD_CONFIG_DIAG_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_DIAG_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_DIAG
|
||||||
|
#define OPENTHREAD_CONFIG_DIAG_ENABLE 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_CONFIG_DIAG_ENABLE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef OPENTHREAD_CONFIG_SRP_CLIENT_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_SRP_CLIENT_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_SRP_CLIENT
|
||||||
|
|
||||||
|
#ifndef OPENTHREAD_CONFIG_ECDSA_ENABLE
|
||||||
|
#define OPENTHREAD_CONFIG_ECDSA_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define OPENTHREAD_CONFIG_SRP_CLIENT_ENABLE 1
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_MAX_SERVICES
|
||||||
|
*
|
||||||
|
* Specifies number of service entries in the SRP client service pool.
|
||||||
|
*
|
||||||
|
* This config is applicable only when `OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_ENABLE` is enabled.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_MAX_SERVICES
|
||||||
|
#error `OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_MAX_SERVICES` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_MAX_SERVICES CONFIG_OPENTHREAD_SRP_CLIENT_MAX_SERVICES
|
||||||
|
#endif // CONFIG_OPENTHREAD_SRP_CLIENT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE
|
||||||
|
*
|
||||||
|
* Define to 1 to enable DNS Client support.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE CONFIG_OPENTHREAD_DNS_CLIENT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_TIME_SYNC_ENABLE
|
||||||
|
*
|
||||||
|
* Define as 1 to enable the time synchronization service feature.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_TIME_SYNC_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_TIME_SYNC_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_TIME_SYNC
|
||||||
|
#define OPENTHREAD_CONFIG_TIME_SYNC_ENABLE 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_CONFIG_TIME_SYNC_ENABLE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_RADIO_STATS_ENABLE
|
||||||
|
*
|
||||||
|
* Set to 1 to enable support for Radio Statistics. Note that this option only works for OPENTHREAD_FTD and
|
||||||
|
* OPENTHREAD_MTD.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_RADIO_STATS_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_RADIO_STATS_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_RADIO_STATS_ENABLE
|
||||||
|
#define OPENTHREAD_CONFIG_RADIO_STATS_ENABLE 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_CONFIG_RADIO_STATS_ENABLE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT
|
||||||
|
*
|
||||||
|
* The timeout value (in seconds) waiting for a address notification response after sending an address query.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT
|
||||||
|
#error `OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT CONFIG_OPENTHREAD_ADDRESS_QUERY_TIMEOUT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY
|
||||||
|
*
|
||||||
|
* Initial retry delay for address query (in seconds).
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY
|
||||||
|
#error `OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY CONFIG_OPENTHREAD_ADDRESS_QUERY_RETRY_DELAY
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY
|
||||||
|
*
|
||||||
|
* Maximum retry delay for address query (in seconds).
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY
|
||||||
|
#error `OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY CONFIG_OPENTHREAD_ADDRESS_QUERY_MAX_RETRY_DELAY
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
*
|
||||||
|
* The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.
|
||||||
|
*
|
||||||
|
* Equivalent to macMaxCSMABackoffs in IEEE 802.15.4-2006, default value is 4.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
#error `OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT CONFIG_OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
|
||||||
|
/*----The following options set fixed default values but can be overridden by the user header file.----*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_COAP_API_ENABLE
|
* @def OPENTHREAD_CONFIG_COAP_API_ENABLE
|
||||||
*
|
*
|
||||||
* Define to 1 to enable the CoAP API.
|
* Define to 1 to enable the CoAP API.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_COAP_API_ENABLE
|
||||||
#define OPENTHREAD_CONFIG_COAP_API_ENABLE 1
|
#define OPENTHREAD_CONFIG_COAP_API_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_NETIF_ENABLE
|
* @def OPENTHREAD_CONFIG_PLATFORM_NETIF_ENABLE
|
||||||
@ -91,6 +267,25 @@
|
|||||||
#define OPENTHREAD_CONFIG_PLATFORM_NETIF_ENABLE 1
|
#define OPENTHREAD_CONFIG_PLATFORM_NETIF_ENABLE 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT
|
||||||
|
*
|
||||||
|
* The assert is managed by platform defined logic when this flag is set.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT
|
||||||
|
#define OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_LOG_OUTPUT
|
||||||
|
*
|
||||||
|
* The ESP-IDF platform provides an otPlatLog() function.
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_LOG_OUTPUT
|
||||||
|
#define OPENTHREAD_CONFIG_LOG_OUTPUT OPENTHREAD_CONFIG_LOG_OUTPUT_PLATFORM_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE
|
* @def OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE
|
||||||
*
|
*
|
||||||
@ -117,23 +312,9 @@
|
|||||||
* Define to 1 to enable Thread Test Harness reference device support.
|
* Define to 1 to enable Thread Test Harness reference device support.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
|
||||||
#define OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE 1
|
#define OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE 1
|
||||||
|
#endif
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_NCP_SPI_ENABLE
|
|
||||||
*
|
|
||||||
* Define to 1 to enable NCP SPI support.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_NCP_SPI_ENABLE 0
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER
|
|
||||||
*
|
|
||||||
* Define to 1 to enable NCP Spinel Encrypter.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER 0
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_NCP_HDLC_ENABLE
|
* @def OPENTHREAD_CONFIG_NCP_HDLC_ENABLE
|
||||||
@ -141,23 +322,9 @@
|
|||||||
* Define to 1 to enable NCP HDLC support.
|
* Define to 1 to enable NCP HDLC support.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_NCP_HDLC_ENABLE
|
||||||
#define OPENTHREAD_CONFIG_NCP_HDLC_ENABLE 1
|
#define OPENTHREAD_CONFIG_NCP_HDLC_ENABLE 1
|
||||||
|
#endif
|
||||||
/**
|
|
||||||
* @def PACKAGE_NAME
|
|
||||||
*
|
|
||||||
* Define to the full name of this package.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define PACKAGE_NAME CONFIG_OPENTHREAD_PACKAGE_NAME
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def PACKAGE_STRING
|
|
||||||
*
|
|
||||||
* Define to the full name and version of this package.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define PACKAGE_STRING (PACKAGE_NAME " - " PACKAGE_VERSION)
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS
|
* @def OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS
|
||||||
@ -168,7 +335,9 @@
|
|||||||
* whether to manage mbedTLS internally, such as memory allocation and debug.
|
* whether to manage mbedTLS internally, such as memory allocation and debug.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS
|
||||||
#define OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS 0
|
#define OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS 0
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
|
* @def OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
|
||||||
@ -176,7 +345,9 @@
|
|||||||
* Define as 1 to enable support for adding of auto-configured SLAAC addresses by OpenThread.
|
* Define as 1 to enable support for adding of auto-configured SLAAC addresses by OpenThread.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE
|
||||||
#define OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE 1
|
#define OPENTHREAD_CONFIG_IP6_SLAAC_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS
|
* @def OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS
|
||||||
@ -184,16 +355,9 @@
|
|||||||
* The maximum number of state-changed callback handlers (set using `otSetStateChangedCallback()`).
|
* The maximum number of state-changed callback handlers (set using `otSetStateChangedCallback()`).
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS
|
||||||
#define OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS 3
|
#define OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS 3
|
||||||
|
#endif
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE
|
|
||||||
*
|
|
||||||
* Specifies the rx frame buffer size used by `SpinelInterface` in RCP host code. This is applicable/used when
|
|
||||||
* `RadioSpinel` platform is used.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE CONFIG_OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE
|
* @def OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE
|
||||||
@ -201,7 +365,9 @@
|
|||||||
* Define as 1 to enable microsecond timer.
|
* Define as 1 to enable microsecond timer.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE 1
|
#define OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PING_SENDER_ENABLE
|
* @def OPENTHREAD_CONFIG_PING_SENDER_ENABLE
|
||||||
@ -211,7 +377,9 @@
|
|||||||
* Ping sender module implements sending ICMPv6 Echo Request messages and processing ICMPv6 Echo Reply messages.
|
* Ping sender module implements sending ICMPv6 Echo Request messages and processing ICMPv6 Echo Reply messages.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_PING_SENDER_ENABLE
|
||||||
#define OPENTHREAD_CONFIG_PING_SENDER_ENABLE 1
|
#define OPENTHREAD_CONFIG_PING_SENDER_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_DTLS_MAX_CONTENT_LEN
|
* @def OPENTHREAD_CONFIG_DTLS_MAX_CONTENT_LEN
|
||||||
@ -224,114 +392,11 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The configurable definitions via Kconfig
|
* @OPENTHREAD_CONFIG_DELAY_AWARE_QUEUE_MANAGEMENT_MARK_ECN_INTERVAL
|
||||||
|
*
|
||||||
|
* Specifies the time-in-queue threshold interval in milliseconds to mark ECN on a message if it is ECN-capable or
|
||||||
|
* drop the message if not ECN-capable.
|
||||||
*/
|
*/
|
||||||
#if CONFIG_OPENTHREAD_COMMISSIONER
|
#ifndef OPENTHREAD_CONFIG_DELAY_AWARE_QUEUE_MANAGEMENT_MARK_ECN_INTERVAL
|
||||||
#define OPENTHREAD_CONFIG_COMMISSIONER_ENABLE 0
|
#define OPENTHREAD_CONFIG_DELAY_AWARE_QUEUE_MANAGEMENT_MARK_ECN_INTERVAL 1000
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if CONFIG_OPENTHREAD_MACFILTER_ENABLE
|
|
||||||
#define OPENTHREAD_CONFIG_MAC_FILTER_ENABLE 1
|
|
||||||
#endif // CONFIG_OPENTHREAD_MACFILTER_ENABLE
|
|
||||||
|
|
||||||
#if CONFIG_OPENTHREAD_JOINER
|
|
||||||
#define OPENTHREAD_CONFIG_JOINER_ENABLE 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if CONFIG_OPENTHREAD_DIAG
|
|
||||||
#define OPENTHREAD_CONFIG_DIAG_ENABLE 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if CONFIG_OPENTHREAD_SRP_CLIENT
|
|
||||||
#ifndef OPENTHREAD_CONFIG_ECDSA_ENABLE
|
|
||||||
#define OPENTHREAD_CONFIG_ECDSA_ENABLE 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef OPENTHREAD_CONFIG_SRP_CLIENT_ENABLE
|
|
||||||
#define OPENTHREAD_CONFIG_SRP_CLIENT_ENABLE 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_MAX_SERVICES
|
|
||||||
*
|
|
||||||
* Specifies number of service entries in the SRP client service pool.
|
|
||||||
*
|
|
||||||
* This config is applicable only when `OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_ENABLE` is enabled.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_SRP_CLIENT_BUFFERS_MAX_SERVICES CONFIG_OPENTHREAD_SRP_CLIENT_MAX_SERVICES
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE
|
|
||||||
*
|
|
||||||
* Define to 1 to enable DNS Client support.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE CONFIG_OPENTHREAD_DNS_CLIENT
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_TIME_SYNC_ENABLE
|
|
||||||
*
|
|
||||||
* Define as 1 to enable the time synchronization service feature.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#if CONFIG_OPENTHREAD_TIME_SYNC
|
|
||||||
#define OPENTHREAD_CONFIG_TIME_SYNC_ENABLE 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_RADIO_STATS_ENABLE
|
|
||||||
*
|
|
||||||
* Set to 1 to enable support for Radio Statistics. Note that this option only works for OPENTHREAD_FTD and
|
|
||||||
* OPENTHREAD_MTD.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#if CONFIG_OPENTHREAD_RADIO_STATS_ENABLE
|
|
||||||
#define OPENTHREAD_CONFIG_RADIO_STATS_ENABLE 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT
|
|
||||||
*
|
|
||||||
* The timeout value (in seconds) waiting for a address notification response after sending an address query.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT
|
|
||||||
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_TIMEOUT CONFIG_OPENTHREAD_ADDRESS_QUERY_TIMEOUT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY
|
|
||||||
*
|
|
||||||
* Initial retry delay for address query (in seconds).
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY
|
|
||||||
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_INITIAL_RETRY_DELAY CONFIG_OPENTHREAD_ADDRESS_QUERY_RETRY_DELAY
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY
|
|
||||||
*
|
|
||||||
* Maximum retry delay for address query (in seconds).
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY
|
|
||||||
#define OPENTHREAD_CONFIG_TMF_ADDRESS_QUERY_MAX_RETRY_DELAY CONFIG_OPENTHREAD_ADDRESS_QUERY_MAX_RETRY_DELAY
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
*
|
|
||||||
* The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.
|
|
||||||
*
|
|
||||||
* Equivalent to macMaxCSMABackoffs in IEEE 802.15.4-2006, default value is 4.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
#define OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT CONFIG_OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define OPENTHREAD_MTD 1
|
|
||||||
|
@ -7,38 +7,45 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "sdkconfig.h"
|
#include "sdkconfig.h"
|
||||||
|
|
||||||
|
#if CONFIG_OPENTHREAD_HEADER_CUSTOM
|
||||||
|
#include CONFIG_OPENTHREAD_CUSTOM_HEADER_FILE_NAME
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define OPENTHREAD_RADIO 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_INFO
|
* @def OPENTHREAD_CONFIG_PLATFORM_INFO
|
||||||
*
|
*
|
||||||
* The platform-specific string to insert into the OpenThread version string.
|
* The platform-specific string to insert into the OpenThread version string.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_PLATFORM_INFO
|
||||||
|
#error `OPENTHREAD_CONFIG_PLATFORM_INFO` is redefined.
|
||||||
|
#endif
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_INFO CONFIG_OPENTHREAD_PLATFORM_INFO
|
#define OPENTHREAD_CONFIG_PLATFORM_INFO CONFIG_OPENTHREAD_PLATFORM_INFO
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT
|
* @def PACKAGE_NAME
|
||||||
*
|
*
|
||||||
* The assert is managed by platform defined logic when this flag is set.
|
* Define to the full name of this package.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT 1
|
#ifdef PACKAGE_NAME
|
||||||
|
#error `PACKAGE_NAME` is redefined.
|
||||||
|
#endif
|
||||||
|
#define PACKAGE_NAME CONFIG_OPENTHREAD_PACKAGE_NAME
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE
|
* @def PACKAGE_STRING
|
||||||
*
|
*
|
||||||
* Define to 1 to enable otPlatFlash* APIs to support non-volatile storage.
|
* Define to the full name and version of this package.
|
||||||
*
|
|
||||||
* When defined to 1, the platform MUST implement the otPlatFlash* APIs instead of the otPlatSettings* APIs.
|
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE 0
|
#ifdef PACKAGE_STRING
|
||||||
|
#error `PACKAGE_STRING` is redefined.
|
||||||
/**
|
#endif
|
||||||
* @def OPENTHREAD_CONFIG_LOG_OUTPUT
|
#define PACKAGE_STRING (PACKAGE_NAME " - " PACKAGE_VERSION)
|
||||||
*
|
|
||||||
* The ESP-IDF platform provides an otPlatLog() function.
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_LOG_OUTPUT OPENTHREAD_CONFIG_LOG_OUTPUT_PLATFORM_DEFINED
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_LOG_LEVEL
|
* @def OPENTHREAD_CONFIG_LOG_LEVEL
|
||||||
@ -47,7 +54,9 @@
|
|||||||
* verbose log level possible. See `OPENTHREAD_CONFIG_LOG_LEVEL_INIT` to set the initial log level.
|
* verbose log level possible. See `OPENTHREAD_CONFIG_LOG_LEVEL_INIT` to set the initial log level.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#ifndef OPENTHREAD_CONFIG_LOG_LEVEL
|
#ifdef OPENTHREAD_CONFIG_LOG_LEVEL
|
||||||
|
#error `OPENTHREAD_CONFIG_LOG_LEVEL` is redefined.
|
||||||
|
#endif
|
||||||
#if CONFIG_LOG_DEFAULT_LEVEL_NONE
|
#if CONFIG_LOG_DEFAULT_LEVEL_NONE
|
||||||
#define OPENTHREAD_CONFIG_LOG_LEVEL OT_LOG_LEVEL_NONE
|
#define OPENTHREAD_CONFIG_LOG_LEVEL OT_LOG_LEVEL_NONE
|
||||||
#elif CONFIG_LOG_DEFAULT_LEVEL_ERROR
|
#elif CONFIG_LOG_DEFAULT_LEVEL_ERROR
|
||||||
@ -61,26 +70,6 @@
|
|||||||
#elif CONFIG_LOG_DEFAULT_LEVEL_VERBOSE
|
#elif CONFIG_LOG_DEFAULT_LEVEL_VERBOSE
|
||||||
#define OPENTHREAD_CONFIG_LOG_LEVEL OT_LOG_LEVEL_DEBG
|
#define OPENTHREAD_CONFIG_LOG_LEVEL OT_LOG_LEVEL_DEBG
|
||||||
#endif
|
#endif
|
||||||
#endif
|
|
||||||
|
|
||||||
#define OPENTHREAD_CONFIG_LOG_CLI 1
|
|
||||||
#define OPENTHREAD_CONFIG_LOG_PKT_DUMP 1
|
|
||||||
#define OPENTHREAD_CONFIG_LOG_PLATFORM 1
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS
|
|
||||||
*
|
|
||||||
* The number of message buffers in buffer pool
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS 50
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
|
|
||||||
*
|
|
||||||
* Define to 1 to enable Thread Test Harness reference device support.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE 0
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_NCP_SPI_ENABLE
|
* @def OPENTHREAD_CONFIG_NCP_SPI_ENABLE
|
||||||
@ -88,59 +77,22 @@
|
|||||||
* Define to 1 to enable NCP SPI support.
|
* Define to 1 to enable NCP SPI support.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_NCP_SPI_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_NCP_SPI_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
#define OPENTHREAD_CONFIG_NCP_SPI_ENABLE CONFIG_OPENTHREAD_RCP_SPI
|
#define OPENTHREAD_CONFIG_NCP_SPI_ENABLE CONFIG_OPENTHREAD_RCP_SPI
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER
|
|
||||||
*
|
|
||||||
* Define to 1 to enable NCP Spinel Encrypter.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_ENABLE_NCP_SPINEL_ENCRYPTER 0
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_NCP_HDLC_ENABLE
|
* @def OPENTHREAD_CONFIG_NCP_HDLC_ENABLE
|
||||||
*
|
*
|
||||||
* Define to 1 to enable NCP HDLC support.
|
* Define to 1 to enable NCP HDLC support.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_NCP_HDLC_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_NCP_HDLC_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
#define OPENTHREAD_CONFIG_NCP_HDLC_ENABLE CONFIG_OPENTHREAD_RCP_UART
|
#define OPENTHREAD_CONFIG_NCP_HDLC_ENABLE CONFIG_OPENTHREAD_RCP_UART
|
||||||
|
|
||||||
/**
|
|
||||||
* @def PACKAGE_NAME
|
|
||||||
*
|
|
||||||
* Define to the full name of this package.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define PACKAGE_NAME CONFIG_OPENTHREAD_PACKAGE_NAME
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def PACKAGE_STRING
|
|
||||||
*
|
|
||||||
* Define to the full name and version of this package.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define PACKAGE_STRING (PACKAGE_NAME " - " PACKAGE_VERSION)
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS
|
|
||||||
*
|
|
||||||
* Define as 1 to enable bultin-mbedtls.
|
|
||||||
*
|
|
||||||
* Note that the OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS determines whether to use bultin-mbedtls as well as
|
|
||||||
* whether to manage mbedTLS internally, such as memory allocation and debug.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS 0
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS
|
|
||||||
*
|
|
||||||
* The maximum number of state-changed callback handlers (set using `otSetStateChangedCallback()`).
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS 3
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE
|
* @def OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE
|
||||||
*
|
*
|
||||||
@ -148,51 +100,11 @@
|
|||||||
* `RadioSpinel` platform is used.
|
* `RadioSpinel` platform is used.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
#ifdef OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE
|
||||||
|
#error `OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE` is redefined.
|
||||||
|
#endif
|
||||||
#define OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE CONFIG_OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE
|
#define OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE CONFIG_OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE
|
|
||||||
*
|
|
||||||
* Define as 1 to enable microsecond timer.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE 1
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_MAC_SOFTWARE_CSMA_BACKOFF_ENABLE
|
|
||||||
*
|
|
||||||
* Define to 1 to enable software CSMA-CA backoff logic.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_MAC_SOFTWARE_CSMA_BACKOFF_ENABLE 1
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_MAC_SOFTWARE_RETRANSMIT_ENABLE
|
|
||||||
*
|
|
||||||
* Define to 1 to enable software retransmission logic.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_MAC_SOFTWARE_RETRANSMIT_ENABLE 1
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_SECURITY_ENABLE
|
|
||||||
*
|
|
||||||
* Define to 1 to enable software transmission security logic.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_SECURITY_ENABLE 1
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_TIMING_ENABLE
|
|
||||||
*
|
|
||||||
* Define to 1 to enable software transmission target time logic.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_TIMING_ENABLE 1
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The configurable definitions via Kconfig
|
|
||||||
*/
|
|
||||||
#if CONFIG_OPENTHREAD_COMMISSIONER
|
#if CONFIG_OPENTHREAD_COMMISSIONER
|
||||||
#error "Commissioner shouldn't be enabled for RCP"
|
#error "Commissioner shouldn't be enabled for RCP"
|
||||||
#endif
|
#endif
|
||||||
@ -201,11 +113,59 @@
|
|||||||
#error "Joiner shouldn't be enabled for RCP"
|
#error "Joiner shouldn't be enabled for RCP"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef OPENTHREAD_CONFIG_DIAG_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_DIAG_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
#if CONFIG_OPENTHREAD_DIAG
|
#if CONFIG_OPENTHREAD_DIAG
|
||||||
#define OPENTHREAD_CONFIG_DIAG_ENABLE 1
|
#define OPENTHREAD_CONFIG_DIAG_ENABLE 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_CONFIG_DIAG_ENABLE 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define OPENTHREAD_RADIO 1
|
#ifdef OPENTHREAD_ENABLE_NCP_VENDOR_HOOK
|
||||||
|
#error `OPENTHREAD_ENABLE_NCP_VENDOR_HOOK` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_NCP_VENDOR_HOOK
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_ENABLE_NCP_VENDOR_HOOK
|
||||||
|
*
|
||||||
|
* Define as 1 to support ESP OpenThread NCP vendor commands
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#define OPENTHREAD_ENABLE_NCP_VENDOR_HOOK 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_ENABLE_NCP_VENDOR_HOOK 0
|
||||||
|
#endif //CONFIG_OPENTHREAD_NCP_VENDOR_HOOK
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
*
|
||||||
|
* The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.
|
||||||
|
*
|
||||||
|
* Equivalent to macMaxCSMABackoffs in IEEE 802.15.4-2006, default value is 4.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
#error `OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT CONFIG_OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_TIME_SYNC_ENABLE
|
||||||
|
*
|
||||||
|
* Define as 1 to enable the time synchronization service feature.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_TIME_SYNC_ENABLE
|
||||||
|
#error `OPENTHREAD_CONFIG_TIME_SYNC_ENABLE` is redefined.
|
||||||
|
#endif
|
||||||
|
#if CONFIG_OPENTHREAD_TIME_SYNC
|
||||||
|
#define OPENTHREAD_CONFIG_TIME_SYNC_ENABLE 1
|
||||||
|
#else
|
||||||
|
#define OPENTHREAD_CONFIG_TIME_SYNC_ENABLE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*----The following options set fixed default values but can be overridden by the user header file.----*/
|
||||||
|
|
||||||
#if CONFIG_OPENTHREAD_LINK_METRICS
|
#if CONFIG_OPENTHREAD_LINK_METRICS
|
||||||
/**
|
/**
|
||||||
@ -219,36 +179,103 @@
|
|||||||
#endif
|
#endif
|
||||||
#endif //CONFIG_OPENTHREAD_LINK_METRICS
|
#endif //CONFIG_OPENTHREAD_LINK_METRICS
|
||||||
|
|
||||||
#if CONFIG_OPENTHREAD_NCP_VENDOR_HOOK
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_ENABLE_NCP_VENDOR_HOOK
|
* @def OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT
|
||||||
*
|
*
|
||||||
* Define as 1 to support ESP OpenThread NCP vendor commands
|
* The assert is managed by platform defined logic when this flag is set.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#ifndef OPENTHREAD_ENABLE_NCP_VENDOR_HOOK
|
#ifndef OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT
|
||||||
#define OPENTHREAD_ENABLE_NCP_VENDOR_HOOK 1
|
#define OPENTHREAD_CONFIG_PLATFORM_ASSERT_MANAGEMENT 1
|
||||||
#endif
|
|
||||||
#endif //CONFIG_OPENTHREAD_NCP_VENDOR_HOOK
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
*
|
|
||||||
* The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.
|
|
||||||
*
|
|
||||||
* Equivalent to macMaxCSMABackoffs in IEEE 802.15.4-2006, default value is 4.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
#define OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT CONFIG_OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_CONFIG_TIME_SYNC_ENABLE
|
* @def OPENTHREAD_CONFIG_LOG_OUTPUT
|
||||||
*
|
*
|
||||||
* Define as 1 to enable the time synchronization service feature.
|
* The ESP-IDF platform provides an otPlatLog() function.
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_LOG_OUTPUT
|
||||||
|
#define OPENTHREAD_CONFIG_LOG_OUTPUT OPENTHREAD_CONFIG_LOG_OUTPUT_PLATFORM_DEFINED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS
|
||||||
|
*
|
||||||
|
* The number of message buffers in buffer pool
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS
|
||||||
|
#define OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS 50
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS
|
||||||
|
*
|
||||||
|
* Define as 1 to enable bultin-mbedtls.
|
||||||
|
*
|
||||||
|
* Note that the OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS determines whether to use bultin-mbedtls as well as
|
||||||
|
* whether to manage mbedTLS internally, such as memory allocation and debug.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#if CONFIG_OPENTHREAD_TIME_SYNC
|
#ifndef OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS
|
||||||
#define OPENTHREAD_CONFIG_TIME_SYNC_ENABLE 1
|
#define OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS
|
||||||
|
*
|
||||||
|
* The maximum number of state-changed callback handlers (set using `otSetStateChangedCallback()`).
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS
|
||||||
|
#define OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS 3
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE
|
||||||
|
*
|
||||||
|
* Define as 1 to enable microsecond timer.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE
|
||||||
|
#define OPENTHREAD_CONFIG_PLATFORM_USEC_TIMER_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_MAC_SOFTWARE_CSMA_BACKOFF_ENABLE
|
||||||
|
*
|
||||||
|
* Define to 1 to enable software CSMA-CA backoff logic.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_MAC_SOFTWARE_CSMA_BACKOFF_ENABLE
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_SOFTWARE_CSMA_BACKOFF_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_MAC_SOFTWARE_RETRANSMIT_ENABLE
|
||||||
|
*
|
||||||
|
* Define to 1 to enable software retransmission logic.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_MAC_SOFTWARE_RETRANSMIT_ENABLE
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_SOFTWARE_RETRANSMIT_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_SECURITY_ENABLE
|
||||||
|
*
|
||||||
|
* Define to 1 to enable software transmission security logic.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_SECURITY_ENABLE
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_SECURITY_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_TIMING_ENABLE
|
||||||
|
*
|
||||||
|
* Define to 1 to enable software transmission target time logic.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifndef OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_TIMING_ENABLE
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_SOFTWARE_TX_TIMING_ENABLE 1
|
||||||
#endif
|
#endif
|
||||||
|
@ -7,32 +7,38 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "sdkconfig.h"
|
#include "sdkconfig.h"
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_PLATFORM_INFO
|
|
||||||
*
|
|
||||||
* The platform-specific string to insert into the OpenThread version string.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_CONFIG_PLATFORM_INFO CONFIG_OPENTHREAD_PLATFORM_INFO
|
|
||||||
|
|
||||||
/**
|
#if CONFIG_OPENTHREAD_HEADER_CUSTOM
|
||||||
* @def PACKAGE_NAME
|
#include CONFIG_OPENTHREAD_CUSTOM_HEADER_FILE_NAME
|
||||||
*
|
|
||||||
* Define to the full name of this package.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define PACKAGE_NAME CONFIG_OPENTHREAD_PACKAGE_NAME
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_SPINEL_CONFIG_OPENTHREAD_MESSAGE_ENABLE
|
|
||||||
*
|
|
||||||
* Define 1 to enable feeding an OpenThread message to encoder/decoder.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_SPINEL_CONFIG_OPENTHREAD_MESSAGE_ENABLE
|
|
||||||
#define OPENTHREAD_SPINEL_CONFIG_OPENTHREAD_MESSAGE_ENABLE 0
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE
|
||||||
|
*
|
||||||
|
* Specifies the rx frame buffer size used by `SpinelInterface` in RCP host code. This is applicable/used when
|
||||||
|
* `RadioSpinel` platform is used.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE
|
||||||
|
#error `OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE CONFIG_OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @def OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
*
|
||||||
|
* The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.
|
||||||
|
*
|
||||||
|
* Equivalent to macMaxCSMABackoffs in IEEE 802.15.4-2006, default value is 4.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifdef OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
#error `OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT` is redefined.
|
||||||
|
#endif
|
||||||
|
#define OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT CONFIG_OPENTHREAD_SPINEL_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
||||||
|
|
||||||
|
/*----The following options set fixed default values but can be overridden by the user header file.----*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @def OPENTHREAD_SPINEL_CONFIG_RCP_RESTORATION_MAX_COUNT
|
* @def OPENTHREAD_SPINEL_CONFIG_RCP_RESTORATION_MAX_COUNT
|
||||||
*
|
*
|
||||||
@ -44,37 +50,8 @@
|
|||||||
#define OPENTHREAD_SPINEL_CONFIG_RCP_RESTORATION_MAX_COUNT 3
|
#define OPENTHREAD_SPINEL_CONFIG_RCP_RESTORATION_MAX_COUNT 3
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef OPENTHREAD_SPINEL_CONFIG_VENDOR_HOOK_ENABLE
|
||||||
#define OPENTHREAD_SPINEL_CONFIG_VENDOR_HOOK_ENABLE 1
|
#define OPENTHREAD_SPINEL_CONFIG_VENDOR_HOOK_ENABLE 1
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_SPINEL_CONFIG_RCP_CUSTOM_RESTORATION
|
|
||||||
*
|
|
||||||
* Define 1 to call the custom RCP failure handler on RCP failure.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_SPINEL_CONFIG_RCP_CUSTOM_RESTORATION
|
|
||||||
#define OPENTHREAD_SPINEL_CONFIG_RCP_CUSTOM_RESTORATION 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE
|
|
||||||
*
|
|
||||||
* Specifies the rx frame buffer size used by `SpinelInterface` in RCP host code. This is applicable/used when
|
|
||||||
* `RadioSpinel` platform is used.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#define OPENTHREAD_LIB_SPINEL_RX_FRAME_BUFFER_SIZE CONFIG_OPENTHREAD_SPINEL_RX_FRAME_BUFFER_SIZE
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
*
|
|
||||||
* The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.
|
|
||||||
*
|
|
||||||
* Equivalent to macMaxCSMABackoffs in IEEE 802.15.4-2006, default value is 4.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
#define OPENTHREAD_CONFIG_MAC_MAX_CSMA_BACKOFFS_DIRECT CONFIG_OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
@ -86,13 +63,3 @@
|
|||||||
#ifndef OPENTHREAD_SPINEL_CONFIG_COMPATIBILITY_ERROR_CALLBACK_ENABLE
|
#ifndef OPENTHREAD_SPINEL_CONFIG_COMPATIBILITY_ERROR_CALLBACK_ENABLE
|
||||||
#define OPENTHREAD_SPINEL_CONFIG_COMPATIBILITY_ERROR_CALLBACK_ENABLE 1
|
#define OPENTHREAD_SPINEL_CONFIG_COMPATIBILITY_ERROR_CALLBACK_ENABLE 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
|
||||||
* @def OPENTHREAD_SPINEL_CONFIG_MAX_SRC_MATCH_ENTRIES
|
|
||||||
*
|
|
||||||
* Defines size of the local source match table used by RadioSpinel
|
|
||||||
* when OPENTHREAD_SPINEL_CONFIG_RCP_RESTORATION_MAX_COUNT is used.
|
|
||||||
*/
|
|
||||||
#ifndef OPENTHREAD_SPINEL_CONFIG_MAX_SRC_MATCH_ENTRIES
|
|
||||||
#define OPENTHREAD_SPINEL_CONFIG_MAX_SRC_MATCH_ENTRIES 12
|
|
||||||
#endif
|
|
||||||
|
@ -315,7 +315,7 @@ esp_err_t esp_radio_spinel_transmit(uint8_t *frame, uint8_t channel, bool cca, e
|
|||||||
s_transmit_frame.mLength = frame[0];
|
s_transmit_frame.mLength = frame[0];
|
||||||
s_transmit_frame.mPsdu = frame + 1;
|
s_transmit_frame.mPsdu = frame + 1;
|
||||||
s_transmit_frame.mInfo.mTxInfo.mCsmaCaEnabled = cca;
|
s_transmit_frame.mInfo.mTxInfo.mCsmaCaEnabled = cca;
|
||||||
s_transmit_frame.mInfo.mTxInfo.mMaxCsmaBackoffs = CONFIG_OPENTHREAD_MAC_MAX_CSMA_BACKOFFS_DIRECT;
|
s_transmit_frame.mInfo.mTxInfo.mMaxCsmaBackoffs = CONFIG_OPENTHREAD_SPINEL_MAC_MAX_CSMA_BACKOFFS_DIRECT;
|
||||||
s_transmit_frame.mChannel = channel;
|
s_transmit_frame.mChannel = channel;
|
||||||
s_transmit_frame.mInfo.mTxInfo.mRxChannelAfterTxDone = channel;
|
s_transmit_frame.mInfo.mTxInfo.mRxChannelAfterTxDone = channel;
|
||||||
return (s_radio[idx].Transmit(s_transmit_frame) == OT_ERROR_NONE) ? ESP_OK : ESP_FAIL;
|
return (s_radio[idx].Transmit(s_transmit_frame) == OT_ERROR_NONE) ? ESP_OK : ESP_FAIL;
|
||||||
|
@ -102,6 +102,22 @@ The following steps are required to deinitialize the OpenThread stack:
|
|||||||
- Call :cpp:func:`esp_netif_destroy` and :cpp:func:`esp_openthread_netif_glue_deinit` to deinitialize the OpenThread network interface if you have created one.
|
- Call :cpp:func:`esp_netif_destroy` and :cpp:func:`esp_openthread_netif_glue_deinit` to deinitialize the OpenThread network interface if you have created one.
|
||||||
- Call :cpp:func:`esp_openthread_deinit` to deinitialize the OpenThread stack.
|
- Call :cpp:func:`esp_openthread_deinit` to deinitialize the OpenThread stack.
|
||||||
|
|
||||||
|
|
||||||
|
OpenThread Macro Definitions
|
||||||
|
----------------------------
|
||||||
|
|
||||||
|
In the OpenThread protocol stack, defining macros to enable features and configure parameters is a common practice. Users can define macro values to enable or disable specific features and adjust parameters. ESP provides the following methods for defining OpenThread macros:
|
||||||
|
|
||||||
|
- Using configuration menu (``menuconfig``): Some macros are mapped to Kconfig files and can be configured through ``idf.py menuconfig → Component config → OpenThread``. This allows enabling or disabling features and setting related parameters.
|
||||||
|
- Using user-defined header files: Users can create a custom header file and enable it via ``idf.py menuconfig → Component config → OpenThread → Thread Extended Features → Use a header file defined by customer``. The priority of the custom header file is second only to the ``menuconfig``.
|
||||||
|
- Using ``openthread-core-esp32x-xxx-config.h`` for configuration: Some macros have default values set in the OpenThread private header files. These cannot currently be modified through the ``menuconfig``, but can be modified via user-defined header files.
|
||||||
|
- Using OpenThread stack default configurations: Other macros are assigned default values when defined in the OpenThread stack.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
The priority of the above configuration methods, from highest to lowest, is as follows:
|
||||||
|
Configuration Menu → User-defined Header File → openthread-core-esp32x-xxx-config.h → OpenThread Stack Default Configuration
|
||||||
|
|
||||||
The OpenThread Border Router
|
The OpenThread Border Router
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
||||||
|
@ -18,6 +18,12 @@ The :example:`openthread` directory of ESP-IDF examples contains the following a
|
|||||||
- The Thread Radio Co-Processor :example:`openthread/ot_rcp`
|
- The Thread Radio Co-Processor :example:`openthread/ot_rcp`
|
||||||
|
|
||||||
|
|
||||||
|
- :example:`openthread/ot_trel` demonstrates Thread Radio Encapsulation Link (TREL) function. This requires a board equipped with a Wi-Fi module.
|
||||||
|
|
||||||
|
- :example:`openthread/ot_sleepy_device/deep_sleep` demonstrates Thread Deep-sleep function.
|
||||||
|
|
||||||
|
- :example:`openthread/ot_sleepy_device/light_sleep` demonstrates Thread Light-sleep function.
|
||||||
|
|
||||||
API Reference
|
API Reference
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
|
@ -102,6 +102,21 @@ OpenThread API 非线程安全。当从其他任务中调用 OpenThread API 时
|
|||||||
- 如果创建了 OpenThread 网络接口,请调用 :cpp:func:`esp_netif_destroy` 和 :cpp:func:`esp_openthread_netif_glue_deinit` 卸载 OpenThread 协议栈。
|
- 如果创建了 OpenThread 网络接口,请调用 :cpp:func:`esp_netif_destroy` 和 :cpp:func:`esp_openthread_netif_glue_deinit` 卸载 OpenThread 协议栈。
|
||||||
- 调用 :cpp:func:`esp_openthread_deinit` 卸载 OpenThread 协议栈。
|
- 调用 :cpp:func:`esp_openthread_deinit` 卸载 OpenThread 协议栈。
|
||||||
|
|
||||||
|
|
||||||
|
OpenThread 宏定义
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
在 OpenThread 协议栈中,定义宏来进行功能启用以及参数配置是常见行为。在实际使用中,用户可以通过定义宏的值来启用/禁用相关功能和修改参数。乐鑫提供以下方式来进行 OpenThread 宏定义:
|
||||||
|
|
||||||
|
- 使用配置菜单配置 (``menuconfig``):部分宏已经映射到 Kconfig 文件,可通过 ``idf.py menuconfig → Component config → OpenThread`` 启用/关闭相应功能,并配置相关参数。
|
||||||
|
- 使用用户自定义头文件配置:用户可编写头文件,并启用 ``idf.py menuconfig → Component config → OpenThread → Thread Extensioned Features → Use a header file defined by customer`` 来应用自定义头文件。自定义头文件的优先级将仅次于配置菜单。
|
||||||
|
- 使用 ``openthread-core-esp32x-xxx-config.h`` 的配置:部分宏在 OpenThread private 头文件中已经设置默认值,暂不支持通过 menuconfig 修改,但可以通过用户自定义头文件修改。
|
||||||
|
- 使用 OpenThread 协议栈默认配置:对于其他宏,OpenThread 协议栈在定义时已设置默认值。
|
||||||
|
|
||||||
|
.. 注意::
|
||||||
|
|
||||||
|
以上四种配置方式,优先级由高到低为:配置菜单 → 用户自定义头文件 → openthread-core-esp32x-xxx-config.h → OpenThread 协议栈默认配置
|
||||||
|
|
||||||
OpenThread 边界路由器
|
OpenThread 边界路由器
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
|
@ -18,6 +18,12 @@ ESP-IDF 示例目录 :example:`openthread` 包含以下应用程序:
|
|||||||
- Thread 无线电协处理器 (Thread Radio Co-Processor)::example:`openthread/ot_rcp`
|
- Thread 无线电协处理器 (Thread Radio Co-Processor)::example:`openthread/ot_rcp`
|
||||||
|
|
||||||
|
|
||||||
|
- :example:`openthread/ot_trel` 演示了 Thread Radio Encapsulation Link (TREL) 功能。该示例需要在配备 Wi-Fi 模块的开发板上运行。
|
||||||
|
|
||||||
|
- :example:`openthread/ot_sleepy_device/deep_sleep` 演示了 Thread 深度睡眠功能。
|
||||||
|
|
||||||
|
- :example:`openthread/ot_sleepy_device/light_sleep` 演示了 Thread 浅睡眠功能。
|
||||||
|
|
||||||
API参考
|
API参考
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user