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
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 CMake
Our current product uses the STM32H533 microcontroller and password based Debug Authentication. We have a need to generate a large number of different DA passwords and corresponding OB Keys provisioning data. This is possible by creating our own tool to generate OB Keys .xml files and passing those into the STM32TrustedPackageCreator_CLI.exe tool, but it would be nice to cut out the .xml files and need to use the Trusted Package Creator tool. Given that the input .xml file contains a 'hash' tag and that output .obk file contains 512 bits of seemingly random data, I suspect this is a SHA-512 of the password, however I cannot manually re-create the same hash. I've attempted padding the password to various different lengths, with various different values, additionally including the additional bytes that are included in the created 'password.bin' file that accompanies the .obk file. What process/data goes into creating the contents of the .obk file? Is
stm32cube-ide-clangd.arguments are written to settings.json on every startup/setup with .exe or no extension depending on platform. settings.json contains important settings we want to share across collaborators but now it's getting constantly modified between platforms.
I would like to ask how NanoEdge AI embeds multiple library models in one code, for example: I compiled a project called "test" in the Keil compiler and I want to create a project similar to an official demo video. Under the same project, there is both an anomaly detection (AD) library for learning and a multi classification (N-Classfial) library for classifying abnormal situations. Now, I have trained two models for these two libraries, but the problem is that I don't know how to embed these two models into the same project for use. I am using the v5.0.2 version of NanoEdge AI STUDIO. Can you help me solve this problem? Thank you.
Folks,I have FreeRTOS running on an H563, trust zone not used. Created the basic setup from an ioc. I have an ocassional task starvation issue and want to double check there's no stack overflow (unlikely but must check).If I set configCHECK_FOR_STACK_OVERFLOW to 1 in FreeRTOS.hIn cmsis_os2.c, vApplicationStackOverflowHook is still greyed out and hovering over configCHECK_FOR_STACK_OVERFLOW claims it's set to 0. control clicking on it takes me to the defintion where it is set to 1. Anyone know what is going on here please? And why is it set in FreeRTOS.h, not FreeRTOSConfig.h? Thanks
Dear all, With the new STM32Cube AI Studio tool, I am getting the following errors (see attached log file). I am using it with the kit STM32N6570-DK. I tried the same model as in the tutorial (https://www.youtube.com/watch?v=3zyIpB5o9zQ). I am getting the same type of error with other models as well. Thank you for your help. I am looking forward to being able to use this new tool. ------------------------------------------------------------------------------------------------------------------------------------------------- C:/Users/papam/.stm32cubeaistudio/workspace/demo_face_detection/.ai/run/run-1/Middlewares/ST/AI/Validation/Src/ai_wrapper_ATON.c:386:10: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 386 | while (aton_buf = npu_get_input_buffers_info(instance, nn_info->n_inputs))| ^~~~~~~~ C:/Users/papam/.stm32cubeaistudio/workspace/demo_face_detection/.ai/run/run-1/Middlewares/ST/AI/Validation/Src/ai_wrapper
There's a bug in STM32N6 HAL DCMIPP driver function DCMIPP_SetConfig.It only sets capture mode bits for PIPE0 to PIPE2, but does not clear them: /* Set the capture mode */ hdcmipp->Instance->P0FCTCR |= CaptureMode;CaptureMode options are:#define DCMIPP_MODE_CONTINUOUS 0U /*!< DCMIPP continuous mode (preview) */ #define DCMIPP_MODE_SNAPSHOT DCMIPP_P0FCTCR_CPTMODE /*!< DCMIPP snapshot mode */As a result, after having DCMIPP in snapshot mode it is not possible to re-configure DCMIPP into continuous mode using HAL.Workaround is to manually clear CPTMODE bit.
Hi!I am making a custom external loader for my custom STM32F469 board equipped with a W25Q128 flash mermory on QuadSPI.To do so I am using vscode and a CMake project generated via CubeMX.I am able to generate and run programs on my STM32F469 (embedded flash), I can write, read and reset the external flash even using the memory mapped mode (verified through the debugger).Now I want to build an external loader based on this project. I copied the files from the STM external loader Github (contrib branch), updated them to match the W25Q128 configuration, and added an executable to my CMakeLists file to compile (and most importantly link) the external loader.My first problem is that the linker complains that there is no "main" function. I searched around for what could be the entry point of en external loader but I can't find anything. So I created a new main function (different from my application) with only an infinite loop (for the record I also made a return 0 main function which l
I am using a STM32H747I DISCO board as the target to evaluate the Audio Weaver Designer from DSP Concepts. In order to connect with Audio Weaver, the STM32747I DISCO board needs to be programmed with the Audio Weaver BSP for this board.I need to program my board to connect up with Audio Weaver. I need to get either the binary or the BSP source (or ideally both). I cannot find this anywhere online and could not find it on DSP Concepts website anywhere. From what I can tell each target partner maintains the BSP, so does ST have this?
Due to the high cost of RAM. I wonder if ST have plans or other information about which 4GB RAM vendors fits MP25x products?I know that ST have information about other RAM vendors on their wiki. Only one 4GB vendor is mention there.I bought the 4GB RAM MT53E1G32D2FW-046 WT:C (single rank) from here when it cost 20 USD.https://www.aliexpress.com/item/1005009146059053.html but its seems to only having the DDR density to 8bits (2 GB). Perhaps it was only a 2GB or MT53E1G32D2FW-046 WT:B (dual rank)I'm still looking for other RAM vendors that can offer 4GB solutions for the MP25x. Question:Can ST write a criteria what a RAM memory need to have to fit MP25x? Do the RAM need to follow a specific RAM standard? What do I need to know to know if the RAM memory fits the MP25x?
Hi all,While implementation of CanTp, I am getting some errors regarding undefined reference which are shown in the snippet attached. I debugged completely but I am unable to find from where and for what these errors are coming.It would be more helpful if I get some support regarding this issue. Updating MediaThanks,Shiva Shankar.
Hello ST Community,I am using TSD HD Gen4-STM32-43CT-01 display module which has STM32H7S7I8T6 MCU.I am facing an issue where I am unable to connect or disconnect the debugger using MB1440C, while the same debugger works perfectly with other TSD HD Gen4 displays.Debugger setupDebugger: MB1440CInterface: SWDConnections:SWDIO → JTMSSWCLK → JCLKGND → GNDThis setup was working earlier on the same board.What changedThe last firmware flashed was a boot-level application intended to write custom data into external QSPI flash:External Flash: GD25Q127CS (128 Mbit)After flashing this boot code:The MCU is no longer connectable via SWDST-LINK / MB1440C cannot attachPower cycling does not helpObservationsSame MB1440C debugger + same CubeIDE works fine with other TSD HD displaysIssue is specific to this board after boot code flashingI suspect:SWD pins may be reconfigured as GPIOOption Bytes may have been modifiedBoot code may be disabling debug or putting MCU in low-power/reset loopExternal QS
Hello, I am using and stm32mp157c-odyssey SoM with a custom made motherboard, However I am having issues getting the usb port function properly.I am using otg fs. It fails the enumeration in the pc side and gets stuck at L1 sometimes and other errors. I still don't know if it's a hardware or software related issues. I am configuring it as device only. below I will include picture of the usb schematic, the logs, as well as the device tree node. Note : We are not using otg_fs_id it's not connected to anythhing , and vbus comes directly from the PC host to the OTG_vbus pin so no vbus gpio.Using yocto image 6.1 mickledore.&usbotg_hs {compatible = "st,stm32mp15-fsotg", "snps,dwc2";status = "okay";pinctrl-names = "default";pinctrl-0 = <&usbotg_fs_dp_dm_pins_a>;dr_mode = "peripheral";};
I am developing in C++ using STM32CubeIDE on an STM32L476.I’m trying to use Cppcheck to verify the quality of my code, but the analysis fails with errors and I can’t get it to run successfully.I have specified all the defines and include directories that are set in CubeIDE.When the CPU is specified, certain internally determined macros and include directories are required, and it appears the errors are occurring because those are missing.I am using the following options.CPU "Cortex-M4(0)"Core "0"Floating-point unit "FPv4-SP-D16"Floating-point ABI "Hardware implementation (mfloat-abi=hard)"Instruction set "Thumb2"Runtime library "Reduced C, reduced C++ (--specs=nano.specs)"Enable "Use float with printf from newlib-nano (-u _printf_float")Toolchain is ""GNU Tools for STM32(13.3rel1)I am using CubeIDE on Windows.The installation directory is left at its default (C:\ST). Which definitions and include directories should I add?
Chip model: STM32H723VGTxBoth the RX and TX buffers are allocated in the D2 domain.1.CubMx settings are correct.2.HAL_UART_Transmit_DMA runs normally on the first run.However, after running HAL_UART_AbortReceive, HAL_UART_Transmit_DMA fails.Tracing the HAL_UART_Transmit_DMA function:The huart->gState value is always 0x33.
Hi everyone,I am encountering an issue while trying to flash OpenSTDroid onto my STM32MP257F-DK board.I downloaded the Starter Package from the official website and used STM32CubeProgrammer for the installation. However, the flashing process consistently fails during the final stages.Could anyone provide the correct flashing procedure or suggest what might be causing this error? Below are the details of my setup:Starter Package Source: STM32MP2DroidSta | Product - STMicroelectronicsSTM32CubeProgrammer Error Screenshot: Thank you in advance for your help!
In the eDesignSuite UHF RFID Link Budget tool, it appears that τ_RX (matching losses from reader to antenna) is not being included in the calculation for P_receive:Note the values I highlighted. According to the arrows in the diagram, the P_receive should be: P_receive = -31.7dBm - 51.7dB + 6 dBi - 3dB = -80.4dBmBut the power shown in the tool is -77.3dBm, off by about 3dB.Is this a bug in the software, or am I missing something here? I just wanted to make sure I wasn't doing something wrong.
I've been trying to get the Virtual_COM_Port app running on the combination of X-NUCLEO-LIV4A1A and NUCLEO-U575ZI-Q board and the best I can get is where the app will successfully output the first second's group of NMEA messages to the PC running a terminal emulator program and then it stops. After it stops, the actual LIV4 module on daughtercard cotinues to run as you can see the RED LED blink pattern change.This happens in all three cases where I:Try running the pre-compiled build of Virtual_COM_PORT .bin file for the U575XI baord under the repository folder.Build the example project under STM32CubeMX, code generate it for STM32CubeIDE, build it and load it to the U575ZI board and run it (either in run or debug mode).NOTE: In this case, I do get one compile warning where I complains about a missing .c file in the Src folder (worked around this by finding it in a different folder, copying and build).Follow the steps in the GNSS1 FW getting started guide and manually setup the pr
I am trying to build a fresh project using STM32CUBEMX to run STM32H750B-DK -FMC-QSPI-LTDCProject is sucessfully build and all the respected files are generated, Now I copy the Linker file from the existing project(Touchgfx Sample project for STM32H750B-DK which is running fine) But after the modification I am getting ExtMem/bootloader.o is not compiled even if I have added the files in the respective directry. arm-none-eabi-gcc "../Core/Src/syscalls.c" -mcpu=cortex-m7 -std=gnu11 -g3 -DDEBUG -DUSE_PWR_LDO_SUPPLY -DUSE_HAL_DRIVER -DSTM32H750xx -c -I../Core/Inc -I../LIBJPEG/App -I../LIBJPEG/Target -I../TouchGFX/App -I../TouchGFX/target/generated -I../TouchGFX/target -I../Drivers/STM32H7xx_HAL_Driver/Inc -I../Drivers/STM32H7xx_HAL_Driver/Inc/Legacy -I../Utilities/JPEG -I../Middlewares/Third_Party/FreeRTOS/Source/include -I../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2 -I../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -I../Middlewares/Third_Party/LibJPE
c_cpp_properties is constantly being modified with additional compiler commands configurations: { "configurations": [ { "name": "STM32_CM7", "compileCommands": "${workspaceFolder}/CM7/build/compile_commands.json" }, { "name": "STM32_CM4", "compileCommands": "${workspaceFolder}/CM4/build/compile_commands.json" }, { "name": "STM32_CM4", "compileCommands": "${workspaceFolder}/CM4/build/compile_commands.json" }, { "name": "STM32_CM7", "compileCommands": "${workspaceFolder}/CM7/build/compile_commands.json" }, { "name": "STM32_CM7", "compileCommands": "${workspaceFolder}/CM7/build/compile_commands.json" } ], "version": 4 }
Dear altruist, I need urgent help. Can I apply hardware-based external triggering in the VL53L8CX sensor by STM32 Nucleo F401RE? Will the sensor work for external triggering? Thank you
I have been working with both the Teseo-LIV3F and Teseo-LIV4F GNSS Modules. The Liv3 software datasheet contains all of the information I needed to set up that module. The Teseo LIV4 software datasheet is much shorter and seems to be missing some of the content that is in the Liv3 datasheet. Some of the settings such as the FIX RATE, are documented in the LIV3 datasheet, and work the same on the LIV4. But some of the features such as the CPU statistics message, or setting the CPU FREQ, are documented in the LIV3 and work for the LIV3, but do not appear to work the same for the LIV4. I also noticed that the LIV4 has many fields marked as reserved, which the LIV3 has details for and options to enable. Are all of these reserved fields, functions that are not available on the LIV4? For example trying to turn on the $PSTMCPU message on LIV4 does not work, but that field is also marked as reserved. I also wanted to ask about the constellation combos. We have been keeping it at the
I am trying to build a project using STM32CUBEMX 6.16.0 and 6.16.1 but the ioc file doesn't export the full supporting header file for the touchgfx.
Hi. It looks like the toolchain cannot cope with more than one GRU layer. There is an error, and we cannot resolve it in this application. Please send your log by copying and pasting it to share it with edge.ai@st.com and attach your model. Generate ProjectCopying previous project files from C:\Users\micha\Documents\Azimuth\ARM\STMicro\STM32CubeAI\workspace\soc_gru\.ai\run\run-3 to C:\Users\micha\Documents\Azimuth\ARM\STMicro\STM32CubeAI\workspace\soc_gru\.ai\run\run-3\.ai\generate\backupCalculating memory footprint...Run failed: Error: analyze error: NOT IMPLEMENTED: Slice on batch dimension not supported When there is more than one GRU layer, it is typical to stack the state and pass it in as one tensor.Then it is sliced apart within the model.But the Cube AI Studio software chokes on the slice since it is in the batch dimension.I suppose the intention is not to support unrolling in time, but in this case there is no such issue.Is there a work-arou
HelloI want to create sort of application that transmit and receive messages between 2 STM32F407 DISC0 and echo the transmited and received messages in PC screen(sort of chatbox)any hints how can I do it?and is it easier using USART or SPI?
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.