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
I am working on camera integration with both the STM32MP257F-DK and STM32N6570-DK development boards and would appreciate some guidance from the community.My setup Boards: STM32MP257F-DK STM32N6570-DK Camera sensor: Suggest One camera Sensor for both, currently I have VD55G1 and VD66GY Software: ST OpenSTLinux (Yocto) on STM32MP257F-DK My questions Is it possible to interface a camera to the STM32MP257F-DK using the DCMI peripheral, or is MIPI CSI-2 the only supported camera interface for this board? For the STM32N6570-DK, what is the recommended approach for connecting a camera through DCMI? Are there any supported camera modules or reference designs? Are there example projects available for image capture using DCMI? If the camera sensor provides only MIPI CSI-2 output (such as the VD55G1 and VD66GY), is an external bridge/converter required to use it with DCMI? Are there any ST application notes, reference designs, or GitHub examples demonstrating camera i
I’m looking for a replacement of MT53E1G32D2FW-046 WT:C because it’s out of stock.So, I have found Samsung K4FBE3D4HM-TFCL LPDD4. From what I can see, it’s compatible with MT53E1G32D2FW-046 WT:C:Same voltage Same package Same pinout Single rank Follows JEDEC standardAre there anything else I need to know before making an order of that LPDDR4 memory?
Why does STM32MP257F-DK not having EMI-filters on RX lines for USB 3.0?Can it be like a common standard that the transmitter TX should always have:AC capacitors ESD protection EMI-filteringAnd the RX does not need anything of those, because it’s assuming that their transmitter already having these implemented?This picture is from mb1605-mp257f-c01-schematic.pdf
Hello,We are designing a custom board using the STM32MP157FAC1 device and need to provide one USB 2.0 High-Speed port.Kindly refer to the attached block diagram snapshot and review the proposed USB interface architecture of our custom board.Please verify whether the implementation is correct and let us know if any modifications or additional recommendations are required for reliable USB 2.0 High-Speed operation.Regards,PS
We are experiencing issues on STM32MP13 when using TF-A with OP-TEE due to an "Undefined instruction" exception during low-power entry.When TF-A is built with a standard arm-*-gnueabihf toolchain, the compiler is allowed to generate NEON instructions because the STM32MP1 platform enables:ARM_WITH_NEON := yesIn our case, GCC generates NEON instructions when compiling lib/compiler-rt/builtins/udivmoddi4.c, which is reached from udelay() during the low-power sequence. At that point, however, the VFP/NEON unit is disabled, so execution aborts with an "Undefined instruction" exception.Relevant TF-A build settings:ARM_CORTEX_A7 := yes (from STM32MP1 platform settings) ARM_WITH_NEON := yes (from STM32MP1 platform settings) AARCH32_SP := optee CTX_INCLUDE_FPREGS=0Relevant compiler options:-mcpu=cortex-a7 (generated by TF-A from ARM_CORTEX_A7 := yes) -mfpu=neon (generated by TF-A from ARM_WITH_NEON := yes) -ffreestanding -fno-builtin -OsWe have verified that replacing udelay() with a simple
https://github.com/STMicroelectronics/meta-st-stm32mp/blob/scarthgap/recipes-bsp/trusted-firmware-m/tf-m-stm32mp.inc#L263 and the following cp commands preserve the ownership of the file which is a problem for yocto.When I build the sdk, I am getting the following error:Exception: Exception: KeyError: 'getpwuid(): uid not found: <my-uid-here>'Path <path-to-build-folder>/tmp/work/x86_64-nativesdk-<distro-sdk-name>-linux/nativesdk-tf-m-stm32mp-scripts/v2.1.4-stm32mp-r2.1/sstate-build-package/package/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-<distro-sdk-name>-linux/usr/share/tf-m/scripts/wrapper/imgtool/__init__.py is owned by uid <my-uid-here>, gid <my-gid-here>, which doesn't match any user/group on target. This may be due to host contamination.The fix is quite easy, any instance of “cp -a” needs to be replaced by “cp -a --no-preserve=ownership”. So you copy every other attribute but the ownership.I fixed it in a .bbappend but that would be
Hi everyone,I'm having trouble bringing up an STM32MP257F-DK Discovery kit (board reference MB1605C). ST-LINK itself works correctly, but I cannot get any communication with the main STM32MP257 processor, and the board never boots. I'd appreciate any insight into what else to check before assuming a hardware fault.Board / setup:STM32MP257F-DK, main board MB1605, revision C-01 Powered via USB-C into CN21 (USB PWR/STLINK) Using the original microSD card that shipped with the kit (preloaded OpenSTLinux demo image) Boot switches set to: BOOT0 = ON, BOOT1 = OFF, BOOT2 = OFF, BOOT3 = OFF (microSD boot)What works:LD11 / power LEDs indicate the board is powered Windows enumerates two "STMicroelectronics STLink Virtual COM Port" devices (COM8, COM9) without issues STM32CubeProgrammer detects the ST-LINK probe: Serial number, FW version V3J15M6B5S1, Board correctly identified as "STM32MP257F-DK", Target voltage reads consistently 3.28-3.29VWhat doesn't work:Connecting via SWD always fails with "
Hello everyone,I designed a board using the STM32MP157 and STPMIC1A. During the initial power-on tests, I noticed that there was no output from the VDD BUCK.The board was tested without any operating system or boot process. Is this normal? This is the first board I’ve designed with the STM32MP1, and if this is normal, I can proceed with porting the OS however, if it’s abnormal, I’ll need to investigate the source of the problem. The board was also successfully detected by the PC in USB boot mode. Regards
Hi ST,We have developed a custom board based on the STM32MP257F-DK design, with the primary difference being the use of the STM32MP255DAK3 processor in place of the STM32MP257F. All other components and configurations—such as RAM, eMMC, and SD card interface—remain the same as the original DK board.We generated the device tree source (DTS) using STM32CubeMX; however, we are currently unable to boot the board successfully. Initially, we encountered an error related to the RISAF component, which we managed to resolve. Unfortunately, we are now facing a new issue resulting in a Panic in EL3 error.Despite our efforts, we have not been able to determine the exact root cause of the problem. Given that only the processor has changed and all other hardware remains identical, we would appreciate any guidance or suggestions you could provide to help us resolve this issue and complete the bring-up process.NOTE: the 1st error ################################################NOTICE: CPU: STM32
Hi ST Team,We are developing a custom Qt 6 + OpenGL object detection application on the STM32MP257F-DK using OpenSTLinux 6.6, X-LINUX-AI, and the ONNX Runtime (stai_mpu) backend.Our application architecture is based on the official ST object detection example. We use the same stai_mpu_wrapper and ssd_mobilenet_pp.hpp post-processing implementation from the stai_mpu_object_detection example, while replacing the GTK/Cairo UI with our own Qt/OpenGL application.Application Architecture Board: STM32MP257F-DK OS: OpenSTLinux 6.6 AI Backend: ONNX Runtime (libstai_mpu_ort.so.6) Camera: libcamera + DCMIPP Display: Qt 6 + OpenGL (Wayland/Weston) Camera Pipeline: Viewfinder stream → RGB565 → OpenGL live preview AI stream → RGB888 → STAI inference Inference: stai_mpu_wrapper::RunInference() Post-processing: Official ssd_mobilenet_pp.hpp from the ST stai_mpu_object_detection example. 1. DCMIPP camera configuration issueOur AI model requires a 300×300 RGB888 input, so we conf
Hi ST Support,I would like to know whether there is a supported mechanism to enable or disable debug console output at runtime across the entire boot chain, including the following components:TF-A (Trusted Firmware-A) OP-TEE U-Boot Linux Kernel Root File System (user space)Use case:I connect to the target board through the serial console to monitor boot logs. After the system has booted, I access the board over USB SSH. From the Linux shell, I would like to execute a command that enables or disables debug messages on the serial console.My goal is to control the debug console output without rebuilding or reflashing any of the bootloader or firmware components.Could you please let me know:Is there a supported way to enable or disable debug console output for all boot stages at runtime? If this is not possible, what is the recommended approach to achieve similar functionality? Does ST provide any framework or utility to control console logging across TF-A, OP-TEE, U-Boot, the Linux kernel
Hello,We are designing a custom board using the STM32MP157FAC1 device and interfacing its RGMII interface with the DP83869HMRGZT Ethernet PHY.We have some queries regarding the PCB implementation of the RGMII interface.Is it recommended to use series termination resistors on the RGMII signals? If yes, kindly clarify the following:(1.) Should the series termination resistors be placed only on the TX signals driven by the STM32MP157FAC1?(2.) Are series termination resistors also recommended on the TX signals driven by the DP83869HMRGZT (i.e., the RX signals of the STM32MP157FAC1)?(3.) Kindly advise the recommended resistor values and the preferred placement of these resistors with respect to the driver device.Your guidance on the recommended implementation would be highly appreciated.Regards,Prashant
Hello,We are designing a custom board based on the STM32MP157FAC1 device, which is available in the TFBGA361 package.In the STM32MP157F datasheet (Page 251), the recommended PCB design rules for the TFBGA361 package are provided. Snapshot is attached for your kind reference. However, we are unable to determine the recommended PCB pad size from the information given.Could you please clarify whether the recommended pad size corresponds to Dpad or Dsm, or advise which parameter should be used while designing the PCB footprint?Regards,Prashant
We are trying to build BL2 for STM32MP13 with `TRUSTED_BOARD_BOOT=1` and mbedTLS 3.6.6, using a standard `arm-*-gnueabihf` toolchain. The build fails while compiling the first mbedTLS source file:...In file included from /src/mbedtls-3.6.6/library/aes.c:14:/src/mbedtls-3.6.6/library/common.h:23:10: fatal error: arm_neon.h: No such file or directory 23 | #include <arm_neon.h> |...The failure occurs as follows. The STM32MP1 platform enables:ARM_WITH_NEON := yes This adds `-mcpu=cortex-a7 -mfpu=neon` to the compiler flags. When using a hard-float toolchain such as `arm-linux-gnueabihf`, GCC consequently defines `__ARM_NEON`.Since library/common.h is included by every mbedTLS source file, mbedTLS then tries to include:#if defined(__ARM_NEON)#include <arm_neon.h>However, TF-A builds with -`nostdinc` and uses its own libc headers. As a result, arm_neon.h cannot be found and the build fails.The same configuration builds fine with a soft-float toolchain, where `__ARM_NEON` i
I have replicated the MB1936 Schematic for a dash-cam system based on the MP257FAIx series by choosing the relevant circuits from the reference to design my custom PCB. I would love to seek help from the community for the following requirement. If anything pops up my mind, I shall update on this thread - Can I use the 5-pin MOLEX/JST GH Signal Connectors to interface the Waveshare IMX335 USB Camera Module? I have used the USB Host Port Architecture to implement my logic, and it has worked well. Kindly find the Schematics PDF for your reference. Thank You!
Hello, I intend to use two 8-bit DDR3L memory devices with the STM32MP257FAK3. Could you kindly confirm whether this configuration is supported? Looking forward for your response. Regards,Shubham
Hello Sir/Ma’am,I am planning to interface two 8-bit DDR3L memory devices with the STM32MP257FAK3. Kindly confirm whether this configuration is supported by the STM32MP257FAK3.If supported, I would appreciate your guidance on the recommended implementation approach for this configuration.Thank you for your assistance.Regards,Shubham Kawadkar
Hi ST, Actually , In my Correct Project, i need Small SIZE PCB , So there is no left space in my PCB , So can i replace this PMIC to another PMIC which is in small Size, please Suggest me Any PMIC which is compatible with MP257,
Hi there, I found several issues in the STM32CubeMP2 CMSIS headers as follows:1. Missing opening parenthesis in bitmask macrosIn stm32mp21*xx.h, _Msk macro definitions were missing the opening parenthesis, leaving a dangling closing parenthesis with no matching open:// Before #define USB_OTG_GCCFG_FSVMINUS_Msk 0x1UL << USB_OTG_GCCFG_FSVMINUS_Pos) // After #define USB_OTG_GCCFG_FSVMINUS_Msk (0x1UL << USB_OTG_GCCFG_FSVMINUS_Pos)While the C preprocessor performs simple text substitution and the shift operation may still evaluate correctly at the call site depending on context, the unbalanced parentheses break static analyzers, automated code-generation tools, and linters that parse these headers. Adding the opening parenthesis also makes operator precedence explicit and unambiguous.2. Malformed comment delimitersAll of header files involves inline comments used *!< instead of the correct /*!< Doxygen-style comment opener, missing the l
Dear Team,I hope this email finds you well. I am writing to seek your expert clarification on a critical hardware design decision we are currently evaluating for our STM32MP257-based custom board. --- Current Memory Configuration --- • SoC : STM32MP257• Memory Part : Micron MT53E1G32D2FW-046 WT:C• Type : LPDDR4• Density : 32 Gbit (4 GB)• Organization: 1 x32 (Dual Channel — Channel A + Channel B) --- Our Understanding from ST Documentation --- Based on our research of the following official ST documents: 1. AN5723 (Rev 3, Aug 2024) : "Interface width is 32-bit when full-populated, or 16-bit when half-populated." 2. AN5724 — DDR Routing Guide: "For the 16-bit LPDDR4 interface, one 16-bit LPDDR4 is used in point-to-point connection. With this configuration it can drive up to 2 Gbyte memory." 3. AN5489 (Rev 6, Sep 2025) : STM32MP257 supports both 16-bit (half-populated) and 32-bit (full-populated) LPDDR4 configurations. Our understanding is:• If using a native x1
Hi ST Community,I'm developing a custom AI application on the STM32MP257F-DK using the following software stack:Software EnvironmentBoard: STM32MP257F-DK Starter Package: OpenSTLinux 6.6 X-LINUX-AI Expansion Package: v6.0 X-LINUX-QT: v2.1 SDK: STM32MP2 SDK (cross-compilation on Ubuntu) Qt: Qt 6.6 (cross compiled) Language: C++ IDE: Qt Creator Application GoalI want to develop my own Qt Quick application (not modify the Python demo) with the following architecture:USB Camera │ ▼Camera Capture │ ▼AI Inference (ST AI Runtime / NPU) │ ▼Bounding Boxes │ ▼Qt Quick GUIThe objective is to build a modular C++ application that can later be extended with multiple AI models. What I have already verifiedThe Logitech C270 webcam is correctly detected./dev/video7v4l2-ctl --all reports:Resolution: 640x480 Format: YUYV 30 FPSI can also run:gst-launch-1.0 v4l2src device=/dev/video7 ! videoconvert ! autovideosinkand the pipeline reaches the PLAYING state. What I di
I am using STM32MP157C with kernel version 6.6, and the problem I am currently experiencing is that HDMI cannot display. The hardware design uses SII9022ACNU chip, and the driver keeps reporting probe failure with a return value of -11. The SII9022 HDMI chip does not respond to I2C communication on the 6.6 kernel, and manually resetting GPIO is also ineffective. Have you encountered similar problems and how have they been resolved。
Yocto 5.0To build Yocto I follow simple instruction from bootlin bootlin.com/doc/training/yocto/yocto-stm32mp1-labs.pdfBut I get a corrupted Poky distro: 8th partition ("/mnt/part08") is empty (see screenshot below). Why?File "$HOME/stm32mp1_scarthgap/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0/temp/log.do_image_stsplitpartitions.2582911" looks suspicious```NOTE: image_link_name -> "core-image-minimal-stm32mp1.splitted-rootfs"NOTE: image_name -> "core-image-minimal-stm32mp1.splitted-rootfs-20260602150830"du: cannot access '/home/q/stm32mp1_scarthgap/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0/splitted_rootfs/usr/bin/dumpleases'du: cannot access '/home/q/stm32mp1_scarthgap/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0/splitted_rootfs/usr/bin/printf'```My repo to reproduce stm32mp1_scarthgap.Yocto 4.0The same steps I can do with end-of-life Yocto 4.0. And it will works (because 8th partition is not empty, I can see man
Dear ST Support Team,I am using the STM32MP157F-DK2 evaluation board with OpenSTLinux (Linux kernel 5.15).I am interfacing a Telit LE910C1-IN LTE modem through the USB Host interface. The modem is successfully detected by lsusb (VID:PID 1bc7:1201), and dmesg confirms successful USB enumeration. However, no /dev/ttyUSB* devices are created, preventing AT command communication.I also verified that the kernel configuration shows:# CONFIG_USB_SERIAL is not setCould you please provide the recommended procedure to enable USB modem support for the Telit LE910 on STM32MP157F-DK2? Specifically, I would like to know the required kernel configuration, drivers, packages, or any additional Device Tree or software changes needed to create the /dev/ttyUSB* interfaces.Below is relevant screenshot for reference.Thank you.
Hi dear ST team & community, We are planning our mass production strategy for our product using a STM32MP25 MPU. We found that ST’s partner ElProtonic has the GangProgrammer tool. This document https://www.st.com/en/partner-products-and-services/gang-flasher.html mentions it supports MP2s but I got in touch with ElProtonic and they say there’s no currently available support for MP2. We are currently using STM32Prog CLI tool to flash our devices in development but it’s way too slow for mass production. Is there any available/official tool we can use to flash our eMMCs? Or is there any approach you could suggest for us?Thanks!
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.