This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

S110 version 5.2 splitting using gcc objcopy. Programming failed at 0x10001010

Hi 'Nordic' guys,

splitting the original S110 hex file provided by Nordic , version 5.2, there is an error extracting uicr section.

Now is only 20 bytes and not 32 as old version.

Jlink reports an error occurring at address 0x10001000.

Error: Programming failed @ address 0x10001010 (block verification error) Verification failed @ address 0x10001000

and, as consequence, writing the remaining part of soft device :

Writing bin data into target memory @ 0x00000000. Info: J-Link: Flash download: Flash programming performed for 2 ranges (72704 bytes)

****** Error: Programming failed @ address 0x10001010 (block verification error) Verification failed @ address 0x00000000

Which is the address to start writing uicr ? In old jlink script (works right up to version 5.1)

... loadbin uicr.bin 0x10001000 loadbin softdevice.bin 0 ...

An help is wellcome.

-c

Parents
  • I can't seem to reproduce this. As you've found out, the definition of UICR is some bytes shorter with 5.2, but this shouldn't really cause any problems.

    Are you sure you have erased the entire chip before flashing a new softdevice? If not, this is most likely the problem. An erase all can be done with the following sequence in jlink:

    
    device nrf51822
    w4 4001e504 2
    w4 4001e50c 1
    w4 4001e514 1
    sleep 100
    r
    
    

    You can also have a look at the Makefile provided here, which is what I've been personally using to flash from Linux.

Reply
  • I can't seem to reproduce this. As you've found out, the definition of UICR is some bytes shorter with 5.2, but this shouldn't really cause any problems.

    Are you sure you have erased the entire chip before flashing a new softdevice? If not, this is most likely the problem. An erase all can be done with the following sequence in jlink:

    
    device nrf51822
    w4 4001e504 2
    w4 4001e50c 1
    w4 4001e514 1
    sleep 100
    r
    
    

    You can also have a look at the Makefile provided here, which is what I've been personally using to flash from Linux.

Children
Related