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

bootloader for nrf51822 QFACA1part on a custom board

Hi All,

We are trying find a way to upgrade nrf51822 in the field post initial release. I read the following posts (devzone.nordicsemi.com/.../) (developer.nordicsemi.com/.../a00069.html)

If I to I am trying to understand the following please bare me for asking very basic questions

  1. Do we must need to have a bootloader?

  2. Is there any existing bootloader that I can use as it is on nrf51822 QFACA1 part? or I must customize something? if yes, what all needs to be done? I don't think we can accommodate dual bank architecture. If that is the case, what I need to worry about?

  3. How do I program bootloader for the first time ? (Most likely a programmer, but I would still like to have an answer to confirm)

  4. Do I need to flash bootloader at specific address?

  5. How do I park device to bootloader mode for future firmware upgrade? I don't have any button on my PCB (how does other people do it for their devices) .

  6. When upgrading softdevice does it also erase the bootloader? or it can be prevented? May be I was informed that to upgrade softdevice you must erase entire flash, which doesn't sound right to me.

  7. How do you upgrade softdevice only? or softdevice + application or application only?

I know I asked so many questions but I would like to understand all this in a same thread.

Parents
  • Hi Harry,

    1. Yes, you need a bootloader if you want to do DFU. It's possible to make an application that can also handle the bootloader task but it will make the process more complicated and less safe.

    2. The bootloader is available in the SDK. Please let me know which SDK you based your application on and the softdevice version on the chip.

    3. Yes, you use normal programmer and flash the bootloader as a normal application.

    4. Yes, but the programmer will handle that for you. Please have a look here for more information about the bootloader.

    5. You can add the DFU service into your application, and can switch to bootloader mode by a command from the central device. Look here.

    6. If the old bootloader is compatible with the new softdevice, you don't need to update the bootloader. Updating the softdevice will erase the application part only.

    7. To update just softdevice, you can specify that you want to update softdevice or simply let the DFU master (app) on the phone take care of it, base on the information you provided in the .zip image. The application can be updated after that. Or you can combine them together and let the DFU master takes case of it.

    You can find more information in this FAQ.

  • Hi Harry,

    How do you send the NRF51 image to the LCP1124 OTA ? You will use BLE or something else ?

    To update the image from LCP1123 to NRF51 you can use SPI, we have an SPI bootloader here. But you have to write your own SPI DFU master.

    To send the nRF51 from application mode to bootloader mode, please follow what we do in the example ble_app_hrs with dfu. It should be very similar, please have a look at function bootloader_start() in dfu_app_handlers.c

Reply
  • Hi Harry,

    How do you send the NRF51 image to the LCP1124 OTA ? You will use BLE or something else ?

    To update the image from LCP1123 to NRF51 you can use SPI, we have an SPI bootloader here. But you have to write your own SPI DFU master.

    To send the nRF51 from application mode to bootloader mode, please follow what we do in the example ble_app_hrs with dfu. It should be very similar, please have a look at function bootloader_start() in dfu_app_handlers.c

Children
No Data
Related