Simple (and Dirty) Pulse Width Modulation (PWM) With 555 Timer




About: Made the kessel run in less than twelve parsecs.
Simple circuit for DC Motor speed control (fan speed control, light / LED dimming and etc) using the 555 timer.

Also a good starting point for novices wanting to get their hands dirty with the 555 timer IC. Some would argue that this is not the most efficient approach, but hey (read the title), it's simple, and it works.

Check the video out.
More images and description here.

Pulse Width Modulation (PWM)

Put simply PWM is the process of switching power ON and OFF to a device in pulses at a specific frequency. Same approach used in commercial light dimmers, DC motor speed controller, CPU fan speed controllers and etc.

That's what we seek to achieve here.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Part List

Part list

1) 555 timer IC - 1
2) 100K variable resistor - 1
3) 1N4148 Diode - 2
4) 100nF capacitor - 2

The 555 Timer IC

The 555 timer is arguably one of the most popular IC ever made. There are thousands of resources online if you're interested to delve deeper into the subject. I'm just going to give the simple description directly relevant to the build

PIN 1 - Ground
DC Ground

PIN 2 - Trigger
When LOW, it causes the Output pin to go HIGH. Activated when voltage fall
below 1/3 of +V.

PIN 3 - Output
Output is HIGH when Trigger pin is LOW. Output is LOW when Threshold pin is
HIGH. Output is LOW when reset pin is LOW.Output pin is able to source or sink

PIN 4 - Reset
Short to +V when not in use.

PIN 5 - Control Voltage
Grounded through a capacitor when not in use.

PIN 6 - Threshold
When voltage reaches 2/3 of +V, this pin will cause Output to be driven LOW.

PIN 7 - Discharge
Grounded when Output pin goes HIGH.

PIN 8 - +V
DC Power

Step 2: How It Works.

How it works

When the circuit is powered up, the C1 capacitor will initially be in a discharged state. Thus, the Trigger (pin 2) will be LOW, driving the Output (pin 3) to go HIGH. Discharge (pin 7) goes HIGH and goes ground. The cycle begins.

The HIGH Output will cause C1 capacitor to be charged through the R1 and D1 path. Upon C1 voltage reaching 2/3 of +V, the Threshold (pin 6) will be activated and drive the Output (pin 3) LOW. Discharge (pin 7) goes LOW. The time it takes for C1 to charge depends on the position of R1.

Since Output (pin 3) is now LOW, capacitor C1 will start to discharge through the D2 and R1 path. When the voltage of C1 drops below 1/3 of +V, Trigger (pin 2) will be LOW, driving Output (pin 3) to go HIGH, and Discharge (pin 7) to go HIGH and shorts to ground. The cycle repeats itself.

You've probably noticed by now that the circuit is using Discharge (pin 7) to drive the motor, simply by going ground in each cycle. You can add some amount of protection if you're concerned about back EMF from the motor.

Pin 4 and 5 are not used, and pin 1 is simply tied to ground. The circuit can take between +3v to +18v. The Frequency is around 144Hz. Do note that, doubling the value of C1 will reduce frequency to half, tripling will will reduce frequency to 1/3, and so on.

Step 3: That's It

Happy tinkering. Feel free to browse my blog for other stuff

2 People Made This Project!


  • Made with Math Contest

    Made with Math Contest
  • Multi-Discipline Contest

    Multi-Discipline Contest
  • Robotics Contest

    Robotics Contest

110 Discussions


Question 10 months ago on Step 3

I am a complete novice at electronics, and had a question about your dirty 555 pwm circuit:

I wish to run (2) Arctic F8 standard pwm case fans completely outside of a computer case (no motherboard).
Can the circuit you show drive (2) fans at the same time? I have (2) rechargeable 9v batteries that combine to produce 14.2 vdc. In series as a power supply (actually have 4 batteries available).
The fans draw 160mA each at full speed, 100mA at mid speed and 80mA at low speed (2000 rpm, 1200 rpm and 850 rpm) off +12v supply. They also list that they run at 7V and 5V for the slower speeds. The fans are 75 ohm each (I think).

I’d like the pwm circuit to drive both fans w/1 potentiometer so they match rpms.

Again, I’m a complete novice, so any help is greatly appreciated!

PS (I was going to just drive pwm fans off of a series circuit that supplied these voltages to the fan using a pot and a few fixed resistors ...but am not sure this is a good idea)?

Thank you!


1 year ago

Will this circuit damage the timer if the potentiometer is turned all the way to either side? I see there's no other resistor between the capacitor and the timer's output pin.


2 years ago

Hey guys, is the capasitor have polarity or no? Thanks


3 years ago


Can yours control the speed of a 12 volt dc case fan FROM 0% TO 100%?


7 years ago on Introduction

ok so with the caps do you mean 100 microfarads or 100 nanofarads? im building this for a very large science project which i will post online. thanks for help

1 reply

Reply 4 years ago on Introduction

It is 100nF. The code will be 104 on the capcitor. Other values will work, and will change the frequency. Lower value capacitor = higher value frequency. Try putting a 100uF capacitor (check the polarity), and you should be able to see it blinking!


4 years ago on Introduction

It looks as though the 555 is sinking the current, how would you wire a transistor with regards to the ground of the 555 (i.e. would it require a PNP transistor with the base connected to pin 7 on the 555, and would this require a way to drop the voltage going through the PNP between the base and the 555)? Thanks in advance!


1 reply

Reply 4 years ago on Introduction

Steve, excellent question. To drive a NPN transistor with this circuit, all you need to do is use pin 3 as output (even though it's already connected to a potentiometer, it will still work!). Give it a try!

Don't forget a resistor between the NPN's gate, unless it's a mosfet.


4 years ago on Introduction

Also, what's the best way to control a NPN transistor with the ground output? Would one need to drive the NPN transistor with a PNP transistor?


7 years ago on Introduction

We are connecting a motor to the circuit, shouldn't we attach a protective diode for taking care of the back EMF ? Please clarify.
Thank you in advance .

1 reply

Reply 4 years ago on Introduction

Yes there should be a diode, but as it says in the title this is just a simple and dirty circuit. I make circuits with motors a lot, while only using protective diodes sometimes, and I have never had a component damaged, so it is not a huge risk.


4 years ago on Introduction

nice instructables!

I already make the pcb one, check out my instructables:


5 years ago

Nice!! It took me a while to figure out that my 555 couldn't pass enough current so eventually I used a PNP Transistor (TIP127) connected to Pin 7 to power a little dc water pump. It works perfectly now!!

1 reply