Appendix B STM32CubeMX C code generation design choices and limitations

•        Refer to Appendix B for a description of STM32CubeMX C code generation design choices and limitations.

3           Installing and running STM32CubeMX

3.1          System requirements

3.1.1          Supported operating systems and architectures

•        Windows ® 10 32 bits (x86) or 64 bits (x64), and Windows ® 11 64 bits (x64)

•        Linux ® : Ubuntu ® LTS 22.04 and LTS 24.04, and Fedora ® 42

•        macOS ® 15 (Sequoia), macOS ® 26 (Tahoe): x86_64 and ARM-aarch64 architectures

Note:           Windows is a trademark of the Microsoft group of companies.

Linux® is a registered trademark of Linus Torvalds.

Ubuntu® is a registered trademark of Canonical Ltd.

Fedora® is a trademark of Red Hat, Inc.

macOS® is a trademark of Apple Inc., registered in the U.S. and other countries and regions.

For macOS the full disk access is required to load project files or install other packages from the file system. To enable full disk access for STM32CubeMX:

1.      Go to “System preferences” and click to open “Security & Privacy” window ( Figure 2)

2.      Select “Privacy” tab

3.      Select “Full Disk Access” from the left panel

4.      Click the checkbox to enable full disk access to STM32CubeMX

Figure 2. Full disk access for macOS

|image7|

•      Recommended minimum RAM: 2 Gbytes

3.1.3          Software requirements

If the initial installation was completed with administrator privileges, the user also needs these privileges to download and install the latest update package. Additionally, the user

needs administrator rights to successfully apply the update at the next start of

STM32CubeMX.

Java™ Runtime Environment

For STM32CubeMX 6.13 the bundled JRE is openJDK Runtime Environment Temurin™ 21.0.3+9 (build 21.0.3+9-LTS) and JavaFX-21.0.3.

Starting with version V6.2.0, STM32CubeMX embeds the Java Runtime Environment (JRE™ (a) ) required for its execution and no longer uses the one installed on the user machine.

•        For STM32CubeMX 6.3 the bundled JRE is AdoptOpenJDK-11.0.10+9 and JavaFX-11.0.2

•        For STM32CubeMX 6.2 the bundled JRE is Liberica 1.8.0_265 of BellSoft

Versions earlier than STM32CubeMX V6.2.0 require to install a JRE, whose constraints are:

•        64-bit version mandatory, 32-bit version not supported

•        the STM32PackCreator companion tool requires JRE supporting JavaFX

•        minimum JRE version is 1.8_45 (known limitation with 1.8_251)

•        version 11 is supported, versions 7, 9, 10, 12 and upper are not supported

STMicroelectronics promotes the use of the following JREs:

•        Oracle (a) , subject to license fee

•        Amazon Corretto™ (a) , no-cost solution based on OpenJDK, JDK installer recommended.

STM32CubeMX operation is not guaranteed with other JREs.

macOS software requirements

•        Xcode must be installed on macOS computers

3.2          Installing/uninstalling STM32CubeMX standalone version

3.2.1          Installing STM32CubeMX standalone version

To install STM32CubeMX:

1.      From an Internet browser, open the page www.st.com/stm32cubemx

2.      Click “Get Software” to go to the software download section

On Windows

a)      On STM32CubeMX-Win line, click “Get software” to download the package

b)      Extract (unzip) the downloaded package

c)      Double-click on SetupSTM32CubeMX-VERSION-Win.exe to launch the

installation wizard

d)      The installation wizard is displayed (see Figure 3), it gives the choice between two modes, namely “Install for all users”, and “Install for me only (recommended)”

|image8|

a.   Oracle and Java are registered trademarks of Oracle and/or its affiliates.

a.   All other trademarks are the properties of their respective owners.

Figure 3. Select install mode

|image9|

If you choose “Install for all users” mode:

> Enter administrator credentials >            Welcome panel ( Figure 4)

>     License agreement ( Figure 5)

>      Terms of use ( Figure 6)

>      The default installation path is set to C:\Program

Files\STMicroelectronics\STM32Cube\STM32CubeMX ( Figure 7)

>     The shortcuts for all users are created by default ( Figure 8)

