Join conversations with your peers and ST experts. Explore the full potential of STM32 microcontrollers for your embedded design.
Most recent activity
I just updated my TouchGFX version to 4.25.0 and try a simple two screens sliding transition with my STM32U5G9J-DK2 with ThreadX RTOS, and I found my sliding transition not working. No more sliding, the screens just updated with a glitch.Can anyone please help to point to me where should I look into? Is it relate to timing in the TouchGFX thread timing?Thank you for your helps.
Hi, I am looking for the offline programmer and adaptor required to program STM32H753VIH6.
Hello all, I want to ask you that is any microcontroller in STM32 series which gives the 5V digital output .. I'm using STM32F746ZGT6, that gives 3.3V as digital output.. I want 5V digital output from microcontroller.. if somebody know then please suggest me ..
Hi,I have a STM32u585 where SFI worked on first attempt. Then I did a factory reset , post that I am not able to get SFi working again at all. Is there a residual / stale state I need to clear to be able to do SFI again?We do not have any OEM Keys set.I did a mass chip erase, factory reset and power cycled before trying again. Verified option bytes look good (TZEN=0, RDP=0). I have attached logs of the failure. Any help appreciated!
We are using an STM32WB5MMG in a product, We needed to run a few BLE tests for compliance needs and came across the BLE transparent mode to help with BLE tests. In accordance with the ReadMe under BLE_TransparentMode inside STM32WB5MM-DK, we have undertaken the following steps Updated FUS to stm32wb5x_FUS_fw.bin at 0x080EE000Updated soft device with stm32wb5x_BLE_Stack_full_extended_fw.bin to 0x080C7000Modified BLE transparent Mode to change USART pins being used to PA9 and PA10 though Cube MXUpdated FUS and Stack Updated VCP_TX and VCP_RX The CubeMonitor-RF software refuses to connect with the device however Unable to connect No changes are done to the transparent mode example with the exception of UART pin update. ioc file PDF attached
I'm designing a power supply for an STM32H745. I have a 28V source and was planning to implement two buck convertersthe first regulates from 28V to 3.3V and supplies the Vdd railthe second regulates from 3.3V to 1.15V and supplies the Vcore railHowever, this seems to violate the power rail sequencing requirements of the STM32H745. I'm having a little trouble deriving the exact requirements from the datasheet and "Getting Started Guide" (AN4938), but the following excerpt makes me think that if I'm bypassing the internal LDO and driving Vcore externally, the Vcore rail must come up before the Vdd rail: My questions are 1. Is it true that if I'm driving Vcore externally and bypassing the internal LDO, that the Vcore rail must come up before the Vdd rail?2. In this case, would my best solution be to just hold the device in reset until the 1V15 rail comes into regulation, perhaps with a comparator driving a FET that pulls down on the RST pin? I'm also open to just implementi
I am trying to update a textArea object from a .c file.I have been able to open the screen by creating a wrapper, the wrapper also handles the data to update. The screen is called ResultsView.cpp and the textArea is called textAreaTap to open the screen i created a wrapper: showResultsScreen()// ResultsScreenWrapper.cpp #include "ResultsScreenWrapper.h" #include <gui/common/FrontendApplication.hpp> #include <gui/results_screen/ResultsView.hpp> #include <touchgfx/Application.hpp> #include <gui/results_screen/ResultsPresenter.hpp> extern "C" void showResultsScreen() { static_cast<FrontendApplication*>(touchgfx::Application::getInstance())->gotoResultsScreenNoTransition(); } extern "C" void update_results_screen(const char* resultText) { auto* app = static_cast<FrontendApplication*>(touchgfx::Application::getInstance()); ResultsPresenter* presenter = static_cast<ResultsPresenter*>(app->getCurrentPresenter()); if
Hello... i recently downloaded STM32 example from ST website, How can i load these example into CubeIDE ?
I am currently evaluating the STM32G0 series for a project that requires two USB Type-C ports.Each port needs to support both Dual Role Port (DRP) functionality and DisplayPort Alternate Mode (DP-Alt).Can the STM32G0 be implemented?
Hello , I am working with the STM32H755ZI-Q board and configuring it as a USB Host. I’ve successfully tested the USB Host functionality using standard USB devices such as a keyboard and a mouse, both of which are recognized correctly by the host. However, when I connect a USB-to-TTL adapter to the host, it fails to detect or enumerate the device. There is no response or indication that a USB device has been connected. I would appreciate any guidance or suggestions on the following: Are USB-to-TTL adapters supported in USB Host mode by default? Is there any specific configuration or class driver (e.g., CDC class) that I need to enable for this to work? Has anyone successfully interfaced a USB-to-TTL device with STM32 USB Host? This is the output I see on Tera Term after enabling the user log : USBH Event TriggeredEvent : StartPID: 7523h VID: 1a86h Address (#1) assigned. Manufacturer : N/A Product : USB Serial Enumeration done. This device has only 1 configuration. Default configuration
I am trying to perform USB enumeration on an STM32H503. I am using HAL_PCD_SetupStageCallback inside of the USB interrupt, which is working perfectly: when I plug in the USB cable to the Nucleo board, the interrupt triggers and I can see that the callback is executing. One thing that doesn't make sense is that the wLength field is always 0x8408 = 33800. One would expect the field to be 0x12 = 18 for a GET_DESCRIPTOR command, but it's always 33800. I don't think the host is the problem - it's a typical Ubuntu PC that has worked with plenty of other USB devices in the past - but I'm having a hard time seeing where there might be a problem in the code. (The cast from hpcd->Setup to USB_SetupTypeDef isn't the problem, in the debugger window I can see that all fields except wLength are exactly as expected, and that 0x8408 is in the hpcd->Setup array as well.)void HAL_PCD_SetupStageCallback(PCD_HandleTypeDef *hpcd) { USB_SetupTypeDef *setup = (USB_SetupTy
Hi im having nucleo h755 board with me, in that usb port section i can't understand, if i connect through usb cable, the board will power it or not. i tried, it not powering the board.And how the circuit will work when fault occurs. and it is possible to power the board when connected to usb cableplease find the atttached image of nucleo h755 usb port schematics. regards,srinath
Hello,I'm working on a project which includes: W25Q32 (NOR Flash), File system and USB MSC + CDC on STM32U0 series MCU - STM32U073RCT6.Till now, I've implemented these:- SPI setup and communication with the NOR Flash (W25Q32)- For the file-system part, I tried to do it using the FileX but couldn't find relevant resources for "FileX + NOR Flash + SPI + STM32U0 series MCU". So, I found this https://github.com/maxiufeng258/SPI_Flash_Uart_Led_Polling_V1.0 (FatFS + W25Qxx) and implemented the same for my MCU as well. And able to create and mount the file system, create folder, text file and able to scan the disk.- Next for the USB part, I've seen some articles and videos, implemented CDC-ACM using USBX and my laptop (USB host) is able to load the appropriate driver for my MCU (USB device) and able to perform CDC-ACM i.e tested by sending some random text from MCU to laptop.- Now, I want to implement the MSC part as well. But the thing is, I think it'll become difficult to integrat
Hi all,I have a strange issue that I can't wrap my head around.I have an eMMC chip connected to a STM32U5G9The .IOC file is all standard: with the clock config as follows: However, when I start a debugging session I get stuck in the init function like so:It looks almost like the sysTick is not being updated at this point so the whole init just stalls.If I comment-out the MX_SDMMC1_MMC_Init() the whole system runs as intended (having a touchGFX application that boots right after the inits)I am running FreeRTOS right now where I think the whole thing should move to ThreadX but the init function should still function as intended, right? For now I am fine with just verifying if the eMMC can initialize. This is my first time setting up an eMMC so I might have overlooked something basic. Anyone out there with some good insights on this?
Hi All,I am following the UM2262 document. I will add a screenshot. I enabled the ENABLE_IMAGE_STATE_HANDLING flag to enable rollback, but after updating UserApp.bin, the device continues to reset. I will add a debug log screenshot (it’s not jumping into the application). Please help me with any references for the rollback feature using the SBSFU package version 2.6.x. Document image 1:Debug image 2: Regards,Raju
Hi guys, sorry if I'm posting this in the wrong area.I'm starting a project that uses a 1024x768 graphics display and I was wondering which STM32F MCU (LQFP 176pin) would be the better to drive the RGB Panel. I would be using external memory but if there is a MCU with internal memory that can display 1024x768 that would be easier and would make the project cheaper as well.Can you please let me know as soon as possible as at this stage I'm doing the research on what I need before I purchase all the parts.Thanks guys and hope to hear from you soon.Peter
Hi all,I'm working on an STM32-based system using FreeRTOS, LWIP (static IP), and the Eclipse Paho MQTTClient C library.Problem Summary:MQTT connection is successfully established (MQTTConnect() OK).All SUBSCRIBE operations return SUBACK, everything looks fine.MQTTYield() initially runs correctly but after a while:Messages stop arriving or arrive with a delay.Sometimes multiple messages are batched and received at once.Inside MQTTYield(), the deliverMessage() call fails with error code 3 (FAILURE).In net_read(), the recv() function either returns nothing or behaves like a timeout.MQTT_LWIP_SOCKET is enabled.recv() is non-blocking.SO_RCVTIMEO is disabled, but issue persists.cycle() is tested both once and inside a while loop – the same issue occurs.It seems deliverMessage() is not properly triggered after readPacket().This problem does not occur consistently in local/home network with Mosquitto. But in corporate/complex networks, messages stop being delivered.MQTT CONNECT sent...CONNACK
Good day I am designing a a PCB using the STM32WL5MOC module and need some help selecting an appropriate buck-boost converter and designing a battery charging circuit using a 3.7v rechargeable battery. Would it be possible to direct me to an example schematic in order to do so. I am new to hardware design and this will significantly help. Than you in advance !
Hello everyone,I’m working with the NUCLEO-WB55 (MB1355D-01) board, and looking at its LSE crystal, the NX2012SA 32.768 kHz with ESR ~120 kΩ and load capacitance 6 pF (Datasheet attached).Calculating the crystal’s minimum transconductance (Gₘ) using:Gm=4×ESR×(2πf)^2×(C0+CL)^2 ≈ 1.1μA/VFrom the STM32WB55 datasheet, the maximum critical crystal gm (Gmcritmax) values depending on the LSEDRV drive setting are:00 (Low): 0.50 µA/V01 (Medium low): 0.75 µA/V10 (Medium high): 1.70 µA/V11 (High): 2.70 µA/VMy software engineer mentioned ST uses the lowest drive setting (00) for the LSE oscillator by default, but based on the crystal’s Gₘ, this seems insufficient for reliable oscillation on the NUCLEO board.Given the crystal Gₘ is around 1.1 µA/V (above the lowest and medium low drive thresholds), how does the LSE oscillator function properly on the NUCLEO-WB55/EVM board? Even at the highest drive level, the margin seems small.Is ST actually using a higher drive level on the EVM/Nucleo boards
I am using the Nucleo-N657X0 for a project. I was in the middle debugging my project and unplugged my board. Now I am unable to connect to my board for debugging or programming in the IDE. I can however connect to the board in CubeProgramming. How do I get my board to connect for debugging and programming again in IDE? I have the boot pins set to the following (just in case this helps):BOOT0 = 0BOOT1 = 1This is what the console outputs when trying to connect. Failed to bind to port 61235, error code -1: No errorFailure starting SWV server on TCP port: 61235Failed to bind to port 61234, error code -1: No errorFailure starting GDB server: TCP port 61234 not available.Shutting down...Exit. Thanks
stlink-V3PWR can't support third-party ARM chips(swd download program)? stlink-V2 Very perfect。stlink-V2 support third-party ARM chips。 Please update the firmware. thank you .
Hello,I have been playing about with the LTDC_Paint example and have managed to produce screens using my own images.I would now like to start my own project using the STMH750B-DK incorporating the elements of the LTDC_Paint example.I am struggling to work out which files and how is best to copy them into my project.i just need to be able to draw BMPs and text on the screen, i do not need the touch screen funtionality or the save to USB function.Has anyone succesfully incorporated elements of the example into their own project and be able to share an example project of point me in the right direction?? Many thanks, Iain
I am implementing a dual-bank-like firmware architecture on the STM32WLE5CCU6 microcontroller, which does not natively support true dual-bank flash. In this setup, I need to write data to a region of the internal Flash memory that is part of the same memory space from which the code is currently executing. I would like to understand how Flash write operations can be safely performed in such a scenario—specifically, how to write to a different section of the same Flash memory while code execution continues from another region within that same Flash.
Hi @st_it Team,We had observed some unknown behaviour with respect to flash.MCU => STM32U073CC.Tools => STM32Cube ProgrammerWe need to write this mentioned value @last page of flash @address = 0x0803F800.After doing multiple connect/disconnect, The mentioned value got disappeared abruptly.Please refer the below after disappeared.Note - the probability of this issue occurance is much higher.Please help us to diagnose this issue.Best regards,Shubham M.
I am currently implementing a dual-bank flash concept on the STM32WLE5CCU6 microcontroller, which features 256 KB of flash memory. I have divided the flash into two logical blocks, each of 128 KB. Both blocks include their own independent In-Application Programming (IAP) bootloader code. Additionally, each block contains identical application code, but mapped to different memory locations.In the linker script for each block, I have modified the flash and SRAM start and end addresses accordingly. I have also updated the vector table by setting the __ICFEDIT_intvec_start__ symbol to match the start of the respective flash block.The first block (Block 0 or B0) functions correctly. Upon reset, it correctly jumps to the application code located at the corresponding address.However, when executing code from the second block (Block 1 or B1), the application does not function as expected. Furthermore, upon issuing a hard reset, the system always jumps to the start address of Block 0, rat
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.