Flashing nRF5340 using PyOCD. Works with both cores with CMSIS-DAP

This not a question.  It is for your information (FYI).  I've seen many questions about flashing the nRF53 using CMSIS-DAP.  Anyone interested see attached instructions.

The instructions uses the IDAP-Link, a CMSIS-DAP probe available at mouser.  https://www.mouser.ca/ProductDetail/I-SYST/CS-BLYST-08?qs=T3oQrply3y%252BhSfpc3hK%2FLg%3D%3D 

It is also available here : https://www.tindie.com/products/hnhoan/cmsis-dap-arm-debug-jtagswd-microsd-drag-drop/

It should work with other CMSIS-DAP probe but have not tested.

3377.Flash_nRF5340_IDAPLink_v1.pdf

Parents Reply Children
  • I made a fake JLink using an STM32F103C8T6 and modified the JLinkARM.dll to bypass the restriction on burning armv8-m. Afterwards, I used Nordic's burning tool to burn an nrf5340, surprisingly the burning process did not report any errors. However, net core still did not work properly. Here are the logs from unicast_audio_client:

    *** Booting nRF Connect SDK v2.5.2 ***
    Initializing
    [00:00:01.138,183] <inf> bt_hci_core: HW Platform: Nordic Semiconductor (0x0002)
    [00:00:01.138,214] <inf> bt_hci_core: HW Variant: nRF53x (0x0003)
    [00:00:01.138,244] <inf> bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 141.732 Build 3324398027
    [00:00:01.140,350] <inf> bt_hci_core: HCI: version 5.4 (0x0d) revision 0x2168, manufacturer 0x0059
    [00:00:01.140,350] <inf> bt_hci_core: LMP: version 5.4 (0x0d) subver 0x2168
    Initialized
    Waiting for connection
    [00:00:01.142,669] <wrn> bt_hci_core: opcode 0x2041 status 0x01
    Scanning failed to start (err -5)

  • The failure to burn the merged_domains.hex file in the figure above may be because this file contains the contents of two cores. Actually, through my testing, when using JFlashLite.exe and my fake JLink, it is necessary to first burn the net core and then burn the app core to ensure that the net core is successfully burned.

Related