pystlink icon indicating copy to clipboard operation
pystlink copied to clipboard

*** ST-Link/V2 is not connected ***

Open mirzafahad opened this issue 7 years ago • 16 comments

I think I am missing something obvious. My ST-Link/V2-1 can be detected by the ST-Link Utility. What are the possible reasons I am having this issue?

mirzafahad avatar Jul 11 '17 21:07 mirzafahad

Hello Fahad, thanks for reporting, but please provide more informations like what OS do you have, version of python, if you have all drivers installed, some debug info -d and so. Thanks.

pavelrevak avatar Jul 11 '17 23:07 pavelrevak

I am using windows 10, python 3.6. I installed pyusb. Downloaded libusb from here (your link isn't working) and copied libusb-1.0.dll into Windows/System32 directory. -d doen't provide anything apart from the "*** ST-Link/V2 is not connected ***" error.

Hope this helps.

mirzafahad avatar Jul 12 '17 18:07 mirzafahad

You also need installed ST-Link utility this utility also contain driver for ST-Link and this is necessary for running under windows, I looking that I forgot to mention about this in README.

pavelrevak avatar Jul 12 '17 18:07 pavelrevak

I have that installed. I mentioned in my first post that ST-Link Utility can detect the ST-Link/V2.

mirzafahad avatar Jul 12 '17 18:07 mirzafahad

I meet the same issue.And I use Windows10 and Python3.5.I used to use ST-Link to program SM32.I cloned pystlink and libusb from github,and compiled libusb-1.0.dll with VS.I am confused ablout what I did wrong.

ZhouChenghong avatar Apr 25 '18 08:04 ZhouChenghong

I know why it is fail to connect to ST-Link/V2,because ST-Link/V2 use STM32 drive program instead of libusb drive program,we should change the drive program to libusb.I program flash successfully several times but failed many times with "*** Error unlocking FLASH ***".I haven't figured out it.

ZhouChenghong avatar Apr 26 '18 02:04 ZhouChenghong

I have figured out the error. :-) I add a 100ms delay before unlock the flash,and try to unlock the flash again between eraseing and flashing.After that,it work well.

ZhouChenghong avatar May 12 '18 09:05 ZhouChenghong

I know why it is fail to connect to ST-Link/V2,because ST-Link/V2 use STM32 drive program instead of libusb drive program,we should change the drive program to libusb.I program flash successfully several times but failed many times with "*** Error unlocking FLASH ***".I haven't figured out it.

I am facing the same problem(*** ST-Link/V2 is not connected ***). How did you handle this problem, can you explain it a little bir more detailed.

bilkosem avatar Mar 14 '19 14:03 bilkosem

You can try following steps: if your system is 64bit windows, need copy MS32\dll\libusb-1.0.dll to C:\Windows\SysWOW64. or just add MS32\dll to your %path% env.

NickXia007 avatar Apr 17 '19 08:04 NickXia007

I am facing the same problem(*** ST-Link/V2 is not connected ***). How did you handle this problem, can you explain it a little bir more detailed.

In fact,I almost forget what I did.Emmm,you can use Zadig to replace the driver of st-link easlly.

ZhouChenghong avatar Apr 17 '19 09:04 ZhouChenghong

Apparently the ST-Link official driver (STSW-LINK009) is just WinUSB. There's no need to replace the driver with Zadig, as it is compatible with libusb (STSW-LINK009 version 2.0.1; libusb version 1.0.22). The libusb-1.0.dll does not need to be copied to Windows directory. Copying libusb-1.0.dll to the Python installation directory (same directory where python.exe is located) is enough.

desowin avatar Dec 19 '19 17:12 desowin

ST-Link driver is needed only to have right .inf file for USB Device. All what you need on Windows is libusb1.dll and pyusb (I prefer 64bit python and also libusb1)

pavelrevak avatar Dec 19 '19 18:12 pavelrevak

Using 32bit Python solved my problem. Initially I thought it was something related to the python version, but doing some experiments here I saw that it was the architecture. Now I need only to have libusb-1.0.dll in the same folder of the program and it works without this error.

hagibr avatar Jul 24 '20 14:07 hagibr

In 2022 the problems continue to happen. Does anyone have a solution for this?

fbvasconcelos avatar Dec 15 '22 16:12 fbvasconcelos

I had the same problem and I managed to solve it. In my case, I have

  • Windows 11
  • Python 3.10
  • The STM32 drivers were already installed since I usually use STM32CubeIDE to program NUCLEOS using ST-LINK/V2.

First, I tried downloading and copying libusb-1.0.dll to path Windows/System32 but it didn't work for me (*** ST-Link/V2 is not connected ***).

To make it recognize, I had to load the libusb-win32 (v1.2.6.0) driver that comes by default to install with the Zadig program (https://zadig.akeo.ie/). Using this program, I selected the ST-LINK Debug device and replaced the driver. Now the python works.

image

However, the programmer of the STM32CubeIDE does not work, you should go back to the previous version of the driver for it to work again. You can do this by reverting to the previous driver in Device Manager > select device > Driver. Or you can also do: Device Manager > select device (right click) > Update Driver > Browse my PC for drivers > Choose from a list of available drivers > Choose STMicroelectronics STLink dongle.

I think there is no way to use two programs twice without doing instalation of the proper driver for each program.

jguembe avatar Jan 19 '23 10:01 jguembe