cancel
Showing results for 
Search instead for 
Did you mean: 

ST-LINK works and fails on two apparently identical Ubuntu PCs

marcosartore
Associate II

Hi All,

I am successfully programming and debugging a NUCLEO-STM32F401RE by its embedded ST-LINK programmer using STM32CubeIDE v.1.12.0 on a computer running Ubuntu 22.04.3 LTS, updated and upgraded.

I have a second PC running exactly the same Ubuntu, CubeIDE, CubeProgrammer versions but when I try to debug the same NUCLEO board I get the error message "No-ST-LINK detected! etc etc".

I deduce that my USB cable is just fine, that no hardware issues are present and that my two PCs looks the same but some set up difference(s) should exist between them preventing the interface to run properly on the second machine. I wasn't able to identify this difference and solve the problem.

I am aware that several "No ST-LINK detected" posts are present on the STM32 Forums but none of them fixed the issue.

Finally, I upgraded STM32CubeIde and Programmer to a third computer (same Ubuntu version) to their latest release, while keeping the other two PCs "identical", and can confirm that the upgrade did NOT fix the issue too on this third PC.

Any idea ?

Many thanks in advance,

Marco 

1 ACCEPTED SOLUTION

Accepted Solutions

Thanks for your comment: despite it was not a bad port, it forced me to try "lsusb" thus throwing a symbol-not-found error. After googling about this error I found that for some unknown reason an extra libusb file was present in folder /usr/local/lib, namely libusb-1.0.so.1 in my case. Removing this file recovered the "lsusb" command AND the CubeIDE and Prg functionality. This fixed the problem.

Thanks again,

Marco

View solution in original post

3 REPLIES 3
TDK
Guru

Could be a bad port. Does the ST-Link show up on a list of USB devices at all? Should be able to detect USB activity with lsusb or other method.

If you feel a post has answered your question, please click "Accept as Solution".

Thanks for your comment: despite it was not a bad port, it forced me to try "lsusb" thus throwing a symbol-not-found error. After googling about this error I found that for some unknown reason an extra libusb file was present in folder /usr/local/lib, namely libusb-1.0.so.1 in my case. Removing this file recovered the "lsusb" command AND the CubeIDE and Prg functionality. This fixed the problem.

Thanks again,

Marco

TDK
Guru

Glad I could help.

If you feel a post has answered your question, please click "Accept as Solution".