HomeStore

A4988 Stepper Motor Driver Module

Product image 1
Product image 2
Product image 3
Product image 4

A4988 Stepper Motor Driver Module

A4988 Stepper Motor Driver Module

A4988 Stepper Motor Driver Module

The A4988 Stepper Motor Driver is a popular and compact module used to control bipolar stepper motors, such as the NEMA 17, with high precision and variable microstepping. It is commonly used in 3D printers, CNC machines, and robotics.

Technical Specifications:

  • Input Voltage (VMOT): 8V to 35V DC
  • Logic Voltage (VDD): 3V–5.5V (usually powered from Arduino 5V)
  • Motor Type: Bipolar Stepper Motors
  • Current per Phase: Up to 2A (with sufficient cooling)
  • Microstepping: Full, 1/2, 1/4, 1/8, 1/16 (selectable via MS1–MS3)
  • Step Interface: STEP and DIR pins
  • Protections: Over-temperature, under-voltage, and short-to-ground
  • Step Frequency: Up to 500 kHz
  • Sleep Mode: Available (via SLEEP pin – LOW to enter sleep mode)

Pinouts:

Front View

Back View

Connection with Arduino:

A4988 Pins

Arduino Pins

Description

VDD

5V

Logic power input

GND

GND

Logic ground

VMOT

External 12V–24V +

Motor power supply

GND

External Power Supply -

Motor power ground

STEP

Pin 3

Step signal

DIR

Pin 4

Direction control

ENABLE

Pin 5 (Optional)

Enable (active LOW) or tie to GND

MS1, MS2, MS3

VCC or GND

Select microstepping mode

RESET

Tie to SLEEP

Keeps the driver active

SLEEP

Tie to RESET

Keeps the driver awake

OUT1A/1B, OUT2A/2B

Stepper Motor

Stepper Motor Connect the stepper motor coils


Microstepping Setup

MS1

MS2

MS3

Microstepping

LOW

LOW

LOW

Full step

HIGH

LOW

LOW

Half step

LOW

HIGH

LOW

1/4 step

HIGH

HIGH

LOW

1/8 step

HIGH

HIGH

HIGH

1/16 step


 

Sample code:

// A4988 connection pins
#define STEP_PIN 3
#define DIR_PIN 4

// Number of steps per revolution (change as needed)
#define STEPS_PER_REV 200  // Typical for NEMA 17 with full steps

void setup() {
  pinMode(STEP_PIN, OUTPUT);
  pinMode(DIR_PIN, OUTPUT);
}

void loop() {
  // Rotate one revolution clockwise
  digitalWrite(DIR_PIN, HIGH);
  for (int i = 0; i < STEPS_PER_REV; i++) {
    digitalWrite(STEP_PIN, HIGH);
    delayMicroseconds(1000);  // Speed control
    digitalWrite(STEP_PIN, LOW);
    delayMicroseconds(1000);
  }
  delay(1000);  // Pause between rotations

  // Rotate one revolution counter-clockwise
  digitalWrite(DIR_PIN, LOW);
  for (int i = 0; i < STEPS_PER_REV; i++) {
    digitalWrite(STEP_PIN, HIGH);
    delayMicroseconds(1000);
    digitalWrite(STEP_PIN, LOW);
    delayMicroseconds(1000);
  }
  delay(1000);
}

$0.86
A4988 Stepper Motor Driver Module
$0.86

Product Information

Shipping & Returns

Description

A4988 Stepper Motor Driver Module

The A4988 Stepper Motor Driver is a popular and compact module used to control bipolar stepper motors, such as the NEMA 17, with high precision and variable microstepping. It is commonly used in 3D printers, CNC machines, and robotics.

Technical Specifications:

  • Input Voltage (VMOT): 8V to 35V DC
  • Logic Voltage (VDD): 3V–5.5V (usually powered from Arduino 5V)
  • Motor Type: Bipolar Stepper Motors
  • Current per Phase: Up to 2A (with sufficient cooling)
  • Microstepping: Full, 1/2, 1/4, 1/8, 1/16 (selectable via MS1–MS3)
  • Step Interface: STEP and DIR pins
  • Protections: Over-temperature, under-voltage, and short-to-ground
  • Step Frequency: Up to 500 kHz
  • Sleep Mode: Available (via SLEEP pin – LOW to enter sleep mode)

