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

DFU with SoftDevice s120

Hello everyone,

I had some troubles some time ago with Softdevice s120, and finally solved it to work with nRF51822 thanks to Aryan.

The problem is that, when I upload a zip file, which I generated with the tool from THIS post the app does not start.

Seems that the the SoftDevice and Bootloader are not affected by the upload, because if I load the app again with Keil it starts properly.

Also, after the upload, the device is not in DFU mode anymore(cannot find it through BLE scan).

I am not able (or I don't know how) to check if the app was written in the right place...

As the Bootloader was meant to work with s110, could be something related with the memory map? I tried to see where to modify this values in order to set the address where to write the app, but I'm not able to find it.

Thanks in advance for your help,

Best regards, Gabriel C.

  • is it the same project Gabriel, or can you upload it for future references. I will flash it and see

  • Hello @Aryan, I managed to solve the problem myself. There was some kind of problem with the DFU, which was initializing the storage in a wrong address after writing the app, and it was erasing part of my code app. I will close the answer. Thank you.

  • Hi Gabriel, could you please tell more the problem and how you fixed it. As you succeeded with DFU on 120, it will be useful for other to know more about what not to do.

  • Of course! In my app, I use a position from the flash memory to check if the app should go or not in DFU mode. When I check that position, and it is the value I need, it restarts. Also in DFU, at load, it checks that position. If it is he required one, it starts DFU, and if not, it starts the APP. The problem was I was initializing the storage in a page was already full by the app, so I was basically deleting part of my app code. I modified the value PSTORAGE_DATA_START_ADDR in "pstorage_platform.h" to a higher value where was empty and was able to store there my value.

Related