How to write the bootloader back to nRF52840 Dongle ?

hi,

I have accidentally selected "Erase All" under the Segger Embedded Studio, now my nRF52840 Dongle unable to show its USB port under Windows 10 Device Manager anymore.

How to resolve this issues and where to get the right bootloader image for nRF52840, as the nRF52840 Dongle unable to report its serial port, Segger J-Link was unable to connect.

Please advise.

Parents
  • thx but Windows is unable to detect the serial port of nRF52840 dongle ( i think the bootloader is erased ) and J-Link was unable to connect as well, how to write the .HEX then ?

  • your dongle might be protect.  Try unlock it first with nrfjprog.  

  • do you have any reference on how to unlock ?

    I tried below but failed with same error mentioned above.

    nrfjprog.exe -f nrf52 --recover


  • well, either your board is dead or you have a Jlink clone.

  • ah.. may be. any way thank you.

  • hi, I manage to restore the bootloader, I used the J-Link clone instead of J-Link EDU with the help of TC2050-IDC-NL and TC2050-CLIP.

    The nRF52840 Dongle is able to be detected as usual under Windows Device Manager as ""nRF52 SDFU USB (COMxx)" and identified under "nRF Connect" programmer as usual now. Is confirmed that once a "FULL ERASE" both the SWDIO and SWDCLK pins onboard (near USB) won't work with J-Link anymore, you have to use TC2050-IDC-NL and TC2050-CLIP.

    The SWDIO and SWDCLK pins onboard also functioning as normal using J-Link clone but J-Link EDU just won't work, may be its VTref pin 1, targeting voltage from VDD nRF52840 is 1.8V so too low voltage, Segger J-Link EDU won't proceed.

    Below were the log messages after successfully connected via SEGGER J-Flash V7.50a:

    Application log started
     - J-Flash V7.50a (J-Flash compiled Jul  8 2021 18:21:36)
     - JLinkARM.dll V7.50a (DLL compiled Jul  8 2021 18:21:11)
    Reading flash device list [C:\Program Files\SEGGER\JLink\ETC/JFlash/Flash.csv] ...
     - List of flash devices read successfully (451 Devices)
    Reading MCU device list ...
     - List of MCU devices read successfully (8611 Devices)
    Opening project file [F:\DEVELOP\NEXUZ\EE\Nordic\CODE\nRF52840\nRF52840.jflash] ...
     - Project opened successfully
    No data file specified!
    Failed to open data file [F:\DEVELOP\NEXUZ\EE\Nordic\CODE\nRF52840\]...
    Connecting ...
     - Connecting via USB to probe/ programmer device 0
     - Probe/ Programmer firmware: J-Link ARM V8 compiled Nov 28 2014 13:44:46
     - Device "NRF52840_XXAA" selected.
     - Target interface speed: 4000 kHz (Fixed)
     - VTarget = 3.338V
     - InitTarget() start
     - InitTarget() end
     - Found SW-DP with ID 0x2BA01477
     - DPv0 detected
     - Scanning AP map to find all available APs
     - AP[2]: Stopped AP scan as end of AP map has been reached
     - AP[0]: AHB-AP (IDR: 0x24770011)
     - AP[1]: JTAG-AP (IDR: 0x02880000)
     - Iterating through AP map to find AHB-AP to use
     - AP[0]: Core found
     - AP[0]: AHB-AP ROM base: 0xE00FF000
     - CPUID register: 0x410FC241. Implementer code: 0x41 (ARM)
     - Found Cortex-M4 r0p1, Little endian.
     - FPUnit: 6 code (BP) slots and 2 literal slots
     - CoreSight components:
     - ROMTbl[0] @ E00FF000
     - ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB00C SCS-M7
     - ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 003BB002 DWT
     - ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 002BB003 FPB
     - ROMTbl[0][3]: E0000000, CID: B105E00D, PID: 003BB001 ITM
     - ROMTbl[0][4]: E0040000, CID: B105900D, PID: 000BB9A1 TPIU
     - ROMTbl[0][5]: E0041000, CID: B105900D, PID: 000BB925 ETM
     - Executing init sequence ...
      - Initialized successfully
     - Target interface speed: 4000 kHz (Fixed)
     - Found 1 JTAG device. Core ID: 0x3ACR0172 (None)
     - Connected successfully

    After playing around the nRF52840 Dongle for sometime, this little device actually had its software application to upload .HEX via "nRF Connect" programmer.

    The actual description is too long to put it here, no wonder many similar questions in this forum are not answered completely.

    Hopes, this help.

