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
IOC UI is changed this UI.I want to use another UI.Could you help me? plz
We need to store some of our application data in BKPSRAM block so we can persist it during power down. Here is the code that we created to write to the BKPSRAM block, could you please help me to define what is wrong. Thanks.#include <sys/mman.h>#include <fcntl.h>#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <sys/types.h>#include <stdint.h>#include <sys/stat.h>#include <string.h>#define PAGE_SIZE 4096typedef struct __attribute__((packed)) { uint32_t value1; uint32_t value2; char str[24];} MyStruct;int main() { int fd; uint32_t *mapped_memory; // Open /dev/mem fd = open("/dev/mem", O_RDWR | O_SYNC); if (fd == -1) {
Hello. Every one.I've been designing using STM32MP151 series.Now, i just have changed the package from STM32MP151CAB3(0.8pitch) to STM32MP151CAD3(0.5pitch).And then, the current is consumed more than 0.4W.of course, the power pin count is fewer than 151CAB3.So, I added more capacitors with big capacitance.Do you have any experiences as for this?please, reply me.Thank you.Regards.
Hello,I have been running Ubuntu on the STM32MP157F-DK2, guided by the following resources:https://prog.world/stm32mp1-running-ubuntu-22-04gpu-and-wayland-graphics-server/https://github.com/cvetaevvitaliy/stm32mp1-ubuntu Previously, I successfully used the following configurations:U-Boot: v2020.10-stm32mp-r2.2TF-A: v2.8-stm32mp-r1.1Linux Kernel: v2020.10-stm32mp-r2.2Ubuntu RootFS: ubuntu-22.04-base-stm32mp1-armhf-16-05-2022.tar.gzHowever, I am encountering issues with the latest setup:U-Boot: v2022.10-stm32mp-r1TF-A: v2.8-stm32mp-r1.1Linux Kernel: v6.1-stm32mp-r1Ubuntu RootFS: ubuntu-22.04-base-stm32mp1-armhf-16-05-2022.tar.gzThe main change I made was replacing stm32mp15_trusted_defconfig with stm32mp15_defconfig when building U-Boot.Could anyone provide any insights or suggestions to troubleshoot this issue?Thank you!
Hi!I have made a simple computer with STM32MP151AAC3 processor.I have modify so I can boot either from UART4 or eMMC. My question is:When I want to flash OpenSTLinux onto the eMMC, can that be done via ST-Link and STM32CubeIDE? Just like regular STM32 programming via STM32CubeIDE?If yes: Is there any manual how to flash the eMMC with OpenSTLinux via UART4 so my processor can boot from eMMC? I have attached the schematic. Just tell me if I'm missing something. I have included:LSEHSEBoot (Only BOOT1 can be set HIGH. BOOT0 and BOOT2 is default pull-down)RESETExternal ST-Link debug via 1.27 x 2 connector (I assuming that a Nucleo STM32 can be used as ST-Link programmer)HDMIDDReMMCUSBH USB OTGGigabit EthernetPMIC with 3.5 mm DC plug connector
I am using Yocto build for stm32mp157f. I am following oe-manifest/default.xml at kirkstone · STMicroelectronics/oe-manifest (github.com).I am able to generate a build, however, I would like to generate tf-a-stm32mp157f-dk2-trusted.stm32 and u-boot-stm32mp157f-dk2-trusted.stm32 which is not getting generated during the build.The contents of final build are shown below:tmp-glibc/work/stm32mp15_disco-ostl-linux-gnueabi/tf-a-stm32mp/v2.6-stm32mp-r2.1-r0/deploy-tf-a-stm32mp ├── arm-trusted-firmware │ ├── debug │ │ ├── debug-tf-a-stm32mp157f-dk2-sdcard.stm32 │ │ ├── debug-tf-a-stm32mp157f-dk2-uart.stm32 │ │ ├── debug-tf-a-stm32mp157f-dk2-usb.stm32 │ │ ├── tf-a-bl2-sdcard.elf │ │ ├── tf-a-bl2-uart.elf │ │ └── tf-a-bl2-usb.elf │ ├── fwconfig │ │ └── stm32mp157f-dk2-fw-config-optee.dtb │ ├── metadata.bin │ ├── tf-a-stm32mp157f-dk2-sdcard.stm32 │ ├── tf-a-stm32mp157f-dk2-uart.stm32 │ └── tf-a-stm32mp157f-dk2-usb.stm32 └── fip └── fip-stm32mp157f-dk2-optee.binI would like to know
An urgent problem occurred in stm32mp157. I used ksz9031 network chip, but it could not be used. The LOG is as follows,[ 18.996823] Micrel KSZ9031 Gigabit PHY stmmac-0:00: attached PHY driver [Micrel KSZ9031 Gigabit PHY] (mii_bus:phy_addr=stmmac-0:00, irq=POLL) Starting Wait for Network to be Configured...[ 19.122107] stm32-dwmac 5800a000.ethernet: Failed to reset the dma[ 19.127072] stm32-dwmac 5800a000.ethernet eth0: stmmac_hw_setup: DMA engine initialization failed[ 19.135979] stm32-dwmac 5800a000.ethernet eth0: stmmac_open: Hw setup failedI can't solve this problem
For a project using the STM32MP135F Discovery kit, I configured ADC1 with an oversampling ratio of 16. However, in sysfs, I can see that the device tree parameter is being ignored: # cat /sys/bus/iio/devices/iio:device0/oversampling_ratio 1 What am I missing?My device tree: #include "stm32mp135f-dk.dts" ... &pinctrl { adc1_pins_a: adc1-0 { pins { pinmux = <STM32_PINMUX('A', 5, ANALOG)>, /* ADC1_INP2 */ <STM32_PINMUX('A', 0, ANALOG)>; /* ADC1_INP7 */ }; }; }; &adc_1 { pinctrl-names = "default"; pinctrl-0 = <&adc1_pins_a>; vdda-supply = <&scmi_vdd_adc>; vref-supply = <&scmi_vdd_adc>; status = "okay"; adc1: adc@0 { status = "okay"; oversampling-ratio = <16>; /delete-node/ channel@6; /delete-node/ channel@12; channel@2 { reg = <2>; st,min-sample-time-ns = <100000>; }; channel@7 { reg = <7>; st,min-sample-time-ns = <100000>; }; }; }; &nbs
Hi,i'm trying to follow this guide for my STM32MP157D-DK1: https://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP1_boards/STM32MP157x-DK2/Let%27s_start/Populate_the_target_and_boot_the_image When try to download the Starter package from https://www.st.com/en/embedded-software/stm32mp1starter.html#get-software the "latest version" i get is ¨en.FLASH-stm32mp1-openstlinux-4.19-thud-mp1-19-02-20.tar.xz", while according to the guide it should be "en.flash-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz". In the older package there is no tsv file for the STM32MP157D. Kind regards
I see the following when I try to download the latest or select any other version of the tool
Hi, I have an application where the SPI master is sending data every 2 mSecs. The STM32MP157F-DK2 SPI4 and SPI5 are in slave mode. They are receiving the data as expected but the data is skipped between each transfer on SPI4 and SPI5. The application to read the data from master is a threaded application in user space.The data received on SPI4 between 2 subsequent transfers skips 40 to 50 millisecond of data since I have data every 2 mSecs each second there would be 500 packets of close to 80 bytes. From my experiments I have come to know the data is read from the Master only when we have data to send.Attached is the sample data which is showing the observations as above.I would like to change the behavior in a way that SPI4 and SPI5 are always active or can read data without a huge gap between subsequent transactions.Can you please guide what changes or configuration may work here?Note: the original requirement to read the data without any subsequent transaction failure is at 200uSecs
I had an error while building the image. I didn’t try to figure out why and why it was necessary to turn off the network. I just removed the entire function. After that everything build together.https://github.com/karu2003/stm32mp1_note openembedded-core/bitbake/lib/bb/utils.py def disable_network(uid=None, gid=None): """ Disable networking in the current process if the kernel supports it, else just return after logging to debug. To do this we need to create a new user namespace, then map back to the original uid/gid. """ return
Hi there, we are developing a custom STM32MP135 board to run openstlinux on it. It will be our first experience with embedded linux (linux) systems, so we have some tasks that we don't know if it can be done. These tasks are the following:Can we access the hardware directly?Can we get gpio interrupt on openstlinux.Can we send data over spi, i2c, canbus, usart etc.?Can we get rx interrupt from usart canbus etc.?The MPU we have chosen is single core, can you guide us on how to do these tasks? Would these tasks be easier if we use dual core MPU?
HelloI use https://github.com/STMicroelectronics/meta-st-stm32mp with the stm32mp15-disco machine.It boots fine, I can access the shell via USB-UART. But the display just shows an STM Logo from the Bootloader. What do I need to change, so the display works in Linux?This is the error when trying to start X:root@stm32mp15-disco:~# startx xauth: file /home/root/.serverauth.724 does not exist X.Org X Server 1.21.1.8 X Protocol Version 11, Revision 0 Current Operating System: Linux stm32mp15-disco 6.1.28 #1 SMP PREEMPT Thu May 11 14:04:52 UTC 2023 armv7l Kernel command line: root=PARTUUID=e91c4e10-16e6-4c0e-bd0e-77becf4a3582 rootwait rw console=ttySTM0,115200 Current version of pixman: 0.42.2 Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. (==) Log fi
Hello Iam Using Stm32mp157aaa3 processor in my custom board and U boot version 2023.10.Can we load .bin extension file using rproc command in uboot. Tanks & RegardsSrikanth.R
Hello,I am currently using the MOOC hands-on lab examples to understand how to use inter processor communication between the A7 and M4. The lab is using the STM32MP157C-DK2 board, whereas I am using the STM32MP157F-DK2 board. Currently, I made a new CubeMX project for the STM32MP157F-DK2 board and tried to import the lab example project to into the new project but the import project option is grayed out in CubeMX. How can I port the inter processor lab examples to run on the STM32MP157F-DK2 board using STM32CubeMX? I appreciate any help with this, thank you.
I have a STM32MP157f-dk2 board, the USB OTG port is configured by default to appear as network ethernet adapter when plugged into the PC. I would like to configure the USB OTG port to appear as a mass storage device when plugged into the PC. I am new to kernel and device tree and I wasn't able to find any specific instructions on how to do this. Would anyone be able to provide the steps to do this? Thank you.
Hello.I'm currently trying to download the X-LINUX-AI package for MPU ecosystem v5.0.0.I tried on MP135F-DK & MP157F-DK2, but neither showed a valid installation and both were stuck when executing "apt-get update".For both boards, I used high-quality ethernet cables and checked the connections were okey by executing "ping www.baidu.com", which is the most well-known search engine in China. Both checks were okey, and I did not use a proxy.The following command line piece shows what was going wrong:stm32mp1:/var/cache/apt/archives# dpkg -i apt-openstlinux-ai_1.0_armhf.deb tar: ./control: time stamp 2023-07-07 06:18:19 is 10864980.266958629 s in the future tar: .: time stamp 2023-07-07 06:18:19 is 10864980.264826295 s in the future (Reading database ... 15654 files and directories currently installed.) Preparing to unpack apt-openstlinux-ai_1.0_armhf.deb ... Unpacking apt-openstlinux-ai (1.0) over (1.0) ... Setting up apt-openstlinux-ai (1.0) ... stm32mp1:/var/cache/apt/archives#
Hello everyone,I am currently working on a project involving the STM32MP microprocessor and I've been exploring the Real-Time Clock (RTC) functionality in the Linux kernel for timekeeping purposes.From what I've gathered so far, the datasheet (RM0441 - Chapter 48.3.12) mentioned that the RTC can be synchronized with a remote clock using the sub-second field (RTC_SSR or RTC_TSSSR). Additionally, the RTC_SHIFTR register can be used for fine adjustments, delaying and advancing the RTC's clock by a fraction of a second. However, I am unsure whether this feature is currently implemented in the Linux kernel for the STM32MP platform.If any of you have experience with this feature or are aware of its current status in the main Linux kernel for STM32MP, I would greatly appreciate any information you could provide. Here are my specific queries:Is it already implemented in the latest Linux kernel release?If it is not yet developed, would it be feasible to implement this feature for the
I'm new to yocto, I'm trying to add the 'pwquality' pam module to the image for my stm32mp1 but I'm struggling with it, initially I have added this line to the local.conf file:DISTRO_FEATURES:append = " pam"which added pam and some modules but the module that i want which is 'pwquality' was not part of the installed modules, any idea how to add it?
Hello Dear friends From Last couple of days I struck in issue while doing bitbake for stm32mp1 mpu dk2 board.When i do $ bibake st-image-core (Enter)I got error's which posted with snap shots To resolve the issue i did changes to set max value sudo sysctl -w fs.inotify.max_user_watches=65536but still i am not able to bitbake Please help in this regards
Hello everyone,we have a custom board with STM32MP157F. The board is equipped with SD and eMMC. We do not have USB on endproduct. Our plan flashing eMMC is as follows: 1. create yocto image for eMMC 2. create SD image 3. generate SD raw image with the script "create_sdcard_from_flashlayout.sh" 4. dd the sd raw image onto SD card 5. boot from SD After this point, there will be a custom script/program, which will flash the eMMC.Currently all information requires the usage of STM32CubeProgrammer, which will be in our production and post-production service-technicians not feasible. The plan for flashing eMMC is:1. activate both boot partitions on eMMC2. dd TF/A onto these partitions3. dd generated raw eMMC image containing the partitions and fill the partitions with images (rootfs, optee...) Is this supported at all?Are there any offsets to take care for dd boot partitions?Which parameters should be used to activate the boot partitions?Is there any o
Dear community,I'm currently having a problem setting up an OPCUA client. Using the open62541 package, I was able to connect to an OPCUA server created in Node-Red. I was able to both read and write to the server's addresses. The connection was made synchronously (ua_client_connect).However, when I used another computer, the connection to the Node-Red server is made asynchronously (the ua_client_connect function doesn't work, but the ua_client_connect_async function does). Unfortunately, I'm not able to do either reading or writing because the read and write functions are not identical to those of the synchronous connection.Therefore, do you have an example of an OPCUA client using the open62541 library that allows asynchronous reading and writing?I've already used the following link (https://github.com/open62541/open62541/blob/master/examples/client_async.c) but the problem is that the UA_SessionState is not equal to UA_SESSIONSTATE_ACTIVATED.Board used : B-U585I-IOT02AThanks for your
Hello We are using STM32MP157 in our custom board. We are trying to trigger Cortex-M4 from Cortex - A7 BareMetal software. In this we generated cortex-M4 code in CubeMX and debugging with ST32CubeIDE and in debug it's working fine. we configured memory in cortex-M4 as per following MEMORY { RETRAM_interrupts (xrw) : ORIGIN = 0x00000000, LENGTH = 0x00000600 SRAM1_text (xrw) : ORIGIN = 0x10000000, LENGTH = 128K SRAM2_data (xrw) : ORIGIN = 0x10020000, LENGTH = 128K } We take a .bin file of Cortex-M4 and triggered from Cortex-A7 BareMetal software, while triggered getting following observations1) If SRAM1_text is < 64KB, it has triggered from Cortex-A7 and working fine.2) If SRAM1_text is >64KB, it has not trigg
I am currently flashing a custom mickledore distro on a STM32MP151CAA3T and after the fsbl1 i get this error : ERROR: DDR addr bus test: can't access memory @ 0xc0000004 PANIC at PC : 0x2ffdf9d9 Can someone explain how to solve this issue?
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.