Get ready for the STM32 Summit 2026 | Online, November 3
Join discussions in the Product Forums. Ask questions, learn from your peers, and share insights on ST solutions to accelerate your design journey.
Most recent activity
Hello,For one of my project, my goal is to use PTP to synchronise multiple STM32H563 to one host.However, when configuring the ETH Device, I can only enable RMII, as the "RMII_PTP_SYNCHRO" is greyed out.I've read the pop up that tells me to enable TIM2 as a slave with trigger source "ETR1 through Remap", Channel 1 as "Input Capture direct mode from Remap". And both "remap capabilities" are set to "is connected to ETH_PPS".Is there something that I'm missing ?Best regards
Hi everyone,the update to CubeMX 6.17 seems to introduce a new valid range of the "First RX Descriptor Address" of the Ethernet setup on a NucleoH755 board. This is also the case for the STM32H745.This is the valid range according to the CubeMX field description (there is also a typo for the Parameter Description "Fisrt"):First Rx Descriptor AddressFirst Rx Descriptor Address must be between 0x24000000 and 0x30047fff.Parameter Description:Fisrt Rx Descriptor address must be only in the D2 Domain AHB SRAM. Rx descriptor address must not exceed Max value and must no overlap with Tx descriptor and Rx buffer. These areas must not be cacheable.This contradicts the knowledge base article: How to create a project for STM32H7 with Ethernet and LwIP stack working The reference manual also states that 0x3004000 - 0x3004FFFF should be part of the D2 Domain AHB SRAM3 and hence be part of the intended area. Is this just a bug or do I overlook something?Kind regards
With the attached ioc, CubeMx 6.17.0 freezes when I click on "Generate Code" on macos 14.8.3 . If I start it from the command line I can see this error in the console:2026-03-09 17:20:52,902 [INFO] UtilMem:75 - End SaveConfig() Used Memory: 550133736 Bytes (1459617792)2026-03-09 17:20:52,976 [INFO] UtilMem:75 - End SaveConfig() Used Memory: 580273760 Bytes (1459617792)2026-03-09 17:20:53,182 [INFO] ProjectBuilder:603 - [PM] Start Project Generation Thread2026-03-09 17:20:53,207 [INFO] IPsOverviews:2785 - set Specific Code input for plugin: RCC2026-03-09 17:20:53,207 [INFO] IPsOverviews:2785 - set Specific Code input for plugin: I2C2026-03-09 17:20:53,207 [INFO] IPsOverviews:2785 - set Specific Code input for plugin: I2C2026-03-09 17:20:53,207 [INFO] IPsOverviews:2785 - set Specific Code input for plugin: USART2026-03-09 17:20:53,207 [INFO] IPsOverviews:2785 - set Specific Code input for plugin: MEMORYMAP2026-03-09 17:20:53,207 [INFO] IPsOverviews:2785 - set Specific Code input for plug
Hello, I was going through the schematic of STM32U5G9J-DK1 where I came across the unused LDO (U19) for generating 1.8 V on this board. I wanted to know the significance of this LDO and what were the reasons to keep it unpopulated?Also, can I expect to see an improvement in the driving capability of this rail in case I wish to populate U19 with TPS76301? If yes, which orderable part no. of the same would be recommended?
Hi everyone,I think STM32CubeMX is generating an incorrect configuration for STM32L071.In CubeMX → System Core → SYS → System power supply,I selected Power Regulator = SMPS (instead of LDO) and generated the project.After code generation, I get build errors because CubeMX inserts code that does not exist for this device / HAL package:In stm32l0xx_hal_msp.c, I see references like: HAL_PWREx_ConfigSupply(...) PWR_SMPS_SUPPLY But for STM32L0 / my CubeL0 HAL, these are not definedMy version is :
When choosing SmartCard mode for USART, parameter Parity is automatically set to Even. However generated code in usart.c, does not has:hsmartcard1.Init.Parity = SMARTCARD_PARITY_EVEN;Only when I manually reselect that in GUI, the parity will be set in the generated code.I am using Nucleo-G0B1RE.
Hello,I have been trying to configure the ethernet RMII with PTP synchro on cube MX. The idea is to link the PPS signal to trigger the timer. I can't manage to get the remap to be done to the ETH_PTP_PPS as is not displayed in the dropdown. According to the same cube mx that option should appear. On a side note when I enable the RMII_PTP_syncro I also loose all the config information of ethernet which i find rather strange. Do any of you have any suggestions on what's the proper way of configuring this? Is this even possible or is just a bug of the prompt that implies is possible? Thanks in advance ;)
Hello, Began learning STM32 MCUs with my Nucleo-H753ZI board and I think I found a bug. The IO configurator on CubeIDE thinks user LED2 is on PB7 and is blue coloured. I'll paste the code it generates below. But in fact, the user manual UM2407 says user LED2 is on PE1 and is yellow coloured, which is indeed correct. Generated code from CubeIDE for Nucleo-H753ZI:#define LED2_PIN GPIO_PIN_7 #define LED2_GPIO_PORT GPIOB Appears to be a bug that should be fixed in the BSP.
HiAccording to the reference manual the high-cycle capable Flash of a STM32H562 is mapped to the address 0x0900_0000 to 0x0901_7FFF. The Memory Management Tool of CubeMX does not allow me to generate a Region in this address range (see Error below). Is this correct or should CubeMX not allow the generation of a memory region in this range? The Flash Option Byte was configured for the use of the high-cycle Flash.As a work around I can of course manually edit the linker script.I use STM32CubeMX Version 6.14 with the Firmware Package V1.5.0 to generate a STM32CubeIDE project on Windows 11.
Downloaded the update of STM32CubeMX 6.17.0 to install the ARM version on my M4 MacBook Air with macOS Tahoe. The issue is that it installs an Intel version and not an ARM version. I uninstalled version 6.16 before installing this updated version.The installer file was SetupSTM32CubeMX-6.17.0-Mac-ARM.app.tar downloaded from the STM32CubeMX download page.The next macOS version after Tahoe will not support Intel apps and was expecting an Apple Silicon version as per the download!What is up with this?
Hello,I am using a STM32MP257 (Karo SOM), RGMII connected to a DP83869 (100Mbps fiber mode).This is working well until I start the LVDS screen on my board.The screen is powered with 2 regulators : Backlight (16V/360mA, dedicated boost) Logic (2.7V/500mA, dedicated buck)The DP83869 is powered with 3 regulators :1.1V (dedicated buck) 2.5V (dedicated LDO) 3.3V (shared buck also powering the MP2 SOM)Below is the behavior in different configurations:Screen unplugged => fiber link OK Screen plugged => fiber link KO hot-unplugging the screen makes the link working instantly Screen unplugged, flat cable present, with 100ohm R at the end of the LVDS signals => OK Screen unplugged, With no current on the BL / logic DC/DC converter => OK Sinking 300mA on the BL => KO Removing the sink current makes the link working instantly Sinking 300mA on the logic => KO Removing the sink current makes the link working instantly Probing power rails with a scope show clean signals,
Cross selector displays operation frequency of STM32H743II as 400MHz, but it should be 480MHz. I've refreshed all data and databases but the result is the same. Is there a known solution for this issue?
I'm trying to configure DMA in Memory-to-Peripheral mode for the STM32WB09KE, specifically to transfer data from memory to a Timer channel (TIM2_CH3 for Addressable LED's). However, in STM32CubeMX, I cannot see the expected DMA options under the DMA Settings tab for my Timer.
Cube MX v6.17.0 and even previous version v6.16.1 have a problem generating SystemIsolation_Config for STM32N6.I made a test IOC file. There are 3 SECURE checkboxes checked in RIF -> RIF Aware IPs -> EXTI1:Line 13 for EXTI13Line 17 for RTC secure-wakeupLine 62 for Wake-up PIN3Screenshot: Generated SystemIsolation_Config(void) in main.c of FSBL contains: /* set up EXTI configuration */ /* EXTI13 line */ HAL_EXTI_ConfigLineAttributes(13,EXTI_LINE_SEC|EXTI_LINE_NPRIV); /* RTC secure wake-up line */ HAL_EXTI_ConfigLineAttributes(17,EXTI_LINE_SEC|EXTI_LINE_NPRIV); /* Wake-up_PIN3 line */ HAL_EXTI_ConfigLineAttributes(62,EXTI_LINE_SEC|EXTI_LINE_NPRIV);These calls fail in this assert in stm32n6xx_hal_exti.c: assert_param(IS_EXTI_LINE(ExtiLine));Full assert is turned on in IOC so it lands in assert_failed.The assert condition check macro is very messy, but it appears like it expects type and register mask with it so I added them (based on table 138. EXTI line connec
在使用最新版本的CubeMX 6.17.0 配置STM32G474QETx系列的HRTIM时,Dead Time明明没有启用,但是显示TA2的置位输出源无法配置。
All related to the deadtime settings are disabled, but the Set Source of Output 2 can't be set up. It keeps constant 0, and says the deadtime is enabled? why??? @Aimen1
Hi,I found an issue when generating code for a BLE application with STM32CubeMX v6.17.0.In particular, I have a service called DataTransferService with three characteristics:DataStreamCommandControlTransferStatusThe DataStream characteristic is configured as a notification with a fixed value length of 100 bytes.When I try to increase its length up to 250 bytes and regenerate the code, the following functions in custom_app.c are removed:Custom_Datastream_Update_Char()Custom_Datastream_Send_Notification()I have attached the .ioc file for reference.
Code generation of the attached .ioc file (copy of ST example file of similar name) does not generate clock init for UART4. This means the example application hard faults. I see no reason why the UART clock should not be initialised here and would save someone time debugging in the future!In stm32mp2xx_hal.c:void HAL_UART_MspInit(UART_HandleTypeDef* huart) { GPIO_InitTypeDef GPIO_InitStruct = {0}; if(huart->Instance==UART4) { /* USER CODE BEGIN UART4_MspInit 0 */ // TODO: Need this here! __HAL_RCC_UART4_CLK_ENABLE(); /* USER CODE END UART4_MspInit 0 */ /**UART4 GPIO Configuration PH8 ------> UART4_RX PH7 ------> UART4_TX */ GPIO_InitStruct.Pin = GPIO_PIN_8; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Alternate = GPIO_AF4_UART4; HAL_GPIO_Init(GPIOH, &GPIO_InitStruct); GPIO_InitStruct.Pin = GPIO_PIN_7; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Sp
When configuring the LTDC Layer Settings for an STM32N6 chip in CubeMX, the Layer 0 - Color Frame Buffer Start Address is missing: This parameter is available with other chips, such as STM32F750:
The STM32N6 supports YCbCr as an input format (see reference manual RM0486 section 21.3.5). As of version 6.16.1, this option is still not available in STM32CubeMX. The generated code can be manually modified to make it work by settinghdma2d.LayerCfg[x].InputColorMode = DMA2D_INPUT_YCBCR;
CubeMX 6.16.0 "Memory Management" used for ethernet and with enabled linker file generation creates the following [ORIGIN adapted from default]:RxDescripSection (rwx) : ORIGIN = 0x30040000, LENGTH = 0K TxDescripSection (rwx) : ORIGIN = 0x30040060, LENGTH = 0K Rx_PoolSection (rwx) : ORIGIN = 0x30040200, LENGTH = 1KWhat I would have expected was:RxDescripSection (rwx) : ORIGIN = 0x30040000, LENGTH = 96 TxDescripSection (rwx) : ORIGIN = 0x30040060, LENGTH = 96 Rx_PoolSection (rwx) : ORIGIN = 0x30040200, LENGTH = 1536[with just 1 ETH RX buffer - see this other post ].Can someone explain to me whether this is intentional - maybe because of a constriction with the MPU granularity?Or whether CubeMX handles this wrong and should allow sub-kilo-byte granularity?Best regardsJohannes
I just upgraded to Cube 2.0.0 components. I did my first build in CubeIDE 2.0.0 with a previously working project and I got strange errors. It appears the HAL objects for the peripherals are getting garbled. When pointers to the objects are passed to functions, the compiler says that the pointer is of another peripheral type. In the output below, the pointers to ADCs are treated like they are of the timer typedef.What could cause this? arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32G473xx -c -I../Core/Inc -I../Drivers/STM32G4xx_HAL_Driver/Inc -I../Drivers/STM32G4xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32G4xx/Include -I../Drivers/CMSIS/Include -I../USB_Device/App -I../USB_Device/Target -I../Middlewares/ST/STM32_USB_Device_Library/Core/Inc -I../Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Core/Src/main.d" -MT"
When I run/debug with CubeIDE (2.2.0), I get the following error.Restarting my PC and reinstalling CubeIDE doesn't solve the problem.What should I do? Error in final launch sequence: Failed to execute MI command:target remote localhost:61234 Error message from debugger back end:could not connect (error 138): \212ù\202É\220Ú\221±\202³\202ê\202Ä\202¢\202é\203h\203\211\203C\203u\217ã\202Ì\203f\203B\203\214\203N\203g\203\212\202É\203h\203\211\203C\203u\202ð\220Ú\221±\202µ\202æ\202¤\202Æ\202µ\202Ü\202µ\202½\201BFailed to execute MI command:target remote localhost:61234 Error message from debugger back end:could not connect (error 138): \212ù\202É\220Ú\221±\202³\202ê\202Ä\202¢\202é\203h\203\211\203C\203u\217ã\202Ì\203f\203B\203\214\203N\203g\203\212\202É\203h\203\211\203C\203u\202ð\220Ú\221±\202µ\202æ\202¤\202Æ\202µ\202Ü\202µ\202½\201Bcould not connect (error 138): \212ù\202É\220Ú\221±\202³\202ê\202Ä\202¢\202é\203h\203\211\203C\203u\217ã\202Ì\203f\203B\203\214\203N\203g\203\212\202É\203h\2
Very disappointed and frustrated not to find the flat connecting cable.
Hi,Good day,may we seek your expertise regarding L9959U/L9959T.is there any difference for these mpn below?L9959U-TR-D L9959T-TR-W L9959U-TR-W thank you.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.