| # |
| # Copyright (c) 2021, 2025 Project CHIP Authors |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| menuconfig CHIP |
| bool "Matter protocol stack" |
| help |
| Enables Matter libraries required for the Matter protocol stack to work. |
| |
| if CHIP |
| |
| config CHIP_WIFI |
| bool "Enable Wi-Fi support" |
| help |
| Enable Wi-Fi support. |
| |
| config CHIP_ETHERNET |
| bool "Enable Ethernet support" |
| help |
| Enable Ethernet support. |
| |
| config CHIP_APP_LOG_LEVEL |
| int "Logging level in application" |
| default LOG_DEFAULT_LEVEL if LOG |
| default 4 # detail logging |
| help |
| Sets the logging level in the Matter application. Use this configuration |
| option only within the application. To set the logging level for the |
| Matter stack, use the MATTER_LOG_LEVEL configuration option. |
| |
| config MATTER_LOG_LEVEL |
| int "Logging level in Matter stack" |
| default 4 |
| help |
| Sets the logging level in Matter stack. |
| |
| config CHIP_LOG_SIZE_OPTIMIZATION |
| bool "Disable some detailed logs to decrease flash usage" |
| help |
| Disables some log levels for specific Matter log modules that provide |
| information that is too detailed to be used in most cases. You can find |
| full configuration enabled by this option in the |
| platform CHIPPlatformConfig.h file. |
| |
| config CHIP_DEBUG_SYMBOLS |
| bool "Generate debug symbols" |
| default y |
| help |
| Enables building the application with debug symbols. |
| |
| config CHIP_OPTIMIZE_DEBUG_LEVEL |
| string "Debug optimization level" |
| depends on DEBUG |
| default "0" |
| help |
| Set the optimization level to use when building with debug symbols. |
| This value is used with the -O compiler flag (e.g., -Og, -O0, -O1, -O2, -O3, -Os, -Oz). |
| |
| config CHIP_STRIP_SYMBOLS |
| bool "Strip symbols" |
| help |
| Remove all symbol table and relocation information from the binary. |
| |
| config CHIP_EXAMPLE_DEVICE_INFO_PROVIDER |
| bool "Include default device information provider build" |
| default y |
| help |
| Enables the default device information provider implementation for Matter |
| examples. |
| |
| config CHIP_IPV4 |
| bool "IPv4 support for Matter" |
| help |
| If disabled, it allows to build the platform application |
| with IPv4 support independently of the Matter stack still |
| running over IPv6. |
| |
| # Device and firmware identifers |
| |
| config CHIP_DEVICE_VENDOR_ID |
| int "Device Vendor ID" |
| default 65521 # 0xFFF1 |
| range 0 65535 |
| help |
| Provides the 16-bit numeric identifier of the device manufacturer, |
| assigned by Connectivity Standards Alliance. The identifier is exposed as |
| an attribute of the Basic Informationcluster, and included in the header |
| of the generated Matter Over-the-air (OTA) update image. |
| |
| config CHIP_DEVICE_VENDOR_NAME |
| string "Device vendor name" |
| help |
| Provides a human-readable name of the device manufacturer. The name is |
| exposed as an attribute of the Basic Information cluster. |
| (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_PRODUCT_ID |
| int "Product ID" |
| default 32768 # 0x8000 |
| range 0 65535 |
| help |
| Provides the 16-bit numeric identifier of the product, assigned by the |
| device manufacturer. The identifier is exposed as an attribute of the |
| Basic Information cluster, and included in the header of the generated |
| Matter over-the-air (OTA) update image. |
| |
| config CHIP_DEVICE_PRODUCT_NAME |
| string "Product name" |
| default "not-specified" |
| help |
| Provides a human-readable product name, such as the model number, assigned |
| by the device manufacturer. The name is exposed as an attribute of the |
| Basic Information cluster. (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_HARDWARE_VERSION |
| int "Hardware version" |
| default 0 |
| help |
| Provides the 16-bit hardware version number, assigned by the device |
| manufacturer. The number is exposed as an attribute of the Basic |
| Information cluster. |
| |
| config CHIP_DEVICE_HARDWARE_VERSION_STRING |
| string "Hardware version string" |
| default "prerelease" |
| help |
| Provides a human-readable representation of the hardware version number. |
| This must be an ASCII string of a length between 1 and 64 characters. The |
| hardware version string is exposed as an attribute of the Basic |
| Information cluster. (Macro value is in quotes.) |
| |
| if "$(APPVERSION)"="" |
| config CHIP_DEVICE_SOFTWARE_VERSION |
| int "Software version" |
| default 0 |
| range 0 4294967295 |
| help |
| Provides the 32-bit software version number. The number is exposed as an |
| attribute of the Basic Information cluster, and included in the header of |
| the generated Matter Over-the-air (OTA) update image. The exact numbering |
| scheme is up to the device manufacturer. However, when using the Matter |
| OTA mechanism, only updates to higher versions than the current one are |
| accepted. |
| |
| config CHIP_DEVICE_SOFTWARE_VERSION_STRING |
| string "Software version string" |
| default "prerelease" |
| help |
| Provides a human-readable representation of the software version number. |
| This must be an ASCII string of a length between 1 and 64 characters. The |
| software version string is exposed as an attribute of the Basic |
| Information cluster, and included in the header of the generated Matter |
| over-the-air (OTA) update image. (Macro value is in quotes.) |
| endif |
| |
| config CHIP_DEVICE_MANUFACTURING_DATE |
| string "Manufacturing date (ISO 8601 format)" |
| default "2022-01-01" |
| help |
| Provides the device manufacturing date in the ISO 8601 format: YYYY-MM-DD. |
| (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_SERIAL_NUMBER |
| string "Device serial number" |
| default "11223344556677889900" |
| help |
| Provides a human-readable representation of the device serial number that |
| uniquely identifies the device. This must be an ASCII string of no more |
| than 32 characters. (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_ROTATING_DEVICE_UID |
| string "Rotating device ID unique ID (HEX format)" |
| default "91a9c12a7c80700a31ddcfa7fce63e44" |
| help |
| Provides a unique identifier of the device. This ID is used to derive the |
| rotating device identifier, which allows commissioners to discover the |
| device in a privacy-preserving way. The identifier must be a string of at |
| least 16 bytes encoded in HEX. (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_TYPE |
| int "Primary device type" |
| default 65535 |
| range 0 65535 |
| help |
| Provides the primary device type implemented by the node. This must be one |
| of the device type identifiers defined in the Matter Device Library |
| specification. |
| |
| config CHIP_DEVICE_DISCRIMINATOR |
| hex "Device pairing discriminator" |
| default 0xF00 |
| help |
| Provides a 12-bit identifier that is used to discover the device during |
| the commissioning. |
| |
| config CHIP_DEVICE_SPAKE2_PASSCODE |
| int "SPAKE2+ passcode" |
| default 20202021 |
| range 1 99999998 |
| help |
| Provides a pairing passcode. This is a 27-bit unsigned integer that serves |
| as a proof of possession during the commissioning. The passcode must be |
| a value between 1 and 99999998, excluding the following invalid passcodes: |
| 00000000, 11111111, 22222222, 33333333, 44444444, 55555555, |
| 66666666, 77777777, 88888888, 99999999, 12345678, 87654321. |
| |
| config CHIP_DEVICE_SPAKE2_IT |
| int "SPAKE2+ iteration count" |
| default 1000 |
| help |
| Provides the SPAKE2+ iteration count, which is one of the input parameters |
| for the PBKDF operation, used to generate the SPAKE2+ verifier. |
| |
| config CHIP_DEVICE_SPAKE2_SALT |
| string "SPAKE2+ salt (base64 format)" |
| default "U1BBS0UyUCBLZXkgU2FsdA==" |
| help |
| Provides the SPAKE2+ salt, which is one of the input parameters for the |
| PBKDF operation, used to generate the SPAKE2+ verifier. The salt must be |
| of a length between 16 and 32 bytes and it should be randomly generated |
| for each SPAKE2+ passcode. (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_SPAKE2_TEST_VERIFIER |
| string "SPAKE2+ verifier for testing purposes (base64 format)" |
| default "uWFwqugDNGiEck/po7KHwwMwwqZgN10XuyBajPGuyzUEV/iree4lOrao5GuwnlQ65CJzbeUB49s31EH+NEkg0JVI5MGCQGMMT/SRPFNRODm3wH/MBiehuFc6FJ/NH6Rmzw==" |
| help |
| Provides the SPAKE2+ verifier that was generated using the configured |
| SPAKE2+ passcode, iteration count and salt. This configuration option can |
| be used for development or testing purposes. The default value was |
| generated using the following command: |
| ./scripts/tools/spake2p/spake2p.py gen-verifier -i 1000 -s U1BBS0UyUCBLZXkgU2FsdA== -p 20202021 |
| (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_ENABLE_KEY |
| string "Enable Key for triggering test actions (HEX format)" |
| default "00112233445566778899AABBCCDDEEFF" |
| help |
| Provides the Enable Key, which is a 16-byte value encoded in HEX that |
| must be provided in the TestEventTrigger command to trigger a requested |
| test action. This value is used during certification tests, and should not |
| be present on devices in production environment. |
| (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_PRODUCT_FINISH |
| string "Description of the product's external case finish method" |
| default "other" |
| help |
| provides a description of the product's external case finish method. |
| Possible values: |
| other; matte; satin; polished; rugged; fabric |
| (Macro value is in quotes.) |
| |
| config CHIP_DEVICE_PRODUCT_COLOR |
| string "Description of the product's primary color" |
| help |
| provides a description of the product's primary color. |
| Possible values: |
| black; navy; green; teal; maroon; purple; olive; gray; blue; lime; |
| aqua; red; fuchsia; yellow; white; nickel; chrome; brass; cooper; |
| silver; gold. (Macro value is in quotes.) |
| |
| # Matter optional features and parameters |
| |
| config CHIP_ENABLE_PAIRING_AUTOSTART |
| bool "Open commissioning window on boot" |
| help |
| Opens the commissioning window automatically at application boot time if |
| the node is not yet commissioned. |
| |
| config CHIP_OTA_REQUESTOR |
| bool "OTA Software Update Requestor" |
| help |
| Enables over-the-air (OTA) Requestor role that allows the node to perform |
| Device Firmware Upgrade by quering and downloading a new firmware image |
| from a peer OTA Provider node. |
| |
| config CHIP_OTA_REQUESTOR_BUFFER_SIZE |
| int "OTA Requestor image buffer size" |
| default 256 |
| depends on CHIP_OTA_REQUESTOR |
| help |
| Configures the size of the buffer used by OTA Requestor when downloading |
| and writing a new firmware image to flash. |
| |
| config CHIP_OTA_REQUESTOR_REBOOT_ON_APPLY |
| bool "Auto-reboot when firmware update is applied" |
| default y |
| depends on CHIP_OTA_REQUESTOR |
| help |
| Reboots the device automatically after downloading a new firmware update |
| to swap the old and the new firmware images. The reboot happens only when |
| a user consents to apply the firmware update. |
| |
| choice CHIP_OTA_REQUEST_UPGRADE_TYPE |
| prompt "Type of the upgrade to apply on new images" |
| default CHIP_OTA_REQUEST_UPGRADE_TEST |
| depends on CHIP_OTA_REQUESTOR |
| |
| config CHIP_OTA_REQUEST_UPGRADE_PERMANENT |
| bool "Mark the image as permanent" |
| help |
| The upgrade will be permanent on the next reboot. |
| No coming back to the old image. |
| |
| config CHIP_OTA_REQUEST_UPGRADE_TEST |
| bool "Mark the image as a test" |
| help |
| The upgrade will be marked as a test. |
| Image will be run on the next reboot, if confirmed it |
| becomes permanent, otherwise the new image is reverted. |
| |
| endchoice |
| |
| config CHIP_OTA_IMAGE_BUILD |
| bool "Generate OTA image" |
| help |
| Enables building Matter over-the-air (OTA) update image. |
| |
| config CHIP_ROTATING_DEVICE_ID |
| bool "Generate rotating device ID" |
| help |
| Enables the rotating device identifier that provides a non-trackable |
| identifier. The identifier is unique per device and rotates at pre-defined |
| moments. |
| |
| config CHIP_COMMISSIONABLE_DEVICE_TYPE |
| bool "Include device type subtype in commissionable node discovery record" |
| help |
| Includes the device type subtype in the commissionable node discovery |
| record. This allows a commissioner to find the node when looking for |
| a specific device type. |
| |
| config CHIP_ENABLE_ACL_EXTENSIONS |
| bool "Enable Access Control's Extension attribute into FeatureMap" |
| help |
| Set Access Control's Extension attribute bit into the FeatureMap |
| attribute of the same cluster. |
| |
| config CHIP_EXTENDED_DISCOVERY |
| bool "Extended discovery" |
| help |
| Enables advertising of the commissionable node service even if the node |
| does not have the commissioning window open. |
| |
| config CHIP_OPERATIONAL_TIME_SAVE_INTERVAL |
| int "Total operational time save interval (hours unit)" |
| default 10 |
| range 1 4294967295 |
| help |
| Provides an interval in hours with which the node operational time is |
| saved to the flash memory. The provided value is a trade-off between |
| performing frequent saves to know the precise operational time (in case of |
| device reboot) and maximizing the flash memory lifetime. |
| |
| choice CHIP_CRYPTO |
| prompt "CHIP Crypto selection" |
| default CHIP_CRYPTO_MBEDTLS |
| |
| config CHIP_CRYPTO_MBEDTLS |
| bool "CHIP MbedTLS crypto" |
| help |
| Enables the implementation of the Matter cryptographic operations that is |
| based on the mbedTLS crypto API. |
| |
| config CHIP_CRYPTO_PLATFORM |
| bool "CHIP platform crypto" |
| help |
| Enables the implementation of the Matter cryptographic operations that is |
| based on the platform crypto API. |
| |
| config CHIP_CRYPTO_PSA |
| bool "CHIP PSA crypto" |
| help |
| Enables the implementation of the Matter cryptographic operations that is |
| based on the PSA crypto API. |
| |
| endchoice |
| |
| choice CHIP_CRYPTO_SPAKE2P |
| prompt "CHIP Crypto SPAKE2+ Selection" |
| default CHIP_CRYPTO_SPAKE2P_MBEDTLS |
| |
| config CHIP_CRYPTO_SPAKE2P_MBEDTLS |
| bool "SPAKE2+ default mbedtls" |
| help |
| Enables the implementation of the SPAKE2+ protocol |
| based on the mbedTLS crypto API. |
| |
| config CHIP_CRYPTO_SPAKE2P_PSA |
| bool "SPAKE2+ default PSA" |
| help |
| Enables the implementation of the SPAKE2+ protocol |
| based on the PSA API. |
| |
| config CHIP_CRYPTO_SPAKE2P_CUSTOM |
| bool "SPAKE2+ custom" |
| help |
| Enables the implementation of the SPAKE2+ protocol |
| based on custom API. |
| |
| endchoice |
| |
| config CHIP_CRYPTO_PSA_AEAD_SINGLE_PART |
| bool "Use PSA AEAD single-part API" |
| depends on CHIP_CRYPTO_PSA |
| help |
| When enabled, the single-part AEAD API is used with a large buffer |
| allocated on the stack. Otherwise, the multipart API path is used. |
| |
| config CHIP_PERSISTENT_SUBSCRIPTIONS |
| bool "Persistent subscriptions" |
| help |
| Persists Matter subscriptions on the publisher node. This feature allows |
| a Matter node to faster get back to the previous operation after it went |
| offline, for example, due to a power outage. That is, the node can use the |
| persisted subscription information to quickly re-establish the previous |
| subscriptions instead of waiting for the subscriber node to realize that |
| the publisher is alive again. |
| |
| config CHIP_STATISTICS |
| bool "Resource usage statistics" |
| help |
| Enables tracking the current and the top usage of critical resources used |
| by the Matter stack, such as packet buffers, timers or exchange contexts. |
| |
| config CHIP_LIB_SHELL |
| bool "Matter shell commands" |
| help |
| Enables linking the application with the library that contains Matter |
| shell commands. |
| |
| config CHIP_PROJECT_CONFIG |
| string "Project configuration file for Matter" |
| help |
| Provides a path to the project configuration file for Matter. The path can |
| be either absolute or relative to the application directory. If specified, |
| Matter's generic configuration files will include the project |
| configuration file that can be used to override any of Matter's default or |
| platform-specific settings. (Macro value is in quotes.) |
| |
| config CHIP_STACK_LOCK_TRACKING |
| string "Matter stack lock tracking" |
| default "none" |
| help |
| Enable Matter stack lock tracking. (Macro value is in quotes.) |
| |
| config CHIP_NFC_ONBOARDING_PAYLOAD |
| bool "Share onboarding payload in NFC tag" |
| help |
| Enables sharing onboarding payload in the NFC tag. |
| |
| # Thread network features |
| |
| if OPENTHREAD |
| |
| config CHIP_ENABLE_DNSSD_SRP |
| bool "OpenThread Service Registration Protocol" |
| default y |
| help |
| Enables using the OpenThread SRP client for the Matter service |
| advertising. |
| |
| config CHIP_ENABLE_DNS_CLIENT |
| bool "OpenThread DNS client" |
| default y |
| help |
| Enables using the OpenThread DNS client for the Matter service discovery. |
| |
| config CHIP_SECONDARY_NETWORK_IF |
| bool "Secondary Network Interface" |
| help |
| Enable a secondary network commissioning interface. |
| |
| config CHIP_THREAD_NETWORK_ENDPOINT_ID |
| int "Thread Network Endpoint ID" |
| default 2 if CHIP_SECONDARY_NETWORK_IF |
| default 0 |
| help |
| Specify the endpoint ID of the Thread network. |
| |
| config CHIP_OPENTHREAD_FTD |
| bool "Enable OpenThread Full Thread Device (FTD) support" |
| default y |
| help |
| Configure the platform as an OpenThread Full Thread Device (FTD). |
| |
| config CHIP_USE_OT_ENDPOINT |
| bool "Use OpenThread TCP/UDP stack directly" |
| help |
| Use the OpenThread TCP/UDP stack directly instead of another networking stack like LwIP. |
| This is useful for platforms that do not have LwIP but do have OpenThread. |
| |
| endif # NET_L2_OPENTHREAD |
| |
| config CHIP_ENABLE_ICD_SUPPORT |
| bool "Matter Intermittently Connected Devices support" |
| help |
| Enables the Intermittently Connected Device (ICD) support in Matter. |
| |
| if CHIP_ENABLE_ICD_SUPPORT |
| |
| config CHIP_ICD_SLOW_POLL_INTERVAL |
| int "Intermittently Connected Device slow polling interval (ms)" |
| default 30000 if CHIP_ICD_LIT_SUPPORT |
| default 1000 |
| help |
| Provides the Intermittently Connected Device slow polling interval in milliseconds while the |
| device is in the idle mode. It determines the fastest frequency at which the device will be able |
| to receive the messages in the idle mode. |
| |
| config CHIP_ICD_SIT_SLOW_POLL_LIMIT |
| int "Intermittently Connected Device slow polling interval limit for device in SIT mode (ms)" |
| default 15000 |
| range 0 15000 |
| help |
| Provides the limit for Intermittently Connected Device slow polling interval in milliseconds while the |
| device is in the SIT mode. By spec, this value cannot exceed 15 s (spec 9.16.1.5). This value can be |
| used for the LIT device, to limit the slow poll interval used while temporarily working in the SIT mode. |
| |
| config CHIP_ICD_FAST_POLLING_INTERVAL |
| int "Intermittently Connected Device fast polling interval (ms)" |
| default 200 |
| help |
| Provides the Intermittently Connected Device fast polling interval in milliseconds while the |
| device is in the active mode. It determines the fastest frequency at which the device will be able |
| to receive the messages in the active mode. The CHIP_ICD_FAST_POLLING_INTERVAL shall be smaller than |
| CHIP_ICD_ACTIVE_MODE_DURATION. |
| |
| config CHIP_ICD_IDLE_MODE_DURATION |
| int "Intermittently Connected Device idle mode duration (s)" |
| default 300 if CHIP_ICD_LIT_SUPPORT |
| default 120 |
| help |
| Provides the Intermittently Connected Device idle mode duration in seconds. |
| It determines the maximum amount of time the device can stay in the idle mode, which means the |
| device may be unreachable and not able to receive messages. |
| |
| config CHIP_ICD_ACTIVE_MODE_DURATION |
| int "Intermittently Connected Device active mode duration (ms)" |
| default 300 |
| help |
| Provides the Intermittently Connected Device active mode duration in milliseconds. |
| It determines the minimum amount of time the device shall stay in the active mode. |
| |
| config CHIP_ICD_ACTIVE_MODE_THRESHOLD |
| int "Intermittently Connected Device active mode threshold (ms)" |
| default 5000 if CHIP_ICD_LIT_SUPPORT |
| default 300 |
| help |
| Provides the Intermittently Connected Device active mode threshold in milliseconds. |
| It determines the minimum amount of time the device shall stay in the active mode after the network activity. |
| For LIT devices it cannot be set to a value smaller than 5000 ms. |
| |
| config CHIP_ICD_LIT_SUPPORT |
| bool "Intermittently Connected Device Long Idle Time support" |
| select CHIP_ICD_CHECK_IN_SUPPORT |
| select CHIP_ICD_UAT_SUPPORT |
| help |
| Enables the Intermittently Connected Device Long Idle Time support in Matter. |
| It also selects the ICD Check-In and UAT features support that are mandatory for LIT device. |
| |
| config CHIP_ICD_CHECK_IN_SUPPORT |
| bool "Intermittently Connected Device Check-In protocol support" |
| help |
| Enables the Check-In protocol support in Matter. It allows an ICD device to notify the registered |
| ICD clients that it is available for communication. |
| |
| config CHIP_ICD_UAT_SUPPORT |
| bool "Intermittently Connected Device User Active Mode Trigger support" |
| help |
| Enables the User Active Mode Trigger (UAT) support in Matter. It allows the User to use application specific |
| means (e.g. button press) to trigger an ICD device to enter the active mode and become responsive. |
| |
| config CHIP_ICD_DSLS_SUPPORT |
| bool "Intermittently Connected Device Dynamic SIT LIT support" |
| depends on CHIP_ICD_LIT_SUPPORT |
| help |
| Enables the Dynamic SIT LIT support in Matter. It allows the application to dynamically switch between |
| SIT and LIT modes, as long as the requirements for these modes are met (e.g. device has at least one active ICD client). |
| |
| config CHIP_ICD_CLIENTS_PER_FABRIC |
| int "Intermittently Connected Device number of clients per fabric" |
| default 2 |
| depends on CHIP_ICD_CHECK_IN_SUPPORT |
| help |
| Provides the Intermittently Connected Device number of clients per fabric. It determines the maximum number |
| of clients per fabric that can be registered to receive notification from a device if their subscription is lost. |
| |
| config CHIP_ICD_REPORT_ON_ACTIVE_MODE |
| bool "Intermittently Connected Device report on active mode" |
| help |
| Enables an ICD to send data report to the subscribers on entering the active mode. |
| |
| endif # CHIP_ENABLE_ICD_SUPPORT |
| |
| config CHIP_DEVICE_CONFIG_BLE_FAST_ADVERTISING_TIMEOUT |
| int "Timeout (ms) for switching from fast to slow advertising" |
| default 30000 |
| help |
| The amount of time in milliseconds after which BLE should change its advertisements |
| from fast interval to slow interval. |
| |
| config CHIP_DEVICE_CONFIG_BLE_ADVERTISING_TIMEOUT |
| int "BLE advertising timeout" |
| default 900000 |
| help |
| The amount of time in milliseconds after which BLE advertisement should be disabled, counting |
| from the moment of slow advertisement commencement. |
| |
| config CHIP_DEVICE_CONFIG_ENABLE_SED |
| bool "Enable Sleepy End Device (SED) support" |
| help |
| Enable Sleepy End Device configuration. |
| |
| config CHIP_THREAD_SSED |
| bool "Thread Synchronized Sleepy End Device support" |
| depends on OPENTHREAD_CSL_RECEIVER && CHIP_ENABLE_ICD_SUPPORT |
| help |
| Enables the Thread Synchronized Sleepy End Device support in Matter. |
| |
| config CHIP_OPENTHREAD_CONFIG |
| string "Custom OpenThread configuration file" |
| depends on OPENTHREAD |
| help |
| Provides a path to an OpenThread configuration file. The path can be |
| either absolute or relative to the application directory. When this option |
| is specified, it replaces the OpenThread configuration file supplied by |
| the platform. (Macro value is in quotes.) |
| |
| # Wi-Fi network features |
| |
| config CHIP_ENABLE_WIFI_STATION |
| bool "Enable Wi-Fi Station mode" |
| depends on CHIP_WIFI |
| help |
| Enable Wi-Fi station (client) mode for Matter-over-Wi-Fi devices. |
| This allows the device to connect to an existing Wi-Fi network. |
| |
| config CHIP_ENABLE_WIFI_AP |
| bool "Enable Wi-Fi Access Point mode" |
| depends on CHIP_WIFI |
| help |
| Enable Wi-Fi Access Point mode for SoftAP commissioning. |
| This allows the device to create its own Wi-Fi network for onboarding. |
| |
| config CHIP_WIFI_CONNECTION_RECOVERY_MINIMUM_INTERVAL |
| int "Define the minimum connection recovery time interval in milliseconds" |
| depends on CHIP_WIFI |
| default 500 |
| help |
| Specifies the minimum connection recovery interval (in milliseconds). |
| |
| config CHIP_WIFI_CONNECTION_RECOVERY_MAXIMUM_INTERVAL |
| int "Define the maximum connection recovery time interval in milliseconds" |
| depends on CHIP_WIFI |
| default 3600000 # 1 hour |
| help |
| Specifies the maximum connection recovery interval (in milliseconds). |
| |
| config CHIP_WIFI_CONNECTION_RECOVERY_MAX_RETRIES_NUMBER |
| int "Define the maximum amount of connection recovery occurrences" |
| depends on CHIP_WIFI |
| default 0 |
| help |
| Specifies the maximum number of connection recovery attempts. |
| If set to 0, no limitation is applied and attempts |
| to recover the connection are performed indefinitely. |
| |
| config CHIP_WIFI_CONNECTION_RECOVERY_JITTER |
| int "Define the connection recovery jitter in milliseconds" |
| depends on CHIP_WIFI |
| default 2000 |
| help |
| Specifies the maximum connection recovery jitter interval (in milliseconds). |
| Once the wait time reaches the current maximum value (defined by CHIP_WIFI_CONNECTION_RECOVERY_MAXIMUM_INTERVAL), |
| a random jitter interval is added to it to avoid periodicity. The random jitter is selected |
| within a range of +/- the value of this option. |
| |
| # Platform additions and configuration |
| |
| config CHIP_SYSTEM_THREAD_LOCAL_STORAGE |
| bool "Enable thread-local storage for Matter System Layer" |
| default y |
| help |
| Enable use of thread-local storage (TLS) in the Matter System Layer. |
| |
| config CHIP_TASK_PRIORITY |
| int "Matter task priority" |
| default 1 |
| help |
| Set the thread priority for the Matter main task (CHIP event loop). |
| Note: For Zephyr, this value is passed to K_PRIO_PREEMPT(). Lower values mean higher priority. |
| For FreeRTOS, higher values mean higher priority. |
| |
| config CHIP_TASK_STACK_SIZE |
| int "Matter task stack size" |
| default 8192 |
| help |
| Set the stack size (in bytes) for the Matter main task (CHIP event loop). |
| |
| config MAX_EVENT_QUEUE_SIZE |
| int "Maximum Matter event queue size" |
| default 100 |
| help |
| Set the maximum number of events that can be queued in the Matter event loop. |
| |
| config CHIP_MRP_LOCAL_ACTIVE_RETRY_INTERVAL |
| int "MRP Local Active Retry Interval (ms)" |
| default 2000 if OPENTHREAD |
| default 300 |
| help |
| Sets the local active retry interval (in milliseconds) for Matter Message Reliability Protocol (MRP). |
| |
| config CHIP_MRP_LOCAL_IDLE_RETRY_INTERVAL |
| int "MRP Local Idle Retry Interval (ms)" |
| default 2000 if OPENTHREAD |
| default 500 |
| help |
| Sets the local idle retry interval (in milliseconds) for Matter Message Reliability Protocol (MRP). |
| |
| config CHIP_ENABLE_READ_CLIENT |
| bool "Enable Read Client in the Interaction Model" |
| help |
| Enable support for Read Client in the Interaction Model. |
| This config can be disabled for device types that do not require Read Client functionality. |
| Disabling this config can save flash and RAM space. |
| |
| # Build system options |
| |
| config CHIP_WITH_LWIP |
| bool "CHIP with lwIP library available" |
| help |
| Enable the lwIP library support in Matter. |
| |
| config CHIP_PW_RPC |
| bool "Pigweed RPC library" |
| help |
| Links the application with the libraries containing Pigweed RPC |
| functionalities. |
| |
| config CHIP_BUILD_TESTS |
| bool "Build Matter unit tests" |
| help |
| Enables building Matter unit tests. |
| |
| config BUILD_FOR_HOST_UNIT_TEST |
| bool "build host unit test" |
| default y if CHIP_BUILD_TESTS |
| help |
| Enable matter host unit test build. |
| |
| config CHIP_BUILD_NL_FAULT_INJECTION |
| bool "Enable NL fault injection for unit tests" |
| default y |
| depends on CHIP_BUILD_TESTS |
| help |
| Enables nl fault injection Matter unit tests. |
| |
| config CHIP_BLE_EXT_ADVERTISING |
| bool "Bluetooth LE extended advertising" |
| help |
| Enable Bluetooth LE extended advertising, which allows the device to advertise |
| Matter service over Bluetooth LE for a period of time longer than 15 minutes. |
| If this config is true, |
| CHIP_DEVICE_CONFIG_DISCOVERY_TIMEOUT_SECS define can be set up to 172800 seconds (48h). |
| |
| config CHIP_BLE_ADVERTISING_DURATION |
| int "Bluetooth LE advertising duration in minutes" |
| range 15 2880 if CHIP_BLE_EXT_ADVERTISING |
| range 0 15 |
| default 15 |
| help |
| Specify how long the device will advertise Matter service over Bluetooth LE in minutes. |
| If CHIP_BLE_EXT_ADVERTISING is set to false, the maximum duration time is 15 minutes, |
| else the maximum duration time can be extended to 2880 minutes (48h). |
| |
| config CHIP_CUSTOM_BLE_ADV_DATA |
| bool "Use custom BLE advertising data" |
| depends on BT |
| help |
| Customization of BLE advertising data at the application layer |
| |
| config CHIP_INET_ENABLE_TCP_ENDPOINT |
| bool "Enable TCP endpoint in Inet layer" |
| default y if CHIP_BUILD_TESTS |
| help |
| Enable TCP endpoint support in the Matter Inet layer. |
| |
| config NETWORK_LAYER_BLE |
| bool "Should be replaced by CONFIG_BT. Keep it for backwards compatibility" |
| default y if BT |
| help |
| Will be deprecated once application files replace CONFIG_NETWORK_LAYER_BLE with CONFIG_BT |
| |
| endif # CHIP |