ST-Link v2 not detected on USB port

After setting up the ST toolchain on linux, and the requisite library support for the blue pill boards in the arduino environment, the ST programming software complained that the firmware on the ST-Link was out of date

I downloaded the ST updater, and installed the current firmware successfully.

After this, the ST programming software was able to identify the connected blue pill.

The arduino IDE successfully downloaded some simple blinky test code to the blue pill.

After some refactoring of the code, I tried to download revised firmware, but the debug output showed that the programmer could not be found. No connections had changed, nothing had been unplugged.

I tried unplugging and replugging the ST-Link, but it could not be detected by the OS.

I have tried plugging it into another machine, and get the same sorts of errors, namely

“[ 3200.114079] usb 1-1: new full-speed USB device number 32 using xhci_hcd
[ 3200.114306] usb 1-1: Device not responding to setup address.
[ 3200.322026] usb 1-1: Device not responding to setup address.
[ 3200.530018] usb 1-1: device not accepting address 32, error -71
[ 3200.530272] usb usb1-port1: unable to enumerate USB device”

Has anyone else come across this?

It seems more like a hardware failure than a firmware failure, given that it managed to do a download to the board. Are there any well known modes of failure similar to this?



1 Like

Hi Erich,

While this is not quite my wheelhouse, I’m taking a look into this one now. Seems strange that everything in the chain worked until you refactored the code (the code you’re running on the BluePill, right?). Any other hardware changes? Are you able to “re-update” the programmer firmware to restore its function?

Again, I’ve got to do some more digging on my side, but maybe someone else here has seen this one before.