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 all,We are using LAN8720 as the ethernet PHY for connectivity.The IC has 25MHz crystal connected for the refclk and we want to run in RMII mode. We have requirement of not using the INT_N for the ethernet IC.Upon exploring the ST Docs I was not able to figure out the same. What should be the correct device tree configuration for the same? We need to get it up correctly for each of TF-A , U-BOOT and Kernel ? So looking for answer around the same for device tree changes for each of these.LAN8720 + RMII Mode + REFCLK with no using the INT_N interface.Really appreciate the help.
I'm trying develop on Cortex-M4 of "Getting started STM32MP157x-DK2".I have a problem that don't detects the board IP address when "6 Check connection to the target" of Modify, rebuild and reload firmware.However, Linux prompt are displayed in the console windows by clicking on the "STM32 butterfly button" and I can run Linux command on the board.Serial target widget status icon is yellow light, and status is "idle".I read STM32CubeIDE support wiki page (this page), but I can't discover solution this problem.Are there any other settings that should be made?Am I missing something?I use STM32CubeIDE on Windows10 OS.I'm not familiar English, so I'm sorry if my sentence is strange.Best regards.
Hi , We are using the STM32MP157-dk1 board. We are able to boot the both cores (cortex A7) bare metal code from the SRAM but where as loading to the DDR that time only core 0 is booting properly and core 1 not booting. Is their any way to enable the DDR accessing to core1(second A7).
Using the ecosystem v1.2 after a cold boot the system boot properly but after issuing a reboot command the system loads u-boot but it gets stuck at loading the kernel. Are there any known limitations/issues?
Hello, I want to use DDR test suite in STM32 cube IDE but I always have a error when I try to connect my board. I think I understood that was because I have to modify something with stage boot with SPL. I red the docs but I am quite lost can someone give me the steps to make DDR test suite work ?Kind regards
We are trying to bring up a custom board which used STM32MP157FACx processor.The DDR memory model we use is W63AH2NBVABE which is a LPDDR3 32-bit. We use CubeMx to generate the device trees. We have chosen the configuration shown below in the picture in CubeMx which generated tf-a device trees and one of them (stm32mp157f-projectname-mx-fw-config.dts) included the following device tree, which is non-existent.#include "stm32mp15-ddr-128m-fw-config.dts"The above device tree is not available in the tf-a source in the developer package (Developer-Package/stm32mp1-openstlinux-5.10-dunfell-mp1-21-03-31/sources/arm-ostl-linux-gnueabi/tf-a-stm32mp-2.4.r1-r0/tf-a-sources/fdts) or in the git.How do we get this file? Does it expect the developer/user to create one? if so, why does the comment not let the user know that? Any pointers would be much appreciated. Thanks!
Hello,I would like to embark on a project for a custom board with the STM32MP157DAB1 and I am referencing the STM32MP15-DISCO schematic from ST which uses the STM32MP157CAC3.My Question: How do I translate between the functionality of the pins?From observation, some functionality in one package does not translate to the other and after searching the datasheet, I am lost and need some guidance.Example, PC0 functions as LTDC_R5 (in the STM32MP157CAC3) and is connected with the video input of the SiI9022ACNU(another chip on the discovery board). How do I translate this functionality to the STM32MP157DAB1? What pin do I use for this on the STM32MP157DAB1?Any help is appreciated, thanks!PS - just an afterthought after reading other posts, do I have to use the STM32CubeMX to define such properties?
Hi,We are using stm32mp1 uboot. I have stoped uboot and i run baremetal appilication it works fine.after sucessfull completion of baremetal application.how do i go back u boot prompt?
I have tried it and it works but I wanted to see if there are any limitations. The boards are identical the only difference is the MPU.
..
Hi.Is there a way to properly power off the board without using the console's poweroff command?Tried to press wake-up button for 10 seconds with no effect...Regards,Vlad.
We have custom SOM which has been designed with STM32MP157C.We are using the OpenSTLinux 3.0.0 as of now as the distribution running on it.In case of LAN PHY interfacing we are using LAN8720.There is a strange behavior , upon I can see the below message in top.This process is hampering the cpu performance. When running GUI based application I can see definite lag which occurring because of this. The issue completely random earlier but now pretty consistent. Any ideas what might be happening here?Any leads are highly appreciated TIA
Hi,I have some doubts about how I could sample from the ANA0/ANA1 pins of an STM32MP1 CPU from inside the M4 firmware via HAL. I would like to programmatically switch between these two pins.Sampling from ADC_CHANNEL_0 seems to work, so I guess it is connected to ANA0. But sampling from ANA1 / ADC_CHANNEL_1 does not.Could anybody point me to some documentation or, event better, example source code?Thank you,Antonio
I am trying to customize the boot script which is used to boot my STM32MP157 Avenger96 board. I want to include some u-boot variables and alter the boot process.Current boot script:if test -n "${distro_bootpart}"; then setenv partition "${distro_bootpart}" else setenv partition "${bootpart}" fi if test ! -e ${devtype} ${devnum}:${partition} boot/fitImage; then echo "This boot medium does not contain a suitable fitImage file for this system." echo "devtype=${devtype} devnum=${devnum} partition=${partition} loadaddr=${loadaddr}" echo "Aborting boot process." exit 1 fi part uuid ${devtype} ${devnum}:${partition} uuid # Some STM32MP1-based systems do not encode the baudrate in the console variable if test "${console}" = "ttySTM0" && test -n "${baudrate}"; then setenv console "${console},${baudrate}" fi if test -n "${console}"; then setenv bootargs "${bootargs} console=${console}" fi #New variables I want to include bootlimit rootfspart set
I am evaluating the STM32NP157D Discovery Kit.In the Getting Started Section I have successfully done the gtk_hello_world step.The next step successfully rebuilds the kernel. After pushing it on the board I do the reboot and get the following Error message during booting:# Booting kernel from Legacy Image at c2000000 ... Image Name: Linux-5.10.61 Created: 2022-01-23 13:24:54 UTC
I have built a test program from the two examples PWR_STOP_CoPro and LPTIM_PulseCounter. With the LPTIM_PulseCounter I changed the CounterSource to LPTIM_COUNTERSOURCE_INTERNAL and adjusted the priority HAL_NVIC_SetPriority (LPTIM2_IRQn, 0, 0);Both programs run as expected only when I start the timer HAL_LPTIM_TimeOut_Start_IT (& hlptim2, 0xFFFF, 0x7000) and then go to STOP Mode HAL_PWR_EnterSTOPMode (PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI); the M4 core does not wake up by the LP Timer interrupt, but an EXTI interrupt lets it wake up.Can someone tell me what I might have overlooked?
Hi.My STM32MP157A-DK1 board while in power off state without any connections consumes 45 ma of current.How could i reduce such a big amount?Could it be ST-LINK power drain, or is it STUSB1600?What could i do to reduce the current to its minimum in poweroff or standby modes?Regards, Vlad.
It isn't clear to me from this article (https://wiki.st.com/stm32mpu/wiki/Clock_device_tree_configuration_-_Bootloader_specific#cite_note-st.2Cstm32mp1-rcc.txt-1) if I can set operating points for my stm32mp157c part. If not am I stuck setting PLL1 in the tf-a? Also, can I use the cpufreq-utils to change clock speed on the fly?Thanks,Ben
Hello,according to the STM32MP151A/D Datasheet (Table 13.) the voltage on VDD3V3_USBHS Pin can be 0 ... 3.6V when USBH not used.But on the another page of the Datasheet there is this section: "VDD3V3_USBHS and VDD3V3_USBFS are respectively the USB high-speed and full-speed PHY supply. Voltage range is 3.07 V to 3.6 V. VDD3V3_USBFS is used to supply OTG_VBUS and ID pins. So, VDD3V3_USBFS must be supplied as well when USB high- speed OTG device is used. If not used, must be connected to VDD."The last sentence is the opposite of the data given in Table 13.Now I dont know what I am allowed to do? I dont need USB on my board and I dont want to add circuitry that is mandatory according to datasheets requirement: "VDDA1V8_REG must be present before VDD3V3_USBHS".Thanks for help.
Hello, everyone!We are developing a custom board with the MYC-YA157C module. We took the the MyIR device tree configuration and add our layer there. The vendor config had a USB_OTG capable of supplying power and acting as a host. A separate chip, controlled by i2s, was responsible for supplying power to the USB. In our device, we decided to simplify and not provide power via USB, because we plan to use this interface only for the firmware downloading. The power chip was removed.Now, when starting, the u-boot freeses. I rebuilt it with a more verbose configuration and got the following debug output before the freezing:... usb_add_config: interface 0 = f_fastboot/d7c2e700 g_dnl_get_board_bcd_device_number g_dnl_bind: calling usb_gadget_connect for controller 'dwc2-udc' usb_dnl_fastboot: ready dwc2_udc_otg init failed set_config: high speed config #1: usb_dnload fastboot_set_alt: func: f_fastboot intf: 0 alt: 0As far as I understand, I need
Hi,I'm using STM32MP157A-DK1 and I built the image adding the logicanalyser layer (https://github.com/STMicroelectronics/meta-st-stm32mpu-app-logicanalyser).I follow the tutorial "How to exchange data buffers with the coprocessor".I add the rpmsg_hdr code to send message from the M4 to the DDR memory.The message is "Hello\r\n".I would like to see this message with A7.In the folder /dev there is the device rpmsg-sdb.For the code I follow the section "rpmsg_sdb driver" of https://wiki.st.com/stm32mpu/wiki/How_to_exchange_data_buffers_with_the_coprocessor#cite_note-sdb-driver-2I have no problem to open the file descritpor but when I use the command mmap occurs an error that I get with strerror(errno): "Invalid Argument".This is the code:void *buff0_id; int fd; size_t size; int main(void) { printf("Hello OpenSTLinux World!\n"); size = 7; fd = open("/dev/rpmsg-sdb", O_RDWR); if(fd < 0) { printf("Error descriptor\n"); printf("%s\n", strerror(errno)); }  
Hello,I am working stm32mp157c. I want to send the data coming from ipcc to m4 to another chip with spi.My code is;void MX_SPI4_Init(void) { hspi4.Instance = SPI4; hspi4.Init.Mode = SPI_MODE_MASTER; hspi4.Init.Direction = SPI_DIRECTION_2LINES_TXONLY; hspi4.Init.DataSize = SPI_DATASIZE_8BIT; hspi4.Init.CLKPolarity = SPI_POLARITY_LOW; hspi4.Init.CLKPhase = SPI_PHASE_2EDGE; hspi4.Init.NSS = SPI_NSS_HARD_OUTPUT; hspi4.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_8; hspi4.Init.FirstBit = SPI_FIRSTBIT_MSB; hspi4.Init.TIMode = SPI_TIMODE_DISABLE; hspi4.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE; hspi4.Init.CRCPolynomial = 0x0; hspi4.Init.NSSPMode = SPI_NSS_PULSE_ENABLE; hspi4.Init.NSSPolarity = SPI_NSS_POLARITY_HIGH; hspi4.Init.FifoThreshold = SPI_FIFO_THRESHOLD_01DATA; hspi4.Init.TxCRCInitializationPattern = SPI_CRC_INITIALIZATION_ALL_ZERO_PATTERN; hspi4.In
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.