I am running into an issue around flash management when attempting mesh coexistance with BLE.
The call I am failing on is during mesh_init().
Line 298 of flash_manager.c
/* If the page isn't blank, it has to contain valid metadata. If
* this fails, the selected area contains data not managed by the
* flash manager. */
NRF_MESH_ASSERT(metadata_is_valid(&p_manager->config.p_area[i].metadata));
I am using nrf5SDK 17.02 and Mesh SDK 5.00.
I have demonstrated a NUS BLE service alongside a Mesh Sensor Server Model on both the PCA10056 as well as our own custom NRF52840 device. Works great.
Now I am merging that same mesh demo into our main application uses both the peer_manager to allow security as well as the fds.h Flash Data Storage system to store some of our own data to nrf52840 flash very very infrequently.
I have heeded the SDK Coexistance suggestion of adding these lines to my nrf_mesh_config_app.h file.
#include "fds.h" #include "fds_internal_defs.h" #define FLASH_MANAGER_RECOVERY_PAGE_OFFSET_PAGES FDS_PHY_PAGES