Skip to main content
SShid
Associate III
November 18, 2019
Solved

How to factory reset Nucleo F103RB board? NUCLEO Board F103RB - Error in initializing ST-LINK device. Reason: No device found on target.

  • November 18, 2019
  • 1 reply
  • 2549 views

Here is what I did -

From CubeMX, I mistakenly change port configuration of port pin PA14 from SYS_JTCK-SWCLK to GPIO_Output.

Apparently this disabled the debug / programming channel of the target micro controller on the board.

Later I reset the port pin to its original function and tried to program the new firmware, but it doesn't work.

I get following error:

"Error in initializing ST-LINK device.

Reason: No device found on target."

Here's the complete console log -

STMicroelectronics ST-LINK GDB server. Version 5.3.2

Copyright (c) 2019, STMicroelectronics. All rights reserved.

Starting server with the following options:

    Persistent Mode      : Disabled

    Logging Level       : 1

    Listen Port Number     : 61234

    Status Refresh Delay    : 15s

    Verbose Mode        : Disabled

    SWD Debug         : Enabled

Target no device found

Error in initializing ST-LINK device.

I know that the ST-Link is working normally because I was able to update its firmware.

When I keep the reset button pressed while the debugging session is being initiated, it shows the following message "Error in initializing ST-LINK device.

Reason: Target held under reset."

Is there any way to reset the JTAG / SWD channel on the Nucleo board?

This topic has been closed for replies.
Best answer by SShid

Thankfully I was able to recover from this seemed to be serious issue.

Apparently I had remapped an SWD pin to generic I/O, after which the ST Link couldn't communicate with the device.

Resetting the I/O configuration, starting with a default project nothing at all would work.

I tried playing with lot of configuration setting in the Debugger where I changed the Debug Probe from 'ST-LINK (ST-LINK GDB server)' to 'ST-Link (OpenOCD)'.

This simply worked! I don't know how did this fixed it but later when I restored the Debug Probe to 'ST-LINK (ST-LINK GDB server)', it too worked!

If someone else faces this issue, this solution might help.

1 reply

SShid
SShidAuthorBest answer
Associate III
November 18, 2019

Thankfully I was able to recover from this seemed to be serious issue.

Apparently I had remapped an SWD pin to generic I/O, after which the ST Link couldn't communicate with the device.

Resetting the I/O configuration, starting with a default project nothing at all would work.

I tried playing with lot of configuration setting in the Debugger where I changed the Debug Probe from 'ST-LINK (ST-LINK GDB server)' to 'ST-Link (OpenOCD)'.

This simply worked! I don't know how did this fixed it but later when I restored the Debug Probe to 'ST-LINK (ST-LINK GDB server)', it too worked!

If someone else faces this issue, this solution might help.