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

DFU of softdevice or softdevice+bootloader makes iOS app crash

sdonly.zipsoftdevice.zipCustom board with a nRF51422, SD 310 rev 2.0.0, nRF Toolbox rev 2.4, iOS 8.4

When trying to use the DFU app to update my softdevice and/or the combined package with softdevice+bootloader the application crashes/quits without errormessage, warnings or anything.

I can update the application or the bootloader successfully, but as soon as the SD is involved I get nowhere in a hurry.

Any good ideas as to what goes wrong?

The zip file is generated from s310_nrf51422_2.0.0_softdevice.hex and my own bootloader.hex, by peeling of lines as described in the howto, running hex2bin, combining them with copy /b and thus obtaining the crc using crc.exe. Finally my shot at a .dat is zipped together with the original .hex files.

Parents
  • Could you explain why you set sq_req of 79 (0x4F) and 90 (0x5A) ? The S310 v2.0.1 has ID of 93 (0x5D).

    When you are not so sure about the softdevice version, you should use 0xfffe. This allows all softdevice version.

    I attached here the .zip file I used and tested with the bootloader from SDK v7.2

    softdeviceS310v201.zip

  • Yes, you can update the bootloader separately. However, if it's a major change in the softdevice, the old bootloader might not be able to run with the new softdevice (API changes for example). Then there is no other option but to bundle new bootloader and new softdevice together.

    So, if it's change with application, bootloader, and small change with softdevice (for example from v2.0 to v2.1) then it would be fine. But if it's a major change of softdevice such as from S310 to S110 or from S310 v2.0 to v3.0 you may have to access the chip via debugger, or you would need external storage (or switch to nRF52 chip which has 512kB Flash).

Reply
  • Yes, you can update the bootloader separately. However, if it's a major change in the softdevice, the old bootloader might not be able to run with the new softdevice (API changes for example). Then there is no other option but to bundle new bootloader and new softdevice together.

    So, if it's change with application, bootloader, and small change with softdevice (for example from v2.0 to v2.1) then it would be fine. But if it's a major change of softdevice such as from S310 to S110 or from S310 v2.0 to v3.0 you may have to access the chip via debugger, or you would need external storage (or switch to nRF52 chip which has 512kB Flash).

Children
No Data
Related