

The A4988 is a microstepping driver designed for controlling bipolar stepper motors. It enables precise control of motor position and speed, making it ideal for applications requiring high accuracy and smooth motion. The A4988 features adjustable current control, built-in over-temperature protection, and a straightforward interface, making it easy to integrate into a wide range of projects.








The A4988 stepper motor driver carrier is a compact module with the following key specifications:
| Parameter | Value |
|---|---|
| Motor Type Supported | Bipolar stepper motors |
| Operating Voltage (Vcc) | 8 V to 35 V |
| Logic Voltage (Vdd) | 3.3 V to 5 V |
| Maximum Output Current | 2 A per coil (with sufficient cooling) |
| Microstepping Modes | Full, 1/2, 1/4, 1/8, 1/16 |
| Current Control | Adjustable via onboard potentiometer |
| Protection Features | Over-temperature, short-circuit, and under-voltage lockout |
| Dimensions | 20 mm × 15 mm × 4 mm |
The A4988 module has 16 pins, which are described in the table below:
| Pin Name | Type | Description |
|---|---|---|
| VMOT | Power Input | Motor power supply (8 V to 35 V). Connect to the stepper motor power source. |
| GND | Power Ground | Ground connection for motor power supply. |
| VDD | Power Input | Logic power supply (3.3 V to 5 V). |
| GND | Power Ground | Ground connection for logic power supply. |
| 1A, 1B | Motor Output | Connect to one coil of the stepper motor. |
| 2A, 2B | Motor Output | Connect to the other coil of the stepper motor. |
| STEP | Logic Input | Controls the step signal. A rising edge triggers the motor to step. |
| DIR | Logic Input | Controls the direction of motor rotation. |
| ENABLE | Logic Input | Enables or disables the driver (active low). |
| MS1, MS2, MS3 | Logic Input | Microstepping mode selection pins. |
| RESET | Logic Input | Resets the driver (active low). |
| SLEEP | Logic Input | Puts the driver into low-power sleep mode (active low). |
Power Connections:
VMOT pin and ground to the GND pin.VDD pin and ground to the GND pin.Motor Connections:
1A, 1B, 2A, and 2B pins. Ensure the correct pairing of the motor wires.Control Signals:
STEP pin to send step pulses to the driver. Each pulse moves the motor one step.DIR pin to set the direction of rotation (high or low).MS1, MS2, and MS3 pins as per the desired mode (refer to the datasheet for the configuration table).Adjusting Current Limit:
Optional Connections:
ENABLE pin to enable or disable the driver.RESET and SLEEP pins for additional control features.VMOT and GND pins to reduce voltage spikes.Below is an example of how to control a stepper motor using the A4988 and an Arduino UNO:
// Define control pins for the A4988 driver
#define STEP_PIN 3 // Pin connected to STEP
#define DIR_PIN 4 // Pin connected to DIR
void setup() {
// Set the STEP and DIR pins as outputs
pinMode(STEP_PIN, OUTPUT);
pinMode(DIR_PIN, OUTPUT);
// Set initial direction
digitalWrite(DIR_PIN, HIGH); // Rotate clockwise
}
void loop() {
// Generate step pulses to move the motor
for (int i = 0; i < 200; i++) { // 200 steps for one revolution (1.8°/step motor)
digitalWrite(STEP_PIN, HIGH); // Step pulse high
delayMicroseconds(1000); // Wait 1 ms
digitalWrite(STEP_PIN, LOW); // Step pulse low
delayMicroseconds(1000); // Wait 1 ms
}
// Change direction
digitalWrite(DIR_PIN, !digitalRead(DIR_PIN)); // Toggle direction
delay(1000); // Wait 1 second before the next rotation
}
Motor Not Moving:
STEP pin is receiving pulses.Motor Vibrates but Does Not Rotate:
Driver Overheating:
Motor Moves in the Wrong Direction:
1A and 1B).DIR pin state in your code.Noisy Operation:
Can I use the A4988 with unipolar stepper motors? No, the A4988 is designed for bipolar stepper motors only.
What is the maximum step rate supported? The maximum step rate depends on the motor and power supply but typically exceeds 500 kHz.
Do I need to connect all control pins?
No, only the STEP, DIR, and power pins are mandatory. Other pins are optional based on your application.
Can I use the A4988 with a 12 V power supply? Yes, the A4988 supports motor power supply voltages between 8 V and 35 V.