Recover nrf5340 (MDBT53) custom board

I am using custom board with MDBT53 and I'm stuck at a point where board does not even let me to connect the debugger so that I can refresh firmware. 

I added MCU boot code into my existing firmware and once I flashed this mcu boot code to my board I got my board into state that its not powering up the board and not letting me to connect the debugger. When I try to flash the code via JFlash v8.28 it gives following error.

Then I search and got some idea from forum that if I use nrfutil or nrfjprog I can recover it but I will share the response for these commands as well which seems not working for me.

nrfjprog --recover --coprocessor CP_NETWORK
[error] [  nRFXX] - Device does not have an ARM debug port.
[error] [  nRFXX] - Device does not have an ARM debug port.
[error] [ Client] - Encountered error -3: Command enable_coprocessor executed for 6 milliseconds with result -3
ERROR: NETWORK coprocessor is invalid on UNKNOWN family devices
[error] [ Worker] - NETWORK is not a valid coprocessor for the device
ERROR: An invalid argument was provided. Use --help for a list of valid
ERROR: arguments.
NOTE: For additional output, try running again with logging enabled (--log).

When run  nrfutil device recover --core Network command it gets following error:

nrfutil device recover --core Network      
❌ Failed to recover 801032098, Device error: A timeout occured while handling debug power: Timed out trying to power sys and debug region
Error: One or more recover tasks failed:
 * 801032098: Device error: A timeout occured while handling debug power: Timed out trying to power sys and debug region (Generic)

Then I also tried to connect the reset pin of board with vdd to which makes the nrf reset I believe. Then again it does not work. I get the following response with this setting. Even if I make reset to GND then again get the same response. 

nrfutil device recover --core Network
❌ Failed to recover 1050083678, Device error: Failed to write DebugPort register 0x08: Unknown Error in J-Link DLL (error code =-1)
Error: One or more recover tasks failed:
 * 1050083678: Device error: Failed to write DebugPort register 0x08: Unknown Error in J-Link DLL (error code =-1) (Generic)



nrfjprog --recover --coprocessor CP_NETWORK
[error] [ Client] - Encountered error -102: Command connect_to_emu_with_snr executed for 732 milliseconds with result -102
ERROR: Unable to connect to a debugger.
[error] [ Worker] - An unknown error.
ERROR: JLinkARM DLL reported an error. Try again. If error condition
ERROR: persists, run the same command again with argument --log, contact Nordic
ERROR: Semiconductor and provide the generated log.log file to them.
NOTE: For additional output, try running again with logging enabled (--log).
NOTE: Any generated log error messages will be displayed.

Can you suggest or tell me anything whats going on and how to fix it?

Thanks 

Parents
  • Hi,

    Foes you custom board use DCDC or LDO mode of operation?

    If you do not have the DCDC external components in place you will "brick" the device.

    Form the Raytac docs, see the recommended circuit for the DCDC mode.

    Regards,

    Jonathan

  • Hi,

    Thanks for quick response. I am not sure about the circuit but I know from my colleagues that we have explicitly disabled it in the code. like this

    # disable DCDC
    CONFIG_BOARD_ENABLE_DCDC_APP=n
    CONFIG_BOARD_ENABLE_DCDC_NET=n
    CONFIG_BOARD_ENABLE_DCDC_HV=n

    I haven't done anything with code but added bootlaoder code into the current version of code and then this happened. So one thing I dont understand is why the device goes to this state as I have never seen something like this before as I did work on mcu boot serval times. 

    Anyway any idea how. we can recover this or make this work again?

    Regards,

Reply
  • Hi,

    Thanks for quick response. I am not sure about the circuit but I know from my colleagues that we have explicitly disabled it in the code. like this

    # disable DCDC
    CONFIG_BOARD_ENABLE_DCDC_APP=n
    CONFIG_BOARD_ENABLE_DCDC_NET=n
    CONFIG_BOARD_ENABLE_DCDC_HV=n

    I haven't done anything with code but added bootlaoder code into the current version of code and then this happened. So one thing I dont understand is why the device goes to this state as I have never seen something like this before as I did work on mcu boot serval times. 

    Anyway any idea how. we can recover this or make this work again?

    Regards,

Children
No Data
Related