### This configuration enables fewer settings than the default, making it
### suitable for a device with 32kB of RAM and 72kB image slots (e.g.,
### nRF51).

# Enable mcumgr.
CONFIG_MCUMGR=y

# Some command handlers require a large stack.
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048

# Ensure an MCUboot-compatible binary is generated.
CONFIG_BOOTLOADER_MCUBOOT=y

# Allow for large Bluetooth data packets.
CONFIG_BT_L2CAP_TX_MTU=260
CONFIG_BT_RX_BUF_LEN=260

# Enable the Bluetooth and UART mcumgr transports.
CONFIG_MCUMGR_SMP_BT=y
#CONFIG_MCUMGR_SMP_SHELL=y
CONFIG_MCUMGR_SMP_UART=y

# Disable Bluetooth unused features
CONFIG_BT_GATT_READ_MULTIPLE=n

# Bluetooth support requires a net_buf user_data size >= 7.
CONFIG_NET_BUF_USER_DATA_SIZE=7

# Enable flash operations.
CONFIG_FLASH=y

# Enable the NFFS file system.
#CONFIG_FILE_SYSTEM=y
#CONFIG_FILE_SYSTEM_NFFS=y

# Required by the `taskstat` command.
CONFIG_THREAD_MONITOR=y

# Enable statistics and statistic names.
CONFIG_STATS=y
#CONFIG_STATS_NAMES=y

# Enable all core commands.
#CONFIG_MCUMGR_CMD_FS_MGMT=y
CONFIG_MCUMGR_CMD_IMG_MGMT=y
CONFIG_MCUMGR_CMD_OS_MGMT=y
CONFIG_MCUMGR_CMD_STAT_MGMT=y

### nRF5 specific settings

# Specify the location of the NFFS file system.
#CONFIG_FS_NFFS_FLASH_DEV_NAME="NRF_FLASH"
