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
After more debugging, the jump function works correctly (PC reaches 0x080208xx, SP and RST are valid), but the app never sends any UART message after jump — even with SystemClock_Config() completely commented out and only HAL_Init() + MX_UART_Init() remaining. The bootloader resets the clock to HSI before jumping. SCB->VTOR is set in SystemInit(). Linker is at 0x08020000. The app works perfectly when flashed directly at 0x08000000 via ST-Link. Something is killing the app immediately after the bootloader jumps but we can't figure out what — any ideas?this is the project : https://github.com/said-sketch/Flashing-by-UART---STM32-Bootloader/tree/main
Dear STMicroelectronics Community,I am experiencing a critical issue with my NUCLEO-144 STM32N657X0 EVAL BRD following an attempted ST-LINK firmware upgrade.During the ST-LINK upgrade process (via STM32CubeProgrammer), the upgrade became stuck and did not complete successfully. After this, the board became non-operational.Current behavior:The board is no longer accessible via ST-LINK (SWD).Flashing is not possible using STM32CubeProgrammer (ST-LINK connection fails).The target MCU cannot be detected or programmed.Powering the board via the on-board USB still works, but no flashing/debugging is possible.The ST-LINK interface appears unresponsive / corrupted.Actions already attempted:Power cycling the boardTrying different USB cables and portsUsing STM32CubeProgrammer CLI and GUIAttempting connection with different reset modes (UR / HWrst / HotPlug)Verifying BOOT0/BOOT1 configurationsUsing macOS (USB device intermittently detected)It appears the ST-LINK firmware may be corrupted due to t
use stm32h743 with eth and a LTE moderm.OS theadx and netxduo ....eth works well I can't find where to congfig ppp, How to select serial port ,and so on.I search the forum and find no answer.
求助篇!使用主控芯片STM32F405RGT6 在操作flash后 复位指令不起作用 这是什么问题呢?////////////////////以下是代码段/////////////////////////////*注释以下语句就可以自动复位成功*/Translation:I'm using STM32F405RGT6 microcontroller, the reset command doesn't work after flash operation. What could be the problem?HAL_FLASH_Unlock(); if (HAL_FLASH_Program(TYPEPROGRAM_WORD, FWR_ADDR, 0) != HAL_OK) { printf("Clear OTA flag error\n"); } else { HAL_Delay(10); uint32_t flag_sttus = HAL_FLASH_GetError; if(flag_sttus & HAL_FLASH_ERROR_PGA) { printf("flash_err!\r\n"); } printf("Clear OTA flag\n"); } HAL_FLASH_Lock();请各位大佬看看是什么情况 感谢!!!!Translation:Could someone please take a look and tell me what's going on? Thanks
Hello everyone,I’m working on a project with the STM32H750B-DK board using TouchGFX and FreeRTOS. I need serial output via the onboard ST‑LINK Virtual COM Port for debugging. According to the board documentation, the VCP is connected to USART3 on PB10 (TX) and PB11 (RX).The problem:In CubeMX, I select USART3, set mode to Asynchronous, and assign PB10/USART3_TX and PB11/USART3_RX. However, in the pin configuration table, these pins remain with "n/a" in the GPIO mode column, the "Modified" checkbox stays unchecked, and they are not configured as Alternate Function Push‑Pull. The generated code therefore never initializes these pins correctly, and I get no output on the VCP.What I have tried:Resetting the pins (PD8, PD9, PC10, PC11) that were previously assigned to USART3.Right‑clicking on PB10/PB11 and selecting "Signal Unpinning" to remove any locks.Manually setting the Alternate Function to AF7 via the right‑click menu.Changing the GPIO mode in the table from "n/a" to "Alternate Functi
Hello. When I press to Run (Run main.c) button, STM32CubeIDE opens random file, possibly, from current repository, for example: startup_stm32l452xx.s, core_cm4.h etc... Code is loading successful, but this side effect bothers me. I would like to disable this function. How can I do it? If you need more information about this behavior please, ask. Thank you for reading.
Hi. I am new to STM32 microcontroller. I started with STM32Cube IDE. So far everything is good until a build of a template project failed. I changed the directory structure of template project and moved folders Src, Inc and Startup to project root and removed Core folder. Now project wouldn't build. Although it generates binaries but with errors. I have also updated the Include paths in project properties but linker keeps failing. This is not a big deal I can move everything back to its original position and it will compile and link without any issue. I am just curious that what is missing. Just want to know what is going wrong. This is the error I am getting multiple times.STM32CubeIDE_2.0.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3.rel1.win32_1.0.100.202509120712/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/bin/ld.exe: STM32CubeIDE_2.0.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-st
To follow up this thread, CTS signal on USB CDC - STMicroelectronics Community I'm experiencing a similar issue. USBser.sys have some problem 1. Only DTR Break can control alone you can set DTR is 1 or 0, but RTS have change,RTS only change with DTR. 2. CDC Serial State I have test this code, it send from Endpoint 81h successfully, but PC USB Host have no message CDC_IN_Buf[0] = 0xA1; /* bmRequestType 0xA1 (10100001B) */ CDC_IN_Buf[1] = 0x20; /* 0x21 (SERIAL_STATE) */ CDC_IN_Buf[2] = 0x00; /* wValue LowByte */ CDC_IN_Buf[3] = 0x00; /* wValue HiByte */ CDC_IN_Buf[4] = 0x00; /* wIndex LowByte Default 0 */ CDC_IN_Buf[5] = 0x00; /* wIndex HiByte */ CDC_IN_Buf[6] = 0x02; /* wLength LowByte Serial State Length 0x0002 */ CDC_IN_Buf[7] = 0x00; /* wLength HiByte */ CDC_IN_Buf[8] = 0x14; /* Data LowByte */ CDC_IN_Buf[9] = 0x00; /* Data HiByte */ /* CDC Serial State bit define (USB CDC 1.1 6.3.5 ) bit0 bRxCarrier 0x
Hello,I Installed STM32CubeMX v6.17.0 with STM32MP2 Software Pack 1.3.0.I see that code generated for CA35 differs from the one generated by the previous version of STM32CubeMX v6.16.1. By the diff below I see that 6.17.0 expects Yocto tree version openstlinux-6.6-yocto-scarthgap-mpu-v26.02.18:- model = "STMicroelectronics STM32MP257F-DK STM32CubeMX board - openstlinux-6.6-yocto-scarthgap-mpu-v25.06.11"; + model = "STMicroelectronics STM32MP257F-DK STM32CubeMX board - openstlinux-6.6-yocto-scarthgap-mpu-v26.02.18"; These are not the only differences between CubeMX versions, there are more in the .dts/dtsi definitions.In the Project Manager window I see that the OpenSTLinux Manifest version is set to openstlinux-6.6-yocto-scarthgap-mpu-v26.02.18.However I'm not planning to switch to Yocto openstlinux-6.6-yocto-scarthgap-mpu-v26.02.18 just now.Is it possible to use CubeMX v6.17.0 with the older Yocto tree version openstlinux-6.6-yocto-scarthgap-mpu-v25.06.11? Regards
Excited to see a new connector on new STM32 Nucleo 144 boards like the Nucleo-H5E5ZJ. Is the Connector intended for customers to design their own modules only, or will ST offer a module as well? PS: I still hope to also see a Qwiic connector, or at least a footprint for it, on Nucleo boards some time in the future.
Hello!I've was following this tutorial on Jtag locking for stm32h573RI using j-link. link to tutorial: How to enable RDP-like product state flash protect... - STMicroelectronics CommunityI made it to the updating the product state to 17 and was in the process of reconnecting under hot plug mode, however I didn't have success reconnecting. I get these 4 errors: To Note: I was able to flash initially with no issues. I've been trying to update the jlink version on the stm32cubeprogrammer and have had no luckI have updated my jlink version locally to 9.18vThank you for the any suggestions :D
One small issue I have. I have a custom STM32F411CEU6 board, quite similar to the WeAct Black Pill in terms of connections, except for the fact that I have a LED on pin PB13, and whenever I try to blink it using:while (1) { /* USER CODE END WHILE */ HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_13); HAL_Delay(500); /* USER CODE BEGIN 3 */ } in the STM32CubeIDE, everything works fine and dandyThe moment i switch to using the Arduino Framework, albeit with the Arduino IDE or PlatformIO, with parameters of:platform = ststm32 board = genericSTM32F411CEusing the code:#define LED PB13 void setup() { pinMode(LED, OUTPUT); } void loop() { digitalWrite(LED, HIGH); delay(1000); digitalWrite(LED, LOW); delay(1000); }or anything similar, it just doesn't work! It always says the upload is successful, and it verifies successfully too! But why then, it refuses to work? Any suggestions?
Can Mesh network be implemented on a STM32 WB05KZ? If yes, how? I don't see any available examples in the STM32CubeWB0 MCU package.
Hi everyone,I’m working on an STM32U5G9 using USBX + ThreadX.I was able to make the device work as:MSC onlyCDC-ACM onlyMSC + CDC-ACM simultaneouslyThat part is fine. What I need now is more dynamic behavior: start the device as MSC, and when a button is pressed, stop USB, change the class to CDC-ACM and restart it (long term I’d like to switch arbitrary combinations of classes, but for now switching from MSC to CDC-ACM is the goal.)From what I understand, I must stop USB so the host will re-enumerate using the new device descriptor, and I’m OK with that. However, every approach I tried ends in a HardFault when I restart with the other class. I suspect I’m missing a call or doing things in the wrong order.How I start the device (this works):/* Start device with MSC only (initial boot) */ /* First I insert CLASS_TYPE_MSC is "UserClassInstance" variable in ex_device_descriptors.c (not shown here), then: */ ux_device_stack_initialize(...); /* Register MSC-only */ ux_device_stack_class_regi
Current Setup:MCU: STM32H7 with FreeRTOSToolchain: VSCode + STM32 VS Code Extension + ST-LinkThe Problem: Currently, the STM32Cube RTOS panel and the RTOS STATE view only update when the debug session is paused. When the CPU is running, the RTOS table either shows "No RTOS detected" or is filled with ??? and 0x????????.For a complex H7 project with LwIP and multiple tasks, I need to monitor stack usage (especially EthIf which has hit 0B free stack) and task states in real-time to catch the exact moment of a crash that occurs after 1 hour of operation.Questions for the Community:VSCode Limitation: Is there any hidden setting in the official STM32 VS Code Extension to enable automatic/live refreshing of the RTOS thread table while the CPU is running?Alternative Extensions: Are there any 3rd-party VSCode extensions (e.g., Cortex-Debug with specific RTOS scripts) that support live RTOS kernel awareness better than the official one?Alternative IDEs: If VSCode cannot do this, which IDE (Keil
Hello,What is the correct layout for the .tsv file for the STM32N6 with application?In this tutorial the FlashLayout.tsv is shown, however it only has the FSBL program in it. I cannot figure out what Id to use for the Appli (also Appli non secure), i tried 0x05 but i get error:Error: unable to get the associate alternate setting of partition ID: 0x 5 Error: please make sure that your alternate settings have string descriptors with the right format Error: unable to switch to partition with index: 0x05This document describes the Id's but i don't think that any of them apply, and the document is for the MPU's anyway.Thanks!
Hello, I have a question about STM32CubeMX regarding the STM32U5G7VJT6 MCU.STM32CubeMX 6/17.0 indicates that a non-existent SMPS power supply must be enabled for the STM32U5G7VJT6.However, this is the version without the 'Q' specified in the part number:Q = Dedicated pinout supporting SMPS step-down converter.When I call SystemPower_Config(), the microcontroller does not work; without calling this function, it works fine.Is this a bug in the STM32CubeMX, assuming only Q versions of this MCU exist?Best regards, Jack
Hello ST experts,I configured an STM32H745 dual core to read data from ADC1/ADC2 in dual mode. I dedicated the M7 core to initialize ADCs, timer and DMA. But after running the code it seems that the ADC is not working either DMA. I used the similar code on the STM32H750 single core. The code is correct.I think I have to configure extra settings for dual core such as managing the memory. Could you please help me.The DMA is in circular mode with "Word" data length.TIM2 triggers the ADCs.
Hi ST team,Is VREFINT in STM32C011F4P6 internally fixed and stable, independent of VDDA fluctuations?If VDDA fluctuates (for example due to LDO load or battery discharge), will the ADC raw readings change proportionally because ADC reference = VDDA?Is it officially recommended for STM32C0 users to read VREFINT periodically and compute real VDDA to correct all ADC channels, especially when VDDA is not stable? Example : - ADC accuracy change if VDDA fluctuation like 3.3v to 2.9v. ? or it can take ref from Vrefint ?
I am working with [STM32F439ZI] and I am trying to initialize SDIO in 4-bit mode.I'm following "STM32 – Creating a File System on a SD card" this video for reference.However, SDIO initialization is failing during the power-on phase.The error occurs during HAL_SD_Init()The failure happens inside the power-on initialization sequenceThe function always returns an error statusThe board is currently tested using the DATA3 line only (this is the only difference from a standard setup)Even when I modify the function / test return values, the error still occurs at power-on initializationI changed the function for card detect so that the return status is always "card present".The error occurs inerrorstate = SDMMC_CmdAppCommand(hsd->Instance, 0);if(errorstate != HAL_SD_ERROR_NONE){return HAL_SD_ERROR_UNSUPPORTED_FEATURE;}}This function returns a CRC error.I have attached the hardware changes I did along with the clock config settings and sdio settings. Please help me resolve it.
I am trying to create a signal that changes its frequency in dynamic way using timers but i am having some issues to do it can anyone give me some tips for easy implementation to do this task
We are pleased to announce that STM32CubeIDE 2.1.0 release is available. What is new in 2.1.0: Added support of STM32C5 series Added support of new microcontrollers across the STM32WBA, STM32WL, STM32H5, STM32U3 and STM32F7 series Added support of new boards: NUCLEO-C542RC, NUCLEO-C562RE, NUCLEO-C5A3ZG, NUCLEO-WBA25CE1, NUCLEO-H5E5ZJ, STM32H5F5J-DK, and NUCLEO-U3C5ZI-Q Support of auto-refresh on imported projects (created initially outside CubeIDE): The updated project source code is auto refreshed at STM32CubeIDE side Support of CMake presets: Providing an easy way to configure the CMake-based project using a JSON file Support of GCC 14 toolchain as default toolchain: Libncurses5 is no longer needed for GDB on Linux Support of Apple® Silicon with ARM64 architecture: Performance enhancement Update to STARM-Clang 21.1.1: Improving code quality, diagnostics and standards conformance Main fixed issues in 2.1.0: Refer to the STM32 microcontroller wiki at: https://wiki.st
We are pleased to announce that version 6.17.0 of STM32CubeMX is available. What is new in 6.17.0: Added support for new microcontrollers across the STM32WBA, STM32H5, and STM32U3 series Added support for new boards: NUCLEO-WBA25CE1, NUCLEO-H5E5ZJ, STM32H5F5J-DK, and NUCLEO-U3C5ZI-Q Added the Start From Board feature for NUCLEO-U3C5ZI-Q, NUCLEO-H5E5ZJ, and NUCLEO-WBA25CE1 Added support for new features: PLAY on STM32H5 devices with 4 Megabytes of flash memory HSP on STM32U3 devices with 2 Megabytes of flash memory STM32CubeMX Notification Service: allows users to subscribe to notifications, updates, or premium content when downloading or installing STM32 software. The subscription to this service is entirely optional and is not mandatory for downloading or installing the software. Enhanced the memory management tool for the STM32N6 series Implemented the use of the CMake build generator with STM32MP2 projects Enhanced the build process using C
Hi Does ST have any WIFI chip with FTM? Thanks
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.