Bricked device

Hello,

after an attemp to switch to UF2 Bootloader from Open Bootloader my Makedriary nRF52840 MDK USB Dongle stopped working (now shows only the green led always on) and it doesn't get recognized by my pc. I noticed this guide (wiki.makerdiary.com/.../) to unbrick it but it requires a second makerdiary dongle. My question is: is it possible to use the original Nordic nrf52840 dongle that I already own to do the same?

Thanks

Parents
  • Hi,

    Yes, it should be fine to use the nRF52840 Dongle as programmer for your Makedriary nRF52840 MDK USB Dongle.

    -Priyanka

  • Hi  ,

    I have connected my dongles as shown here just the left dongle is a nordic in my case ; in dmesg I see that the Nordic dongle is recognised correctly. I also get the DAPLINK drive to place the files on for flashing.

    However, when I put a hex on it, for example uf2_bootloader-nrf52840_mdk_usb_dongle-0.7.1-s140_6.1.1.hex then it seems to copy it on but then the DAPLINK drive disappears and I get strange output in dmesg :

    [188919.077229] usb 1-2: new full-speed USB device number 62 using xhci_hcd
    [188919.220160] usb 1-2: New USB device found, idVendor=1915, idProduct=5200, bcdDevice=10.00
    [188919.220178] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [188919.220186] usb 1-2: Product: NRF52840 CMSIS-DAP
    [188919.220192] usb 1-2: Manufacturer: Arm
    [188919.220197] usb 1-2: SerialNumber: 9952360200052840b626ae29d1a50f5c000000006e052840
    [188919.225473] usb-storage 1-2:1.0: USB Mass Storage device detected
    [188919.226193] scsi host1: usb-storage 1-2:1.0
    [188919.226962] cdc_acm 1-2:1.1: ttyACM0: USB ACM device
    [188919.228744] hid-generic 0003:1915:5200.0015: hiddev0,hidraw1: USB HID v1.00 Device [Arm NRF52840 CMSIS-DAP] on usb-0000:00:14.0-2/input3
    [188920.231930] scsi 1:0:0:0: Direct-Access     MBED     VFS              0.1  PQ: 0 ANSI: 2
    [188920.232741] sd 1:0:0:0: Attached scsi generic sg1 type 0
    [188920.236798] sd 1:0:0:0: [sdb] 131200 512-byte logical blocks: (67.2 MB/64.1 MiB)
    [188920.237074] sd 1:0:0:0: [sdb] Write Protect is off
    [188920.237083] sd 1:0:0:0: [sdb] Mode Sense: 03 00 00 00
    [188920.237398] sd 1:0:0:0: [sdb] No Caching mode page found
    [188920.237410] sd 1:0:0:0: [sdb] Assuming drive cache: write through
    [188920.250268]  sdb:
    [188920.250304] sd 1:0:0:0: [sdb] Attached SCSI removable disk
    [188931.088423] usb 1-2: USB disconnect, device number 62
    [188931.103700] device offline error, dev sdb, sector 149 op 0x1:(WRITE) flags 0x800 phys_seg 25 prio class 0
    [188931.103914] device offline error, dev sdb, sector 1 op 0x1:(WRITE) flags 0x0 phys_seg 1 prio class 0
    [188931.103934] Buffer I/O error on dev sdb, logical block 1, lost async page write
    [188931.104023] device offline error, dev sdb, sector 66 op 0x1:(WRITE) flags 0x100000 phys_seg 1 prio class 0
    [188931.104048] Buffer I/O error on dev sdb, logical block 66, lost async page write
    [188931.104094] device offline error, dev sdb, sector 131 op 0x1:(WRITE) flags 0x0 phys_seg 1 prio class 0
    [188931.104111] Buffer I/O error on dev sdb, logical block 131, lost async page write
    [188931.207093] bio_check_eod: 13 callbacks suppressed
    [188931.207096] pool-caja: attempt to access beyond end of device
                    sdb: rw=0, sector=0, nr_sectors = 1 limit=0
    [188931.207101] FAT-fs (sdb): unable to read boot sector to mark fs as dirty
    [188932.617174] usb 1-2: new full-speed USB device number 63 using xhci_hcd
    [188932.767052] usb 1-2: New USB device found, idVendor=1915, idProduct=5200, bcdDevice=10.00
    [188932.767070] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [188932.767078] usb 1-2: Product: NRF52840 CMSIS-DAP
    [188932.767084] usb 1-2: Manufacturer: Arm
    [188932.767089] usb 1-2: SerialNumber: 9952360200052840b626ae29d1a50f5c000000006e052840
    [188932.774288] usb-storage 1-2:1.0: USB Mass Storage device detected
    [188932.775166] scsi host1: usb-storage 1-2:1.0
    [188932.776845] cdc_acm 1-2:1.1: ttyACM0: USB ACM device
    [188932.780241] hid-generic 0003:1915:5200.0016: hiddev0,hidraw1: USB HID v1.00 Device [Arm NRF52840 CMSIS-DAP] on usb-0000:00:14.0-2/input3
    [188933.777947] scsi 1:0:0:0: Direct-Access     MBED     VFS              0.1  PQ: 0 ANSI: 2
    [188933.778645] sd 1:0:0:0: Attached scsi generic sg1 type 0
    [188933.782323] sd 1:0:0:0: [sdb] 131200 512-byte logical blocks: (67.2 MB/64.1 MiB)
    [188933.782819] sd 1:0:0:0: [sdb] Write Protect is off
    [188933.782827] sd 1:0:0:0: [sdb] Mode Sense: 03 00 00 00
    [188933.783211] sd 1:0:0:0: [sdb] No Caching mode page found
    [188933.783222] sd 1:0:0:0: [sdb] Assuming drive cache: write through
    [188933.795883]  sdb:
    [188933.795917] sd 1:0:0:0: [sdb] Attached SCSI removable disk

    Have you any ideas maybe ? Can I literally wire them like this ? The hardware diagram for the MDK is clear, but i cannot seem to find a similar diagram for the nordic except these ?

    What is also strange is what I wrote below, I can use my raspberry as swd bitbang and connect to the chip with openocd. But flashing there also does not seem to work.

    I'm a bit lost here


    UPDATE

    Sometimes after putting the hex on the drive, after the adapter resets and the DAPLINK drive is remounted, there is a new file on the drive named assert.txt with contents :

    Assert
    File: ../../../source/daplink/HardFault_Handler.c
    Line: 67
    Source: Application
    Hexdumps
    fffffffd
    200004c8
    20007ec8
    00000000
    200004e8
    00006107
    007a1200
    20000000
    40000000
    00000100
    00000000
    00000000
    00000000
    e000ed38

    Pyocd also does not seem to recognise the target correct ?

    └──╼ $pyocd list
      #   Probe/Board              Unique ID                                          Target           
    ---------------------------------------------------------------------------------------------------
      0   Arm NRF52840 CMSIS-DAP   9952360200052840b626ae29d1a50f5c000000006e052840   ✖︎ nrf52840_xxaa  
          Makerdiary               nRF52840-MDK-USB-Dongle  
          
    └──╼ $pyocd gdbserver
    0000400 C Target type nrf52840_xxaa not recognized. Use 'pyocd list --targets' to see currently available target types. See <https://pyocd.io/docs/target_support.html> for how to install additional target support. [__main__]
    

