Shared configurations in Matter samples

Configuration options

CONFIG_NCS_SAMPLE_MATTER_APP_TASK_QUEUE_SIZE

(int) Maximum number of tasks delegated to be run in the application queue

Define the maximum size of the queue dedicated for application tasks that have to be run in the application thread context.

CONFIG_NCS_SAMPLE_MATTER_APP_TASK_MAX_SIZE

(int) Maximum size of application task in bytes

Defines the maximum size of a functor that can be put in the application thread’s task queue.

CONFIG_NCS_SAMPLE_MATTER_CUSTOM_BLUETOOTH_ADVERTISING

(bool) Define the custom behavior of the Bluetooth advertisement in the application code

Disable the default Bluetooth advertising start which is defined in the board.cpp file and allows to use the custom one.

CONFIG_NCS_SAMPLE_MATTER_OPERATIONAL_KEYS_MIGRATION_TO_ITS

(bool) Operational keys migration feature

Enables migration of the operational keys stored in the persistent storage to the PSA ITS secure storage. Enable this feature while updating the firmware of in-field devices that run Mbed TLS cryptography backend to the firmware based on PSA Crypto API.

CONFIG_NCS_SAMPLE_MATTER_FACTORY_RESET_ON_KEY_MIGRATION_FAILURE

(bool) Perform factory reset if the operational key migration failed

Allow device to perform factory reset if the operational key for Fabric has not been migrated properly to PSA ITS storage.

CONFIG_NCS_SAMPLE_MATTER_LEDS

(bool) LEDs usage

Enables LEDs module to be used in the application.

CONFIG_NCS_SAMPLE_MATTER_SETTINGS_SHELL

(bool) Settings shell for Matter purposes

Allows using matter_settings shell commands. You can use the following commands: peak - to read the maximum settings usage. reset - to reset peak value. get_size - to read the size of specific value. current - to read current settings usage. free - to read free settings space.

CONFIG_NCS_SAMPLE_MATTER_TEST_EVENT_TRIGGERS

(bool) Test event triggers support

Enables support for test event triggers for the specific use-cases.

CONFIG_NCS_SAMPLE_MATTER_TEST_EVENT_TRIGGERS_MAX

(int) Maximum amount of event triggers

Defines the maximum amount of event triggers.

CONFIG_NCS_SAMPLE_MATTER_TEST_EVENT_TRIGGERS_REGISTER_DEFAULTS

(bool) Register default triggers for Matter sample

Automatically register default triggers such as factory reset, device reboot, OTA start query.

CONFIG_NCS_SAMPLE_MATTER_TEST_EVENT_TRIGGERS_MAX_TRIGGERS_DELEGATES

(int) Maximum amount of the trigger delegates

Defines the maximum number for the TestEventTriggerDelegate implementations to be registered in the nRF test event triggers class.

CONFIG_NCS_SAMPLE_MATTER_TEST_SHELL

(bool) Test - specific shell commands support for Matter samples

Enables support for test - specific shell commands in Matter samples.

CONFIG_NCS_SAMPLE_MATTER_PERSISTENT_STORAGE

(bool) Persistent storage support for Matter samples

Matter persistent storage support with the configurable backend.

CONFIG_NCS_SAMPLE_MATTER_ZAP_FILE_PATH

(string) Path in sample, under which ZAP file is located

Absolute path to location under which ZAP file is located. It shall contain the file name and .zap extension.

CONFIG_NCS_SAMPLE_MATTER_CERTIFICATION

(bool) Patches for Matter platform certification

It enables including software patches required for the Matter platform certification purposes. Currently it works only with the Matter template sample.

CONFIG_NCS_SAMPLE_MATTER_USE_DEFAULT_BUTTON_HANDLER

(bool) Use default button handler alongside the application one

When enabled, the button handler responsible for factory reset and DFU is used alongside application handler. In order to override this handler, disable this config.

CONFIG_NCS_SAMPLE_MATTER_SETTINGS_STORAGE_BACKEND

(bool) Settings based storage implementation for Matter samples

CONFIG_NCS_SAMPLE_MATTER_SECURE_STORAGE_BACKEND

(bool) Secure storage implementation for Matter samples [DEPRECATED]

Enables the secure persistent storage wrapper API that imitates Zephyr Settings’ key-value data format. If building with CMSE enabled (/ns), the TF-M and Secure Domain PSA Protected Storage implementation is leveraged by default. If building with CMSE disabled (/cpuapp), the Trusted Storage library must be used.

CONFIG_NCS_SAMPLE_MATTER_STORAGE_MAX_KEY_LEN

(int) Maximum length (bytes) of the key under which the asset can be stored

CONFIG_NCS_SAMPLE_MATTER_SECURE_STORAGE_MAX_ENTRY_NUMBER

(int) Maximum number of entries that can be stored securely

CONFIG_NCS_SAMPLE_MATTER_SECURE_STORAGE_PSA_KEY_VALUE_OFFSET

(hex) The PSA key offset dedicated for Matter application

CONFIG_TRUSTED_STORAGE_BACKEND_AEAD_MAX_DATA_SIZE

(unknown)

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG

(bool) Watchdog for Matter applications

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_PAUSE_IN_SLEEP

(bool) Pause watchdog while CPU is in sleep state

If enabled, the watchdog will be paused while the CPU is in idle (sleep) state.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_PAUSE_ON_DEBUG

(bool) Pause watchdog while the CPU is halted by the debugger

If disabled, the watchdog will not be paused while the CPU is halted by the debugger and the device reset will be triggered, if the feeding signal is not received within the specified time.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_DEFAULT

(bool) Use watchdog object dedicated for Main and Matter threads

