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

How to Use l9110: Examples, Pinouts, and Specs

Image of l9110
Cirkit Designer LogoDesign with l9110 in Cirkit Designer

Introduction

The L9110 Dual H-Bridge Motor Driver Module, manufactured by i am (Part ID: L9110 Dual Module), is a compact and efficient motor driver IC designed for controlling the direction and speed of DC motors and stepper motors. It features two H-bridge circuits, allowing it to drive two motors simultaneously. This module is widely used in robotics, automation, and other motor control applications due to its simplicity and reliability.

Explore Projects Built with l9110

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Battery-Powered Emergency Alert System with NUCLEO-F072RB, SIM800L, and GPS NEO 6M
Image of women safety: A project utilizing l9110 in a practical application
This circuit is an emergency alert system that uses a NUCLEO-F072RB microcontroller to send SMS alerts and make calls via a SIM800L GSM module, while obtaining location data from a GPS NEO 6M module. The system is powered by a Li-ion battery and includes a TP4056 module for battery charging and protection, with a rocker switch to control power to the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO-Based Battery-Powered Robotic Car with Ultrasonic and IR Sensors
Image of micon: A project utilizing l9110 in a practical application
This circuit is a robotic system controlled by an Arduino UNO, featuring motor drivers (L9110) to control multiple hobby motors, an ultrasonic sensor (HC-SR04) for distance measurement, IR sensors for obstacle detection, and a Bluetooth module (HC-06) for wireless communication. The system is powered by a 2x 18650 battery pack and includes a rocker switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Leonardo Soldier Tracking System with GPS, GSM, and Environmental Sensors
Image of project: A project utilizing l9110 in a practical application
This circuit is designed for a soldier tracking system that monitors environmental conditions and location. It uses an Arduino Leonardo to interface with a GPS module for location tracking, a SIM900A GSM module for SMS communication, a temperature sensor (LM35) for ambient temperature measurement, and an LDR photoresistor for light intensity which could be used as a proxy for heartbeat monitoring. The system can send the soldier's location, temperature, and heartbeat data via SMS and displays status information on an LCD screen connected via an I2C module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Cellular-Enabled IoT Device with Real-Time Clock and Power Management
Image of LRCM PHASE 2 BASIC: A project utilizing l9110 in a practical application
This circuit features a LilyGo-SIM7000G module for cellular communication and GPS functionality, interfaced with an RTC DS3231 for real-time clock capabilities. It includes voltage sensing through two voltage sensor modules, and uses an 8-channel opto-coupler for isolating different parts of the circuit. Power management is handled by a buck converter connected to a DC power source and batteries, with a fuse for protection and a rocker switch for on/off control. Additionally, there's an LED for indication purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with l9110

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 women safety: A project utilizing l9110 in a practical application
Battery-Powered Emergency Alert System with NUCLEO-F072RB, SIM800L, and GPS NEO 6M
This circuit is an emergency alert system that uses a NUCLEO-F072RB microcontroller to send SMS alerts and make calls via a SIM800L GSM module, while obtaining location data from a GPS NEO 6M module. The system is powered by a Li-ion battery and includes a TP4056 module for battery charging and protection, with a rocker switch to control power to the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of micon: A project utilizing l9110 in a practical application
Arduino UNO-Based Battery-Powered Robotic Car with Ultrasonic and IR Sensors
This circuit is a robotic system controlled by an Arduino UNO, featuring motor drivers (L9110) to control multiple hobby motors, an ultrasonic sensor (HC-SR04) for distance measurement, IR sensors for obstacle detection, and a Bluetooth module (HC-06) for wireless communication. The system is powered by a 2x 18650 battery pack and includes a rocker switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of project: A project utilizing l9110 in a practical application
Arduino Leonardo Soldier Tracking System with GPS, GSM, and Environmental Sensors
This circuit is designed for a soldier tracking system that monitors environmental conditions and location. It uses an Arduino Leonardo to interface with a GPS module for location tracking, a SIM900A GSM module for SMS communication, a temperature sensor (LM35) for ambient temperature measurement, and an LDR photoresistor for light intensity which could be used as a proxy for heartbeat monitoring. The system can send the soldier's location, temperature, and heartbeat data via SMS and displays status information on an LCD screen connected via an I2C module.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of LRCM PHASE 2 BASIC: A project utilizing l9110 in a practical application
Cellular-Enabled IoT Device with Real-Time Clock and Power Management
This circuit features a LilyGo-SIM7000G module for cellular communication and GPS functionality, interfaced with an RTC DS3231 for real-time clock capabilities. It includes voltage sensing through two voltage sensor modules, and uses an 8-channel opto-coupler for isolating different parts of the circuit. Power management is handled by a buck converter connected to a DC power source and batteries, with a fuse for protection and a rocker switch for on/off control. Additionally, there's an LED for indication purposes.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Robotics: Driving wheels or robotic arms
  • Automation systems: Conveyor belts, actuators
  • DIY projects: Remote-controlled cars, drones
  • Stepper motor control for CNC machines or 3D printers

