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
My STM32H745I-DISCO touch screen stopped working after a HardFault/debugger crash while running a test app generated by STM32CubeMX ("Create project from board"). The display works perfectly but touch is completely unresponsive. Steps already taken: Full chip erase + reflashed official FULL.hex (with MT25TL01G external loader) Verified option bytes (RDP=AA, BCM4 and BCM7 both enabled) Fixed reset mode from "Hardware reset" to "Software reset" ST-LINK firmware is up to date (V3J17M10) I2C4 registers show uninitialized on both cores Display works, buttons visible, but no touch response at all.
Hi I plan on using STWBC86 for a wireless charger prototype. I was looking at the datasheet for the reference designs and found that the reference schematics has missing or has hard to read values, labels, and wires. Is there a better version of the schematics that is clear and completed? If there is not, can anyone give recommendations for the highlighted parts?I have also attached the original Schematic as a PDF below so you can see the clean version as well.
Hi Team,We are planning to use an STM32 camera interface over USB using the UVC protocol in our upcoming design. We would like to understand if there are any evaluation or development boards available that can be used for initial testing.Our key requirements are as follows:Image size: up to 5 MB per captureCapture interval: one image every 30 seconds (worst case)Video streaming is not required; we only need still image capture and transferUSB-based camera interface preferredWe would like to know:Whether UVC is suitable for this type of non-streaming, low-frame-rate image transferIf anyone has implemented a simpler or similar design successfullyWhich STM32 controller models support this use caseAvailability of any development or evaluation boards for testing the camera over USBPlease share your recommendations, reference designs, or documentation links if available.Looking forward to your guidance.Regards,Sathiya
I have a question regarding an F407 wake-up error. I am using an F407ZGT and have connected the power switch to PA0 using a pull-down resistor. HAL_SuspendTick(); HAL_PWR_EnableWakeUpPin( PWR_WAKEUP_PIN1 ); __HAL_PWR_CLEAR_FLAG( PWR_FLAG_WU | PWR_FLAG_SB ); HAL_PWR_EnterSTANDBYMode(); I have been using this code successfully. However, after modifying the firmware and downloading it, or when downloading via the gang tool, the MCU fails to wake up via the wake-up input—though not always. Once this issue occurs on a board, the wake-up function permanently stops working, regardless of any operations performed. Is there any way to restore the wake-up function? Please help me!
This is in relation to post "Strange behavior with STM32G474QE pin PB4(Solved: Re: Strange behaviour with STM32G474QE pin PB4 - STMicroelectronics Community)" I'm facing the issue of PB4 going high for 27ms approx after MCU reset. My design is freezed, And this pin is connected to a relay which turns ON when this pin goes high. The relay turn on time is 7.5ms. Is there a solution in code initialization so that this pulse stays below 7.5ms. I'm attaching the waveform.
Dear ST, For the ToF sensors supported VL53L8CH or VL53L7CH is it possible to make a hardware that depends on 4 x VL53L8CH or 4 x VL53L7CH integrated to increase the number of zones from 8 X 8 to 16 X 16 ?and if it is possible what would be the limitations in both HW and SW for this system?also provide me a reference for this implementation if exists.Thank you.
Hello,I'm a migrating from openSTLinux ecosystem 5 to 6 on an existing product of ours (with a stm32mp157) and we are really focused on power consumption efficiency. The main difference between our first version and the second is that we first had TF-A + SPMIN and now we are using the OP-TEE OS.Previous :TF-A 2.4 +SPMINU-Boot 2020.10Linux 5.10Bump to :TF-A 2.10OP-TEE 4.0.0U-Boot 2023.10Linux 6.6We achieved to reach almost the same application state as we were with our version 5 except about the power consumption. We set the MPU on standby with suspend to RAM mode and we measured the consumption of the overall board and we found that our system used around 10mW more with version 6. After a lot of research, we found out the culprit which is the OP-TEE DDR driver that doesn't latch the CKOE and never disables the DDRPHYCEN bit. Indeed, in ST version of arm-trusted-firmware 2.4-stm32mp, the CKOE pin is disabled when entering the DDR Self Refresh mode and enabled again when l
Hello,I am working on a custom PCB using the STM32H757IITx. While programming the chip with an ST-LINK/V2 SET programmer via STM32CubeProgrammer, I encounter the warning::warning: “The core is locked up”:cross_mark: Mass erase / flash operation failedAs a result, the board does not operate normally.Here is the log output:Error in final launch sequence: Failed to execute MI command: load D:\XXX\XXX\XXX-v1.0\CM7\Debug\Integra-v1.0_CM7.elf Error message from debugger back end: Error finishing flash operation Failed to execute MI command: load D:\XXX\XXX\XXX-v1.0\CM7\Debug\Integra-v1.0_CM7.elf Error message from debugger back end: Error finishing flash operation Error finishing flash operation.I have attached screenshots of the error for reference.Has anyone encountered this issue or can suggest possible solutions?Thank you.
I have a self-contained widget (a rectangle of 360x60) which has a draggable mixin and a custom handleDragEvent.void WarningModal::handleDragEvent(const touchgfx::DragEvent& event) { if (!draggingEnabled || !animator) return; int16_t newX = animator->getX() + event.getDeltaX(); // Hard clamp: never allow leftward movement past the resting position if (newX < WARNING_MODAL_VISIBLE_X) newX = WARNING_MODAL_VISIBLE_X; animator->moveTo(newX, WARNING_MODAL_Y); }Basically it can only be dragged from left to rightI'm noticing that, if I try to move it up and down, I'm able to generate a wobbling movement up and down because, the widget tends to return to its WARNING_MODAL_Y due to the modeTo line.Is there a way to disable the drag for an axis to get a smooth movement right-left or up-down
Hello Max VIZZINI ,I'm using SPC58EC80E5 evaluation kit in that im working on SARADC , PB[1] i'm taking as ADC pin and connected 10k potentiometer to it.im getting continous 8192 adc value even after rotating the potentiometer , im using 12 bit ADC and checking the ADC values in CAN bus, i shared related configuration check it and please help me to solve this issue. #include "components.h"#include "saradc_lld.h"#include "saradc_lld_cfg.h"#include "can_lld.h"#include "can_lld_cfg.h"#include "osal.h"#define ADC_CHANNEL 66Ustatic uint16_t adc_value;CANTxFrame txmsg;int main(void){componentsInit();/* Start ADC */saradc_lld_start(&SARADC12D1, &saradc_config_saradcconf);/* Start CAN */can_lld_start(&CAND2, &can_config_mcanconf);/* CAN frame setup */txmsg.IDE = CAN_ID_STD;txmsg.SID = 0x123;txmsg.RTR = 0;txmsg.DLC = 2;while (1){/* Start ADC conversion */saradc_lld_start_conversion(&SARADC12D1);/* Wait for conversion */while (SARADC12D1.saradc->ICDR[ADC_C
The STM32 toolchain based on gcc 13.3 already supports a lot of C23 features, e.g. constexpr. This is really awesome.But the current version of CubeIDE seems not to be able yet to parse these new features, so syntax checking / highlighting / code linking breaks.Is there any simple workaround for this? Or is there information available, whether the next version of CubeIDE will update this?
Hi I have a project with STM32F446RET6 which has custom bootloader and application in user defined location. This project does UART Bootloader for firmware upgrade - issue faced is if the device loses power while in between the firmware upgrade then the device is neither in UART bootloader/DFU mode nor has a valid firmware. The solution which i want to implement is keeping two image of the application in two slot A and B. Normal working in Slot A and backup in Slot B. Firmware upgrade happens in Slot A and if fails copy the firmware from Slot B otherwise copy Slot A to Slot B. can anyone provide a simple logic which can be implemented to check if the firmware upgrade is completed and successful in SlotA. I would not like to add CRC check.
In LSM6DSV16X DS13510-Rev 4 Page 8, Table lists sensor fusion performance: Question 1: are these values guaranteed over temperature and all angles, or at a particular angle and at room temperature?Question 2: without a magnetometer or GNSS heading input, what is meant by heading/yaw accuracy? Is it a drift value (over 5 minutes) from whatever value it is given at the beginning of 5 minutes?Thank you.
Hi,I am currently working on a feasibility project using the X-NUCLEO-67W61M1 and NUCLEO-U575ZI-Q.The sample code I am using is ST67W6X_FOTA.The FOTA functionality is working properly. However, during the initial connection phase, there is about a 50% chance of encountering Wi-Fi connection-related errors. The errors I have observed include:"Wi-Fi connect timeouted""Wi-Fi connect in error""Failed to initialize the DTIM"Whenever these issues occur, the only way to recover is by resetting the MCU and restarting the process.Are there any recommended methods or best practices to resolve these issues?
Many years ago, at ANU in third year physics, the professor provided an object and said explain and check it as a project. Let us assume that I have a SENSOR TILE.BOX pro and I follow my training and check the output of the MEMS Studio. The first step was to provide the CLI_Example amended so that it provided the files in the correct location for our downstream software. I would not use your MEMs software, it is just to kludgy. But I wanted to confirm my program and understand your data.The next step is to use MEMS Studio to get the output file processed log. The third step is to write a simple C# program to take the .dat files apart and complete necessary analysis and upload the needed output to the MYSQL cloud storage. {"c_type": 2,"data_ext": ".dat","data_fmt": "HSD_2.0.0","description": "","end_time": "2026-04-02T17:48:41.013Z","interface": 1,"name": "SensorTile.Box_PRO_acquisition","schema_version": "2.0.0","start_time": "2026-04-02T17:48:30.000Z","tags
I think this is diode. I have search on all internet but cant find correct. :) Thanks Best Regards Fredrik
Hello, everyone,I am currently working on a project using STM32WB07CC. During the design of low power consumption, I found that when waking up the MCU from the deepstop mode through the wakeup pin, it is impossible to obtain the wakeup source by accessing PWRC->SR1&SR3. However, when waking up through the RTC, it is possible to obtain the source. After referring to the demo provided by ST, I also discovered the same issue.I hope everyone can help me solve this problem.thank.
Hi all, I've noticed that a DHCP client can not get an IP address from the server if both mDNS server and DHCP client are enabled. The reason seems to be in ST Ethernet driver (nx_stm32_eth_driver.c): static UINT _nx_driver_hardware_initialize(NX_IP_DRIVER *driver_req_ptr) { ... FilterConfig.BroadcastFilter = ENABLE; ... } static UINT _nx_driver_hardware_multicast_join(NX_IP_DRIVER *driver_req_ptr) { /* Increase the multicast count. */ nx_driver_information.nx_driver_information_multicast_count++; /* Enable multicast frame reception. */ FilterConfig.PassAllMulticast = ENABLE; HAL_ETH_SetMACFilterConfig(&eth_handle, &FilterConfig); /* Return success. */ return(NX_SUCCESS); } In _nx_driver_hardware_initialize() FilterConfig is just prepared, there is no HAL_ETH_SetMACFilterConfig() call. That's why DHCP works OK if mDNS is not used. If mDNS is active, it calls _nx_driver_hardware_multicast_join() and applies a prepared 
I am using the STM32H733 controller along with the NetXDuo networking stack. The issue started after updating the HAL drivers in my project from version v1.11.0 to v1.16.0 (released on February 24, 2026).After this update, I observed that when the device boots up and no network activity occurs for a certain period (for example, no ping requests are sent to the device or device sending any UDP packet), the Ethernet connection is eventually lost permanently. Once this happens, the device becomes unreachable over Ethernet, and neither a soft reset nor a hard reset restores the connection.However, if the device receives a ping immediately after booting, or if it sends a UDP packet shortly after startup from the device, the Ethernet connection remains stable. In this case, normal operation continues without any issues until the device is reset again and no network activity is observed for a certain period as well.This problem only appeared after updating the HAL drivers to version v1.16.0 a
Hi,recently in STM32CubeProgrammer was introduced the Serial Numbering feature, which is much appreciated.However, it's limiting because the serial number is assigned manually, setting a starting value that is progressively incremented.In a production site with multiple test stations, it becomes difficult to synchronize the various stations on the SN to be used.Hence my request: it would be very useful if the Serial Numbering section were integrated with a "Script" field, in which the user can enter the filepath of a custom "C-style" script (or in the programming language of ST choice) whose return value is the SN to be programmed. The script (customizable by us) will provide the correct return value, based on the logic the end company wishes to use to assign the SN to its devices (e.g., databases, *.csv, etc.). Hoping for a future update, I look forward to hearing from you.Best regards,Matteo
Hello,There seems to be an issue with the I2C addresses listed in the MB1854 (B-CAMS-IMX) documentation and schematics (B01/B02).The documents show:IMU: 0xD4 / 0xD5ToF: 0x52However, these appear to be 8-bit addresses. The correct 7-bit I2C addresses should be:ToF (VL53L5CX): 0x29IMU (ISM330DLC): 0x6A / 0x6BThis can cause confusion when using standard I2C tools or drivers.Could you please clarify or update the documentation to specify the address format (7-bit vs 8-bit)?Thanks.
Hi everyone, In order to help our developers understand how their work is used and what to do in order to improve model zoo, we kindly ask you to look at this survey about ST Model Zoo Services. Link of the survey: https://docs.google.com/forms/d/e/1FAIpQLSeifejB0Ir6pJFlYHtqaEdOuIz1G3vjUZi3hlyNBygWIxJGCw/viewform?usp=dialog Your feedback is extremely valuable and will help us understand your needs, improve existing models and tools, and guide future developments. This survey should only take a few minutes, and your responses will remain confidential and used solely to enhance the STM32 AI Model Zoo experience. Thank you for your time, Have a good day!
Hi, I need to use a 5V external clock for an stm32g473. The datasheet in table 39. High-speed external user clock characteristics says Vhsel is max Vdd, but Table 12. STM32G473xB/xC/xE pin definition says PF0 / OSC_IN is FT_a (five volt tolerant). Is it safe to use an external 5V clock ? Thx,
Ok, this is perhaps esoteric, so maybe there is some research out there. I am looking at STM32U3 or STM32C5, but the problem applies to pretty much all CM33 based ST MCUs. The bus matrix implies a fast multiplexor for GPDMA (and SDMMC) to SRAM1. So unless dealing with burst transfers to SRAM (yes, SDMMC does that, and the GPDMA channels with the 32 byte FIFO could do that if the transfer is a multiple of 4 bytes), this fast multiplexor seems to save 1 clock reducing a beat to 2 clocks (if somebody has details for AHB vs. APB, that would be interesting). So to minimize latency and maximize bandwidth, DMA buffers (.dma section) should go into SRAM1. So if DMA goes into SRAM1, then should not all the stacks go into SRAM2 ? I would assume burst DMA to/from SRAM1 would introduce some additional latency, especially in the way for ISR stacking / unstacking. Is this just overthinking this, or is that measurable ? Now some U3 parts have SRAM3. One thought is to
Hello, I installed AutoDevKit Studio today and trying to create the AEK-COM-10BASET project from it. Basically there is no option to create / start the AEK-COM-10BASET from AutoDevKit. Also I tried to run Help > Install New Software > Work with http://autodevkit.spc5studio.com/ > Choose AEK-COM-10BASET > install the module. Even I tried couple of times it always fails due to unknown reason. After Fetching children step, the SW says "Cannot perform operation.", the SW tries to install some modules, and finally nothing is improved. Still I cannot start any AEK-COM-10BASET project. If I try to install the SW modules for AEK-COM-10BASET, it says below error message. And stucks here, I cannot move further. No AEK-COM-10BASET related menu items / projects are found, I cannot start. I want to get the AEK-COM-10BASET project source code, change something and do some of my own tests. Any help / comment are appreciate
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.