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

FDS records still not erased even after giving nrfjprog sectorerase command

Hi,

 

I am using nRF52840, S140 7.0.1. I am using ble_app_blinky application.

 

I am writing data into FDS records. After writing FDS, if I load new hex file using nrfjprog sectorerase command, still FDS records are not erased. But in command prompt, it shows pages are erased.

My queries are:

 

1) Whether sectorerase will erase all pages or skill FDS records.

2) In below log, I am not seeing page erase after 0x36000 and before 0xF8000. Is this expected.

 

Erasing page at address 0x36000.

Erasing page at address 0xF8000.

C:\nRF5_SDK_16.0.0_98a08e2\examples\ble_peripheral\ble_app_blinky\pca10056\s140\ses\Output\Release\Exe>nrfjprog -f NRF52 --program BLE_APP.hex --sectorerase --verify -r
Parsing hex file.
Erasing page at address 0x0.
Erasing page at address 0x1000.
Erasing page at address 0x2000.
Erasing page at address 0x3000.
Erasing page at address 0x4000.
Erasing page at address 0x5000.
Erasing page at address 0x6000.
Erasing page at address 0x7000.
Erasing page at address 0x8000.
Erasing page at address 0x9000.
Erasing page at address 0xA000.
Erasing page at address 0xB000.
Erasing page at address 0xC000.
Erasing page at address 0xD000.
Erasing page at address 0xE000.
Erasing page at address 0xF000.
Erasing page at address 0x10000.
Erasing page at address 0x11000.
Erasing page at address 0x12000.
Erasing page at address 0x13000.
Erasing page at address 0x14000.
Erasing page at address 0x15000.
Erasing page at address 0x16000.
Erasing page at address 0x17000.
Erasing page at address 0x18000.
Erasing page at address 0x19000.
Erasing page at address 0x1A000.
Erasing page at address 0x1B000.
Erasing page at address 0x1C000.
Erasing page at address 0x1D000.
Erasing page at address 0x1E000.
Erasing page at address 0x1F000.
Erasing page at address 0x20000.
Erasing page at address 0x21000.
Erasing page at address 0x22000.
Erasing page at address 0x23000.
Erasing page at address 0x24000.
Erasing page at address 0x25000.
Erasing page at address 0x26000.
Erasing page at address 0x27000.
Erasing page at address 0x28000.
Erasing page at address 0x29000.
Erasing page at address 0x2A000.
Erasing page at address 0x2B000.
Erasing page at address 0x2C000.
Erasing page at address 0x2D000.
Erasing page at address 0x2E000.
Erasing page at address 0x2F000.
Erasing page at address 0x30000.
Erasing page at address 0x31000.
Erasing page at address 0x32000.
Erasing page at address 0x33000.
Erasing page at address 0x34000.
Erasing page at address 0x35000.
Erasing page at address 0x36000.
Erasing page at address 0xF8000.
Erasing page at address 0xF9000.
Erasing page at address 0xFA000.
Erasing page at address 0xFB000.
Erasing page at address 0xFC000.
Erasing page at address 0xFD000.
Erasing page at address 0xFE000.
Erasing page at address 0xFF000.
WARNING: A UICR write operation has been requested but UICR has not been
WARNING: erased. Please verify that the result is correct.
Applying system reset.
Checking that the area to write is not protected.
Programming device.
Verifying programming.
Verified OK.
Applying system reset.
Run.

3) My command line tool version is as below snapshot.

    

Based on my other query in below link

https://devzone.nordicsemi.com/support/249321

I installed latest tool chain using 

https://github.com/NordicSemiconductor/pc-nrfconnect-launcher/releases

Thanks & Regards

Vishnu Beem

Parents
  • Hi,

    sectorerase will only erase the pages occupied by the code in the HEX-file. The compiler is not aware of where FDS data is stored, as this is determined run-time depending on values from FICR and UICR. If you want to erase FDS data, you need to erase full flash with --chiperase or --eraseall arguments.

    I'm assuming that what you are flashing is a hex-file including a bootloader, which is what is placed at the higher addresses.

    Best regards,
    Jørgen

Reply
  • Hi,

    sectorerase will only erase the pages occupied by the code in the HEX-file. The compiler is not aware of where FDS data is stored, as this is determined run-time depending on values from FICR and UICR. If you want to erase FDS data, you need to erase full flash with --chiperase or --eraseall arguments.

    I'm assuming that what you are flashing is a hex-file including a bootloader, which is what is placed at the higher addresses.

    Best regards,
    Jørgen

Children
No Data
Related