Reply
  • Hi  ,

    I have connected my dongles as shown here just the left dongle is a nordic in my case ; in dmesg I see that the Nordic dongle is recognised correctly. I also get the DAPLINK drive to place the files on for flashing.

    However, when I put a hex on it, for example uf2_bootloader-nrf52840_mdk_usb_dongle-0.7.1-s140_6.1.1.hex then it seems to copy it on but then the DAPLINK drive disappears and I get strange output in dmesg :

    [188919.077229] usb 1-2: new full-speed USB device number 62 using xhci_hcd
    [188919.220160] usb 1-2: New USB device found, idVendor=1915, idProduct=5200, bcdDevice=10.00
    [188919.220178] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [188919.220186] usb 1-2: Product: NRF52840 CMSIS-DAP
    [188919.220192] usb 1-2: Manufacturer: Arm
    [188919.220197] usb 1-2: SerialNumber: 9952360200052840b626ae29d1a50f5c000000006e052840
    [188919.225473] usb-storage 1-2:1.0: USB Mass Storage device detected
    [188919.226193] scsi host1: usb-storage 1-2:1.0
    [188919.226962] cdc_acm 1-2:1.1: ttyACM0: USB ACM device
    [188919.228744] hid-generic 0003:1915:5200.0015: hiddev0,hidraw1: USB HID v1.00 Device [Arm NRF52840 CMSIS-DAP] on usb-0000:00:14.0-2/input3
    [188920.231930] scsi 1:0:0:0: Direct-Access     MBED     VFS              0.1  PQ: 0 ANSI: 2
    [188920.232741] sd 1:0:0:0: Attached scsi generic sg1 type 0
    [188920.236798] sd 1:0:0:0: [sdb] 131200 512-byte logical blocks: (67.2 MB/64.1 MiB)
    [188920.237074] sd 1:0:0:0: [sdb] Write Protect is off
    [188920.237083] sd 1:0:0:0: [sdb] Mode Sense: 03 00 00 00
    [188920.237398] sd 1:0:0:0: [sdb] No Caching mode page found
    [188920.237410] sd 1:0:0:0: [sdb] Assuming drive cache: write through
    [188920.250268]  sdb:
    [188920.250304] sd 1:0:0:0: [sdb] Attached SCSI removable disk
    [188931.088423] usb 1-2: USB disconnect, device number 62
    [188931.103700] device offline error, dev sdb, sector 149 op 0x1:(WRITE) flags 0x800 phys_seg 25 prio class 0
    [188931.103914] device offline error, dev sdb, sector 1 op 0x1:(WRITE) flags 0x0 phys_seg 1 prio class 0
    [188931.103934] Buffer I/O error on dev sdb, logical block 1, lost async page write
    [188931.104023] device offline error, dev sdb, sector 66 op 0x1:(WRITE) flags 0x100000 phys_seg 1 prio class 0
    [188931.104048] Buffer I/O error on dev sdb, logical block 66, lost async page write
    [188931.104094] device offline error, dev sdb, sector 131 op 0x1:(WRITE) flags 0x0 phys_seg 1 prio class 0
    [188931.104111] Buffer I/O error on dev sdb, logical block 131, lost async page write
    [188931.207093] bio_check_eod: 13 callbacks suppressed
    [188931.207096] pool-caja: attempt to access beyond end of device
                    sdb: rw=0, sector=0, nr_sectors = 1 limit=0
    [188931.207101] FAT-fs (sdb): unable to read boot sector to mark fs as dirty
    [188932.617174] usb 1-2: new full-speed USB device number 63 using xhci_hcd
    [188932.767052] usb 1-2: New USB device found, idVendor=1915, idProduct=5200, bcdDevice=10.00
    [188932.767070] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [188932.767078] usb 1-2: Product: NRF52840 CMSIS-DAP
    [188932.767084] usb 1-2: Manufacturer: Arm
    [188932.767089] usb 1-2: SerialNumber: 9952360200052840b626ae29d1a50f5c000000006e052840
    [188932.774288] usb-storage 1-2:1.0: USB Mass Storage device detected
    [188932.775166] scsi host1: usb-storage 1-2:1.0
    [188932.776845] cdc_acm 1-2:1.1: ttyACM0: USB ACM device
    [188932.780241] hid-generic 0003:1915:5200.0016: hiddev0,hidraw1: USB HID v1.00 Device [Arm NRF52840 CMSIS-DAP] on usb-0000:00:14.0-2/input3
    [188933.777947] scsi 1:0:0:0: Direct-Access     MBED     VFS              0.1  PQ: 0 ANSI: 2
    [188933.778645] sd 1:0:0:0: Attached scsi generic sg1 type 0
    [188933.782323] sd 1:0:0:0: [sdb] 131200 512-byte logical blocks: (67.2 MB/64.1 MiB)
    [188933.782819] sd 1:0:0:0: [sdb] Write Protect is off
    [188933.782827] sd 1:0:0:0: [sdb] Mode Sense: 03 00 00 00
    [188933.783211] sd 1:0:0:0: [sdb] No Caching mode page found
    [188933.783222] sd 1:0:0:0: [sdb] Assuming drive cache: write through
    [188933.795883]  sdb:
    [188933.795917] sd 1:0:0:0: [sdb] Attached SCSI removable disk

    Have you any ideas maybe ? Can I literally wire them like this ? The hardware diagram for the MDK is clear, but i cannot seem to find a similar diagram for the nordic except these ?

    What is also strange is what I wrote below, I can use my raspberry as swd bitbang and connect to the chip with openocd. But flashing there also does not seem to work.

    I'm a bit lost here


    UPDATE

    Sometimes after putting the hex on the drive, after the adapter resets and the DAPLINK drive is remounted, there is a new file on the drive named assert.txt with contents :

    Assert
    File: ../../../source/daplink/HardFault_Handler.c
    Line: 67
    Source: Application
    Hexdumps
    fffffffd
    200004c8
    20007ec8
    00000000
    200004e8
    00006107
    007a1200
    20000000
    40000000
    00000100
    00000000
    00000000
    00000000
    e000ed38

    Pyocd also does not seem to recognise the target correct ?

    └──╼ $pyocd list
      #   Probe/Board              Unique ID                                          Target           
    ---------------------------------------------------------------------------------------------------
      0   Arm NRF52840 CMSIS-DAP   9952360200052840b626ae29d1a50f5c000000006e052840   ✖︎ nrf52840_xxaa  
          Makerdiary               nRF52840-MDK-USB-Dongle  
          
    └──╼ $pyocd gdbserver
    0000400 C Target type nrf52840_xxaa not recognized. Use 'pyocd list --targets' to see currently available target types. See <https://pyocd.io/docs/target_support.html> for how to install additional target support. [__main__]
    

Children
No Data
Related