Overview

The 28BYJ-48 is a 5V DC 4-phase 5-wire unipolar geared stepper motor. It is almost universally paired with a ULN2003 Darlington Transistor Array driver breakout board in beginner electronics, Arduino, and Raspberry Pi starter kits.

The motor incorporates an internal 1/64 gear reduction gearbox that produces high torque (>300 gcm>300\text{ g}\cdot\text{cm}) at slow rotational speeds. The ULN2003 driver board accepts 3.3V or 5V logic inputs (IN1IN4) to energize the motor coils and includes 4 status LEDs to visualize stepping sequences.

Quick reference

Motor operating voltage5.0 V DC (nominal)
Coil resistance50 Ω±7%50\text{ }\Omega \pm 7\% per phase
Internal step angle5.625° / 64 = 0.08789° per output shaft step
Gearbox reduction ratio1:64 (exact ratio: 641\frac{64}{1} or 63.6839:163.6839:1)
Steps per full revolution2048 steps (full-step) / 4096 steps (half-step)
Pull-in torque>300 gcm> 300\text{ g}\cdot\text{cm} (at 100 Hz frequency)
Driver ICULN2003A (7-channel Darlington transistor array)
Driver input logic3.3 V to 5.0 V TTL/CMOS Compatible

Terminals & cable pinout

Motor 5-Pin JST Connector (Plugs into ULN2003 board)

PinWire ColorCoil ConnectionDescription
1BlueCoil 1 (Phase A)Driven by ULN2003 OUT1
2PinkCoil 2 (Phase B)Driven by ULN2003 OUT2
3YellowCoil 3 (Phase C)Driven by ULN2003 OUT3
4OrangeCoil 4 (Phase D)Driven by ULN2003 OUT4
5RedCommon Positive (COM)Connects to +5V power supply rail

ULN2003 Driver Board Pins

PinNameTypeDescription
1–4IN1IN4Digital InputLogic inputs from microcontroller (Active-HIGH)
5GNDPowerCommon Ground (0 V)
6VCC / +PowerMotor power supply (+5 V to +12 V DC)
JumperON/OFFPower JumperEnables power to the ULN2003 chip and indicator LEDs

Electrical & mechanical specifications

Electrical Specifications

ParameterSymbolMinTypMaxUnitConditions
Operating VoltageVCCV_{CC}4.55.05.5VDC
Phase CurrentIphaseI_{phase}160240mA2 coils energized simultaneously
Coil ResistanceRphaseR_{phase}46.550.053.5ΩAt 25C25^\circ\text{C}
Insulated ResistanceRinsR_{ins}10500 V DC
Max Pull-in Frequencyfpullf_{pull}500HzNo load
Max No-load Frequencyffreef_{free}900HzNo load

Mechanical Specifications

ParameterValueUnitNotes
Motor Diameter28.0mmCylindrical housing
Output Shaft Diameter5.0mmD-shaft (flatted)
Gear Reduction1:64Internal spur gear train
Noise Level<35< 35dBAt 120 Hz operating frequency
Temperature Rise<40< 40KAt 120 Hz, 5V DC supply

Stepping sequences

4-Step Sequence (Full-Step / High Torque)

StepIN1IN2IN3IN4
1HIGHHIGHLOWLOW
2LOWHIGHHIGHLOW
3LOWLOWHIGHHIGH
4HIGHLOWLOWHIGH

8-Step Sequence (Half-Step / Smooth Motion — 4096 steps/rev)

StepIN1IN2IN3IN4
1HIGHLOWLOWLOW
2HIGHHIGHLOWLOW
3LOWHIGHLOWLOW
4LOWHIGHHIGHLOW
5LOWLOWHIGHLOW
6LOWLOWHIGHHIGH
7LOWLOWLOWHIGH
8HIGHLOWLOWHIGH

Wiring

ULN2003 Driver BoardMicrocontroller / Power SupplyNotes
IN1Digital Pin 8 (GPIO output)Phase A control
IN2Digital Pin 9 (GPIO output)Phase B control
IN3Digital Pin 10 (GPIO output)Phase C control
IN4Digital Pin 11 (GPIO output)Phase D control
GNDCommon Ground (GND)Connect to MCU GND and Power Supply GND
VCC / +External +5V Power SupplyPower supply (do not use Arduino 5V pin)
Warning

Inductive Spike & Thermal Warning:

  • ULN2003 inputs are active HIGH: driving an input HIGH turns ON the internal Darlington transistor, pulling the corresponding motor coil pin to Ground.
  • De-energize all coils (IN1IN4 = LOW) when the motor is stopped to prevent continuous current draw (240 mA240\text{ mA}) and overheating.

Common mistakes

  • Powering motor directly from microcontroller 5V rail: Energizing 2 coils draws up to 240 mA, which causes supply voltage droop and resets the microcontroller.
  • Leaving coils energized when stopped: Unlike bipolar stepper drivers with automatic current reduction, keeping inputs HIGH when idle wastes power and heats up the motor.
  • Stepping too fast at startup: Attempting to start stepping at frequencies above 500 Hz without a frequency acceleration ramp will cause the motor to hum and stall without rotating.

Notes

  • Exact gear ratio is 31254963.6839:1\frac{3125}{49} \approx 63.6839:1. For precise 360360^\circ rotation without cumulative positional drift over long periods, use 4075.77284075.7728 steps per revolution in half-step mode.

Assets & downloads