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
After obtaining the motor configuration parameters using the P-NUCLEO-IHM03, I applied the same motor parameter values to the EVSPIN32G4-DUAL board, which is used to drive two motors.However, when operating the motors with these settings on the EVSPIN32G4-DUAL, an overcurrent error occurs.Could you please explain the possible reasons for this overcurrent condition?In particular, I would like to know whether differences in the power stage, current sensing topology, or dual-motor operation could cause this issue, even when the same motor parameters are used.Thank you for your support.Best regards,Pelino
Hi,I'm developing a secure boot application for STM32H563ZI microcontroller. I started with a very simple application following ST template code and tutorials like this one: https://wiki.st.com/stm32mcu/wiki/Security:How_to_start_with_STM32CubeMX_OEMiRoT_Boot_path_on_STM32H563 Everything runs as expected when I try to run my application using the NUCLEO-H5 board. However, this is not true when I do the same provisioning process in my H5 custom board. The only difference I can see between the two tests is that in the custom board I'm using the STLink-V2 programmer, while the Nucleo is programmed by the embedded STLINK-V3EC.Here are some additional points:1) in both cases the provisioning script reaches the end, saying "The board is correctly configured".2) in the custom board, I see the flash full of zeros after provisioning; I checked it with stm32CubeProgrammer3) I have no problems in flashing firmware through stm32CubeProgrammer or stm32CubeIde in my custom board
I'd like to use the DTCM ram in my code; how can I do ? Thank you
hey currently i am working on stm32mp257dak3 on myir myc-ld257 board in which i want to access RCC of gpiog for i2c3, but i am enable to access it as soon as i try to access without resource manager it shows me "root@myd-ld25x:~# echo start > /sys/class/remoteproc/remoteproc0/state E/TC:1 stm32_iac_itr:192 IAC exceptions [159:128]: 0x10000000 E/TC:1 stm32_iac_itr:197 IAC exception ID: 156 E/TC:1 Panic at /usr/src/debug/optee-os-stm32mp/4.0.0-stm32mp-r1/core/drivers/firewall/stm32_iac.c:212 <stm32_iac_itr> E/TC:1 TEE load address @ 0x82000000 E/TC:1 Call stack: E/TC:1 0x82007ed8 E/TC:1 0x8203bb8c E/TC:1 0x82026308 E/TC:1 0x820396c0 E/TC:1 0x82013c0c E/TC:1 0x820017dc I/TC: Halting CPU 0" this error and my linux gets crash (on board linux not in my laptop) but when i uses resource manager " if (ResMgr_Request(RESMGR_RESOURCE
Hello, I am trying to load an .elf file on the M33 core on my stm32mp257f processor. When I launch the remote core using remoteproc I get the following errors. root@stm32mp257f-hydra-mx:~# echo -n /home/root > /sys/module/firmware_class/parameters/path root@stm32mp257f-hydra-mx:~# echo Sparta.elf > /sys/class/remoteproc/remoteproc0/firmware root@stm32mp257f-hydra-mx:~# echo start > /sys/class/remoteproc/remoteproc0/state [ 119.336297] remoteproc remoteproc0: powering up m33 [ 119.511444] remoteproc remoteproc0: Booting fw image Sparta.elf, size 6237772 [ 119.513130] remoteproc remoteproc0: unsupported fw ver: 0 [ 119.518401] remoteproc remoteproc0: no resource table found for this firmware E/TC:0 stm32_iac_itr:192 IAC exceptions [159:128]: 0x200 E/TC:0 stm32_iac_itr:197 IAC exception ID: 137 E/TC:0 stm32_risaf_dump_erroneous_data:256 DUMPING DATA FOR risaf@420d0000 E/TC:0 stm32_risaf_dump_erroneous_data:257 ================================================
Hello everyone, I am using a custom board with STM32H750 and I am trying to develop a file system with FILEX. The file system' s media is a uSD card with 10 MB/s baudrate which is communicating with the micro thanks to the SDMMC peripheral. The SDMMC peripheral's configuration is copied from one of the many examples that are available in STMCubeMX ( it has a 50 Mhz clock, 4 bit mode, no power mode save and no transceiver).The uSDcard has been formatted through the api given by FILEX (fx_media_format) following the information available during uSD card initialization ( for example sector size is 512 bytes, number of sectors and so on...).I am using the drivers given by ST for FILEX (in my case SD with IDMA) and I am trying different media size buffer (512, 1024 and 4096) which I allocate in AXI SRAM ( SDMMC1 IDMA can access only in AXI SRAM).I am experiencing two different behaviour: If I am doing a reading operation the SDMMC is very fast while writing operation is
I’m working with an STM32G473QETx.Does the IWDG window value cause the MCU to reset if the watchdog is refreshed too often (i.e., refreshed too early)?if I set the IWDG window value to something smaller (e.g., 1600), will the MCU reset if I refresh the watchdog more frequently than expected?Any clarification on how the IWDG window works on the STM32G4 series would be appreciated.
I work on an STM32F407G-DISC1 pedometer project, in which the program is supposed to use built-in lis3dsh accelerometer via SPI to detect and count steps and display the number of steps on the screen (ILI9341 SPI).I have tested my screen code, and it works properly, so problem lies in how I use accelerometer or detect steps.To detect steps, I read lis3dsh registers with 100HZ frequency by making a call to SPI from a 100HZ timer interrupt. These snippets are interrupt and timer configuration respectively.void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef* htim) { if (htim->Instance == TIM2) { if ((draw_ready == 1) && (accelerometer_ready == 1)) { accelerometer_read_all_axes_dma(xyz_data, &hspi1); } } //else if (htim->Instance == TIM3) { // if (draw_ready == 1) { //steps_count += 1; //update_lcd_flag = 1; // } //} }static void MX_TIM2_Init(void) { /* USER CODE BEGIN TIM2_Init 0 */ /* USER CODE END TIM2_Init 0 */ TIM_ClockConfigTyp
We are making a FCU based on STEVAL-FCU001V2 as a study project. We have manufactured the pcb from the gerber files that ST provided. We have had the components stuffed on the pcb as well. We uploaded the ST firmware provided by ST in our drone from this link: "https://www.st.com/en/embedded-software/stsw-fcu001.html", Specifically The STEVAL-FCU001V1 program using the ST-Link V2. We uploaded this code as this is the only code that was built without any errors in the cubeide. Now we know that the code is uploaded inside the board as when we press reset button, the onboard led turns on. But in the STDrone App, we cannot see the drone. The BLE sensor used is the BlueNRG-M0A. It is working as well as by using multimeter we measured the power consumption between its VDD and GND pin to be 3.3 volts. The define statement in the code is also set to "#define REMOCON_BLE // BLE Remocon App" but still we cannot see the drone in the app.Any help would be appreciated. Thank you for your time.
When using USB CDC to communicate via USART, and interacting with USART data, in code is it recommended to interact with it at the USB side, or to interact with it at the USART side?From what I can tell, both offer both polling and interrupt methods. The USART offers DMA access, but apart from that it's not clear what, if any, tradeoffs there are between USB CDC and USART.
Github link to code Hi everyone, I am currently working on a project with the NUCLEO-L432KC board, trying to interface a generic SPI MicroSD Card module (the standard blue one, powered via 5V). I am stuck with the FatFS error FR_NOT_READY (Error 3) during f_mount. After extensive troubleshooting, I suspect a hardware failure on the MISO pin (PA6), but I would like a sanity check on my diagnosis before I remap the pins. Hardware Setup: Board: NUCLEO-L432KC (STM32L432) SD Module: Generic SPI adapter (Powered via 5V VIN pin) Wiring: CS: PB6 (D5) SCK: PA1 (A1) MOSI: PA7 (A6) MISO: PA6 (A5) <-- The problematic pin Software Configuration: IDE: STM32CubeIDE FatFS: _MAX_SS and _MIN_SS set to 512. SPI1: Master, Prescaler 256 (Low speed for init), CPOL Low, CPHA 1 Edge. The Issue & Diagnostics: The communication fails at the very beginning. When sending CMD0 to wake up the card, the SPI RX buffer always returns 0x00 instead of 0xFF (Idle) or 0x01 (Su
I’m currently having an issue w/ ST Micro P/N M4T11M6 RTC w/ clock drift. Specifically, I’ve performed verification testing on 4 units to this point and I’m seeing over 8 seconds/day (Extrapolating to a value of 4.25 minutes/month) of drift from NIST time. The RTC clock calibration register only allows for a maximum of -2.75 minutes/month which isn’t enough range to allow for the drift observed to be calibrated out. This makes me question my PCA schematic and perhaps layout design. The XTAL used meets the required 32.768 KHz XTAL w/ 12.5 pF load capacitance. I have cut-away the GND plane under the XTAL as well (However, it turns-out the +3.3V plane isn’t cut-away, but is in the middle of the 8 layer stack-up and the RTC and XTAL are on the top layer). What am I potentially doing wrong that would cause such a drift issue?We are in the middle of verification on a high-priority project w/ a tight schedule, so your urgency on this matter is truly appreci
I've downloaded archive "en.STM32CubeExpansion_Crypto_v4.0.1.zip", now I'm trying to install it in STM32CubeMX with "From Local..." feature, but I'm getting error. How can I install the library in CubeMX?Thank you.
Hi Starting my first project testing VSCode integration of ST tools instead of using Eclipse... Just reporting an issue with build analyzer, it is indicating that I have 188% of FLASH used...The compiler output gives the correct information:It seems an issue parsing the map or elf file to operate the tool.
Hello, I'm having trouble getting the CubeMX code generation to work reliably with X-CUBE-AI package.After first adding X-CUBE-AI to the project, and adding one of the models from the ST model zoo, i get this warning:If i click Yes, the code generation takes about 5 minutes and works.Note that in the above picture, X-CUBE-AI ExtMemLoader is selected. This is also where the warning comes from. AFAIK, i don't need X-CUBE-AI ExtMemLoader, just the Application. If i remove the checks from the checkboxes "Artificial Inteligence X-Cube-Ai" and "Device Appliccation", and then reopen MX, the X-CUBE-AI ExtMemLoader will disappear, and just the X-CUBE-AI Application remains. However, after trying to generate code with that setup, the code generation hangs to the below phase of code generation: At that state, the OpenJDK Platform binary uses over 6000 MB of RAM, and about 10% of my CPU but seemingly nothing happens. I waited over the weekend to see if the genera
Hi,I would like to report that STM32CubeIDE is freezing when running on Wayland session.The solution I found is to start Ubuntu in a X session.Best regards,Daniel
Hi Team, We are using the STM32WB55CGU6 for one of our application. Since, the product has internal bluetooth functionality, we are usin for our application. However, the expected range is not meeting with the application that we anticipated. Kindly review the attached circuit and provided your insights. Regards, Abinaya.M
It is very inconvenient to have regenerated C files in C++ project.Problem is not main.c only, *_it.c as well. In C++ project one have to call methods of class from interrupt handlers.It is not possible to make directly from *_it.c. Indirect call chain is lost of time.I renamed main.c to main.cpp in C++ project, made call from main.cpp to method of class. All is OK.Flashed microcontroller with main.cpp, all is working.ST done great work to support C++. And made it useles by generating new code to C files. Why not to generate code in C++ project to CPP files?
Hi,I have some CubeMX-generated code which works properly. Originally it was created to run from default address 0x08000000.Now I have a bootloader at address 0x08000000 which is responsible for handling updates and other stuff and then jumps into the target-code, so I moved that code via linker script to 0x08020000. This also works fine, the code works as desired.In a next step I decided to have some additional information stored in flash prior to the CubeMX generated code to make it easier for the bootloader to manage firmware versions, so I shifted the code by additional 128 bytes and now have the following section in my linker script:MEMORY { FLASH_BOOT (rx) : ORIGIN = 0x08000000, LENGTH = 128K FLASH (rx) : ORIGIN = 0x08020080, LENGTH = 1024K - 128K - 128 EEPROM_EMUL (xrw) : ORIGIN = 0x080E0000, LENGTH = 128K DTCMRAM (xrw) : ORIGIN = 0x20000000, LENGTH = 128K RAM_D1_DMA (xrw) : ORIGIN = 0x24000000, LENGTH = 64K RAM_D1 (xrw) : ORIGIN = 0x24010000, LENGTH = 320K - LEN
Would writing to the crossbar registers (SETx1R, RSTx1R, SETx2R, RSTx2R of all 6 timers) on every PWM cycle (max 200kHz) affect long term reliability? I'm running this in an interrupt routine for a power converter and I'm wondering if doing this would make sense to have a more consistent processor delay. Preload is enabled on all 6 timers and master timer. Register updates on timers 1-6 occur on master timer register update.
On the X-LINUX-QT Starter Package Wiki page it states "The X-LINUX-QT expansion package compatible with ecosystem release v6.1.0 provides only the Distribution package, which can be used to generate the Starter and Developer packages".Has anyone generated the QT starter package in v6.1.0?The image produced by "bitbake st-image-qt package-index" launches with the GTK starter package, not the QT starter package.
Hi everyone,I am trying to deploy a custom ONNX model on the STM32N6 using X-CUBE-AI v10.2.0 (ST Edge AI Core v2.2.0), but the tool crashes immediately during the analysis phase.Setup:Target: STM32N6Tool: X-CUBE-AI 10.2.0Model: GTCRN (from this repository:https://github.com/Xiaobin-Rong/gtcrn)Problem: When I run the analyze command, "stedgeai" fails with an internal Python exception. It seems to be failing on a specific attribute lookup. And here is the output/error log:ST Edge AI Core v2.2.0-20266 2adc00962INTERNAL ERROR: 'range' object has no attribute 'reshape'Has anyone encountered this specific internal error before? It looks like a bug within the converter itself rather than a standard validation error. I would appreciate any guidance on how to fix the model or the export process to avoid this crash.
I am trying to use the gprof editor/viewer within cubeide but it doesn't work, everything just freezes then crashes with no error messages, i also found nothing in the logsI'm trying to use gprof profiling arm-none-eabi-gprof.exe, i have my code instrumented and got a valid gmon.out file, it is small ~15kb, the file is valid as i can process is manually with gprof.exe and get a textual representation of the profiling data.However i don't want text output, i want the included viewer in the cubeide, to see in a nice tree view the data, i have the option to open the gmon.out file with the gprof editor but when i do, it asks for the corresponding elf file then after that everything freezes then crash. What am i doing wrong? Is this expected to work at all? Did anyone use it?Cube ide1.18 stm32f429 discovery project
Hi all,I am trying to get started with a LSM6DSV320X accelerometer, using a STEVAL-MKI251A and a Raspberry Pi 4. I can get raw Accelerometer and Gyroscope data from their dedicated output registers (0x22h to 0x2D), but when I try to use the FIFO, I can't get it to work - I get data with tags that are not enabled, with tags that don't exist, and when there's a tag with Accelerometer data, it's incorrect. I've also tried writing the special functions registers to make sure the special functions are disabled and there's nothing of that batched into the FIFO, just to make sure, but that didn't make any change. Currently I've reduced it to as simple a configuration as possible and removed all other code from the test program, and I'm using the following configuration:Read WHO_AM_I register - get 0x73Configure FIFO:Write 0x01 to CTRL3 (software reset)Write 0x44 to CTRL3 (Enable BDU, auto-increment)Write 0x04 to CTRL1 (Acc high performance mode, 30HZ)Write 0x10 to FIFO_CTRL1 (watermark at 16
Hi everyone,I’m trying to interface an ST25R100 NFC reader with my MCU, and I’m having trouble reading ISO15693 tags. My initialization seems to work, but I never get any response from the tag. I’m hoping someone can spot what I might be missing.This is what my uart debugging spits out:INIT - NFCNFC: Init start (POR -> RESET -> POWER-DOWN -> Ready Mode)ROP_REG_OPERATION = 0x00 (after PD write)ROP_REG_GENERAL = 0x01 (after write)ROP_REG_REGULATOR = 0x08 (after write)NFC IRQ triggered!IRQ: I_osc Oscillator readyROP_REG_OPERATION = 0x0A (after enable)ROP_REG_OPERATION = 0x0A (check mode)Chip is in READY mode (en = 1)STATUS register = 0x00NFC Reader OperationROP_REG_PROTOCOL = 0x85 (after write)ROP_REG_OPERATION = 0x3A (after write)NFC IRQ triggered!IRQ: I_txe End of transmissionNFC IRQ triggered!IRQ: I_nre No-response timer expiredThis is consistent with what the datasheet says on page 22.But now I don't quiet see how I can get it to read data from my NFC-Tagvoid NFC_Init(void) {
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.