Get ready for the STM32 Summit 2026 | Online, November 3
Ask questions and find answers on STM32 microprocessors software development tools.
Most recent activity
..
I was generate key-pair (privateKey.pem, publicKey.pem) by STM32MP_KeyGen_CLI and also got publicKeyhash.bin. After this i was sign FSBL TF-A bootloader and then make FIP (OP-TEE, U-Boot, configs) with "TRUSTED_BOARD_BOOT=1" option, kernel, rootfs. At now i have a question: is any easy way to put publicKeyhash.bin on device OTP (about hundred devices)?Usage "STM32_Programmer_CLI -c port=usb1 -otp program wordID=0xNNNN value=0xMMMM" command is not easy way, because absent command to read OPT. How to check programmed value after write, before lock device? And also need some script to convert "publicKeyhash.bin" to STM32_Programmer_CLI commands.How was solved this case on mass production?
Hello, I have a problem with programming EMMC through USB. Everything seems to be ok but when in U-Boot USB change from DFU to Gadget on Linux side everything stack (lsusb - stack). Of course, programming processes interrupt as well. I'm not sure where I should look for a malfunction. After the system boot-up USB gadget works normally I'm able to login to the board through USB. So from a hardware point of view, it seems to be correct or maybe not. When kernel boot-up and the system starts there is no switching activity on USB just load the Gadget driver and start USB and it works. I'm not sure how the switching process on USB in U-Boot works. Part of my schematic is very simple So USB-C-ID is connected to PA13, with no connection to VBUS on the processor site. Maybe this VBUS is a problem or maybe the problem is in dts. Please suggest to me something where I should start. Thanks
The four wire interface from the ST-LINK V2 has no clock.Where does it say that ST devices do not require a clock for SWD ?Also why is it seemingly impossible to work through a hub ? This makes life very difficult.
I've followed this:https://www.youtube.com/watch?app=desktop&v=qEzfqKt3exE&list=PLnMKNibPkDnFp5YvrvWjgfjrOs0Vi34Mt&index=5and set up project in STMCUBEIDEwhen i try and include #include <gtk/gtk.h> i get the followingmake all Wrapper for /opt/st/stm32cubeide_1.9.0/plugins/com.st.stm32cube.ide.mpu.linux.toolchain_2.0.0.202105061257/tools/bin/makeFIP_DEPLOYDIR_ROOT: /home/reece/STM32CubeIDE/workspace_1.9.0/SterlingAcsses/Debug/../../FIP_artifacts+ case "$command" in+ exec make allBuilding file: ../main.cInvoking: MPU GCC Compilerarm-ostl-linux-gnueabi-gcc -mthumb -mfpu=neon-vfpv4 -mfloat-abi=hard -mcpu=cortex-a7 --sysroot=/home/reece/.eclipse/com.st.stm32cube.ide.mcu.rcp.product_1.9.0_1935169236_linux_gtk_x86_64/plugins/com.st.openstlinux.sdk.openstlinux_5.10_dunfell_mp1_21_11_17_5.10.0.202111171131/tools/sysroots/cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi "../main.c" -std=gnu11 -g3 -c -I/home/reece//.eclipse/com.st.stm32cube.ide.mcu.rcp.product_1.9.0_1935169236_li
Both on Windows and on Linux, latest STM32CubeIDE, I cant get debug or run using ST-Link.If I try to use ST-Link GDB ServerError in final launch sequence: Failed to execute MI command: target remote localhost:61234 Error message from debugger back end: Remote communication error. Target disconnected.: Connection reset by peer. Failed to execute MI command: target remote localhost:61234 Error message from debugger back end: Remote communication error. Target disconnected.: Connection reset by peer. Remote communication error. Target disconnected.: Connection reset by peer.STMicroelectronics ST-LINK GDB server. Version 6.1.0 Copyright (c) 2022, STMicroelectronics. All rights reserved. Starting server with the following options: Persistent Mode : Disabled Logging Level : 1 Listen Port Number : 61234 Status Refresh Delay : 15s Verbose Mode : Disabled SWD Debug : Enabled ST-LINK device status: UNKNOWN Waiting for debugger connection... Debugger connected Waiti
STM32CubeProgrammer v2.10, running on Ubuntu to flash a 64GB MicroSD card on OSD32MP1-RED board is successfull, but failed to flash 128GB MicroSD card on the same board. Same tsv file and image binaries are used. MicroSD Card is 128GB SanDisk Ultra MicroSD XC1. STM32CubeProgrammer logs end as follows: RUNNING Program ... PartID: :0x03 Reconnecting the device ... USB speed : High Speed (480MBit/s) Manuf. ID : STMicroelectronics Product ID : USB download gadget@Device ID /0x500, @Revision ID /0x2001, @Name /STM32MP157C?? Rev.Z, SN : 001800273239511637383434 DFU protocol: 1.1 Board : -- Device ID : 0x0500 Device name : STM32MP157C?? Rev.Z Device type : MPU Device CPU : Cortex-A7 Start operation done successfully at partition 0x03 Error: an error occured while uploading data from the virtual partition 0xF1 Received PhaseID == 0xFF, system is
I'm trying to program/debug a CM4 co processor on a STM32MP151 3rd party board.I setup the Debug as "thru Linux core" Serial port and Inet address looks ok, I got a green connection light, "status connected", and after trying to debug, I got this message:Error in final launch sequence: Failed pre launch Failed pre launch Transfer has failed, please: 1. check your physical connection 2. make sure that your target is still running Linux 3. make sure that your target has enough storage space 4. make sure that remote directory has valid access rights > you can open a Console View for this... Original message: Unable to create /usr/local/projects/STM32MP151_Test_CM4/lib/firmware because of "java.io.IOException: inputstream is closed"Any suggestions how to setup the debug?
I just created a project in STMCubeIDE for STM32MP157A-DK1 and am trying to run MCU debugging in ENGINEERING MODE and PRODUCTION MODE. I use an ST-LINK wire and an Ethernet Over USB connection. SSH and the UART command line work well. In engineering mode, I get the hardware breakpoints error. In production mode, all breakpoints that are set to an infinite loop do not work...this is very strange. What did I miss?
External memory, connected to a STM32MP1, is written with the STM32CubeProgrammer via USB. Here the chip to be written is written with "usb1" (STM32_Programmer.sh -c port=usb1 -d some.tsv").Here we could notice the following behavior: If more than one STM32MP1 is connected to the host system via USB, another label (usb2) is assigned. If a higher serial number is connected later, it will be assigned to usb1, and the already connected device will be assigned the new label usb2. The connected devices are displayed in the device manager as DFU Devices. There is no COM port assignment.This raises the question of how several devices can be connected to a host at the same time and assigned uniquely to enable several devices to be flashed in parallel.What is the best practice to guarantee consistent addressing of the boards.
When I try to connect to a STM32MP157F-DK2 board via SWD/JTAG, STM32CubeProgrammer aborts with a segmentation fault on my host system (openSUSE Leap 15.2).I get the following error message, when I start STM32CubeProgrammer within a shell:# # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00007fee0c8259fe, pid=14499, tid=0x00007fee00ee6700 # # JRE version: OpenJDK Runtime Environment (8.0_265-b01) (build 1.8.0_265-b01) # Java VM: OpenJDK 64-Bit Server VM (25.265-b01 mixed mode linux-amd64 compressed oops) # Problematic frame: # C [libCubeProgrammer_API.so+0x5b9fe] connectStLink+0x2ee # # Core dump written. Default location: /usr/local/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin/core or core.14499 # # An error report file with more information is saved as: # /usr/local/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin/hs_err_pid14499.log # # If you would like to submit a bug report, please visit: # http://bugreport.java.com/bugrepor
and i try use it in ubuntu and it work....so :sad_but_relieved_face:
Good afternoon.I tried to create a demo project (STM32MP157C-DK2\Demonstrations\Al_Character_Recognition) for the STM32MP157D_DK1 board. When assembling, I had a problem.(Gluk_test_1) How to include the library in the project correctly? Sincerely, Alexander.
I am having difficulties activating the EXTI interrupt for a pin in the M4 NVIC. What I did: Opened STM32CubeMX, selected the board STM32MP157F-DK2, opted to configure all peripherals in their default state Activate SPI5 in the M4 domain, incl. DMA domain Select PF3 pin EXTI mode with falling edge trigger detection (in my application serves as a data ready signal that should start the SPI transfer) Now trying to activate EXTI Line 3 interrupt in NVIC, but the check-box is greyed out & I have no clue what I am missing to let me activate the EXTI line 3 interrupt Does anyone know what I missed? Attached is the ioc file generated so far. Thank you all so much for any help!
Hi, I am not newer for stm32cubeide. But the stm32cubeide had very bad experience on stm32mp1 platform. Most of the time the debug fails with the error prompt in the screenshot below. The solution is also just to reconnect the stlink or serial port.So, for now I try to debug cm4 applications using openocd + gdb in a command way. It is much better than stm32cubeide in terms of efficiency except that I need to remember some commands and it is not as convenient to use as the graphical menu on stm32cubeide. Probably because eclipse is too bloated, using vscode + openocd + gdb to debug cm4 applications is a good way.
I have been trying to connect to stm32mp157x-DK2 via on board stl-ink and to my custom board via stlink-v3set, using the STM32CubeProgrammer, but on both boards I get the same error. I have tried selecting engineer and productions mode - no luck. What am I doing wrong? - see a picture bellowAlso why stm32mp157x-DK2 - allows full access via uart to boards memory and custom board does not (see schematics bellow)1.pic. J-tag error of not detecting MPU on eval-board.2.Pic. Eval-board st-link schematics.3.Pic.Custom board - pins that connects to STlink-V3set.
Hi there, I am trying to decrease the RPMSG buffer size from 512 to 256 bytes. I have successfully managed to increase the buffer size in the past to 1024 and allocate more memory for 32VRINGS. When attempting to decrease the buffer size to lower than 512 in the linux side Cube IDE will prompt "Failed to insert all hardware breakpoints...". I am really curious on how openamp_conf relates to hardware breakpoints.The configuration for both sides as follows:Linux Sidevirtio_rpmsg_bus.c :#define MAX_RPMSG_NUM_BUFS (256) #define MAX_RPMSG_BUF_SIZE (256)stm32mp15xx-dkx.dtsi:vdev0vring0: vdev0vring0@10040000 { compatible = "shared-dma-pool"; reg = <0x10040000 0x0800>; no-map; }; vdev0vring1: vdev0vring1@10040800 { compatible = "shared-dma-pool"; reg = <0x10040800 0x0800>; no-map; }; vdev0buffer: vdev0buffer@10041000 { compatible = "shared-dma-pool"; reg = <0x10041000 0x10000>; no-map; };M4 SideSTM32MP157CACX_RAM.ldMEMORY
I try to use STM32CubeMX generate project with makefile, but the option is gray. It's can not select. Does the cubemx not support generate makefile on stm32mp1 platform ?
The Nucleo F446RE pops up with a media directory as soon as I plug the USB into the ST-LinkThe STM32MP157A-DK1 does not do that. And when I try to program it it says NO ST-LINK Detected. I have tried the Boot switches in every position but I understand Boot 0 Off, and Boot 2 On should let me program the M4 over the ST-Link. Help.
Hi!My question is: how can I create a stm32mp1 project with STM32CubeIDE 1.8.0 from scratch?I've browsed through the wiki pages, and I only came across examples where they import ready projects.If I create a new project by choosing for example the stm32mp157c-dk2 card as target, the project is created without any problems.I can modify and build the Cortex-M4 subproject without any problems.I can also modify the .ioc file and regenerate the code.I am able to build GTK and Qt userspace example programs in the Cortex-A7 subproject (I built the st-example-image-qtwayland image and the SDK).So it all works. What I can't do:In CubeMX I select which IP belongs to which context. CubeMX generates the new device trees. How can I build .dtb's from these in CubeIDE?The wiki page is not completely clear to me :https://wiki.st.com/stm32mpu/wiki/How_to_manage_OpenSTLinux_projects_in_STM32CubeIDEI cannot follow the steps described here because the compilation stops with the following error:*** *** Con
I believe HSE is 24 MHz, DIVM3 is /2 (12 MHz) DIVN3 is X34 (408 MHz) DIVP3 is /2 (204 MHz) But the screen says it is 208.87793. I thought I knew how the PLL worked. And it is not like this. I have a screen shot.
am getting things like Multiple Problems have occurred. Compacting Resource Model. Refreshing Workspace, Workbench Autosave Job. An internal error occurred while showing an internal error. It says look at the .log file. I have not found where that is on my Linux computer. I am running workspace 1.5.1 it looks like the latest is 1.8. Should I just wipe out the STMCubeIDE and start over? I think a java update for the IDE yesterday killed this. I remember seeing it say something about running out of mermory. My whole system is using 5.6 GB out of the 32 GB installed.
-- Using STM32cubeIDE.
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.