#
# Copyright (c) 2022 Nordic Semiconductor
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

menuconfig ZIGBEE_SHELL
	bool "Enable Zigbee Shell"
	depends on ZIGBEE
	imply SHELL

if ZIGBEE_SHELL

config ZIGBEE_SHELL_ENDPOINT
	int "Number of endpoint to be used by the Zigbee Shell instance"
	range 1 240
	help
	  This option sets the endpoint which Zigbee shell uses for sending commands.
	  Zigbee shell library can utilize only already existing endpoint.

	  Note: If chosen endpoint is not registered, some functionalities will not work correctly.

config ZIGBEE_SHELL_CTX_MGR_ENTRIES_NBR
	int "Number of entries in context manager"
	default 24
	range 3 254
	help
	  Number of entries in context manager of Zigbee Shell.
	  Entries are shared by ZDO commands, ZCL commands and PING commands.

config ZIGBEE_SHELL_DEBUG_CMD
	bool "Enable debug shell commands"
	select ZIGBEE_DEBUG_FUNCTIONS
	imply ZIGBEE_LOGGER_EP
	help
	  This option enables:

	  - Logging incoming ZCL frames.
	  - Command to send custom ZCL frames.
	  - Command to suspend/resume Zigbee Stack execution.

	  Note: These commands may be useful when debugging but can cause instability of the device.

config ZIGBEE_SHELL_ZCL_CMD_TIMEOUT
	int "Amount of time in seconds after which the ZCL cmd commands time out if no response is received"
	default 10
	range 5 60

config ZIGBEE_SHELL_MONITOR_CACHE_SIZE
	int "Size of the Zigbee active neighbor monitor cache"
	default 10
	range 3 254
	help
	  The maximum number of neighbor table entries, logged by the Zigbee active neighbor monitor.

# Configure ZIGBEE_SHELL_LOG_LEVEL
module = ZIGBEE_SHELL
module-str = Zigbee Shell
source "${ZEPHYR_BASE}/subsys/logging/Kconfig.template.log_config"

endif #ZIGBEE_SHELL
