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
Issue SummaryWhen trying to rotate the display on an STM32MP157C board from landscape (800x480) to portrait (480x800) mode, I'm experiencing issues. Using the /sys/class/graphics/fb0/rotate interface doesn't actually rotate the display, and using Qt's EGLFS with rotation settings results in only half the screen being rotated properly.Hardware InformationBoard: STM32MP157CDisplay controller: STM32 LTDC (LCD-TFT Display Controller)Screen dimensions: 800x480 (native landscape)Framebuffer: /dev/fb0DRM device: /dev/dri/card0What I've TriedSetting framebuffer rotation via sysfs: echo 1 > /sys/class/graphics/fb0/rotateThis changes the value but doesn't affect display.Using EGLFS KMS config with rotation:QString configPath = "/tmp/eglfs_kms.json";QFile configFile(configPath);if (configFile.open(QIODevice::WriteOnly | QIODevice::Text)) {configFile.write("{\n"" \"device\": \"/dev/dri/card0\",\n"" \"outputs\": [\n"" {\n"" \"name\": \"DPI-1\",\n"" \"mode\": \"480x800\",\n"" \"transform\": \"rot
I understand this will have severely negative impact on performance. But can this be done anyway?If the answer is yes. A further question is, will this break the access to PCIE/NVME SSD for some hardware or software limitation, say, the driver or dma or something else requires DDR SDRAM, and PSRAM won't work for OCTOSPI controller are not in high speed AXI bus matrix. Our use case is a battery powered device, logging tremendous amount of raw adc data to PCIE/NVME SSD. If an external power adapter is plugged, DDR memory will be brought up to access SSD and network. But when the device is logging only and running on battery, we hope to minimize power consumption of Cortex A system. Unfortunately a file system must be used on SSD, otherwise we don't need Linux kernel in this state.
Hello We are currently working on LPDDR4 configuration using the STM32MP257F-DK board. While analysing the setup, we observed that in the stm32mp25-mx.dtsi file, which was generated from STM32CubeMX, certain registers appear to be missing when cross-referenced with the rm0457-stm32mp2325xx-advanced-arm-based-32-64bit-MPUs reference manual.Additionally, we noticed that these registers are being utilized in the ARM-Trusted-Firmware. However, the addresses of the missing registers fall within the reserved space as per the reference manual.We have attached a file detailing the specific registers we found missing from the reference manual. Could you kindly verify and provide guidance on where these registers are defined and how we should configure their values? Thanks & regardsAkshitha Pattem
Hi,I'm trying to write a simple firmware for M33 core to test PWM outputs with TIM8 on STM32MP257FEV-1 board. It is possible to generate output for channels TIM8_CH1, TIM8_CH3 and TIM8_CH4, but as soon as I try to generate complementary outputs (TIM8_CH1N, TIM8_CH3N, TIM8_CH4N) to any of these timer channels, processor gets into HALT state. By this I mean that I've tried to map 6 GPIO pins to 6 complementary channels, because I need my firmware to drive a three-phase motor in the future. I've tried to do it as simple as possible by looking at some similar examples for other processors (e.g using HAL_TIMEx_PWMN_Start function to start complementary channel and so on), since I haven't found anything else for this processor. I'm also pretty aware that in my case there are 3 cores (cores of interest are A35 Linux core and M33 which will run this firmware). It seems that I have problems with Resource Manager and acquiring pins for channel complements, but I used them in
Hello, How could STM32MP257-EV1 in DFU mode, I have followed the steps of STM32MP25 Evaluation boards - Starter Package for Android - stm32mpu,1. install SetupSTM32CubeProgrammer_win64.exe2. Run the “STM32 Bootloader.bat”3. Set the boot switches to the off position (boot from UART/USB).4. Connect the USB type-C (OTG) port (4) to the host PC that contains the downloaded image.5. Insert the delivered microSD card into the dedicated slot (5).6. Connect the USB type-C (power supply) port (1) to the power connector or a host PC, and check the power jumper position.7. Press the reset button (7) to reset the board.but when I check device manager, nothing new shows up at all.attached the picture of STM32MP257-EV1 powered on
Hi STM:I'm developing with developer package and want to add a slot like below PED 0x12 rootfs2 ENV mmc1 0x44A00000 noneorPED 0x12 rootfs2 ENV mmc1 0x44A00000 st-image-core-openstlinux-weston-stm32mp13-disco.root2fs.ext4 About the second caseI have modified layers/meta-st/meta-st-stm32mp/conf/machine/include/st-machine-flashlayout-stm32mp.inc, add below STM32MP_ROOTFS2_LABEL ?= "rootfs2"STM32MP_ROOTFS2_SIZE ?= "1048576"STM32MP_ROOTFS2_IMAGE ?= "st-image-root2fs"PARTITIONS_IMAGES[rootfs2] = "${STM32MP_ROOTFS2_IMAGE},${STM32MP_ROOTFS2_LABEL},,${STM32MP_ROOTFS2_SIZE},FileSystem"STM32MP_ROOTFS2_PROGRAMMER_NAME ?= "rootfs2"FLASHLAYOUT_PARTITION_ENABLE:${STM32MP_ROOTFS2_PROGRAMMER_NAME} = "PED"FLASHLAYOUT_PARTITION_ID:${STM32MP_ROOTFS2_PROGRAMMER_NAME} = "0x15"STM32MP_ROOTFS2_MOUNTPOINT ?= "/usr/rootfs2"ST_ROOTFS2 ?= "1"PARTITIONS_CONFIG[rootfs2] = "${STM32MP_ROOTFS2_IMAGE},${STM32MP_ROOTFS2_LABEL},${STM32MP_ROOTFS2_MOUNTPOINT},${STM32MP_ROOTFS2_SIZE},FileSystem"PARTITION
Dear Support Team,I am using the STM32MP257f-ev1 board. While the Starter Package boots Linux successfully, when I build the kernel using the Developer Package and copy the generated Image.gz, dtb, and lib/modules, the system reaches U-Boot but fails to boot the Linux kernel with the following error:```root '/dev/disk/by-partuuid/e91c4e10-16e6-4c0e-bd0e-77becf4a3582' doesn't exist.```I followed the official wiki instructions here:[https://wiki.stmicroelectronics.cn/stm32mpu/wiki/STM32MPU\_Developer\_Package](https://wiki.stmicroelectronics.cn/stm32mpu/wiki/STM32MPU_Developer_Package)using kernel version 6.6.48.I have some questions:1. The official README suggests running```make O="${OUTPUT_BUILD_DIR}" defconfig fragment*.config```but when I try this, zsh returns the error:```zsh: no matches found: fragment*.config```Therefore, I only ran```make O="${OUTPUT_BUILD_DIR}" defconfig```to proceed. Could this be the reason for the root partition recognition failure?2. How should the fragment\
I didn't change anything in the device tree just compiled the arm-trusted-firmware-v2.4-stm32mp-r2 instead of arm-trusted-firmware-v2.4-stm32mp-r1 and I get the following on UART:PANIC at PC : 0x2ffcfd2bWhat is different between the two versions?
Hi there, I followed the instructions as mentioned below.repo init -u https://github.com/STMicroelectronics/oe-manifest -b refs/tags/openstlinux-6.1-yocto-mickledore-mp1-v24.03.13 (v5.0.3)repo syncgot pyqt5 files from https://github.com/STMicroelectronics/meta-st-pkgrepo-updates/tree/openstlinux-ecosystem-5.0.0/recipes-python/pyqt5and copied them to layers/meta-qt5/recipes-python/pyqt5run DISTRO=openstlinux-weston MACHINE=stm32mp1 source layers/meta-st/scripts/envsetup.sh to get the conf/local.conf fileAll packages installed: “Check OK: all required packages are installed on host.”added IMAGE_INSTALL:append = " python3-pyqt5" to my image in build-openstlinuxweston-stm32mp1/conf/local.confbitbake st-weston image However, I'm encountering the following error:ERROR: Task (/home/abcd/DistributionPackage/layers/meta-openembedded/meta-oe/recipes-support/libiio/libiio_git.bb:do_configure) failed with exit code '1' when i checked error log in that it was mentioned
Hello ST team,our company is evaluating the STM32MP135F-DK to develop a new interface for our displays. This board was given to us by ST at the embedded world exhibition in Nuremberg, Germany. I am not familiar with MPUs and Yocto. I am having a lot of problems getting a simple PyQt5 GUI application (see mySimpleApp.txt) running on the board. I was able to successfully build the SDK and start a simple GTK application using the starter package.These are some of the steps I took:First, I used the starter package and installed there everything that i needed to run this application:apt install python3-pyqt5 qtwaylandcopied my application to /home/westonrun: su -l weston -c "env QT_QPA_PLATFORM=wayland-egl python3 /home/weston/mySimpleApp.py"These is the Error i get: [ 1] Failed to open device: No such file or directory, Try again...[ 2] Failed to open device: No such file or directory, Try again...[ 3] Failed to open device: No such file or directory, Try again...[ 4] Failed to
HelloI want to remove the vendorfs and userfs from the ev board, so I modified the tsv file just like this:after program the system of ev board, it looks like the rootfs cannot start up because the linux cannot recognize the rootfs partition:the uuid of rootfs-a partition used by linux is not correct, how to correct the uuid?
Hello, Im trying to follow the ST getting started guide for my STM32MP157F-DK2, currently at this part: https://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP1_boards/STM32MP157x-DK2/Develop_on_Arm%C2%AE_Cortex%C2%AE-A7/Modify,_rebuild_and_reload_the_Linux%C2%AE_kernelSo, I followed every instruction, but I just cant find the BSP file mentioned, the en.SOURCES-stm32mp1-openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06.tar.gzI have ofcourse followed the link provided, but it leads me to this: https://www.st.com/en/embedded-software/stm32mp1dev.html#get-softwarewhich is the same address from which I downloaded the SDK in a previous section of the guide. I have looked for this file in the SDK, and in the Distribution package I later cloned from git. I can not find it, and I dont know how to continue with the guide. My knowlegde about Linux and mainly Yocto is limited, and I am mainly going through this to learn. I would love to discover my mistake is a silly one, but cu
Dear ST Developer Support, I want to flash st-android-13.0.0-2024-07-31-stm32mp257f-ev1-emmc-starter images, how can I flash it, could you provide some guides? thank you so much.
Hi All,We bought 3 STM32MP157D-EV1 boards (https://www.st.com/en/evaluation-tools/stm32mp157f-ev1.html)While running in it as it is out of the box, we have found out that on-board STLink-V2.1 doesn't work at all when connected to Win11.We've installed latest STM32CubeProgrammer and it actually installed latest STLink USB drivers (VCP and STLink) but despite all our efforts STLink doesn't work (LD06 doesn't glow) and Win11 Device Manager flags it as under error:Is there solution to this issue ?
Hello There,We are using the board stm32mp257-ev1. Which has "STPMIC25A".I want to change voltage of LDO2 and BUCK4 on boot permanently (NVM of stpmic25A).Can i change these supply from stm32mp257-ev1 board itself ? If yes, How ? Thanks and Regards,Ishan
i am trying flash in SD card for STM32MP157F-DK2. I am getting the error as mentioned below Port configuration: parity = even, baudrate = 115200, data-bit = 8, stop-bit = 1.0, flow-control = off16:56:09 : Activating device: OK16:56:09 : Board : --16:56:09 : Chip ID: 0x50016:56:09 : BootLoader protocol version: 4.016:56:11 : Start Embedded Flashing service16:56:12 : Memory Programming ...16:56:12 : Opening and parsing file: tf-a-stm32mp157f-dk2-usb.stm3216:56:12 : File : tf-a-stm32mp157f-dk2-usb.stm3216:56:12 : Size : 220.82 KB16:56:12 : Partition ID : 0x0116:56:12 : Download in Progress:16:56:38 : File download complete16:56:38 : Time elapsed during download operation: 00:00:26.38816:56:38 : RUNNING Program ...16:56:38 : PartID: :0x01Start operation done successfully at partition 0x0116:57:09 : Timeout error occured while waiting for acknowledgement.16:57:40 : Timeout error occured while waiting for acknowledgement.16:58:11 : Timeout error occured while waiting for acknowledgement
Dear ST team,We have verified the following issues on the STM32MP257-EV1 platform, following the official guidance:https://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP2_boards/STM32MP257x-DK/Develop_on_Arm_Cortex-M33While creating a new project using STM32CubeIDE for the MP2 series, we encountered several issues and inconsistencies:1. OpenAMP code generation failureWhen enabling OpenAMP middleware via STM32CubeIDE, the tool does not generate the expected or necessary source files correctly, resulting in incomplete or non-functional projects.2. Unexpected resource_table requirementEven when creating a default Cortex-M33 project (non-secure) with minimal settings, the build process seems to expect a resource_table, which is typically associated with Linux-side communication. However, the generated ELF and source files are not intended for OpenAMP communication, causing confusion.3. Project structure mismatchThe automatically generated project structure from STM32CubeIDE differs sign
Hello,I’m unable to create a new project for the STM32MP2 (STM32MP251CAL3) in STM32CubeMX (Version 6.14.1). After selecting the MPU and clicking Start Project, I choose the TrustZone feature—but nothing happens. I can see a “*” appear next to “Untitled” in the top left, but no further dialog appears.When I try to select an MCU, I receive the warning:“Project Untitled has been modified would you like to save the projekt?”If I click Yes, the mouse cursor turns into the blue loading spinner and nothing else happens.In the Output window, I see: Creating: STM32MP251CALx Initializing: STM32MP251CALx Environment: STM32CubeMX Even when editing an existing project, I can click options in Pinout & Configuration, but the cursor just shows the blue loading spinner and nothing else occurs.Could you please help me resolve this?
Hello ST Community,I am currently working with the STM32MP157F-DK2 development kit and exploring RTOS options for the Cortex-M4 core. While FreeRTOS is officially supported through STM32CubeIDE, I would like to know if ThreadX (Azure RTOS)is officially supported and available for use on the Cortex-M4 core of the STM32MP157F-DK2.Specifically, I am looking for:Official support or examples of ThreadX running on the M4 core of this platformBSP or middleware integration through STM32CubeMX or STM32CubeIDEAny known limitations, configuration notes, or documentationI understand that ThreadX is well-integrated in STM32H7 and STM32U5 series, but it is unclear whether the same level of support is available for the STM32MP1 series, particularly the M4 core.If anyone has successfully used ThreadX on the STM32MP157F-DK2 (Cortex-M4), or if ST officially supports this configuration, I would appreciate your insights or pointers to relevant resources.Thank you in advance.
Hi,i want to use the secure storage feature of our custom STM32MP151CAA based platform. Therefore i have to write a HUK to the OTP as explained in the STM32MP1 wiki article. But how do i generate a HUK? What exactly do i have to program into the OTP?Thanks in advance,Börje
Hi,i want to enable optee-os for our STM32MP151CAA based platform. We use upstream TF-A, OPTEE and Barebox-Bootloader (very similar to u-boot), not from the yocto st layer. Yocto version is scarthgap, OPTEE version 4.1.I was able to switch from sp_min to optee for the AARCH32_SP and to let TF-A call OPTEE (BL32):NOTICE: CPU: STM32MP151CAA Rev.Z NOTICE: Model: xxx NOTICE: BL2: v2.10.4(release):devtool-patched-dirty NOTICE: BL2: Built : 16:23:33, Apr 26 2024 NOTICE: BL2: Booting BL32 I/TC: Early console on UART#4 I/TC: I/TC: Pager is enabled. Hashes: 2976 bytes I/TC: Pager pool size: 76kB I/TC: Non-secure external DT found I/TC: Embedded DTB found I/TC: OP-TEE version: 4.1.0-8-g8ab3c8212-dev (gcc version 13.3.0 (GCC)) #1 Fri Nov 15 13:08:46 UTC 2024 arm I/TC: WARNING: This OP-TEE configuration might be insecure! I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html I/TC: Primary CPU initializing I/TC: RCC is non-secure I/TC: WARNING: All
Dear community,we use STM32MP1 SoC in some of our projects. Normally, we use eMMC card, so we use just two DIP switch positions: 000 (for uploading images into eMMC) and 010 (for booting from eMMC). We utilize SD card after booting from eMMC for storing our data. Once I prepared bootable SD card and tried booting from SD using DIP switch 101 position. And nothing happened. As long as we setup pins for SD card (in CubeMX, for example) and build images, Linux, U-boot and DTB become updated, so LInux and U-boot know, what actual pinout of SD card is. I wonder, at the first boot stage while BootROM selects media to proceed booting: eMMC, SD, USB (according to DIP switch position) how does it know actual SD (or eMMC) card pinout ? I miss something important, please, guide me.
Hi, I have a custom board with a parallel RGB display connected to it that works OK when using pixman.If I enable the galcore.ko module, weston fails; [15:27:38.101] weston 10.0.0 https://wayland.freedesktop.org Bug reports to: https://gitlab.freedesktop.org/wayland/weston/issues/ Build: 10.0.0 [15:27:38.102] Command line: /usr/bin/weston --modules=systemd-notify.so --log=/home/weston/weston.log [15:27:38.102] OS: Linux, 5.15.67, #14 PREEMPT Mon Sep 4 17:47:46 CEST 2023, armv7l [15:27:38.102] Flight recorder: enabled [15:27:38.103] Using config file '/etc/xdg/weston/weston.ini' [15:27:38.103] Output repaint window is 10 ms maximum. [15:27:38.104] Loading module '/usr/lib/libweston-10/drm-backend.so' [15:27:38.121] initializing drm backend [15:27:38.121] Trying logind launcher... [15:27:38.166] logind: session control granted [15:27:38.195] using /dev/dri/card0 [15:27:38.195] DRM: supports atomic modesetting [15:27:38.195] DRM: supports GBM modifiers [15:27:38.195] DRM: suppo
I will post this in the software-related section.
Hi,I am using the stm32mp157-disco board and trying to mount one of my sd card partitions to my linux VFS at boot time with systemd. I have modified the file /etc/fstab, adding the following entry:# <file system> <mount pt> <type> <options> <dump> <pass>/dev/mmcblk0p8 /boot ext4 defaults,nofail 0 2but somehow systemd cannot mount the partition before the timeout. I've been unable to change the timeout for the disk mounting by adding x-systemd.mount-timeout under the <options> term of the entry. It seems that Openstlinux has been able to ignore the params in /etc/fstab.However, I can mount the same disk partition with command:mount /dev/mmcblk0p8 /bootafter the login. So I am not sure what I have missed. Can s
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.