Home - Blog

28BYJ-48: How To Use This Stepper Motor With Arduino

A stepper motor divides a full rotation into a number of equal steps to achieve precise position control. 

Today’s topic of discussion is the 28BYJ-48 unipolar eight-beat four-phase permanent magnet-driven stepper motor. Suppose you’re working on a project and need an easy-to-use motor; the 28BYJ-48 suits you. Also, it’s one of the cheapest stepper motors that can pair with an Arduino

Read on to understand the working of this stepper motor better.

What Is a 28BYJ-48?

A 28BYJ-48 Stepper Motor

Fig 1: A 28BYJ-48 Stepper Motor

28BYJ-48 is a 5V unipolar stepper motor with five terminals. In this motor, the pulse frequency determines its speed to get accurate speed regulation. Furthermore, the pulse sequence determines its spinning direction, whereas the number of pulses controls its turning distance.

The pulse frequency, sequence, and number work in tandem for accurate positioning. 

28BYJ-48 Stepper Motor Pinout Configuration

28BYJ-48 Stepper Motor Pinout Configuration

Fig 2: 28BYJ-48 Stepper Motor Pinout Configuration

It is a 5-pin motor. The pins are as follows;

28BYJ-48 Features

Fig 3: CNC Machining Milling Metal Drilling and Cutting Processing

Listed below are the outstanding features and specifications of the 28BYJ-48 

  • First, It has a rated voltage of 5V DC
  • Secondly, it’s a 4-phase stepper motor with a 100 Hz frequency
  • Also, it has a 5.625°/64 stride angle
  • Besides, it has a friction torque of 600-1200 gf. cm, and an in traction torque of >34.3mN.m(120Hz)
  • It has an insulated electricity power value of 600VAC/1mA/1s
  • Additionally, it has a unipolar 5 lead coil and a DC resistance value of 50Ω±7%(25℃)
  • Finally, it has 300 gf. cm pull-in torque and a self-positioning torque of >34.3mN.m

How To Connect 28BYJ-48 Stepper Motor and ULN2003 Driver to Arduino

A 28BYJ-48 converts electrical signals into angular displacements. When its driver receives an electrical signal, it drives the stepper motor through a fixed angular displacement and particular direction. 

To connect, here’s a list of materials you’ll need;

Here’s how you’ll make your connection:

  • Collect the three materials you’ll need for your setup and align the stepper motor pins to the ULN2003 driver terminals. 
  • Insert the pins to the terminals while being keen to insert the correct pins to the respective terminals.
  • Next, insert the four DuPont wires into IN1 to IN4. On the other end, insert the wire to IN1 to Arduino Uno’s D8. Also, insert IN2 to Arduino Uno’s D9 and IN3 to Arduino Uno’s D10. 
  • Additionally, connect the wire to IN3 to Arduino Uno’s D11.  
  • Finally, insert two DuPont wires into the electricity power 5V port and the Arduino common ground pin, GND. You’ll then connect them respectively to the positive and negative poles of the ULN2003 motor driver.


Generally, the 28BYJ-48 is a popular stepper motor due to its accuracy, decent torque, and low cost. It is in DVD players, security cameras, CNC milling, and precise control machines.

And since the motor consumes a lot of power, it’s best to partner it with a ULN2003 IC.

Finally, for more information on this stepper motor, please contact us

Avatar photo
Emma Lu
Our professional engineering support saves our customers a lot of trouble and loss. >>>>>> After you place the order, our engineer will conduct technical reviews to make sure the parts can be mounted well/correctly on the boards. We will check if the component packages match well with the Gerber footprints, if the part numbers you provided match well with the descriptions, and if the polarity is clearly marked. >>>>> When your design is ready, please send your Gerber and BOM so we can quote and start!