

The Stepperonline DM302T is a digital stepper motor driver designed for controlling stepper motors with high precision and efficiency. It supports adjustable current settings and microstepping capabilities, enabling smooth and reliable motor operation. This driver is ideal for applications requiring precise motion control, such as CNC machines, 3D printers, robotics, and automated systems.








The DM302T is a versatile and robust stepper motor driver with the following key specifications:
| Parameter | Value |
|---|---|
| Input Voltage Range | 20V to 30V DC |
| Output Current Range | 1.0A to 3.0A (adjustable via DIP switches) |
| Microstepping Resolution | Up to 1/256 steps |
| Control Signal Input | Pulse (PUL), Direction (DIR), and Enable (ENA) |
| Pulse Frequency Range | 0 to 200 kHz |
| Motor Compatibility | 2-phase and 4-phase stepper motors |
| Operating Temperature | -10°C to +45°C |
| Dimensions | 118 mm x 75 mm x 34 mm |
| Weight | 200 g |
The DM302T features two main connectors: one for motor and power connections, and another for control signals. Below is the pin configuration:
| Pin | Name | Description |
|---|---|---|
| 1 | A+ | Positive terminal for motor coil A |
| 2 | A- | Negative terminal for motor coil A |
| 3 | B+ | Positive terminal for motor coil B |
| 4 | B- | Negative terminal for motor coil B |
| 5 | V+ | Positive power supply input (20V-30V DC) |
| 6 | GND | Ground for power supply |
| Pin | Name | Description |
|---|---|---|
| 1 | PUL+ | Positive pulse signal input |
| 2 | PUL- | Negative pulse signal input |
| 3 | DIR+ | Positive direction signal input |
| 4 | DIR- | Negative direction signal input |
| 5 | ENA+ | Positive enable signal input |
| 6 | ENA- | Negative enable signal input |
Below is an example code to control the DM302T using an Arduino UNO:
// Define control pins
const int pulsePin = 2; // Pin connected to PUL+ (PUL- to GND)
const int dirPin = 3; // Pin connected to DIR+ (DIR- to GND)
const int enablePin = 4; // Pin connected to ENA+ (ENA- to GND)
void setup() {
// Set pin modes
pinMode(pulsePin, OUTPUT);
pinMode(dirPin, OUTPUT);
pinMode(enablePin, OUTPUT);
// Enable the driver
digitalWrite(enablePin, LOW); // LOW to enable, HIGH to disable
}
void loop() {
// Set direction
digitalWrite(dirPin, HIGH); // HIGH for one direction, LOW for the other
// Generate pulses to move the motor
for (int i = 0; i < 200; i++) { // 200 steps for one revolution (example)
digitalWrite(pulsePin, HIGH);
delayMicroseconds(500); // Adjust for speed (500 µs = 1 kHz pulse frequency)
digitalWrite(pulsePin, LOW);
delayMicroseconds(500);
}
delay(1000); // Wait 1 second before changing direction
// Reverse direction
digitalWrite(dirPin, LOW);
for (int i = 0; i < 200; i++) {
digitalWrite(pulsePin, HIGH);
delayMicroseconds(500);
digitalWrite(pulsePin, LOW);
delayMicroseconds(500);
}
delay(1000); // Wait 1 second before repeating
}
Motor Not Moving
Overheating
Erratic Motor Movement
Driver Not Enabling
Q: Can the DM302T drive a 3-phase stepper motor?
A: No, the DM302T is designed for 2-phase and 4-phase stepper motors only.
Q: What is the maximum pulse frequency supported?
A: The DM302T supports pulse frequencies up to 200 kHz.
Q: Can I use the DM302T with a 12V power supply?
A: No, the minimum input voltage is 20V. Using a lower voltage may damage the driver or result in improper operation.
Q: How do I set the microstepping resolution?
A: Use the DIP switches on the driver. Refer to the DM302T datasheet for detailed settings.
This concludes the documentation for the Stepperonline DM302T Stepper Drive. For further assistance, consult the manufacturer's datasheet or support resources.