From 146349210959db63ef3254e16452a78bc1758e1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Damian=20Kr=C3=B3lik?= <66667989+Damian-Nordic@users.noreply.github.com> Date: Wed, 4 Jan 2023 17:16:11 +0100 Subject: [PATCH] [nrfconnect] Disable selected BLE features and RTT (#24227) Disable encryption and EC in BLE controller, and JLink RTT in all nRF Connect examples. BLE changes save over 5.5kB of flash and almost 2kB of RAM. Disabling RTT saves over 1kB of RAM, additionally. Signed-off-by: Damian Krolik Signed-off-by: Damian Krolik --- config/nrfconnect/chip-module/Kconfig.defaults | 12 ++++++++++++ examples/all-clusters-app/nrfconnect/prj.conf | 3 +++ examples/all-clusters-app/nrfconnect/prj_dfu.conf | 3 ++- .../all-clusters-app/nrfconnect/prj_release.conf | 1 + .../all-clusters-minimal-app/nrfconnect/prj.conf | 3 +++ .../all-clusters-minimal-app/nrfconnect/prj_dfu.conf | 3 ++- .../nrfconnect/prj_release.conf | 1 + examples/light-switch-app/nrfconnect/prj.conf | 3 +++ examples/light-switch-app/nrfconnect/prj_no_dfu.conf | 3 +++ .../light-switch-app/nrfconnect/prj_release.conf | 1 + examples/lighting-app/nrfconnect/prj.conf | 3 +++ examples/lighting-app/nrfconnect/prj_no_dfu.conf | 3 +++ examples/lighting-app/nrfconnect/prj_release.conf | 1 + examples/lock-app/nrfconnect/prj.conf | 3 +++ examples/lock-app/nrfconnect/prj_no_dfu.conf | 3 +++ examples/lock-app/nrfconnect/prj_release.conf | 1 + examples/pump-app/nrfconnect/prj.conf | 6 +++--- examples/pump-app/nrfconnect/prj_no_dfu.conf | 3 +++ examples/pump-app/nrfconnect/prj_release.conf | 1 + examples/pump-controller-app/nrfconnect/prj.conf | 3 +++ .../pump-controller-app/nrfconnect/prj_no_dfu.conf | 3 +++ .../pump-controller-app/nrfconnect/prj_release.conf | 1 + examples/window-app/nrfconnect/prj.conf | 3 +++ examples/window-app/nrfconnect/prj_no_dfu.conf | 3 +++ examples/window-app/nrfconnect/prj_release.conf | 1 + 25 files changed, 66 insertions(+), 5 deletions(-) diff --git a/config/nrfconnect/chip-module/Kconfig.defaults b/config/nrfconnect/chip-module/Kconfig.defaults index 67d4b1f23cf88a..88519293b67d77 100644 --- a/config/nrfconnect/chip-module/Kconfig.defaults +++ b/config/nrfconnect/chip-module/Kconfig.defaults @@ -135,6 +135,18 @@ config BT_BUF_ACL_TX_SIZE config BT_RX_STACK_SIZE default 1200 +config BT_CTLR_ECDH + bool + default n + +config BT_CTLR_LE_ENC + bool + default n + +config BT_DEVICE_NAME_GATT_WRITABLE + bool + default n + # Enable NFC support config CHIP_NFC_COMMISSIONING diff --git a/examples/all-clusters-app/nrfconnect/prj.conf b/examples/all-clusters-app/nrfconnect/prj.conf index ee2bee67b64ce4..51d5dd89c68a5f 100644 --- a/examples/all-clusters-app/nrfconnect/prj.conf +++ b/examples/all-clusters-app/nrfconnect/prj.conf @@ -36,6 +36,9 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n +# Reduce application size +CONFIG_USE_SEGGER_RTT=n + # Disable OTA requestor CONFIG_CHIP_OTA_REQUESTOR=n diff --git a/examples/all-clusters-app/nrfconnect/prj_dfu.conf b/examples/all-clusters-app/nrfconnect/prj_dfu.conf index b91bf3fa8298a6..c0d47e635ed406 100644 --- a/examples/all-clusters-app/nrfconnect/prj_dfu.conf +++ b/examples/all-clusters-app/nrfconnect/prj_dfu.conf @@ -35,7 +35,8 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n -# reduce application size by disabling including assertions in the output file. +# Reduce application size +CONFIG_USE_SEGGER_RTT=n CONFIG_ASSERT_VERBOSE=n CONFIG_ASSERT_NO_FILE_INFO=y CONFIG_ASSERT_NO_COND_INFO=y diff --git a/examples/all-clusters-app/nrfconnect/prj_release.conf b/examples/all-clusters-app/nrfconnect/prj_release.conf index 5816426f0fc09e..b229f68b308b9d 100644 --- a/examples/all-clusters-app/nrfconnect/prj_release.conf +++ b/examples/all-clusters-app/nrfconnect/prj_release.conf @@ -35,6 +35,7 @@ CONFIG_BT_DEVICE_NAME="AllClusters" CONFIG_RESET_ON_FATAL_ERROR=y # Disable all debug features +CONFIG_USE_SEGGER_RTT=n CONFIG_SHELL=n CONFIG_OPENTHREAD_SHELL=n CONFIG_CONSOLE=n diff --git a/examples/all-clusters-minimal-app/nrfconnect/prj.conf b/examples/all-clusters-minimal-app/nrfconnect/prj.conf index 2c2c8d2fc81c28..c33baaa8d79761 100644 --- a/examples/all-clusters-minimal-app/nrfconnect/prj.conf +++ b/examples/all-clusters-minimal-app/nrfconnect/prj.conf @@ -36,6 +36,9 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n +# Reduce application size +CONFIG_USE_SEGGER_RTT=n + # Disable OTA requestor CONFIG_CHIP_OTA_REQUESTOR=n diff --git a/examples/all-clusters-minimal-app/nrfconnect/prj_dfu.conf b/examples/all-clusters-minimal-app/nrfconnect/prj_dfu.conf index 292d7a086d4e89..6effabf6914a9b 100644 --- a/examples/all-clusters-minimal-app/nrfconnect/prj_dfu.conf +++ b/examples/all-clusters-minimal-app/nrfconnect/prj_dfu.conf @@ -36,7 +36,8 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n -# reduce application size by disabling including assertions in the output file. +# Reduce application size +CONFIG_USE_SEGGER_RTT=n CONFIG_ASSERT_VERBOSE=n CONFIG_ASSERT_NO_FILE_INFO=y CONFIG_ASSERT_NO_COND_INFO=y diff --git a/examples/all-clusters-minimal-app/nrfconnect/prj_release.conf b/examples/all-clusters-minimal-app/nrfconnect/prj_release.conf index 33cd3f38589653..8029f55a1e31f4 100644 --- a/examples/all-clusters-minimal-app/nrfconnect/prj_release.conf +++ b/examples/all-clusters-minimal-app/nrfconnect/prj_release.conf @@ -35,6 +35,7 @@ CONFIG_BT_DEVICE_NAME="AllClusters" CONFIG_RESET_ON_FATAL_ERROR=y # Disable all debug features +CONFIG_USE_SEGGER_RTT=n CONFIG_SHELL=n CONFIG_OPENTHREAD_SHELL=n CONFIG_CONSOLE=n diff --git a/examples/light-switch-app/nrfconnect/prj.conf b/examples/light-switch-app/nrfconnect/prj.conf index 19f3cb266a6abc..23fa257975fe64 100644 --- a/examples/light-switch-app/nrfconnect/prj.conf +++ b/examples/light-switch-app/nrfconnect/prj.conf @@ -38,3 +38,6 @@ CONFIG_BT_DEVICE_NAME="MatterSwitch" CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n + +# Reduce application size +CONFIG_USE_SEGGER_RTT=n diff --git a/examples/light-switch-app/nrfconnect/prj_no_dfu.conf b/examples/light-switch-app/nrfconnect/prj_no_dfu.conf index 27475ce596444c..145cb9b50f835e 100644 --- a/examples/light-switch-app/nrfconnect/prj_no_dfu.conf +++ b/examples/light-switch-app/nrfconnect/prj_no_dfu.conf @@ -39,6 +39,9 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n +# Reduce application size +CONFIG_USE_SEGGER_RTT=n + # Disable Matter OTA DFU CONFIG_CHIP_OTA_REQUESTOR=n diff --git a/examples/light-switch-app/nrfconnect/prj_release.conf b/examples/light-switch-app/nrfconnect/prj_release.conf index a55449c991b17c..520a280b1e18ab 100644 --- a/examples/light-switch-app/nrfconnect/prj_release.conf +++ b/examples/light-switch-app/nrfconnect/prj_release.conf @@ -41,6 +41,7 @@ CONFIG_RESET_ON_FATAL_ERROR=y CONFIG_PM_DEVICE=y # Disable all debug features +CONFIG_USE_SEGGER_RTT=n CONFIG_SHELL=n CONFIG_OPENTHREAD_SHELL=n CONFIG_CONSOLE=n diff --git a/examples/lighting-app/nrfconnect/prj.conf b/examples/lighting-app/nrfconnect/prj.conf index 1a796988571cf5..ad67f13edf08e3 100644 --- a/examples/lighting-app/nrfconnect/prj.conf +++ b/examples/lighting-app/nrfconnect/prj.conf @@ -46,3 +46,6 @@ CONFIG_IEEE802154_NRF5_RX_STACK_SIZE=1024 CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n + +# Reduce application size +CONFIG_USE_SEGGER_RTT=n diff --git a/examples/lighting-app/nrfconnect/prj_no_dfu.conf b/examples/lighting-app/nrfconnect/prj_no_dfu.conf index 7fc72e8fcbd704..a2d0392c98b5a9 100644 --- a/examples/lighting-app/nrfconnect/prj_no_dfu.conf +++ b/examples/lighting-app/nrfconnect/prj_no_dfu.conf @@ -43,6 +43,9 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n +# Reduce application size +CONFIG_USE_SEGGER_RTT=n + # Stack size settings CONFIG_IEEE802154_NRF5_RX_STACK_SIZE=1024 diff --git a/examples/lighting-app/nrfconnect/prj_release.conf b/examples/lighting-app/nrfconnect/prj_release.conf index 5ff25156b6861b..762b6d44f919c7 100644 --- a/examples/lighting-app/nrfconnect/prj_release.conf +++ b/examples/lighting-app/nrfconnect/prj_release.conf @@ -45,6 +45,7 @@ CONFIG_RESET_ON_FATAL_ERROR=y CONFIG_IEEE802154_NRF5_RX_STACK_SIZE=1024 # Disable all debug features +CONFIG_USE_SEGGER_RTT=n CONFIG_SHELL=n CONFIG_OPENTHREAD_SHELL=n CONFIG_CONSOLE=n diff --git a/examples/lock-app/nrfconnect/prj.conf b/examples/lock-app/nrfconnect/prj.conf index 676ae5a05f2599..6b4864a2a486b7 100644 --- a/examples/lock-app/nrfconnect/prj.conf +++ b/examples/lock-app/nrfconnect/prj.conf @@ -35,3 +35,6 @@ CONFIG_BT_DEVICE_NAME="MatterLock" CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n + +# Reduce application size +CONFIG_USE_SEGGER_RTT=n diff --git a/examples/lock-app/nrfconnect/prj_no_dfu.conf b/examples/lock-app/nrfconnect/prj_no_dfu.conf index 839f839fc2e74f..a53431aa2dd9d7 100644 --- a/examples/lock-app/nrfconnect/prj_no_dfu.conf +++ b/examples/lock-app/nrfconnect/prj_no_dfu.conf @@ -36,6 +36,9 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n +# Reduce application size +CONFIG_USE_SEGGER_RTT=n + # Disable Matter OTA DFU CONFIG_CHIP_OTA_REQUESTOR=n diff --git a/examples/lock-app/nrfconnect/prj_release.conf b/examples/lock-app/nrfconnect/prj_release.conf index b41ed9ede98909..ba830806523ded 100644 --- a/examples/lock-app/nrfconnect/prj_release.conf +++ b/examples/lock-app/nrfconnect/prj_release.conf @@ -38,6 +38,7 @@ CONFIG_RESET_ON_FATAL_ERROR=y CONFIG_PM_DEVICE=y # Disable all debug features +CONFIG_USE_SEGGER_RTT=n CONFIG_SHELL=n CONFIG_OPENTHREAD_SHELL=n CONFIG_CONSOLE=n diff --git a/examples/pump-app/nrfconnect/prj.conf b/examples/pump-app/nrfconnect/prj.conf index 3195f884e65720..3013e7d7aec421 100644 --- a/examples/pump-app/nrfconnect/prj.conf +++ b/examples/pump-app/nrfconnect/prj.conf @@ -14,9 +14,6 @@ # limitations under the License. # -CONFIG_CHIP=y -CONFIG_STD_CPP14=y - # This sample uses Kconfig.defaults to set options common for all # samples. This file should contain only options specific for this sample # or overrides of default values. @@ -38,3 +35,6 @@ CONFIG_BT_DEVICE_NAME="MatterPump" CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n + +# Reduce application size +CONFIG_USE_SEGGER_RTT=n diff --git a/examples/pump-app/nrfconnect/prj_no_dfu.conf b/examples/pump-app/nrfconnect/prj_no_dfu.conf index 67c31871ce797f..a0d3f8b1a879c2 100644 --- a/examples/pump-app/nrfconnect/prj_no_dfu.conf +++ b/examples/pump-app/nrfconnect/prj_no_dfu.conf @@ -36,6 +36,9 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n +# Reduce application size +CONFIG_USE_SEGGER_RTT=n + # Disable Matter OTA DFU CONFIG_CHIP_OTA_REQUESTOR=n diff --git a/examples/pump-app/nrfconnect/prj_release.conf b/examples/pump-app/nrfconnect/prj_release.conf index adb09f72ef3db2..540c77354fa82f 100644 --- a/examples/pump-app/nrfconnect/prj_release.conf +++ b/examples/pump-app/nrfconnect/prj_release.conf @@ -38,6 +38,7 @@ CONFIG_RESET_ON_FATAL_ERROR=y CONFIG_PM_DEVICE=y # Disable all debug features +CONFIG_USE_SEGGER_RTT=n CONFIG_SHELL=n CONFIG_OPENTHREAD_SHELL=n CONFIG_CONSOLE=n diff --git a/examples/pump-controller-app/nrfconnect/prj.conf b/examples/pump-controller-app/nrfconnect/prj.conf index 4a38ec1177c699..5b9c2baff8ee9e 100644 --- a/examples/pump-controller-app/nrfconnect/prj.conf +++ b/examples/pump-controller-app/nrfconnect/prj.conf @@ -35,3 +35,6 @@ CONFIG_BT_DEVICE_NAME="MatterPumpCtrl" CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n + +# Reduce application size +CONFIG_USE_SEGGER_RTT=n diff --git a/examples/pump-controller-app/nrfconnect/prj_no_dfu.conf b/examples/pump-controller-app/nrfconnect/prj_no_dfu.conf index dba7042ad82864..d6632fe9172638 100644 --- a/examples/pump-controller-app/nrfconnect/prj_no_dfu.conf +++ b/examples/pump-controller-app/nrfconnect/prj_no_dfu.conf @@ -37,6 +37,9 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n +# Reduce application size +CONFIG_USE_SEGGER_RTT=n + # Disable Matter OTA DFU CONFIG_CHIP_OTA_REQUESTOR=n diff --git a/examples/pump-controller-app/nrfconnect/prj_release.conf b/examples/pump-controller-app/nrfconnect/prj_release.conf index 88ea95c777e1a1..fc3b092b655c8f 100644 --- a/examples/pump-controller-app/nrfconnect/prj_release.conf +++ b/examples/pump-controller-app/nrfconnect/prj_release.conf @@ -39,6 +39,7 @@ CONFIG_RESET_ON_FATAL_ERROR=y CONFIG_PM_DEVICE=y # Disable all debug features +CONFIG_USE_SEGGER_RTT=n CONFIG_SHELL=n CONFIG_OPENTHREAD_SHELL=n CONFIG_CONSOLE=n diff --git a/examples/window-app/nrfconnect/prj.conf b/examples/window-app/nrfconnect/prj.conf index a284009a305d99..3dc711bce86098 100644 --- a/examples/window-app/nrfconnect/prj.conf +++ b/examples/window-app/nrfconnect/prj.conf @@ -46,3 +46,6 @@ CONFIG_IEEE802154_NRF5_RX_STACK_SIZE=1024 CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n + +# Reduce application size +CONFIG_USE_SEGGER_RTT=n diff --git a/examples/window-app/nrfconnect/prj_no_dfu.conf b/examples/window-app/nrfconnect/prj_no_dfu.conf index 3f55608bc1357e..d2da9b1a184eaa 100644 --- a/examples/window-app/nrfconnect/prj_no_dfu.conf +++ b/examples/window-app/nrfconnect/prj_no_dfu.conf @@ -52,6 +52,9 @@ CONFIG_THREAD_NAME=y CONFIG_MPU_STACK_GUARD=y CONFIG_RESET_ON_FATAL_ERROR=n +# Reduce application size +CONFIG_USE_SEGGER_RTT=n + # Disable Matter OTA DFU CONFIG_CHIP_OTA_REQUESTOR=n diff --git a/examples/window-app/nrfconnect/prj_release.conf b/examples/window-app/nrfconnect/prj_release.conf index c801e2f86bb9a7..336eb9ea95169f 100644 --- a/examples/window-app/nrfconnect/prj_release.conf +++ b/examples/window-app/nrfconnect/prj_release.conf @@ -54,6 +54,7 @@ CONFIG_IEEE802154_NRF5_RX_STACK_SIZE=1024 CONFIG_PM_DEVICE=y # Disable all debug features +CONFIG_USE_SEGGER_RTT=n CONFIG_SHELL=n CONFIG_OPENTHREAD_SHELL=n CONFIG_CONSOLE=n