

The Keyestudio 5V Stepper Motor Driver Module is a compact and efficient solution for controlling stepper motors with precision. Designed to operate at 5V, this module enables smooth and accurate movement, making it an excellent choice for robotics, automation, and CNC projects. Its compatibility with various microcontrollers, including Arduino, ensures ease of integration into a wide range of applications.








Below are the key technical details of the Keyestudio 5V Stepper Motor Driver Module:
| Parameter | Specification |
|---|---|
| Operating Voltage | 5V DC |
| Current Output | Up to 1.5A per phase (motor-dependent) |
| Step Resolution | Full-step, half-step |
| Control Interface | Digital input (IN1, IN2, IN3, IN4) |
| Dimensions | 42mm x 24mm x 12mm |
| Compatible Motors | 4-phase, 5-wire stepper motors |
The module features a simple pinout for easy connection to microcontrollers and stepper motors:
| Pin Name | Type | Description |
|---|---|---|
| IN1 | Digital Input | Controls the first coil of the stepper motor |
| IN2 | Digital Input | Controls the second coil of the stepper motor |
| IN3 | Digital Input | Controls the third coil of the stepper motor |
| IN4 | Digital Input | Controls the fourth coil of the stepper motor |
| VCC | Power Input | Connect to 5V power supply |
| GND | Ground | Connect to the ground of the power supply |
| Motor Pins | Output | Connect to the stepper motor (5-wire configuration) |
Below is an example code to control a stepper motor using the Keyestudio 5V Stepper Motor Driver Module:
// Define the pins connected to the stepper motor driver module
#define IN1 8 // Connect to IN1 on the module
#define IN2 9 // Connect to IN2 on the module
#define IN3 10 // Connect to IN3 on the module
#define IN4 11 // Connect to IN4 on the module
// Define the step sequence for the stepper motor
int stepSequence[4][4] = {
{1, 0, 0, 1}, // Step 1
{1, 0, 1, 0}, // Step 2
{0, 1, 1, 0}, // Step 3
{0, 1, 0, 1} // Step 4
};
void setup() {
// Set the IN pins as outputs
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
}
void loop() {
// Rotate the motor in one direction
for (int i = 0; i < 4; i++) {
setStep(stepSequence[i]);
delay(10); // Adjust delay for speed control
}
}
// Function to set the step sequence
void setStep(int step[4]) {
digitalWrite(IN1, step[0]);
digitalWrite(IN2, step[1]);
digitalWrite(IN3, step[2]);
digitalWrite(IN4, step[3]);
}
delay() value in the loop() function to control the motor's speed.Motor Not Moving:
Motor Vibrates but Does Not Rotate:
Overheating Module:
Erratic Movement:
Q1: Can I use this module with a 3.3V microcontroller?
A1: Yes, but you must ensure the logic level of the IN pins is compatible with 3.3V signals.
Q2: What type of stepper motors are compatible?
A2: The module is designed for 4-phase, 5-wire stepper motors. Ensure the motor's voltage and current ratings match the module's specifications.
Q3: How do I reverse the motor's direction?
A3: Reverse the order of the step sequence in your code to change the motor's rotation direction.
Q4: Can I control multiple motors with one Arduino?
A4: Yes, but you will need a separate driver module for each motor and sufficient digital pins on the Arduino.
By following this documentation, you can effectively use the Keyestudio 5V Stepper Motor Driver Module in your projects.