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

How to Use L9110S DC motor driver for 4 motors: Examples, Pinouts, and Specs

Image of L9110S DC motor driver for 4 motors
Cirkit Designer LogoDesign with L9110S DC motor driver for 4 motors in Cirkit Designer

Introduction

The L9110S is a dual-channel DC motor driver designed to control up to four DC motors. Manufactured by Arduino/ESP32, this versatile component enables bidirectional control of motors, making it an excellent choice for robotics, automation, and other motor-driven applications. It features built-in protection against overcurrent and thermal overload, ensuring reliable operation in demanding environments.

Explore Projects Built with L9110S DC motor driver for 4 motors

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Raspberry Pi 4B Controlled Multi-Motor Driver System
Image of vend: A project utilizing L9110S DC motor driver for 4 motors in a practical application
This circuit is designed to control multiple DC motors using a Raspberry Pi 4B as the central processing unit and several L9110 motor driver ICs. The Raspberry Pi's GPIO pins are connected to the input pins of the L9110s to control the speed and direction of the connected motors. A 12V battery provides power to the motor drivers and the motors, with the Raspberry Pi managing the logic level control signals.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Motor Control System with L298N and Pushbuttons
Image of Soccer Car Wired: A project utilizing L9110S DC motor driver for 4 motors in a practical application
This circuit controls four DC motors using an L298N motor driver, powered by a 18650 Li-Ion battery. The direction and operation of the motors are controlled by four pushbuttons, each connected to the motor driver's input pins through resistors.
Cirkit Designer LogoOpen Project in Cirkit Designer
Bluetooth-Controlled Robotic Vehicle with STM32 and L298N Motor Driver
Image of rc car: A project utilizing L9110S DC motor driver for 4 motors in a practical application
This circuit controls four DC motors using an L298N motor driver, which is interfaced with an STM32F411RET6 microcontroller. The microcontroller can adjust the speed and direction of the motors through PWM and digital control signals. Additionally, the circuit includes an HC-05 Bluetooth module for wireless communication, allowing remote control of the motors via Bluetooth.
Cirkit Designer LogoOpen Project in Cirkit Designer
STM32F407-Controlled Robotic System with Touch Interface and Motor Actuation
Image of 0000: A project utilizing L9110S DC motor driver for 4 motors in a practical application
This circuit is designed to control multiple DC motors using L298N motor drivers, which are interfaced with an STM32F407 Discovery Kit microcontroller. The microcontroller receives input from a rotary encoder, multiple touch sensors, a joystick module, and an IR sensor to determine the motors' behavior. A 12V power supply provides power to the motor drivers, which is regulated for other components by MT3608 step-up converters, and the entire system is powered by an AC supply connected to the 12V power supply unit.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with L9110S DC motor driver for 4 motors

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 vend: A project utilizing L9110S DC motor driver for 4 motors in a practical application
Raspberry Pi 4B Controlled Multi-Motor Driver System
This circuit is designed to control multiple DC motors using a Raspberry Pi 4B as the central processing unit and several L9110 motor driver ICs. The Raspberry Pi's GPIO pins are connected to the input pins of the L9110s to control the speed and direction of the connected motors. A 12V battery provides power to the motor drivers and the motors, with the Raspberry Pi managing the logic level control signals.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Soccer Car Wired: A project utilizing L9110S DC motor driver for 4 motors in a practical application
Battery-Powered Motor Control System with L298N and Pushbuttons
This circuit controls four DC motors using an L298N motor driver, powered by a 18650 Li-Ion battery. The direction and operation of the motors are controlled by four pushbuttons, each connected to the motor driver's input pins through resistors.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of rc car: A project utilizing L9110S DC motor driver for 4 motors in a practical application
Bluetooth-Controlled Robotic Vehicle with STM32 and L298N Motor Driver
This circuit controls four DC motors using an L298N motor driver, which is interfaced with an STM32F411RET6 microcontroller. The microcontroller can adjust the speed and direction of the motors through PWM and digital control signals. Additionally, the circuit includes an HC-05 Bluetooth module for wireless communication, allowing remote control of the motors via Bluetooth.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of 0000: A project utilizing L9110S DC motor driver for 4 motors in a practical application
STM32F407-Controlled Robotic System with Touch Interface and Motor Actuation
This circuit is designed to control multiple DC motors using L298N motor drivers, which are interfaced with an STM32F407 Discovery Kit microcontroller. The microcontroller receives input from a rotary encoder, multiple touch sensors, a joystick module, and an IR sensor to determine the motors' behavior. A 12V power supply provides power to the motor drivers, which is regulated for other components by MT3608 step-up converters, and the entire system is powered by an AC supply connected to the 12V power supply unit.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Robotics (e.g., wheeled robots, robotic arms)
  • Automated conveyor systems
  • Smart home devices (e.g., motorized curtains or blinds)
  • Educational projects involving motor control
  • Small-scale industrial automation

