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
Hi I have used the "bitbake -c populate_sdk st-image-weston" command to generate an updated SDK with OpenCV and ZerMQ packages. The SDK is generated successfully.The issue is when I want to use this SDK in STM32CubeIDE, since I can't seem to find the SDK in "OpenSTLinux SDK Manager" under Window ==> Preferences. The manager can easily find the standard SDK which can be downloaded from the website. I suspect the issue to be the version name, since the updated SDK outputs "4.0.4-snapshot" instead of "4.0.4-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23" when entering:PC >> echo $OECORE_SDK_VERSIONWhat can I do to fix this? :)(OpenSTLinux SDK Manager unable to see SDK)(Updated SDK folder)
Hi all,We design the custom board use ST32MP157 base on the design of STM32MP157-DK2 kit. We use the SD card for booting. The image and device tree is custom base on example of STM32MP157-DK2 kit. The board has a issue when booting via SD card. This is the booting logNOTICE: CPU: STM32MP157DAA Rev.ZNOTICE: Model: STMicroelectronics custom STM32CubeMX board - openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23ERROR: nvmem node board_id not foundINFO: PMIC version = 0x21INFO: Reset reason (0x15):INFO: Power-on Reset (rst_por)INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe2000INFO: FCONF: Reading firmware configuration information for: stm32mp_ioINFO: Using SDMMCINFO: Instance 1INFO: Boot used partition fsbl1NOTICE: BL2: v2.6-stm32mp1-r2.0(debug):()NOTICE: BL2: Built : 09:44:59, Jun 13 2023WARNING: Failed to access image id=3 (-2)ERROR: Unable to find a metadata partitionWARNING: Failed to set reference to image id=12 (-2)WARNING: loading of FWU-Metadata failed, using Bkup-
Hello, For some time I testing STM32MP135f with 1GHz CPU clocking. I was able to generate optee OpenStLinux but I see a lack of CPU efficiency. I'm curious what is the difference in efficiency between trust and optee. If I use the trusted option the unit will be more efficient?
We are trying to bringup the Wi-Fi module connected over the sdmmc3 line with the STM32MP157F based custom board. But it seems, when enabling the sdmmc3 lines on the kernel and u-boot dts files, the kernel boot fails on "Waiting for Keymaster device" as seen in the logs below:This issue occurs only when the sdmmc3 is enabled in the dts, otherwise the boot is successful.Cannot see where to look for the error!
Hi all,I own an STM32MP157-DK1. I am trying to setup the TFT display ILI9341 on this discovery kit. I am familiar with Bitbake and Yocto. Are there any minimal images available that I can bake and dump on my discovery kit (SD card) to test my display unit. My end goal is to use Qt to develop UI for this display unit.If there are no images available that can support ILI9341, please point me to resources that I can use to configure my custom image that can support this display unit. Looking forward to your suggestions and inputs.@Kevin HUBERtagging you because I saw your response on a similar post.Best,Vishnu
Hi!I've been running an embedded linux (built with Buildroot) on a STM32MP157F-DK2. I need to use both USART3 and UART7 ports to interact with other devices.I've used it flawlessly with only USART3 enabled in linux's device tree for months. Recently, I've enabled UART7 in the device tree and USART3 suddenly stopped working (always getting a "resource busy" message when writing or reading from it).Rolling back the UART7 modification fixes the issue every time. No error messages appear during build or on boot.Here's a sample of the .dtsi file: &uart4 { pinctrl-names = "default", "sleep", "idle"; pinctrl-0 = <&uart4_pins_a>; pinctrl-1 = <&uart4_sleep_pins_a>; pinctrl-2 = <&uart4_idle_pins_a>; status = "okay"; }; &uart7 { pinctrl-names = "default", "sleep", "idle"; pinctrl-0 = <&uart7_pins_c>; pinctrl-1 = <&uart7_sleep_pins_c>; pinctrl-2 = <&uart7_idle_pins_c>; status = "disabled"; }; &usart3 { pinctr
Hello,Searched around but couldn't find a similar issue.Please point me to one if one exist. I have a custom board with the stm32mp157c mounted. Board works fine, trying to communication between the m4 and a7 processor using the rpmsg devices. I have the example compiled but when I run it either of the rpmsg0 or 1 devices are present under /dev. If I take a precompiled example of the tty echo it runs fine.Log from my build[40144.602678] remoteproc remoteproc0: powering up m4[40144.612280] remoteproc remoteproc0: Booting fw image OpenAMP_TTY_echo_CM4.elf, size 2367104[40144.623913] mlahb:m4@10000000#vdev0buffer: assigned reserved memory node vdev0buffer@10042000[40144.631840] virtio_rpmsg_bus virtio0: rpmsg host is online[40144.631970] virtio_rpmsg_bus virtio0: creating channel rpmsg-tty addr 0x400[40144.644298] mlahb:m4@10000000#vdev0buffer: registered virtio0 (type 7)[40144.650201] remoteproc remoteproc0: remote processor m4 is now up[40144.656732] virtio_rpmsg_bus virtio0: creating c
Hello!I make my M4 chip communicate with the A7 with openAMP from the example code.I send the data from M4 and currently A7 doesn't do anything.code is like belowchar buffer[512];//in the 1ms interruptif(currentPosition < 512){currentPosition = sprintf(buffer+currentPosition, %s, "someData");SendDataFlag = true;}//in the code for handle openAMP communicationif(SendDataFlag){VIRT_UART_Transmit(&huart0, buffer, currentPosition);currentPosition = 0; SendDataFlag = false;}In debugger, the currentPosition changes a lot when I didn't receive the data from A7 at all.what is happening to Transmit function in this scenario?My assumption is , VIRT_UART_Transmit send data to M4 buffer and replace the data to new one after it reached buffer's limit.please clarify this because, I don't want the buffer cause any problems.thanks!
Hi there, I am working on a custom board based on OSD32MP157F. The pinout is very similar to the stm32mp157f-dk2 with the main difference that the Murata LBEE5kL1BX-883 is connected to sdmmc3 instead of sdmmc2 and that there is no ethernet peripheral on the board. I used the stm32mp157f-dk2.dts as a starting point and modified the pinctl to match the pinout of the board. The image is made with buildroot. I configured the sdmmc3 according to this and this guides. Although all tested peripherals work as intended, including an eMMC connected to sdmmc2 the wifi module is not responsive and returns a firmware load error on the bootlog 1.933870] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43430-sdio for chip BCM43430/1 [ 1.942625] brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac43430-sdio.st,stm32mp157f-dk2.bin fa2 [ 1.942926] cfg80211: Loading compiled-in X.509 certificates for regulatory database [ 1.953593] brcmfmac mmc0:0001:1: Direct firmware load for brcm/brcmfmac4
Hi,I would like to know STM32MP157F supports Windows 10 IoT Enterprise 2021 LTSC Operating System?
Hi,can some share dts configuration which allows you to bring up the PWM, timer etc?I do something like pwm_regulator { compatible = "pwm-regulator"; pwms = <&{/soc/timer@40002000/pwm} 3 500000 0>; regulator-min-microvolt = <1016000>; regulator-max-microvolt = <1114000>; regulator-name = "vdd_logic"; /* Voltage Duty-Cycle */ voltage-table = <1114000 0>, <1095000 10>, <1076000 20>, <1056000 30>, <1036000 40>, <1016000 50>; }; plus &timers4{ status = "disabled"; /* USER CODE BEGIN timers4 */ /delete-property/dmas; /delete-property/dma-names; /* USER CODE END timers4 */ pwm{ pinctrl-names = "default", "sleep"; pinctrl-0 = <&tim4_pwm_pins_mx>; pinctrl-1 = <&tim4_pwm_sleep_pins_mx>; status = "okay"; /* USER CODE BEGIN timers4_pwm */ timer@3 { status = "okay"; }; /* USER CODE END timers4_pwm */ }; }; but nothing ap
I am trying to boot my STM32MP153C over cubeProgrammer to load data in EMMC0.Unfortantly the programm is failing in OPTEE Part (Second file to download). Here is the UART log:NOTICE: CPU: STM32MP153CAA Rev.ZNOTICE: Model: STMicroelectronics STM32MP157C-EV1 STM32CubeMX board - openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23INFO: PMIC version = 0x21INFO: Reset reason (0x15):INFO: Power-on Reset (rst_por)INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe2000INFO: FCONF: Reading firmware configuration information for: stm32mp_ioINFO: Using USBINFO: Instance 2INFO: Boot used partition fsbl1NOTICE: BL2: v2.6-stm32mp1-r2.0(debug):()NOTICE: BL2: Built : 12:50:03, Jun 2 2023INFO: BL2: Doing platform setupINFO: RAM: DDR3-DDR3L 32bits 533000kHzINFO:  
Hello, I am new to yocto project, I am trying to build a yocto project based on the stm32mp1(a development board from a vendor based in Germany). I am building core-image-full-cmdline. My Ubunutu version is Ubuntu 22.04.2 LTS.My build configurations are as follows:BB_VERSION = "2.0.0"BUILD_SYS = "x86_64-linux"NATIVELSBSTRING = "universal"TARGET_SYS = "arm-poky-linux-gnueabi"MACHINE = "stm32mp1"DISTRO = "poky"DISTRO_VERSION = "4.0.10"TUNE_FEATURES = "arm vfp cortexa7 neon vfpv4 thumb callconvention-hard"TARGET_FPU = "hard"metameta-pokymeta-yocto-bsp = "kirkstone:1e6f147c686a91b9a5996f529e32ee1852f946b7"meta-oemeta-python = "kirkstone:bdad2a789e30703a825b876279665720d06d55dc"meta-st-stm32mp = "kirkstone:ca501bd7dbe023682903ceedddaacd940b0898f4"After bitbake command, I am getting the following error:ERROR: openocd-stm32mp-native-0.11.0+dev.AUTOINC+fdf17dba56-r0 do_configure: ExecutionError('/home/ahamod/BBB/build-stm32mp1/tmp/work/x86_64-linux/openocd-stm32mp-native/0.11.0+dev.AUTOIN
Since stm32mp157 node descriptions are inherited from stm32mp153 and stm32mp151.
Hi,I am confused how to correctly set u-boot environment variables in a system based on OpenST Linux 4.1 and follows DK2 settings.The partition layout looks like this:#Opt Id Name Type IP Offset Binary - 0x01 fsbl1-boot Binary none 0x0 arm-trusted-firmware/tf-a-stm32mp157f-nexio-usb.stm32 - 0x03 fip-boot Binary none 0x0 fip/fip-stm32mp157f-nexio-trusted.bin P 0x04 fsbl1 Binary mmc0 0x00004400 arm-trusted-firmware/tf-a-stm32mp157f-nexio-sdcard.stm32 P 0x05 fsbl2 Binary mmc0 0x00044400 arm-trusted-firmware/tf-a-stm32mp157f-nexio-sdcard.stm32 P 0x06 metadata1 Binary mmc0 0x00084400 arm-trusted-firmware/metadata.bin P 0x07 metadata2 Binary mmc0 0x000C4400 arm-trusted-firmware/metadata.bin P 0x08 fip-a FIP mmc0 0x00104400 fip/fip-stm32mp157f-nexio-trusted.bin PED 0x09 fip-b FIP mmc0 0x00504400 none PED 0x0A u-boot-env Binary mmc0 0x00904400 none P 0x10 bootfs System mmc0 0x00984400 st-image-bootfs-openstlinux-weston-stm32mp1-nexio.ext4 P 0x11 vendorfs Fi
Hi ~I'm using STM32MP157C MPU with my custom board and trying to modify u-boot for my board. https://wiki.st.com/stm32mpu/wiki/How_to_cross-compile_with_the_Distribution_Package#Modifying_the_U-BootThis wiki article has been describe about "Modifying the U-boot".Adding simple log like the example works fine. But, If I try to change u-boot prompt string using "make menuconfig"it seems like that changed prompt string didn't apply.How to solve it?Thanks.
Hi,I'm looking into creating sound cards with STM32MP135F-DK discovery board, and it seems that all the tutorials point to editing the /core/arch/arm/dts/stm32mp135f-dk.dts so that it takes the new sound card into account. Previously I had a chance to work with Raspberry Pi and there it's not uncommon to have multiple .dts files handling different things. Is it possible to define a sound card in a separate file from the main board.dts also on the stm32 MPUs, or is it really a necessity to append to the the main file? If so, how?
I was trying to use the GPIO expension connector on the STM32MP15 Discovery Kit MB1272 and the clock wasn't working on SPI5. When I checked the CubeMX configuration against the schematic for the discovery kit, I leaned that the clock signal is going to the Arduino connector instead of the GPIO expansion. The schematic insinuates that PF7 is SPI5_SCK, when it is actually PH6. Is this a known issue?
When I try to boot from NOR flash, it always crash.The console has the log like this. INFO: PMIC version = 0x21INFO: Reset reason (0x15):INFO: Power-on Reset (rst_por)INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe2000INFO: FCONF: Reading firmware configuration information for: stm32mp_ioINFO: Using QSPI NORINFO: Instance 1INFO: Boot used partition fsbl1NOTICE: BL2: v2.6-stm32mp1-r2.0(debug):()NOTICE: BL2: Built : 07:26:18, Dec 11 2022WARNING: Error in spi_mem_supportWARNING: Failed to read image id=12 (-45)WARNING: loading of FWU-Metadata failed, using Bkup-FWU-MetadataWARNING: Error in spi_mem_supportWARNING: Failed to read image id=13 (-45)ERROR: loading of Bkup-FWU-Metadata failedPANIC at PC : 0x2ffea2ebException mode=0x00000016 at: 0x2ffea2ebWhere is the wrong config?
We are trying to get CAN communication working on a STM32MP157D-DK1 using an RS485 CAN hat that is used for Rasberry PI. Is this possible and if so can you direct me to instructions? We are using Yocto to build the Linux distro. We are currently unable to see CAN0 at all.
Hi everyone, I want to use other LCD-TFT screen with the STM32MP15X-EVAL board but there is something strange with this connector. There are two duplicated pins, R5 and R7 , but looking for on the board documentation, I can't find anything related with this. What is these pins function?Thanks in advice.
We have built a SOM based on STM32MP157 which has eMMC. There were few configuration files which we installed manually. Now, I want a copy of this final working image so that i can duplicate the same image in other emmc too. Please let me know if are there any methods to do so.
Hi,I have a problem with bringing up my custom board based on STM32MP135.The problem is related to framebuffer opteeNOTICE: CPU: STM32MP135F Rev.Y NOTICE: Model: STMicroelectronics custom STM32CubeMX board - openstlinux-5.15-3 INFO: PMIC version = 0x21 INFO: Reset reason (0x35): INFO: Power-on Reset (rst_por) INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe0000 INFO: FCONF: Reading firmware configuration information for: stm32mp_io INFO: Using USB INFO: Instance 2 INFO: Boot used partition fsbl1 NOTICE: BL2: v2.6-stm32mp1-r2.0(debug):v2.6-dirty(a1f02f4f) NOTICE: BL2: Built : 13:14:26, Nov 23 2021 INFO: BL2: Doing platform setup INFO: RAM: DDR3-DDR3L 16bits 533000kHz INFO: Memory size = 0x20000000 (512 MB) INFO: DFU USB START... INFO: handle USB : Suspend int INFO: USB Suspend mode INFO: handle USB : Reset INFO: handle USB : Reset INFO: phase ID :3, Manifestation 0 at c716a7de INFO: Send detach request INFO: Receive DFU Detach INFO: DFU USB STOP.
Hi I am trying to configure I2S with stm32mp135f-dk so that i2s signals are accessible from 40 pin header. I am using the realtime package (build-openstlinuxweston-stm32mp13-rt). I was checking the instruction from you web and it tells that I should enable I2S using menuconfig. I am seeing that I2S is a module that I cannot directly enable. How can I check that this is in the build?Also I would need some support regarding the device tree configuration. Do I need to run STM32CubeMX and generate new devicetree files to get something activated? Or is there some existing dts file which I could edit and add my i2s driver in use there? It looks like that stm32mp135f-dk.dts does not currently contain any i2s related configuration.
..
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.