2022-08-25 08:57 PM
STM32CubeIDE
Version: 1.10.1
Build: 12716_20220707_0928 (UTC)
OS: Linux, v.5.15.0-46-lowlatency, x86_64 / gtk 3.24.33
Java vendor: Eclipse Adoptium
Java runtime version: 11.0.14.1+1
Java version: 11.0.14.1
Ubuntu 22.04.01
echo $XDG_SESSION_TYPE
x11
java --version
openjdk 11.0.16 2022-07-19
OpenJDK Runtime Environment (build 11.0.16+8-post-Ubuntu-0ubuntu122.04)
OpenJDK 64-Bit Server VM (build 11.0.16+8-post-Ubuntu-0ubuntu122.04, mixed mode, sharing)
Fresh installed the IDE The project can be opened compiled nomally..
Attemtping to open an ioc file from the IDE with device configuration tool reuslts in below
I could succesfully install CubeMX though, but the integration in the IDE is so much easier to use to update code. It all worked before, but Ihad to reinstall Ubuntu and now it doesn't after installing CubeIDE. Have a hunch this has to do with the java version, but can't pinpoint what, it is.
java.lang.NullPointerException
at com.st.microxplorer.maingui.HomePanel.InitStartupPanel(HomePanel.java:85)
at com.st.microxplorer.maingui.HomePanel.<init>(HomePanel.java:61)
at com.st.microxplorer.maingui.MainPanel.initialization(MainPanel.java:360)
at com.st.microxplorer.maingui.AppletMainFrameCubeIde.init(AppletMainFrameCubeIde.java:242)
at com.st.stm32cube.common.mx.core.CubeMxInstance.<init>(CubeMxInstance.java:95)
at com.st.stm32cube.common.mx.core.CubeMxInstance.getInstance(CubeMxInstance.java:70)
at com.st.stm32cube.common.mx.editor.CubeMxEditor.createPartControl(CubeMxEditor.java:1002)
.....
org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:91)
at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:60)
at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:42)
at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:132)
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151)
at org.eclipse.ui.actions.OpenWithMenu.lambda$0(OpenWithMenu.java:182)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5895)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1520)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5126)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4581)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:156)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
at org.eclipse.equinox.launcher.Main.main(Main.java:1440)
Solved! Go to Solution.
2024-08-11 08:15 AM
Works on CubeMX 6.12.0 and IDE 1.15.1
2022-08-27 08:28 AM
This is what the MX readme states
Linux®: 64-bit (x64) (tested on Ubuntu® LTS and Fedora®)
Ubutnu 22.04 LTS
Version 11 is supported.
Versions 7, 9, 10, 12 and upper are not supported.
java -version
openjdk 11.0.16 2022-07-19
OpenJDK Runtime Environment (build 11.0.16+8-post-Ubuntu-0ubuntu122.04)
OpenJDK 64-Bit Server VM (build 11.0.16+8-post-Ubuntu-0ubuntu122.04, mixed mode, sharing)
2022-08-27 07:00 PM
When I tried the debian CubeIDE 1.10.1 installation with Ubuntu 22.04.1, device selection and Pin Configuration Tool worked OK, but the Clock Setting Tool wouldn't take setting LSE as RTC source. HSE, PLL and bus prescalar settings worked OK.
Then in the Editor view, would not accept clicking the Pin Configuration icon to go back.
The CUBEIDE User Manual says tested on 18.04 and 20.04, but 22.04 hasn't been out for very long. Perhaps ST can give us an integration status with 22.04.
I also tried TrueSTUDIO 9.3.0 with 22.04. In the Editor view, selecting a file in the file tree for display in the editor window resulted in the selection focus jumping down 3 files below. Since TrueSTUDIO is no longer supported, users may have to stick with 20.04, unless someone can figure out how to make it work with 22.04.
Cheers, Hal
2022-08-27 07:51 PM
Already upgraded to 22.04.1 now.
CubeMX works ok for me, Just created a new project for STM432F401CCU6 and clock configuration works for external HSE and RTC clock.
This is my current flow:
For existing projects, load the ioc file of the project in CubeMX.
The IDE uses it's own JRE as stated, not the ones installed on system level.,but not sure what java the device configuration tool expects. At system level have the ones below installedd. Neither of these above solve launching the device configration tool form CubeIDE.
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode
* 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
Everything else seems to work normal on 22.04.1
It was all installed from a clean Ubutu 22.04 system.
2022-08-28 05:03 PM
Update: my experience was generating an STM32H750VI project on a 22.04.1 upgrade from a 20.10.
Cheers, Hal
2022-08-30 06:19 PM
Thanks, I still have not figured it out, Hopefully a moderator from ST reads this post and had some ideas how to further debug this....
2023-05-04 04:10 AM
Did anyone managed to find some workaround? Thanks in advance
2023-05-08 07:08 PM
Hi,
I was having what sounds like a similar issue. What I found was - if I launched the MX tool too soon after starting CubeIDE, it would fail.
I noted that I had to wait for ALL the update checks, that appear in the "status bar" to conclude before starting MX (go and make a coffee, it takes several minutes).
Always close the MX tool before closing CudeIDE.
I hope this helps.
Pedro
2023-08-29 04:09 AM
Now and on the latest and greatest IDE and CubeMX and on Ubuntu 23.04, clicking on on the ioc icon still does not work . Amazing that after so many years still no solution or guidance how to fix this ?
2024-08-11 08:15 AM
Works on CubeMX 6.12.0 and IDE 1.15.1