Get ready for the STM32 Summit 2026 | Online, November 3
Ask questions and find answers on STM32 microprocessors, including hardware, power, DRAM, flashing, interfacing, device tree, and peripherals.
Most recent activity
Hardware setup:- STM32MP257F-DK- The OTP in the chip is burned with the correct OTP value and it is closed.- Connect CN15 USB Port to a Ubuntu Laptop.- BOOT0 = BOOT1 = BOOT2 = BOOT3 = 0- Power on the DEV KIT.Software:Enable Secure Boot + EncryptedROOT_SIGN_KEY = "/mnt/HDD_2TB/KeyGenSecBoot/stm32mp25-signaturekey" ROOT_ENCRYPT_KEY = "/mnt/HDD_2TB/KeyGenSecBoot/stm32mp25-encryptionkey" # Generate Distribution Package with signed binaries for STM32MP25 SIGN_KEY = "${ROOT_SIGN_KEY}/privateKey00.pem" SIGN_KEY_stm32mp21 = "${ROOT_SIGN_KEY}/privateKey00.pem" SIGN_KEY_stm32mp23 = "${ROOT_SIGN_KEY}/privateKey00.pem" SIGN_KEY_stm32mp25 = "${ROOT_SIGN_KEY}/privateKey00.pem" EXTERNAL_KEY_CONF = "1" SIGN_KEY_PASS = "xxx xxx xxxx xxxx xxxxxx xxx xxx xxx" SIGN_ENABLE = "1" SIGN_TOOL = "/home/thinhnguyen/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin/STM32_SigningTool_CLI" # Generate a Distribution Package with encrypted partition binaries for STM32MP25 ENCRYPT_ENABLE = "1" ENCRYPT_FSBL_KE
We have changed the Yocto ecosystem of our builds from Kirkstone to mickledore.Everything works smoothly if all the components from the boot chain are built with the same ecosystem (either Kirkstone or Mickledore). Which means is, if TF-A, U-BOOT, Kernel, and rootfs all are either Kirkstone based or Mickledore based in the the image, the system boots fine.We have a different test base scenario, the deployed hardwares in the field are currently operational with kirkstone releases, we intend to update the components individually in the hardwares to avoid the software breaks and to enhance the rollback feature in case of update failure.So, when we update either U-BOOT (kirstone to mickledore) and the kernel is of kirkstone based, the system doesn't boot and watch dog timer keeps resetting the system.When we keep the U-BOOT at kirkstone version and update the kernel (kirkstone to mickledore), the system doesn't boot and the watchdog timer keeps resetting the system.This boot fails after th
Hi,I have a custom Board with a STM32MP157C marked 'B' with an attatched SD card and an eMMC (one from ISSI).First of all I am aware that this revision is having the errata 'eMMC boot timeout too short'. I also read through this post: https://community.st.com/s/question/0D50X0000BiBhHQSQ0/stm32mp153a-failed-to-boot-from-emmcThe problem I am having is that I indeed can boot from the eMMC when resetting it and the MP1 with the NRST pad (using a switch if that matters). TF-A tells me the following reset reason:NOTICE: CPU: STM32MP157CAA Rev.B NOTICE: Model: STMicroelectronics custom STM32CubeMX board INFO: Reset reason (0x14): INFO: Pad Reset from NRSTwhich also makes sense. If I let the system boot and try to reboot it via U-Boot or Linux console it won't start. After the shutdown the boot from eMMC fails and the serial boot is entered.By using my SD-Card I know that the reset reason is MPSYSRESET when rebooting from the command line, as seen in the TF-A trace:INFO: Reset reason (0x54):
Hi,according to CubeMX the LVDS-pins of the STM32MP25 are not multiplexed, means there is no alternative function available for them.As for my application all this (multimedia) stuff is not needed: is there a possibility to use one of these pins as general purpose output? I'm thinking about something non-time-critical, such as switching an LED more or less slowly.Any hacks available to do that?Thanks!
Dear STMicroelectronics Community,I hope this message finds you well.We are currently working on integrating the Murata M.2 Wi-Fi module with an STM32 MPU platform(STM32MP157D-DK1). The STM32 board provides a 14-pin header interface, and the Murata module is mounted on an M.2 adapter.We would like to inquire if there is any existing connector or adapter solution available that can interface the Murata M.2 adapter with the 14-pin header on the STM32 MPU, specifically supporting SDIO and UART lines.Any guidance or recommendations on compatible hardware or reference designs would be greatly appreciated.Thank you for your support.Best regards,[Adarsh Katiyar][engineer][acl DIGITAL][9651373221]
I build openSTLinux based on the manifest at this link https://github.com/STMicroelectronics/oe-manifestI'm not sure if STM32MP157F supports virtualization. And if it does, can you share how to add docker to openSTLinux?Can I add meta-virtualization (https://git.yoctoproject.org/meta-virtualization) and install docker to my SD card image?
I use default uboot in openSTLinux. I use the command below to save uboot environment.$ env save but it showed an error, and the environement did not save. please see the picture below. How to fix it?
Dear forum,I recently bought an STM32MP157F-DK2 I want to evaluate for the course I am teaching, but I get stuck at the following step "Populate the SD Card" from ST official websiteI have the board initially recognized, the udev rules working fine, the cube programmer connecting correctly and I work under Ubuntu 24.04. The process seems to start fine with the provided file (FlashLayout_sdcard_stm32mp157f-dk2-optee.tsv), but after a few seconds, the process stops with the Cube interface saying "Reconnecting to the board...." for some time, then the process times out and nothing happens.The red led blinks continuously.I am using a compatible power supply, the provided USB-C cable and all seems in the end correct....any idea where the problem might be? Thanks in advance for your help!
I successfully downloaded using STM32CubeProgrammer on the stm32mp257f-dk board by referring to the wiki and using the Yocto OpenSTLinux distribution package.After that, I built the stm32 buildroot-external-st distribution package in the same way, but an error occurs when trying to download by reading the flash.tsv file.How can I perform the flashing properly?Also, the image created this way is for the SD card — how can I build and flash it for eMMC?
Dear STMicroelectronics Community,I hope this message finds you well.We are currently working on integrating the Murata M.2 Wi-Fi module with an STM32 MPU platform(STM32MP157D-DK1). The STM32 board provides a 40-GPIO pin header interface, and the Murata module is mounted on an M.2 adapter.We would like to inquire if there is any existing connector or adapter solution available that can interface the Murata M.2 adapter with the 40-GPIO pin header on the STM32 MPU, specifically supporting SDIO and UART lines.Any guidance or recommendations on compatible hardware or reference designs would be greatly appreciated.Thank you for your support.Best regards,[Adarsh Katiyar][engineer][acl DIGITAL][9651373221]
Hi, we are trying to run a simple helloWorld program on the STM32MP157F board, but we couldn't find any documentation or any instructions on how to do so. We re not sure about the requirements. Is someone have any idea how to do that or where to find instructions that would be appreciated.
Title shortened from "How do I know the pinout of the STM32MP25 chip that the LVDS interface on the STM32MP257F-DK development board connects to?"Please see: How to write your question to maximize your chances to find a solution.When we added an LCD screen driver to the STM32MP257F-DK development board, we consulted the Linux source code <arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi> pin definition file and found that the chip pins corresponding to the LVDS interface on the development board did not seem to be defined in the file. However, when we consulted the <stm32mp257f.pdf> document, there are multiple pins with LCD multiplexing functions. How can I know which pin of the STM32MP25 chip the LVDS interface on the STM32MP257F-DK development board corresponds to? Or where can I get the hardware schematic diagram of the development board. Or maybe the official has defined the pin functions of the LVDS corresponding chip somewhere else. Please forgive my suspicion as a
We are developing the STM32MP257F-DK development board. We searched the development documents on the official website of ST and found the development documents of STM32MP257F-DK (https://wiki.stmicroelectronics.cn/stm32mpu/wiki/STM32MPU_Developer_Package#Installing_the_components_to_develop_software_running_on_Arm_Cortex-A_-28OpenSTLinux_distribution-29). However, there is a sentence "Go on st.com to download the STM32MP2 Developer Package, en.SOURCES-stm32mp2-openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06.tar.gz file.". We did not find the source code download entrance of STM32MP2 in the link provided. We further found the source code of the linux kernel in github (https://github.com/STMicroelectronics/linux/tree/v6.6-stm32mp), but did not find the device tree file for the STM32MP2 series. Please let us know how to get the source code of the STM32MP257F-DK so that we can explore it and add our device driver.
We are changing the kernel configuration. According to the document (https://wiki.stmicroelectronics.cn/stm32mpu/wiki/Menuconfig_or_how_to_configure_kernel#Menuconfig_and_Developer_Package), when we reach the step of make ARCH=arm64 Image.gz LOADADDR=<loadaddr of kernel>, we need to know the kernel load address of STM32MP257. The relevant information is not clear.
Hello.I am designing a circuit with stm32mp157f.I'm looking for eMMC when choosing memory because 4Gbit slc nand flash is too expensive.In the datasheet, I read in the data sheet that stm32 supports emmc.The question is as follows.Is it correct that eMMC can be used even if it is not SLC(pSLC, MLC...) like IS21EF04GP-JCLI-TR?(It's my first time using mpu and memory. So it's very difficult for me to choose memory.)Is the QSPI flash of STM32MP157F-ev1 used for RAM? Regards,Youngjun.
Hello.I am designing a circuit with stm32mp157f.I'm looking for eMMC when choosing memory because 4Gbit slc nand flash is too expensive.In the datasheet, I read in the data sheet that stm32 supports eMMC. The question is as follows.Is it correct that eMMC can be used even if it is not SLC(it's pSLC, MLC...) like IS21EF04GP-JCLI-TR?(It's my first time using mpu and memory. So it's very difficult for me to choose memory.) Regards,Youngjun.
Hi all, having an issue with programming STM32MP257F-DK/SDCard with the Starter package getting to the stage in the attached screenshot then it seems a connection times out with no success notification popup ?
Hi,based on the information I get from the schematic of the STM32MP257-DK development board, I'm trying to develop a small embedded board that comes with much less interfaces and therefore is much smaller than this development kit board. Namely it will come with USB, Ethernet, SD-Card, eMMC and a big connector which forwards the different other signals to a daughterboard.So far no problem, but I stumble upon the STPMIC25APQR PMIC and its huge load of components. On the current layout it has12 voltage lines6 inductorsloads of large capacitorsThis all consumes that much space, that it in no way fits to the space which is available for this embedded board.So my question: is there an alternative PMIC/an alternative wiring of the STM23MP257 available which does not need that much separate voltage lines and therefore does not need all these additional, space-consuming external components?Any hint and idea is welcome :)ThanksMike
The kernel is complaining that the specified root partition (identified by the PARTUUID) is not found or isn’t valid, and this is happening at the kernel level rather than in U‑Boot. In other words, U‑Boot is simply passing the kernel command line (which includes something like:root=PARTUUID=e91c4e10-16e6-4c0e-bd0e-77becf4a3582) to the kernel, and then the Linux kernel itself is trying to locate that partition during its mounting phase.please find the boot logs attached.
So first of all I'm working on creating a yocto image for this board.https://www.seeedstudio.com/Odyssey-MP135D-eMMC-p-5728.htmlMy end goal is to create a meta-layer with an easy to follow yocto quick start guide for this board similar to the one Seeed Studio has for the stm32mp157 variant of their dev board here:https://github.com/Seeed-Studio/meta-st-odyssey/tree/masterI'm not associated with Seeed studio, I'm just doing it because it relates to one of my current projects and think something like this would make this board more useful and approachable.I started by following this guide to get my yocto environment set up to use st's latest branch (mickledore).https://wiki.st.com/stm32mpu/wiki/STM32MP1_Distribution_PackageNext I patched the linux-stm32mp, optee-os-stm32mp, tf-a-stm32mp, and u-boot-stm32mp recipes to contain Seeed studio's device trees for the board located here.https://github.com/Seeed-Studio/stm32mp1-manifestThere were various issues to work out getting arm trust
Hello guys,As per the subject, where can i find a guide about starting new OPTEE port? Unfortunately i didn't find anything descriptive enough in the WIKI. Being stm32mp151c additionally complicates the matter as all supported platforms are '157x. As far as i can tell these aren't interchangeable and i've run into a lot of issues.I am trying to make do with 'opteemin' version of TF-A and OPTEE, and i get as far as:```I/TC: Early console on UART#4I/TC:I/TC: Embedded DTB foundI/TC: OP-TEE version: 4.0.0-stm32mp-r1-1-g70cd98575f5f-dev (gcc version 13.3.0 (GCC)) #6 Wed Apr 2 09:12:25 UTC 2025 armI/TC: WARNING: This OP-TEE configuration might be insecure!I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.htmlI/TC: Primary CPU initializingI/TC: RCC is non-secureI/TC: Platform stm32mp1: flavor PLATFORM_FLAVOR - DT stm32mp151c-xxx.dtsI/TC: OP-TEE ST profile: system_servicesE/TC:0 0 probe_dt_drivers:902 Probe sequence result: 0x8
question no longer required
Hi everyone. I'm tasked with porting ST's most recent TF-A, u-boot and kernel to a custom stm32mp151c-based board. It runs 2021 version of the above SW components just fine.It seems, however, that at some point the device-tree bindings changed and i can't just use the old DT in the latest TF-A. I banged into shape the i2c section so TF-A can see STPMIC, regulators, etc. and it worked. Up to the point:INFO: RAM: DDR3-DDR3L 16bits 533000kHzERROR: DDR addr bus test: can't access memory @ 0xc0000004I've put some debug printouts so i know the RAM size is properly read from DT. The puzzling bit is that stm32mp_ddr_test_data_bus() passes successfully, while stm32mp_ddr_test_addr_bus() doesn't.As i said, this board has been used in production environment for about four years now and most certainly don't have issues with the RAM. This is software issue and if somebody can point me to whatever change in TF-A and/or its DT could have caused that, would be
I built an st-image-weston by using yocto recipes. The layers is in oe-manifest branch scagraph (https://github.com/STMicroelectronics/oe-manifest) I got those warning, please help to fix it. WARNING: st-image-weston-1.0-r0 do_create_flashlayout_config: >>> Cannot generate FlashLayout_board_stm32mp157f-dk2-deleteall.tsv file: the arm-trusted-firmware/tf-a-stm32mp157f-dk2-optee-programmer-usb.stm32 binary for fsbl-boot partition is missing in deploy folderWARNING: st-image-weston-1.0-r0 do_st_write_license_create_summary: IMG LIC SUM: File does not exist with open file /mnt/DATA0/LEAPS/YOCTO_BSP/build-openstlinuxweston-stm32mp15-disco/tmp-glibc/deploy/licenses/stm32mp15-disco/st-image-weston-openstlinux-weston-stm32mp15-disco.rootfs-20250207084859/image_license.manifestWARNING: st-image-weston-1.0-r0 do_st_write_license_create_summary: IMG LIC SUM: File does not exist with open file /mnt/DATA0/LEAPS/YOCTO_BSP/build-openstlinuxweston-stm32mp15-disco/tmp-gli
hi there I have a question about Memory 。Are the memory regions starting at 0x10000000 and 0x30000000 part of the same mapped area?Are these addresses written the same way in the device tree, or is there a difference between them?thanks,csm
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.