The default watchdog objects are created in the matter_init.cpp file. The watchdog objects are dedicated for Main and Matter threads and are initialized using the NCS_SAMPLE_MATTER_WATCHDOG_DEFAULT_FEED_TIME value.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_TIMEOUT

(int) Default maximum window time in milliseconds for receiving the feeding signal

The default maximum window time defines a time within which the feeding signal must be received from all created Watchdog sources to reset the watchdog object’s timer. If the signals come after elapsing this time, the watchdog timer will not be reset and the reboot occur.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_DEFAULT_FEED_TIME

(int) Default interval of feeding time in milliseconds

The default interval in milliseconds for calling the feeding callback if it exists.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_EVENT_TRIGGERS

(bool) Default event triggers for watchdog purposes

Enables test event triggers to block Main and Matter stacks for the specific amount of time and test Watchdog in this way.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS

(bool) Diagnostics logs support

Provides support for diagnostics logs. Diagnostics logs allow the Matter controller to read end-user, network and crash logs from the Matter device. Diagnostic logs are usable only if the DiagnosticCluster is available and active on the device’s root endpoint. Otherwise, the compilation error occurs.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_MAX_SIMULTANEOUS_SESSIONS

(int) Define maximum simultaneous sessions

The maximum simultaneous sessions, which is the capability for sending diagnostic logs to Matter controller using multiple sessions at the same time for different diagnostic intents. When a session finishes, it releases its slot for a new one.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_CRASH_LOGS

(bool) Crash logs support

Enables support for storing crash logs when the crash occurs.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_REMOVE_CRASH_AFTER_READ

(bool) Remove the last crash data after read

Removes the last crash data after reading it by Matter controller. Disable this option to read the last crash multiple times.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_END_USER_LOGS

(bool) End user logs support

Enables support for capturing end user diagnostic logs.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_NETWORK_LOGS

(bool) Network logs support

Enables support for capturing network diagnostic logs.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_TEST

(bool) Testing module for Diagnostic logs cluster

Enables testing module for diagnostic logs cluster.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_REDIRECT

(bool) Redirection of logs to the diagnostic logs module

Enable redirection of the logs formed using logger LOG macro to the Matter diagnostic logs module. This option enables only redirection logs from the “chip” module, as a diagnostic network logs and from the “app” module, as a diagnostic end user logs.

Diagnostics logs

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS

(bool) Diagnostics logs support

Provides support for diagnostics logs. Diagnostics logs allow the Matter controller to read end-user, network and crash logs from the Matter device. Diagnostic logs are usable only if the DiagnosticCluster is available and active on the device’s root endpoint. Otherwise, the compilation error occurs.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_MAX_SIMULTANEOUS_SESSIONS

(int) Define maximum simultaneous sessions

The maximum simultaneous sessions, which is the capability for sending diagnostic logs to Matter controller using multiple sessions at the same time for different diagnostic intents. When a session finishes, it releases its slot for a new one.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_CRASH_LOGS

(bool) Crash logs support

Enables support for storing crash logs when the crash occurs.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_REMOVE_CRASH_AFTER_READ

(bool) Remove the last crash data after read

Removes the last crash data after reading it by Matter controller. Disable this option to read the last crash multiple times.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_END_USER_LOGS

(bool) End user logs support

Enables support for capturing end user diagnostic logs.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_NETWORK_LOGS

(bool) Network logs support

Enables support for capturing network diagnostic logs.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_TEST

(bool) Testing module for Diagnostic logs cluster

Enables testing module for diagnostic logs cluster.

CONFIG_NCS_SAMPLE_MATTER_DIAGNOSTIC_LOGS_REDIRECT

(bool) Redirection of logs to the diagnostic logs module

Enable redirection of the logs formed using logger LOG macro to the Matter diagnostic logs module. This option enables only redirection logs from the “chip” module, as a diagnostic network logs and from the “app” module, as a diagnostic end user logs.

Persistent storage

CONFIG_NCS_SAMPLE_MATTER_SETTINGS_STORAGE_BACKEND

(bool) Settings based storage implementation for Matter samples

CONFIG_NCS_SAMPLE_MATTER_SECURE_STORAGE_BACKEND

(bool) Secure storage implementation for Matter samples [DEPRECATED]

Enables the secure persistent storage wrapper API that imitates Zephyr Settings’ key-value data format. If building with CMSE enabled (/ns), the TF-M and Secure Domain PSA Protected Storage implementation is leveraged by default. If building with CMSE disabled (/cpuapp), the Trusted Storage library must be used.

CONFIG_NCS_SAMPLE_MATTER_STORAGE_MAX_KEY_LEN

(int) Maximum length (bytes) of the key under which the asset can be stored

CONFIG_NCS_SAMPLE_MATTER_SECURE_STORAGE_MAX_ENTRY_NUMBER

(int) Maximum number of entries that can be stored securely

CONFIG_NCS_SAMPLE_MATTER_SECURE_STORAGE_PSA_KEY_VALUE_OFFSET

(hex) The PSA key offset dedicated for Matter application

CONFIG_TRUSTED_STORAGE_BACKEND_AEAD_MAX_DATA_SIZE

(unknown)

Matter watchdog

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG

(bool) Watchdog for Matter applications

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_PAUSE_IN_SLEEP

(bool) Pause watchdog while CPU is in sleep state

If enabled, the watchdog will be paused while the CPU is in idle (sleep) state.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_PAUSE_ON_DEBUG

(bool) Pause watchdog while the CPU is halted by the debugger

If disabled, the watchdog will not be paused while the CPU is halted by the debugger and the device reset will be triggered, if the feeding signal is not received within the specified time.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_DEFAULT

(bool) Use watchdog object dedicated for Main and Matter threads

The default watchdog objects are created in the matter_init.cpp file. The watchdog objects are dedicated for Main and Matter threads and are initialized using the NCS_SAMPLE_MATTER_WATCHDOG_DEFAULT_FEED_TIME value.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_TIMEOUT

