Join discussions in the Product Forums. Ask questions, learn from your peers, and share insights on ST solutions to accelerate your design journey.
Most recent activity
Hi,Im using the IDe but today the software do nothing.I cant compile the project or create a new project or debug and when i want close the program, the cubeide not respond and ill have close using the task manager.Yesterday works fine and i dont make changes on my computer.Any suggestion about what can i do?Thanks!
HelloI am developing a custom board using the STM32MP255F-AKUpdates to the DeviceTree (DT) of a custom board placed in the `mata` layer are not reflected in the build.I have already fetched the source using `devtool modify virtual/kernel`The Device Tree for the custom board is located at .../layers/meta-st/meta-st-stm32mp-addons/mx/ddlskt/..Edit the kernel's DT (stm32mp255f-ddlskt-mx.dts)Add a marker to `model = “...”`: `model=“... AAA”`I tried building it$ bitbake virtual/kernelWrote Image.gz, *.dtb, and modules to the SD card and booted(brd-ddlskt) # cat /proc/device-tree/modelSTMicroelectronics custom STM32CubeMX board - openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06AAA has not been added to the modelRunning `cleansstate` before building will reflect the updated device tree$ bitbake -c cleansstate virtual/kernel$ bitbake virtual/kernelWrite Image.gz, *.dtb, and modules to the SD card and boot(brd-ddlskt) # cat /proc/device-tree/modelSTMicroelectronics custom STM32CubeMX board - opens
(official project, W61 firmware updated, full setup completed) **[BUG/HELP] X-CUBE-ST67W61 V1.2.0 — sem_if_ready not received on NUCLEO-N657X0-Q after complete setup**---**Hardware:**- NUCLEO-N657X0-Q (MB1940)- X-NUCLEO-67W61M1 (MB2230)- JP1 and JP2 closed, Arduino connectors fully seated**Software:**- STM32CubeIDE 1.16.x- X-CUBE-ST67W61 V1.2.0- X-CUBE-FREERTOS V1.4.0- STM32CubeProgrammer v2.22.0- Project: ST67W6X_Echo for NUCLEO-N657X0-Q (official, unmodified)---**Setup completed (all steps verified):**1. W61 firmware updated to st67w611m_mission_t01_v2.0.97 using QConn_Flash_Cmd via COM port — [All Success] with SHA256 match2. FSBL compiled from official project (0 errors, 0 warnings), signed with STM32_SigningTool_CLI --align (v2.22.0), flashed to 0x70000000 and verified successfully3. OTP word 124 programmed to 0x00018000 (HSLV_VDDIO2 + HSLV_VDDIO3)4. Boot switches in flash boot mode (BOOT0: 1-2, BOOT1: 1-2)5. eraTerm on STLink VCP, 921600 baud---**Terminal output (always the
我正在写BootLoader的程序,我想要实现IAP,我目前编译后生成的.bin文件大小为18kb(之后代码多了还会再增加),但是我APPUP区空间为248KB,我的配置为: Translation (by google translator): "I'm writing a BootLoader program and I want to implement In-App Access (IAP). The .bin file I'm currently compiling is 18kb in size (and will increase as the code grows), but my app upload space is 248KB. My configuration is..." 我想要实现生成的.bin文件为248kb,不够的地方自动填充,我的生成.bin的指令如下 "I want to generate a .bin file that is 248kb in size, with automatic padding if necessary. My command to generate the .bin file is as follows:" 我的编译器版本为: "My compiler version is:" keil5版本为:5.38.0.0 "The Keil 5 version is 5.38.0.0."
Hello, I am looking to use the LSM6DS032 accelerometer + gyroscope in a project, I intend to interface it with an MCU via I2C. I am wondering if it is possible to program the embedded finite state machines in the accelerometer using only I2C and writing to registers, and if there are any guides or application notes on how this can be done?
Dear all, when I press Install button in the Toolchain Manager of the 1.17.0 CubeIDE it hangs after opening the subsequent dialog. I cannot close this dialog with neither mouse nor ESC key, need to terminate the task. Regards,Dmitry
Hello,I've been adapting the DRP1M1 USB-PD DRP reference design for use on a custom STM32U5A9 Board, and have run into an issue where it seems like ST's compiled USBPD library just stalls during negotiation as a SRC device.Hardware: STM32U5A9, custom board with TCPP03-M20Library: USBPDCORE_PD3_FULL_CM33_wc32.aConfiguration: DRP, PD3.0## ProblemOperating as SRC, the PE state machine sends ACCEPT in response to a REQUEST but never advances to PE_SRC_TRANSITION_SUPPLY. PS_RDY is never sent and the port partner eventually triggers a hard reset.## What We Have Verified**Protocol layer is working correctly:**- SOURCE_CAPABILITIES sent and GOODCRC received- REQUEST received and GOODCRC sent- ACCEPT sent and GOODCRC received- All confirmed on protocol analyzer**All DPM callbacks returning correct values:**- USBPD_DPM_EvaluateRequest() returns USBPD_ACCEPT (verified via debugger)- USBPD_PWR_IF_GetVBUSStatus(USBPD_PWR_VSAFE5V) returns USBPD_TRUE (VBUS at ~4.8V, threshold 4750mV)- USBPD_DPM_SetDa
Title edited to clarify that the "onboard PHY" refers to a Nucleo-H753ZIi have may issues related to implement the ethernet on stm32h753zi mcu like i am not able properly configure the mpu regions and linker script and its ethernet.c file ...and also have issue related to ping the static ip...if any supporting link related to this issue can be provided..that might be helpful
What is the recommended procedure for adding source files (e.g. source1.c and source1.h) to a STM32CubeIDE project generated by TouchGFX? I assume I add them to one of the 'Core' directories, but I see multiple Core directories (root\STM32CubeIDE\CM7\Application\User\Core and root\CM7\Core). I see that adding my .h manually to root\CM7\Core\Inc works fine for the .h, but the IDE doesn't automatically pick up the .c if I place it in the corresponding root\CM7\Core\Src. If I place the .c in root\STM32CubeIDE\CM7\Application\User\Core, the .c file is accessible via the IDE, but the .h file is not found during compile.What is the proper procedure for adding new user C source files? My STM32CubeIDE is 2.1.1 and TouchGFX is 4.26.1. I'm targeting a Riverdi board with a STM32H7.
Hello everyone,I'm working with the LIS2MDL sensor (steval_mki181v1) , i made a connection between it and the nrf5340 and I configured it over I2C with pull-up resistors enabled.-VDD -- > VDD-VDDio --> VDD-CS --> VDD -PIN I2C :: SCL to SCL et SDA to SDA-GND t GNDCurrent configuration:I2C communication working (i got the chip id 0x40)Block Data Update (BDU) enabledOutput Data Rate tested at 10 Hz or50 HzOffset cancellation enabledContinuous mode enabledI applied the offset XYZ as :: int16_t mag_offset[3] = {0xF500, /* OFFSET_X_REG */0xF800, /* OFFSET_Y_REG */0xF400, /* OFFSET_Z_REG */};However, I noticed that the values I read from the sensor remain almost always the same and do not update as expected, as shown in the photo below.Could anyone help me understand what might be causing this issue or guide me on how to troubleshoot it?Any help would be greatly appreciated. Thank you!
ObjectiveSign STM32MP23 firmware using AWS KMS ECDSA P-256 keys instead of local private keys, to enable cloud-based signing workflow.Hardware: STM32MP23 seriesHeader Version: 0x00020200 (v2.2.0)Signing Algorithm: ECDSA_SHA_256 (P-256 NIST / secp256r1)Development and Issues summary as followsWe have followed following ways to sign binaries externallyUsing external HSM - SoftHSMThis method shows the exact same issue mentioned in community threadError: Invalid Header version valueHeader v2.2 accepts 8 public keysIf we skip the header version argument, the signing tool fails with CKR_OBJECT_HANDLE_INVALID error.Using PKCS#11 solution along with aws-kms-pkcs11With this method too, we face similar errors as mentioned in #1. With header version 2.2 argument, it gives Invalid header errorIf we skip the header version argument, the signing tool fails with CKR_OBJECT_HANDLE_INVALID error.Developed a custom signing script (Compatible with the STM32 Signing workflow)Firmware s
Hello,I use last version of CubeIDE 1.15.1CubeMX proposes in tools a CAD tab, that allows to export symbols and footprints for the different EDA packages (ex KiCAD).I use CubeIDE for my projects. In "Tools", there is a "CAD" sub-tab. But it leads to a white page.Is there a specfic installation needed to have the CAD functionnality in CubeIDE (as exists in CubeMX)?Best regards,JMF
Hello,I’m working on a project generated by STM32Cube AI Studio targeting the NUCLEO-N657X0-Q, using an XIP configuration with external XSPI flash ( It was said in another post that the generated projects from STM cube AI Studio follow XIP configuration).SetupBoard: STM32N657X0-QToolchain: STM32CubeIDE(2.1.1) + STM32CubeProgrammer(2.22.0)Project generated with STM32Cube AI StudioExecution mode: XIP (application in external flash)Runtime: Bare metal (LL_ATON_OSAL_BARE_METAL)Memory mappingModel location (from generated network.c):.addr_base = (unsigned char *)(0x71000000UL)Programming stepsI programmed manually using STM32CubeProgrammer:second_Appli.elf network_atonbuf.xSPI2.bin → placed at 0x71000000Debug configuration (FSBL project)I start debugging from the FSBL project.In Debug Configuration → Startup → Load Image and Symbols, I configured:second_Appli.elfDownload = OFF (already flashed manually)Load symbols = ONSo FSBL is loaded/debugged, while App and model are already p
Hi, I am creating project in STM32 StellarStudio for SR5E1. But the Makefile might be running using ARM GCC. How can I make the project compile using GHS compiler?
Are there any plans to upgrade STM32CubeIDE to include support for C23?It would be nice to have as it brings things like constexpr in, which makes the use of constants much better as they are subject to compiler checking and can call (constexpr) functions.
Hello Community,I have been involved with embedded Rust since 2020 and I noticed most tutorial, examples, dev boards are targeting the ESP32 processors. This made no sense to me outside of the hobbyist community. I got contacted over a year ago by Manning Publishing about writing a book on Embedded Software with Rust. I decided that I should use STM32 based boards for my examples. The book is now in early release on MEAP (Embedded Software with Rust - David Cabanis). The idea of MEAP is to engage with the early adopters to get feedback to improve the final product (paper book).I was hopping that some of you might want to take a look and offer me some feedback on how to improve the content. You can see the details of the content on the landing page and the Chapter 1 is freely available. Thanks in advance for any of your feedback. It will contribute to the adoption of Rust and put forward STMicroelectonics products in this context. Kindly, David.
How can I debug an STM32N6 project when using a load-and-run configuration? CubeMX generates two separate projects, and I’m able to debug each one individually when the BOOT1 pin is set high. However, it seems that if I only debug the application project, the FSBL never executes, so the system clocks aren’t initialized. What’s the correct approach to debugging both projects together?I came across a debugging guide, but it only applies to the XIP configuration.
Hi everyone, I am facing an issue with an STM32U5 regarding the entry into STOP3 mode after a production programming cycle using the STM32CubeProgrammer CLI. I use a .cmd script to flash the device. In the script, I use the -c port=swd dLPM mode=UR flags to ensure the first connection during the multi-step programming of several binaries. At the end of the script, I perform a software reset via -c port=swd dLPM -rst. After the script finishes and I unplug the ST-Link, the microcontroller fails to enter STOP3 mode (current consumption remains high, in the mA range). I noticed that if I manually connect with the STM32CubeProgrammer GUI without the "Debug in Low Power Mode" (dLPM) option enabled, perform a software reset, and then disconnect the JTAG/SWD, the device enters STOP3 correctly. It seems that the dLPM flag used during the CLI session is "sticky": it sets the DBG_STOP and DBG_STANDBY bits in the DBGMCU_CR register, and these bits persist even after the programmer is physically d
Hi,I am working on STM32MP135 with SGTL5000 codec using ALSA/ASoC.Playback is working correctly:aplay -D default /home/audio/test_audio.wavBut audio capture is failing with Input/output error:root@stm32mp135-comtrol:~# arecord -D hw:0,1 -f S16_LE -r 48000 -c 2 test.wav Recording WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo arecord: pcm_read:2272: read error: Input/output errorCurrent status:Playback works correctlyCodec detected properlyI2C communication seems OK during playbackCapture stream fails immediately after startroot@stm32mp135-comtrol:~# arecord -l **** List of CAPTURE Hardware Devices **** card 0: STM32SGTL5000 [STM32-SGTL5000], device 1: 4400a024.audio-controller-sgtl5000 sgtl5000-1 [4400a024.audio-controller-sgtl5000 sgtl5000-1] Subdevices: 1/1 Subdevice #0: subdevice #0 Device tree configuration is attached below.Questions:What usually causes pcm_read: Input/output error in ALSA capture?Could this be related to SAI RX configuration?Is there
Hi! I'm using a STM32N657 Nucleo Board, and, considering the 1.8 V reference voltage for the ADC, the value returned by the ADC is half of what it should be. For example, for a 1,410 V value in the pin, the reading is 1742. Here is the initialization for reference: static void MX_ADC2_Init(void) { /* USER CODE BEGIN ADC2_Init 0 */ /* USER CODE END ADC2_Init 0 */ ADC_ChannelConfTypeDef sConfig = {0}; ADC_AnalogWDGConfTypeDef AnalogWDGConfig = {0}; /* USER CODE BEGIN ADC2_Init 1 */ /* USER CODE END ADC2_Init 1 */ /** Common config */ hadc2.Instance = ADC2; hadc2.Init.Resolution = ADC_RESOLUTION_12B; hadc2.Init.GainCompensation = 0; hadc2.Init.ScanConvMode = ADC_SCAN_DISABLE; hadc2.Init.EOCSelection = ADC_EOC_SINGLE_CONV; hadc2.Init.LowPowerAutoWait = DISABLE; hadc2.Init.ContinuousConvMode = DISABLE; hadc2.Init.NbrOfConversion = 1; hadc2.Init.DiscontinuousConvMode = DISABLE; hadc2.Init.ExternalTrigConv = ADC_SOFTWARE_START; hadc2.Init.ExternalTrigConvEdge
Hello everyoneI'm new here, but i have worked on a flight controller unit FCU with those:FMU Processor: STM32H753IO Processor: STM32F103This FCU then connected to a Raspberry Pi4, auxiliary, where run his drone python software, using MAVlink approach for telemetry data and CAN communication and parameters setup;Right nowWe have a (good) software ready, with some wizard working wellBUTwe have an issue with CAN-motors and our STM chips...Is it possibile that those H753 is NOT able to read a CAN motor ,brand new, out of fabric?or betterIs the chip (H753) ABLE to write a NODE ID on a CAN motor, wich is ut of fabric (nodeID=1) to an actual working NODE ID(10,11,12 etc..)?We had this issue....based on your knowledge..The correct way is to use a CAN-USB to "wake up" motors one by one and then connect to FCU?Thank you
Dear all,is it possible to measure the frequency of the 32,768kHz oscillator (external crystal used) at a buffered pin similar to the MOC pin of the STM32 to tune the frequency by the external capacitors? It would be difficult to do this at pin XTAL32k_IN/OUT without influencing the oscillator frequency.Best regards,Peter
MCU : STM32WLE5CCU6STM32CubeIde version : 2.1.1STMC32CubeMx version : 6.17.0Firmware Package Name and Version : STM32Cube FW_WL V1.5.0Application : FUOTA using LoRaWANSetup : End Node(STM32WL) <===> Gateway(Dragino LPS8) <====> TTNHello everyone,Before i step into complicated FUOTA using LoRaWAN, i was trying some custom downlink packets to switch to Class C from Class A.I was successfully able to send uplink packets.I was successfully able to get the downlink packets both confirmed and unconfirmed and glow led's and perform operations.Now i want to send a downlink packet which switches to class c.I have not enabled Additional LoRaWAN packages yet, i figured switching to class c might really don't need this as long as i am calling the correct API'sBasically if i send a downlink packet 0x01 from TTN, the device switches to Class C.For switching to Class C, I am using `smtc_modem_set_class(STACK_ID, SMTC_MODEM_CLASS_C)` which itself doesn't return any erro
Hello!We use the VL53L0X as a time-of-flight sensor on a custom PCB. We used Arduino to configure and read the VL53L0X during development of our embedded system. Now later in development, we find differences between Arduino readings and readings taken from our Linux-based Embedded System (LES). I am investigating what differences exist between our Arduino application used during development and the application running on the LES. While not every sensor is showing shifts in range measurement, the worst case shifts are 6-7mm difference and repeatable.I have collected all I2C communication with the VL53L0X from boot to when we enter the measurement loop for both Arduino and LES hosts. I see some differences and have investigated what I can, but I have a hard time understanding what exactly those differences mean without a register map and descriptions. I understand ST will not provide this information, so I am hoping you can instead provide any insight on my below questions. The
I am developing a custom board using the STM32MP255F-AK.After configuring the kernel via menuconfig, the .config file reverts to its default state for some reason.The custom board settings and device tree are located in `meta-st-stm32mp-addons`.I have already fetched the source code using `devtool modify virtual/kernel`.Run `bitbake -c menuconfig virtual/kernel`ADIN_PHY was set to yThe .config file is saved in the following location:workspace/source/linux-stm32mp/.config.new -> ~/OpenSTLinux/distpkg_ev1/build-openstlinuxweston-stm32mp25 -disco/tmp-glibc/work/stm32mp25_disco-ostl-linux/linux-stm32mp/6.6.48-stm32mp-r1/build/.configNext,I ran `bitbake virtual/kernel`The ADIN_PHY=y setting remained in .configI tried running bitbake virtual/kernel againThe ADIN_PHY=y setting remains in .configI tried modifying the kernel's DeviceTreeI ran bitbake virtual/kernelIt reverted back to “ADIN_PHY is not set.” Also, the build result showed that the ADIN_PHY driver was not included.How can I prev
ST Community highlights – April to June 2026
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.