Ask questions on STM32CubeMX. Discuss code generation and configuration challenges, among other topics.
Most recent activity
I want to use MotionAD airplane detection library for aircraft detection in our product that is based on MCU that can read uart bytes from STM32 MCU.After reading the documentation of MotionAD airplane detection, i am not sure how it is possible that STM32 send uart packets to our product's MCU Uart about air plane takeoff and landing status. Please elaborate this. Thanks
I'm having a bit of trouble getting STM32CubeIDE v.1.6.0 to work... v1.4.0 works well for me, but the new version hangs during debugging at MX_SDIO_SD_Init(); To be clear, it's able to connect to the board, seems to download binary fine, and then enters normal debugging pausing at HAL_Init();To set the stage, I'm using an STM32F413H-DISCO. Trying a simple project to blink the red and green LEDs works just fine in v1.4.0:Create a new project for the board, use default initialization, add some code to the infinite loop:.../* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { /* USER CODE END WHILE */ MX_USB_HOST_Process(); /* USER CODE BEGIN 3 */ HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_5); HAL_Delay(1000); HAL_GPIO_TogglePin(GPIOE, GPIO_PIN_3);} /* USER CODE END 3 */Works just fine in v.1.4.0, doesn't in v1.6.0... I'm hoping this is a silly mistake and something I've overlooked. But, I'm new to the dev
In some cases I have found that code is needed where there is not a USER CODE section. I've also inherited such code. What is the best way to manage this in a project? If I generate new code from the Mx Cube file I end up overwriting needed code.Manually comparing files between two folders and making edits is a recipe for disaster. How are others handling this?BT
The scrolling Ad panel in 6.2 which used to be a static image in 6.1 is very distracting and annoying. We are already using your product I see no reason to be subjected to this.
For a given project directory, is it possible to specify the folders in which files are generated into? For example, gpio.c is generated in PROJECT_DIRECTORY/Src and I would like to change it to another location (PROJECT_DIRECTORY/Src/MCU).The closest thing I've found to doing this is modifying the extSettings file, but it looks like that is only for changing the location in the an IDE like the workspace in IAR. If using extSettings is the correct way, the documentation is very sparse and there are very few examples that I could find online.Thank you for the help.
Hello,Few days ago I updated STM32Cube software to: STM32CubeMX 6.2.0 STM32CubeIDE 1.6.0 STM32CubeH7 repository 1.9.0and I am struggling with old errors and shortcomings in the STM32CubeMX:When editing the "User label" field, in which something is already entered, the software sometimes starts to spin: It reverses the order of the letters, does not allow any changes, and when you save, the nonsense in the field is saved also.Even if there are valid values in the "Clock Generator" when changes are made, they are marked and treated as invalid (see attachment "Wongly Invalid Clocks").When I create a new STM32 project, sometimes the input frequency for HSE is 8 MHz and sometimes other values (4 MHz, 25 Mhz), although I always create the projects in the same way (starting with board selection). Tha
I have downloaded STM32CubeMX for Linux, and extracted it on Ubuntu 20.04, and double-click the setup file, no error prompted, but I couldn't launch it, how to?
Hello everyone, I am using stm32cubemx to generate my project. In the ProjectManager/code generation option, I checked "Generate peripheral initialization as a pair of '.c/.h' files per peripheral". The reason was to turn main.c into main.cpp, so i wont have to manually add extern 'C' for all the generated initialzations. However, when I compile, it says that STMPE811 has undefined references to IOE. How should I fix this problem?Thanks in advance!
Hello, I have been having trouble getting CubeMX to generate a EWARM project that will compile in IAR Workbench. I looked at this thread so far, but I do not think it will fix my issue since I am currently used IAR 8.50.9. I do not know what is causing the error and do not know what additional debugging information I should post. If any one knows what could be causing this, please let me know. Thank you-U
Hello,I am using a STM32H745ZI in a project and have USART1 configured as a UART. I updated STM32CubeMX to version 6.2.0 today and the clock page is telling me that "USART1,6 clock source frequency must be <= 75 MHz", as per image attached.Earlier versions have not given me this error.I know, I can ignore the error and generate the code anyway.The only place where I think this can come from is as follows. I am using VOS2, and in the device specific datasheet DS12923, table 23 on page 111 says that the maximum APB clock frequency in VOS2 is 75 MHz.Firstly, I think this is a bug in CubeMX because RM0399 states on page 2197 that "There is no constraint between usart_pclk and usart_ker_ck: usart_ker_ck can be faster or slower than usart_pclk. The only limitation is the software ability to manage the communication fast enough.". I cannot find any documentation that says USART1 kernel clock must be limited to 75 MHz.Secondly it got me wondering, how stringent that table is to a maximum li
I have the firmware in suitable location: /home/mq/STM32Cube/Repository/STM32Cube_FW_L5_V1.3.1, while it prompted :Fail to get required STM32Cube firmware package, why?I used STM32CUbeIDE on Ubuntu 20.04
Hello,I am having a problem with CubeMX failing to load a project and not giving any description of what the error is. (See image)I started the exe using java to get more insight and I get this error2021-02-23 10:57:51,490 [ERROR] ThirdPartyModel:1012 - 2021-02-23 10:57:51,492 [FATAL] ProjectFactory:378 - Exception caught java.lang.NullPointerException at com.st.microxplorer.plugins.thirdparty.ThirdPartyIpManager.setIpMode(ThirdPartyIpManager.java:733) at com.st.microxplorer.plugins.thirdparty.ThirdPartyIpManager.updateModel(ThirdPartyIpManager.java:344) at com.st.microxplorer.plugins.thirdparty.ThirdPartyIpManager.updateModelDuringProjectLoad(ThirdPartyIpManager.java:311) at com.st.microxplorer.plugins.thirdparty.ThirdParty.mcuLoadStep1EventHandler(ThirdParty.java:724) at com.st.microxplorer.plugins.thirdparty.ThirdParty.propertyChange(ThirdParty.java:657) at java.beans.PropertyChangeSupport.fire(Unknown Source) at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Sou
Hi all, I want to ask how to use/implement the FreeRTOS task notifications (https://www.freertos.org/RTOS-task-notifications.html)? I cannot find any of the CMSIS v2 API to use , even though I already enabled the USE TASK NOTIFICATION option in STM32CubeMX. I must use the v2 API since TouchGFX is using this too... Any helps are appreciated!
I use CubeIDE 1.3.0 and STM32L4 MCU Package 1.15.1. I wanted to setup a demo project for Nucleo-L4R5ZI. these boards route LPUART1 to STLINK debug Uart port. If you enable NVIC for LPUART1, the firmware package creates a faulty IRQ handler. It should pass HLPUART1 to the IRQ handler but it passes HUART1 (which is not used and not initialized) void LPUART1_IRQHandler(void) { /* USER CODE BEGIN LPUART1_IRQn 0 */ /* USER CODE END LPUART1_IRQn 0 */ HAL_UART_IRQHandler(&huart1); /* USER CODE BEGIN LPUART1_IRQn 1 */ /* USER CODE END LPUART1_IRQn 1 */ }Workaround:void LPUART1_IRQHandler(void) { /* USER CODE BEGIN LPUART1_IRQn 0 */ HAL_UART_IRQHandler(&lphuart1); return; /* USER CODE END LPUART1_IRQn 0 */ HAL_UART_IRQHandler(&huart1); /* USER CODE BEGIN LPUART1_IRQn 1 */ /* USER CODE END LPUART1_IRQn 1 */ }
After an update from cubeMX 6.0.1 to 6.1.0 the user labels have disappeared in pinOut view. Only the function per pin is displayed. Is there an option to make either the user label or the pin function visible?
STM32CubeMX 6.2.0STM32CubeH7 1.9.0STM32H735IGI found a minor bug configuring the ETH section for the STM32H735 in Cube MX. The default RAM adresses for the descriptors and the RX buffer are 0x30040060, 0x30040000 and 0x30040200 which are in the "Reserved" area on this chip series. To change this value to 0x30000000 and onward, checking needs to be disabled on these input fields.In the LwIP section, the value for LWIP_RAM_HEAP_POINTER in the Key Options section also has a wrong default value, but it can be changed without disabling checking.Default values in ETH section Memory map from RM0468 Default values in LWIP sectionEdit: added captions to images
Requesting "VDAC1_OUT2 Channel" on ADC IN18 causes the .ioc file to generate the following line:- sConfig.Channel = ADC_CHANNEL_DAC1CH2_ADC2;which doesn't compile, I think it should be:- sConfig.Channel = ADC_CHANNEL_DAC1CH2;
Clock error cubeMX 6.2.0STM32H755iit STM32H7STM32CubeMX - STM32 Device Configuration ToolVersion: 6.2.0-RC3 Build: 20210219-1602 (UTC)STM32Cube FW_H7 V1.9.0STM32CubeIDE - C/C++ Embedded Development Tools for MCUVersion: 1.6.0.202101291314I cannot set the source clock frequency to 480 MhzcubeMx gives an error message: "Frequentcy searched for is out of range for this VOS range"However, the VOS0: scale0 is normally set at 480/240 MhzIt works with cubeMx 610.
Hi,I am developing a bootloader and an application for a device. Now I have two separate projects and I configure all pins using CubeMX twice. Each project has ist own .ioc file and it is very much work to synch all pins and other settings between the two projects, also because the CubeMX tool is very slow.So I wonder if there is an elegant way to share a .ioc config between both projects without breaking things?Thanks in advance,Anguel
Hello everyone,I am currently a student in computer science. For an association project (linked to my school), I must take over a project which used a STM32F746BGTx LQFP208 board. The whole project contains a .ioc file, the generated sources and a lot of custom sources for achieving the past goals of the project I am taking over.The problem is, when I want to create a new STM32 Project from an existing STM32CubeMX configuration file (.ioc), it says the project is using STM32 FW F7 V1.7.0, which is not available on the ST website. It doesn't generate the sources after that (which I don't want, I only want to be able to open the project, to work on it and to build/compile it). I have tried to open it with FW F7 V1.15.0 & V1.16.0 but it didn't worked. Same by opening project from file system, I can't open the .ioc file.I am working in my association local network, which is secured from Internet, so I can't directly download the FW update, I must import it using sftp.Is there any ways
It's not fixed at all
cubeMX 6.2.0 issue, " Keep user code when re-generating" don't workUsercode overwritten after re-generated code !STM32CubeMX - STM32 Device Configuration ToolVersion: 6.2.0-RC3Build: 20210219-1602 (UTC)
After spending a year or so on different processors, I returned to a new project using the STM32L476 which I had used STM32CubeMX V5.x on before.Using STM32CubeMX V6.1.1 with MDK 5.27 even the simplest USB CDC serial port device would not work; the windows driver gets part way through initiating the device as a serial port and then fails to open with error code 10. The same settings using CubeMX V5.x did not have this problem.Other notes: Using STM32CubeMX V6.1.1 with MDK 5.27 with the same usb cdc configuration but on a STM32L152RC runs perfectly. With STM32CubeMX V6.1.1 one can ONLY select firmware package STM32Cube FW_L4 V1.16.0, and editing the .ioc file to force an earlier package e.g. STM32Cube FW_L4 V1.13.0 fails to produce compile-able code. The only GOOD thing is that finally there is a "CDC_TransmitCplt_FS" hook added which I always had to add manually before.If anyone knows a work around please let me know, otherwise I will have to set up another machine (yet again) for runn
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.