(int) Default maximum window time in milliseconds for receiving the feeding signal

The default maximum window time defines a time within which the feeding signal must be received from all created Watchdog sources to reset the watchdog object’s timer. If the signals come after elapsing this time, the watchdog timer will not be reset and the reboot occur.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_DEFAULT_FEED_TIME

(int) Default interval of feeding time in milliseconds

The default interval in milliseconds for calling the feeding callback if it exists.

CONFIG_NCS_SAMPLE_MATTER_WATCHDOG_EVENT_TRIGGERS

(bool) Default event triggers for watchdog purposes

Enables test event triggers to block Main and Matter stacks for the specific amount of time and test Watchdog in this way.

Snippets

Matter samples provide predefined Snippets for typical use cases. The snippets are in the nrf/snippets directory of the nRF Connect SDK. For more information about using snippets, see Using Snippets in the Zephyr documentation.

Specify the corresponding snippet names in the SNIPPET CMake option for the application configuration. To add the matter-diagnostic-logs snippet to the Matter: Door lock sample for the nrf52840dk/nrf52840 board target:

Select the matter-diagnostic-logs snippet from the list in the Snippets menu.

The following snippets are available:

Shared configurations in Matter stack

Base Configuration

Zephyr configuration options (inherited by nRF Connect)

CONFIG_CHIP_NXP_PLATFORM

(bool)

States that the configuration uses Matter NXP platform, what can be used to conditionally deviate from Zephyr generic configuration for NXP platform related purposes.

CONFIG_CHIP

(bool) Matter protocol stack

Enables Matter libraries required for the Matter protocol stack to work.

CONFIG_CHIP_USE_ZEPHYR_NETWORKING

(bool) Use Zephyr networking layer

CONFIG_CHIP_APP_LOG_LEVEL

(int) Logging level in application

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_CHIP_DEVICE_VENDOR_ID

(int) Device Vendor ID

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

Provides a human-readable name of the device manufacturer. The name is exposed as an attribute of the Basic Information cluster.

CONFIG_CHIP_DEVICE_PRODUCT_ID

(int) Product ID

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

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.

CONFIG_CHIP_DEVICE_HARDWARE_VERSION

(int) Hardware version

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

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.

CONFIG_CHIP_DEVICE_SOFTWARE_VERSION

(int) Software version

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

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.

CONFIG_CHIP_DEVICE_MANUFACTURING_DATE

(string) Manufacturing date (ISO 8601 format)

Provides the device manufacturing date in the ISO 8601 format: YYYY-MM-DD.

CONFIG_CHIP_DEVICE_SERIAL_NUMBER

(string) Device serial number

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.

CONFIG_CHIP_DEVICE_ROTATING_DEVICE_UID

(string) Rotating device ID unique ID (HEX format)

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.

CONFIG_CHIP_DEVICE_TYPE

(int) Primary device type

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

Provides a 12-bit identifier that is used to discover the device during the commissioning.

CONFIG_CHIP_DEVICE_SPAKE2_PASSCODE

(int) SPAKE2+ passcode

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

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)

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.

CONFIG_CHIP_DEVICE_SPAKE2_TEST_VERIFIER

(string) SPAKE2+ verifier for testing purposes (base64 format)

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

CONFIG_CHIP_DEVICE_ENABLE_KEY

(string) Enable Key for triggering test actions (HEX format)

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.

CONFIG_CHIP_DEVICE_PRODUCT_FINISH

(string) Description of the product’s external case finish method

provides a description of the product’s external case finish method. Possible values: other; matte; satin; polished; rugged; fabric

CONFIG_CHIP_DEVICE_PRODUCT_COLOR

(string) Description of the product’s primary color

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.

CONFIG_CHIP_ENABLE_PAIRING_AUTOSTART

(bool) Open commissioning window on boot

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

Enables over-the-air (OTA) Requestor role that allows the node to perform Device Firmware Upgrade by querying and downloading a new firmware image from a peer OTA Provider node.

CONFIG_CHIP_ROTATING_DEVICE_ID

(bool) Generate rotating device ID

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

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_EXTENDED_DISCOVERY

(bool) Extended discovery

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)

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.

CONFIG_CHIP_CRYPTO_PSA

(bool) Use PSA crypto API for cryptographic operations

Enables the implementation of the Matter cryptographic operations that is based on the PSA crypto API (instead of the default implementation, which is based on the legacy mbedTLS APIs).

CONFIG_CHIP_CRYPTO_PSA_AEAD_SINGLE_PART

(bool) Use PSA AEAD single-part API

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

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

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

Enables linking the application with the library that contains Matter shell commands.

CONFIG_CHIP_PROJECT_CONFIG

(string) Project configuration file for Matter

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.

CONFIG_CHIP_ENABLE_DNSSD_SRP

(bool) OpenThread Service Registration Protocol

Enables using the OpenThread SRP client for the Matter service advertising.

CONFIG_CHIP_ENABLE_DNS_CLIENT

(bool) OpenThread DNS client

Enables using the OpenThread DNS client for the Matter service discovery.

CONFIG_CHIP_ENABLE_ICD_SUPPORT

(bool) Matter Intermittently Connected Devices support

Enables the Intermittently Connected Device (ICD) support in Matter.

CONFIG_CHIP_ICD_SLOW_POLL_INTERVAL

(int) Intermittently Connected Device slow polling interval (ms)

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)

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)

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)

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)

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)

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

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

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

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

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

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

Enables an ICD to send data report to the subscribers on entering the active mode.

CONFIG_CHIP_THREAD_SSED

(bool) Thread Synchronized Sleepy End Device support

Enables the Thread Synchronized Sleepy End Device support in Matter.

