What is Motor Driver

This image shows What is Motor Driver


Are you curious about how motors are controlled in devices like robots, drones, and CNC machines? If the answer is yes! then check out this blog post which gives you an overview of motor drivers, including the different types available and how they work. You will also learn about the H-bridge circuit, how to build a motor driver circuit and the direction-controlling circuit of a DC motor using transistors. If you're interested in learning more about motor control, then this blog post is a must-read!


Motor drivers are a vital part of any robotics or automation project. They provide the power needed to control motors and other components within an application. The motor driver is essentially responsible for providing the voltage, current, directionality and protection necessary to efficiently operate your robotic parts or devices. By connecting directly with one's microcontroller board easy interfacing can be established allowing you to customize settings such as acceleration/deceleration rates, Encoder measurements and PID tuning parameters in order for improved system performance unrestricted by its hardware limitations; this will have large implications when it comes time troubleshoot issues pertaining those aspects of operation during deployment phases . Motor Drivers play an essential role throughout much industrial production where precision accuracy concerning motion systems must remain top priority accompanied alongside data collection capabilities that allow constant monitoring on how well ones setup is performing at all times.

The most commonly used actuator in any electronic device/machine will be motors next to solenoids, pneumatics, and hydraulics. These DC machines can be found everywhere, from a simple vibration motor inside a phone to complex stepper motors in CNC machines. A Motor Driver or Motor Controller is required to control a motor using a Microcontroller or processor. Motor Drivers come in a variety of shapes and sizes, depending on the type of motor and control required. In this article, we will focus only on DC motors and how to control a DC motor using a Motor Driver with the most popular H-bridge Topology. This technique will help us drive small or large DC Motors and also control its direction.

What is a motor driver?

A motor driver IC is an integrated circuit chip that controls motors in autonomous robots and embedded circuits. L293D and ULN2003 are the most commonly used motor Driver IC that is used in simple robots and RC cars. A motor driver is unquestionably something that causes the motor to move in accordance with the given instructions or inputs (high and low). It listens to the low voltage from the controller/processor and controls an actual motor that needs high input voltage A motor driver IC, in simple terms, controls the direction of the motor based on the commands or instructions received from the controller. Many motor drivers follow different topologies, in this article, we will focus on the popular H-bridge topology which is used in the L293D motor driver IC

A motor is an electronic device that helps convert electrical energy into mechanical energy. Therefore, a motor driver enables you to perform automatic tasks using electrical power. We have several types of electric motors. These types include the DC motors, the stepper motors, and the Servo motors. These motors are distinguished by their operating principles and characteristics. Choosing the correct type of motor driver is essential because it allows your engine to work efficiently with the microcontroller of your choice. This article will help you understand how the motor driver works, the characteristics, types, etc., Let's begin!

Different Types of Motor drivers

Motor driver  Description Image
1. L293D IC
  • Can be interfaced between the microcontroller and the motor.
  • Designed to control 2 DC motors simultaneously.
2. BTS7960B motor driver board
  • Can be interfaced with the microcontroller. 
  • Controls the speed and the direction of the DC motor based on the PWM signal.
BTS7960B motor driver board
3. TB6612FNG motor driver board
  • Can control 2 DC motors at 1.2 A constantly.
  • 2 input signals (IN1 and IN2) can be used to control the motor in one of four function modes CW, CCW, short-brake, and stop.
4. TB6560 motor driver board
  • The TB6560 Driver Board 3A CNC Router Single 1 Axis Controller Stepper Motor driver board is for axis control with Input signal high-speed optocoupler isolation, the large heat sink to ensure good heat dissipation. 
  • Stepper motor driver is Semi-flow mode adjustable, semi-flow current adjustable, with a variety of semi-flow model and semi-flow current setting functions.
TB6560 motor driver board
5. PCA9685 16 channel Servo motor driver board
  • The PCA9685 16-Channel 12-bit PWM/Servo Driver will drive up to 16 servos over I2C with only 2 pins.
  • Can be interfaced with the microcontroller like Arduino and Raspberry Pi etc.
  • Can control 16-servo motors with just 2 I2C pins.
6. MACH3 Interface Board CNC 5 Axis
  • Maximum support 5-axis stepper motor driver controllers
  • Compatible with MACH3, Linux CNC (EMC2), etc. parallel-control CNC software.
  • USB power supply and peripherals power phase are separate to protect computer security.
7. TB6600 Stepper motor driver
  • Can control the speed and direction of the stepper motors.
  • TB6600 stepper motor driver has a wide range of power input and 9~42VDC power supply.
  • You can set its micro-step and output current with a 6 DIP switch.
TB6600 Stepper motor driver
8. PWM DC motor speed controller
  • DC motor speed control using PWM signal.
  • Onboard Potentiometer to vary the duty cycle of the PWM signal.
  • Can handle loads of 9V-50V and up to 500W
PWM DC motor speed controller
9. 2000W 220V AC motor speed control board
  • SCR-based Speed control of AC motors.
  • Other AC loads like fans, bulbs, and heaters can also be controlled.
  • Can handle up to 2000W of loads.
10. L298 Motor driver board
  • Can control 2 DC motors with speed and direction.
  • Can be interfaced with the microcontroller like Arduino, Raspberry Pi, ESP32, etc.,
  • A 12V input voltage can be given to driving the motors. And has a 5V onboard voltage regulator.
L298 Motor driver board
11. A4988 Stepper motor driver
  • The A4988 driver allows micro-stepping by allowing intermediate step locations. This is achieved by energizing the coils with intermediate current levels.
  • We can control the stepper motor with just 2 pins from our controller, one for controlling the rotation direction and the other for controlling the steps.


