Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Mini L293D Motor Driver: Examples, Pinouts, and Specs

Image of Mini L293D Motor Driver
Cirkit Designer LogoDesign with Mini L293D Motor Driver in Cirkit Designer

Introduction

The Mini L293D Motor Driver is a compact dual H-bridge motor driver designed to control the direction and speed of DC motors and stepper motors. It is widely used in robotics, automation, and other motor control applications due to its small size, ease of use, and versatility. This component is ideal for projects requiring precise motor control, such as robotic arms, wheeled robots, and conveyor systems.

Explore Projects Built with Mini L293D Motor Driver

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Bluetooth-Controlled Robotic Car with L293D Motor Driver and LED Indicators
Image of Bluetooth Car Diagram: A project utilizing Mini L293D Motor Driver in a practical application
This circuit is a motor control system that uses an L293D driver shield to control four hobby gearmotors, with each motor connected to an LED and a resistor for status indication. The system is powered by a 2x 18650 battery pack and includes an HC-05 Bluetooth module for wireless communication.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32 and L293D Motor Controller with Wi-Fi Control
Image of Belajar Mengatur Kecepatan Motor DC w esp32: A project utilizing Mini L293D Motor Driver in a practical application
This circuit is a motor control system using an ESP32 microcontroller to drive a DC motor via an L293D motor driver. The ESP32 generates PWM signals to control the motor speed and direction, while the LM2596 step-down module regulates the power supply from a 12V source to the required voltage levels for the ESP32 and motor driver.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino-Powered Battery-Operated Dual DC Motor Control System
Image of Motor control- Arduino nano + expansion board + L298N: A project utilizing Mini L293D Motor Driver in a practical application
This circuit uses an Arduino Expansion Board to control two DC Mini Metal Gear Motors via an L298N DC motor driver. The motors are powered by a 2200mAh LiPo battery, and the Arduino sends control signals to the motor driver to manage the direction and speed of the motors.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino-Controlled Dual DC Motor Driver with Hall Effect Sensors and Indicator LEDs
Image of  bluetooth car: A project utilizing Mini L293D Motor Driver in a practical application
This circuit controls two DC motors using an L293D motor driver, with an Arduino UNO as the microcontroller. The Arduino reads inputs from three Hall sensors and controls the motors' direction based on the sensors' states, while also indicating the sensors' status through three LEDs. Each LED and Hall sensor is connected to the Arduino with a current-limiting resistor, and the motors' operation is dependent on the Hall sensors' signals.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Mini L293D Motor Driver

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Bluetooth Car Diagram: A project utilizing Mini L293D Motor Driver in a practical application
Bluetooth-Controlled Robotic Car with L293D Motor Driver and LED Indicators
This circuit is a motor control system that uses an L293D driver shield to control four hobby gearmotors, with each motor connected to an LED and a resistor for status indication. The system is powered by a 2x 18650 battery pack and includes an HC-05 Bluetooth module for wireless communication.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Belajar Mengatur Kecepatan Motor DC w esp32: A project utilizing Mini L293D Motor Driver in a practical application
ESP32 and L293D Motor Controller with Wi-Fi Control
This circuit is a motor control system using an ESP32 microcontroller to drive a DC motor via an L293D motor driver. The ESP32 generates PWM signals to control the motor speed and direction, while the LM2596 step-down module regulates the power supply from a 12V source to the required voltage levels for the ESP32 and motor driver.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Motor control- Arduino nano + expansion board + L298N: A project utilizing Mini L293D Motor Driver in a practical application
Arduino-Powered Battery-Operated Dual DC Motor Control System
This circuit uses an Arduino Expansion Board to control two DC Mini Metal Gear Motors via an L298N DC motor driver. The motors are powered by a 2200mAh LiPo battery, and the Arduino sends control signals to the motor driver to manage the direction and speed of the motors.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of  bluetooth car: A project utilizing Mini L293D Motor Driver in a practical application
Arduino-Controlled Dual DC Motor Driver with Hall Effect Sensors and Indicator LEDs
This circuit controls two DC motors using an L293D motor driver, with an Arduino UNO as the microcontroller. The Arduino reads inputs from three Hall sensors and controls the motors' direction based on the sensors' states, while also indicating the sensors' status through three LEDs. Each LED and Hall sensor is connected to the Arduino with a current-limiting resistor, and the motors' operation is dependent on the Hall sensors' signals.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications:

  • Robotics (e.g., motorized vehicles, robotic arms)
  • Automation systems
  • DIY electronics projects
  • Stepper motor control for CNC machines or 3D printers

Technical Specifications

The Mini L293D Motor Driver is based on the L293D IC, which is capable of driving two DC motors or one stepper motor. Below are the key technical details:

Key Specifications:

  • Operating Voltage: 4.5V to 36V
  • Logic Voltage: 5V
  • Maximum Output Current (per channel): 600mA (peak: 1.2A)
  • Number of Channels: 2 (dual H-bridge)
  • Motor Types Supported: DC motors, stepper motors
  • Control Logic: TTL-compatible
  • Thermal Shutdown Protection: Yes
  • Dimensions: Compact form factor (varies by manufacturer)

