1 /* 2 * Copyright (c) 2016, The OpenThread Authors. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * 2. Redistributions in binary form must reproduce the above copyright 10 * notice, this list of conditions and the following disclaimer in the 11 * documentation and/or other materials provided with the distribution. 12 * 3. Neither the name of the copyright holder nor the 13 * names of its contributors may be used to endorse or promote products 14 * derived from this software without specific prior written permission. 15 * 16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 26 * POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29 /** 30 * @file 31 * This file includes miscellaneous compile-time configuration constants for OpenThread. 32 */ 33 34 #ifndef CONFIG_MISC_H_ 35 #define CONFIG_MISC_H_ 36 37 /** 38 * @addtogroup config-misc 39 * 40 * @brief 41 * This module includes configuration variables for Miscellaneous constants. 42 * 43 * @{ 44 * 45 */ 46 47 #include "config/coap.h" 48 #include "config/srp_server.h" 49 50 /** 51 * @def OPENTHREAD_CONFIG_STACK_VENDOR_OUI 52 * 53 * The Organizationally Unique Identifier for the Thread stack. 54 * 55 */ 56 #ifndef OPENTHREAD_CONFIG_STACK_VENDOR_OUI 57 #define OPENTHREAD_CONFIG_STACK_VENDOR_OUI 0x18b430 58 #endif 59 60 /** 61 * @def OPENTHREAD_CONFIG_STACK_VERSION_REV 62 * 63 * The Stack Version Revision for the Thread stack. 64 * 65 */ 66 #ifndef OPENTHREAD_CONFIG_STACK_VERSION_REV 67 #define OPENTHREAD_CONFIG_STACK_VERSION_REV 0 68 #endif 69 70 /** 71 * @def OPENTHREAD_CONFIG_STACK_VERSION_MAJOR 72 * 73 * The Stack Version Major for the Thread stack. 74 * 75 */ 76 #ifndef OPENTHREAD_CONFIG_STACK_VERSION_MAJOR 77 #define OPENTHREAD_CONFIG_STACK_VERSION_MAJOR 0 78 #endif 79 80 /** 81 * @def OPENTHREAD_CONFIG_STACK_VERSION_MINOR 82 * 83 * The Stack Version Minor for the Thread stack. 84 * 85 */ 86 #ifndef OPENTHREAD_CONFIG_STACK_VERSION_MINOR 87 #define OPENTHREAD_CONFIG_STACK_VERSION_MINOR 1 88 #endif 89 90 /** 91 * @def OPENTHREAD_CONFIG_DEVICE_POWER_SUPPLY 92 * 93 * Specifies the default device power supply config. This config MUST use values from `otPowerSupply` enumeration. 94 * 95 * Device manufacturer can use this config to set the power supply config used by the device. This is then used as part 96 * of default `otDeviceProperties` to determine the Leader Weight used by the device. 97 * 98 */ 99 #ifndef OPENTHREAD_CONFIG_DEVICE_POWER_SUPPLY 100 #define OPENTHREAD_CONFIG_DEVICE_POWER_SUPPLY OT_POWER_SUPPLY_EXTERNAL 101 #endif 102 103 /** 104 * @def OPENTHREAD_CONFIG_ECDSA_ENABLE 105 * 106 * Define to 1 to enable ECDSA support. 107 * 108 */ 109 #ifndef OPENTHREAD_CONFIG_ECDSA_ENABLE 110 #define OPENTHREAD_CONFIG_ECDSA_ENABLE 0 111 #endif 112 113 /** 114 * @def OPENTHREAD_CONFIG_DETERMINISTIC_ECDSA_ENABLE 115 * 116 * Define to 1 to generate ECDSA signatures deterministically 117 * according to RFC 6979 instead of randomly. 118 * 119 */ 120 #ifndef OPENTHREAD_CONFIG_DETERMINISTIC_ECDSA_ENABLE 121 #define OPENTHREAD_CONFIG_DETERMINISTIC_ECDSA_ENABLE 1 122 #endif 123 124 /** 125 * @def OPENTHREAD_CONFIG_UPTIME_ENABLE 126 * 127 * Define to 1 to enable tracking the uptime of OpenThread instance. 128 * 129 */ 130 #ifndef OPENTHREAD_CONFIG_UPTIME_ENABLE 131 #define OPENTHREAD_CONFIG_UPTIME_ENABLE OPENTHREAD_FTD 132 #endif 133 134 /** 135 * @def OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE 136 * 137 * Define to 1 to enable the Jam Detection service. 138 * 139 */ 140 #ifndef OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE 141 #define OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE 0 142 #endif 143 144 /** 145 * @def OPENTHREAD_CONFIG_VERHOEFF_CHECKSUM_ENABLE 146 * 147 * Define to 1 to enable Verhoeff checksum utility module. 148 * 149 */ 150 #ifndef OPENTHREAD_CONFIG_VERHOEFF_CHECKSUM_ENABLE 151 #define OPENTHREAD_CONFIG_VERHOEFF_CHECKSUM_ENABLE OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE 152 #endif 153 154 /** 155 * @def OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE 156 * 157 * Define to 1 to enable multiple instance support. 158 * 159 */ 160 #ifndef OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE 161 #define OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_ENABLE 0 162 #endif 163 164 /** 165 * @def OPENTHREAD_CONFIG_MULTIPAN_RCP_ENABLE 166 * 167 * Define to 1 to enable multipan RCP support. 168 * 169 */ 170 #ifndef OPENTHREAD_CONFIG_MULTIPAN_RCP_ENABLE 171 #define OPENTHREAD_CONFIG_MULTIPAN_RCP_ENABLE 0 172 #endif 173 174 /** 175 * @def OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE 176 * 177 * Define to 1 to enable Thread Test Harness reference device support. 178 * 179 */ 180 #ifndef OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE 181 #define OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE 0 182 #endif 183 184 /** 185 * @def OPENTHREAD_CONFIG_UDP_FORWARD_ENABLE 186 * 187 * Define to 1 to enable UDP forward support. 188 * 189 */ 190 #ifndef OPENTHREAD_CONFIG_UDP_FORWARD_ENABLE 191 #define OPENTHREAD_CONFIG_UDP_FORWARD_ENABLE 0 192 #endif 193 194 /** 195 * @def OPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE 196 * 197 * Whether use heap allocator for message buffers. 198 * 199 * @note If this is set, OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS is ignored. 200 * 201 */ 202 #ifndef OPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE 203 #define OPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE 0 204 #endif 205 206 /** 207 * @def OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS 208 * 209 * The number of message buffers in the buffer pool. 210 * 211 */ 212 #ifndef OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS 213 #define OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS 44 214 #endif 215 216 /** 217 * @def OPENTHREAD_CONFIG_MESSAGE_BUFFER_SIZE 218 * 219 * The size of a message buffer in bytes. 220 * 221 * Message buffers store pointers which have different sizes on different 222 * system. Setting message buffer size according to the CPU word length 223 * so that message buffer size will be doubled on 64bit system compared 224 * to that on 32bit system. As a result, the first message always have some 225 * bytes left for small packets. 226 * 227 * Some configuration options can increase the buffer size requirements, including 228 * OPENTHREAD_CONFIG_MLE_MAX_CHILDREN and OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE. 229 * 230 */ 231 #ifndef OPENTHREAD_CONFIG_MESSAGE_BUFFER_SIZE 232 #define OPENTHREAD_CONFIG_MESSAGE_BUFFER_SIZE (sizeof(void *) * 32) 233 #endif 234 235 /** 236 * @def OPENTHREAD_CONFIG_DEFAULT_TRANSMIT_POWER 237 * 238 * The default IEEE 802.15.4 transmit power (dBm). 239 * 240 */ 241 #ifndef OPENTHREAD_CONFIG_DEFAULT_TRANSMIT_POWER 242 #define OPENTHREAD_CONFIG_DEFAULT_TRANSMIT_POWER 0 243 #endif 244 245 /** 246 * @def OPENTHREAD_CONFIG_JOINER_UDP_PORT 247 * 248 * The default Joiner UDP port. 249 * 250 */ 251 #ifndef OPENTHREAD_CONFIG_JOINER_UDP_PORT 252 #define OPENTHREAD_CONFIG_JOINER_UDP_PORT 1000 253 #endif 254 255 /** 256 * @def OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS 257 * 258 * The maximum number of state-changed callback handlers (set using `otSetStateChangedCallback()`). 259 * 260 */ 261 #ifndef OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS 262 #define OPENTHREAD_CONFIG_MAX_STATECHANGE_HANDLERS 1 263 #endif 264 265 /** 266 * @def OPENTHREAD_CONFIG_STORE_FRAME_COUNTER_AHEAD 267 * 268 * The value ahead of the current frame counter for persistent storage. 269 * 270 */ 271 #ifndef OPENTHREAD_CONFIG_STORE_FRAME_COUNTER_AHEAD 272 #define OPENTHREAD_CONFIG_STORE_FRAME_COUNTER_AHEAD 1000 273 #endif 274 275 /** 276 * @def OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS 277 * 278 * Define as 1 to enable builtin-mbedtls. 279 * 280 * Note that the OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS determines whether to use builtin-mbedtls as well as 281 * whether to manage mbedTLS internally, such as memory allocation and debug. 282 * 283 */ 284 #ifndef OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS 285 #define OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS 1 286 #endif 287 288 /** 289 * @def OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS_MANAGEMENT 290 * 291 * Define as 1 to enable builtin mbedtls management. 292 * 293 * OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS_MANAGEMENT determines whether to manage mbedTLS memory 294 * allocation and debug config internally. If not configured, the default is to enable builtin 295 * management if builtin mbedtls is enabled and disable it otherwise. 296 * 297 */ 298 #ifndef OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS_MANAGEMENT 299 #define OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS_MANAGEMENT OPENTHREAD_CONFIG_ENABLE_BUILTIN_MBEDTLS 300 #endif 301 302 /** 303 * @def OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE 304 * 305 * The size of heap buffer when DTLS is enabled. 306 * 307 */ 308 #ifndef OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE 309 #if OPENTHREAD_CONFIG_SRP_SERVER_ENABLE 310 // Internal heap doesn't support size larger than 64K bytes. 311 #define OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE (63 * 1024) 312 #elif OPENTHREAD_CONFIG_COAP_SECURE_API_ENABLE 313 #define OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE (3136 * sizeof(void *)) 314 #else 315 #define OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE (1616 * sizeof(void *)) 316 #endif 317 #endif 318 319 /** 320 * @def OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE_NO_DTLS 321 * 322 * The size of heap buffer when DTLS is disabled. 323 * 324 */ 325 #ifndef OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE_NO_DTLS 326 #if OPENTHREAD_CONFIG_SRP_SERVER_ENABLE 327 // Internal heap doesn't support size larger than 64K bytes. 328 #define OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE_NO_DTLS (63 * 1024) 329 #elif OPENTHREAD_CONFIG_ECDSA_ENABLE 330 #define OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE_NO_DTLS 2600 331 #else 332 #define OPENTHREAD_CONFIG_HEAP_INTERNAL_SIZE_NO_DTLS 384 333 #endif 334 #endif 335 336 /** 337 * @def OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE 338 * 339 * Enable the external heap. 340 * 341 */ 342 #ifndef OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE 343 #define OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE 0 344 #endif 345 346 /** 347 * @def OPENTHREAD_CONFIG_DTLS_APPLICATION_DATA_MAX_LENGTH 348 * 349 * The size of dtls application data when the CoAP Secure API is enabled. 350 * 351 */ 352 #ifndef OPENTHREAD_CONFIG_DTLS_APPLICATION_DATA_MAX_LENGTH 353 #define OPENTHREAD_CONFIG_DTLS_APPLICATION_DATA_MAX_LENGTH 1400 354 #endif 355 356 /** 357 * @def OPENTHREAD_CONFIG_ASSERT_ENABLE 358 * 359 * Define as 1 to enable assert function `OT_ASSERT()` within OpenThread code and its libraries. 360 * 361 */ 362 #ifndef OPENTHREAD_CONFIG_ASSERT_ENABLE 363 #define OPENTHREAD_CONFIG_ASSERT_ENABLE 1 364 #endif 365 366 /** 367 * @def OPENTHREAD_CONFIG_ASSERT_CHECK_API_POINTER_PARAM_FOR_NULL 368 * 369 * Define as 1 to enable assert check of pointer-type API input parameters against null. 370 * 371 * Enabling this feature can increase code-size significantly due to many assert checks added for all API pointer 372 * parameters. It is recommended to enable and use this feature during debugging only. 373 * 374 */ 375 #ifndef OPENTHREAD_CONFIG_ASSERT_CHECK_API_POINTER_PARAM_FOR_NULL 376 #define OPENTHREAD_CONFIG_ASSERT_CHECK_API_POINTER_PARAM_FOR_NULL 0 377 #endif 378 379 /** 380 * @def OPENTHREAD_CONFIG_ENABLE_DEBUG_UART 381 * 382 * Enable the "Debug Uart" platform feature. 383 * 384 * In the embedded world, the CLI application uses a UART as a console 385 * and the NCP application can be configured to use either a UART or 386 * a SPI type device to transfer data to the host. 387 * 388 * The Debug UART is or requires a second uart on the platform. 389 * 390 * The Debug Uart has two uses: 391 * 392 * Use #1 - for random 'debug printf' type messages a developer may need 393 * Use #2 (selected via DEBUG_LOG_OUTPUT) is a log output. 394 * 395 * See #include <openthread/platform/debug_uart.h> for more details 396 */ 397 #ifndef OPENTHREAD_CONFIG_ENABLE_DEBUG_UART 398 #define OPENTHREAD_CONFIG_ENABLE_DEBUG_UART 0 399 #endif 400 401 /** 402 * @def OPENTHREAD_CONFIG_POSIX_SETTINGS_PATH 403 * 404 * The settings storage path on posix platform. 405 * 406 */ 407 #ifndef OPENTHREAD_CONFIG_POSIX_SETTINGS_PATH 408 #define OPENTHREAD_CONFIG_POSIX_SETTINGS_PATH "tmp" 409 #endif 410 411 /** 412 * @def OPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE 413 * 414 * Define to 1 to enable otPlatFlash* APIs to support non-volatile storage. 415 * 416 * When defined to 1, the platform MUST implement the otPlatFlash* APIs instead of the otPlatSettings* APIs. 417 * 418 */ 419 #ifndef OPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE 420 #define OPENTHREAD_CONFIG_PLATFORM_FLASH_API_ENABLE 0 421 #endif 422 423 /** 424 * @def OPENTHREAD_CONFIG_FAILED_CHILD_TRANSMISSIONS 425 * 426 * This setting configures the number of consecutive MCPS.DATA-Confirms having Status NO_ACK 427 * that cause a Child-to-Parent link to be considered broken. 428 * 429 */ 430 #ifndef OPENTHREAD_CONFIG_FAILED_CHILD_TRANSMISSIONS 431 #define OPENTHREAD_CONFIG_FAILED_CHILD_TRANSMISSIONS 4 432 #endif 433 434 /** 435 * @def OPENTHREAD_CONFIG_DEFAULT_SED_BUFFER_SIZE 436 * 437 * Specifies the value used in emitted Connectivity TLV "Rx-off Child Buffer Size" field which indicates the 438 * guaranteed buffer capacity for all IPv6 datagrams destined to a given rx-off-when-idle child. 439 * 440 * Changing this config does not automatically adjust message buffers. Vendors should ensure their device can support 441 * the specified value based on the message buffer model used: 442 * - OT internal message pool (refer to `OPENTHREAD_CONFIG_NUM_MESSAGE_BUFFERS` and `MESSAGE_BUFFER_SIZE`), or 443 * - Heap allocated message buffers (refer to `OPENTHREAD_CONFIG_MESSAGE_USE_HEAP_ENABLE), 444 * - Platform-specific message management (refer to`OPENTHREAD_CONFIG_PLATFORM_MESSAGE_MANAGEMENT`). 445 * 446 */ 447 #ifndef OPENTHREAD_CONFIG_DEFAULT_SED_BUFFER_SIZE 448 #define OPENTHREAD_CONFIG_DEFAULT_SED_BUFFER_SIZE 1280 449 #endif 450 451 /** 452 * @def OPENTHREAD_CONFIG_DEFAULT_SED_DATAGRAM_COUNT 453 * 454 * Specifies the value used in emitted Connectivity TLV "Rx-off Child Datagram Count" field which indicates the 455 * guaranteed queue capacity in number of IPv6 datagrams destined to a given rx-off-when-idle child. 456 * 457 * Similar to `OPENTHREAD_CONFIG_DEFAULT_SED_BUFFER_SIZE`, vendors should ensure their device can support the specified 458 * value based on the message buffer model used. 459 * 460 */ 461 #ifndef OPENTHREAD_CONFIG_DEFAULT_SED_DATAGRAM_COUNT 462 #define OPENTHREAD_CONFIG_DEFAULT_SED_DATAGRAM_COUNT 1 463 #endif 464 465 /** 466 * @def OPENTHREAD_CONFIG_PLATFORM_RADIO_PROPRIETARY_SUPPORT 467 * 468 * Define to 1 to support proprietary radio configurations defined by platform. 469 * 470 * @note If this setting is set to 1, the channel range is defined by the platform. Choosing this option requires 471 * the following configuration options to be defined by Platform: 472 * OPENTHREAD_CONFIG_PLATFORM_RADIO_PROPRIETARY_CHANNEL_PAGE, 473 * OPENTHREAD_CONFIG_PLATFORM_RADIO_PROPRIETARY_CHANNEL_MIN, 474 * OPENTHREAD_CONFIG_PLATFORM_RADIO_PROPRIETARY_CHANNEL_MAX and, 475 * OPENTHREAD_CONFIG_PLATFORM_RADIO_PROPRIETARY_CHANNEL_MASK. 476 * 477 * @def OPENTHREAD_CONFIG_RADIO_915MHZ_OQPSK_SUPPORT 478 * 479 * Define to 1 to support OQPSK modulation in 915MHz frequency band. The physical layer parameters are defined in 480 * section 6 of IEEE802.15.4-2006. 481 * 482 * @note If this setting is set to 1, the IEEE 802.15.4 channel range is 1 to 10. 483 * 484 * @def OPENTHREAD_CONFIG_RADIO_2P4GHZ_OQPSK_SUPPORT 485 * 486 * Define to 1 to support OQPSK modulation in 2.4GHz frequency band. The physical layer parameters are defined in 487 * section 6 of IEEE802.15.4-2006. 488 * 489 * @note If this settings is set to 1, the IEEE 802.15.4 channel range is 11 to 26. 490 * 491 * @note At least one of these settings must be set to 1. The platform must support the modulation and frequency 492 * band configured by the setting. 493 */ 494 #ifndef OPENTHREAD_CONFIG_PLATFORM_RADIO_PROPRIETARY_SUPPORT 495 #ifndef OPENTHREAD_CONFIG_RADIO_915MHZ_OQPSK_SUPPORT 496 #ifndef OPENTHREAD_CONFIG_RADIO_2P4GHZ_OQPSK_SUPPORT 497 #define OPENTHREAD_CONFIG_PLATFORM_RADIO_PROPRIETARY_SUPPORT 0 498 #define OPENTHREAD_CONFIG_RADIO_915MHZ_OQPSK_SUPPORT 0 499 #define OPENTHREAD_CONFIG_RADIO_2P4GHZ_OQPSK_SUPPORT 1 500 #endif 501 #endif 502 #endif 503 504 /** 505 * @def OPENTHREAD_CONFIG_DEFAULT_CHANNEL 506 * 507 * The default IEEE 802.15.4 channel. 508 * 509 */ 510 #ifndef OPENTHREAD_CONFIG_DEFAULT_CHANNEL 511 #if OPENTHREAD_CONFIG_RADIO_2P4GHZ_OQPSK_SUPPORT 512 #define OPENTHREAD_CONFIG_DEFAULT_CHANNEL 11 513 #else 514 #if OPENTHREAD_CONFIG_RADIO_915MHZ_OQPSK_SUPPORT 515 #define OPENTHREAD_CONFIG_DEFAULT_CHANNEL 1 516 #endif // OPENTHREAD_CONFIG_RADIO_915MHZ_OQPSK_SUPPORT 517 #endif // OPENTHREAD_CONFIG_RADIO_2P4GHZ_OQPSK_SUPPORT 518 #endif // OPENTHREAD_CONFIG_DEFAULT_CHANNEL 519 520 /** 521 * @def OPENTHREAD_CONFIG_OTNS_ENABLE 522 * 523 * Define to 1 to enable OTNS interactions. 524 * 525 */ 526 #ifndef OPENTHREAD_CONFIG_OTNS_ENABLE 527 #define OPENTHREAD_CONFIG_OTNS_ENABLE 0 528 #endif 529 530 /** 531 * @def OPENTHREAD_CONFIG_DUA_ENABLE 532 * 533 * Define as 1 to support Thread 1.2 Domain Unicast Address feature. 534 * 535 */ 536 #ifndef OPENTHREAD_CONFIG_DUA_ENABLE 537 #define OPENTHREAD_CONFIG_DUA_ENABLE 0 538 #endif 539 540 /** 541 * @def OPENTHREAD_CONFIG_MLR_ENABLE 542 * 543 * Define as 1 to support Thread 1.2 Multicast Listener Registration feature. 544 * 545 */ 546 #ifndef OPENTHREAD_CONFIG_MLR_ENABLE 547 #define OPENTHREAD_CONFIG_MLR_ENABLE 0 548 #endif 549 550 /** 551 * @def OPENTHREAD_CONFIG_NEIGHBOR_DISCOVERY_AGENT_ENABLE 552 * 553 * Define as 1 to enable support for Neighbor Discover Agent. 554 * 555 */ 556 #ifndef OPENTHREAD_CONFIG_NEIGHBOR_DISCOVERY_AGENT_ENABLE 557 #define OPENTHREAD_CONFIG_NEIGHBOR_DISCOVERY_AGENT_ENABLE 0 558 #endif 559 560 /** 561 * @def OPENTHREAD_CONFIG_MULTIPLE_STATIC_INSTANCE_ENABLE 562 * 563 * Define to 1 to enable multiple static instance support. 564 * 565 */ 566 #ifndef OPENTHREAD_CONFIG_MULTIPLE_STATIC_INSTANCE_ENABLE 567 #define OPENTHREAD_CONFIG_MULTIPLE_STATIC_INSTANCE_ENABLE 0 568 #endif 569 570 /** 571 * @def OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_NUM 572 * 573 * Define number of OpenThread instance for static allocation buffer. 574 * 575 */ 576 #ifndef OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_NUM 577 #define OPENTHREAD_CONFIG_MULTIPLE_INSTANCE_NUM 3 578 #endif 579 580 /** 581 * @def OPENTHREAD_CONFIG_ALLOW_EMPTY_NETWORK_NAME 582 * 583 * Define as 1 to enable support for an empty network name (zero-length: "") 584 * 585 */ 586 #ifndef OPENTHREAD_CONFIG_ALLOW_EMPTY_NETWORK_NAME 587 #define OPENTHREAD_CONFIG_ALLOW_EMPTY_NETWORK_NAME 0 588 #endif 589 590 /** 591 * @def OPENTHREAD_CONFIG_OPERATIONAL_DATASET_AUTO_INIT 592 * 593 * Define as 1 to enable support for locally initializing an Active Operational Dataset. 594 * 595 * @note This functionality is deprecated and not recommended. 596 * 597 */ 598 #ifndef OPENTHREAD_CONFIG_OPERATIONAL_DATASET_AUTO_INIT 599 #define OPENTHREAD_CONFIG_OPERATIONAL_DATASET_AUTO_INIT 0 600 #endif 601 602 /** 603 * @def OPENTHREAD_CONFIG_BLE_TCAT_ENABLE 604 * 605 * Define to 1 to enable TCAT over BLE support. 606 * 607 */ 608 #ifndef OPENTHREAD_CONFIG_BLE_TCAT_ENABLE 609 #define OPENTHREAD_CONFIG_BLE_TCAT_ENABLE 0 610 #endif 611 612 /** 613 * @def OPENTHREAD_CONFIG_PLATFORM_LOG_CRASH_DUMP_ENABLE 614 * 615 * Define to 1 to enable crash dump logging. 616 * 617 * On platforms that support crash dump logging, this feature will log a crash dump using the OT Debug Log service. 618 * 619 * Logging a crash dump requires the platform to implement the `otPlatLogCrashDump()` function. 620 * 621 */ 622 #ifndef OPENTHREAD_CONFIG_PLATFORM_LOG_CRASH_DUMP_ENABLE 623 #define OPENTHREAD_CONFIG_PLATFORM_LOG_CRASH_DUMP_ENABLE 0 624 #endif 625 626 /** 627 * @} 628 * 629 */ 630 631 #endif // CONFIG_MISC_H_ 632