I think I broke my bootloader, looking for help.

So I got me one of these

and after a day of making it work on windows I was able to lunch visual code from wsl and compile. the next day I found how to make a flash with nrfutil and was able to create a zip. So I pressed the button and the LED changed its blink rate, and I ran a few commands.

nrfutil keys generate private.key       

nrfutil pkg generate --hw-version 52 --sd-req 0x00 --application nrf52832_xxaa.hex --application-version 1 --key-file private.key app_dfu_package.zip    

nrfutil dfu serial -p COM5 -pkg app_dfu_package.zip -b 115200

I then got this

  [####################################]  100%
Device programmed.

now the device is dead. I tried holding down the button on insert and pressing after it was in. no USB chine no led. I flashed the gpiote example in hopes it woudl be a BT device that used GPIO pins, but it just make a brick.

Can this be fixed? If not, what did I do wrong?

Parents
  • Hi Sean,

    You used `nrf52832_xxaa.hex` as the application. The nRF52840 Dongle requires firmware built specifically for the nRF52840 (PCA10059 board). Flashing firmware for a different chip (like nRF52832) can prevent the dongle from booting, as the hardware is not compatible. If the application is not built to work with the dongle’s pre-installed bootloader (including correct memory offsets and SoftDevice requirements), the device may not start up or enter DFU mode. The dongle relies on its bootloader for USB DFU and LED signaling. If the bootloader is erased or the application is not placed at the correct address, the device can appear "bricked". 

    In most cases you can recover the dongle using an external debugger (like a Nordic DK or J-Link) to re-flash the bootloader and/or a compatible application as discussed in the comments below. You can use one of our Nordic DK's as the debugger and use the Debug OUT port to program the dongle. See here: https://docs.nordicsemi.com/bundle/ug_nrf5340_dk/page/UG/dk/ext_programming_support_P19.html 

    If you still have the bootloader, you should be able to enter DFU mode by holding the button while inserting the dongle. The LED should blink red. If this does not happen, the bootloader is likely erased or corrupted.
    You can restore the dongle to its factory state by flashing the original bootloader and MBR.

    You could also look at the nRF52840 Dongle Programming Tutoria (Check out the Using an external debugger section in the tutorial for an in-depth explanation on how to connect it to your DK):  nRF52840 Dongle Programming Tutorial   (Note that the "adapt a BLE example" sections are currently outdated. For programming the dongle with a sample, it should be sufficient just to build the sample with the nRF52840 Dongle as a build target in VS Code. Then you can flash the .hex file onto the Dongle with the Programmer app by just plugging it into the computer and connecting to it from there.)

    Best Regards,

    Swathy

Reply
  • Hi Sean,

    You used `nrf52832_xxaa.hex` as the application. The nRF52840 Dongle requires firmware built specifically for the nRF52840 (PCA10059 board). Flashing firmware for a different chip (like nRF52832) can prevent the dongle from booting, as the hardware is not compatible. If the application is not built to work with the dongle’s pre-installed bootloader (including correct memory offsets and SoftDevice requirements), the device may not start up or enter DFU mode. The dongle relies on its bootloader for USB DFU and LED signaling. If the bootloader is erased or the application is not placed at the correct address, the device can appear "bricked". 

    In most cases you can recover the dongle using an external debugger (like a Nordic DK or J-Link) to re-flash the bootloader and/or a compatible application as discussed in the comments below. You can use one of our Nordic DK's as the debugger and use the Debug OUT port to program the dongle. See here: https://docs.nordicsemi.com/bundle/ug_nrf5340_dk/page/UG/dk/ext_programming_support_P19.html 

    If you still have the bootloader, you should be able to enter DFU mode by holding the button while inserting the dongle. The LED should blink red. If this does not happen, the bootloader is likely erased or corrupted.
    You can restore the dongle to its factory state by flashing the original bootloader and MBR.

    You could also look at the nRF52840 Dongle Programming Tutoria (Check out the Using an external debugger section in the tutorial for an in-depth explanation on how to connect it to your DK):  nRF52840 Dongle Programming Tutorial   (Note that the "adapt a BLE example" sections are currently outdated. For programming the dongle with a sample, it should be sufficient just to build the sample with the nRF52840 Dongle as a build target in VS Code. Then you can flash the .hex file onto the Dongle with the Programmer app by just plugging it into the computer and connecting to it from there.)

    Best Regards,

    Swathy

Children
No Data
Related