Default storage of persistent info for OpenThread

Hello,

I wanted to understand what is the default storage place in the internal flash memory region of persistent info for OpenThread. In the previous SDK (Thread and Zigbee) it was clearly mentioned the default memory region as shown below, (reference: Persistent storage of the thread instance)

But with the nrf connect SDK I did not find any such document stating a clarity at this. Currently, I build openthread in my project with the configs shown below,

# Generic networking options
CONFIG_NETWORKING=y

# OpenThread enabling
CONFIG_NET_L2_OPENTHREAD=y
# Openthread build from source
CONFIG_OPENTHREAD_SOURCES=y
CONFIG_OPENTHREAD_NORDIC_LIBRARY_FTD=n
CONFIG_OPENTHREAD_NORDIC_LIBRARY_MTD=y
CONFIG_OPENTHREAD_MTD=y
CONFIG_OPENTHREAD_MTD_SED=y
CONFIG_OPENTHREAD_THREAD_VERSION_1_3=y

# OpenThread config
CONFIG_OPENTHREAD_MANUAL_START=y
CONFIG_OPENTHREAD_JOINER=y
CONFIG_OPENTHREAD_JOINER_AUTOSTART=n
 Partition manager static yml file the nvs storage location is provided as,

nvs_storage:
  address: 0xFA000
  end_address: 0x100000
  placement:
    before:
    - end
  region: flash_primary
  size: 0x6000
As per the NVS documentation OpenThread data should be stored in NVS data partition.The place at which the dataset is stored currently is in internal flash at address: 0xF3000. How is this address selected?

Kind regards,
Tushar D
Parents Reply
  • Hello Maria,

    Thank you for your quick reply. I have add these extra configs in my proj.conf
    CONFIG_NVS=y
    CONFIG_SETTINGS=y
    CONFIG_SETTINGS_NVS=y

    Also I have edited my .dts file to have the label "storage" for the storage partition with start address @FA000.

    Even though this is set the openthread data is still stored at 0xF3000.

    Is the openthread handling the storage by itself or we need to over ride some functions of openthread? 
    Currently, I am just not able to store the openthread data at this address.
Children
Related