blob: 90c7595fe5020d2245a8c32e2cbaca91913270b6 [file] [log] [blame]
#
# Copyright (c) 2021 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 "Connected Home over IP protocol stack"
default n
select CPLUSPLUS
imply LIB_CPLUSPLUS
imply REQUIRES_FULL_LIBC
imply CBPRINTF_LIBC_SUBSTS
imply POSIX_API if !ARCH_POSIX
imply EVENTFD if !ARCH_POSIX
imply REBOOT
imply ENTROPY_GENERATOR
imply NET_UDP
imply NET_IPV6
imply NET_CONFIG_NEED_IPV6
imply NET_SOCKETS
help
This option enables Connected Home over IP libraries.
if CHIP
config CHIP_DEVICE_VENDOR_ID
int "Device vendor ID"
default 9050 # 0x235A
range 0 65535
help
Identifier of the device manufacturer, assigned by Connectivity Standards
Alliance. It is used in various CHIP areas, such as the Basic Information
cluster or OTA (Over-the-air update) image header.
config CHIP_DEVICE_PRODUCT_ID
int "Device product ID"
default 0
range 0 65535
help
Identifier of the product, assigned by the device manufacturer. It is used
in various CHIP areas, such as the Basic Information cluster or OTA
(Over-the-air update) image header.
config CHIP_DEVICE_SOFTWARE_VERSION
int "Device software version"
default 0
range 0 4294967295
help
A number identifying the software version. It is used in various CHIP
areas, such as the Basic Information cluster or OTA (Over-the-air update)
image header. Note that due to the rollback protection a device will only
accept a software update whose version is greater than the current one.
config CHIP_DEVICE_SOFTWARE_VERSION_STRING
string "Device software version string"
default "prerelease"
help
A string between 1 and 64 characters that provides a user-friendly
description of the numeric software version specified in
CHIP_DEVICE_SOFTWARE_VERSION. It is used in various CHIP areas, such as
the Basic Information cluster or OTA (Over-the-air update) image header.
config CHIP_PROJECT_CONFIG
string "Project configuration file for CHIP"
help
Project configuration file for CHIP. If specified, CHIP generic
configuration files will include the project configuration file which can
be used to override any CHIP default or platform-specific settings.
config CHIP_OPENTHREAD_CONFIG
string "Custom OpenThread configuration file"
help
This option can be used to replace Zephyr-supplied OpenThread
configuration file with a custom one.
config CHIP_LIB_SHELL
bool "Enable CHIP shell library"
default n
imply SHELL
help
Link the application with the library containing CHIP shell commands.
config CHIP_PW_RPC
bool "Enable Pigweed RPC library"
default n
help
Link the application with the library containing Pigweed RPC functionalities.
config CHIP_BUILD_TESTS
bool "Build CHIP unit tests"
default n
help
This option enables building CHIP unit tests.
config CHIP_DISABLE_CHIPOBLE_ADVERTISING_WHEN_PROVISIONED
bool "Disable CHIPoBLE advertising when device is fully provisioned"
default y
help
Disable CHIPoBLE advertising when the device achieves a fully provisioned state.
config CHIP_ENABLE_PAIRING_AUTOSTART
bool "Enable pairing autostart"
default n
help
Open pairing window automatically at application boot time.
config CHIP_ENABLE_DNSSD_SRP
bool "Enable support for service registration"
default y
imply OPENTHREAD_ECDSA
imply OPENTHREAD_SRP_CLIENT
help
Enables DNS-SD SRP client support
config CHIP_ENABLE_DNS_CLIENT
bool "Enable support for DNS client"
default y
imply OPENTHREAD_DNS_CLIENT
help
Enables DNS client support used for resolving and browsing services.
config CHIP_ENABLE_SLEEPY_END_DEVICE_SUPPORT
bool "Enable sleepy end device support"
default n
depends on OPENTHREAD_MTD
imply OPENTHREAD_MTD_SED
help
Enables Thread Sleepy End Device support in Matter.
config CHIP_OTA_REQUESTOR
bool "Enable OTA requestor"
help
Enables OTA (Over-the-air) Requestor role that allows a device to perform
Device Firmware Upgrade by quering and downloading a new firmware image
from an external OTA Provider node.
config CHIP_ROTATING_DEVICE_ID
bool "Enable rotating device ID support"
help
Enables rotating device identifier that provides a non-trackable identifier
which is unique per device and rotates at pre-defined moments.
config CHIP_COMMISSIONABLE_DEVICE_TYPE
bool "Enable the device type subtype in commissionable node discovery record"
depends on CHIP_ENABLE_DNSSD_SRP
help
Enables including device type subtype in the commissionable node discovery record,
which allows filtering of the results to find the nodes that match the device type.
config CHIP_DEVICE_TYPE
int "Device type"
default 65535
range 0 65535
help
Type of device that uses the CHIP Device Type Identifier. The default value means invalid device type.
config CHIP_OPERATIONAL_TIME_SAVE_INTERVAL
int "Interval of saving node operation time to flash in hours unit"
default 10
range 1 4294967295
help
Interval in hours with which the node operation time is saved to the flash
memory. Selected value is a trade off between performing frequent saves to know
precisely operation time in case of device reboot and maximizing flash memory
lifetime.
config APP_LINK_WITH_CHIP
bool "Link 'app' with Connected Home over IP"
default y
help
Add Connected Home over IP header files to the 'app' include path
and link the 'app' with Connected Home over IP libraries.
config CHIP_OTA_IMAGE_BUILD
bool "Generate OTA image"
help
Enable building OTA (Over-the-air update) image.
config CHIP_OTA_IMAGE_EXTRA_ARGS
string "OTA image creator extra arguments"
depends on CHIP_OTA_IMAGE_BUILD
help
This option allows one to pass optional arguments to the
ota_image_tool.py script, used for building OTA image.
module = MATTER
module-str = Matter
source "${ZEPHYR_BASE}/subsys/logging/Kconfig.template.log_config"
endif