Memory requirements
This page provides information about the amount of flash memory and RAM that is required by the Samples. Use it to check if your application has enough space for a given configuration.
Unless stated otherwise, the default prj.conf was used for debug builds, and release.conf was added as an extra overlay for release builds.
Sample variants match the Twister scenarios defined in each sample’s sample.yaml file.
Memory layout in DTS
The Samples define flash partitions in Devicetree (DTS).
The Matter and Zigbee add-on ships ready-made partition files under dts/ in the Matter and Zigbee add-on repository.
Use them as-is, or copy and adjust them for your board.
Each layout reserves the end of internal flash for:
factory_data_partition- Matter factory datastorage_partition- Zephyr settings storagezboss_nvram- ZBOSS non-volatile datazboss-product-config- ZBOSS product configuration
The following table lists the available files, which targets they cover, and when to use each variant:
Variant |
Path |
Targets |
When to use |
|---|---|---|---|
Internal flash |
|
nRF54LM20 DK (DK only)
|
Default layout with all partitions on internal flash. |
External flash (MCUboot secondary slot) |
|
nRF54L15 DK (DK only)
nRF54LM20 DK (DK only)
|
Same as the internal layout, but places |
To add an overlay file to your application, add an #include line to app.overlay or to a board overlay in boards/.
See an example for the nRF54LM20 DK with external-flash FOTA in the boards/nrf54lm20dk_nrf54lm20a_cpuapp.overlay file:
#include <nrf54lm20dk_cpuapp_partitions_ext_flash.dtsi>
RAM and flash memory requirements
RAM and flash memory requirement values differ depending on the programmed sample.
The following tables and bar charts list memory requirement values for the combined Matter and Zigbee samples.
Values include the ZBOSS stack, Matter stack, MCUboot bootloader, and ZBOSS non-volatile regions where applicable.
Each row corresponds to a Twister build scenario from samples/light_bulb/sample.yaml or samples/light_switch/sample.yaml.
Scenarios not supported on a given board target are omitted from that board’s view.
Memory layout is taken from the DTS files used by each sample variant, while memory usage is taken from the build output.
Values are provided in kilobytes (KB).
Unsupported sample variants are omitted from each board view.
-- indicates that a partition is not used by the sample configuration.
Table columns are grouped by internal NVM, external NVM (when used), and RAM.
Application, MCUboot, upgrade slot, and RAM cells show used and free space separated by /.
Other NVM columns list the reserved partition size for that region.
Memory requirements for samples running on the nrf54l15dk.
Memory requirements for samples running on the nrf54lm20dk with the nrf54lm20dk/nrf54lm20a/cpuapp or nrf54lm20dk/nrf54lm20b/cpuapp board targets.
The following table lists memory requirements for samples running on the nrf54l15dk.
| Sample | Internal NVM (1524 kB) | External NVM (8192 kB) | RAM (256 kB) | ||||||
|---|---|---|---|---|---|---|---|---|---|
| MCUboot (used / free) | Application (used / free) | Upgrade slot (used / free) | Factory data | Storage | ZBOSS NVRAM | ZBOSS product config | Upgrade slot (external) (used / free) | used / free | |
Light bulb (debug) |
56 / 24 | 1003 / 361 | -- | 4 | 40 | 32 | 4 | 1364 | 233 / 23 |
Light bulb (release) |
56 / 24 | 914 / 450 | -- | 4 | 40 | 32 | 4 | 1364 | 232 / 24 |
Light switch (debug) |
56 / 24 | 878 / 486 | -- | 4 | 40 | 32 | 4 | 1364 | 216 / 40 |
Light switch (release) |
56 / 24 | 793 / 571 | -- | 4 | 40 | 32 | 4 | 1364 | 216 / 40 |
The following table lists memory requirements for samples running on the nrf54lm20dk with the nrf54lm20dk/nrf54lm20a/cpuapp or nrf54lm20dk/nrf54lm20b/cpuapp board targets.
| Sample | Internal NVM (2036 kB) | External NVM (8192 kB) | RAM (511 kB) | ||||||
|---|---|---|---|---|---|---|---|---|---|
| MCUboot (used / free) | Application (used / free) | Upgrade slot (used / free) | Factory data | Storage | ZBOSS NVRAM | ZBOSS product config | Upgrade slot (external) (used / free) | used / free | |
Light bulb (debug) |
42 / 14 | 1005 / 935 | -- | 4 | 48 | 32 | 4 | 1940 | 233 / 278 |
Light bulb (internal flash) |
42 / 0 | 998 / 142 | 768 | 4 | 48 | 32 | 4 | -- | 233 / 278 |
Light bulb (release) |
42 / 14 | 916 / 1024 | -- | 4 | 48 | 32 | 4 | 1940 | 233 / 278 |
Light switch (debug) |
42 / 14 | 878 / 1062 | -- | 4 | 48 | 32 | 4 | 1940 | 216 / 295 |
Light switch (internal flash) |
42 / 0 | 879 / 261 | 768 | 4 | 48 | 32 | 4 | -- | 216 / 295 |
Light switch (release) |
42 / 14 | 794 / 1146 | -- | 4 | 48 | 32 | 4 | 1940 | 216 / 295 |