Non-volatile storage with BLE and custom wireless stack using MPSL

Hello,

I have an application running with a BLE peripheral and our proprietary TSCH wireless stack using an integrated radio. The hardware sharing is done through the MPSL module. All works fine even with the settings module that writes data to non-volatile flash memory. This application works on nRF52833DK, nRF53840DK and our custom board.

I would like to implement firmware image writing to internal FLASH. The firmware will be slowly uploaded through the proprietary TSCH wireless stack. I need a FLASH read and write functions.

Question 1
Does the settings module (https://docs.zephyrproject.org/latest/services/settings/index.html) use the MPSL? If yes which layer uses it? The Settings module itself or the underlying NVS backend? An experiment I did not explicitly show that Settings with NVS uses MPSL, however, I might be wrong.

Question 2
I feel a little lost on the documentation pages. There are two sites: services and doxygen. And the two do not go together. In the first there are subpages discussing the File Storage and Settings. Here in storage subset (https://docs.zephyrproject.org/latest/services/storage/index.html) you have NVS, ZMS, Disk Access, Flash map, FCB, Stream Flash. The Settings subpage deals only with the Settings module. However, in the relevant doxygen documentation (https://docs.zephyrproject.org/latest/doxygen/html/group__storage__apis.html) there is Disk Access, Flash Area and Stream to Flash interface. And here https://docs.zephyrproject.org/latest/doxygen/html/group__file__system__storage.html we have the NVS, ZMS, Settings and FCB. And there is also a module with a name Flash image API https://docs.zephyrproject.org/latest/doxygen/html/group__storage__apis.html .

Which of the above modules will work with BLE and my proprietary wireless stack? Where is the boundary of the internal FLASH memory storage modules that will work with BLE? Does the OS Services/Flash Map/Flash area interface use MPSL and will it work with BLE without additional MPSL timeslots reservation?
https://docs.zephyrproject.org/latest/services/storage/flash_map/flash_map.html#api-reference
https://docs.zephyrproject.org/latest/doxygen/html/group__flash__area__api.html

Parents Reply Children
No Data
Related