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, I'm designing a driver using 3x STSPIN9P12 to drive a Permanent Magnet Synchronous motor (PMSM). I have a ADC connected to the SNSO outputs to measure current and I am controlling the current in the MCU's control loop. I am not using the COUT and VREF pins.Can / should VREF be tied to GND?I think the TOFF pin does not exist on this version. Do I leave TOFF floating? or should TOFF be tied to GND?Jon
Hello, I've been following closely with the github while I work on the recording portion myself, and I saw that x-cube-azrtos-h7 was updated today. I immediately looked for the recording project, and couldn't find it. Even this page shows up Error 404: https://github.com/STMicroelectronics/x-cube-azrtos-h7/tree/main/Projects/STM32H743I-EVAL/Applications/USBX/Ux_Device_Audio20_Recording Do I not have access to it?
Hi everyone, I recently bought an EVSPIN32F0602S1 board, but I’m unable to connect to it. Windows is giving me an error when I plug it in. I’ve already tried changing the USB cables and even tested it on different laptops, but I’m still getting the same error. I also checked the user manual, and everything appears to be in its default configuration. Could someone please help me figure out what might be wrong? Thank you.
Even I am using the latest CubeProgrammer v2.21.0, it indicates an update available but when I check it, there is no update and the updater log does not update, it cannot update its last update date as well.I know not so important but quite annoying problem, i`d like to mention,
Dear ST team,I need some tips!!!I am using STM32H745 for my project. In the project, the M7 core is dedicated to control and measure the power circuit values and M4 core is responsible for communications (few UARTs) and LCD. I configured the MCU with STM32CubeMX and use Keil uvision fore code composing. After generating code, I noticed that there are two separated codes were generated for each CPU.How can I bridge between two CPUs to share data? I want to send measured data by M7 via UARTs controlled by M4?I will appreciate if you give me some applicable suggestions.
Hi,We are designing a compact, battery-powered system that requires a regulated high-voltage DC output with the following specifications:• Input: 5V• Output: Adjustable 400V to 1000V• Load current: 1µA to 200µA• Very low ripple and noise• High efficiency and small form factorThe supply will be used as a bias source for sensitive detectors (e.g., APD/PMT-type devices), so output stability and low noise are critical. The output must remain stable across the specified load range.I am currently considering a closed-loop flyback topology with post-filtering, but I am open to alternative architectures.Could you please recommend:• Suitable controller ICs from your portfolio?• Relevant reference designs or evaluation boards?• Design techniques for minimizing ripple and noise at these voltage levels?Any guidance or application notes would be greatly appreciated.Thank you.
I have build a Fully pin compatible STM32H750B-DK board with USB Device only setup along with Touchgfx and Freertos , Touchgfx is displaying everything correctly but the USB Isn't responding , I have setup the USB OTG FS in Device Mode as shown in the attached Images.PC is not detecting anything
Hello everyone,I’m working on a project with an STM32H750B-DK board using TouchGFX and LWIP (Ethernet). After configuring LWIP in CubeMX and generating the code, I encountered a compilation error that took me a while to understand. I’d like to share the problem to help anyone who might run into the same issue.The ErrorIn file included from ../Application/User/gui/NetworkTask.cpp:13: ../../TouchGFX/gui/include/gui/model/ModelListener.hpp:13:23: error: macro "bind" requires 3 arguments, but only 1 given 13 | void bind(Model* m) | ^ In file included from ../Application/User/gui/NetworkTask.cpp:11: ../../Middlewares/Third_Party/LwIP/src/include/lwip/sockets.h:616: note: macro "bind" defined here 616 | #define bind(s,name,namelen) lwip_bind(s,name,namelen) | Similar errors appeared for Model.hpp.
STM32CubeIDE for VS Code is there a memory window? like MDK Memory window
We are pleased to announce that STM32CubeCLT 1.21.0 release is available. What is new in 1.21.0: Maintenance of the previous version: Updated in accordance with STM32CubeIDE v2.1.0 Update of Clang/LLVM toolchain Update of GCC to GCC 14 Update of STM32CubeProgrammer to version 2.22.0 Update of ST-LINK GDB server to version 7.13.0 Update of JRE™ to version 21.0.9+10 Update of STARM-Clang to version 21.1.1 Support for Apple® Silicon with ARM64 architecture Main fixed issues in 1.21.0: No fixed issue to report. Know problems and limitations in 1.21.0: The user must specify the path of STM32CubeProgrammer/bin as argument when executing STLINK_gdbserver as shown in the example below: ST-LINK_gdbserver.exe -cp /c/ST/STM32CubeCLT/STM32CubeCLT/STM32CubeProgrammer/bin How to get STM32CubeCLT 1.21.0: Under this link
Hi Team, I could only find the databrief and not the datasheet for VL53L1X-SATEL breakout boards. Could you provide a detailed datasheet mentioning the current consumption and power consumption at 2.8V, 3.3V and 5V respectively?I currently have a VL53L1X-SATEL breakout board for development and do you recommend the input voltage to be in 2.8V, 3.3V or 5V for this breakout board to obtain best performance from this sensor breakout board?Looking forward to your immediate and esteemed response.Best RegardsSreejith R Nair
Is STM32WB55xx (Multiprotocol wireless 32-bit MCU Arm®-based Cortex®-M4with FPU, Bluetooth® 5.3 and 802.15.4 radio solution) is Automotive grade(AEC-Q100 Grade)?
Custom MP157AAA3 board. SD card formatted with ECO 5.0.0 using the SD tools using the files from the starter package. (including rootfs etc..) . Build the TF-A, OP-TEE (in SYSRAM), U-boot and kernel from the ECO 5.0.0 sources.Kernel generates the messages as below and then feezes. The DT's were generated using CubeMX and customized for the board. It looks like drivers are all waiting on resources to become available, perhaps one single one they all need. Hence the deferred probe.Any hints/steps how to debug this ?[12.832984] Run /init as init process[ 13.390242] platform 50000000.rcc: deferred probe pending[ 13.395778] platform 5000d000.interrupt-controller: deferred probe pending[ 13.402749] platform 48002000.dma-router: deferred probe pending[ 13.408792] platform soc:pinctrl@50002000: deferred probe pending[ 13.414956] platform soc:pinctrl@54004000: deferred probe pending[ 13.421084] platform 48000000.dma-controller: deferred probe pending[ 13.427498] platform 58000000.dm
I am testing Ethernet on STM32H723ZGT6 by transmitting UDP packets (1024 bytes) every 1 ms. Setup / Implementation: No CubeMX / HAL used Fully bare-metal Ethernet driver (lwIP integrated manually) Ethernet interrupts enabled and serviced RX handled inside while(1) loop Non-blocking transmit path MPU enabled Memory configuration: RX pool located in AXI RAM lwIP heap: 32232 bytes in D2_SRAM Observed Behavior: System runs normally for many hours (sometimes >12 hours) Eventually UDP transmit stops working Ping continues to work without issues Debugging shows failure occurs at: pbuf_alloc(PBUF_TRANSPORT, len, PBUF_RAM); After failure: 1) pbuf_alloc() returns NULL (ERR_MEM) 2) ETH->DMACSR reads 0 while (1) { sys_check_timeouts(); if (eth_rx_rdy) { eth_rx_rdy = 0; ethernetif_poll(&gnetif); ETH->DMACIER |= ETH_DMACIER_RIE; } if (sys_now() - udp_tx_timer >= 1) // 1 ms transmit interval { ret = udp_server_send(udp_tx, sizeof(udp_tx)); if (ret
Hi everyone,I am experiencing a strange discrepancy in the behavior of HAL_UARTEx_ReceiveToIdle_DMA between LPUART2 and LPUART3 on an STM32U083RCT6.Environment:MCU: STM32U083RCT6IDE: STM32CubeIDE v1.17.0Library: STM32CubeU0 Firmware Package V1.3.0 (Released 04-June-2025)The Issue: I am using HAL_UARTEx_ReceiveToIdle_DMA to handle asynchronous reception of variable-length packets.LPUART2: Works perfectly. When an IDLE line is detected, the DMA transfer stops as expected, and HAL_UARTEx_RxEventCallback is triggered.LPUART3: When an IDLE line is detected, the interrupt is generated and HAL_UARTEx_RxEventCallback is triggered correctly. I am able to handle and process the variable-length packets without any issues. However, the DMA transfer itself does not stop (it remains in an active state), unlike the behavior observed on LPUART2.Configuration: Both instances are configured in STM32CubeMX as follows:Baud Rate: * LPUART2: 230400 bpsLPUART3: 115200 bpsDMA: DMA1 [Channel configuration]Mode
Hi,The input to the MCU is basically 1-bit (0/1 values), but it would be better if it could process multiple bits.The input is at 150MHz, and 10,000 data items are received at once. The MCU must store them in uint8_t data[10000]. When a 1-bit value is received, data[10000] contains 0/1 values. For the next data item, the 0/1 values must be accumulated and added for calculation.This is what I’ve come up with:1) GPIO: 150MHz input is not possible.2) ICP + DMA: It seems possible, but it doesn't seem to work. ICP cannot reliably capture 150MHz, and DMA doesn't seem to be able to store data in SRAM.3) DCMI or DCMIPP: 8-16bit data can be processed, and accumulation is possible using DMA. However, the maximum speed is 80MHz or 120MHz.Is there a model among the stm32 models that can do this on its own mcu?
Hello Everyone,Is there any documentation for ST BLE Sensor Mobile Application I can reference?Thanks in Advance.
We would like to use the TESEO-VIC3D GNSS receiver as a replacement part without modifying the design.Could you please confirm or comment if the following hardware connections are acceptable for this module?Pin #1 (WakeUP): Pulled-up to VCCPin #4 (WHEELTICK): Not connected (floating)Pin #7 (Reserved): Connected to GNDPin #15 (FWD): Not connected (floating)Thank you very much for any help in advance.
Started project (using STM32CubeMX) with STM32C011J4M6 (SO8 package, 16K flash).Using STM32CubeIDEVersion: 1.19.0Build: 25607_20250703_0907 (UTC)Application now requires >16K (flash (code+flash data space) so replaced MCU part with STM32C011J6M6 (SO8 package, 32K flash).After adding content to project source code (a font file, taking the expected total flash space over 16384 bytes) build does not complete.I believe the root cause is that I've not told STM32CubeIDE of change to the larger-flash version of the chip (same family, just larger flash).What file(s) need to be edited to enable the larger flash size (or do I need to revert to STM32CubeMX and then splice the now under-development project source code into the new project? C:/ST/STM32CubeIDE_1.19.0/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.13.3.rel1.win32_1.0.0.202411081344/tools/bin/../lib/gcc/arm-none-eabi/13.3.1/../../../../arm-none-eabi/bin/ld.exe: (MY PROJECT NAME).elf section `.d
Hi,I want clarification on STM32 option byte programming.When we write new values to FLASH_OPTR and other option registers:Where are these FLASH option registers physically located?Are they inside the FLASH peripheral (0x4002xxxx region) and not in the option byte Flash area (0x1FFF8000)?When OPTSTRT is set, does the CPU erase/program the option byte pages, or does the FLASH controller hardware automatically erase the option byte Flash area and program it using the values in the FLASH option registers?I want to clearly understand the internal flow between:Option byte Flash memoryFLASH option registersFLASH controller hardwareThank you.
Hey guys I am currently looking for an mcu to get started developing a live stream camera board which should be in 7x80 mm dimensions what mcu should I get ? I think 5x5 footprint should be ok but not sure 6x6 also be ok. I am open any advice also new to hardware design so thanks for all the supports:)
I am trying to bring up the GFX01M2 on a WB55RG board. Following any of the Custom, FlashLoader, or HelloWorld applications (from the X-CUBE-DISPLAY_3-0-0 download) using STM32CubeIDE merely results in a blank LCD. I feel I'm missing something simple, but just can't find it. In each case I have compiled and loaded the files as per the ReadMe instructions. Any pointers appreciated...
Dear community,where can I find the source code for this generated MX66UW1G45G_STM32H7S78-DK_XSPIM1-SFIx.stldr file?I need to load binary files on an sd/emmc flash passing through the OEMiRoT boot that loads the specific external loader I want to implement based on this MX66UW1G45G_STM32H7S78-DK_XSPIM1-SFIx example. I have already implemented a custom external loader for my sdcard which works fine when loading the binary directly from CubeProgrammer or IAR ide (no mapping mode), however it fails to load the external loader in RAM through OEMiRoT bootloader through a UART serial interface with this command: .\STM32_Programmer_CLI.exe -c port=COMxx br=xxx -elbl "my_loader.stldr" -w my_encrypted_file.bin "my_custom_address". The same command works fine with the above example when the firmware update new binary is loaded in the macronix flash. Thank you for help
Hello,I am working with the STM32L476 and would like some clarification regarding the One-Time Programmable (OTP) area.From the reference manual, I understand that STM32L4 devices provide 1 KB of user OTP memory (128 double words). I would like to better understand the following:What exactly is stored in the OTP area? Is the OTP region purely user-programmable, or does ST also store factory calibration or security-related data in this region? Is OTP used internally by the MCU for enforcing Flash security mechanisms such as RDP, WRP, or PCROP, or is it strictly for user data? How is OTP protected ? I am trying to understand the architectural role of OTP in relation to Flash protection and secure boot mechanisms.Thank you.
Hi Because our recorded LG acceleration data shows strong aliasing artifacts we tried differten sensor configurations but nothing realy helped. Even worse we coud not see any effect of the LPF2 filter despide ODR and filter frequency settings. So we wunder if we have an error in our configuration or if the LPF2 not works as expected. With the following LSM configuration we expectect that the spectogram of the LG sensosr data would not show any artifacts of frequency above 250Hz.But what we see:- Frequencies below 250Hz apear as expected - Frequencies above 250Hz are folded down into the range 0-250HzWe are using the FIFO buffer to achieve constand sampling while retriving the data from the sensor with the MCU via I2C in a batch abaut 5 times per secound. For the sensor control we use the mems c-driver from gitHub (https://github.com/STMicroelectronics/STMems_Standard_C_drivers/tree/master/lsm6dsv320x_STdC).The current LMS configuration :- High Accuracy Operation Mode- OD
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.