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

Segger Embedded Studio and Bootloader

Continuing with my attempts to get this to work on SES I'm not sure if I'm missing something simple or not.

So using the excellent RKNRFGO (which by the way is much quicker for adding the softdevice than linking it in with SES, highly recommended for any Mac users) when I attempt to add the Bootloader the bootloader nor any app appears to be working. I have tried adding a Code hex which has been compiled linking in bootloader_settings_nrf52.hex and I have tried just the softdevice and the bootloader themselves without any Code hex.

How are other people using SES managing to achieve this?

Thanks

[UPDATE] These are the settings for RKNRFGO and this is the log after flashing.

screenshot.png

Reset delay: 0 ms
Reset type NORMAL: Resets core & peripherals via SYSRESETREQ & VECTRESET bit.

Writing 00000001 -> 4001E504

Reset delay: 0 ms
Reset type NORMAL: Resets core & peripherals via SYSRESETREQ & VECTRESET bit.

Sleep(1000)

Downloading file [Section0.0vOdqsDF.bin]...Comparing flash   [000%]000%]050%]100%] Done.
Erasing flash     [000%]100%] Done.
Programming flash [000%]000%]005%]005%]010%]010%]020%]020%]025%]025%]035%]035%]040%]040%]045%]045%]055%]055%]060%]100%] Done.
Verifying flash   [000%]000%]100%] Done.
J-Link: Flash download: Flash programming performed for 1 range (4096 bytes)
J-Link: Flash download: Total time needed: 0.164s (Prepare: 0.089s, Compare: 0.003s, Erase: 0.000s, Program: 0.061s, Verify: 0.000s, Restore: 0.009s)
O.K.

Downloading file [Section1.lCJ9YuF5.bin]...Comparing flash   [000%]000%]050%]100%] Done.
Erasing flash     [000%]100%] Done.
Programming flash [000%]000%]000%]000%]000%]000%]005%]005%]005%]005%]005%]005%]010%]010%]010%]010%]010%]010%]015%]015%]015%]015%]020%]020%]020%]020%]020%]020%]025%]025%]025%]025%]025%]025%]030%]030%]030%]030%]035%]035%]035%]035%]035%]035%]040%]040%]040%]040%]040%]040%]045%]045%]045%]045%]050%]050%]050%]050%]050%]050%]055%]055%]055%]055%]055%]055%]060%]060%]060%]060%]060%]060%]065%]065%]065%]065%]070%]070%]070%]070%]070%]070%]075%]075%]075%]075%]075%]075%]080%]080%]080%]080%]085%]085%]085%]085%]085%]085%]090%]090%]090%]090%]090%]090%]095%]095%]095%]100%] Done.
Verifying flash   [000%]000%]100%] Done.
J-Link: Flash download: Flash programming performed for 1 range (110592 bytes)
J-Link: Flash download: Total time needed: 2.169s (Prepare: 0.162s, Compare: 0.012s, Erase: 0.000s, Program: 1.905s, Verify: 0.002s, Restore: 0.086s)
O.K.

Downloading file [Section2.j6YAf9Gp.bin]...Comparing flash   [000%]000%]050%]100%] Done.
Erasing flash     [000%]100%] Done.
Programming flash [000%]000%]005%]100%] Done.
Verifying flash   [000%]000%]100%] Done.
J-Link: Flash download: Flash programming performed for 1 range (4096 bytes)
J-Link: Flash download: Total time needed: 0.169s (Prepare: 0.115s, Compare: 0.003s, Erase: 0.000s, Program: 0.011s, Verify: 0.000s, Restore: 0.038s)
O.K.

Downloading file [Section3.RxSJH8nW.bin]...Comparing flash   [000%]000%]050%]050%]100%] Done.
Verifying flash   [000%]100%] Done.
J-Link: Flash download: Flash download skipped. Flash contents already match
O.K.

Downloading file [Section4.qpm37Mkh.bin]...Comparing flash   [000%]000%]050%]050%]100%] Done.
Verifying flash   [000%]100%] Done.
J-Link: Flash download: Flash download skipped. Flash contents already match
O.K.

Downloading file [Section5.CQi0rkWg.bin]...Comparing flash   [000%]000%]040%]040%]050%]050%]090%]100%] Done.
Erasing flash     [000%]000%]100%] Done.
Programming flash [000%]000%]010%]010%]025%]025%]035%]035%]050%]050%]060%]060%]075%]075%]085%]085%]100%] Done.
Verifying flash   [000%]000%]100%] Done.
J-Link: Flash download: Flash programming performed for 1 range (16384 bytes)
J-Link: Flash download: Total time needed: 0.662s (Prepare: 0.162s, Compare: 0.099s, Erase: 0.031s, Program: 0.282s, Verify: 0.000s, Restore: 0.086s)
O.K.

Downloading file [Section6.W0fSYpr8.bin]...Comparing flash   [000%]000%]050%]100%] Done.
Erasing flash     [000%]000%]100%] Done.
Programming flash [000%]000%]005%]100%] Done.
Verifying flash   [000%]000%]100%] Done.
J-Link: Flash download: Flash programming performed for 1 range (4096 bytes)
J-Link: Flash download: Total time needed: 0.171s (Prepare: 0.115s, Compare: 0.004s, Erase: 0.007s, Program: 0.004s, Verify: 0.000s, Restore: 0.038s)
O.K.

Downloading file [Section7.LMfV07KW.bin]...Comparing flash   [000%]000%]050%]100%] Done.
Erasing flash     [000%]000%]100%] Done.
Programming flash [000%]000%]005%]100%] Done.
Verifying flash   [000%]000%]100%] Done.
J-Link: Flash download: Flash programming performed for 1 range (4096 bytes)
J-Link: Flash download: Total time needed: 0.171s (Prepare: 0.114s, Compare: 0.004s, Erase: 0.007s, Program: 0.004s, Verify: 0.000s, Restore: 0.038s)
O.K.

Sleep(1000)

Reset delay: 0 ms
Reset type NORMAL: Resets core & peripherals via SYSRESETREQ & VECTRESET bit.


Script processing completed.
Parents
  • I'm just telling you it works if you give RKNRFGO an actual bootloader instead of a bootloader conflated with a softdevice and master boot record, which was something like your original question. There's no may about it, that hex file contains all those three things, Nordic only just started shipping precompiled hex files, which was rather useful of them in general, which build product they ship for them is still probably a bit random. I think it would be more helpful if they shipped a bootloader-only hex file, but you can actually build that by going to the armgcc directory and typing make .. not that I've tested the resulting product; looks right tho.

    It wasn't that hard to see that couldn't have been a bootloader alone, RKNRFGO showed it had many code sections. You don't even need to fiddle with the hex file, you can use the gcc tools to extract the bit you want.

Reply
  • I'm just telling you it works if you give RKNRFGO an actual bootloader instead of a bootloader conflated with a softdevice and master boot record, which was something like your original question. There's no may about it, that hex file contains all those three things, Nordic only just started shipping precompiled hex files, which was rather useful of them in general, which build product they ship for them is still probably a bit random. I think it would be more helpful if they shipped a bootloader-only hex file, but you can actually build that by going to the armgcc directory and typing make .. not that I've tested the resulting product; looks right tho.

    It wasn't that hard to see that couldn't have been a bootloader alone, RKNRFGO showed it had many code sections. You don't even need to fiddle with the hex file, you can use the gcc tools to extract the bit you want.

Children
No Data
Related