Ask questions and find answers on STM32 microcontrollers software development tools.
Most recent activity
An issue has been identified in STM32CubeIDE 1.19.0 and earlier versions where a download error pop-up may appear during data updates. This issue does not prevent STM32CubeIDE from functioning properly. To continue: click OK twice. STM32CubeIDE should then operate normally. Optional workaround If this pop-up impacts your workflow, you can disable the Auto-Refresh feature: Go to Window → Preferences In the search field, type Firmware Updater Select: Offline Mode No Auto-Refresh at Application start Notes If Auto-Refresh is disabled, STM32CubeIDE will use the local cube-finder-db.zip file and will not automatically retrieve updates. Manual update If needed, you can manually update the data via: Help → STM32Cube Updates → Check for Target Selector Device Database Updates
Dear ST Community members, At the moment, STM32CubeMX2 uses the latest packs available on the public server.A script is available for a specific use case if you prefer not to start a project with the most recently published pack version.This script can be used when a project needs to be created or maintained with the STM32C5 v2.0.0 packs, instead of the most recent version available.If this matches your situation, feel free to use the script as an alternative.Where to get the script: check How to start with previous versions of HAL2 For more details on how to use it, please check the README. If you have any feedback, please don’t hesitate to share it with us in the: STM32CubeMX2 (MCUs) - STMicroelectronics Community The STM32CubeMX2 Team
An issue has been identified in which STM32CubeMX displays a download error pop-up during data updates. This issue does not prevent STM32CubeMX from working properly. To continue: Click OK twice. After these steps, STM32CubeMX can operate normally. If this pop-up affects your workflow, disable the Auto-Refresh feature: In Help → Connection and Updates, select No Auto- Refresh at Application start. Please note that if Auto-Refresh is disabled, STM32CubeMX uses the local cube-finder-db.zip file and does not retrieve updates automatically. If needed, manually update the data: Help → Refresh Data A fix is in progress in a future version.
We’re happy to announce that STM32CubeMX2 v1.1.0 has been released and is now available. This release includes updates and improvements aimed at enhancing the user experience and supporting your development workflow with STM32. What’s new Enhanced installation support for multiple STM32CubeMX2 versions, including linked IOC2 files and a pinned icon on the Windows taskbar Added Expand All and Collapse All functions in software configuration panels Added confirmation dialog boxes for selected actions Added options to export the pinout as CSV from a menu: without alternate functions or with alternate functions Added pin labels that can be used from configuration panels Improved command-line interface (CLI) capabilities for software configuration Added a pack version compatibility check Added end-user guidance to run Pack update steps in the correct order, with a focus on device family pack (DFP) and hardware abstraction layer (HAL) packs Increased pin name visibility in the pinout view to
We are pleased to announce that version 6.18.0 of STM32CubeMX is now available. What is new in 6.18.0: Added support for new microcontrollers in the STM32U3 series with 256 Kbytes and 512 Kbytes flash memory. Added support for new microcontrollers in the STM32H5 series with 1 Mbyte flash memory. Added support for new boards: NUCLEO-U345RC-Q, NUCLEO-U366RE-Q, STM32U366E-DK and NUCLEO-H553ZG. Added Start From Board feature for NUCLEO-U345RC-Q, NUCLEO-U366REQ, NUCLEO-H553ZG, NUCLEO-F446RE, NUCLEO-L432KC, and NUCLEO-L476RG. Released the following new features: Added support for PLAY for STM32H5 devices with 1 Mbyte of flash memory. Add support for the MP25-DK board in the M33-TD flavor Renamed all STM32CubeMX installers. Added DMA comparison to the "Compare projects" feature. Removed the JxBrowser dependency. Upgraded the OpenSTLinux version to OpenSTLinux (OSTL) 6.2.1. Main fixed issues in 6.18.0: Refer to the STM32 microcontroller online documen
We are pleased to announce that STM32CubeCLT 1.22.0 release is now available What is new in 1.22.0: Updated to align with STM32CubeIDE v2.2.0 Updated STM32CubeProgrammer to version 2.23.0 Updated ST-LINK GDB server to version 7.14.0 Updated JRE™ to version 21.0.10+7 Updated STARM-Clang to version 21.1.1+st.7 Updated Ninja to version 1.13.2 Updated CMake to version 4.3.1 Added support for make 4.4.1_st_20260330-0700 Main fixed issues in 1.22.0:Refer to the following Link here Know problems and limitations in 1.22.0: Refer to the following Link here How to get STM32CubeCLT 1.22.0: Download STM32CubeCLT 1.22.0 from here
We are pleased to announce that STM32CubeIDE 2.2.0 release is now available. What is new in 2.2.0: Added support for: STM32H5 microprocessors to the STM32H5 series STM3U3 series microprocessors to the STM32U3 series STM32V8 series Added support for new boards: NUCLEO-H553ZG NUCLEO-U345RC-Q, NUCLEO-U366RE-Q, STM32U366E-DK NUCLEO-V873XJ, and STM32V873J-DK Updated the target Platform to Eclipse 2025-12 and CDT™ 12.3.0 Added Multidrop support for debugging: STLINK-GDB server OpenOCD Segger J-Link Updated CMake to version 4.3.1 STARM-CLANG to version 21.1.1+st.7 Added support for OpenSTLinux 6.2.1 CMake static library template Ubuntu 26.04 and Fedora 44 Dependencies versions updates: Eclipse® 2025-12 and CDT™ version 12.3.0 Bundled JRE™: Adoptium® Temurin® 21.0.10+7 with JavaFX 21.0.10 ST-LINK GDB Server 7.14.0 supporting ST-LINK/V2 and STLINK-V3 SEGGER J-Link GDB Server V9.42 STM32CubeProgrammer v2.23.0 Open On-Chip Debugg
We are pleased to announce that STM32CubeProgrammer 2.23 is availableWhat is new in 2.23:AI Assistant : Sidekick is now accessible from STM32CubeProgrammer, with a dedicated access button at the top. Native Raspberry Pi support for the Linux Arm 64-bit command-line interface (CLI) package.You must choose Linux ARM in the download widgetReadable File Paths Launch After Install Online documentation. Support for STM32H543/553 devices: Internal memory programming through debug and bootloader interfaces Option bytes programming through debug and bootloader interfaces OTP programming through debug and bootloader interfaces Core register programming through debug interfaces Automatic mode Serial Wire Viewer Register viewer Firmware encryption/signing OBkey generation/provisioning Certificate generation Debug authentication SFI through debug interfaces Support for STM32U335/345 devices: Internal memory programming through debug and bootloader interfaces Option bytes programming th
We are pleased to announce some extensions update related to STM32CubeIDE For VSCode STM32Cube Debug Core 1.3.1Fixed lowPower and watchdog functionality for specific target devices. Fixed the Hard Fault Analyzer for specific target devices. STM32Cube Debug Generic GDB Server 1.3.1Fixed lowPower and watchdog functionality for specific target devices STM32Cube Registers View 1.3.1Fixed a display issue in dual-core debug mode. Fixed a pin issue in dual-core debug mode.STM32Cube Project Manager 1.3.1Fixed the pre-validation check step for STM32CubeIDE Eclipse to CMake conversion.STM32Cube Debug Jlink GDB Server 1.3.1Fixed lowPower and watchdog functionality for specific target devices STM32Cube Debug STLink GDB Server 1.3.1Fixed lowPower and watchdog functionality for specific target devices. Ignored power pulse check in certain use cases. Fixed duplicated -cp argument usage when relying on the legacy STLink-gdbserver bundle
Dear STM32CubeProgrammer Community, I hope you are all doing well. Over the past months, you may have received an email from me, either through the STM32CubeProgrammer survey or on other topics like CSAT or Raspberry Pi support. First, I would like to thank you a lot for all your contributions and feedback, we highly appreciate them, your voice matters ! We’re currently working on improving STM32CubeProgrammer’s usability and would like to 1. reduce the number of repetitive / low added value actions you have to perform, and 2. provide you with clearer error messages. We need your contributions to address priority scenarios. Could you please share in the comments which improvements, use cases, or automated actions you would like to see in the tool to make your daily work easier ? This includes typical errors you often get that you think the tool could prevent or handle automatically, as well as any “why do I have to do this myself every time?” situation you e
Hello The version 1.12.0 of STM32CubeMonitor is available on st.com : https://www.st.com/en/development-tools/stm32cubemonitor.html What are the main changes in this version ? Node-RED® updated to version 4.1.3. STM32 devices list updated. Software dependencies updated ( Electron, Chromium, nodeJS) The release note is available on ST.com : rn0119-stm32cubemonitor-release-v1120-stmicroelectronics.pdf Do not hesitate to create new posts if you have any question. The STM32CubeMonitor team.
Hello A new release of STM32CubeMonitor-RF is available on st.com. Click on "Get latest" to download the version 2.19.0. What are the main changes in this version ? Alignment with STM32CubeWB firmware 1.24.0. Alignment with STM32CubeWBA firmware 1.8.0. Alignment with STM32CubeWB0 firmware 1.4.0. Upgrade of Java® runtime version from 21.0.4 to 21.0.8 Upgrade supported OpenThread version to 1.4.0 API 511 Bug fix Changes details can be found in the release note RN104 and User manual UM2288 Note that whatever STM32CubeWB0 firmware 1.3.0 or 1.4.0 used, displayed version is 1.2.0 without futher impact on the tool behavior. Do not hesitate to create new posts if you have any question. The STM32CubeMonitor-RF team.
Helloi’m using USBX 6.4.0 with CUBEMX to make a custom id device on a stm32H5 everything work fine BUT my report descriptor have four report ID i wanto to use :hid_event.ux_device_class_hid_event_report_id = 3;// some data in the bufferux_device_class_hid_event_set(hid_custom, &hid_event); and in order to do that i have to change custom_hid_parameter.ux_device_class_hid_parameter_report_id = UX_FALSE;to custom_hid_parameter.ux_device_class_hid_parameter_report_id = UX_TRUE;in the function: UINT MX_USBX_Device_Stack_Init(void) i can’t find in cube MX the property to change.. where is it?? thank you in advancebest reguards
Hi,I am working on a new Project for the STM32C562MET6 with STM32CubeMX2 and VS Code.On the first run of toolchain generation, CubeMX generates all expected folders like arch, generated, stm32c5xx_dfp and stm32c5xx_drivers.But I dont want to version all files if they can be generated so i added the folders above to the .gitignore file.After running it a second time but with those folders missing, CubeMx2 doesnt generate it. I already tried to set the “conflict handling rules” to override. Any suggestions?
This covers two separate problems.unsafe relocation. This is coupled with a “cannot find routine xxx”. The cannot find xxx is explained by a changed #ifdef that did not include a routine. The problem that also cropped up was an “unsafe relocation” which doesn’t seem to mean all that much (I know the explanation) in the way of solving the problem. This is “fixed” by going back to 13.3.rel1. and changing the #ifdef. Interrupts not working FreeRTOS latest primask register goes to 0x80 when default task is created. taskEXIT_CRITICAL() does not change that mask Timer, systick, and any other interrupts remain disabled after the first task. If no tasks are created, then primask may or may not be properly set, but the interrupts do not work FREERTOS insists that interrupts should be disabled (read the documents!) and will be re-enabled when the scheduler runs. with 14.3.rel1 interrupts are not enabled. resetting GNU tools to 13.3.rel1 seems to make it all work (and it had been wo
I am using STM32CubeIDE for Visual Studio CodeIf I create an empty project in a folder with spaces the build will fail. I suspect the spaces create a double quote somehow.In the command below, main.c is wrapped in two quotes, -c ""C:\Users\me\VSC_projects\STM first try\asdf\Src\main.c""I suspect this makes gcc look for a file named main.c” instead of main.c. Plus “C:\ instead of C:\Failing build due to spaces:C:\Users\me\AppData\Local\stm32cube\bundles\gnu-tools-for-stm32\14.3.1+st.2\bin\arm-none-eabi-gcc.exe -DDEBUG -DRTE_DEVICE_STARTUP_STM32H5XX "-I"C:/Users/me/VSC_projects/STM first try/asdf/Inc"" "-I"C:/Users/me/VSC_projects/STM first try/asdf"" -fdata-sections -ffunction-sections -Wl,--gc-sections -Wno-comment -g -std=gnu11 -mcpu=cortex-m33 -mfpu=fpv5-sp-d16 -mfloat-abi=hard -mlittle-endian -mthumb -fstack-usage -Wall -Wextra -Wpedantic -Wno-unused-parameter -O0 -g3 -ggdb -o CMakeFiles\asdf.dir\Src\main.c.obj -c ""C:\Users\me\VSC_projects\STM first try\asdf\Src\main.c""arm-none-ea
Hi,I have a firmware running on an STM32H753 that was working correctly. After updating the STM32H7xx_HAL_Driver (by performing the migration in STM32CubeMX), the MCU gets stuck during the execution of SystemClock_Config().While debugging, I noticed that before the migration CubeMX generated:HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2)After the migration, the same function is generated as:HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0)If I manually change it back to:HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2)the MCU works correctly again. However, every time I regenerate the code from CubeMX, it goes back to FLASH_LATENCY_0.I have already tried changing the PLL and clock parameters in the Clock Configuration tab of CubeMX and then restoring the original values, to check whether CubeMX was not correctly updating the clock tree calculation, but the generated code still contains FLASH_LATENCY_0. Is this a bug introduced in the new HAL driver/C
In a project using FreeRTOS, we had the choice in STM32CubeMX to check a box in the NVIC panel “Uses FreeRTOS functions”, see here: I would love to have this feature available in STM32CubeMX2 as well, because by default the interrupt priorities are set to 0, and therefore need to be manually set to configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY (usually = 5) in order to use FreeRTOS API in those ISRs.
As the title describes, the conversion tool to convert Stm32CubeIDE projects over to Visual Studio Code seems to work. Apart from the fact that, at least in my case, it failed to copy over the assembly files, .s files, in the project. Which led to build errors, specifically thumb mode errors.Just posting this here so that it may help others. Not quite sure how best else to let others know.
Hello,I wish to report what I believe to be a bug in the new version of CubeMX (6.18.0).When configuring an STM32H743IIT6, I encounter an error in the Clock Configuration view (please refer to the attached screenshot). The same procedure carried out with CubeMX 6.17.0 works correctly.I have therefore reverted to CubeMX 6.17.0, which is not a critical issue for me, but I thought it important to bring this to your attention.Yours faithfully,Philippe
Hello everyone, I’ve been working for a few weeks on a TouchGFX project using a MCU that is working with CubeMX2, so I used the documentation (Using TouchGFX with STM32CubeMX2 | TouchGFX Documentation) to setup my project, which is working.However I tried to add an SVG Image and then I got the “undefined reference to ‘touchgfx::VectorRenderer::getInstance()’” issue. Normally this issue can be resolved by enabling vector rendering in CubeMX, but because I’m on CubeMX2 it’s not possible in my case.Is there any way to enable vector rendering manually ? Also just to be sure it wasn’t already activated I tried to put a SVG image with the example project that I started with (the NUCLEO-C5A3ZG + RVA15MD project), and I got the same error.MCU used is STM32C552RET6.
One Quick Observation , V2.23 takes so much time as compare to V2.22 ( windows 64 ) , for Reconnecting MCU & Throwing Error after setting RDP2. approx 45 seconds by V2.23. while 5 seconds for V2.22 version.
Hi everyone,I'm working on an STM32 (Nucleo-F446RE to be spesific) project using the STM32Cube extension for VS Code, not CubeIDE. I'm using CMake for building the project.I encountered a few issues:printf doesn't print anything to the serial monitor, so I switched to using HAL_UART_Transmit.When I try to print a float using sprintf(msg, "value: %f\n", var);, it doesn’t work. The output just skips the float value (e.g., "value: \n").After some research, I found out I need to add "-u _printf_float" to the linker flags to enable float formatting support with printf and sprintf.However, I'm new to CMake and I couldn’t figure out which CMake file I need to modify in the project folder to add this flag.I'd really appreciate it if someone could guide me:Where exactly should I add the "-u _printf_float" flag?Is there anything else I should do to make printf work properly over UART?Thanks in advance for your help.
Hello, I have a problem with Cube Programmer API - I’m using it to read RAM addresses continuously at rates of around 300Hz using the readMemory() function. Unfortunately with every call the function starts to take more and more time to execute, causing the readout frequency to drop to 80Hz just after a few minutes. Could it be some mechanism under the hood that causes that? Is there a known workaround? Best Regards, Piotr Wasilewski
I previously got CDC via USBX and FreeRTOS working on a custom C542 design, using the examples since CubeMX2 did not support the USBX middleware at that time.I am now trying to port that code to the C562 since I need more memory. This does not work at the moment since I used CubeMX2 for the USBX configuration and setup.So I thought, lets have a look into the examples and see what I am doing wrong.Unfortunately that did not work, or rather the USBX-CDC-FreeRTOS example for the Nucleo-C562RE board using the CMake toolchain does not work.I got "example_usbx_device_cdc_acm_uart_freertos" from "https://dev.st.com/stm32-example-library" for the CMake toolchain.I extracted the ZIP and imported the project in the latest CubeIDE (version 2.2.0; Silicon MAC) and build the project in "release" and "debug" config without errors.However, both version do not setup the USB stack correctly. The user-LED stays on, so everything should run without errors.If I look at the USB communication with a Total P
ST Community highlights – April to June 2026
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.