

The BH Smart Stepping Motor (Manufacturer Part ID: 212) by BHolanath is a precision motor designed to move in discrete steps, enabling accurate control of position and speed. This motor is ideal for applications requiring precise movement and repeatability, such as robotics, CNC machines, and 3D printers. Its ability to maintain position without feedback makes it a reliable choice for a wide range of automation and motion control systems.








The following table outlines the key technical details of the BH Smart Stepping Motor:
| Parameter | Value |
|---|---|
| Manufacturer | BHolanath |
| Part ID | 212 |
| Step Angle | 1.8° per step |
| Operating Voltage | 12V to 24V |
| Rated Current | 1.5A per phase |
| Holding Torque | 0.5 Nm |
| Number of Phases | 2 |
| Resistance per Phase | 2.5Ω |
| Inductance per Phase | 3.2 mH |
| Shaft Diameter | 5 mm |
| Dimensions | 42 mm x 42 mm x 48 mm |
| Weight | 350 g |
The BH Smart Stepping Motor has four wires for its bipolar configuration. The pinout is as follows:
| Wire Color | Function | Description |
|---|---|---|
| Red | Phase A+ | Positive terminal of Phase A |
| Blue | Phase A- | Negative terminal of Phase A |
| Green | Phase B+ | Positive terminal of Phase B |
| Black | Phase B- | Negative terminal of Phase B |
Below is an example code to control the BH Smart Stepping Motor using an A4988 driver and an Arduino UNO:
// Define pins for step and direction
const int stepPin = 3; // Pin connected to STEP on the driver
const int dirPin = 4; // Pin connected to DIR on the driver
void setup() {
// Set the step and direction pins as outputs
pinMode(stepPin, OUTPUT);
pinMode(dirPin, OUTPUT);
// Set initial direction
digitalWrite(dirPin, HIGH); // HIGH for clockwise, LOW for counterclockwise
}
void loop() {
// Rotate the motor 200 steps (1 full revolution for 1.8° step angle)
for (int i = 0; i < 200; i++) {
digitalWrite(stepPin, HIGH); // Generate a step pulse
delayMicroseconds(1000); // Wait 1 ms (adjust for speed control)
digitalWrite(stepPin, LOW); // End the step pulse
delayMicroseconds(1000); // Wait 1 ms
}
// Change direction
digitalWrite(dirPin, !digitalRead(dirPin)); // Toggle direction
delay(1000); // Wait 1 second before the next rotation
}
delayMicroseconds() values to control the motor speed.Motor Not Moving:
Motor Vibrates but Does Not Rotate:
Overheating:
Skipping Steps:
Noisy Operation:
Q: Can I use this motor with a 5V power supply?
A: No, the motor requires a minimum of 12V for proper operation.
Q: What is the maximum speed of the motor?
A: The maximum speed depends on the driver and load but is typically around 1000 RPM.
Q: Can I use this motor in a unipolar configuration?
A: No, this is a bipolar stepper motor and is not compatible with unipolar configurations.
Q: How do I calculate the number of steps for a specific angle?
A: Use the formula: Steps = (Angle / Step Angle). For example, for 90°, Steps = 90 / 1.8 = 50.
By following this documentation, users can effectively integrate the BH Smart Stepping Motor into their projects for precise and reliable motion control.