I am back with my brushed DC motor PWM project.
From all the previous replies I got, I've settled with and built a simple one MOSFET circuit as follows :
![enter image description here](https://cdn.statically.io/img/i.sstatic.net/OdvUN.png)
I already tried the circuit before with C1 at 100 nF, which gave a PWM frequency of about 150 Hz.
The whole PWM duty cycle range worked but the motor still spun even at the lowest duty cycle, the range was not linear and there was a lot of jerking in the motor.
I then read on the internet that my PWM frequency was likely too low.
I opted to raise it to 2 kHz by replacing C1 with a 6.8 nF capacitor.
I calculated that the dead time for the MOSFET would be about 1.2% of the total period at 2 kHz, which is still fine in my opinion. I confirmed this with oscillo measurement.
I tried my circuit again : no more jerking and a more linear range but at low PWM duty cycle, I can hear a worrying high-pitched whine (close to 2 kHz noise) coming from the circuit itself (not from the motor). I don't know if it comes from the 555 circuit or the MOSFET.
The very strange thing to me is that the whine lasts for a few seconds before the motor jumps instantly to somewhere in the middle of the PWM range.
This happens reliably whenever I go to the upper PWM range and then go back down, as if there was some non-destructive avalanche breakdown of a component happening somewhere.
Here is a video of me testing the circuit; you can hear the whine and see the motor "jumping" to the mid speed range : https://drive.google.com/file/d/1f0vSzAntd52sPCEY5sCrNHMPXRk4C7YQ/view?usp=share_link
Please tell me if you know what's happening here, because I have no idea.
I must have a missed an important detail I am not aware of.
On a maybe related note : after testing the circuit for a few minutes, I noticed the MOSFET heatsink was slightly warm, which wasn't the case when I ran the circuit at 150 Hz.
That's to be expected as higher frequency with the same driving current means longer dead time for the MOSFET relative to the period, which means more heating.
I was wondering if driving the MOSFET from the 555 alone wasn't fast enough at 2 kHz.
Maybe I need to use a CMOS 555 and put a proper driving stage between the 555 and the MOSFET gate ? This would greatly reduce the gate charge time and hence the dead time. Maybe it would help the circuit run smoother ?
If you think this would help, could you please recommend some parts for the driving stage ?
Thank you very much all for your time, have a good day.
P.S : Maybe I need to add a pulldown resistor for the MOSFET gate ?