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

Reset in Nordic Connect versus DFU Library (iOS)

I have a weird situation with uploads of firmware:

- pushing a firmware via Nordic Connect works fine

- pushing a firmware via the library, interrupting it by killing the app or letting it go to sleep, and restarting the push on the currently-in-dfu-mode device works fine (*)

- pushing a firmware via the library, letting run properly to completion, systematically blocks the device until I reset it (on my device, via a electrical short-circuit of a component, which I suppose activates a given set of pins on the nRF52832... I'm not the electrical engineer, only the iOS dev)

What this set of data makes me wonder is: is there a command that might be sent by the Nordic Connect application and the library when proceeding with a previously interrupted firmware upload that forces a reset of the chip, which does not by default happen with a "problem-less" upload? If so, how do I ask the system to do this reset?

Since the boards are already in preproduction, a "reset" physical button is not an option for us...



_____________

(*) (apart from the fact I need to do it manually or via some hand-written code storing the DFU-mode name, which looks like DFUxxxxxx, x in [0-9], but I asked a question specifically about that)

  • Hi Guillaume,

    I don't understand where the weird situation is, actually. Could you follow a bit on that?

    I see you're using DFU from SDK 14+. If the upload stopped during upload, the bootloader should reset itself after a timeout, which is about a minute or so. During that time it hopes that the app will reconnect and continue with update. It won't but the bootloader doesn't know about it.

    Why would you want to reset the chip? In order to send any request, you'd have to connect to it. For that, you should know/guess the DFUxxxxxx name. If you know it, you can just reconnect and continue (start as usual) the upload. There's no Reset command on Secure DFU.

    So:

    1. The bootloader will reset itself after a timeout preventing the device to be bricked (forever in bootloader mode)
    2. There's no Reset command that you could speed it up.
    3. You may connect to the bootloader/the device after it has rebooted and continue with upload from where you finished (or from the beginning if flash was cleared)

    BR, Aleksander

  • Hi Aleksander, 

    after much testing, and a lot of J-link cable card-erasing, it turns out a very simple firmware created by the firmware engineer company does NOT trigger my problem. Therefore, we ruled out the issue being on the iOS side, nor on the basic firmware side, but rather on the software side done by our AI-specialist partner.

    I consider this issue void and "solved". Thank you for your help!

Related