SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world.
And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download two short videos (registration required) highlighting:

System Workbench for STM32

Nucleo board can't program or debug after upgrade.

Hi All,

I was offered an upgrade when I started System workbench this evening, so I allowed the system to upgrade itself and restart.

Now I am unable to program my neucleo board using the built in ST-Link, it worked before the upgrade.

When trying to program I get :

Open On-Chip Debugger 0.10.0-dev-00010-g96aab7b (2018-07-13-06:51)
Licensed under GNU GPL v2
For bug reports, read
srst_only separate srst_nogate srst_open_drain connect_assert_srst
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
adapter_nsrst_delay: 100
adapter speed: 950 kHz
Info : clock speed 950 kHz
Error: libusb_get_device_list() failed with LIBUSB_ERROR_IO
Error: open failed (no matching adapter found)
in procedure ‘program’
in procedure ‘init’ called at file “embedded:startup.tcl”, line 485
in procedure ‘ocd_bouncer’

    • OpenOCD init failed **

shutdown command invoked

I have checked the version of the driver installed on the STLink and updated it with ST’s ST-Link utility. I have also checked that the ST link windows driver is the latest (that I am aware of) : dated 08/06/2017.

Running Windows 7 64 bit.

I have tried re-starting both the Nucleo board and the computer, and have tried it in different USB ports, but have the same result.

Any idea what the problem is or how I can get the damn thing working again.




I don’t reproduce your issue.
libusb has been updated but it should work better (there was an error msg that has gone now on new USB 3.1 ports).

Which nucleo board do you have ?

Can you try to create a new project or a new debug configuration.

Can you try with another board ?


Similar problem here.

After accepting today the latest updates, I cannot anymore program or debug a custom made board based on STM32F732RET.

The log file is attached. As you can notice, libusb_get_device_list() fails with the error code LIBUSB_ERROR_OTHER.

The hardware connection is ok, the ST-LINK utility is able to recognize the st-link v2 programmer and to read/write the FLASH memory.

The firmware on the programmer has been upgraded to the latest version (V2.J31.S7), I connected the programmer also to slower USB 2.0 ports.

Any help would be very appreciated.


Since it is not possible to uninstall openocd or to select for use a previous installed version from System Workbench, I had to copy the previous version’s binaries from the folder:

C:\Program Files\Ac6\SystemWorkbench\plugins\fr.ac6.mcu.externaltools.openocd.win32_1.17.0.201801120948\tools\openocd\bin

and overwrite the latest, not working binaries in:

C:\Program Files\Ac6\SystemWorkbench\plugins\fr.ac6.mcu.externaltools.openocd.win32_1.18.0.201807130628\tools\openocd\bin

Now everything works again.

I eventually made it work, I also have a Wellon VP-590 EPROM/FLASH programmer, unplugging the usb lead from the Wellon made the ST-link work again. really odd.



I was also annoyed with the same symptoms. I solved the problem as follows.
・ Uninstall SW4STM32 Ver. 2.8
・ Install SW4STM32 Ver2.0
Maybe OpenOCD will work even if it is newer than Ver2.0.
I will continue to try out which version it can work with.

I tried various versions. As a result, OpenOCD Ver. 2.4 works without problems. But Ver 2.5 and newer ones do not work with the same error message.
Is there any difference between Ver2.4 and Ver2.5? What is the cause?