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
Have been struggling to get SPI to work. I have been working in the engineering boot mode to try and trouble shoot my issues. I have configured PLL3 to run the MCU at 48MHz and the SPI peripheral kernel clk to run at 108MHz and selected the clock sources in the RCC regs accordingly, I have implemented the procedure for configuring SPI in the related section in the reference manual. The GPIO have been configured to their appropriate modes and alternate functions. I have enabled the peripheral bus in RCC.I am able to confirm the register setting via the debugger.However, when I try to send data, I see nothing on the GPIO. I also don't see any flags reported when attempting to overfill the TXFIFO to elicit a response from the peripheral.I am not using the HAL library directly, though I have looked through it to see what I may have missed to no avail.Can anyone let me know if there is another enable bit, power bit or otherwise that I may be overlooking?
Hello, I don't know what happened but suddenly on putting the board in boot mode( boot switches ON) , I cant detect the board on the stm32cube programmer and I see a green led ( PWR_IN) continuously blinking!attached is the image.Please assist.Br,D
I'm build an image for Azure IOT on STM32MP157C-DK2, following this tutorial: https://wiki.st.com/stm32mpu/wiki/How_to_integrate_Azure_IoT_Edge_on_OpenSTLinuxbut I have follow error:| error: attributes are not yet allowed on `if` expressions| --> /usr/src/debug/iotedge-daemon/1.1.6-r0/iotedge-1.1.6/vendor/sysinfo/src/utils.rs:27:5| || 27 | #[allow(clippy::identity_conversion)]| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^| | error: aborting due to previous error| | error: could not compile `sysinfo`.There is a possible solution?Looking a similar issues, it seem a problem of version of Rust: https://github.com/Frederick888/git-credential-keepassxc/issues/12There is a way to udate the Rust version used for build?
I created an image of openstlinux using this tutorial:https://wiki.st.com/stm32mpu/wiki/How_to_integrate_Azure_IoT_Edge_on_OpenSTLinuxthe virtualitation install correctly the docker, but not docker-compose. Is it possible to add it?
Hi everyone, hope you are having a good day/night. We are planning to have the STM32MP157-DK1 board with a battery working. If there is an unexpected shutdown or forced one on this board, the memory could be corrupted? or damaged? or is better to implement an external circuit to make a "soft" shutdown, like, turn off the switch and it continues working until the shutdown is complete.Thank you.
Hi again, hope you are having a good day. We are trying to record audio with the integrated audio codec with a python script, but it starts with an abrupt peak every time like the image below.We have tried to configure the alsamixer and nothing changes. Thanks.
Hello.I'm making custom board with stm32mp157AAA.lcd works nomally, but i want rotate this to 90.Please help me.thanks
I am using 2 virtual UARTs as described in STM32MP1Cube Applications/OpenAMP/OpenAMP_TTY_echo example and watchdog for M4 core.Problem occurs when I using select or poll syscall to read from the device. Kernel panic occurs with following on dmesg log:[ 930.513060] remoteproc remoteproc0: crash detected in m4: type watchdog [ 930.518272] remoteproc remoteproc0: handling crash #5 in m4 [ 930.523785] remoteproc remoteproc0: recovering m4 [ 930.531138] rpmsg_tty virtio0.rpmsg-tty-channel.-1.0: rpmsg tty device 0 is removed [ 930.542605] Unable to handle kernel NULL pointer dereference at virtual address 00000018 [ 930.552002] rpmsg_tty virtio0.rpmsg-tty-channel.-1.1: rpmsg tty device 1 is removed [ 930.558402] pgd = a2d2820b [ 930.560889] [00000018] *pgd=d1832835, *pte=00000000, *ppte=00000000 [ 930.570663] Unable to handle kernel NULL pointer dereference at virtual address 00000018 [ 930.578406] rpmsg_tty virtio0.rpmsg-tty-channel.-1.2: rpmsg tty device 2 is removed [ 930.586506] pgd = a2
Hello!I have an issue on a custom board with STM32MP153CAB and KSZ8081RNB.TF-A, FIP and kernel were built in Developer package. Linux distribution was built as startard configuration st-image-core in Distribution package.Clocks and device trees are configured like specified in https://wiki.st.com/stm32mpu/wiki/Ethernet_device_tree_configuration#RMII_with_25MHz_on_ETH_CLK_-28no_PHY_Crystal-29-2C_REF_CLK_from_PHY_-28Reference_clock_-28standard_RMII_clock_name-29_is_provided_by_a_RCC_SoC_internal_clock-29Here are fragments of device tree for U-Boot and kernel (generated by STM32CubeIDE and manually edited):eth1_pins_mx: eth1_mx-0 { pins1 { pinmux = <STM32_PINMUX('A', 1, AF11)>, /* ETH1_REF_CLK */ <STM32_PINMUX('C', 1, AF11)>, /* ETH1_MDC */ <STM32_PINMUX('G', 8, AF2)>, /* ETH1_CLK */ <STM32_PINMUX('G', 13, AF11)>, /* ETH1_TXD0 */ <STM32_PINMUX('G', 14, AF11)>; /* ETH1_TXD1 */ bias-disable; drive-push-pull; slew-rate = <
I have custom complied U-BOOT according this wiki page: https://wiki.st.com/stm32mpu/wiki/How_to_compile_the_device_tree_with_the_Developer_Package#U-boot_-_unpack_and_patch_sourcesIt was build succesfully to support QSPI flash. Now I want to unify it with eMCC, so wand to use same custom compiled TF-A, U-BOOT for both QSPI and eMMC. After TF-A and U-BOOT (with FIP) build I have successfully downloaded all of them to target board using standard FlashLayout file but after trying to boot eMMC found following message in console:Hit any key to stop autoboot: 0Boot over mmc0!switch to partitions #0, OKmmc0(part 0) is current device** Unrecognized filesystem type **Accoring to mmc part it has correct PT:STM32MP> mmc partPartition Map for MMC device 0 -- Partition Type: EFIPart Start LBA End LBA Name Attributes Type GUID Partition GUI
Hello,Is there any clause from ST that prevent the usage of DK1 evaluation board in production? I have seen few notes in the user manual:https://www.st.com/resource/en/user_manual/dm00591354-discovery-kits-with-stm32mp157-mpus-stmicroelectronics.pdf"Product marking Evaluation tools marked as “ES�? or “E�? are not yet qualified and therefore not ready to be used as reference design or in production. Any consequences deriving from such usage will not be at ST charge. In no event, ST will be liable for any customer usage of these engineering sample tools as reference design or in production. “E�? or “ES�? marking examples of location: • On the targeted STM32 that is soldered on the board (for illustration of STM32 marking, refer to the STM32 datasheet “Package information�? paragraph at the www.st.com website). • Next to the evaluation tool ordering part number that is stuck or silk-screen printed on the board."It sounds to me that as long as we are staying away of automotive, military or
Hi everyone!By default, the linker file describes that the memory partitions are configured as:RETRAM - ISR Vector;SRAM1 - Code;SRAM2 - Data;SRAM3 - buffer IPC;SRAM4 - not used in .ld file, but in device tree it's DMA1/DMA2 buffer.My application does not need DMA buffers and I want to use this memory efficiently, namely:RETRAM - ISR Vector;SRAM1+SRAM2 - Code;SRAM3 - Data;SRAM4 - buffer IPC;To do this, I change the linker file accordingly:/** ****************************************************************************** * @file LinkerScript.ld * @author Auto-generated by STM32CubeIDE * Abstract : Linker script for STM32MP157A-DK1 Board embedding STM32MP157AACx Device from STM32MP1 series * 128Kbytes FLASH * 128Kbytes RAM1 * 128Kbytes RAM2 * * Set heap size, stack size and stack location according * to application requirements. * * Set memory bank area and size if external memory is used ****************************************************************************** * @atten
Hello,I need use ANA0 and ANA1 as ADC because HW engineer connect ADC signal to those pins. But I don't konw how to config the devicetree. I think ANA0 and ANA1 pin are special pins. Please help me, Thank you.Shaw.
Hi, I have an issue while building the Distribution Package. I have created a new layer and tried to add different programs with CORE_IMAGE_BASE_INSTALL_append. I have succeeded to add programs like python3, wvdial, etc. I also want to add nano and networkmanager but I get these errors:
I have an old Edimax EW-7811Un that I am trying to get working on the STM32MP157D-DK1. I have installed Yocto along with poky and the meta-st-stm32mp BSP layer. I do not want to use OpenSTLinux right now.I configured the kernel with bitbake -c menuconfig virtual/kernel and made sure the following kernel modules were enabled:Networking support > Networking options (following should be enabled):[*] TCP/IP networking[*] IP: kernel level autoconfiguration[*] IP: DHCP support[*] IP: BOOTP support[*] IP: RARP support<*> The IPv6 protocolNetworking support > Wireless<M> cfg80211 - wireless configuration API[*] cfg80211 wireless extensions compatibility (for compatibility with some older tools, e.g. get iwconfig to talk to device)<M> Generic IEEE 802.11 Networking Stack (mac80211)[*] Minstrel (for rate control in 802.11)Device Drivers > USB support, make sure USB Host is enabled:<*> Support for Host-side USB[*] Enable USB persist by defaultDevice Drivers> Ne
Hello,I'm trying to set-up a BLE GATT service and I'm struggling with the fact of the MAC address being the same for all the STM32MP1 devices.When I run the hcitool dev this is what I get:root@stm32mp1:~# hcitool devDevices: hci0 43:43:A1:12:1F:ACPlease help
In addition to this question:https://community.st.com/s/question/0D53W00000pUh4gSAC/tfa-and-uboot-custom-compile-failsI'm still unable to boot from qspi. I addition to question about I've discovered, that it's necessary to add STM32MP_SPI_NAND=1 option to t-fa build command lineThere are two issues:1.If I add it to commend line as described in wiki I've got following compilation error while compiling TF-A for USB :arm-ostl-linux-gnueabi-ld.bfd: BL2's RO content has exceeded its limit.arm-ostl-linux-gnueabi-ld.bfd: section .data VMA [000000002fffa000,000000002fffa543] overlaps section ro VMA [000000002ffea000,000000002fffafff]arm-ostl-linux-gnueabi-ld.bfd: region `ROM' overflowed by 5444 bytes....../Makefile.sdk:190: recipe for target 'tf-usb' failed2.If I add it only for nand target all ok:Makefile.sdk line 46:# Init default config settingsTF_A_DEVICETREE_nand ?= stm32mp157c-ed1 stm32mp157f-ed1 stm32mp157a-ev1 stm32mp157c-ev1 stm32mp157d-ev1 stm32mp157f-ev1TF_A_EXTRA_OPTFLAGS_nand
Hello there,I have a OSD32MP1-RED board based on stm32mp157c. Following the instructions How to create your own machine, I was able to compile the image. The problem happens when I try to boot from SD card with the generated image after load the boot loader and kernel, I got the error: Waiting for root device /dev/mmcblk0p6...After some research, I realized the mmcblk0p6 corresponds to eMMC memory in my board (but now this is empty). So, I have tried to modify the kernel's arguments adding in the config machine file the variable: APPEND = "root=/dev/mmcblk1p6 rootwait rw console=ttySTM0,115200 init=/sbin/init firmware_class.path=/lib/firmware/"However I get the same result, the generated image alway points to the mmcblk1p6 block. My question is: What variable do you need to set or modify to change the parameters passed to kernel from u-boot?I attached the log file generated for more details.Thanks in advance for your support.
Hello everyone!I'm getting familiar with the STM32MP1 tools on a linux laptop and I'm trying to burn the demo to my STM32MP1D-DK1 board. I know most the demos are aimed at the DK2 but it's sold out everywhere and I don't currently need wifi or bluetooth (or an LCD), so this seemed good enough for me. Anyway, I'm trying to follow the instructions on the STM32MP1 wiki page (https://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP1_boards/STM32MP157x-DK2/Let%27s_start/Populate_the_target_and_boot_the_image) and I'm running into an issue when trying to burn the firmware:Unfortunately, I get the errors above, a red LED (LD5?) starts flashing on and off, a blue LED (LD6?) stays on, and LD4 continues to toggle on and off about every second or so (this was the same prior to burning the firmware as well. I tried to follow a similar tutorial to burn via a command line (https://wiki.st.com/stm32mpu/wiki/STM32MP15_Discovery_kits_-_Starter_Package#Preparing_the_USB_serial_link_for_flashing) and ha
Can I use the STM32CubeProgrammer to download the uboot-spl to eMMC? How can I use write the tsv file to download the uboot-spl
Hi,I'd like to be able to read/write for debug purposes peripheral registers of the MPU and MCU from Linux user space. Of course all under root permissions. The most straightforward way should be doing it using /dev/mem but I'm not sure if it is a best way to go. Any thought would be highly appreciated.Thanks.
After reading most of the topics concerning my question and not finding an answer, which solves our problem, here my describtion:We are currently integrating OpenAMP in our Application. For now, we are using the configuration from the OpenAMP_TTY_echo example project with enabled trace logs, and a single virtual UART between the M4 and the A7.When starting the Application by using 'rproc start' in a booted linux system, it works as expected. The trace logs are available, and the /dev/ttyRPMSG0 virtual UART is loaded:cat /sys/class/remoteproc/remoteproc0/state outputs 'running'cat /sys/kernel/debug/remoteproc/remoteproc0/trace0 shows our debug outputs from the M4We can send dummy data to /dev/ttyRPMSG0 and get the echoed responseIn our use case we need the M4 Application to start as early as possible, so we have configured u-boot SSBL to load the ELF file and start the M4 execution. We are then facing the problem that the software is started, but the linux kernel does not load the /dev/
Hi all,I wish to perform PWM for certain leds connected to STM32MP1 pins.I wish to do it from the user space application. I got it working via sysfs interface , but I am more interested in controlling it via a user space application based on some logic. How can I do this ? Is there API documentation for it?TIA
Hello,I need use STM32MP157 connect a HP USB printer. New I need install HPLIP package. I am currently using NFS.But when I use this command "apt-get install hplip", I will receive error infomation. As shown below.Reading package lists... DoneBuilding dependency treeReading state information... Donehplip is already the newest version (3.19.12-r0).0 upgraded, 0 newly installed, 0 to remove and 276 not upgraded.1 not fully installed or removed.After this operation, 0 B of additional disk space will be used.Do you want to continue? [Y/n] yThe software package is provided AS IS, and by downloading it, you agree to be bound to the terms of the software license agreement (SLA).The detailed content licenses can be found at https://wiki.st.com/stm32mpu/wiki/OpenSTLinux_licenses.Setting up hplip (3.19.12-r0) ...The unit files have no installation config (WantedBy=, RequiredBy=, Also=,Alias= settings in the [Install] section, and DefaultInstance= for templateunits). This means they are not
I am trying to Debug m4 in production mode. M4 is not halted.I am getting an error "Failed to insert breakpoint".I can successfully debug in Engineering mode. but, I need to Debug in Production mode.Can you 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.