>      Package installation ( Figure 9)

>      Installation script ( Figure 10)

If you choose “Install for me only (recommended)” mode:

>     Welcome panel ( Figure 4)

>     License agreement ( Figure 5)

>      Terms of use ( Figure 6)

>     The installation path is set on the home director by default ( Figure 11): note that the default installation folder is, by default, a system hidden folder

>     The shortcut can be created only for the current user ( Figure 12)

>     Package installation ( Figure 13)

>      Installation script ( Figure 14)

Figure 4. Welcome panel

|image10|

|image11|

Figure 6. Terms of use

|image12|

|image13|

Figure 8. Setup of shortcuts

|image14|

|image15|

Figure 10. Installation script

|image16|

|image17|

Figure 12. Current user shortcut creation

|image18|

|image19|

Figure 14. Installation completed

|image20|

Note: Upon successful installation, the STM32CubeMX icon is displayed on the desktop and the application is available from the Program menu. STM32CubeMX .ioc files are displayed with a cube icon, double-clicking on it opens the project in STM32CubeMX. Only the latest installation of STM32CubeMX is enabled in the Program menu. Previous versions can be kept on your PC (not recommended) when different installation folders have been specified.

Otherwise, the new installation overwrites the previous one(s).

On Linux:

a)      On STM32CubeMX-Lin line, Click “Get software” to download the package

b)      Extract (unzip) the downloaded package

c)      Make sure you have administrator rights to access the target installation directory. You can run the installation as root (or sudo) to install STM32CubeMX in shared directories.

d)      Do chmod 777 SetupSTM32CubeMX-VERSION to change the properties, so

that the file is executable

e)      Double-click on the SetupSTM32CubeMX-VERSION file, or launch it from the console window

On macOS:

a)      On STM32CubeMX-Mac line, Click “Get software” to download the package

b)      Extract (unzip) the downloaded package

c)      Make sure you have administrator rights

d)      Double-click SetupSTM32CubeMX-VERSION.app application file to launch the installation wizard

In case of error, try to fix it: - $sudo xattr -cr <Folder where the zip was extracted>

To ensure the best performance, choose the appropriate STM32CubeMX installer for your Mac. Currently two installers are available, one for Arm64 architecture, one for Intel-based Macs.

3.2.2          Installing STM32CubeMX from command line

There are two ways to launch an installation from a console window: either in console interactive mode or via a script.

Interactive mode

To perform interactive installation, proceed as follows:

1.      Extract (unzip) to folder the auto-extract installation file (SetupSTM32CubeMXVERSION-Win.exe)

2.      Open a standard console window to install for the current user, or the console window with administrator rights to install for all users

3.      Go to the extracted folder (cd <folder path>)

4.      Run the command jre\bin\java -jar  SetupSTM32CubeMX-<VERSION>.exe console

At each installation step, an answer is requested (see Figure 15).

Figure 15. Example of installation in interactive mode

|image21|

Note:           During the installation, ignore the warnings.

Auto-install mode

At end of an installation, performed either using STM32CubeMX graphical wizard or console mode, it is possible to generate an auto-installation script containing user preferences (see Figure 16).

|image22|

You can then launch the installation by typing, from a console window (with or without administrator rights, according to your needs), the command:

SetupSTM32CubeMX-VERSION-Win.exe ABSOLUTE_PATH_TO_AUTO_INSTALL.xml

3.2.3          Uninstalling STM32CubeMX standalone version

Uninstalling STM32CubeMX on macOS®

•        Move STM32CubeMX.VERSION.app to the trash

•        Use the following command line:

–       For STM32CubeMX 6.2.x and later versions:

cd SetupSTM32CubeMX-VERSION.app/Contents/Resources/Uninstaller

./uninstall.sh

–       For STM32CubeMX 6.1.x and older versions:

java -jar SetupSTM32CubeMX-

VERSION.app/Contents/Resources/Uninstaller/uninstaller.jar.

Uninstalling STM32CubeMX on Linux

•        From a shell prompt by launching the uninstall script –   For STM32CubeMX 6.2.x and later versions:

cd <STM32CubeMX installation path>/Uninstaller uninstall.sh