CONFIG_CHIP_OPENTHREAD_CONFIG

(string) Custom OpenThread configuration file

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 Zephyr.

CONFIG_CHIP_CERTIFICATION_DECLARATION_STORAGE

(bool) Certification Declaration settings storage

Enables storing of the Certification Declaration in Zephyr settings instead of using the hardcoded value from firmware. This option also adds support for including new Certification Declaration into a firmware update image package that is sent as part of the OTA software update.

CONFIG_CHIP_CERTIFiCATION_DECLARATION_OTA_IMAGE_ID

(int) Certification declaration OTA image ID

Provides the image ID of the Certification Declaration image for sending it as part of the OTA software update.

CONFIG_CHIP_FACTORY_RESET_ERASE_SETTINGS

(bool) Erase NVS flash pages on factory reset

Erases non-volatile pages occupied by non-volatile storage when a factory reset is requested, instead of removing Matter-related settings only. Enabling this option provides a more robust factory reset mechanism and allows to regain the original storage performance if any firmware issue has brought it to an unexpected state. For this reason, set this option if the entire configuration is supposed to be cleared on a factory reset, including device-specific entries.

CONFIG_CHIP_FACTORY_RESET_TIME_MEASUREMENT

(bool) Measure time of factory reset

Enables measuring the time it takes to perform a factory reset. The time is measured from the moment the factory reset is scheduled until the device is shutdown. The measured time is printed in the log.

CONFIG_CHIP_MALLOC_SYS_HEAP

(bool) Memory allocator based on Zephyr sys_heap

Enables memory allocation functions that imitate the default malloc, calloc, realloc and free, based on sys_heap from Zephyr RTOS.

CONFIG_CHIP_MALLOC_SYS_HEAP_OVERRIDE

(bool) Override default allocator with memory allocator based on Zephyr sys_heap

Replaces the default memory allocation functions (such as malloc, calloc, realloc, free, and their reentrant versions) with their counterparts based on sys_heap from Zephyr RTOS.

CONFIG_CHIP_MALLOC_SYS_HEAP_SIZE

(int) Heap size used by memory allocator based on Zephyr sys_heap

Provides a value that controls how much of the device RAM is reserved for the heap used by the memory allocation functions based on sys_heap from Zephyr RTOS.

CONFIG_CHIP_MALLOC_SYS_HEAP_WATERMARKS_SUPPORT

(bool) Support for heap watermarks based on Zephyr sys_heap

Enables support for getting current heap high watermark and resetting watermarks.

CONFIG_CHIP_MALLOC_SYS_HEAP_DEBUG

(bool) Log every allocated or freed memory block

Enables debug logs printed whenever a heap memory block is allocated or freed. The logs can be used to trace the source of memory leaks in the application.

(bool) Link application with Matter libraries

Adds Matter directories to the ‘app’ target include paths and links the ‘app’ target with Matter libraries.

CONFIG_CHIP_PW_RPC

(bool) Pigweed RPC library

Links the application with the libraries containing Pigweed RPC functionalities.

CONFIG_CHIP_BUILD_TESTS

(bool) Build Matter unit tests

Enables building Matter unit tests.

CONFIG_CHIP_OTA_IMAGE_BUILD

(bool) Generate OTA image

Enables building Matter over-the-air (OTA) update image.

CONFIG_CHIP_OTA_IMAGE_FILE_NAME

(string) OTA image file name

Provides the file name of the generated Matter OTA image.

CONFIG_CHIP_OTA_IMAGE_EXTRA_ARGS

(string) OTA image creator extra arguments

Provides optional arguments to the ota_image_tool.py script, used for building Matter OTA image.

CONFIG_CHIP_BLE_EXT_ADVERTISING

(bool) Bluetooth LE extended advertising

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

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

Customization of BLE advertising data at the application layer

nRF Connect Configuration

CONFIG_CHIP_NXP_PLATFORM

(bool)

States that the configuration uses Matter NXP platform, what can be used to conditionally deviate from Zephyr generic configuration for NXP platform related purposes.

CONFIG_CHIP

(bool) Matter protocol stack

Enables Matter libraries required for the Matter protocol stack to work.

CONFIG_CHIP_USE_ZEPHYR_NETWORKING

(bool) Use Zephyr networking layer

CONFIG_CHIP_APP_LOG_LEVEL

(int) Logging level in application

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_CHIP_DEVICE_VENDOR_ID

(int) Device Vendor ID

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

Provides a human-readable name of the device manufacturer. The name is exposed as an attribute of the Basic Information cluster.

CONFIG_CHIP_DEVICE_PRODUCT_ID

(int) Product ID

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

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.

CONFIG_CHIP_DEVICE_HARDWARE_VERSION

(int) Hardware version

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

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.

CONFIG_CHIP_DEVICE_SOFTWARE_VERSION

(int) Software version

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

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.

CONFIG_CHIP_DEVICE_MANUFACTURING_DATE

(string) Manufacturing date (ISO 8601 format)

Provides the device manufacturing date in the ISO 8601 format: YYYY-MM-DD.

CONFIG_CHIP_DEVICE_SERIAL_NUMBER

(string) Device serial number

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.

CONFIG_CHIP_DEVICE_ROTATING_DEVICE_UID

(string) Rotating device ID unique ID (HEX format)

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.

CONFIG_CHIP_DEVICE_TYPE

(int) Primary device type

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

Provides a 12-bit identifier that is used to discover the device during the commissioning.

CONFIG_CHIP_DEVICE_SPAKE2_PASSCODE

(int) SPAKE2+ passcode

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

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)

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.

CONFIG_CHIP_DEVICE_SPAKE2_TEST_VERIFIER

(string) SPAKE2+ verifier for testing purposes (base64 format)

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

CONFIG_CHIP_DEVICE_ENABLE_KEY

