

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.








| 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) |
The L9110 module has a total of 6 pins for interfacing with the microcontroller and motors.
| 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. |
| 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. |
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
}
analogWrite() instead of digitalWrite() for speed control via PWM.Motors Not Running:
Overheating:
Erratic Motor Behavior:
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.