This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

UICR write in S110 before BLE operating

Using nRF51x and S110 v8 in a BLE application I want to generate a random 32 bit identifier and store at end of UICR on first power up only after factory flash (no erase needed). I am aware nrf_nvmc_write_word() cannot be used but also pstorage is not possible as I discovered here:

devzone.nordicsemi.com/.../

Since I do not need, and in fact can't have BLE in operation until I have this identifier stored, is there a potential workaround to sneak this into UICR before softdevice complains or must I resort to using flash page?

Parents Reply Children
  • Hung, thanks for the quick answer.

    Embarrassingly the problem was that I was initializing softdevice for uart purposes and was completely oblivious to this, and when nrf_nvmc_write_word() did not work I assumed this because of some misread note about pstorage v.s. nvmc on s110 V6+. I think that note was actually just saying the nvmc function is blocked in newer sd's.

    For test purposes, disabling the sd before the nvmc call got things working though not necessary for end application.

Related