(string) Enable Key for triggering test actions (HEX format)

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.

CONFIG_CHIP_DEVICE_PRODUCT_FINISH

(string) Description of the product’s external case finish method

provides a description of the product’s external case finish method. Possible values: other; matte; satin; polished; rugged; fabric

CONFIG_CHIP_DEVICE_PRODUCT_COLOR

(string) Description of the product’s primary color

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.

CONFIG_CHIP_ENABLE_PAIRING_AUTOSTART

(bool) Open commissioning window on boot

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

Enables over-the-air (OTA) Requestor role that allows the node to perform Device Firmware Upgrade by querying and downloading a new firmware image from a peer OTA Provider node.

CONFIG_CHIP_ROTATING_DEVICE_ID

(bool) Generate rotating device ID

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

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_EXTENDED_DISCOVERY

(bool) Extended discovery

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)

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.

CONFIG_CHIP_CRYPTO_PSA

(bool) Use PSA crypto API for cryptographic operations

Enables the implementation of the Matter cryptographic operations that is based on the PSA crypto API (instead of the default implementation, which is based on the legacy mbedTLS APIs).

CONFIG_CHIP_CRYPTO_PSA_AEAD_SINGLE_PART

(bool) Use PSA AEAD single-part API

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

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

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

Enables linking the application with the library that contains Matter shell commands.

CONFIG_CHIP_PROJECT_CONFIG

(string) Project configuration file for Matter

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.

CONFIG_CHIP_ENABLE_DNSSD_SRP

(bool) OpenThread Service Registration Protocol

Enables using the OpenThread SRP client for the Matter service advertising.

CONFIG_CHIP_ENABLE_DNS_CLIENT

(bool) OpenThread DNS client

Enables using the OpenThread DNS client for the Matter service discovery.

CONFIG_CHIP_ENABLE_ICD_SUPPORT

(bool) Matter Intermittently Connected Devices support

Enables the Intermittently Connected Device (ICD) support in Matter.

CONFIG_CHIP_ICD_SLOW_POLL_INTERVAL

(int) Intermittently Connected Device slow polling interval (ms)

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)

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)

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)

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)

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)

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

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

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

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

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

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

Enables an ICD to send data report to the subscribers on entering the active mode.

CONFIG_CHIP_THREAD_SSED

(bool) Thread Synchronized Sleepy End Device support

Enables the Thread Synchronized Sleepy End Device support in Matter.

CONFIG_CHIP_OPENTHREAD_CONFIG

(string) Custom OpenThread configuration file

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 Zephyr.

CONFIG_CHIP_CERTIFICATION_DECLARATION_STORAGE

(bool) Certification Declaration settings storage

Enables storing of the Certification Declaration in Zephyr settings instead of using the hardcoded value from firmware. This option also adds support for including new Certification Declaration into a firmware update image package that is sent as part of the OTA software update.

CONFIG_CHIP_CERTIFiCATION_DECLARATION_OTA_IMAGE_ID

(int) Certification declaration OTA image ID

Provides the image ID of the Certification Declaration image for sending it as part of the OTA software update.

CONFIG_CHIP_FACTORY_RESET_ERASE_SETTINGS

(bool) Erase NVS flash pages on factory reset

Erases non-volatile pages occupied by non-volatile storage when a factory reset is requested, instead of removing Matter-related settings only. Enabling this option provides a more robust factory reset mechanism and allows to regain the original storage performance if any firmware issue has brought it to an unexpected state. For this reason, set this option if the entire configuration is supposed to be cleared on a factory reset, including device-specific entries.

CONFIG_CHIP_FACTORY_RESET_TIME_MEASUREMENT

(bool) Measure time of factory reset

Enables measuring the time it takes to perform a factory reset. The time is measured from the moment the factory reset is scheduled until the device is shutdown. The measured time is printed in the log.

CONFIG_CHIP_MALLOC_SYS_HEAP

(bool) Memory allocator based on Zephyr sys_heap

Enables memory allocation functions that imitate the default malloc, calloc, realloc and free, based on sys_heap from Zephyr RTOS.

CONFIG_CHIP_MALLOC_SYS_HEAP_OVERRIDE

(bool) Override default allocator with memory allocator based on Zephyr sys_heap

Replaces the default memory allocation functions (such as malloc, calloc, realloc, free, and their reentrant versions) with their counterparts based on sys_heap from Zephyr RTOS.

CONFIG_CHIP_MALLOC_SYS_HEAP_SIZE

(int) Heap size used by memory allocator based on Zephyr sys_heap

Provides a value that controls how much of the device RAM is reserved for the heap used by the memory allocation functions based on sys_heap from Zephyr RTOS.

CONFIG_CHIP_MALLOC_SYS_HEAP_WATERMARKS_SUPPORT

(bool) Support for heap watermarks based on Zephyr sys_heap

Enables support for getting current heap high watermark and resetting watermarks.

CONFIG_CHIP_MALLOC_SYS_HEAP_DEBUG

(bool) Log every allocated or freed memory block

Enables debug logs printed whenever a heap memory block is allocated or freed. The logs can be used to trace the source of memory leaks in the application.

CONFIG_APP_LINK_WITH_CHIP

(bool) Link application with Matter libraries

Adds Matter directories to the ‘app’ target include paths and links the ‘app’ target with Matter libraries.

CONFIG_CHIP_PW_RPC

(bool) Pigweed RPC library

Links the application with the libraries containing Pigweed RPC functionalities.

CONFIG_CHIP_BUILD_TESTS

(bool) Build Matter unit tests

Enables building Matter unit tests.

CONFIG_CHIP_OTA_IMAGE_BUILD

(bool) Generate OTA image

Enables building Matter over-the-air (OTA) update image.

CONFIG_CHIP_OTA_IMAGE_FILE_NAME

