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

ios nrf loader timeout during upload

I have the nRF Loader app installed on an iPad Mini. I have the dfu_dual_bank_ble firmware from SDK V5.0.0 and SoftDevice V6.0.0.1-beta loaded on my nRF51822.

The app is able to see the device named "DfuTarg" and pair with it, the status becomes "ready", but when it tries to upload, it will hang for a minute and then report an unexpected timeout error.

The LED that indicates connection establishment is on when DfuTarg is selected, but it goes off when the timeout error arrives.

How do I make DFU work? What is causing the timeout?

  • That's interesting indeed. I saw NO_MEMORY errors once in a while when developing the app, but that was only when having long printf-s several places in the bootloader. I would not at all expect it to happen with the bootloader directly from the SDK. Do you still see errors when not doing any debug output?

    There isn't any magic about creating a bin file to be used with nRF Loader, you can for example do like this to do such conversion: https://devzone.nordicsemi.com/index.php/how-to-use-the-nrf-loader-to-do-ota#reply-3155

  • I was compiling using MicroLib, because the original project configuration did not seem to fit, it threw a bunch of linker errors that were similar to some previous not-enough-RAM problems I faced. Enabling MicroLib allowed the project to compile, but I suspect it made it run slower.

    I just tested bootloading my own application and it works. I added the command

    fromelf --bin --output "$L@L.bin" "#L"

    to my post build execution steps to generate the bin

  • I believe that the bootloader should compile out of the box, but I suspect that disabling optimizations might make it not fit anymore. Anyway, great that you've gotten further!

1 2 3