nRF5 SDK for Thread and Zigbee v3.0.0
Zigbee memory layout and requirements

Table of Contents

This page provides information about the layout and the amount of Flash and RAM memory required by the Zigbee stack with an example application. These values are useful to see whether your application has enough space for running in different Zigbee configurations.

Zigbee stack memory layout

The following figures present a typical flash and RAM layout for an application that uses the Zigbee stack in single and multiprotocol scenarios.

Zigbee stack flash and RAM layout

Zigbee stack flash and RAM layout for multiprotocol Zigbee/BLE solution

For details on the values of APP_CODE_BASE and APP_RAM_BASE, see S140 SoftDevice memory resource map and usage.

The following figure shows a typical ROM layout for an application that uses MBR and Bootloader.

Zigbee stack ROM layout

Typical flash and RAM requirements

The following table summarizes typical flash and RAM requirements for various Zigbee device types, including simple user application. The values for end device, router, and coordinator were calculated based on the light control example built with the GCC compiler.

The values for multiprotocol Zigbee/BLE were calculated based on multiprotocol examples and include SoftDevice flash and RAM requirements.

Role Example Flash [kB]
(Zigbee stack + app)
data [kB]
configuration [kB]
RAM [kB]
(Zigbee stack + app)
Flash [kB]
(BLE stack)
RAM [kB]
(BLE stack)
Total ROM [kB] Total RAM [kB]
End device light_control/light_switch/pca10056 180 32 16 15 228 15
Router light_control/light_bulb/pca10056 241 32 16 23 289 23
Coordinator light_control/light_coordinator/pca10056 219 32 16 32 267 32
Router + BLE Peripheral ble_zigbee_dynamic_light_bulb_eddystone/pca10056 290 32 16 33 152 11 490 44
ZED + BLE Peripheral ble_zigbee_dynamic_light_switch_nus/pca10056 201 32 16 18 152 11 401 29
ZED + BLE Central ble_zigbee_dynamic_color_light_bulb_thingy/pca10056 212 32 16 22 152 11 412 33
Breakdown of typical flash and RAM requirements

The Zigbee solution provided with the SDK allows you to adjust the flash and memory requirements at application compile time. By convention, all examples provided in the SDK use minimal configuration for end devices, medium for routers, and maximum for coordinators. For details, see Zigbee stack RAM usage configuration and Zigbee stack flash usage configuration.

Documentation feedback | Developer Zone | Subscribe | Updated