Technical Specifications

Key Technical Details

Parameter Value
Operating Voltage 2.5V to 12V
Output Current (per channel) 800mA (continuous), 1.5A (peak)
Logic Input Voltage 0V to 5V
Control Logic TTL/CMOS compatible
Number of Channels 2 (dual H-bridge)
Motor Types Supported DC motors, stepper motors
Operating Temperature -40°C to +85°C
Dimensions ~29mm x 23mm x 5mm (module size)

Pin Configuration and Descriptions

The L9110 module has a total of 6 pins for interfacing with the microcontroller and motors.

Input/Control Pins

Pin Name Description
A-IA Input A for Motor A. Controls the direction of Motor A.
A-IB Input B for Motor A. Controls the direction of Motor A.
B-IA Input A for Motor B. Controls the direction of Motor B.
B-IB Input B for Motor B. Controls the direction of Motor B.

Power and Motor Output Pins

Pin Name Description
VCC Power supply for the module (2.5V to 12V).
GND Ground connection.
Motor A+ Positive terminal for Motor A.
Motor A- Negative terminal for Motor A.
Motor B+ Positive terminal for Motor B.
Motor B- Negative terminal for Motor B.

Usage Instructions

How to Use the L9110 in a Circuit

  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 terminals of Motor A to Motor A+ and Motor A-, and Motor B to Motor B+ and Motor B-.
  3. Control Signals: Use the A-IA, A-IB, B-IA, and B-IB pins to control the direction and speed of the motors:
    • To move a motor forward, set IA = HIGH and IB = LOW.
    • To move a motor backward, set IA = LOW and IB = HIGH.
    • To stop the motor, set both IA and IB to LOW.
  4. Microcontroller Interface: Connect the control pins to a microcontroller (e.g., Arduino UNO) to send the required logic signals.

Important Considerations

  • Ensure the power supply voltage matches the motor's operating voltage.
  • Do not exceed the maximum current rating of 800mA per channel (continuous) or 1.5A (peak).
  • Use appropriate heat dissipation methods if operating near the peak current limit.
  • Avoid short circuits between motor terminals or control pins.

Example Code for Arduino UNO

Below is an example code snippet to control two DC motors using the L9110 module and an Arduino UNO:

// Define control pins for Motor A
const int motorA_IA = 3; // Connect to A-IA pin on L9110
const int motorA_IB = 4; // Connect to A-IB pin on L9110

// Define control pins for Motor B
const int motorB_IA = 5; // Connect to B-IA pin on L9110
const int motorB_IB = 6; // Connect to B-IB pin on L9110

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() {
  // Move Motor A forward
  digitalWrite(motorA_IA, HIGH);
  digitalWrite(motorA_IB, LOW);

  // Move 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
}

Notes:

  • Adjust the pin numbers in the code to match your Arduino wiring.
  • Use analogWrite() instead of digitalWrite() for speed control via PWM.

Troubleshooting and FAQs

Common Issues

  1. Motors Not Running:

    • Check the power supply voltage and ensure it matches the motor's requirements.
    • Verify the control signals from the microcontroller are correct.
    • Ensure proper connections between the motor terminals and the L9110 module.
  2. Overheating:

    • Ensure the current drawn by the motors does not exceed the module's maximum rating.
    • Use a heat sink or cooling fan if necessary.
  3. Erratic Motor Behavior:

    • Check for loose or faulty connections.
    • Ensure the ground (GND) is properly connected between the module and the microcontroller.

FAQs

Q: Can the L9110 drive stepper motors?
A: Yes, the L9110 can drive stepper motors by controlling the two H-bridge channels in sequence. However, additional logic or a library may be required for precise stepper motor control.

Q: Can I use the L9110 with a 3.3V microcontroller?
A: Yes, the L9110 is compatible with 3.3V logic levels, but ensure the motor's power supply voltage is within the module's range (2.5V to 12V).

Q: What is the maximum motor voltage supported?
A: The L9110 supports motor voltages up to 12V. Ensure the motor's voltage rating matches the power supply.

Q: Can I control motor speed with the L9110?
A: Yes, motor speed can be controlled using PWM signals on the control pins (IA and IB).

This concludes the documentation for the L9110 Dual H-Bridge Motor Driver Module.