NVM Layout#

The non-volatile memory management system, called non-volatile memory 3 (NVM3), is a data storage driver for storing persistent data primarily, but not only, in internal flash. The term "non-volatile" and "NVM3" are synonymous in this section.

Using Third Generation Non Volatile Memory Data Storage describes in detail how NVM3 operates. The NVM3 subsystem allocates a certain range of address to both the user and the Bluetooth LE and Bluetooth mesh stacks, among other things. The following table shows what key ranges are dedicated to the stack and the user:

Domain

NVM3 Key Range

User

0x00000 - 0x0FFFF

Bluetooth stack

0x40000 - 0x4FFFF

The Bluetooth stack key range is shared between regular Bluetooth Low Energy and Bluetooth mesh. Within this key range, the distribution is laid out as follow:

Domain

NVM3 Key Range

Bluetooth internal stack data (bonding, etc.)

0x40000 - 0x40FFF

Bluetooth mesh stack data

0x41000 - 0x44000

Reserved for future use

0x48000 - 0x4FFFF