Question about Over the Air update in NCS_V2

Does the NCS V2 .x support OTA updates ? I used OTA update with encryption in older SDK and i was looking to migrate that to the new SDK. Is there some example or  guide to how to do the exact same implementation in NCS ? I know NCS uses mcuboot but does that mean that DFU and OTA is no longer supported in NCS ?

Thank you.

Parents
  • Hi Midhunjac,

    NCS v2.x supports OTA updates.

    If you are asking if NCS v2.x support the same OTA solution as the nRF5 SDK, then no.

    If you are asking if a nRF5 SDK device can be OTA upgrade to a NCS firmware, then theoretically yes. However, there are no official documentations and samples for it.

    Hieu 

  • Hi, Thanks for the reply.

    I have upgraded my device to the NCS based application. I now need to run OTA updates on this. Is there some kind of guide which I can use as a starting point for my purpose ? I understand that the solution may not be the exact same as the one in NRF5 but that is okay. I am willing to make changes. I just need some documentation or example to use as a reference. Is there something like that ?

  • From your choice of words, it seems that you just want NSIB to be the immutable bootloader, and don't really need a second stage bootloader. Is that right?

    While I research this use case, can I ask why you would like to use NSIB as the immutable bootloader and not MCUboot?

  • From your choice of words, it seems that you just want NSIB to be the immutable bootloader, and don't really need a second stage bootloader. Is that right?

    Right. I do NOT want a second stage bootloader.. As I told, my end goal is over-the-air firmware update using NRF Secure Immutable bootloader. I will take anything to help me get this. That is all.

    But as I understand from the docs, OTA cannot be done with NRF Secure Immutable bootloader. Or am I understanding it wrong ?

    can I ask why you would like to use NSIB as the immutable bootloader and not MCUboot?

    My updates does not involve updating the bootloader. It only updates my application. And from this page, I believe that in this case, first stage immutable bootloader is what I want. Again, if I am wrong in my understanding, please correct me. The whole information is a lot and is vague in my mind.

    Thank you

  • OTA DFU can theoretically be done with either NSIB or MCUboot as the first stage (and immutable) bootloader.

    I should have phrased my question better. Is there a reason you choose NSIB over MCUboot as the first stage bootloader?

    Using MCUboot as the only bootloader, there are various built-in toolchain and libraries support to make enabling OTA DFU easy.

    Using NSIB as the only bootloader, I have not found any such support. I am asking our internal teams to see if I may be missing anything here.

  • Is there a reason you choose NSIB over MCUboot as the first stage bootloader?

    There is no specific reason for this choice.

    So, from what I understand now, OTA DFU is easily done if my first stage immutable bootloader is MCUboot. right ? In that case, would I have to go for a second stage bootloader ?

  • Midhunjac said:
    So, from what I understand now, OTA DFU is easily done if my first stage immutable bootloader is MCUboot. right ?

    That's right. OTA DFU is relatively easily done if your first stage immutable bootloader is MCUboot (and if you use a NSIB - MCUboot chain, like you previously discovered).

    Also, to answer your previous question 4, here are a few relevant reference sources:

    I need to double check a few things before I can be sure of the answers your previous question 2 and 3. I should be back with those answers before next week.
    Please feel free to comment here if you have anymore questions in the mean time though.

Reply
  • Midhunjac said:
    So, from what I understand now, OTA DFU is easily done if my first stage immutable bootloader is MCUboot. right ?

    That's right. OTA DFU is relatively easily done if your first stage immutable bootloader is MCUboot (and if you use a NSIB - MCUboot chain, like you previously discovered).

    Also, to answer your previous question 4, here are a few relevant reference sources:

    I need to double check a few things before I can be sure of the answers your previous question 2 and 3. I should be back with those answers before next week.
    Please feel free to comment here if you have anymore questions in the mean time though.

Children
No Data
Related