In our application we use gazell. We also want to use the flash data storage which uses softdevice.
With gazell enabled, we cannot access flash.
What is the recommended way to access FDS with gazell?
In our application we use gazell. We also want to use the flash data storage which uses softdevice.
With gazell enabled, we cannot access flash.
What is the recommended way to access FDS with gazell?
Why would fds need softdevice ? Here is an example in SDK without softdevice: SDKv14_2\examples\peripheral\flash_fds\pca10040\blank\
Note that in the example we use nrf_fstorage_nvmc.c not nrf_fstorage_sd.c
We are using SDK 12, and the flash data storage works only with softdevice enabled.
If you are using nRF52832, we would suggest you to move to SDK v15.
If you don't plan to move, you may want to copy the fstorage and fds library from SDK v14 to use i SDK v12. I think it would be straight forward to port the library back.
Porting is not feasible at the moment. Can you let me know how we can use softdevice and gazell together? What is the best way to disable gazell and enable softdevice and once flash operation is done, maybe disable softdevice and enable gazell?
If you don't plan to have activity when you are doing gazell then switching back and forth between softdevice and gazell is possible. We have an example of switching between them in \examples\multiprotocol\ble_app_gzll.
If you want to use softdevice and gazell concurrently, it's more complex as the softdevice blocks access to the radio. And you would need to use timeslot to grant access to the gazell stack. But it's posisble.
Another option is to use pstorage_nosd.c module from SDK v11 or accessing the flash directly using NVMC peripheral as what we do in \examples\peripheral\flashwrite