This is a simple and easy to construct circuit that can be used to provide a bidirectional drive to a DC motor. The circuit operation is straight forward. Output of an astable mutivibrator based on IC1 (NE555) is used to control the relay RL1 driving the motor. The motor is connected between the two poles of the relay contacts. The relay contacts are so wired as to reverse the DC supply to the motor when the contacts changeover.

The astable multivibrator produces a square wave at the output with its high time given by 0.69(R1+R3+R5)C1 and low time given by 0.69(R1+R2+R4)C1.The high and low times can be varied by varying potentiometers R4 and R5.For the given values the high and low times can be adjusted between 1S and 8S separately. When the IC1 output is low, the relay is de energised and the relay contacts are in position 1-1 with the result that A terminal of the motor is positive and motor runs in one direction. The IC1 output is high the relay is energised and the contacts changeover to position 2-2.Now the terminal B of the motor becomes positive and motor runs in the opposite direction. The transistor Q1 is used to drive the relay according to the output from IC1.The diode D4 acts as freewheeling diode.

Circuit diagram with Parts list.



  • Assemble the circuit on a good quality PCB.
  • The circuit can be powered from a 12V DC power supply.
  • The IC1 must be mounted on a holder.
  • The capacitor C1 must be rated at least 15V.
  • The relay RL1 can be a 12V DPDT relay.


  1. thx 4r ur amazin circuits but what is the role of resistors(R1:1K,R2-R3:10K,R6:1OOohm)and function of transistor BC107 AND WHAT IS THE VOLTAGE RATING OF CAPACITOR C2:(0.01uf)and its functions both used in bidirectional motor? ur reply plz!