(string) OTA image file name

Provides the file name of the generated Matter OTA image.

CONFIG_CHIP_OTA_IMAGE_EXTRA_ARGS

(string) OTA image creator extra arguments

Provides optional arguments to the ota_image_tool.py script, used for building Matter OTA image.

CONFIG_CHIP_BLE_EXT_ADVERTISING

(bool) Bluetooth LE extended advertising

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

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

Customization of BLE advertising data at the application layer

CONFIG_CHIP_APP_ZAP_DIR

(string) Path to the zap-generated directory

It shall contain all the files generated by the zap-generate command.

CONFIG_CHIP_NRF_PLATFORM

(bool)

States that the configuration uses Matter nRF platform, what can be used to conditionally deviate from Zephyr generic configuration for nRF platform related purposes.

CONFIG_CHIP_NFC_ONBOARDING_PAYLOAD

(bool) Share onboarding payload in NFC tag

Enables sharing the onboarding payload in the NFC tag.

CONFIG_CHIP_BOOTLOADER_MCUBOOT

(bool) MCUBOOT for Matter Bootloader purpose

CONFIG_CHIP_BOOTLOADER_NONE

(bool) No bootloader selected for Matter purposes

CONFIG_CHIP_DFU_LIBRARY_MCUMGR

(bool) Use mcumgr library for Matter DFU purposes

CONFIG_CHIP_DFU_LIBRARY_DFU_TARGET

(bool) Use dfu target library for Matter DFU purposes

CONFIG_CHIP_OTA_REQUESTOR_BUFFER_SIZE

(int) OTA Requestor image buffer size

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

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.

CONFIG_CHIP_EXAMPLE_DEVICE_INFO_PROVIDER

(bool) Include default device information provider build

CONFIG_CHIP_DEBUG_SYMBOLS

(bool) Generate debug symbols

Enables building the application with debug symbols.

CONFIG_CHIP_LOG_VERIFY_OR_DIE

(bool) Log source code location on VerifyOrDie failure

Enables the feature to log the file name and line number where the Matter stack calls the VerifyOrDie macro with the condition evaluating to false.

CONFIG_CHIP_LOG_FILE_NAME

(bool) Log file name instead of entire file path

Enables using a file name instead of an entire file path whenever the source code location needs to be logged. This is achieved by overriding the __FILE__ macro with __FILE_NAME__. This reduces the code size in debug configurations that enable verbose assertion macros.

CONFIG_CHIP_TASK_STACK_SIZE

(int) The CHIP (Matter) thread stack size

Configures the stack size available for the CHIP (Matter) thread.

CONFIG_CHIP_FACTORY_DATA_NRFCONNECT_BACKEND

(bool) nRF Connect factory data provider

Enables the default nRF Connect factory data provider implementation that supports reading the factory data encoded in the CBOR format from the flash memory partition.

CONFIG_CHIP_FACTORY_DATA_CUSTOM_BACKEND

(bool) Custom factory data provider

Enables user’s custom factory data provider implementation.

CONFIG_CHIP_FACTORY_DATA_NONE

(bool) No factory data provider

Disables factory data support and does not provide any factory data provider implementation.

CONFIG_CHIP_FACTORY_DATA

(bool) Factory data for nRF Connect

Default nRF Connect factory data provider implementation that supports reading the factory data encoded in the CBOR format from the flash memory partition. This option requires the factory_data partition in Partition Manager configuration file (pm_static.yml).

CONFIG_CHIP_FACTORY_DATA_BUILD

(bool) Generate factory data contents

Enables generation of the factory data contents during the building. This option requires the factory_data partition in Partition Manager configuration file (pm_static.yml). As a result, a new output file is created (factory_data.hex).

CONFIG_CHIP_FACTORY_DATA_VERSION

(int)

Provides the version of the generated factory data parameter set. This is a hidden configuration option that the user cannot change. You can use this value in the factory data provider implementation to verify that the factory data saved in the flash memory has the expected version.

CONFIG_CHIP_FACTORY_DATA_ROTATING_DEVICE_UID_MAX_LEN

(int) Maximum length of rotating device ID unique ID in bytes

Maximum acceptable length of rotating device ID unique ID in bytes.

CONFIG_CHIP_FACTORY_DATA_WRITE_PROTECT

(bool) Factory Data write protection

Enables the write protection of the Factory Data partition in the flash memory. This is a recommended feature, but it requires the Settings partition size to be a multiple of FPROTECT_BLOCK_SIZE and the Factory Data partition to be placed right after the application partition in the address space (the Factory Data partition offset must be equal to the last address of the application partition). The second requirement is valid only when the FPROTECT_BLOCK_SIZE is bigger than the flash memory page size.

CONFIG_CHIP_FACTORY_DATA_MERGE_WITH_FIRMWARE

(bool) Merge generated factory data with merged.hex output build file

Enables merging the generated factory data with the merged.hex output build file. As a result, the merged.hex build output file, which is used when flashing the firmware using the west tool, includes the factory data as well.

CONFIG_CHIP_FACTORY_DATA_GENERATE_ONBOARDING_CODES

(bool) Generate onboarding codes during the generation of a factory data set

Enables generation of onboarding codes (manual pairing code and QR code) during the generation of a factory data set. You can provide the onboarding codes a Matter controller to commission a device to a Matter network.

CONFIG_CHIP_FACTORY_DATA_USE_DEFAULT_CERTS

(bool) Use pre-generated development certificates

Uses pre-generated certificate files from the credentials/development/attestation/ directory that match the configured Product ID. This can be used for development purpose.

CONFIG_CHIP_FACTORY_DATA_CERT_SOURCE_GENERATED

(bool) Auto-generate certificates

Generates new certificates instead of using pre-generated ones. The certificates are generated on every build.

