nRF52840 connection to load MCUBoot+Zephyr

I am having problems in the JLink connection for nRF52840(RAK4631) to load MCUBoot+Zephyr application.  In the RAK4631 RAKWireless bootloader, it is loaded using nrfutil by usb serial connection, for example "nrfutil.exe dfu serial -pkg rak4631_factory_bootloader.zip -p COM5", then I don´t have to have a JLink for every flash operation.

I have a nRF52840DK what there we have a JLink-OB, but for production environment it will be expensive for thousands devices, each one with his own JLink-OB.  Is it possible to load a merged.hex without by USB instead of JLink?

Regards,

Claudio

Parents
  • Hi,

    I have a nRF52840DK what there we have a JLink-OB, but for production environment it will be expensive for thousands devices, each one with his own JLink-OB.

    You do not need a JLink-OB in the end product, but you need J-Link or other SWD programmers on the production line. Then you flash the device with what you need directly. The only thing you need to do on your hardware for supporting this is routing out the SWD lines so that you can hook up to it on the production line.

  • Could I do it using the "nrfutil.exe dfu serial -pkg rak4631_factory_bootloader.zip -p COM5" ?  I mean work with serial port to flash a merge file (MCUBoot+Zephyr).

  • I do not know what rak4631_factory_bootloader contains or the details of what the RAK4631 contains. But as you use nrfutil like this it includes the nRF5 SDK serial bootlaoder that may have modifications of some sort? It will not be possible in any way to remove the MBR with a DFU operation. It may be possible to remove the bootloader in an unsafe operation. You can read more about it here.

    But I am curious about the context. Is this a product in your production line? Why do you not program it via a SWD programmer then? If not, you will have to maintain a combinatino of legacy nRF5 SDK comonents and nRF Connet SDK components, and I wonder what the benefits of this approach is?

Reply
  • I do not know what rak4631_factory_bootloader contains or the details of what the RAK4631 contains. But as you use nrfutil like this it includes the nRF5 SDK serial bootlaoder that may have modifications of some sort? It will not be possible in any way to remove the MBR with a DFU operation. It may be possible to remove the bootloader in an unsafe operation. You can read more about it here.

    But I am curious about the context. Is this a product in your production line? Why do you not program it via a SWD programmer then? If not, you will have to maintain a combinatino of legacy nRF5 SDK comonents and nRF Connet SDK components, and I wonder what the benefits of this approach is?

Children
Related