Get ready for the STM32 Summit 2026 | Online, November 3
Join conversations with your peers and ST experts. Explore the full potential of STM32 microprocessors for your embedded design.
Most recent activity
The board seems to be very selective on the power provided on the STLINK port. Even with an USB 2.0 external powered hub, it often does not power on. The board seems to need 5V/3A. That would mean a USB C Hub, (USB 3.0 Type A max is 0.9A) or using USB C port on a host to power to also have access to the debug UART . Another solution would have been a split cable for the STLINK port with one end to power the board and the other to the host. The manual states a USB C to A cable is needed but it a bit vague about STLINK it needs a USB-C host.USB A 3.0 is only 0.9A max and it seems not enough (at least for initial power on). Some USB C to A (brand new) cables won't power on the board connected to the STLINK connector and some others do, that even with a type A USB 5A power charger. Some different LED conditions occur in this case.1. LD5 RED blinking and others off.2. LD5 and LD6 always on REDCould not find these status on the manual. What do these
Hi St Teams , i followed this tutorial https://wiki.st.com/stm32mpu/wiki/How_to_build_kernel_for_Androidand i have a problem with linebuild_kernel [1/5]: Generate dtb binariesERROR: Not possible to generate the kernel imageother lines command work : build_kernel defaultconfig build_kernel vmlinux build_kernel modules build_kernel gpuand i did that :build_kernel --verbose=2 dtb[1/3]: Generate dtb binariesmake : on entre dans le répertoire « /home/linux/android_clean/device/stm/stm32mp2-kernel/linux-stm32mp2 »make[1] : on entre dans le répertoire « /home/linux/android_clean/out-bsp/stm32mp2/KERNEL_OBJ »make[1]: *** Aucune règle pour fabriquer la cible « dtbs ». Arrêt.make[1] : on quitte le répertoire « /home/linux/android_clean/out-bsp/stm32mp2/KERNEL_OBJ »make: *** [Makefile:256 : __sub-make] Erreur 2make : on quitte le répertoire « /home/linux/android_clean/device/stm/stm32mp2-kernel/linux-stm32mp2&nb
Hi,We are working on a product based on STM32MP157A MPU, As we thinking to update the kernel and QT version, we are looking for next OpenSTLinux 6.0 which supports scarthgap yocto and QT 6.5 LTS. When do we expect this release from ST?Also, What will be the LTS period of krikstone, mickledore and scarthgap?
Hi ST, I need to capture a picture on linux terminal. When I excute this cmd "v4l2-ctl -d /dev/video3 --set-fmt-video=width=2592,height=1940,pixelformat=YUYV --stream-mmap=3 --stream-skip=3 --stream-to=3.raw --stream-count=1 --stream-poll", the resolution of the picture is smaller than 2592 x 1940. I will attach the picture. What the reason is it? How could I get a full resulotion picture?
I just recently unboxed and connected up my STM32MP257F-DK and am trying to follow a simple blink LED project. (https://wiki.st.com/stm32mcu/wiki/STM32StepByStep:Step2_Blink_LED).My boot pins are 0011 (in Development Mode) since I don't want to boot up in Linux, just work with the M33 Core. My LEDs when I connect up my board to my computer are: LD11 is solid green, LD5 is solid red, KD6 is solid green, and LD7 is solid red. I've been having issues with the debugger and flashing. My project builds fine with no warnings or errors but when I run with debugger I get this on my Console: STMicroelectronics ST-LINK GDB server. Version 7.10.0 Copyright (c) 2025, STMicroelectronics. All rights reserved. Starting server with the following options: Persistent Mode : Disabled Logging Level : 1 Listen Port Number : 61234 Status Refresh Delay : 15s Verbose Mode : Disabled SWD Debug : Enabled InitWhile : Enabled Waiting for debugger connection... Debugger connected Waiting for
Hi all, I want to flash my EMMC using sd card? Do you have any guide or useful link for this?I have used Variscite SoM before and I was able to do it using yocto_install.sh script generated from yocto.How can I do this on STM32MP13X series? Regards
I am trying to flash the bootable image onto the STM32MP157D-DK1 device. The image I’m using is the latest version available on the OpenSTLinux Starter Package download page. I am using the STM32CubeProgrammer tool on both Windows and Linux, and every time I try, I receive the same error message at the same partition during installation — approximately at 20% of the installation of partition 0x12. The following message appears:19:58:42 : STM32CubeProgrammer API v2.19.0 | Windows-64Bits19:58:56 : Read TSV File: C:\Users\maste\Downloads\stm32mp1-openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06\images\stm32mp1\flashlayout_st-image-weston\optee\FlashLayout_sdcard_stm32mp157d-dk1-optee.tsv19:58:56 : Number of partitions: 1319:59:19 : UR connection mode is defined with the HWrst reset mode19:59:19 : USB speed : High Speed (480MBit/s)19:59:19 : Manuf. ID : STMicroelectronics19:59:19 : Product ID : DFU in HS Mode @Device ID /0x500, @Revision ID /0x000019:59:19 : SN : 00420043343851153638323819:59
Hello ST team and community,Why doesn’t ST provide the necessary internal pin length information for DDR layout in an official and accessible way — such as in the datasheet, an application note, or any other verified documentation?Currently, the only resource available is an Excel table listing signal names, not pin names, and as far as I can tell, it’s based on an Altium reference design. While it's theoretically possible to map signal names to actual pins, there is no reliable way to verify this mapping — especially since the Excel file isn't an official part of the datasheet or app notes.This makes accurate DDR layout challenging, especially for length matching, where precise internal pin delay data is critical.I kindly ask ST to provide official documentation that includes internal pin lengths clearly referenced by actual pin names, not just signal names.This would make DDR layout far more reliable and would prevent design issues caused by guesswork or reverse-engineering unofficia
How to cross compile the KERNEL driver in host PC , and where to find the kernel source in build file , sample Makefile for the make , my target is :STM32MP257f-ev1
Hi,I am debugging the STM32MP257F-EV1 board with a debugger via JTAG/SWD. The kernel version is 6.1.82.While Linux executes, it loads the M33 firmware as confirmed in the prints below.----------------------------------------------------[ 15.673261] remoteproc remoteproc0: powering up m33[ 15.679697] remoteproc remoteproc0: Booting fw image USBPD_DRP_UCSI_CM33_NonSecure.elf, size 5402348[ 15.690327] rproc-virtio rproc-virtio.2.auto: assigned reserved memory node vdev0buffer@812fa000[ 15.698127] virtio_rpmsg_bus virtio0: rpmsg host is online[ 15.699120] rproc-virtio rproc-virtio.2.auto: registered virtio0 (type 7)[ 15.708049] remoteproc remoteproc0: remote processor m33 is now up----------------------------------------------------At the kernel prompt, I am able to break M33 core via the debugger, but soon after that, Linux freezes with the below message.----------------------------------------------------root@stm32mp
Hi,I’m using the STM32MPU157x-DK2 development board and would like to power it externally, either using a battery or a different power source (not USB Type-C).Could you please help with the following:What are the recommended ways to provide external power, such as via a Li-ion/LiPo battery or regulated 5V supply?Can I use the 5V input on the CN6 (EXP connector) to power the board?Should I disconnect USB-C when supplying external power to avoid conflict?Are there any voltage/current limitations, or specific battery protection requirements I should consider?Do I need to change any configuration settings on the board to enable external power or battery supply?
Hello STMicroelectronics Community: I read this wiki:https://wiki.st.com/stm32mpu/wiki/STM32CubeProgrammer_flashlayout. So I have some questions:1.Why are the offset addresses of fsbl1 and fsbl2 boot1 and boot2 in the following example? I noticed that except for emmc, this two values of other burning methods are a specific address.2.What is the meaning of metadatabin? Thanks,Ivy7
I want to use a different SD Card than the one provided with the STM32MP257DK board. I complete writing to the SD Card through STM32CubeProgrammer in boot mode, but STM32CubeProgrammer disappears without the last complete message.After that, booting does not work even if I do SD boot, and the SD Card is not partitioned.Are there any separate regulations for the SD Card that should be used with the STM32MP257DK board? INFO: Boot used partition fsbl1NOTICE: BL2: v2.10-stm32mp2-r1.0(debug):lts-v2.10.5-dirty(7c229848)NOTICE: BL2: Built : 16:19:31, Jun 28 2024INFO: EventBuffer0: BuffArea=e03f000 DmaAddr=0e03f000 CoherentMapAddr=0xe03f000INFO: dwc3_set_dev_speed = HighSpeedINFO: DFU USB START...INFO: Event: Link Status Change : ON(0)INFO: Event: Link Status Change : Early Suspend(5)INFO: Event: Link Status Change : L2(3)INFO: Event: SuspendINFO: USB Suspend modeINFO: Event: Device ResetINFO: Event: Device Connection DoneINFO: dwc3_get_dev_speed = HighSpeedINFO: Event: Link Status Change
Moved to the MPUs section - STM32MP25 is an MPU, not an MCU. HI, I AM NEW TO THIS COMMUNITY, I NEED TO KNOW ABOUT THE WORKING AND HOW TO USE THIS, I HAD FEW QUERIES ABOUT THE OPENSTLINUX AND STM32CUBEIDE, MX. I THINK SOME WHOSE GONNA HELP ME TO GET SOME KNOWLEDGE ABOUT THIS BAORD. THE MAIN CONTENT OF MESSAGE I NEED TO BUIL A PROJECT WHERE I CAN READ THE SENSOR DATA AND THE DATA SHOULD BE SEND TO THE DISPLAY TO SHOW. IF SOMEONE REALLY WANT TO GUIDE ME, PLEASE DROP A TEXT TO ME GIVEN BELOW DETAILS EMAIL: <removed by moderation> thank you, T.sahith
Dear ST Community,Thank you for taking the time to read my question. We are encountering the following challenges while developing a dual-core project for the STM32MP257 using STM32CubeIDE:ELF Flashing Issue on Linux Side:We aim to develop M33 core code independently in STM32CubeIDE and flash the compiled M33 .elf firmware from the Linux side. However, during flashing, we receive an ICA (Inter-Core Authentication) error (see attached Figure 1).OpenAMP Configuration Problem:After referring to tutorials (such as those from "正点原子" on Bilibili, though their demonstrations were for MP157), we realized we needed to enable OpenAMP in STM32CubeMX. However, upon enabling OpenAMP in our MP257 project, we encountered compilation errors due to missing header files (see Figure 2).Questions:Could this issue stem from incorrect STMCubeIDE base configurations (e.g., toolchain paths or package selection)?Alternatively, is there a known procedure for flashing M33 .elf files from Linux that we might have
Hello,I'm trying to debug firmware code for M33 in NS mode. The board is running openSTLinux6.6 BSP in opteemin mode. M33 is running at 400MHz by setting in optee DT: FLEXGEN_CFG(0, XBAR_SRC_PLL4, 0, 2) and by running in firmware:HAL_Init(); SystemCoreClockUpdate(); I used two application to test:The first one is very simple and do a GPIO (configure in output mode) set and resetLL_GPIO_SetOutputPin( (GPIO_TypeDef *) GPIOD, LL_GPIO_PIN_1 ); LL_GPIO_ResetOutputPin( (GPIO_TypeDef *) GPIOD, LL_GPIO_PIN_1 );but when I used an analyzer to watch the GPIO signal, I got a time of 1,7us for set/reset that It seems to me to slow for running at 400MHz (as you can see from the first attached image).The second application is designed to exchange data with an A35 application using two piece of shared memory and IPCC. It's a simple loopback test where M33 copy data (from 0 to 1024 bytes) to first shared memory and signal data's ready through IPCC to A35, A35 receive the data a
I saw one other post on this but it isn't clear anyone was actually successful putting chromium for Wayland on successfully with hardware acceleration. I'm able to get it to load but it's very slow and the chrome://GPU makes it seem unlikely.Fwiw I'm using poky with the meta-st layer instead of stopenlinux. I'm using core-image-weston. It does not complain about the Eula not being accepted so curious if that's a hint? Most things I read discuss chromium 101 instead of the most recent release but I think that's more imx8 related. I am using the stm32mp157-dk2.
I've been trying to build OpenSTDroid distribution for my STM32MP25F7-EV1, I have followed these steps:Download OpenSTDroid Distribution (following the wiki linked here).Build OpenSTDroid using the wiki linked here.when I excuted make, there was an error report:files are incompatible: Runtime info and framework compatibility matrix are incompatible: No kernel entry found for kernel version 6.1 at kernel FCM version 7. The following kernel requirements are checked Am I use the wrong kernel version? Any insight would be helpful. Target Hardware Platform: STM32MP25F7-EV1Target Operating System: OpenSTDroid Distribution (st-android-13.0.0-2024-07-31) [Wiki link] log details:Fetch 'out/target/product/eval/system/etc/vintf/manifest.xml': OK Fetch 'out/target/product/eval/system/etc/vintf/compatibility_matrix.device.xml': OK Fetch 'out/target/product/eval/system/etc/vintf/compatibility_matrix.5.xml': OK Fetch 'out/target/product/eval/system/etc/vintf/co
In STM32MP1, there is an USB hub for 4 USB-A connectors. The hub is Microchip USB2514B. Were 4 means "4 ports".In STM32MP2, there is an USB too, for 2 USB-A connectors. The hub is Microchip USB2412B. Were 2 means "2 ports".According to AN5489, it says at 8.13 " Multiple hi-speed USB hosts using an external USB hub component is not described here.". So is that an answer for "yes, it's possible to use USB 2514B with STM32MP2"?
Hi everyone,I’m currently working with the STM32MP257F-EV1 evaluation board and would like to change the default UART used for debug output. By default, the EV1 board uses USART2 via the STLINK USB port for debug. However, for testing purposes, I’d like to reroute the debug console to USART6 so I can read debug messages from the header pins on the board. I’ve tried editing the device tree by modifying the chosen node and changing the parameter: stdout-path = "serial0:115200n8";to:stdout-path = "serial1:115200n8";According to my aliases, serial1 should correspond to USART6. However, after making this change, I encounter a watchdog panic very early during boot: m32_serc_handle_ilac:133 SERC exceptions [63:32]: 0x10 E/TC:0 stm32_serc_handle_ilac:139 SERC exception ID: 36 E/TC:0 Panic 'Watchdog' at /usr/src/debug/optee-os-stm32mp/4.0.0-stm32mp-r1/core/drivers/stm32_iwdg.c:228 <stm32_iwdg_it_handler>Based on this post I tried masking the st-m33firmware-
Good Morning, I don't know if anyone can help me or if this is right place to ask this question but I am having an issue when initializing the DDR on the STM32MP135F-DK board. I know the official advice is to run the DDR_init example prior to each run of my application. However for my final deployment of the code and for my ease of use id rather only have to build and run one program that initializes the DDR and then moves onto my program. I have tried dissecting the DDR_init example to no real luck. Especially around systemclock_config as in the DDR_init example the systemclock_config() only executes this if USE_DDR is not declared, yet the advice on the getting started with the stm32mpu lines states that for DDR use this must be added to the .cproject file. Has any one had any experience getting this working or know of any resources that might help? Many thanks, Stephen Kelleher
At STM32MP1, there is an USB OTG, were you can flash the eMMC via the USB OTG. But in STM32MP2, there is no USB OTG. Does this mean that I need to flash my SD-card instead? Just like Raspberry Pi etc.?Or am I supposed to flash the eMMC via the USB C connector?
Hi ST, I have flash the Android images(st-android-13.0.0-2024-07-31-stm32mp257f-ev1-emmc-starter) on the STM32MP257-EV1. When booting the board(power supply by 5V3A adapter), the leds light as this status,is the board working normally? When the board booted and CN15 usb connected with PC , I found the device manager show the "Android aosp on stm32mp257f-ev1".When CN21 usb connected with PC, device manager shows up nothing new at allThe board was booting normally?If it is the normal status, how can I connect the terminal to the STM32MP257-EV1 on the host computer?
Hello,I'm considering basing a project on an STM32MP25x, and while it looks like a very capable chip I have some questions about the capabilities and their interactions. If anyone can point me in the right direction I will be very appreciative.First, what is the achievable performance of the USB3 in terms of streaming data to or from the chip? I've done some cursory searches but can't find any benchmarks. I'm assuming it well exceeds the gigabit ethernet ports individually but it would be nice to know where the performance tops out. Second, is there a way to have both USB3 data transfer and USB power delivery negotiation on the same physical port? I ask because the demo boards seem to use two physically distinct ports for this purpose. Third, I assume the PLL for the USB3 block(s) enables a variety of input frequencies to be used, but I wonder if there are any high level requirements to this that I should watch out for. Fourth, and this is more of a cubeMX question
Hi everyone,I’m struggling with an OpenAMP / RPMsg problem on an STM32MP157 (M4 core).When I compile exactly the same application with STM32 CubeIDE (GCC) everything behaves as expected – two virtual‐UART channels (ttyRPMSG0/1) come up on the A7 and messages flow both directions.As soon as I switch the project over to IAR EWARM (v9.40): Linux still detects the vrings, creates /dev/ttyRPMSG0 and /dev/ttyRPMSG1, and the kernel log showsvirtio_rpmsg_bus virtio0: rpmsg host is onlinerpmsg_tty … new channel: 0x400 -> 0x0 : ttyRPMSG0 Writing from the A7 side blocks indefinitely:echo "hello" > /dev/ttyRPMSG0 never returns. On the M4 console I see no “Msg received…” printout – not even the IPCC interrupt fires (added a GPIO toggle inside HAL_IPCC_RX_IRQHandler for confirmation). What I have verified / triedInterrupt vectors – IPCC_RX1_IRQHandler and IPCC_TX1_IRQHandler are present in startup_stm32mp15xx.s, and the symbols appear in the EWARM map file.Mask
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.