How does a motor driver work?

 First, the microcontroller sends signals to the motor driver. Then, the signals received by the motor driver are interpreted and stepped up with the reference voltage i.e provided for driving the motor. The motor has two voltage input pins. Pin 1 turns ON the motor by giving the voltage equal to the reference voltage, whereas pin 2 turns OFF the motor by giving 0V at the output pin. This entire process is controlled by the motor driver. We use motor drivers to give high power to the motor by using a small voltage signal from a microcontroller or a control system.

If the microprocessor transmits a HIGH input to the motor driver, The driver will rotate the motor in one direction keeping the one pin as HIGH and one pin as LOW. And when the microcontroller transmits a LOW input to the motor driver, the motor driver makes the motor to rotate in other direction by making 2 motor pins as LOW and HIGH alternatively.

Motor drivers are important components in machines and robotic systems. They enable the operation of motors from a higher level signal, such as pulse-width modulation (PWM) or analog signals like those used with servos. Motor driver circuitry typically includes an integrated circuit that can supply enough current to drive the motor, while also providing shaft control for precise speed adjustment through power transistors connected in parallel with each other.

By configuring these transistors correctly, voltage spikes resulting from rapid switching of motor coils on tight turns can be controlled effectively without compromising efficiency during normal operations. Furthermore, many modern designs offer features such as built-in sensors which detect stall conditions as well as over/undervoltage protection and active braking capability making them ideal solutions for many applications ranging from light automation to complex robotics projects alike.

Also, read our blog on the Working Principle of AC Motor explaining how AC motor works with diagram and different types of AC motors and how they work.

What is a H-Bridge circuit?

This section explains what an H-bridge is, how it is made, and the common parts. The video also discusses how to drive a brushed-DC motor with an H-Bridge, Coast, and Brake.

An H-bridge is a simple circuit that allows you to control the direction of a DC motor. It is typically used in conjunction with a microcontroller, such as an Arduino, to control motors. You can build a robot if you can control two motors to move forward or backward.

A DC motor can spin either backward or forwards depending on how the plus and minus are connected. When switches 1 and 4 are closed, plus is connected to the left side of the motor, and minus is connected to the opposite side.


If you instead close switches 2 and 3, you will have plus connected to the right and minus connected to the left, and the motor spins in the opposite direction.

How to build a motor driver circuit?

The motor driver circuits can be made using readily available integrated ICs. otherwise, you can also use transistor circuits to control the direction and the speed of the DC motor. If you want to control the speed of the DC motor, you can use a PWM signal from a microcontroller like Arduino and feed it to the base of the transistor. Below, we will see a DC motor's direction and speed control using motor driver circuits built by the transistor.

Direction controlling circuit of a DC motor using Transistors

How to build a motor driver circuit
The above circuit diagram is used to control the speed and the direction of a DC motor. In the circuit diagram, the 4 transistors are used to control the speed and direction of the DC motor. The base drive for the transistor will be the PWM signal from a microcontroller like Arduino, Raspberry Pi, ESP32, etc.,
A side effect of how a motor works is that it generates electrical energy. When you disable the transistors to stop running the motor, this energy needs to be released in some way. When you add diodes in the reverse direction of the transistors, you provide a path for the current to follow to release this energy. Without them, the voltage may rise and damage your transistors.
The resistors going into each base is there to reduce the current to each transistor. Not sure how to calculate it? If you’re using a microcontroller to control them, start with 1k and adjust if that doesn’t work.
This entire circuit requires a voltage source and PWM signal for each transistors to control the motor in terms of speed and direction. Always 2 transistor in opposite direction will be fed with a PWM signal to control the speed and direction of the DC motor.

Major components in motor drivers

1. Controller

The controller can be a microprocessor or a microcontroller.

2. Motor Driver IC or Motor Driver Circuits

They are current amplifiers that accept a low current signal from the controller and convert it into a high current signal that is used to drive the motor.

3. Motor

Motor is defined as an electric or mechanical device that can create a motion. While interfacing with the controller; some of the motors like DC motor, stepper motor, and brushless dc motor may require a driver IC or driver circuit. DC motor is a type of motor that can convert DC into a mechanical power. In a brushless DC motor, it consists of a DC power source, and an inverter producing an AC signal to drive the motor. While stepper motor is a brushless DC electric motor that converts electrical pulses into discrete mechanical motions.

4. Power Supply Unit

Provides the required power to the motor drive.


In this blog, we have learned about the basics of motor drivers and how to use them. This blog covers the basic concepts of motor drivers circuits and their uses. We hope this tutorial blog helped you in getting started with the motor driver circuits.


If you appreciate our work don't forget to share this post and leave your opinion in the comment box.


Please do check out other blog posts about Popular electronics


Make sure you check out our wide range of products and collections (we offer some exciting deals!)

Components and Supplies

You may also like to read

Frequently Asked Questions

1. What does a motor driver do?

A motor is an electronic device that assists in the conversion of electrical energy to mechanical energy. As a result, a motor driver enables you to perform automatic tasks using electrical power.

2. Is motor driver necessary?

So, in general, any motor requires a driver circuit because its voltage/current requirements differ from the device that's trying to control it.

3. What is a motor driver unit?

Motor Driver circuits are current amplifiers. They act as a bridge between the controller and the motor in a motor drive. Motor drivers are made up of discrete components that are integrated inside an integrated circuit (IC).

4. What is the difference between motor driver and motor controller?

The main difference between a motor controller and a motor driver is that the controller is responsible for controlling the speed, torque, the direction of the motor whereas a motor driver is responsible for providing enough electrical power to the motor as required.

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.

Components and Supplies

You may also like to read