–       For STM32CubeMX 6.1.x and older versions:

java -jar <STM32CubeMX installation path>/Uninstaller/uninstaller.jar.

•        From a file explorer

–       Go to <STM32CubeMX installation path>/Uninstaller

–       For STM32CubeMX 6.2.x and later versions: double-click the uninstall.sh script

–       For STM32CubeMX 6.1.x and older versions: double-click the start uninstall desktop shortcut

Uninstalling STM32CubeMX on Windows - Through the Windows Control Panel:

a)      Select Programs and Features from the Windows Control Panel to display the list of programs installed on your computer.

b)      Right-click STM32CubeMX and select uninstall.

•        From a shell prompt, by using the following commands:

–       For STM32CubeMX 6.10.x and later versions: with administrator rights:

cd          <STM32CubeMX installation path>/Uninstalleradmin_uninstall.bat without administrator rights:

cd <STM32CubeMX installation path>/Uninstaller uninstall.batcd <STM32CubeMX installation path>/Uninstaller uninstall.bat

–       From STM32CubeMX 6.2.x to STM32CubeMX 6.9.x versions:

cd          <STM32CubeMX installation path>/Uninstalleradmin_uninstall.bat

–       For STM32CubeMX 6.1.x and older versions: java -jar <STM32CubeMX installation path>/Uninstaller/uninstaller.jar

•        Through a Windows File Explorer window:

a)      For STM32CubeMX 6.2.x and later versions:

Go to the Uninstaller folder in STM32CubeMX installation directory, then:

>     with administrator rights, right-click on admin_uninstall.bat and “run as administrator”

>      without administrator rights, click on uninstall.bat

b)      For STM32CubeMX 6.1.x and older versions:

Go to the Uninstaller folder in STM32CubeMX installation directory

Double-click startuninstall.exe, or double-click the uninstall shortcut on the desktop

3.3          Launching STM32CubeMX

When running STM32CubeMX behind a proxy, see Section 3.4.1.

3.3.1          Running STM32CubeMX as a standalone application

To run STM32CubeMX as a standalone application on Windows, select STM32CubeMX

from Program Files > ST Microelectronics > STM32CubeMX,or double-click STM32CubeMX icon on your desktop.

To run STM32CubeMX as a standalone application on Linux, launch the STM32CubeMX executable from STM32CubeMX installation directory.

To run STM32CubeMX as a standalone application on macOS, launch the STM32CubeMX application from the launchpad.

Note:           There is no STM32CubeMX desktop icon on macOS.

3.3.2          Running STM32CubeMX in command-line mode

To facilitate its integration with other tools, STM32CubeMX provides command-line modes. Thanks to the commands listed in Table 1 it is possible to:

•        load an MCU

•        load an existing configuration

•        save a current configuration

•        set project parameters and generate corresponding code

•        generate user code from templates

•        load a board identified through its part number

•        refresh the list of embedded software packages (packs and STM32Cube MCU packages) and install/remove a package

•        select additional software (packs) components to add to the project.

Three command-line modes are available:

•        To run STM32CubeMX in interactive command-line mode, use the following command lines:

–       On Windows:

cd <STM32CubeMX installation path>x jre\bin\java -jar –add-opens java.desktop/java.awt=ALL-UNNAMED -add-exports java.desktop/sun.awt=ALL-UNNAMED -

Djavax.net.ssl.trustStoreType=WINDOWS-ROOT STM32CubeMX.exe -i –   On Linux:

cd <STM32CubeMX installation path>

./STM32CubeMX –i

–       On macOS:

cd <STM32CubeMX installation path> cd Contents/MacOs

./STM32CubeMX –i

The “MX>” prompt is displayed, indicating that the application is ready to accept commands.

•        To run STM32CubeMX in command-line mode, getting commands from a script, use the following command lines:

–     On Windows:

cd <STM32CubeMX installation path> jre\bin\java -jar STM32CubeMX.exe –s <script filename> – On Linux and macOS:

./STM32CubeMX –s <script filename>

All the commands to be executed must be listed in the script file. An example of script file content is shown below:

load STM32F417VETx project name MyFirstMXGeneratedProject project toolchain “MDK-ARM v4” project path C:\STM32CubeProjects\STM32F417VETx project generate exit

•      To run STM32CubeMX in command-line mode getting commands from a script and without UI, use the following command lines:

–     On Windows:

cd <STM32CubeMX installation path> jre\bin\java -jar STM32CubeMX.exe –q <script filename> – On Linux and macOS:

./STM32CubeMX –q <script filename>

Here again, the user can enter commands when the MX prompt is displayed.

Table 1. Command line summary

Command line

Purpose

Example

help

Displays the list of available commands.

help

swmgr refresh

Refreshes the list of embedded software package versions available for download.

swmgr refresh

swmgr install

stm32cube_<series>

_<version> ask

Installs the specified STM32Cube MCU package version.(1)

swmgr install stm32cube_f1_1.8.0 ask

swmgr remove

stm32cube_<series> _<version>

Removes the specified STM32Cube MCU package version.

swmgr remove stm32cube_f1_1.8.0

swmgr install

<packVendor>.<packName>. <packVersion> ask

Installs the specified pack version.

swmgr install STMicroelectronics. X-CUBE-NFC4.1.4.1 ask

swmgr remove

<packVendor>.<packName>. <packVersion>

Removes the specified pack version.

swmgr remove STMicroelectronics. X-CUBE-BLE1.4.2.0

Table 1. Command line summary (continued)

Command line

Purpose

Example

pack enable <vendor>

<pack>[/bundle] <version>

<class> <group>[/subgroup] [variant]

Selects a software pack component to add in the project.

The presence of “/” in the second and/or

the fifth parameter(s) indicates, respectively, the explicit mention of a bundle and/or a subgroup (reference: Arm CMSIS pack pdsc format).

To find out the pack / bundle / class / group / subgroup names of the component to enable, select the component and click “Hide/Show details” from the Additional Software window.

pack enable STMicroelectronics

“X-CUBE-BLE1/BlueNRG-MS” 1.0.0

“Wireless” “Controller”

pack validate

Applies in the project all pack components enabled since the “pack validate” command was last called.

pack validate

load <mcu>

Loads the selected MCU.

load STM32F101RCTx load STM32F101Z(F-G)Tx

load <board part number> <allmodes|nomode>

Loads the selected board with all peripherals configured in their default mode (allmodes) or without any configuration (nomode).

loadboard NUCLEO-F030R8 allmodes loadboard NUCLEO-F030R8 nomode

config load <filename>

Loads a previously saved configuration.

config load

“C:\Cube\ccmram\ccmram.ioc”

config save <filename>

Saves the current configuration.

config save

“C:\Cube\ccmram\ccmram.ioc”

config saveext <filename>

Saves the current configuration with all parameters, including those for which values have been kept to default.

config saveext

“C:\Cube\ccmram\ccmram.ioc”

config saveas <filename>

Saves the current project under a new name.

config saveas

“C:\Cube\ccmram2\ccmram2.ioc”

csv pinout <filename>

Exports the current pin configuration as a csv file. This file can be (later) imported into a board layout tool.

Csv pinout mypinout.csv

script <filename>

Runs all commands in the script file.

There must be one command per line.

script myscript.txt

project couplefilesbyip <0|1>

This option allows the user to choose between 0 (to generate the peripheral initializations in the main) and 1 (to generate each peripheral initialization in dedicated .c/.h files).

project couplefilesbyip 1

setDriver <Peripheral Name> <HAL | LL>

For the supported series, STM32CubeMX can generate peripheral initialization code based on LL or on HAL drivers. This command line allows the user to choose, for each peripheral, between HAL- and LL-based code generation. By default code generation is based on HAL drivers.

setDriver ADC LL setDriver I2C HAL

Table 1. Command line summary (continued)

Command line

Purpose

Example

generate code <path>

Generates only “STM32CubeMX generated” code and not a complete project (including STM32Cube firmware libraries and toolchains project files).

To generate a project, use “project generate”.

generate code C:\mypath

set tpl_path <path>

Sets the path to the source folder containing the .ftl user template files.

All the template files stored in this folder are used for code generation.

set tpl_path C:\myTemplates\