Technical Specifications

The L9110S motor driver is designed to provide efficient and reliable motor control. Below are its key technical details:

Key Specifications

Parameter Value
Operating Voltage 2.5V to 12V
Output Current (per channel) 800mA (continuous)
Peak Output Current 1.5A (short duration)
Number of Channels 2
Motor Control Bidirectional (forward/reverse)
Protection Features Overcurrent and thermal overload
Operating Temperature -25°C to +85°C
Dimensions 28mm x 21mm x 5mm

Pin Configuration

The L9110S module has a simple pinout for easy integration into your projects. Below is the pin configuration:

Pin Name Description
A-IA Input signal for Motor A (direction control)
A-IB Input signal for Motor A (direction control)
B-IA Input signal for Motor B (direction control)
B-IB Input signal for Motor B (direction control)
VCC Power supply for the module (2.5V to 12V)
GND Ground connection
MA1 Output to Motor A terminal 1
MA2 Output to Motor A terminal 2
MB1 Output to Motor B terminal 1
MB2 Output to Motor B terminal 2

Usage Instructions

The L9110S motor driver is straightforward to use in a circuit. Follow the steps below to integrate it into your project:

Connecting the L9110S

  1. Power Supply: Connect the VCC pin to a power source (2.5V to 12V) and the GND pin to ground.
  2. Motor Connections:
    • Connect the motor terminals to the MA1, MA2, MB1, and MB2 pins.
    • For controlling four motors, use two L9110S modules.
  3. Control Signals:
    • Connect the A-IA, A-IB, B-IA, and B-IB pins to the GPIO pins of a microcontroller (e.g., Arduino or ESP32).
    • Use PWM signals to control motor speed and direction.

Example Arduino Code

Below is an example of how to control two DC motors using the L9110S and an Arduino UNO:

// Define motor control pins
const int motorA_IA = 3; // Motor A input A
const int motorA_IB = 5; // Motor A input B
const int motorB_IA = 6; // Motor B input A
const int motorB_IB = 9; // Motor B input B

void setup() {
  // Set motor control pins as outputs
  pinMode(motorA_IA, OUTPUT);
  pinMode(motorA_IB, OUTPUT);
  pinMode(motorB_IA, OUTPUT);
  pinMode(motorB_IB, OUTPUT);
}

void loop() {
  // Example: Rotate Motor A forward
  digitalWrite(motorA_IA, HIGH);
  digitalWrite(motorA_IB, LOW);

  // Example: Rotate Motor B backward
  digitalWrite(motorB_IA, LOW);
  digitalWrite(motorB_IB, HIGH);

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

  // Stop both motors
  digitalWrite(motorA_IA, LOW);
  digitalWrite(motorA_IB, LOW);
  digitalWrite(motorB_IA, LOW);
  digitalWrite(motorB_IB, LOW);

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

Best Practices

  • Use a decoupling capacitor (e.g., 100µF) across the power supply to reduce noise.
  • Ensure the power supply voltage matches the motor's operating voltage.
  • Avoid exceeding the maximum current rating to prevent damage to the module.
  • Use heat sinks or proper ventilation if operating at high currents for extended periods.

Troubleshooting and FAQs

Common Issues and Solutions

  1. Motors not spinning:

    • Verify the power supply voltage and connections.
    • Check the control signals from the microcontroller.
    • Ensure the motor connections are secure.
  2. Motors spinning in the wrong direction:

    • Swap the connections of the motor terminals (MA1 and MA2, or MB1 and MB2).
    • Adjust the logic levels of the control pins (A-IA, A-IB, B-IA, B-IB).
  3. Overheating of the module:

    • Ensure the current drawn by the motors does not exceed the module's rating.
    • Add a heat sink or improve ventilation around the module.
  4. PWM control not working:

    • Verify that the PWM pins on the microcontroller are correctly configured.
    • Check the PWM frequency and duty cycle settings.

FAQs

Q: Can the L9110S control stepper motors?
A: Yes, the L9110S can control stepper motors by driving the coils in sequence. However, a dedicated stepper motor driver may provide better performance.

Q: Can I use the L9110S with a 3.3V microcontroller like the ESP32?
A: Yes, the L9110S is compatible with 3.3V logic levels, making it suitable for use with ESP32 and similar microcontrollers.

Q: How many motors can I control with one L9110S module?
A: One L9110S module can control two DC motors. To control four motors, you will need two modules.

By following this documentation, you can effectively integrate the L9110S motor driver into your projects and troubleshoot common issues with ease.