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
Hello ST Community members, STM32Cube AI Studio is ST’s next-gen desktop solution for optimizing and validating AI models running on STM32 MCUs. It brings a unified workflow, improved performance evaluation, and a modern user experience designed that will benefit both embedded engineers and data scientists. STM32Cube AI Studio is fully compatible with the STM32Cube ecosystem, allowing a smooth transition from your existing projects. Learn more: https://community.st.com/t5/developer-news/introducing-stm32cubeai-studio/ba-p/876445 Have a good day!
Hi I have FP32 TFLite model. I can able to compile quantised model with STM32 Cube AI studio. i am getting some error while compiling FP32 model with STM32 Cube AI studio. Please let me know the steps to build FP32 model and make the C files correspond to the model.
I am using an STM32H7 MCU and configuring the system clock to 400 MHz using CubeMX. The clock tree shows SYSCLK = 400 MHz, and MCO2 is configured to output SYSCLK.However, when I debug:HAL_RCC_GetSysClockFreq() returns 64 MHzRCC->CFGR shows SWS = 0 (HSI is used)SW = 0, meaning the system is not switching to PLL It seems that the PLL is not being selected or is failing to lock, and the system remains on HSI. I have configured PLL and SYSCLK source in CubeMX, but the change is not reflected at runtime.HAL_RCC_GetSysClockFreq() RETURNS 64MHZ
Hi, I'm using the image sensor evaluation kit with STEVAL-66GYMAI, STEVAL-EVK-U0I and the PC software of STSW-IMG501 to capture video stream. I would like to change the setting of MIPI lane from default dual-lane to single-lane operation. But, I failed to change it, so please tell me how I can complete to change the setting. I tried to change the MIPI lane setting by changing the register value of OIF_CTRL at 0x030c. I changed the register value via the PC software from 0x0082 to 0x0081 in accordance with the VD66GY manual. The ROI size, the frame rate and the MIPI data rate were set at 288x288, 12 FPS and 1500 Mbps, which seemed to be enough for single-lane operation. The frame rate was adjusted by changing LINE_LENGTH register. However, I couldn't get the video stream. The excution rate displayed on the top left of the PC software window was 0.5 in streaming, and any picutures were not shown on the PC software. I could see the video stream with the default dual-l
Hi everyone,I’m having an issue connecting my custom board based on STM32H723ZGT6 to STM32Cube.AI Studio. The software cannot detect any COM port or target device.Setup:UART interface via USB-TTL converterUsing USART1 (PA9 TX / PA10 RX)TX/RX crossed correctlyWindows Device Manager detects the COM port normallyThe same COM port appears and in other software (e.g. Arduino IDE) Dependency Software versions (all latest): STM32CubeProgrammer v2.22, path in setting also are correct.Additional info:I can connect to the MCU successfully using ST-LINK in STM32CubeProgrammerHowever, UART connection in CubeProgrammer fails with timeout Question:What is the correct way to make STM32Cube AI Studio detect and successfully connect to an STM32H723ZGT6 MCU on a custom board?Thanks for any advice.
Hi Support,I am unfamiliar with this project structure where the generated project contains separate boot/ and appli/ directories. I created the project using STM32CubeMX with the CMake toolchain selected, and noticed that two separate .elf files are produced after building.I am unsure which of these should be used when flashing the board using STM32CubeProgrammer. Currently, I am able to successfully flash the device using the .elf located in the /boot/ build directory, but I cannot flash the .elf located in /appli/.Could you clarify the purpose of the boot/ and appli/ directories and which firmware image is intended to be flashed? Additionally, is there a way to generate a more traditional single-application project structure (i.e., without separate boot and application directories) when targeting the STM32H7S3L8?Any guidance or suggestions would be greatly appreciated.
In the RM0506 rev. 1 file in chapter 14 (DDRPHYC), the DDR3L pins don't match the reference schematic in the examples-of-ddr-memory-routing-on-stm32mpus.zip file.In the STM32MP21XXAN_DDR3L-[No Variations]-A01_Schematic.PDF project, the DDR_A8-DDR_A31 pins have different functions.Which version is correct?RM0506STM32MP21XXAN_DDR3L-[No Variations]-A01_Schematic.PDF
Post updated by a ST moderator: 1- Title translated from Chinese to English. 2- Used </> button for the code. I am attempting to transplant the latest FreeRTOS kernel program on the basis of the project generated by CubeMX. When FreeRTOS uses HSI, there is no problem and it runs normally. However, when using HSE, an initialization timeout occurs. Without transplanting FreeRTOS, HSE can pass the initialization normally.My approach was to incorporate the xPortSysTickHandler, xPortPendSVHandler, and vPortSVCHandler required by FreeRTOS into the three functions in the it file. Then, I found that it was the xPortSysTickHandler() within the systick_handler() that was causing the issue. After commenting it out, the HSE could be initialized normally. So, I'm asking on the forum what the reason is and if there's a way to solve it. AI is not reliable. void SysTick_Handler(void) { /* USER CODE BEGIN SysTick_IRQn 0 */ /* USER CODE END SysTick_IRQn 0 */ HAL_IncTick(); /* USER CODE BEGIN
HiAs I experienced some problems with 2.1.0, I reverted to 2.0.0 and in that process I seem to have gotten the error:Program "gcc" not found in PATH - "[Discovery options] page in project properties"I followed the instructions found in the stm32CubeIDE user guide https://www.st.com/resource/en/user_manual/um2609-stm32cubeide-user-guide-stmicroelectronics.pdf, but the problem persists.Is there a way to manually clear this from any of the configuration XMLs perhaps?The code does still compile and creates binaries, so the error is just a nuisance.[Edit] spellingBest regardsMartin
在官网下载的CLT工具链安装包,管理员运行后显示如图报错该怎么办?
So, when I was actually trying to work on the STM32F103CBT6TR MCU which is placed onto the custom board while I tried to toggle PA1 in it which only gave floating values then in debug, I found out it is going into Hard Fault Handler so then again I replaced them with new IC but again it is coming as same Hard Fault Handler. I also tried for pin 0 too. What can we do to solve this?
Split from How to make the FDCAN with DMA - which is solved.TL;DR: STM32s don't support DMA for CAN or FDCAN.Hi, thanks for the clarity.But, the doubt I'm having was, then how to handle that much data rate like eg.5mbps in FDCAN without any help of DMA?In my case, the CPU will be busy with doing other high priority works, so how can I handle the CAN data without the intervention of CPU.Kindly, suggest a way to resolve this. Thanks
I updated the STM3CubeProgrammer to version v2.22.0, and after restarting the app, it started showing a blank page. I was also not able to close the application directly. I had to end the task from the task manager. I uninstalled the latest version and installed v2.20.0, but it is also showing a blank page. Also, in STM32CubeIDE, I am not able to run and debug code. It gets stuck at "Download in progress". Are both problems related?
Hello, I'm using the STM32N6570-DK board.I completed the TOUCHGFX project through this URL, and there was a DEBUG problem while I was making CUBEMX and CUBEIDE operating it.(https://community.st.com/t5/stm32-mcus/how-to-debug-stm32n6-touchgfx-applications-using-stm32cubeide/ta-p/845901)I'm not moving from FSBL to APPLI. I'm asking for your help on this part.Please check.
Hi, I tried to configure the USB Host for a project, but it’s difficult to configure, and I am not finding any online support available for the STM32H5 series controller.My requirement: I configured PB4 as an output, which is connected to a green LED. Whenever I plug the USB into my controller, the green light turns on, and whenever I remove the USB from the controller, the green light turns off.I’ve tried some methods, but they are not working. Can anyone please help me?
I have been using a STM32F469i Disco board to interface with a 800x800 LCD in MIPI DSI video burst mode. In order for this to work from the DISCO board, I have an adapter PCB to connect from the DISCO board to the LCD.It took a while to get going, but the setup with the custom LCD and DISCO board is working fine.I have recently moved to a custom board; I have intentionally made the video dependent aspects of this board the same as the disco board so that I can run my software on either the disco or the custom board without making any changes.The custom board sometimes exhibits odd behaviour when rendering from the SDRAM via the LTDC.Enabling the test colour bars from the DSI always display ok without any problem.From SDRAM/LTDC, the horizontal start point shifts from the left side of the display to some arbitrary location across the width of the display. This occurs randomly, it can be running for hours and remain stable, other times it may shift once, then be stable for a time and may
Hey!I updated the firmware to the ME version, I am receiving some RTCM messages, but only a limited amount shows up in the message monitoring, also nothing can be decoded. Is there any documentation available on how to configure which RTCM messages should show up. I want to experiment with RTK calculations, so if there is any material on how to access and decode these RTCM messages would be highly appreciated. Thanks is advance,Patrik
What is recommended way to change or override the 'SYSTEM_CLOCK' symbol defined in 'tx_initialize_low_level.S' , that feeds into the threadX systick period calculation? I could change the SysTick after threadX is started -- that is probably the easist fix. I dont want to modify the threadX submodule in my project, as its pulled from the internet at some pinned version. I've currently made a local copy of 'tx_initialize_low_level.S', and then I use CMake to select that particular S file - so that solves the problem, but I dont like having a personal copy of a file from the submodule. After experimenting for some time, and then scouring the web, I cant find any suggestions on this issue, there are some changes that can be imported via having your own 'tx_user.h' -- but I cant see anything that can override the SYSTEM_CLOCK. Cheers, Nick
Hello,I see that the LIV3FL can enable the PSTMPV message, which includes 3D velocity data. The equivalent setting does not seem to be available for the LIV4F. Is this correct? Is the LIV4F unable to provide 3D velocity data?
Hello,I found a bug in STM32CubeMX code generation for STM32H7S3.When configuring Ethernet with external clock input (ETH_CLK pin,PD6 with AF4_ETH) as PHY clock source, CubeMX does not generateGPIO initialization for this pin in HAL_ETH_MspInit().Workaround - must add manually:__HAL_RCC_GPIOD_CLK_ENABLE();GPIO_InitStruct.Pin = GPIO_PIN_6;GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;GPIO_InitStruct.Pull = GPIO_NOPULL;GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;GPIO_InitStruct.Alternate = GPIO_AF4_ETH;HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);Without this, Ethernet does not work even though all otherETH pins are correctly initialized by CubeMX.Steps to reproduce:1. Select STM32H7S32. Enable Ethernet (ETH)3. Set clock source to external clock via ETH_CLK pin (PD6)4. Generate code5. ETH_CLK pin GPIO init is missing in generated codeCubeMX version: 6.17.0MCU: STM32H7S3Thank you
Dear ST Support Team,I’m currently trying to run the ST67W6X_CLI application (from the Wi-Fi ST67W6X CLI Wiki)using the following setup:Wi-Fi Expansion Board: X-NUCLEO-67W61M1Host MCU Board: NUCLEO-F446REIDE: STM32CubeIDE (latest version)Middleware: FreeRTOS (as provided in the ST67W6X_CLI example)The project builds successfully and the firmware is programmed without errors, but at runtime, I encounter a HardFault_Handler.The fault occurs inside the FreeRTOS queue management code, specifically during a call to xQueueReceive() in queue.c. Debug Information:When the fault occurs, the debugger stops inside:prvCopyDataFromQueue(pxQueue, pvBuffer);and the corrupted member is:pxQueue->uxItemSizeObserved value: 536871212 (0x2000412C) — which clearly points to an invalid or corrupted queue structure.Call stack snapshot:HardFault_Handler()prvCopyDataFromQueue() at queue.cxQueueReceive() at queue.cspi_get_txbuf() at spi_iface.cPlease see the attached screenshot (from STM32CubeIDE) showin
Hello. Have some issues with MCU ADC configuration and data.Hardware: - MCU: STM32G473MET3 &
How to identify an original TDA7294 ? any marking or way to check? Or multimeter test reading? Please tell me the way to identify an original tda7294 ic.
Hello, I am reviewing the reference design for the ST87M01 and noticed that a 1nF capacitor is specified for the DC block on the GNSS RF path. In many high-sensitivity GNSS designs, 100pF is the standard choice for the 1.5 GHz L1 band to ensure the Self-Resonant Frequency (SRF) remains well above the operating frequency. Questions: Why was 1nF selected for this specific SiP instead of the typical 100pF? Does the internal matching of the ST87M01 rely on the specific reactance of a 1nF series capacitor at 1575 MHz? For a design strictly optimized for GNSS sensitivity, would a 100pF High-Q (C0G) capacitor offer any measurable improvement in insertion loss or noise figure compared to the 1nF reference value? Greetings, Andreas
Hello,I have my N657X0H3Q running on Cube AI Studio, the model to use is .onnx file, and the connection to the board is checked.However, there's an error while Cube AI Studio automatically programming the "network_atonbuf.xSPI2.bin" by cube programmer. But I can manually do it by cube programmer without Studio. Following file shows the error message. Thanks for your help.
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.