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
Hi, I am experiencing a bug in the latest version of the Extension for VS Code. As soon as I open the extension I receive this message:"Unable to contact the STM32Cube registry, verify your Internet connection..."If I run "cube bundle list-online" in the terminal I get this:cube bundle list-online Download attempt 2 out of 5 for https://developer.st.com/bundles/BundleRepositoryIndex.json ... Download attempt 3 out of 5 for https://developer.st.com/bundles/BundleRepositoryIndex.json ... Download attempt 4 out of 5 for https://developer.st.com/bundles/BundleRepositoryIndex.json ... Download attempt 5 out of 5 for https://developer.st.com/bundles/BundleRepositoryIndex.json ... Failed to list available online bundles: Failed to download bundle repository index: Failed to send request: error sending request for url (https://developer.st.com/bundles/BundleRepositoryIndex.json)But if I install the STM32Cube Core - Version 1.1.0, everything works fine:cube bundle list-online Name : P
Hi ST, This is just to let you know that STM32CubeMX version 6.17.0 does not generate correct cmake file for the STM32WL33 and this error results in the microntroller not starting up correctly but hangs in function SystemInit() in system_stm32wl3x.c. The problems is that the wrong is -mcpu is generated. The problem can be found in the file -> path/to/dir/cmake/gcc-arm-none-eabi.cmake # MCU specific flags set(TARGET_FLAGS "-mcpu=cortex-m4 ") // wrong for the WL33 # MCU specific flags set(TARGET_FLAGS "-mcpu=cortex-m0plus ") // correct for the WL33 Ola
Hi everyone,I’m currently working with STM32 Secure Boot and Secure Firmware Update (SBSFU) and integrating it with my custom application. I’m trying to design the project in a modular and scalable way for long-term use, and I would really appreciate some guidance from those who have worked with SBSFU in production. Current ScenarioMCU: STM32 (Cortex-M series)Bootloader: SBSFUApplication: Custom firmware using HAL, middleware, and CubeMX-generated codeDevelopment tool: STM32CubeIDE Challenges I’m Facing1. Shared Drivers & MiddlewareBoth my bootloader and application require:HAL DriversSome middleware components What is the best way to manage duplication vs sharing?Should bootloader and application maintain completely separate copies of Drivers/Middleware?Is there any recommended way to keep them in sync without tight coupling? 2. Impact of .ioc ChangesI use CubeMX via .ioc for peripheral configuration.If I:Add a new peripheralModify clock or pin configurationHow
Hi, I tried exporting the IBIS model from ST website. On importing model to SI tool I can see that there is no model assigned to DSI lines. It is showing NC. Can you share the IBIS model with MIPI drivers in it. or share some IBIS model which I can use for my simulation of MIPI line interface
Good Evening,I am a student doing a capstone project, and I have been having a massive headache with the STUSB4500 PD negotiator. I am using it to pull 15V at 3A from a power brick so I may power a handheld device downstream. We utilized a recommended layout from the datasheet itself so that we may program it ourselves. Attached below.The good news is, it can sustain loads and power our project... but the bad news is these chips have up and died about as randomly as a carnival prize goldfish, attached are pictures of my layout and schematic for this section of the board. Apologies for any amateurish mistakes on schematic labelling and layouts. The trouble is that we can program the chip, and it stays stable for a long while. But out of nowhere, three times now, we will go to plug the board in one day, and the chip will be dead. I believe the chip to be dead since it no longer tries to negotiate the preset 15V like we wanted, the 2V7 and 1V2 lines are seemingly dead, and
Hi Team,I have successfully integrated and run SBSFU with my custom application, and it is working as expected.Currently, I am transferring the .sfb file .via USB to the DWL_SLOT. Once the transfer is complete, I trigger a reset using NVIC_SystemReset(), and the process works fine.I have a few questions regarding the .sfb header. It contains fields such as:FW Tag (SHA-256)Header SignatureFirmware Size (FwSize), etc.My questions are:Using FW Tag (SHA-256) for validationIs it possible to use the FW Tag (SHA-256) to validate the received image in the DWL_SLOT before performing the reset?If yes, could you please guide me on the correct process to implement this?Current CRC-based approachAt present, I am calculating a CRC for the .sfb file after it is generated by the Python script. I then transfer both:The .sfb fileA separate CRC fileOn the firmware side, I recompute the CRC from the received data and compare it with the provided value. If it matches, I proceed with
Hello I'm trying to wire up the STM32G0B1CET6N and I don't know how to use the VDDIO2 pin. What is it for and how should I wire it?
Hello!I have a custom board with STM32F746VGT6 MCU, LAN8742A Eth PHY and Ethernet socket. I would like to implement MQTT communication in my project with my board as a client. I am familiar with LwIP and FreeRTOS and use both of these libraries in my current program.I already tried using WolfSSL and WolfMQTT (and succeeded to some degree), but it wasn't very pleasant experience and I had to manually copy and change many files to make it work. I want to rewrite the MQTT implementation as the current one doesn't work very efficiently, but I don't really know where to start. I'm grateful for all suggestions!
Hello,I am trying to port the official BLE_Ota example from STM32CubeWB (WB55 project) to an STM32WB30 device, but I am facing multiple compilation issues after importing the project into STM32CubeIDE.After configuring STM32_WPAN and generating the project for STM32WB30, I get many errors such as:RTC_HandleTypeDef unknown typeIPCC undeclaredFLASH_ECCR_* undeclaredSCB_* undeclaredLL_* functions not declaredHAL and LL drivers missing or inconsistentIt seems like the project is not correctly recognizing the STM32WB30 device definition, and many peripherals (RTC, IPCC, FLASH, RCC) are not properly included or enabled.I already tried:Adding STM32WB30xx define in the compiler preprocessorEnabling STM32_WPAN middleware (BLE stack full mode)Checking stm32wbxx_hal_conf.hHowever, the issues persist and the project still behaves as if it is partially configured for STM32WB55.My questions are:Is the BLE_Ota example officially supported for STM32WB30, or only for WB55?Are there any specific limitat
I want to vary the duty cycle of two adjacent DAC values of an STM32G473. I am using DAC1 channel1 and channel2 for the output. I want to load DAC1s DHR12Rx registers via DMA when TIM3 hits output compare values. I set up a memory to peripheral transfer for each TIM3 channel and set the CMAR and CPAR registers to the memory location of the DAC values and the peripheral addresses of the DAC DHR12Rx registers. I have been able to make this configuration work for making the TIM3 OC events trigger loading of TIM20's CCR registers from memory, but so far, the DMA transfer won't load the DHCR12Rx registers for the DACs. Are there additional configuration settings to make this work? CubeIDE\HAL has configuration options for initializing the DAC in DMA mode, but I need multiple triggers the make the duty cycling work.
HiI've been trying to understand what level of support is available for the H573 security features in Zephyr RTOS with mcuboot but either can't find any information or no one replies to my comments.I have a Zephyr sysbuild build working where mcuboot starts, validates the singed application in slot0 and proceeds tp boot from slot0.What I can't find or confirm is if that security features of the STM32H573 are being used or not. There doesn't seem to be any configuration relating to enabling or disabling the features.Are the security features enabled in Zephyr for the H573?I'm using the latest 4.2 version of Zephyr.CheersDave
I have an old Ubuntu 18.04 system which allows STM32CubeIDE to run, but the STM32_Programmer failed because libm.so and libc.so were wrong. I found glibc-2.30 and copied the libraries into the same directory as the STM32_Programmer lib. Now I just get a seg fault, even when trying to just get the version number:bin/STM32_Programmer_CLI --version Segmentation fault (core dumped)Is there any way to figure out what might be the problem?
I’m currently working on implementing and testing Flash ECC on my controller. According to the datasheet, the device supports ECC, and I can see that it is managed through the FLASH_ECCR register. However, I’m facing some difficulty verifying whether ECC is functioning correctly. Specifically: I am unable to find any ECC-related flags in the FLASH status register. I’m not sure how to intentionally generate an ECC error to validate my implementation (e.g., to confirm that error handling via NMI/interrupt is working as expected). Could anyone please guide me on how to reliably trigger a Flash ECC error for testing purposes on this controller? Any suggestions, references, or example approaches would be really helpful.
Dear Community, dear STMicro, I'm trying to encrypt data on an STM32WL55JC device using the STM32CubeExpansion_Crypto_V4.5.0 library and then using Python on the PC to decrypt it again.I've taken the example code for RSA encryption from the librarySTM32CubeExpansion_Crypto_V4.5.0/Projects/NUCLEO-WL55JC/Applications/RSA/PKCS1v2.2_EncryptDecryptand adapted it.I've created an RSA 2048 bit key on my PC using this code:private_key = rsa.generate_private_key( public_exponent=65537, key_size=2048) pem = public_key.public_numbers() public_exponent = ["0x%02s" % e[i:i+2] for i in range(0, len(e), 2)] n = "%X" % pem.n n = "0" + n if len(n) % 2 == 1 else n modulus = ["0x%02s" % n[i:i+2] for i in range(0, len(n), 2)] f = open("pub.c", "w") f.write("public_exponent[] = {%s}\n" % ", ".join("%s" % s for s in public_exponent)) f.write("modulus[] = {%s}" % ", ".join("%s" % s for s in modulus)) f.close() From this code I get something like thispublic_exponent[] = {0x01, 0x00, 0x01} modulus[]
I'm working with the STM32G4 series and using the backup registers to store time data that persists across power cycles. I have a question about VBAT brownout behavior that I cannot find explicitly documented in RM0440 or the datasheet.Background:Both RTC and backup registers are in the VBAT power domainI'm using a signature in backup registers to detect VBAT lossThe signature check works fine for complete power lossMy Question:Is it possible for VBAT voltage to drop to a level where:The RTC stops functioningBUT the backup registers still retain their contents?In this scenario, my signature check would pass (registers retained), but the time would be invalid (RTC stopped counting).Do the RTC and backup registers have the same minimum VBAT voltage threshold, or can backup registers survive at a lower voltage than the RTC requires?If VBAT brownout can cause RTC failure while backup registers persist, does STM32G4 have any hardware mechanism that automatically clears backup registers when
STM32CubeIDE for Visual Studio Code v3.8.0 serverRtos fails to recognize symbolFileName when attaching to running target. This causes the rtos viewer to not work properly.None working setup: "type": "stlinkgdbtarget", "request": "launch", "name": "CM7 master STM32Cube: Launch ST-Link GDB Server", "origin": "snippet", "cwd": "${workspaceFolder}/", "deviceName": "STM32H747BIT6", "deviceCore": "Cortex-M7", "serverReset": "None", "imagesAndSymbols": [ { //"imageFileName": "${workspaceFolder}/executable.elf", "symbolFileName": "${workspaceFolder}/executable.elf", } ], "serverRtos": { "enabled": true, "port": "60000", "driver": "freertos", "driverPort": "ARM_CM7" },Debug console output:RTOS proxy: STMicroelectronics RTOS Proxy. Version 0.18.1 Copyright (c) 2026, STMicroelectronics. All rights reserved. Failed generate debug info Loading RTOS driver... FreeRTOS Connecting to GDB server 127.0.0.1 on port 61234 ... RTOS Proxy: readelf: Error: 'undefined': No such file
Hello,I'm designing a 2 layer PCB using STM32WL for LoRa operations at 433MHz and need a review of my RF layout. The board is JLCPCB 2 layer standard FR4, 1.6mm thick 1.46mm core, 1oz copper, 50Ω microstrip at ~2.8mm width, about 38mm long. I have placeholder caps/inductor to be populated after board fabrication. I am seeking expert opinion for:Trace width & impedance - does 2.8mm yield 50ohm given FR4, 1oz copper, and 1.46mm dielectric height?Critical length - Are there implications for 38mm length on transmission-line behavior?Taper - Taper starts 5mm in. Are there optimal lengths for tapers? Should I taper for shunt pads?Stitching vias - Recommendations for via spacing for this trace width? Every 5-8mm?Test points - Recommendations for RF test points without effecting impedance?Any other best practices or tips would be helpful. I thank you for any guidance.Best, John
I am trying to integrate Crypto lib to NUCLEOF303RE Board, Any guide or any suggestions would help
Hi everyone,I’m working on a 4-layer PCB design using the STM32WL (based on the Nucleo WL55JC reference design).For the RF section, I followed the same layout approach as the Nucleo board, including the layer stack-up and RF trace widths.The only difference in my design is that I have some GPIO signals routed close to the RF section. These signals are routed on the 3rd layer, while I am still maintaining solid ground planes on the 2nd and 3rd layers underneath the RF section.I would like to clarify:Is it acceptable to route non-RF signals on the 3rd layer near the RF section if solid ground planes are maintained?Are there any risks (e.g., noise coupling or RF performance degradation) with this approach?Additionally, if I modify the layer stack-up:What parameters need to be adjusted (e.g., RF trace width, impedance matching, ground reference)?Are there any recommended guidelines for maintaining RF performance when changing the stack-up?Any guidance or best practices would be greatly app
Hallo,is it possible to detect in my code whether it was just loaded and started under debugger? The code should behave deifferant as usual because flash loader writes into RAM and .noinit section is modified because of this.I have already checked RSR register. It looks the same as after software reset: CPURSTF, PINRSTF and SFTRSTF are high.Moreover RSR gegister is independent from debug configuration: Debugger / Reset behaviour. I use ST-LINK v3 with ST-LINK GDB server.
First and foremost, they aren't perfect. The code has tons of work left. But it took me SO long to get ANY i2s audio data from my guitar to my computer, the major hurdle being mostly the lack of USB Microphone drivers provided by the stack.Now that I've made them, and I am pretty sure it's the other parts of the code that are at fault for the clock drift, I am sharing it in hopes that it will help someone else who was in the same boat I was.This is designed for the STM32 to be the SLAVE to a CODEC with Full-Duplex mode support (4-5 wire bidirectional I2S Standard, 16 bit 48k. I know, nothing to call home about, but it is the simplest to get working) Try your luck with your specific CODEC, maybe you can configure things differently and get it working right. On the PCM3060, this was the best I could manage.I have no field experience, no college degree, I am just persistent. If I can do it, you can too. Don't give up. I know I haven't, this is just the start.Note: if you're just picking u
Hi everyone, I saw that ST give a C driver for STUSB4500 and even have a binary to test the 4531 on some boards.Can ST provide a C library for this chip ? Thanks.
Hi all, Quick question for those working with STM32 embedded devices: If you had a tool that could analyze logs or telemetry using AI — would you feel comfortable sending that data externally? Or is data sensitivity (customer data, device behavior, industrial info) a hard blocker? I’m exploring ways to preprocess/anonymize this data before it leaves the device or server. Curious where people stand on this — is this a real need or overengineering?
I wanted to try out the new STMCubeMX2 with one of the suitable STM32C5 MCU and I get this errorNot sure what does this mean, is there any certificate needed to use STMCubeMX2 ?
Dear ST Support Team,I am writing to express my interest in the VD55H1 iToF sensor for an upcoming project.Currently, we are preparing for development using the i.MX8MP platform running on a Linux Kernel. Upon reviewing the technical specifications, I noted that the VD55H1 utilizes a MIPI-CSI data interface.Could you please confirm if ST provides an official Linux driver for the VD55H1?As driver availability is a critical factor for our initial integration and development phase, we would appreciate any information regarding existing software support or a roadmap for Linux integration.Thank you for your time and assistance.Best regards,seobi
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.