set dest_path <path>

Sets the path to the destination folder that will hold the code generated according to user templates.

set dest_path C:\myMXProject\inc\

get tpl_path

Retrieves the path name of the user template source folder.

get tpl_path

get dest_path

Retrieves the path name of the user template destination folder.

get dest_path

SetStructure <Advanced/Basic>

Selects the project structure to generate.

SetStructure Basic

SetCopyLibrary

<copy all / copy only / copy as reference>

Selects how the reference libraries are copied to the projects.

SetCopyLibrary “copy all”

project setCustomFWPath <CustomFwLocation>

Specifies a path to STM32Cube MCU software libraries different from STM32Cube repository path (specified under Help > Updater settings).

project SetCustomFwPath

“F:/SharedRepository/STM32Cube_F

W_F0_V1.11.0”

project toolchain <toolchain>

Specifies the toolchain to be used for the project.

Use the “project generate” command to generate the project for that toolchain.

EWARM

MDK-Arm

STM32CubeIDE

Makefile

CMake

project name <name>

Specifies the project name.

project name ccmram

project path <path>

Specifies the path where to generate the project.

project path C:\Cube\ccmram

project compiler <compiler/linker>

Set Compiler/Linker.

Possible values:

–  GCC

–  Starm-Clang

project compiler “GCC” project compiler “Starm-Clang”

project generate

Generates the full project.(1)

project generate

login < email_adress>

<password> <remember_me>

Allows you to login to download software packages.

login john.smith@st.com mypassword y

exit

Ends STM32CubeMX process.

exit

1.   Use the login command before using this command.

3.4          Getting updates using STM32CubeMX

STM32CubeMX implements a mechanism to access the Internet and to:

•        download embedded software packages: STM32Cube MCU packages (full releases and patches) and third-party packages (.pack) based on the Arm ® CMIS pack format

•        manage a user-defined list of third-party packs

•        check for STM32CubeMX and embedded software packages updates

•        perform self-updates of STM32CubeMX

•        refresh STM32 MCUs descriptions and documentation offer.

Installation and update related submenus are available under the Help menu and from the home page as well.

Off-line updates can also be performed on computers without Internet access (see Section 3.4.3). This is done by browsing the filesystem and selecting available STM32Cube MCU packages.

If the PC on which STM32CubeMX runs is connected to a computer network using a proxy server, STM32CubeMX needs to connect to that server to access the Internet, get self-updates and download firmware packages. Refer to Section 3.4.2 for a description of this connection configuration.

To view Windows default proxy settings, select Internet options from the Control panel and select LAN settings from the Connections tab (see Figure 17).

Figure 17. Displaying Windows default proxy settings

image23

Several proxy types exist, and different network configurations are possible: •            Without proxy: the application directly accesses the web (Windows default configuration).

•        Proxy without login/password

•        Proxy with login/password: when using an Internet browser, a dialog box opens and prompts the user to enter its login/password.

•        Web proxies with login/password: when using an Internet browser, a web page opens and prompts the user to enter its login/password.

If needed, contact your IT administrator for proxy information (proxy type, http address, port).

STM32CubeMX does not support web proxies. In this case, the user cannot benefit from the update mechanism and must manually copy the STM32Cube MCU packages from http://www.st.com/stm32cube to the repository. To do it, follow the sequence below:

1.      Go to http://www.st.com/stm32cube and download the relevant STM32Cube MCU package from the Associated Software section.

2.      Unzip the zip package to your STM32Cube repository. Find out the default repository folder location in the Updater Settings tab as shown in Figure 18 (you might need to update it to use a different location or name).

3.4.1          Running STM32CubeMX behind a proxy server

When proxies are implementing full SSL inspection, STM32CubeMX must be configured to use the proxy certificate.

•        On Windows:

Typically, it comes down to using Windows certificate list.

a)      there is no additional configuration necessary to run STM32CubeMX executable

(it is already configured to use Windows certificate list)

b)      the command line must be adjusted to run STM32CubeMX from the command line:

cd <STM32CubeMX install path>

jre\bin\java -Djavax.net.ssl.trustStoreType=WINDOWS-ROOT -jar STM32CubeMX.exe