Pin Configuration and Descriptions:

The Mini L293D Motor Driver typically has the following pin layout:

Input/Control Pins:

Pin Name Pin Number Description
IN1 1 Input 1 for Motor A (controls direction)
IN2 2 Input 2 for Motor A (controls direction)
IN3 7 Input 1 for Motor B (controls direction)
IN4 8 Input 2 for Motor B (controls direction)
ENA 9 Enable pin for Motor A (PWM for speed control)
ENB 10 Enable pin for Motor B (PWM for speed control)

Power and Output Pins:

Pin Name Pin Number Description
VCC 16 Motor power supply (4.5V to 36V)
GND 4, 5, 12, 13 Ground
VS 8 Logic voltage supply (typically 5V)
OUT1 3 Output 1 for Motor A
OUT2 6 Output 2 for Motor A
OUT3 11 Output 1 for Motor B
OUT4 14 Output 2 for Motor B

Usage Instructions

How to Use the Mini L293D Motor Driver in a Circuit:

  1. Power Connections:

    • Connect the motor power supply to the VCC pin (4.5V to 36V).
    • Connect the logic voltage (5V) to the VS pin.
    • Connect all GND pins to the ground of your circuit.
  2. Motor Connections:

    • Connect the terminals of Motor A to OUT1 and OUT2.
    • Connect the terminals of Motor B to OUT3 and OUT4.
  3. Control Connections:

    • Use the IN1 and IN2 pins to control the direction of Motor A.
    • Use the IN3 and IN4 pins to control the direction of Motor B.
    • Use the ENA and ENB pins to enable/disable the motors and control their speed using PWM signals.
  4. Logic Control:

    • Use a microcontroller (e.g., Arduino UNO) to send control signals to the input pins (IN1, IN2, IN3, IN4) and PWM signals to the enable pins (ENA, ENB).

Example Arduino Code:

Below is an example of how to control two DC motors using the Mini L293D Motor Driver and an Arduino UNO:

// Define motor control pins
#define IN1 2  // Motor A direction control pin 1
#define IN2 3  // Motor A direction control pin 2
#define ENA 9  // Motor A speed control (PWM pin)
#define IN3 4  // Motor B direction control pin 1
#define IN4 5  // Motor B direction control pin 2
#define ENB 10 // Motor B speed control (PWM pin)

void setup() {
  // Set motor control pins as outputs
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(ENA, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);
  pinMode(ENB, OUTPUT);
}

void loop() {
  // Motor A: Forward at 50% speed
  digitalWrite(IN1, HIGH); // Set IN1 high
  digitalWrite(IN2, LOW);  // Set IN2 low
  analogWrite(ENA, 128);   // Set ENA to 50% duty cycle (128/255)

  // Motor B: Reverse at 75% speed
  digitalWrite(IN3, LOW);  // Set IN3 low
  digitalWrite(IN4, HIGH); // Set IN4 high
  analogWrite(ENB, 192);   // Set ENB to 75% duty cycle (192/255)

  delay(2000); // Run motors for 2 seconds

  // Stop both motors
  analogWrite(ENA, 0); // Set ENA to 0% duty cycle (stop motor A)
  analogWrite(ENB, 0); // Set ENB to 0% duty cycle (stop motor B)

  delay(2000); // Wait for 2 seconds
}

Important Considerations:

  • Ensure the motor power supply voltage matches the motor's rated voltage.
  • Do not exceed the maximum current rating of 600mA per channel.
  • Use proper heat dissipation if operating at high currents for extended periods.
  • Always connect all ground pins to a common ground to avoid erratic behavior.

Troubleshooting and FAQs

Common Issues and Solutions:

  1. Motors Not Running:

    • Check all power connections (VCC, VS, and GND).
    • Ensure the enable pins (ENA, ENB) are receiving a valid PWM signal or are set high.
  2. Motors Running in the Wrong Direction:

    • Reverse the connections to the input pins (IN1, IN2, IN3, IN4) or swap the motor terminals.
  3. Overheating:

    • Ensure the current draw of the motors does not exceed the driver’s maximum rating.
    • Add a heat sink or cooling fan if necessary.
  4. Erratic Motor Behavior:

    • Verify that all ground connections are properly connected.
    • Check for noise or interference in the control signals.

FAQs:

  • Can I control stepper motors with this driver? Yes, the Mini L293D can control stepper motors by driving the coils in sequence. Refer to your stepper motor's datasheet for the correct sequence.

  • What happens if I exceed the current rating? The driver may overheat and shut down due to thermal protection. Prolonged overcurrent may damage the IC.

  • Can I use this driver with a 3.3V microcontroller? The L293D requires 5V logic levels. Use a level shifter if your microcontroller operates at 3.3V.

This concludes the documentation for the Mini L293D Motor Driver.