Reply
  • hi, I manage to restore the bootloader, I used the J-Link clone instead of J-Link EDU with the help of TC2050-IDC-NL and TC2050-CLIP.

    The nRF52840 Dongle is able to be detected as usual under Windows Device Manager as ""nRF52 SDFU USB (COMxx)" and identified under "nRF Connect" programmer as usual now. Is confirmed that once a "FULL ERASE" both the SWDIO and SWDCLK pins onboard (near USB) won't work with J-Link anymore, you have to use TC2050-IDC-NL and TC2050-CLIP.

    The SWDIO and SWDCLK pins onboard also functioning as normal using J-Link clone but J-Link EDU just won't work, may be its VTref pin 1, targeting voltage from VDD nRF52840 is 1.8V so too low voltage, Segger J-Link EDU won't proceed.

    Below were the log messages after successfully connected via SEGGER J-Flash V7.50a:

    Application log started
     - J-Flash V7.50a (J-Flash compiled Jul  8 2021 18:21:36)
     - JLinkARM.dll V7.50a (DLL compiled Jul  8 2021 18:21:11)
    Reading flash device list [C:\Program Files\SEGGER\JLink\ETC/JFlash/Flash.csv] ...
     - List of flash devices read successfully (451 Devices)
    Reading MCU device list ...
     - List of MCU devices read successfully (8611 Devices)
    Opening project file [F:\DEVELOP\NEXUZ\EE\Nordic\CODE\nRF52840\nRF52840.jflash] ...
     - Project opened successfully
    No data file specified!
    Failed to open data file [F:\DEVELOP\NEXUZ\EE\Nordic\CODE\nRF52840\]...
    Connecting ...
     - Connecting via USB to probe/ programmer device 0
     - Probe/ Programmer firmware: J-Link ARM V8 compiled Nov 28 2014 13:44:46
     - Device "NRF52840_XXAA" selected.
     - Target interface speed: 4000 kHz (Fixed)
     - VTarget = 3.338V
     - InitTarget() start
     - InitTarget() end
     - Found SW-DP with ID 0x2BA01477
     - DPv0 detected
     - Scanning AP map to find all available APs
     - AP[2]: Stopped AP scan as end of AP map has been reached
     - AP[0]: AHB-AP (IDR: 0x24770011)
     - AP[1]: JTAG-AP (IDR: 0x02880000)
     - Iterating through AP map to find AHB-AP to use
     - AP[0]: Core found
     - AP[0]: AHB-AP ROM base: 0xE00FF000
     - CPUID register: 0x410FC241. Implementer code: 0x41 (ARM)
     - Found Cortex-M4 r0p1, Little endian.
     - FPUnit: 6 code (BP) slots and 2 literal slots
     - CoreSight components:
     - ROMTbl[0] @ E00FF000
     - ROMTbl[0][0]: E000E000, CID: B105E00D, PID: 000BB00C SCS-M7
     - ROMTbl[0][1]: E0001000, CID: B105E00D, PID: 003BB002 DWT
     - ROMTbl[0][2]: E0002000, CID: B105E00D, PID: 002BB003 FPB
     - ROMTbl[0][3]: E0000000, CID: B105E00D, PID: 003BB001 ITM
     - ROMTbl[0][4]: E0040000, CID: B105900D, PID: 000BB9A1 TPIU
     - ROMTbl[0][5]: E0041000, CID: B105900D, PID: 000BB925 ETM
     - Executing init sequence ...
      - Initialized successfully
     - Target interface speed: 4000 kHz (Fixed)
     - Found 1 JTAG device. Core ID: 0x3ACR0172 (None)
     - Connected successfully

    After playing around the nRF52840 Dongle for sometime, this little device actually had its software application to upload .HEX via "nRF Connect" programmer.

    The actual description is too long to put it here, no wonder many similar questions in this forum are not answered completely.

    Hopes, this help.

Children
No Data