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 (registration required) various documents highlighting:

System Workbench for STM32

Firmware will download, not install

I’ve installed System Workbench on a Lubuntu box, because I just don’t like all the bloatware that comes with Unbuntu desktop.

When I create a new project, I go through the C Project wizard page, then the Select Configurations page, then the Target Configuration page (STM32F4 and STM32F429I-DISCO, in my case), then to the Project Firmware configuration page.

I select the “Cube HAL” radio button and get a message “Target Firmware has not been found locally, please install it !”

I click on Download target firmware. I accept the license agreement and click OK.

The firmware is downloaded successfully. However, the GUI pauses after the progress bar gets to 100% and the “Target Firmware has not been found” error message reappears.

The exception appears to be:

I’ve seen this before, on an Ubuntu system on which I’d tried to uninstall a bunch of stuff I didn’t want/need before installing System Workbench.

Caused by: java.lang.IllegalArgumentException
at java.util.concurrent.ThreadPoolExecutor.(ThreadPoolExecutor.java:1307)
at java.util.concurrent.ThreadPoolExecutor.(ThreadPoolExecutor.java:1195)
at java.util.concurrent.Executors.newFixedThreadPool(Executors.java:89)
at fr.ac6.mcu.utils.zip.UnZipManager.extract(UnZipManager.java:275)
at fr.ac6.mcu.ide.utils.firmware.installer.FirmwareGenericInstaller.unZip(FirmwareGenericInstaller.java:222)
at fr.ac6.mcu.ide.utils.firmware.installer.FirmwareGenericInstaller.doInstall(FirmwareGenericInstaller.java:115)
at fr.ac6.mcu.ide.utils.firmware.installer.FirmwareInstaller.install(FirmwareInstaller.java:139)
at fr.ac6.mcu.ide.ui.wizards.SetProjectStructureWizardPageAbstract$16.run(SetProjectStructureWizardPageAbstract.java:1252)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119)+-

Can someone please tell me what dependencies there are in the call on line 275 of UnZipManager.java?

(Can someone else tell me why there’s no button in the editor dialog for monospaced/code font? On a site dedicated to programmers, even! Am I really expected to put +- and its complement tags on every line of code that I post?)



Lubuntu is not officially supported.

But anyway my guess is issue is coming from another concern. Is Lubuntu usage related to the fact you’re running on a light hardware configuration ? According provided stack trace sounds to me multi core CPU is expected to speedup unzip process ... could you share your CPU hardware configuration ?

Single CPU hardware configuration sounds to me as a possible root issue (see attachment extracted from : http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/java/util/concurrent/ThreadPoolExecutor.javaQuestion )


Cartu, I have to admit that I was pretty skeptical of your proposed solution. However, I edited my config and gave my VM 2 virtual processors and.... it worked!

I am surprised at the results, to be honest, but it’s hard to argue with success.

Thank you. That’s something I wouldn’t have thought of on my own.


I have the same issue with XP
It seems the firmware don’t unzip .
but if you manually uncompress en put the .zip and the unzipped in the reposetory , all work’s fine

It’s seems that the global issue is the processor with only one core , i have a pentium 4 at 2Ghz with 1 G memory.
As described in other post (lubuntu ) , an exeption error was handle in an fork (backrground unzip task).

Hi macaby974 !

Yes we have an issue with the processors with only one core !

This issue will be fixed in the next release.
Publication around week 4.