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
a tsv file with #Opt id Name Type IP Offset Binary - 0x01 fsbl Binary none 0x00000000 u-boot-spl.stm32 I got different error messages:stm32CubeProgrammer on windows:sending a dfu end of download request DFU status = 0 DFU State = 7 DFU status = 14 DFU State = 10 an error occured after sending a dfu end of download request Status: errUNKNOWN, State: dfuERROR Error: Start operation failed at partition 0x01 Error: TSV flashing service failed Warning: Connection to device 0x500 is loststm32CubeProgrammer on Linux:File download complete Time elapsed during download operation: 00:00:02.924 RUNNING Program ... PartID: :0x01 Error: Start operation failed at partition 0x01 Error: TSV flashing service failed Warning: Connection to device 0x500 is loststm32CubeProgrammer_CLI on LinuxFile download complete Time elapsed during download operation: 00:00:02.863 RUNNING Program ... Address: : 0x1 Error: an error occured while uploading data from the virtual partition 0xF1 Start operat
Hi,I test commands"echo 97 > /sys/class/gpio/exportecho out > /sys/class/gpio/gpio97/directionecho 1 > /sys/class/gpio/gpio97/valueecho 0 > /sys/class/gpio/gpio97/value", the value on the pin PD.1 can't change.Test command:" gpioset gpiochip3 1=1 gpioset gpiochip3 1=0" the value on the pin PD.1 can change.Please advise how to solve the issue on "/sys/class/gpio".Thanks,QiZhang
I'm trying to test the low power modes (I don't care about the current at this point). I start the Next I run this:cd /usr/local/Cube-M4-examples/STM32MP157C-DK2/Applications/OpenAMP/OpenAMP_TTY_echo_wakeup fw_cortex_m4.sh start echo enabled > /sys/devices/platform/soc/4c001000.mailbox/power/wakeup echo "*delay" >/dev/ttyRPMSG0 systemctl suspendThe CPU never goes into CStop mode. DMESG reports the following:[ 4665.621976] unbind driver hci_uart [ 4665.884144] PM: suspend entry (deep) [ 4665.900196] Filesystems sync: 0.013 seconds [ 4665.905556] Freezing user space processes ... (elapsed 0.001 seconds) done. [ 4665.913002] OOM killer disabled. [ 4665.915975] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done. [ 4665.923519] printk: Suspending console(s) (use no_console_suspend to debug) [ 4665.933455] dwc2 49000000.usb-otg: suspending usb gadget configfs-gadget [ 4666.063929] stm32-dwmac 5800a000.ethernet eth0: Link is Down [ 4666.065574] stm32-dwmac 5800a000.ethe
..
Hi everyone,I'm interested how can someone backup rootfs, vendorfs etc and later use that to flash via the STM32CubeProgrammer? Is using the dd good way to do it?Best regards,Nenad
We are using the STM32MP15 ecosystem 2.1.0 and buildroot build flow for a custom board. The custom board uses the FMC peripheral to connect to three FPGAs using an SRAM/PSRAM interface. We have successfully implemented this interface on the CA7 side by writing a custom kernel driver, but would now like to move this function to the CM4. After using CubeMX to move the peripheral to the CM4, there is an error in the generated device tree for the kernel, specifically there is a missing symbol “m4_fmc�? in the generated device tree.I looked at the STMicro kernel repos on GitHub at the in-tree stm32mp157-m4-srm.dtsi file for both ecosystem 2.1.0(v5.4-stm32mp1-r2.1) and 3.0.0 (v5.10-stm32mp1-r1) and there is no definition for “m4_fmc�? in either version.Does this mean that the FMC for the STM32MP15x is not yet supported by HAL? Or just an oversight?Thanks,Mark Carlin
Could you please explain me why ST support is so slowly... I'm starting with STM32MP1xx MPUs hoping, that ST support will be fast and specific. But currently answer for even simple (and stupid) questions need to be wait for unpredictable time...We need to read hundred pages with inconsistent information even for simplest steps like compiling TF-A or U-BOOT.We spent a lot of time designing custom MP157 module, It's forking fine except qspi-nand and nobody could help me... There is simple question - why qspi nand flash connected according to Getting started guide is not working. Hardware seems no problem - at least FlashID read ok. There are two sample board with exactly same symptoms... Why you can't provide simple step-by step manuals:compiling TF-Acompiling U-BOOTFlashing with USB?Event your README.HOW_TO.txt have stupid mistakes like TFA_DEVICETREE instead of TF_A_DEVICETREE.May be I need to pay money for support? Please give wallet address to pay.Dealing with Allwinner MCUs I had su
Helllo i configurated my Device tree so i a can use my USART3 as a serdev. But when i run "cat /proc/tty/driver/stm32-usart". i can see my serial port but my RTS pin is missing. I configurated my device tree like this:&usart3 { pinctrl-names = "default", "sleep", "idle"; pinctrl-0 = <&usart3_pins_c>; pinctrl-1 = <&usart3_sleep_pins_c>; pinctrl-2 = <&usart3_idle_pins_c>; uart-has-rtscts; status = "ok"; ethernet { compatible = "st,stm32_usart_net"; local-mac-address = [ A0 B0 C0 D0 E0 F0 ]; };};So But if i remove the ethernet part it shows the RTS port. Why is that happening?
A quick grep through the latest and greatest release shows this:$ grep -r STM32MP157C-DK2 . | grep machine ./meta-st/meta-st-stm32mp/conf/machine/stm32mp1-disco.conf:#@DESCRIPTION: [EXAMPLE] STM32MP157C-DK2 board ONLY with Trusted boot and SDcard support ./meta-st/meta-st-stm32mp/conf/machine/stm32mp1-disco.conf:M4_BOARDS = "STM32MP157C-DK2" ./meta-st/meta-st-stm32mp-addons/conf/machine/examples/stm32mp1-disco-mx.conf.sample:#@DESCRIPTION: [STM32CubeMX-EXAMPLE] STM32MP157C-DK2 board ONLY with Trusted boot and SDcard support ./meta-st/meta-st-stm32mp-addons/conf/machine/examples/stm32mp1-disco-mx.conf.sample:CUBEMX_PROJECT = "mx/STM32MP157C-DK2/my-demo/DeviceTree/my-demo"So I am wondering if/how it's possible to have a kernel/device tree/rootfs which is not signed.My ideal setup grabs (unsigned) kernel/device tree from tftp and passes to the kernel the kernel command line to boot over nfs (unsigned as well).If this possible at all here with an unsigned kernel/device tree/rootfs?If so, c
I recently attended and intro course to the STM32MP1, which was very informative. Subsequently, in considering possible applications, I have questioned wither the STM32 MPUs are suitable for use in functional safety systems as a processor for the execution of safety critical software, e.g. in an automotive, avionics or medical system.The use of Linux on the A7 side of things make it very difficult to use this for safety critical real time software and clearly the M4 is more appropriate anyway. However, as I see it, the M4 is effectively a co-processor with critical parts of the M4 and associated peripherals controlled by the A7 side which means that M4 cannot be adequately segregated from the A7. I understand that some peripherals can be assigned solely to the M4 and protected from access from the A7 but the A7 still controls important related aspects such as clocks and regulators. Furthermore, the A7 must bring up the chip and load and start the M4.This is a similar problem to running
Hi, ST :)In addition to https://community.st.com/s/question/0D53W00000pUh4gSAC/tfa-and-uboot-custom-compile-failsCould you plese explain me what is the reason for such error:dfu_fill_entity_mtd: Memory layout (/0x10/1*122Me) not supported!while downloading flash content with CubeMXProgrammer.I've built a core image with bitbake st-image-core command (hope I'm correct here) and got UBI image with size 116Mb (121896960b). I'm expecting it can be fitted to a UBI partition that has size 0x07a00000b = 127926272b. Please refer to nand partition table below. spi-nand flash size is 128Mb.TF-A and u-boot was manually build during duscussion mentioned with link above.Here is .tsv file:#Opt Id Name Type IP Offset Binary- 0x01 fsbl-boot Binary none 0x0 ./tf-a-stm32mp157a-stm32mp151-dk1-mx-usb.stm32- 0x03 fip-boot Binary none 0x0 ./fip-stm32mp157a-stm32mp151-dk1-mx-trusted.binP 0x04 fsbl Binary(2) spi-nand0 0x000000 ./tf-a-stm32mp157a-stm32mp151-dk1-mx-nand.stm32P 0x05 fip1 Binary sp
C $> sudo apt-get updatePC $> sudo apt-get install corkscrewPC $> git config --replace-all --global core.gitproxy "$HOME/bin/git-proxy.sh"PC $> git config --add --global core.gitproxy "none for <MyPrivateNetworkDomain>" (optional, for example .st.com or localhost)PC $> echo 'exec corkscrew <MyProxyServerUrl> <MyProxyPort> $* $HOME/.git-proxy.auth' > $HOME/bin/git-proxy.shPC $> chmod 700 $HOME/bin/git-proxy.shPC $> echo '<MyProxyLogin>:<MyProxyPassword>' > $HOME/.git-proxy.authPC $> chmod 600 $HOME/.git-proxy.authI'm following above commands but when execute "echo 'exec corkscrew <MyProxyServerUrl><MyProxyPort> $* $HOME/.git-proxy.auth' > $HOME/bin/git-proxy.sh" it says git-proxy.sh not found
Hey there, I am trying to increase the RPMSG buffer size to 1024 on the STM32MP1 for the last couple of days. The A7 side seems to be working fine but the M4 side seems to struggle with the vdev declaration on the device tree. On the A7 side: virtio_rmpsg_buss.c#define MAX_RPMSG_NUM_BUFS (1024) #define MAX_RPMSG_BUF_SIZE (1024) #define RPMSG_RESERVED_ADDRESSES (2048) #define RPMSG_NS_ADDR (53)stm32mp15xx-dkx.dtsi:vdev0buffer: vdev0buffer@10044000 { compatible = "shared-dma-pool"; reg = <0x10044000 0x10000>; no-map; };On the M4 side: rpmsg_virtio.h* Configurable parameters */ #ifndef RPMSG_BUFFER_SIZE #define RPMSG_BUFFER_SIZE (1024) #endifThe user-space can see and send messages to the RPMSG channel but when debugging the M4 part I get what to seems to be a memory allocation error (gdb) 0x1000b47e in MAILBOX_Poll (vdev=0x10020f70) at ../OPENAMP/mbox_ipcc.c:105Any ideas or advice will be highly appreciated.
Hi, Everybody!Referring to this issue:https://community.st.com/s/question/0D53W00000oVNtqSAG/qaudspi-spinand-flash-device-tree-for-tfa-and-ubootPatrickF suggested to manually configure U-BOOT for my board. I have downloaded tf-a sources patched it, of course installed and configured SDK and trying to do all according to it's README.HOW_TO.txt file.As I have my specific DT I need to specify it in makefile parameters:README.HOW_TO.txt has this example:make -f $PWD/../Makefile.sdk TFA_DEVICETREE=stm32mp157c-ev1 TF_A_CONFIG=trusted ELF_DEBUG_ENABLE='1' allBut in fact TFA_DEVICETREE var-name should be TF_A_DEVICETREE. Is this correct?Then, file format. We have .stm32, also .fip file format avaialbleI can compile both .stm32 tf-a and u-boot, but u-boot fail to start with following error:NOTICE: CPU: STM32MP157DAB Rev.ZNOTICE: Model: STMicroelectronics STM32MP157A-DK1 STM32CubeMX boardINFO: Reset reason (0x14):INFO: Pad Reset from NRSTINFO: PMI
I'm trying to edit the device tree of the distribution but there is no .dts or .dtsi files in all the distribution package directories. The only way I found to experiment modifying the device tree is doing it with developper package (I modified stm32mp157c-dk2.dts) but I now must add it to the distribution and I'm still not able to force bitbake to generate any dts file.How can I do it.Thank you in advance.
My STM32MP157F-DK2 is powered by 5V 3A PSU. but at the boot up time, always it displays the warning ***************************************************** WARNING 500mA power supply detected ** Current too low, use a 3A power supply! *******************************************************At the end of the boot process, I do see following display as well:root@stm32mp1:~# [ 33.112323] usb33: supplied by vdd_usb[ 33.114843] vref: supplied by vdd[ 33.118045] vref: disabling[ 33.120724] vdda: disabling
for the STM32MP157C board
I have successfully build st-image-weston using Distribution-Package.Now I want to add libmodbus to st-image-weston.I refer to the wiki page below.https://wiki.st.com/stm32mpu/wiki/How_to_integrate_an_external_software_package1) I checked the libmodbus recipe in the path below.And I am using the meta-oe layer containing libmodbus.But I can't find libmodbus in the target.Why doesn't rootfs include libmodbus?layers/meta-openembedded/meta-oe/recipes-extended/libmodbus2)I tried to add libmodbus by executing the command below.The following error occurs.how to fix it?echo 'IMAGE_INSTALL_append += "libmodbus"' >> ../layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-weston.bbappendbitbake st-image-weston -c cleanall bitbake st-image-westonNOTE: Started PRServer with DBfile: /home/osboxes/STM32MPU_workspace/STM32MP15-Ecosystem-v3.0.0/Distribution-Package/openstlinux-5.10-dunfell-mp1-21-03-31/build-openstlinuxweston-stm32mp1/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 35363,
I am working with a custom board, and are using the CM4 core to configure and mange FPGAs via the FMC. In my system the FPGA configuration requires the transfer of a large data buffer (3MByte-10MByte) between the CA7 core and the CM4 core. I understand this is sub-optimal due to the asynchronous connection between the AHB and AXI busses, but as the FPGAs are not configured very often that is okay.I’ve set up shared data buffers using the indirect method, similar to the example described in How to exchange large data buffers with the coprocessor - example - stm32mpu. The difference in my current implementation is that I am transferring data from CA7 core to CM4 core, and for now I am not using DMA, just memcpy. Plan to add DMA later after getting a functional system for customer demo. Also I am using the standard rpmsg/OpenAMP framework for control messaging.There is no problem on the CA7 side, the data buffer device is created by the CM4
Hi,I'm working on STM32MP157A-DK1. By following this linkhttps://wiki.st.com/stm32mpu/wiki/STM32MP1_Distribution_Package tried building the image for STM32MP157A-DK1 but i facing the error ERROR: icu-66.1-r0 do_compile: oe_runmake failed during build. attached build log.i tried to resolve with the command "bitbake -c cleanall icu-native" and build still it fails. if i separately build "bitbake icu-native" it build fine but if i run command bitbake st-image-westonthe error comes up.
Hi, Everybody! Could anyone help with correct device tree for qspi-nand flash. I can't see any activity on pins connected to flash. If I try to boot from spi-nand with BOOT0..2 set to 1, I can see clear SPI transactions... So, flash connection looks correct.Flash type is MT29F1G01ABAFDWBConnected to following pins:PF10 - CLKPB6 - NCSPF8 - IO0PF9 - IO1PF7 - IO2PF6 - IO3TF-a device tree:pinctrl node: qspi_bk1_pins_a: qspi-bk1-0 { pins1 { pinmux = <STM32_PINMUX('F', 8, AF10)>, /* QSPI_BK1_IO0 */ <STM32_PINMUX('F', 9, AF10)>, /* QSPI_BK1_IO1 */ <STM32_PINMUX('F', 7, AF9)>, /* QSPI_BK1_IO2 */ <STM32_PINMUX('F', 6, AF9)>; /* QSPI_BK1_IO3 */ bias-disable; drive-push-pull; slew-rate = <1>; }; pins2 { pinmux = <STM32_PINMUX('B', 6, AF10)>; /* QSPI_BK1_NCS */ bias-pull-up; drive-push-pull; slew-rat
I'm connecting a X-NUCLEO-PLC01A1 with my DK2 card. The Inputs are working fine and for the outputs I can read the fault status , I'm getting 0000 0000 1000 0101, then all is right, the 3 error leds are off, and the OE signal is in 0 (I tested also with OE = 1); but I not getting anything in the outputs. I can see in the diagram that one of the leds is named PG (Power good) but it's off. I connected the GND / 24V to the left of the input connector. The led turns flash when I power on/off the system.Then I have two problems, the PG led and the outputs.I appreciate any insights Thanks
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.