How to un-protect MBR & Bootloader memory ?

Hi everyone,

I have a problem about MBR and Bootloader memory (at address 0x74000). I am using nRF52832 S132 v6.

My purpose is that I can upgrade bootloader from inside main application. My ideal is that I will overwrite a new bootloader into the current bootloader when run inside main application.

But I have a roadblock when I tried to access the bootloader memory from main application.

I found a line code in the bootloader source code that I based on the example code SDK.

It already protected the MBR & Bootloader memory before running main application.

Therefore, I can not access the Bootloader memory.

Inside Main application, I tried to read the BPROT (Block protection) register and change the value of it by function "sd_flash_protect()". But it didn't work.

So, do we have another way to write into bootloader memory from inside Main Application ? 

Because we have many devices that running in the field with the bootloader (protected MBR+BL), we can not on site to change bootloader.

Therefore, I really want to OTA upgrade bootloader.

Thanks,

Phong Le

Related