Skip to main content
Associate
June 11, 2026
Solved

STM32CubeProgrammer UI Scaling issue on linux

  • June 11, 2026
  • 5 replies
  • 141 views

As shown in the picture above, on Fedora 43, the CubeProgrammer application is not matching the OS scaling and there are no options to configure it like in CubeMX. CubeProgrammer is the latest version (v2.22.0), installed today.

My computer is a laptop with a 2256x1504 screen and OS-level scaling is set to 133%. All other applications behave as expected, I only ever have issues with ST’s applications.

This issue has been reported multiple times in the past on different linux distributions. I have tried all suggested fixes in those posts, none worked. Links to other issues that had no solutions:

 

Best answer by Emile BV

Managed to get this working on Fedora 43, needed to do some extra stuff to get OpenJDK 17 and OpenJFX 11 however.

OpenJFX has to be downloaded from this link: https://gluonhq.com/products/javafx/ and you have to include the archived versions to access the version 11. I copied the content into “/usr/lib/jvm/openfx-11/” so all java packages are in the same folder.

Then, OpenJDK needs the temurin repo, which can be added with the following commands:

sudo dnf install adoptium-temurin-java-repository
sudo fedora-third-party enable
sudo dnf install temurin-17-jdk

Then the modified bash launch script looks something like this:

#!/bin/bash

CUBE="$HOME/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin"

GDK_BACKEND=x11 \
LD_LIBRARY_PATH="$CUBE/../lib:$LD_LIBRARY_PATH" \
/usr/lib/jvm/java-17-temurin-jdk/bin/java \
-Djdk.gtk.version=3 \
-Dglass.gtk.uiScale=2 \
--module-path /usr/lib/jvm/openjfx-11/lib/ \
--add-modules javafx.controls,javafx.fxml,javafx.web,javafx.swing \
-jar "$CUBE/STM32CubeProgrammerLauncher"

This will work for Fedora 43 but I hope an official fix gets implemented in CubeProgrammer directly as this is a lot of work for something that should not be on the user’s side to fix. JavaFX 11 has been deprecated for a while now, having to rely on it is far from ideal. Same for Java 17, it’s not available by default on Fedora 43 because newer versions should be used instead.

5 replies

ST Technical Moderator
June 15, 2026

Hello ​@Emile BV ,

Our team is already aware of this issue and is currently investigating it. I will let you know if there is any update on this matter. (Internal ticket ID: 0036129)
PS: Ticket ID: 0036129 is an internal tracking number and is not accessible or usable by customers.


Kind regards,
Kouthair

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
Emile BVAuthor
Associate
June 15, 2026

Hi ​@Kouthair,

Alright, I’m glad it’s something being worked on! Please let me know if you need more system-specific information to help.

 

Visitor
September 5, 2026

SOLVED WORKAROUND — Ubuntu/Wayland/HiDPI

I found a working workaround for this issue using system OpenJDK 17 + OpenJFX 11 and forcing JavaFX to use X11 with -Dglass.gtk.uiScale=2.

Tested successfully on Ubuntu with a 3072×1728 / 192 DPI display.

I attached the complete step-by-step solution and launcher script for other Linux users.

Emile BVAuthorBest answer
Associate
September 8, 2026

Managed to get this working on Fedora 43, needed to do some extra stuff to get OpenJDK 17 and OpenJFX 11 however.

OpenJFX has to be downloaded from this link: https://gluonhq.com/products/javafx/ and you have to include the archived versions to access the version 11. I copied the content into “/usr/lib/jvm/openfx-11/” so all java packages are in the same folder.

Then, OpenJDK needs the temurin repo, which can be added with the following commands:

sudo dnf install adoptium-temurin-java-repository
sudo fedora-third-party enable
sudo dnf install temurin-17-jdk

Then the modified bash launch script looks something like this:

#!/bin/bash

CUBE="$HOME/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin"

GDK_BACKEND=x11 \
LD_LIBRARY_PATH="$CUBE/../lib:$LD_LIBRARY_PATH" \
/usr/lib/jvm/java-17-temurin-jdk/bin/java \
-Djdk.gtk.version=3 \
-Dglass.gtk.uiScale=2 \
--module-path /usr/lib/jvm/openjfx-11/lib/ \
--add-modules javafx.controls,javafx.fxml,javafx.web,javafx.swing \
-jar "$CUBE/STM32CubeProgrammerLauncher"

This will work for Fedora 43 but I hope an official fix gets implemented in CubeProgrammer directly as this is a lot of work for something that should not be on the user’s side to fix. JavaFX 11 has been deprecated for a while now, having to rely on it is far from ideal. Same for Java 17, it’s not available by default on Fedora 43 because newer versions should be used instead.

Emile BVAuthor
Associate
September 10, 2026

Forgot to add this bit of info:

To have the gnome app launcher use this script, simply swap out the “Exec=” line in “~/.local/share/applications/STM32CubeProgrammer.desktop” to point to the script .