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

softdevice upload ota

I am using the bootloader from github here to upload DFU over-the-air using an android phone. It works fine for bootloader and application uploads. But if I upload the softdevice (the same version that is already on) then the bootloader does not work anymore afterwards. The softdevice uploads correctly, crc checks are successful and the device resets, but after the reset the bootloader get's stuck in the ble_stack_init() and does not go anymore into DFU mode. Uploading the bootloader using JLink does not help either, I need to upload both the softdevice and bootloader again using JLink before it starts working again.

I am using a 32k PCA10031, with Softdevice s130 v1.0 and SDK 8.1 and single bank DFU upload.

Anybody has an idea what the problem could be or what I can do about it?

Thanks, Dominik

  • Hi Dominik,

    I don't think the bootloader from github support softdevice update. Please use the gcc bootloader from new SDK such as nRF5 SDK v11

  • Ah thanks, to be honest our code is probably not quite the same as the one in github anymore, and I did merge it already with the files in the SDK 8.1. But I will have a look at the SDK 11 and see if I can update it.

  • @hungbui, I had a look at the bootloader from SDK11, and adjusted my code accordingly, but still no luck! I even went and uploaded the dfu_dual_bank_ble_s130_pca10028.hex file contained in the SDK at examples/dfu/bootloader/hex together with the softdevice s130 v2. Same thing happens there: I upload the same softdevice (s130 v2) again through the the DFU upload on the Android phone. The upload seems to succeed from the Android side, then the device restarts, and the Android phone tries to connect again, but the device never comes back. After that I have to upload both softdevice and bootloader again with the JLink to get it to work again.

  • Hi Dominik,

    I tested here and it worked fine. Could you update your question with the .zip file that you used for testing ? I assume you are testing with SDK v11 production and S130v2 production ?

  • @hungbui, thanks for testing it, that already helped :) I started wondering what is different for me and realized that I converted the softdevice from hex to bin, because I always flash it as a bin with the JLink. Then I checked and it works when I upload the softdevice as hex ota. So that's fine for me for now and I will close the issue.

Related