CONFIG_CHIP_FACTORY_DATA_CERT_SOURCE_USER

(bool) Use user-provided certificate files

Uses user-provided certificate files. The user needs to specify the absolute paths to all necessary files.

CONFIG_CHIP_FACTORY_DATA_GENERATE_CD

(bool) Generates Certification Declaration to the output build directory

Generates the new Certification Declaration and stores it to the output build directory.

CONFIG_CHIP_FACTORY_DATA_USER_CERTS_DAC_CERT

(string) Path to the DAC certificate (DER format)

Provides the absolute path to the DAC certificate file in the DER format.

CONFIG_CHIP_FACTORY_DATA_USER_CERTS_DAC_KEY

(string) Path to the DAC private key (DER format)

Provides the absolute path to the DAC keypair file in the DER format. Both public and private keys must be present (the private key will be extracted automatically).

CONFIG_CHIP_FACTORY_DATA_USER_CERTS_PAI_CERT

(string) Path to the PAI certificate (DER format)

Provides the absolute path to the PAI certificate in the DER format.

CONFIG_CHIP_FACTORY_DATA_GENERATE_SPAKE2_VERIFIER

(bool) Generate SPAKE2+ verifier

Enables the generation of the SPAKE2+ verifier for the configured SPAKE2+ passcode, iteration count and salt.

CONFIG_CHIP_DEVICE_GENERATE_ROTATING_DEVICE_UID

(bool) Generate Rotating device ID unique ID

Enables the generation of a random Rotating device ID unique ID.

CONFIG_CHIP_LOG_SIZE_OPTIMIZATION

(bool) Disable some detailed logs to decrease flash usage

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/nrfconnect/CHIPPlatformConfig.h file.

CONFIG_CHIP_IPV4

(bool) IPv4 support for Matter

If disabled, it allows to build nRF Connect SDK application with IPv4 support independently of the Matter stack still running over IPv6.

CONFIG_CHIP_ENABLE_READ_CLIENT

(bool) Read Client in the Interaction Model

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.

CONFIG_CHIP_CRYPTO_PSA_MIGRATE_DAC_PRIV_KEY

(bool) Migrate DAC private key from factory data to a secure storage

CONFIG_CHIP_CRYPTO_PSA_DAC_PRIV_KEY_ITS

(bool) Migrate DAC private key from factory data to PSA ITS

Move DAC private key from the factory data set to the PSA ITS secure storage and remove it. After the first boot of the device the DAC private key will be moved to the PSA ITS secure storage and will not be available in the factory data anymore. It will be overwritten in the factory data set by zeros.

CONFIG_CHIP_CRYPTO_PSA_DAC_PRIV_KEY_KMU

(bool) Migrate DAC private key from factory data to CRACEN KMU

Move DAC private key from the factory data set to the CRACEN Key Management Unit (KMU) secure storage and remove it. After the first boot of the device the DAC private key will be moved to the CRACEN KMU secure storage and will not be available in the factory data anymore. It will be overwritten in the factory data set by zeros.

CONFIG_CHIP_CRYPTO_PSA_DAC_PRIV_KEY_KMU_SLOT_ID

(int) Destination DAC private key slot ID inside CRACEN KMU

CONFIG_CHIP_CRYPTO_PSA_DAC_PRIV_KEY_KMU_ENCRYPTED

(bool) Encrypt DAC private key in CRACEN KMU

Encrypt the DAC private key in the CRACEN KMU secure storage.

CONFIG_CHIP_STORE_KEYS_IN_KMU

(bool) Use KMU to store crypto keys

Stores cryptographic materials like keys in the KMU if available on the device. This option utilizes a custom nRF Connect implementation of PSAKeyAllocator for key storage. All non-volatile cryptographic materials used by the Matter stack will be stored in KMU slots.

CONFIG_CHIP_KMU_SLOT_RANGE_START

(int) Starting KMU slot number for Matter crypto materials

Defines the starting KMU slot number reserved for storing Matter-related keys. This configuration does not include the DAC private key. To change DAC private key location see the CHIP_CRYPTO_PSA_DAC_PRIV_KEY_KMU_SLOT_ID Kconfig.

CONFIG_CHIP_KMU_SLOT_RANGE_END

(int) Last available KMU slot for Matter crypto materials

Defines the last available KMU slot for storing Matter-related keys. This configuration does not include the DAC private key. To change DAC private key location see the CHIP_CRYPTO_PSA_DAC_PRIV_KEY_KMU_SLOT_ID Kconfig.

CONFIG_CHIP_MAX_FABRICS

(int) Maximum number of Matter fabrics

The maximum number of Matter fabrics that device can be joined to.

CONFIG_CHIP_MAX_ACTIVE_CASE_CLIENTS

(int) Maximum number of outgoing CASE sessions

The maximum number of outgoing CASE sessions that can be simutaneously handled by the end device.

CONFIG_CHIP_MAX_ACTIVE_DEVICES

(int) Maximum number of simultaneous connections over CASE

The maximum number of devices to which the Server implementers will be able to concurrently connect over CASE and interact with.

CONFIG_CHIP_SUBSCRIPTION_RESUMPTION_MIN_RETRY_INTERVAL

(int) Minimum subscription resumption interval in seconds

The minimum interval in seconds before resuming a subsciption that timed out.

CONFIG_CHIP_SUBSCRIPTION_RESUMPTION_RETRY_MULTIPLIER

(int) The multiplier for subscription resumption retry in seconds

The multiplier per subscription resumption retry attempt that is multiplied by the index of Fibonacci sequence and added to CHIP_SUBSCRIPTION_RESUMPTION_MIN_RETRY_INTERVAL to obtain final wait time for next retry.

CONFIG_CHIP_ENABLE_BDX_LOG_TRANSFER

