I am just starting development of a BLE mesh product on the nRF52840 using the serial demo on the nRF52840DK. By default PERSISTENT_STORAGE=0 in the demo so the nodes forget their configuration after each power cycle. I set PERSISTENT_STORAGE=1 in Segger and now the configuration is persistent - great. However I have some questions:
- By breakpointing I found the flash file system is using a 4k FLASH sector at 0xFE000 - this is the same location as MBR parameter storage on the 52840 with S140 V 7.0. Is this an issue ? Also the mp_recovery_area is at 0xFF000 - which conflicts with the bootloader settings.
- Does PERSISTENT_STORAGE=1 also cause mesh traffic to be persistent ? (e.g. the mesh replay cache) Is this automatic with the reception / relay of each mesh message, or must the application invoke a function to store the replay cache to NVM prior to power off ?
My requirements, in short are that the mesh nodes retain their configuration (netkeys, appkeys, replay cache) when powered off, and ideally retain netkeys and appkeys when reprogrammed (either via serial or BLE). I'd be very grateful for any guidance you can offer.