Skip to content

Commit a859ece

Browse files
samples: matter: Optimized LIT configuration
The LIT configuration in Matter samples can be slightly changed to achieve lower power consumption. Additionally, added piece of documentation explaining how to configure the radio driver calibration period. Signed-off-by: Kamil Kasperczyk <kamil.kasperczyk@nordicsemi.no>
1 parent ba827b3 commit a859ece

File tree

3 files changed

+33
-0
lines changed

3 files changed

+33
-0
lines changed

doc/nrf/protocols/matter/getting_started/low_power_configuration.rst

+18
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,24 @@ Configure radio transmitter power
288288

289289
See :ref:`ug_matter_gs_transmission_power` for more information.
290290

291+
Configure radio driver temperature calibration period
292+
*****************************************************
293+
294+
The radio driver requires periodic calibration events to compensate the potential temperature changes that may affect the clock configuration.
295+
How often the calibration should take place depends on the device's environment and the temperature changes the device is exposed to.
296+
For example, a device that is mobile or installed outdoors likely requires shorter calibration period than a device that is installed indoors.
297+
298+
Additionally, the calibration period has an impact on the device's power consumption, because it results in device wake-ups.
299+
It is recommended not to use a calibration period value smaller than required to avoid the unnecessary increase in power consumption.
300+
301+
You can configure the calibration period using the following Kconfig options:
302+
303+
* :kconfig:option:`CONFIG_NRF_802154_TEMPERATURE_UPDATE_PERIOD` - Configures the 802.15.4 radio driver calibration period in milliseconds.
304+
The default value is 60000 ms (60 s), which is optimal for most use cases.
305+
* :kconfig:option:`CONFIG_MPSL_CALIBRATION_PERIOD` - Configures Multiprotocol Service Layer (MPSL) driver calibration period in milliseconds.
306+
This is used only, if the application uses LFRC or it is run on an nRF54L Series SoC.
307+
The default value is 4000 ms (4 s), which is likely too aggressive for most use cases.
308+
291309
Disable unused RAM sections
292310
***************************
293311

samples/matter/light_switch/snippets/lit_icd/lit_icd.conf

+7
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,12 @@
77
# Enable LIT ICD configuration
88
CONFIG_CHIP_ICD_LIT_SUPPORT=y
99
CONFIG_CHIP_ICD_SIT_SLOW_POLL_LIMIT=5000
10+
11+
# Use the same value as CONFIG_CHIP_ICD_IDLE_MODE_DURATION
12+
CONFIG_CHIP_ICD_SLOW_POLL_INTERVAL=300000
13+
14+
# Use greater than default (200 ms) value to limit the impact of Active Threshold Duration on power consumption
15+
CONFIG_CHIP_ICD_FAST_POLLING_INTERVAL=500
16+
1017
CONFIG_CHIP_ICD_REPORT_ON_ACTIVE_MODE=y
1118
CONFIG_NCS_SAMPLE_MATTER_ZAP_FILES_PATH="snippets/lit_icd"

samples/matter/smoke_co_alarm/Kconfig

+8
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,14 @@ config CHIP_ICD_LIT_SUPPORT
2222
config CHIP_ICD_SIT_SLOW_POLL_LIMIT
2323
default 5000
2424

25+
# Use the same value as CONFIG_CHIP_ICD_IDLE_MODE_DURATION
26+
config CHIP_ICD_SLOW_POLL_INTERVAL
27+
default 300000
28+
29+
# Use greater than default (200 ms) value to limit the impact of Active Threshold Duration on power consumption
30+
config CHIP_ICD_FAST_POLLING_INTERVAL
31+
default 500
32+
2533
config CHIP_ICD_REPORT_ON_ACTIVE_MODE
2634
default y
2735

0 commit comments

Comments
 (0)