(bool) BDX transfer for diagnostic logs

Enables the BDX protocol for diagnostics log transfer purposes.

CONFIG_CHIP_USE_OPENTHREAD_ENDPOINT

(bool) Use OpenThread TCP/UDP stack directly

Use OpenThread TCP/UDP stack directly instead of using Zephyr’s networking layer. This option is not supported when using WiFi.

CONFIG_CHIP_SYSTEM_PACKETBUFFER_POOL_SIZE

(int) Packet buffer pool size

Total number of packet buffers allocated by the stack for internal pool.

CONFIG_CHIP_WIFI

(bool) nRF Connect Wi-Fi support

CONFIG_CHIP_WIFI_CRYPTO_BACKEND_PSA

(bool) Matter WiFi PSA crypto backend

CONFIG_CHIP_WIFI_CRYPTO_BACKEND_MBEDTLS

(bool) Matter WiFi mbedTLS crypto backend

CONFIG_CHIP_IM_PRETTY_PRINT

(bool) Detailed logging of Matter messages

Enables enhanced verbosity for logging content of Matter messages. This configuration option facilitates detailed tracking of interactions, including Cluster ID, Endpoint ID, Attribute ID, or Command ID as well as payload content for all interaction types (like Read Request or Invoke Request). This option helps in debugging and development of message exchanges within the Matter protocol.

CONFIG_CHIP_CRYPTO_USE_X509

(bool) X.509 certificate support

Enables X.509 certificate support for Matter.

CONFIG_CHIP_CHIPOBLE_SINGLE_CONNECTION

(bool) Single Connection Mode

Limit support for chip-over-BLE (CHIPoBLE) to a single connection. When set, CHIPoBLE advertisements will stop while a CHIPoBLE connection is active.

CONFIG_CHIP_QSPI_NOR_POWER_MANAGEMENT_SUPPORT

(bool) nRF QSPI NOR power management support

Enables management of nRF QSPI NOR external flash power state transitions during Matter operations.

CONFIG_CHIP_BLE_MULTI_IDENTITY_SUPPORT

(bool) Support for multiple BLE identities

Enables support for multiple BLE identities, allowing the device to maintain separate BLE advertisements and connections for different purposes. When this option is enabled, Matter connection handlers will ignore events for connections established with a different local identity.

Matter features

CONFIG_NORDIC_QSPI_NOR_STACK_WRITE_BUFFER_SIZE

(unknown)

CONFIG_SPI_NOR_FLASH_LAYOUT_PAGE_SIZE

(unknown)

CONFIG_PM_OVERRIDE_EXTERNAL_DRIVER_CHECK

(unknown)

CONFIG_CHIP_MEMORY_PROFILING

(bool) Enable features for tracking memory usage

Enables features for tracking memory usage in Matter.

CONFIG_CHIP_DFU_OVER_BT_SMP

(bool) Enable DFU over Bluetooth LE SMP feature set

Enables Device Firmware Upgrade over Bluetooth LE with SMP and configures the set of options related to that feature.

CONFIG_MCUMGR_TRANSPORT_NETBUF_COUNT

(unknown)

CONFIG_MCUMGR_MGMT_NOTIFICATION_HOOKS

(bool)

CONFIG_MCUMGR_GRP_IMG_UPLOAD_CHECK_HOOK

(bool)

CONFIG_MCUMGR_SMP_COMMAND_STATUS_HOOKS

(bool)

CONFIG_BT_L2CAP_TX_MTU

(unknown)

CONFIG_BT_BUF_ACL_RX_SIZE

(unknown)

CONFIG_MCUMGR_TRANSPORT_NETBUF_SIZE

(unknown)

CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE

(unknown)

CONFIG_MCUMGR_GRP_ZBASIC

(unknown)

CONFIG_MCUMGR_GRP_ZBASIC_STORAGE_ERASE

(unknown)

CONFIG_CHIP_WIFI_CONNECTION_RECOVERY_MINIMUM_INTERVAL

(int) Define the minimum connection recovery time interval in milliseconds

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

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

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

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 range [-JITTER; +JITTER].

CONFIG_CHIP_LAST_FABRIC_REMOVED_NONE

(bool) After removing the last fabric do not perform any action

After removing the last fabric the device will not perform factory reset or reboot. The current state will be left as it is and the BLE advertising will not start automatically.

CONFIG_CHIP_LAST_FABRIC_REMOVED_ERASE_AND_REBOOT

(bool) After removing the last fabric erase NVS and reboot

After removing the last fabric the device will perform the factory reset and then reboot. The current RAM state will be removed and the new commissioning to the new fabric will use the initial fabric index. This option is the safest.

CONFIG_CHIP_LAST_FABRIC_REMOVED_ERASE_AND_PAIRING_START

(bool) After removing the last fabric erase NVS and start Bluetooth LE advertising

After removing the last fabric the device will perform the factory reset without rebooting and start the Bluetooth LE advertisement automatically. The current RAM state will be saved and the new commissioning to the next fabric will use the next possible fabric index. This option should not be used for devices that normally do not advertise Bluetooth LE on boot to keep their original behavior.

CONFIG_CHIP_LAST_FABRIC_REMOVED_ERASE_ONLY

(bool) After removing the last fabric erase NVS only

After removing the last fabric the device will perform the factory reset only without rebooting. The current RAM state will be saved and the new commissioning to the next fabric will use the next possible fabric index.

CONFIG_CHIP_LAST_FABRIC_REMOVED_ACTION_DELAY

(int) After removing the last fabric wait defined time [in milliseconds] to perform an action

After removing the last fabric the device will wait for the defined time and then perform an action chosen by the CHIP_LAST_FABRIC_REMOVED_ACTION option. This schedule will allow for avoiding race conditions before the device removes non-volatile data.