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
Hello, I am currently trying to being up the STM32MP257F-EV1 development board and running into a problem. I am using CubeIDE following the following guide: https://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP2_boards/STM32MP257x-EV1/Develop_on_Arm%C2%AE_Cortex%C2%AE-M33/Modify,_rebuild_and_reload_the_firmware.Specifically I am on step 8 when you have to create the run and debug configurations. I followed the guide and created the configurations correctly but now when I run the example application (OpenAMP_ttyecho_CM33_NonSecure) I get the following error:Error in final launch sequence:Failed pre launchFailed pre launchFirmware remoteproc load failed, please:1. make sure that /lib/firmware on your target has space2. make sure that /lib/firmware has write access> you can open a Console View for this.. Any help would be greatly appreciated. Thanks! Carson
how to set up the meta-qt5 toolchain, cross compilation and Qt creator in order to deploy Qt applications to a target STM32MP157d-DK1 from a linux host machine.please give me step wise instruction on how to do
Hi there TouchGFX team!I've a STM32MP135F-DK and I would like to run it using QT, where do I start?QT seems to have several examples but there's a lot of apps that I don't even know where to start. Thanks a lot in advance!
I'm testing STM32MP157A for our new projects. The MPU VCC is 1V8, USB is 3V3. Debugger is connected to two SWD pins. One of first test is:boot into DFU loader, upload simple code to 0x2ffc2500:S_GPIO_ALT(GPIOA,13,2); S_GPIO_ALT(GPIOA,14,2); RCC->MCO1CFGR = 0x10f0; RCC->MCO2CFGR = 0x10f0; for (;;);S_* are obvious macros setting MODER and ALT registersthe code is uploaded by dfu-util -d 0483:df11 -a 1 -D boot_test.stm32So far so good, code is started, I can see 4 and 25MHz at PA13/14.in openocd I did: > bp 0x2ffc25e0 4 hw breakpoint set at 0x2ffc25e0 stm32mp15x.cpu0 rev 5, partnum c07, arch f, variant 0, implementor 41 stm32mp15x.cpu0: MPIDR level2 0, cluster 0, core 0, multi core, no SMT target halted in ARM state due to breakpoint, current mode: Supervisor cpsr: 0x400001d3 pc: 0x2ffc25e0 MMU: disabled, D-Cache: disabled, I-Cache: disabledIt seems ok. I tested AXI access, confirmed that I'm in TZ secure state, can read even ROM firmware.Openocd polls MP1 every 100ms by 2
I'm playing DOOM on my STM32-Computer (STM32MP151). It's playable for a smal resolution (320x240). For higher resolution, it's not playable.But I think I have the reason why it's slower for higher resolutions. MESA: error: ZINK: failed to choose pdev libEGL warning: egl: failed to create dri2 screen These are the errors and warnings I got when I play DOOM. They are graphics related. So what software do I need to install to make the 3D rendering more proper?I'm guessing that it's the following for STM32MP15X, but what are the name of the .deb packages?OpenGL® ES 1.1 and 2.0OpenVG® 1.1EGL™ 1.4https://wiki.st.com/stm32mpu/wiki/GPU_internal_peripheral#On_STM32MP1-linesNOTE: The DOOM engine is not real 3D. It's pseudo 3D, called 2.5D.
As the headline suggests, I would like to know if ST has a proper API documentation for libiio.All I found was this : https://wiki.st.com/stm32mpu/wiki/How_to_use_the_IIO_user_space_interfaceBut I am not interested in shell commands and scipts.There is the option of accessing iio via the file system interface, i.e. file read() / write() calls to access it via /sys/bus/iio/devices, but this is not my preferred route.Does have ST something like this ?https://wiki.analog.com/resources/tools-software/linux-software/libiio_internalsAnd if not, is this AD wiki also valid for ST's implementation ?
HiI plan to interface the MT9M001 CMOS sensor (Parallel Interface) with STM32MP135F-DK, but the development board comes with the MIPI CSI2 Interface. Please guide me as to the process of integration and using OpenCv. Thanks
We are using STM32MP!57A processor in our custom board. In this we are unable to read the internal ADC values in our cards. Actually, we initialize the internal ADC pins in cortex-M4 core with support of STM32CUBEMX and debug in CubeIDE1.9.0V. We get all on board reference voltages, Analog voltages at channel pins. Unable to read in software, may be what could be the issue?regards Srikanth
Hello everybody,I am developing a custom board strongly inspired by the STM32MP157D-DK1, except that I use a parallel DPI RGB on 24bit display.I use openstlinux-6.1-yocto-mickledore-mpu-v24.06.26.The frequency of "LTDC_CLK" changes by itself after waking up from "deep suspend".Before putting it into "deep suspend", I measure 31.65Mhz which corresponds well to what is expected for "innolux,at070tn92"But after waking up, i measure 86.21Mhz and this is completely outside the display specifications.All other frequencies changed in the same proportion "HSYNC", "VSYNC", ...Here is the configuration in the kernel and u-boot DTS file : panel_at070tn92: panel_at070tn92@0 { compatible = "innolux,at070tn92"; enable-gpios = <&gpioi 10 GPIO_ACTIVE_HIGH>; power-supply = <&vdd>; status = "okay"; port@0 { reg = <0>; panel_in: endpoint { remote-endpoint = <&ltdc_ep0_out>; }; }; }; &ltdc{ pinctrl-names = "default
Hi!When I use this device tree nodes, or very similar. I get this error code:As you can see, I'm getting this kind of errors. I don't know if the Device Tree or the IC chip is faulty. I would like to know if there are any ways to find out if the IC chip is the cause of the problem or if there is any way for me to find out if the USB2514B is faulty. Can you give me any suggestions?I have checked the hardware configuration and it seems to be in order. I have checked the voltage levels. It seems very OK as well. All VDD are 3.3VAlla REM[0:1] is 0VVBUS_DET is 3.3VRBIAS is about 1.2V because there is a 12 kOhm pull-down resistor thereAll PRTPWR[0:3] are 0VAll SEL[0:1] are 0VTEST is connected to GNDAll OSC_N[0:3] are closed with their pull-up on about 2.5VRESET_N is 3.3VPLLFILT is connected to a capacitor to GNDXTALIN is 0.63VXTALOUT is 0.64VUSBDM_UP is 0VUSBDP_UP is 3VOnce RESET_N goes low, the error codes in Linux terminal will re-write the error codes again. So I guess that the RESET
I am trying to flash custom board which uses an eMMC storage device. The custom board uses STM32MP133F MPU.While flashing I get the error:Message from Embedded Flash Loader : <partition-name> (0x10): not aligned address : 0x988000 on erase size 0x80000Received PhaseID == 0xFF, system is going to reboot What I would like to understand who and why enforces the 0x80000 alignment size for partitions?Can this me configured somehow?On the eMMC manufacturer data sheet I do not see any restrictions for 512 KiB alignment. Best regards,
Hi,I tried to update the DTS to make use of the adapter but unfortunately without success. These are the change I made:hdmi-out { compatible = "hdmi-connector"; type = "a"; port { hdmi_con: endpoint { remote-endpoint = <&adv7533_out>; }; }; }; &dsi { phy-dsi-supply = <&reg18>; #address-cells = <1>; #size-cells = <0>; status = "okay"; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; dsi_in: endpoint { remote-endpoint = <&ltdc_ep0_out>; }; }; port@1 { reg = <1>; dsi_out: endpoint { remote-endpoint = <&adv7533_in>; }; }; }; }; &i2c2 { pinctrl-names = "default", "sleep"; pinctrl-0 = <&i2c2_pins_a>; pinctrl-1 = <&i2c2_pins_sleep_a>; i2c-scl-rising-time-ns = <185>; i2c-scl-falling-time-ns = <20>; status = "okay"; /delete-property/dmas; /delete-property/dma-names; hdmi-transmitter@3d { co
Hi,I am now adapting the stm32mp13 bare metal bootloader FSBLA_Sdmmc1 for stm32mp157, and have achieved good results. However, since the sd card partition table of stm32mp13 is different from the common gpt partition table, the full function of this bootloader cannot be fully utilized. I guess it is due to the sd external loader. Therefore, I hereby apply to the STMicroelectronics support teams for the source code including the following content to adapt my subsequent content1.sd external loader2.emmc external loader3.snor external loaderThank you, the following is my github repository for storing the bootloader and program of mp15https://github.com/youngsea2000/STM32MP1xx_Baremetal
Hello everyone.I have a problem compiling my Yocto for stm32mp157c-dk2 project. I run the bitbake command from build "bitbake -e core-image-minimal".I get the error message:Error, the PACKAGE_ARCHS variable (all any noarch ${PACKAGE_EXTRA_ARCHS:tune-cortexa7}cortexa7 stm32mp157c_dk2) for DEFAULTTUNE (cortexa7) does not contain TUNE_PKGARCH ().Toolchain tunings invalid:Tuning 'cortexa7' has no defined features, and cannot be used.I tried to solve without success.Anyone know how to solve it?ThanksMikiserf
Hello,I have a STM32MP2 platform with A/B partitioning for TF-A, metadata and FIP.I'm looking for a way to generate a test FIP and install it in FIP-B bank, have TF-A load it, if this FIP contains a bad signature or other error that will prevent Uboot or OPTEE containing this FIP from loading and launching, my platform reboots and TF-A reloads the functional FIP (FIP-A) and boots the platform correctly. the metadata.bin file generated by default in the TF-A recipe (meta-st-stm32mp) is installed in both partitions A and B, and both always load FIP-A!Thank you !
Hi ST Team,Hi i am trying to add the x11 support for Stm32mp1, but how to setup i do not know.* **st-example-image-x11** (with **openstlinux-x11** distro):Image which demonstrates an example of Basic X11 usage.* **st-example-image-xfce.bb** (with **openstlinux-x11** distro):Image which demonstrates an example of X11 usage with XFCE as UI.i found this line into README,how to to this.
Dear,I'm starting with OP-TEE on STM32MP15x line. I bring-up the board as described here and built the optee_example_hello_world as described here. However, I got the error code below:TEEC_Opensession failed with code 0xffff0008 origin 0x3Checking the boot messages, I realized that the profile system_services is used. This way, it is not possible to run any TA. So, is there any already compiled image for STM32MP157C-DK2 board that allows running a TA or do I have to modify the image to enable it? Thanks!
We are doing a custom board bring-up and currently trying to display video on our display device. We use CubeMx to generate the device tree for our project and some user code there. we can see DSI data lanes signals but not DSI clk signal. We did some comparison with stm32mp157f dk2 board and we fond the follwoing when we apply this command to check the clocks in the kernel:Note: the image version is:openstlinux-5.15-yocto-kirkstone-mp1-v24.07.17with a BSP layer on top from somlabs:https://github.com/SoMLabs/meta-somlabs cat /sys/kernel/debug/clk/clk_summary | grep -i dsi The results from the dk2 board:The result form our custom board:I have two questions:1- How can I enable the dsi and the dsi_px? (as the enable count is zero here)2- How to enable the ck_dsi_phy in my kernel to be used? (like what is shown with the dk2)Thanks in advance!
Hello,I have a custom STM32MP131AAE6 board and it has a 7GB eMMC storage.I am using Yocto (mickledore) as a build system.I want to allocate 2GB for my rootfs-a and 2GB for my rootfs-b.I have no issue with automatically generating a FlashLayout for 2 partitions for bootfs, rootfs and userfs.In Yocto (meta-st-stm32mp/conf/machine/include/st-machine-storage-device-stm32mp.inc), there is:# 32 GbitDEVICE_MAX_OFFSET:EMMC ?= "0x10000000"This limits eMMC to 4GB.So, I set it to none as done for SDCARD config:# No limit for SDCARDDEVICE_MAX_OFFSET:SDCARD ?= "non" It generated a FlashLayout that looks like:#Opt Id Name Type IP Offset Binary- 0x01 fsbl-boot Binary none 0x0 arm-trusted-firmware/tf-a-stm32mp131a-mm-mx-usb.stm32- 0x03 fip-boot FIP none 0x0 fip/fip-stm32mp131a-mm-mx-optee-emmc.binP 0x04 fsbl1 Binary mmc1 boot1 arm-trusted-firmware/tf-a-stm32mp131a-mm-mx-optee-emmc.stm32P 0x05 fsbl2 Binary mmc1 boot2 arm-trusted-firmware/tf-a-stm32mp131a-mm-mx-optee-emmc.stm32P 0x06 metadata1 FWU_
Hello,We are using st-image-core from recipes-st in yocto and I'm removing some packages from the build that we don't really need. While going through the list, I have found that apt and dpkg are being built and I would like to remove them from my image.I have tried using SKIP_RECIPE[apt] and SKIP_RECIPE[dpkg] in the local.conf file, but all I get is an error saying they are dependencies:ERROR: Required build target 'st-image-core' has no buildable providers. Missing or unbuildable dependency chain was: ['st-image-core', 'apt']ERROR: Required build target 'st-image-core' has no buildable providers. Missing or unbuildable dependency chain was: ['st-image-core', 'dpkg']I have been digging through the recipes and I couldn't find the dependency for those two packages. Is there any way to remove them from the image?Thank you.
Hello,I am trying to generate output with adjustable pulse width using One Pulse mode.The output pin is in a Pull-Up state, with an initial state of High. When One Pulse mode is activated, it outputs a Low signal for the specified duration.However, there is an issue.I expected the output to immediately drop to Low when the timer starts, but there is a delay of approximately 820ns before the One Pulse output is generated.Is there a solution to this?I am attaching my code.Thank you in advance.* Timer source Clock : 200MHz static void MX_TIM5_Init(void) { /* USER CODE BEGIN TIM5_Init 0 */ /* USER CODE END TIM5_Init 0 */ TIM_MasterConfigTypeDef sMasterConfig = {0}; TIM_OC_InitTypeDef sConfigOC = {0}; /* USER CODE BEGIN TIM5_Init 1 */ /* USER CODE END TIM5_Init 1 */ htim5.Instance = TIM5; htim5.Init.Prescaler = 1-1; htim5.Init.CounterMode = TIM_COUNTERMODE_UP; htim5.Init.Period = 1500-1; htim5.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; htim5.Init.AutoRelo
Even if I route the differential pairs, one pair will always be longer than the other.Should I route an extra path, like a sawtooth or tromebone on the shortest pair to make booth differential pair equal in length?I see that the STM32MP1 dev-kit does not use this, either on DDR or Gigabit Ethernet, but I have heard that it's recommended to make sure that all differential pairs have the same length.HDMI:HDMI Gigabit Ethernet:Gigabit EthernetUSB OTG: USB OTG 1 USB OTG:USB OTG 2DQS1:DQS1DQS0:DQS0DDR CLK:DDR_CLK
I created a st-image-qt image using the STM32MP Distribution package and X-LINUX-QT add-on for the STM32MP157F-DK2 board.I could flash this image using the dd command in Linux and my target board is running correctly.On the other side, I created a qt quick app using qt 6.7.3(which I could test ok using qt creator) and now I need to add this qt app in my st-image-qt image. I can bitbake this custom recipe doing "bitbake mygui"I created the custom layer and a custom recipe and added this custom layer to my bblayers. Then, I built the image again with this custom recipe and it worked ok.The problem is that I'm expecting to find this qt app inside my bin directory, but I can't see it. SUMMARY = "This is the GUI for Hespect Software medical device" DESCRIPTION = "Recipe created by bitbake-layers" LICENSE = "CLOSED" SECTION = "Mysection" DEPENDS += " qtbase \ qtdeclarative-native \ qtdeclarative \ qtquick3d \ qtcharts" RDEPENDS_${PN} += "qtwayland" EXTRA_OECMAKE += "-DCMAKE_PREF
Dear ST,Is there any roadmap for the next release of OpenSTLinux based on latest LTS kernel 6.6 ?Thanks in advancePatrick
This post can be removed as I found out what was wrong...But otherwise when you want to do DDR tuning some experienced quirks:- RTFM twice!- Make sure the target board is in Engineering Boot Mode!!- Notices that latest CubeMX and STM32CubeProgrammer (2.17) does not find the path to the .._CLI even after setting it in CubeMX. Using an older version (2.16) did work.- Besides the wiki, it is necessary to check the community too just to make sure you have the latest info. In the wiki there was mention of the U-Boot SPL to use. Then moment later the community post revealed that it was depreciated. So I got a copy of the DDRFW package from GitHub.- The DDRFW package could generate a problem when building the software. I traced it back to a python script used as post build command. Installing `python-is-python3` solved that problem. I managed to get the firmware running using STM32CubeIDE and debug mode. The use of the binary with CubeMX and CubeProgr (Tools/DDR Test Suite) needs to be t
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.