•        On Mac/Linux and on Windows systems when the proxy certificate is not in Windows certificate store, the certificate must be manually imported. This is done using keytool from a command prompt, as follows:

$ cd  <CUBEMX_INSTALL_DIR>/jre

$ bin/keytool -importcert -alias <your certificate alias name> keystore lib/security/cacerts -file  <path to you proxy certificate file>.crt

When prompted, enter the password: changeit

When prompted, accept to trust the certificate: yes

Then (Windows only) edit file <CUBEMX_INSTALL_DIR>/STM32CubeMX.l4j.ini and remove the line: -Djavax.net.ssl.trustStoreType=WINDOWS-ROOT

3.4.2          Updater configuration

To perform STM32Cube new library package installation or updates, the tool must be configured as follows:

1.      Select Help > Updater Settings to open the Updater Settings window.

2.      From the Updater Settings tab (see Figure 18)

a)      Specify the repository destination folder where the downloaded packages will be stored.

b)      Enable/Disable the automatic check for updates.

Figure 18. Updater Settings window

image24

3.      In the Connection Parameters tab, specify the proxy server settings appropriate for your network configuration by selecting a proxy type among the following possibilities (see Figure 19):

–       No Proxy

–       Use System Proxy Parameters

On Windows, proxy parameters are retrieved from the PC system settings. Uncheck “Require Authentication” if a proxy server without login/password configuration is used.

–       Manual Configuration of Proxy Server

Enter the Proxy server http address and port number. Enter login/password information or uncheck “Require Authentication” if a proxy server without login/password configuration is used.

4.      Optionally uncheck Remember my credentials to prevent STM32CubeMX to save encrypted login/password information in a file. This implies reentering login/password information each time STM32CubeMX is launched.

5.      Click the Check Connection button to verify if the connection works. A green check image25 mark appears to confirm that the connection operates correctly

6.      Select Help > Install New Libraries submenu to select among a list of possible packages to install.

7.      If the tool is configured for manual checks, select Help > Check for Updates to find out about new tool versions or firmware library patches available to install.

Note: If STM32Cube MX is not connected to the network, or if it detects a connection failure, an icon is displayed close to the myST menu item showing that there is no network connection. When the user clicks on that icon, “Configure network” menu is displayed, and by clicking on it, the “Updater Settings/Connection parameters” dialog pops up. Once the STM32CubeMX is connected to the network, the network icon disappears.

Figure 20. Connection failure

image26

3.4.3          Installing STM32 MCU packages

To download new STM32 MCU packages, follow the steps below:

1.    Select Help > Manage embedded software packages to open the Embedded Software Packages Manager (see Figure 21), or use Install/Remove button from the Home page.

Expand/collapse buttons  expands/collapses the list of packages, respectively.

If the installation was performed using STM32CubeMX, all the packages available for download are displayed along with their version including the version currently installed on the user PC (if any), and the latest version available from www.st.com.

If no Internet access is available at that time, choose “From Local …”, then browse to select the zip file of the desired STM32Cube MCU package that has been previously downloaded. An integrity check is performed on the file to ensure that it is fully supported by STM32CubeMX.

The package is marked in green when the version installed matches the latest version available from www.st.com.

  1.     Click the checkbox to select a package then “Install Now” to start the download.

See Figure 21 for an example.

Figure 21. Embedded Software Packages Manager window

image27

3.4.4          Installing STM32 MCU package patches

Use the procedure described in Section 3.4.3 to download STM32 MCU package patches.

A library patch, such as STM32Cube_FW_F7_1.4.1, can be easily identified by the version number, whose third digit is non-null (e.g. ‘1’ for the 1.4.1 version).

The patch is not a complete library package but only the set of library files that need to be updated. The patched files go on top of the original package (e.g.

STM32Cube_FW_F7_1.4.1 complements STM32Cube_FW_F7_1.4.0 package).

Prior to 4.17 version, STM32CubeMX copies the patches within the original baseline directory (e.g. STM32Cube_FW_F7_V1.4.1 patched files are copied within the directory called STM32Cube_FW_F7_V1.4.0).

