PWM Output Looks Clean on Scope but Motor Still Makes Noise

Thread Starter

eva_402

Joined Mar 13, 2026
5
Hi everyone,
I’m controlling a DC motor with an STM32 using PWM through a MOSFET driver. The PWM waveform looks clean on the oscilloscope, but the motor produces audible noise and rough movement at lower duty cycles.

The PWM frequency is currently set to 8 kHz.

Questions:

  1. Is the noise mainly mechanical, or could switching behavior still be the cause?
  2. Would increasing PWM frequency above audible range improve smoothness?
  3. On the PCB, should motor current paths be routed separately from logic ground returns?
 

lichurbagan

Joined Jul 4, 2025
121
  1. Is the noise mainly mechanical, or could switching behavior still be the cause?
Both ... but at 8 kHz it’s mostly audible PWM.

8 kHz sits inside the audible range .... you’ll hear it
At low duty cycles, current is discontinuous ..... rough motion
Motor inductance and PWM switching can also create current ripple that translates to vibration

So even if the waveform looks clean electrically, the mechanical response is not smooth.

  1. Would increasing PWM frequency above audible range improve smoothness?
Yes .... Move PWM to > 20 kHz (inaudible range)
This reduces audible noise significantly
Higher frequency ..... smoother current ..... smoother torque

Check this discussion on PWM freuency: https://electronics.stackexchange.com/questions/274326/why-change-microcontrollers-pwm-frequency

  1. On the PCB, should motor current paths be routed separately from logic ground returns?
Yes ..... Keep motor current paths separate from logic ground returns
High current ..... fast switching .... noise injection into ground
Use clean ground plane or controlled return paths ... read this guide: https://www.pcbway.com/blog/Enginee...g_Layers_and_Ground_Planes__Power_Planes.html
Keep MCU/ADC ground clean and away from power loops
 
Top