Hi everyone,
First of all sorry for the big post but I have to clear many questions inside my head.
I just finished and received my prototype board that incorporates Raytac's MDBT50Q-P1MV2 module. This module is pre-approved by Nordic and is based on nRF52840 SOC.
As a new embedded developer I have a few questions regarding the programming of the module. For the last few months I was playing around with nRF52840 DK using the SDK16 and s140 soft device and I have written my own BLE application that works fine.
Now I want to flash the third party module. What I have understood so far is that there are actually two methods to flash the SOC, either using DFU bootloader or using an external programmer like a J-Link. Is this right?
What I've written is that in order to update the softdevice or the application or the bootloader directly from USB you have to implement the so called secure DFU bootloader
Also it is required to implement the secure DFU bootloader if you want to update the application Over The Air (OTA) right?
I am not intended to use the USB for programming at the moment (maybe in the future if I have to update the application OTA), and for that reason I purchased the J-Link EDU mini.
Due to the fact, that the last few months I was working with nRF52840 DK that incorporates MCU interface running SEGGER J-Link OB firmware, I am not familiar using external programmers (like the J-Link EDU mini).
The module I have received is equiped with a bootloader? In general when Nordic ships nRF SOCs are equiped with the Bootloader?
The J-Link EDU mini I purchased is equiped with the J-Link software or I have to install it manually?
In order to update the application through the J-Link I can use either Segger or nRF Desktop -> Programmer (adding the hex file)? Also I have read in some posts of using the nRFGo Studio (but I have not any experience with this)
In order to upload a ble_peripheral example I have to program the soft device first or it is not required? So far, I have purchased five nRF52840 DK and I've never needed to program the softdevice and all the examples running normally.
In general what is the procedure before starting updating any third party module? Should I erase the module and then programming the bootloader? Where do I find the bootloader?
Thanks in advance
Nick