Starting with STM32CubeMX 4.17, downloading a patch leads to the creation of a dedicated directory. As an example, downloading STM32Cube_FW_F7_V1.4.1 patch creates the

STM32Cube_FW_F7_V1.4.1 directory that contains the original STM32Cube_FW_F7_V1.4.0 baseline plus the patched files contained in STM32Cube_FW_F7_V1.4.1 package.

Users can then choose to go on using the original package (without patches) for some projects and upgrade to a patched version for others projects.

3.4.5          Installing embedded software packs

Starting from the release 4.24, STM32CubeMX offers the possibility to select third-party embedded software packages coming in the Arm ® Keil CMSIS-Pack format (.pack), whose contents are described thanks to the pack description (.pdsc) file. Reference documentation is available from http://www.keil.com.

1.      Select Help > Manage embedded software packages to open the New Libraries Manager window (see Figure 22), or use Install/Remove button from the Home page, or from the project Pinout & Configuration view (select Software Packs > Manage Software Packs).

Use Expand/collapse buttons  to expand/collapse the list of packages, respectively.

Figure 22. Managing embedded software packages - Help menu

image28

2.      Click From Local … button to browse the computer filesystem and select an embedded software package. STM32Cube MCU packages come as .zip archives and embedded software packs come as .pack archives.

This action is required in the following cases:

–       No Internet access is possible but the embedded software package is available locally on the computer.

–       The embedded software package is not public and hence not available on Internet. For such packages, STM32CubeMX cannot detect and propose updates.

  1.    Click From URL… button to specify the download location from Internet for one of the pack .pdsc file or from the vendor pack index (.pidx).

Proceed as follow:

a)      Choose From URL … and click New (see Figure 23).

b)      Specify the .pdsc file url. As an example, the url of Oryx-Embedded middleware pack is https://www.oryx-embedded.com/download/pack/OryxEmbedded.Middleware.pdsc (see Figure 24).

Figure 23. Managing embedded software packages - Adding a new url

image29

  1.    Click the Check button to verify that the provided url is valid (see Figure 24).

Figure 24. Checking the validity of vendor pack.pdsc file url

image30

  1.    Click OK. The pack pdsc information is now available in the user defined pack list (see Figure 25).

To delete a url from the list, select the url checkbox and click Remove.

Figure 25. User-defined list of software packs

image31

  1. Click OK to close the window and start retrieving psdc information. Upon successful completion, the available pack versions are shown in the list of libraries that can be installed. Use the corresponding checkbox to select a given release.

Figure 26. Selecting an embedded software pack release

image32

  1.     Click Install Now to start downloading the software pack. A progress bar opens to indicate the installation progress. If the pack comes with a license agreement, a window pops up to ask for user’s acceptance (see Figure 27). When the installation is successful, the check box turns green (see Figure 28). The user can then add software components from this pack to its projects.

Figure 27. License agreement acceptance

image33

Figure 28. Embedded software pack release - Successful installation

image34

3.4.6          Removing already installed embedded software packages

To clean up the repository from old library versions, thus saving disk space, proceed as follows (see figures 29 and 30)

1.      Select Help > Manage embedded software packages to open the Embedded Software Packages Manager, or use Install/Remove button from the Home page.

2.      Click a green checkbox to select a package available in stm32cube repository.

3.      Click the Remove Now button and confirm. A progress window opens to show the deletion status.

image35

3.4.7          Checking for updates

Starting with version V6.12.0, if there is a new CubeFW, X-Cube, or I-Cube available for update, an icon is displayed close to the myST menu. The same dedicated icon is displayed left to the “CHECK FOR UPDATES” button. When the user clicks on that icon, the Update Manager window opens.


Figure 31. Checking for available updates

image36

When the updater is configured for automatic checks, it regularly verifies if updates are available.

When automatic checks have been disabled in the updater settings window, the user can manually check if updates are available:

1.      Click the icon to open the Update Manager window or Select Help > Check for Updates. All the updates available for the user current installation are listed.

2.      Click the check box to select a package, and then Install Now to download the update.

Warning:     When performing STM32CubeMX self-updates. administrator rights are required when downloading the self-update package and during the STM32CubeMX launch that completes the update process: