2025-06-17 8:32 AM - last edited on 2025-06-17 8:38 AM by Andrew Neil
Moved from 'Feedback' forum. The 'Feedback' forum is not for product questions.
Hello everyone,
I’m currently working with the EVSPIN32G4 Rev.1 development board and the STM32 Motor Control SDK (MCSDK) using Motor Workbench, STM32CubeMX, and STM32CubeIDE.
My goal is to control a brushless motor in closed loop using a quadrature encoder as the main speed/position feedback sensor.
Software:
Motor Control SDK: v6.3.2
STM32CubeMX: v6.14.1
STM32CubeIDE: v1.15.1
Motor Pilot: v6.3.2
Hardware:
Board: EVSPIN32G4 Rev.1 (with STSPIN32G4 MCU)
Motor: SM23165D (brushless) - ( datasheet link https://www.animatics.com/wp-content/uploads/2023/03/19_SM23165D.pdf )
Encoder: 4000 counts/rev → 1000 PPR (Quadrature)
Main Sensor: Observer + PLL (sensorless)
Auxiliary Sensor: Quadrature Encoder
In this configuration, the motor spins correctly and responds to speed commands (even if there's a ~500 RPM deviation).
The speed measured by the encoder matches the expected speed (confirmed with a tachometer).
This works.
(See video: video_1_sensorless_auxiliary_encoder)
Main Sensor: Quadrature Encoder
Startup parameters :
Duration: 5000 ms
Alignment Electrical Angle: 0°
Final Current Ramp Value: 1 A
When I run this configuration, the motor does not spin at all, even though no fault is raised.
The current ramps up continuously (up to the motor's current limit), and the state transitions are:
ALIGNMENT (2) → WAIT_STOP_MOTOR (20) → RUN (6)
Yet, the motor does not move at all.
(See video: video_2_quadrature_encoder)
Still no motor movement — same behavior as Config 2.
The motor profile was generated using the Motor Profiler tool in MC Workbench (see picture_2_motor_profile).
All these tests were also performed using the STM32 Motor Control SDK API, with no difference in behavior.
Various startup parameters were tested, along with different control modes (e.g., position control) and other minor features — but the result has always been the same.
Did I make a mistake in the configuration, or could this be a bug?