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

nRF52 tutorial that works?

I tried them all. No, really.

But it seems that nothing really works 100%. I have an nRF52 board here from Nordic, and a cacophony of tools. I have a million sample projects from nordic, with no sane docs, and some soft devices with no sane docs either.

I am no novice- i've been working on embedded all my life, and work on Cortex-M chips for a few years already.

This is the worst situation I've seen in any vendor's libraries and support systems.

Literally there is no step-by-step to get a simple BLE app to run.

I erased my device. What now? Bootloader? I have to have one? where is this documented? where do I get it?

SoftDevice? Which of the 1000 ways to program it should I use?

Sample App? which?

Really. How is this even acceptable?

I tried gcc, I tried keil. I tried jlink, i tried nrfjprog, i tried a normal SWD debugger to load code

the furthest i have gotten is a HardFault in the sample bootloader at sd_mbr_command() Which bootloader? who knows, i built the pca100400/single-bank-serial-s132? Is it the right one? i'd love to be able to tell but I simply do not know.

Even random chinese chips come with better documentation. What gives?


i dumped the flash and started disassembling what all this code produced Seems like sd_mbr_command produces an SVC instr. which would be wonderful, except the CPU isn't configured for that and takes a hard fault. wonderful sample code there...

Digging further, I do see the bootloader having an SVC handler, except nowhere is it found in the source code. Disassembly shows a rather large-switch case based on passed params. Source? not that I can find...

I shouldn't have to reverse engineer this sort of thing..