Pinouts:

Front View

Back View

Connection with Arduino:

A4988 Pins

Arduino Pins

Description

VDD

5V

Logic power input

GND

GND

Logic ground

VMOT

External 12V–24V +

Motor power supply

GND

External Power Supply -

Motor power ground

STEP

Pin 3

Step signal

DIR

Pin 4

Direction control

ENABLE

Pin 5 (Optional)

Enable (active LOW) or tie to GND

MS1, MS2, MS3

VCC or GND

Select microstepping mode

RESET

Tie to SLEEP

Keeps the driver active

SLEEP

Tie to RESET

Keeps the driver awake

OUT1A/1B, OUT2A/2B

Stepper Motor

Stepper Motor Connect the stepper motor coils


Microstepping Setup

MS1

MS2

MS3

Microstepping

LOW

LOW

LOW

Full step

HIGH

LOW

LOW

Half step

LOW

HIGH

LOW

1/4 step

HIGH

HIGH

LOW

1/8 step

HIGH

HIGH

HIGH

1/16 step


 

Sample code:

// A4988 connection pins
#define STEP_PIN 3
#define DIR_PIN 4

// Number of steps per revolution (change as needed)
#define STEPS_PER_REV 200  // Typical for NEMA 17 with full steps

void setup() {
  pinMode(STEP_PIN, OUTPUT);
  pinMode(DIR_PIN, OUTPUT);
}

void loop() {
  // Rotate one revolution clockwise
  digitalWrite(DIR_PIN, HIGH);
  for (int i = 0; i < STEPS_PER_REV; i++) {
    digitalWrite(STEP_PIN, HIGH);
    delayMicroseconds(1000);  // Speed control
    digitalWrite(STEP_PIN, LOW);
    delayMicroseconds(1000);
  }
  delay(1000);  // Pause between rotations

  // Rotate one revolution counter-clockwise
  digitalWrite(DIR_PIN, LOW);
  for (int i = 0; i < STEPS_PER_REV; i++) {
    digitalWrite(STEP_PIN, HIGH);
    delayMicroseconds(1000);
    digitalWrite(STEP_PIN, LOW);
    delayMicroseconds(1000);
  }
  delay(1000);
}

You may also like

NEW
Thumbnail 1Thumbnail 2

L298N V3 Four DC Motor Driver

$9.73

NEW
Thumbnail 1Thumbnail 2

BTS7960 43A H-Bridge High-Power Stepper Motor Driver Module

$3.78

NEW
Thumbnail 1Thumbnail 2

ULN2003 Driver Module Stepper Motor Driver Board

$0.49

NEW
Thumbnail 1Thumbnail 2

L9110S DC Stepper Motor Driver Board

$0.54

NEW
Thumbnail 1Thumbnail 2

TB6600 Stepper Motor Driver Controller 4A 9~42V TTL 16 Micro-Step CNC 1 Axis

$7.02

NEW
Thumbnail 1Thumbnail 2

TB6560 Stepper Motor Driver Controller

$6.32

NEW
Thumbnail 1Thumbnail 2

TB6600 Stepper Motor Driver Controller Module 8-50V 4.5A

$10.70

NEW
Thumbnail 1Thumbnail 2

DRV8825 Stepper Motor Driver with Aluminum Heat Sink

$1.73

-70%NEW
Thumbnail 1Thumbnail 2

A3967 Stepper Motor Driver Module

$2.11

$0.63

-70%NEW
Thumbnail 1Thumbnail 2

DRV8833 2 Channel DC Stepper Motor Driver Module

$1.09

$0.33

-70%NEW
Thumbnail 1Thumbnail 2

TB6612FNG Dual Motor Driver Module

$4.86

$1.46