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
Cannot select 8 bit wide bus for SDMMC controller (for use with e-mmc)Cannot select USB:OTG_LS instead of USB_OTG_FS (to use 2 usb HS and the usb OTG LS togheter)
Hello,I'm new on STM32MPU and I trying this tutorial : https://wiki.st.com/stm32mpu/wiki/How_to_cross-compile_with_the_Distribution_Package#Adding_a_-22hello_world-22_user_space_exampleI'm stuck at point 7 (Adding a "hello world" user space example) because when I run this command : devtool deploy-target -s myhelloword1 root@192.168.7.1 there is an error :ERROR: No files to deploy - have you built the myhelloword1 recipe? If so, the install step has not installed any files.I followed the tutorial, create the hello_world_example folder and add the .c file (anyway no make file is present), add the recipe and modified it according with the tutorial.Any suggestions ?ThanksRiccardo
We have several STM32MP157A-DK1 used for an european project and we have several problem about the Ethernet network configuration. We have to change the IP address and we followed the ST wiki about network configuration using the “ip addr add……�?, but the edits are volatile and vanishes after the board reboot. We have not found other methods (like “/etc/network/interfaces/eth0 “) to edit network settings. Could we have a support on that configuration?
Hi,According to this link https://wiki.st.com/stm32mpu/wiki/ETZPC_device_tree_configuration#DT_configuration_-28board_level-29it is possible to configure the ETZPC peripheral in the device tree of TF-A. I am using a distribution package, so I modified and built the tf-a-stm32mp recipe using devtool. However, by adding the lines mentioned in the wiki link into TF-A device tree, the STM freezes on boot and doesnt respond, the only way is to flash the backup image in fsbl2 partition. I have added following lines in the stm32mp157c-dk2.dts file in the fdts directory:&etzpc { st,decprot = < DECPROT(STM32MP1_ETZPC_I2C5_ID, DECPROT_MCU_ISOLATION, DECPROT_UNLOCK) >; };I want to isolate the I2C5 peripheral for the Cortex M4 only, but without any luck. Is there any other configuration I am missing? Or perhaps it is the wrong file to edit?
Hi, I'm currently working with the STM32MP157-DK2. I built a firmware to run on the Cortex M4. To load/start/stop the firmware by the A7 I use :echo -n "firmware_name" > /sys/class/remoteproc/remoteproc0/firmwareecho -n start > /sys/class/remoteproc/remoteproc0/stateecho -n stop > /sys/class/remoteproc/remoteproc0/stateSo far it works fine.If I run the firmware the first time after a reboot all works fine. But if I stop the firmware, load and start again it begins to run and hangs up.periphery the fw uses: SPI, GPIO, TIM, DMA, DDR, UARTthird party: openAMP, FreeRTOS, virtUart, RESMGR_UTILITYIs it possible to reset M4 and the peripherals without rebooting A7?thanks in advanceregardsLukas
I have a STM32MP157c-DK2, programming on Windows-10.What works: Build Yocto, adapt it, flash the image to the SD-Card.Use STM32CubeIDE to program and debug code on CM4My goal is to setup a proper workflow of the project, where I can integrate our standard build environment, using cmake, build scripts, IAR (not yet sure I want/need that).Couple of issues I faces:Setup and generate code for an empty project for the DK2 with CubeMX for IAR. Running the example code it tells me 'no MCU device found' (Using CN11 'ST-Link'). a) Do I miss some configurations? b) Is it engineering or production mode? c) Do I need to set the boot pins? According en.DM00591354.pdf there is no engineering mode possible with the boot pins. Is this correct? If I use Bootpins = 0x100 it behaves same way. d) Are there reasons not to use IAR (except costs)?Alternative would be, to work with STM32CubeIDE. But I not yet fully happy with it (still a bit buggy). And it will be difficult to integrate our continous integra
I am using the STM32MP157C-DK2 board. I fixed the stm32mp157a-dk1 file as shown belowGenerated the device tree blobs (* .dtb) and updated the device tree blob on the board.I sent an echo "hello!" > /dev/ttySTM1and I see that the RTS pin is held for too long, I think that this pin is held all the time while the file is open by the operating system. Then I launched the Modbus-RTU test application. reception and transmission work correctly, but the RTS pin does not switch. The RTS pin was pressed to the ground when I launched the application and released when I closed the application.How to enable hardware flow control (rs485)?
I want to install Midnight Commander (MC) with following command:root@stm32mp1:/root# apt-get updateReading package lists ... Doneroot@stm32mp1:/root# apt-get install mcReading package lists ... DoneE: Unable to locate package mcUnsuccessfully, need your help
I see that the MAC address of the Ethernet is stored in the OTP memory, how to program the OTP data, and whether there are relevant instructions. Is there an editing tool for OTP data?
New board STM32MP157A-DK1 bought, trying to connect. First, ST-LINK drivers were updated, then on-board ST-LINK version was updated to last available V2J26M36. MDK cannot connect ("No target connected"), st-link utility cannot see board ("Detection fail"). Through some experiments, by the moment, assume this:- Oscilloscope shows signals on SWDIO, SWCLK, NRST.- Tried all available firmware versions (V32...V36) from the site.- Wires were soldered to TP3, TP5, etc. to got connection to external ST-link. Initially, external ST-LINK/V2 had version M28 and MDK has read ident from the device! But MDK cannot flashing board ("invalid ROM table"), and firmware in external ST-LINK were updated. Since this, it came to the situation "No target connected" which was with the on-board st-Link. Another firmware versions were tried with the same result.ST-LINK/V2 and ST-LINK/V2 Isol were tried.In MDK dialog, internal st-link version shows as V2x36x26, but there NO such format in RN0093 doc. Only J36M26
Hi,We're using a STM32MP157C on a custom board and trying to get ethernet over USB to work. We have a type B USB connector on the board and when a cable is connected, the USB peripheral seems to get suspended as the logs from dwc2 shows. We've seen that there are patches for forcing sessions to be valid and added "force-b-session-valid" to the DT node. Yet the only thing we see when we connect is the suspend interrupts firing. Any ideas what's going wrong here?Thanks
Hi,not sure if I am missing something obvious here:https://github.com/STMicroelectronics/logicanalyserI cloned the sources and imported everything into CubeIDE, however it does not see any make targets, when I try to build how2eldb's main.c I get:**** Build of configuration Debug for project how2eldb **** Nothing to build for project how2eldbI can build other M4 examples just fine, so it does not seem to be a general setup issue with my IDE. Any hints on how to proceed?I am using STM32CubeIDE version 1.3.0 Build: 5720_20200220_1053 (UTC) on Linux with an STM32MP157A-EV1 board.Kind regards,Jin
Hello, we are going to develop an application which requires the usage of a cortex-m core that communicates through ethernet.Both the wiki and the migration guide (AN5253) from cortex-m4 to MP1 says this is not possibile. Is it really true? Looking at the reference manual this is not clear. Moreover, if I look at this page, https://wiki.st.com/stm32mpu/wiki/File:STM32MP1IPsOverview.png in old Overviews, back to 2018, it seems possibile to use the eth module via the cortexM4.Can anybody help? Thank you very much, best regards.Cesare
Hi,I try use optee with weston image and I find that:Once the machine is defined with MACHINE_FEATURES += "optee" and the distro is set with DISTRO_FEATURES_append = " optee ", building the OpenSTLinux distribution will provide all necessary binaries to populate and boot with OP-TEE feature.But after build image with bitbake "bitbake st-image-weston" I don't have Flashlayout_*-optee.tsv in flashlayout_st-image-weston folder.Do I have add some special macro to generate optee.tsv ?For now I have only this in conf/local.conf MACHINE_FEATURES += "optee"DISTRO_FEATURES_append = " optee " I add that I have generated:tee-header_v2-stm32mp157c-dk2-optee.stm32tee-pageable_v2-stm32mp157c-dk2-optee.stm32tee-pager_v2-stm32mp157c-dk2-optee.stm32
Has anyone used OPENAMP in their projects without HAL? I usually do not use HAL in my projects. IDE SW4STM32 for Linux. with thanksAlexander
I want to exchange data between M4(running custom firmware) and A7(running OpenSTLinux) by using the Linux RPMsg framework.The ST-wiki refers to https://www.kernel.org/doc/Documentation/remoteproc.txt.I tried to run the example given by kernel.org, but without success.It seems the problem is the linux/rpmsg.h file delivered by the developer package ecosystem release 1.20 (file attached below). Simply replacing the rpmsg.h file with a common one (attached below) does not solve the problem because further .h files are missing.I don't want to use the normal read() / write() functions on the ttyRPMSG.Any suggestions?thanks in advanceLukas
Can I use STM32MP1 without an operating system?Linux is harder for me to master than a microcontroller.It would be convenient if the cube generated code hal for the processorIs there a similar feature planned?If not, is there a step-by-step instruction on how I can run custom bsp for Linux and compile it?
I made linux configuration by virtualbox. and I did copy to board kernel file by ssh(scp command). now I am testing M4 firmware .https://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP1_boards/STM32MP157C-DK2/Develop_on_Arm%C2%AE_Cortex%C2%AE-M4/Modify,_rebuild_and_reload_a_firmwareI can't connect consol using ssh by STM32CUBEIDE. (7.stard debug session)157C-DK2 board's ip 192.168.0.39 (ifconfig)my linux in vitual box ip 172.19.0.1 (ifconfig)Debug configration -> Dubugger -> Inet Address : 192.168.0.39 but it is not working. I don't know why it's not working. beause I already used ssh when i downloaded kernal image. let me know how to solve the issue. thanks.
I need to develop M4 and how do I configure system resources,for example,we need to configure uart on M4,the modification as follows,but it doesn't work:&m4_rproc { m4_system_resources { status = "okay"; }; }; &m4_uart3{ status = "okay"; };
Hello,Sorry for the easy question but I am facing an issue while connecting STM32MP1 to wifi. I have followed steps 1 to 3 (reference link). At the end of step 3, I can connect my STM32MP1 device from remote machine using the following command:ssh root@10.0.0.88However, when I execute the following command:ping google.com or ping -c 6 google.comIt returns the following output:ping: google.com: Temporary failure in name resolutionSomething is wrong with the wifi setup (or not established properly). Could you please guide me how can I resolve this?Thanking you,Saurabh
I'm using STM32MP157A-EV1.It configured boot from eMMC mode.This is because SDIO is used as interface.I inserted the uSD card into the slot for trial.The information of SDIO is as follows.root@stm32mp1:~# cat /sys/kernel/debug/mmc0/iosclock: 99000000 Hzactual clock: 99000000 Hzvdd: 17 (2.9 ~ 3.0 V)bus mode: 2 (push-pull)chip select: 0 (don't care)power mode: 2 (on)bus width: 2 (4 bits)timing spec: 6 (sd uhs SDR104)signal voltage: 1 (1.80 V)driver type: 0 (driver type B)When the same uSD card is inserted in another company's evaluation board, it is as follows. (CPU is Cortex A53)root@localhost:/home# cat /sys/kernel/debug/mmc0/iosclock: 208000000 Hzactual clock: 200000000 Hzvdd: 21 (3.3 ~ 3.4 V)bus mode: 2 (push-pull)chip select
Hi all! Can anybody give advice about other methods of working with interconnect between MPU and MCU. I saw example working with RPMsg, but in this case we have a problem with memory, because we need a big buff in MCU for data. Now we trying to use DDR SDRAM, but STM doesn't recommended to use it. So, maybe anybody faced with it or solved it?
I want to build image with appliance of build development and network features? I cant understand the process. Where can I find a manual for yocto and stm?
Hi, I'm currently porting OpenAMP virtio to Arduino platform: https://github.com/stm32duino/Arduino_Core_STM32/pull/766I would like to share one thing about the OpenAMP examples in CubeMP1.Here is the implementation of MAILBOX_Poll:int MAILBOX_Poll(struct virtio_device *vdev) { /* If we got an interrupt, ask for the corresponding virtqueue processing */ int ret = -1; /* USER CODE BEGIN PRE_MAILBOX_POLL */ /* USER CODE END PRE_MAILBOX_POLL */ if (msg_received_ch1 == RX_BUF_FREE) { /* USER CODE BEGIN MSG_CHANNEL1 */ /* USER CODE END MSG_CHANNEL1 */ OPENAMP_log_dbg("Running virt0 (ch_1 buf free)\r\n"); rproc_virtio_notified(vdev, VRING0_ID); msg_received_ch1 = RX_NO_MSG; ret = 0; } if (msg_received_ch2 == RX_NEW_MSG) { /* USER CODE BEGIN MSG_CHANNEL2 */ /* USER CODE END MSG_CHANNEL2 */ OPENAMP_log_dbg("Running virt1 (ch_2 new msg)\r\n"); rproc_virtio_notified(vdev, VRING1_ID); msg_received_ch2 = RX_NO_
Hi,We are currently developing on the STM32MP1. Our goal now is to be able to debug the core at the different running stages : TF-A, Optee, U-boot and kernel. We are using the DK2 with a ST-link and openOCD.When using your Setup.gdb we experience some issue during the debug session : We can't use the step instruction but we can use the stepi instruction. When we use the step instruction we have the following error on openOCD :Error: Timeout waiting for cortex_a_exec_opcode Error: Timeout waiting for InstrCompl=1 Error: Timeout waiting for dpm prepare Error: Timeout waiting for cortex_a_exec_opcode Error: can't add breakpoint: unknown reason Warn : negative acknowledgment, but no packet pending Warn : negative acknowledgment, but no packet pendingThe exact same error message is found when loading u-boot symbol after gdb is connected to openOCD.The software breakpoint doesn't work, only the hardware breakpoints break the core.We also have some questions regarding this debug script :Wha
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.