Get ready for the STM32 Summit 2026 | Online, November 3
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
Sensor is LSM6DSV16X.When I use this .h file in my MCU driver. There is no wrist tilt, but “Wrist tilt detection with accelerometer and gyroscope” can.I don’t know why?
Hi ST Team,Can You pls share the Junction temperature of the following Parts.LSM6DSVTR M24M01E-FMN6TP
Hi,I am trying to use SPI3 from the Cortex-M33 on the STM32MP257F-EV1 running OpenSTLinux 6.6 (Scarthgap).Software versionsBoard: STM32MP257F-EV1 OpenSTLinux: 5.0.15 Kernel: 6.6.116 STM32Cube_FW_MP2_V1.3.0 M33 application based on OpenAMP_TTY_echo_CM33What I changedI modified the OP-TEE RIF configuration file: external-dt-v6.0-stm32mp-r3/stm32mp2/a35-td/optee/stm32mp257f-ev1-ca35tdcid-ostl-rif.dtsiI changed SPI3 ownership from CID1 to CID2: RIFPROT(STM32MP25_RIFSC_SPI3_ID, RIF_UNUSED, RIF_UNLOCK, RIF_NSEC, RIF_PRIV, RIF_CID2, RIF_SEM_DIS, RIF_CFEN)I also assigned the SPI3 GPIO pins to CID2:PB7 PB8 PB10using: RIFPROT(... RIF_CID2 ...)Then I rebuilt:OP-TEE FIPand flashed the new images while keeping the original TF-A.VerificationUsing a small RIF access test on the M33, I verified that SPI3 is now accessible.Before: RIF CRC=0 I2C1=0 UART5=0 SPI3=3After modifying the RIF configuration: RIF CRC=0 I2C1=0 UART5=0 SPI3=0So the peripheral owners
I am working on the STM32N6570-DK and would like to implement FOTA (Firmware Update) through Ethernet.We are planning to perform the firmware update over a wired Ethernet connection, not through wireless or OTA.Could you please suggest which protocol is better for firmware image update:UDP TCP HTTPKindly let me know the recommended approach for reliable firmware updates over Ethernet.Also, if there are any example projects or reference code available for implementing firmware update over Ethernet on STM32N6570-DK, please share them. It will be very helpful for our development.
I have written a code to control two Hall sensor based geared BLDC Motors. I am using DRV-8353rs motor driver for this. We have designed a custom pcb as our motor control board. I have attached a pdf showing the circuit connection which we are following. I am also attaching the relevant code files needed to analyse this as well as a couple of tests I have run till now. I am generating pwm for motor 1 via Tim 1 and motor 2 via Tim 8 ( using complimentary pwm generation from 3 channels i,e CH1 CH1n CH2 CH2N CH3 CH3N). There are mainly two concerns which I am unable to resolve right now. 1. The motor running on tim 8 is always faster than the motor on tim1. The difference is smaller at lower duty cycles and increases along with it. 2. When running in reverse, the current consumption is approximately 1.5 that of what it draws when running in the clockwise. I am an amateur in this domain, and most of my work has been heavily dependent on chatGPT and Claude. For this issue, this is the reply
Hiya. I’m working on a project that writes to a microSD card over SPI using an RTOS (ThreadX in this case). I’ve had a bit of trouble implementing it over the weekend since I’ve seen little/no support for SPI on FileX and I’ve had issues porting over FatFs SPI code over to this project. Looking for some help and guidance with this! I’m not experienced with FileX or FatFs, so the solution could be pretty simple.With FileX, I can initialise but cannot mount the drive (memory pool allocations has been large enough). I used this custom library for the SPI implementation: With FatFs, I was also able to initialise but could not mount the drive. Again, I am pretty new to this stuff, so a series of steps to implement and identify the problems would be greatly appreciated. I can figure out the rest of the code (like writing and reading), I’m just struggling with initialising and mounting.
I’m a beginner with the STM32 series and STM32N6570-DK.I’m using ‘TouchGFX 4.26.1 Designer’ and ‘STM32CubeIDE 2.1.1’ and ‘STM32CubeMX’.First, I created a simple project for my STM32N6570-DK using TouchGFX. And, it displayed an image on the LCD normally.Next, to use the SD card, I configured the fileX and SDMMC2 settings using CubeMX.After that, when I regenerated the code using CubeMX, the LCD screen is not displaying properly. Is there a guide on how to use an SD card in a project created with TouchGFX?
It seems that after I updated MacOS to Tahoe 26.2 the IDE does not show selected text if over multiples lines correctly. This is a nightmare to work with, as it does not show selected text and can make you delete (overwrite) lines while editing.Anyone else? Is there a setting to fix it?
Summary On a NUCLEO-N657X0-Q I have a custom (non-CubeMX-template) FSBL that copies an "LRUN" application image from external XSPI flash into AXISRAM and jumps to it. The byte-identical signed FSBL runs completely when I stage it with the debugger in Development boot (monitor reset → load → jump Reset_Handler) — the app runs end to end. But in true ROM flash-boot (BOOT pins set for boot-from-flash, power-cycle, no debugger), the FSBL reaches main() (user LEDs light) and then locks up before its first clock-configuration step. The lock-up is invisible to SWD, UART, and even fault handlers, which points at a processor LOCKUP tied to the state the boot ROM leaves at the FSBL entry in flash-boot (security / RIF / clock), which differs from the debugger path. I would like to understand what minimal init my FSBL must do at entry in flash-boot. Hardware / tools - Board: NUCLEO-N657X0-Q (MB1940), STM32N657X0H, Cortex-M55 + Neural-ART. Device ID 0x486, Rev Z. Lifecycle state: OPEN (SWD attac
I am trying to adapt the QSPI Flash (QSPI_MemoryMapped) example found in the STM32WB5MM-DK to run with FreeRTOS. My hardware uses different ports for the QSPI connection but all has been set up through the ST32CubeMX program.What I did then was to copy the code from the example into my project as a FreeRTOS task. However, the code pulls in some header files that don’t make sense to me. For example: stm32wbxx_hal_tim_ex.h results in the error “unknown type name 'HAL_StatusTypeDef”I’m not sure why this is happening, or even why this header file is being pulled int, I so would appreciate any pointers. My guess is that is has to do the the HAL timer versus the FreeRTOS timer, but even then don’t know were to look!Since I am using the flash without a fie system, maybe the QSPI_ReadWrite_DMA or QSPI_ReadWrite_IT would be better. If so, please suggest...Thanks
Hi,At my company, we develop debuggers and are trying to access STM32MP257F-EV1(ES) board via the DAP,Unfortunately, we are unable to access the DAP and it seems like JTAG (DAP) access is prohibited by hardware.The result was the same even after shorting JP3 and turning off ST-LINK.I have the following questions:Are there any other jumpers positions that have to be changed? Please let me know.Does STM32MP257F-EV1(ES) have debug authentication enabled by default?If so, please let me know if there are any technical documents that explain the procedure for debug authentication.I tried to connect to the on-board debugger by running STM32CubeProgrammer and choosing ST-LINK (SWD), but access was denied.The boot mode that I tried were "UART/USB" and "Development", but both showed the following error:Error: No STM32 target found! If your product embeds Debug Authentication, please perform a discovery using Debug AuthenticationPlease let me know if there is a document or URL that explains how S
Hi team,we have custom project based on STM32U558 controller with TrustZone, and I am only involved in small part of the project.but i would like to learn about this trust zone is enabled and how both secure and non secure zone are talking.how i will identify which peripheral and which pins are intialised as secure and non secure part.also will appreciate if provided with reading section for trustzone.(prefer small blogs, not big one just because i am a new to trust zone).
Board: STM32N6 (Custom board with USB OTG HS)I am trying to create a USB composite device with: - CDC ACM Instance 0 (LOG port) - Interfaces 0, 1 - CDC ACM Instance 1 (DATA port for GenICam/GenCP) - Interfaces 2, 3 - UVC VIDEO class - Interfaces 4, 5Dual CDC works perfectly. However, when I add CLASS_TYPE_VIDEO to UserClassInstance[], the device fails to enumerate entirely (not visible in lsusb). --- Working Configuration (Dual CDC Only) // ux_device_descriptors.c uint8_t UserClassInstance[USBD_MAX_CLASS_INTERFACES] = { CLASS_TYPE_CDC_ACM, // CDC0 - interfaces 0,1 - endpoints 0x81,0x82,0x03 CLASS_TYPE_CDC_ACM, // CDC1 - interfaces 2,3 - endpoints 0x84,0x85,0x06 }; Result: Device enumerates as 0483:5710, two /dev/ttyACM ports appear, communication works. --- Failing Configuration (Dual CDC + VIDEO) uint8_t UserClassInstance[USBD_MAX_CLASS_INTERFACES] = { CLASS_TYPE_CDC_ACM, // CDC0 - interfaces 0,1 CLASS_TYPE_CDC_ACM, // CDC1 - interfaces 2,3 CLASS_TYP
Hello, I am new to high speed layout and am just learning a new layout tool so the pressure is on. What I need is some layout examples I can study to boost my chances of getting it right. Can anyone help please?
Hello,I’m working with a project with STM32h563 micro which includes the use of the OEMiROT bootloader. I tried different solution to set up the project, and, in order to use CubeMX, I think this is the “normal” way. However, there are some things that look awkward to me.If you want to use the OEMiROT bootloader included in the firmware package mentioned in the tutorial, it seems to be mandatory to strictly respect the folder tree given used inside the package. This means that your application project has to reside in STM32Cube_FW_H5_V1.6.0/Projects/NUCLEO-H563ZI/Applications/ROT/ even if you are not using a NUCLEO board. When, in CubeMX, you set the Boot Path and Debug Authentication options, you can modify the OEM_iROT reference location but not the Config Files Location, which is mandatory to be inside the ROT_Provisioning folder automatically created inside the newly created application (e.g. STM32Cube_FW_H5_V1.6.0/Projects/NUCLEO-H563ZI/Applications/ROT/ROT_Provisioning). However,
Hello,I was trying to run AC1 and ADC2 in Dual mode and ADC3 configured as independent one.Using HAL_ADC_Start for ADC3 doesn’t start the converter as it checks multi-mode in common ADC_CCR register wrongly not allowing to use ADC3 for ADC_DUALMODE_REGSIMULT (value 6). I prepared a patch for stm32f4xx_hal_adc.c, but not for injected channels from stm32f4xx_hal_adc_ex.c file as they have a similar issue.Could it be checked by library owner or someone responsible for the code? Firmware Package Name and Version : STM32Cube FW_F4 V1.28.3STM32CubeMX 6.14.0MCU STM32F446ZEJx Best RegardsJarosław Hill
Schematic review needed, considering given standards IEC 610004-2, 610004-3, 610004-4, 610004-5, 610004-6, 610004-11, CISPR 14-1 CLASS A.I have attached screen shot of my schematic, please go through it and check.The screen shot containsSTPM33 IC section, Reset and Digital isolator section, Control reset section CT section,Please do review it. We are designing it for 115VAC with multiple loads on CT which vary till max 1A load.Any changes/recommendation are welcomed.Thank you.!!
Hello,I am redesigning a circuit that uses the comparator LM2903YPT, because the previous circuit had an undefined output because of the inputs that were outside the common mode range.According to the datasheet the input common mode range for my application is between -5V53 to -2V, considering also the entire operating temperature range.I expected that the output should change between Vol and Voh, where Voh is similar to Vcc+ and Vol is -5V5+0.25V=-5V25.As I can see in the simulation the output changes between ~0V and -304mV. The inputs are now inside of the common mode range.Could you hep me please to understand the behavior of the comparator? Or if there is any issue in my circuit? Thank you in advance!
While fiddling with H745 board to investigate how dual core works, after modifying option byte to BOOT_CM7 = 0 and BOOT_CM4, STM32CubeProgrammer (nor STLINK-gdbserver) refuses to connect to the board with "Error: No STM32 target found". The ST-Link itself is okay. Here is a log from the programmer.22:31:39 : ST-LINK SN : 002F003D3137510E39383538 22:31:39 : ST-LINK FW : V3J5M2 22:31:39 : Voltage : 3.30V 22:31:39 : No STM32 target found! 22:31:39 : ST-LINK SN : 002F003D3137510E39383538 22:31:39 : ST-LINK FW : V3J5M2 22:31:39 : Voltage : 3.30V 22:31:39 : Error: No STM32 target found!How do I regain access to the board?
Hello,We are designing a custom board using the STM32MP157FAC1 device. For programming and debugging, we are planning to provide an STDC14 connector on our board and use the STLINK-V3SET debugger/programmer.We have the following queries:(1.) Is the STLINK-V3SET suitable for programming and debugging the STM32MP157FAC1 device?(2.) We have connected T_VCP_TX (Virtual COM Port transmit signal) to PG11, which can be configured as UART4_TX, and T_VCP_RX (Virtual COM Port receive signal) to PB2, which can be configured as UART4_RX on the STM32MP157. Kindly confirm whether this connection scheme is correct.(3.) The SWD and Virtual COM UART signals are connected directly from the STDC14 connector to the STM32MP157FAC1 device. Is any ESD protection recommended on these signals? If yes, kindly share the relevant reference.Regards,Prashant Sharma
Hello,I created a STM32F446 host project using STM32 CubeMX to receive data from a wireless mouse.This project works, but only with Lenovo mice. Other wireless mice are perceived as multifunctional devices.I get debug information when I start:USB Device ConnectedUSB Device Reset CompletedPID: 18hVID: 32c2hAddress (#1) assigned.Manufacturer : HS6209Product : 2.4G Wireless ReceiverSerial Number : No.161-0047-5Enumeration done.This device has only 1 configuration.Default configuration set.Device remote wakeup enabledSwitching to Interface (#1)Class : 3hSubClass : 0hProtocol : 0hDevice not supporting HID class.Is it possible to receive data from these wireless mice?
Hello everyone,I am looking for some help getting started with the STSAFE-A110 in a new project.My Setup: MCU: Custom board using STM32H503CBT6 Secure Element: X-NUCLEO-SAFEA1B expansion board Software: STM32CubeIDE with the X-CUBE-SAFEA1 middleware added via CubeMX Output: I am using the USB CDC Virtual COM port (Classic Middleware) for my output. I have not enabled and am not using UART. The Problem:I am completely stuck trying to get the initial communication working. I cannot seem to establish communication between the STM32H5 and the STSAFE-A110 through I2C, and I cannot get StSafeA_Init() to initialize the STSAFE properly.I have tried reading the user manual (UM2646 - Getting started with the X-CUBE-SAFEA1), but I find it extremely confusing. It does not clearly outline the necessary steps that I need to take to start the project properly from code generated by CubeMX.What I need help with:Could someone provide a clear, step-by-step guide on how to actually bring up the STS
When sending the first initial SYNC (0x7F) byte to the STM32N6 boot ROM over UART, the boot ROM replies with two ACK (0x79) bytes, while only one ACK is sent as a response to later SYNCs. Is the boot ROM guaranteed to always reply with two ACKs to the first SYNC?First sync:Later syncs:
When i try to login to the platform this page opens after a good wait:Error An error occurred while processing your request.Reference #221.dec41302.1782981612.27b98312https://errors.edgesuite.net/221.dec41302.1782981612.27b98312
Hi there,Im trying to get my STEVAL-PTOOL1V1 up and running with my motor, a Sofasco sDBS7025 with the following specs:3-phase BLDC7-12V DC operating voltage1.5A rated current11100 max RPM 4 pole 8 pins:PinFunction1V2W3U4HW5HU6HV75V08COMI have managed to get it operating by using the STEVAL-PTOOL1V1_6S_HL example project in the ST Motor Control SDK V 6.4.1 however I seem to have little control over the speed.I haven't been using the potentiometer feature of the STEVAL-PTOOL1V1 and instead been using the following functions:MC_ProgramSpeedRampMotor1(2000, 1000);MC_StartMotor1();and when wanting to change the speed, changing the 2000 for a different speed and rebuilding the project and programming to the board.However when I input a different speed e.g. 10000 there is no difference to the speed, observed by the current draw of the bench power supply remaining the same. I suspect I have setup the motor parameters incorrectly in the MC Workbench 6-step wizard but am not
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.