The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Stepper motors make it possible to build an analog-style clock without a conventional circular face. Two independently controlled motors can move hour and minute indicators along curved tracks, straight scales, rotating rings, or custom kinetic mechanisms. The original Make: design uses two geared 28BYJ-48 motors and arc-shaped dials; for a reliable modern build, add a proper time source, separate motor power, calibration, and a startup recovery method.
What makes this clock analog-style?
“Analog-style” describes the way the time is presented, not the shape of the face. The indicators may travel across two curved dials, move along linear scales, rotate concentric rings, or drive a conventional clock face. The motors provide rotation; the mechanical design translates that rotation into readable movement.
As an Amazon Associate I earn from qualifying purchases.
The Make: reference project uses separate arc-shaped minute and hour dials, allowing the clock to remain intuitive while avoiding the usual circular layout. It was published in 2017 and updated in 2023, so its historical project estimate—8–16 hours, moderate difficulty, and $0–$50—should not be treated as a current cost or schedule. See the original Make: project.
Free tools Windows power users keep installed
One-click scans. No signup required.
Why use stepper motors?
A stepper motor moves in commanded increments. That makes it useful for a clock because the controller can calculate a target position, move the hour and minute mechanisms independently, and reverse either motor when correcting or setting the display.
#1 Best Overall
- 3D printer motor with high torque
- 59Ncm(83.6oz.in) holding torque
- NEMA 17 bipolar 1.65"x1.65"x1.89" 4-wire
- Build with 39.37"( 1m) Cable and 0.1" pitch Connector
- Rated current 2.0A & resistance 1.4ohms
- Repeatable commanded movement at low speed
- Independent control of the hour and minute indicators
- Bidirectional operation for calibration and correction
- Flexible mechanical placement away from a traditional clock center
- Simple control through an Arduino-compatible driver arrangement
There is an important limitation: a stepper is not an absolute-position sensor. If it skips steps, loses power, or is moved by hand, the software may still believe the hand is correctly positioned. Final accuracy depends on the time reference, motor calibration, mechanical friction, backlash, power quality, and whether the mechanism can re-home itself.
The original motor choice: 28BYJ-48
The reference design uses two 28BYJ-48 geared stepper motors—one for each hand. The project describes 32 steps per motor revolution and approximately 512 or 513 geared output steps per revolution, depending on the motor variant and source. That discrepancy is a reason to calibrate the actual motor rather than hard-code a universal value.
Common 5-volt versions are inexpensive, compact, and usually supplied with a ULN2003 driver board. A retired SparkFun specification reference lists four phases, a 1:64 speed variation ratio, and a 5.625°/64° stride-angle specification. Treat those figures as a reference for a particular product, not a guarantee for every motor sold under the same name.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Clear out junk files and repair common Windows errors3Fix the driver behind crashes, sound loss and screen glitchesThese motors suit lightweight hands and small displays. They are a poor choice for long, heavy wall-clock hands because their plastic gearboxes have backlash and limited mechanical strength.
Choose the motor and driver architecture
| Architecture | Best for | Main trade-off |
|---|---|---|
| 28BYJ-48 + ULN2003 | Small, lightweight clocks and a faithful recreation | Simple and inexpensive, but subject to gearbox backlash and variable step counts |
| Bipolar stepper + A4988 or DRV8825 | Larger mechanisms, heavier hands, and smoother controlled motion | More torque and flexibility, but requires current adjustment and more careful power design |
| Integrated geared module | Compact installations with simplified wiring | Verify the module’s motor wiring, voltage, driver configuration, and logic compatibility |
An A4988 carrier provides adjustable current limiting, protection features, and selectable microstepping down to 1/16-step for compatible bipolar motors. Microstepping can make movement smoother, but it does not guarantee absolute position or prevent missed steps.
Controller and time source
A basic Arduino-compatible board is sufficient for two small unipolar motors when time comes from a separate module. The Arduino Stepper library supports unipolar and bipolar motors with suitable driver hardware. The Arduino controls the driver; it must not power motor coils directly from GPIO pins.
Rank #2
- BUILD FIVE LOW-SPEED MOTION PROJECTS: Create clocks, gauges, rotating displays, feeder gates, vents and small robot mechanisms; five matched motor-and-driver sets support classroom builds, maker prototypes and spare replacements
- 5 V UNIPOLAR GEARED STEPPER MOTORS: Each 28BYJ-48 uses a 5-wire, 4-phase design with nominal 1:64 reduction for controlled low-speed movement in light-load positioning projects
- ULN2003 DRIVER BOARDS SIMPLIFY CONTROL: Connect control signals to IN1-IN4, power the motor through the driver board and use four onboard LEDs to view the active coil sequence during setup and testing
- SET UP FOR SMOOTHER ROTATION: Use a regulated 5 V supply with sufficient current, connect controller and motor-supply grounds together, verify the motor plug and IN1-IN4 sequence, and reduce speed if the shaft buzzes or vibrates
- FIVE COMPLETE MOTOR-DRIVER SETS: Includes 5 × 28BYJ-48 stepper motors, 5 × ULN2003 driver boards and 10 × female-to-male jumper wires for multiple prototypes and replacement builds
For a new build, use one of these timekeeping approaches:
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
- Dedicated RTC: Best for an offline clock. It retains time during power interruptions, although its battery, drift, and daylight-saving-time handling must be considered.
- ESP32 and network time: Useful when Wi-Fi is reliable and automatic setting, a web interface, or remote configuration is desirable. See the Arduino-ESP32 documentation.
- External pulse source: The original project used timing pulses from a ticking clock. This is an interesting design choice, but it adds signal-conditioning, wiring, and troubleshooting requirements.
An Arduino Nano ESP32 is a compact connected option, but its GPIO is 3.3 V. Confirm that the selected driver accepts that logic level. A Wi-Fi controller also introduces provisioning, network outage, and boot-time complexity.
Power and wiring
Use a regulated external supply sized for both motors. Do not assume that a USB connection or the microcontroller’s regulator can safely supply motor current.
- Connect the motor supply to the driver boards, not directly to controller GPIO.
- Connect controller and driver grounds correctly.
- Check the motor voltage, current, winding arrangement, and connector order.
- Use suitable bulk and ceramic decoupling near the drivers.
- Keep motor wiring away from sensitive signal wiring where practical.
- For A4988-class drivers, set the current limit before normal operation and provide appropriate supply decoupling.
For a 28BYJ-48, the usual ULN2003 board is a four-input transistor-array board. It is not interchangeable with a STEP/DIR driver without confirming the motor’s wiring and the driver’s electrical arrangement.
Design the mechanism before writing the code
Keep the hands light
Use thin card, acrylic, plywood, or lightweight printed plastic. An unbalanced hand increases torque demand and can cause vibration, missed steps, and gearbox wear.
Prevent binding
Align the motor shaft, pointer hub, bearing, and guide surface. Use spacers, bushings, or small bearings so the hand does not drag against the dial. A rigid mounting plate helps keep the shaft square.
Rank #3
- Please attention that the package only contain ONE Nema 17 stepper motor.
- Nema 17 Stepper Motor with 42Ncm holding troque
- Bipolar stepper motor ,dimension 42*42*38mm, 2 phase, 4 leads
- Step angle 1.8deg, 200 step/revolution
- Rated Current/phase 1.5A & Phase Resistance 2.3ohms
Account for backlash
Geared motors may move slightly before the output shaft responds when direction changes. Avoid unnecessary reversals and approach calibration targets from a consistent direction.
Define travel limits
Measure the usable arc or linear range and prevent the motor from driving beyond its mechanical endpoints. A software limit is helpful, but a physical stop or home sensor provides additional protection.
Add a reference position
A home mark, limit switch, optical interrupter, or Hall-effect sensor and magnet gives the controller a known starting position. Saving the last position in nonvolatile memory is useful, but it cannot detect a missed step that occurred while the clock was operating.
Convert time into hand positions
Separate the timekeeping, position calculation, motion, and motor-control layers. For a 60-minute display with a usable travel of Tm steps:
minute_fraction = minutes / 60.0
minute_target = minute_fraction * T_m
If the minute indicator travels through an angle, the equivalent calculation is:
minute_angle = minutes * usable_angle / 60.0
For a natural analog presentation, include the minute fraction in the hour position:
Rank #4
- 3 pack, Nema 17 Stepper Motor with 42Ncm holding troque
- Bipolar stepper motor ,dimension 42*42*38mm, 2 phase, 4 leads
- Step angle 1.8deg, 200 step/revolution
- Rated Current/phase 1.5A & Phase Resistance 2.3ohms
- Low noise high speed 3d printer stepper motor, build with 1m Cable and Connector
hour_fraction = ((hours % 12) + minutes / 60.0) / 12.0
hour_target = hour_fraction * T_h
A simplified clock may move the hour indicator only once per hour, but that creates a stepped display rather than a continuously tracking analog one. The correct formula depends on the geometry: a curved rail, straight scale, linkage, rotating ring, and conventional dial will each require a different mapping between motor steps and visible position.
Choose a movement style
- One move per minute: Quiet and simple, with low motor activity, but visibly stepped.
- Smooth interpolation: More kinetic and polished, but it increases movement, vibration, and software complexity.
- Fast correction: Useful at startup or after changing the time, provided travel limits and acceleration are controlled.
For a small 28BYJ-48, basic control is often sufficient. Larger mechanisms benefit from acceleration and deceleration. The FastAccelStepper documentation covers acceleration-oriented control and ESP32 targets.
Calibration procedure
- Mark the mechanical zero for each indicator.
- Run each motor slowly through one complete output revolution.
- Measure the actual travel and determine the effective steps for the usable display range.
- Record the correct direction and coil sequence for each motor.
- Set the current time and move both indicators to their calculated targets.
- Check several known positions, including the endpoints and midpoint.
- Run the clock for at least 24 hours against a reliable reference.
- Repeat calibration after changing hand weight, gearing, or the dial geometry.
Use absolute target positions derived from the current time rather than endlessly accumulating relative steps. Periodically comparing the displayed position with the calculated target makes recovery from small errors easier.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Troubleshooting
The motor vibrates but does not rotate
Check the coil order, connector, motor-driver pairing, phase continuity, and code sequence. Test one motor at a slow speed with a minimal one-revolution example before connecting the complete mechanism.
The controller resets when movement begins
The motors may be pulling current through USB or the board regulator, or the supply may be sagging. Use a separate regulated motor supply, share ground correctly, improve decoupling, and keep noisy motor wiring away from controller signals.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →The clock loses time
Separate time-reference drift from motion errors. Compare the clock with a known reference for 24 hours, verify the assumed steps per revolution, inspect for binding, and check whether steps are being missed. An RTC or network correction can fix time-reference drift, but it cannot repair a hand that has physically lost position.
Best Value
- The latest premium gm instrument cluster stepper motors ,perfectly replacement for the XC5-168, X15-168 ,X25-168 and X27-168 that are in your gauge cluster for 2003 2004 2005 2006 GM GMC Chevy Silverado Trailblazer
- Stepper motor repair kit include:7 X27 168 motors+36 backlight led bulbs+soldering iron+solder sucker+remove tool+flux rosin core solder
- Used for the repair of the speedometer,tachometer,oil pressure gauge,transmission temperature gauge, battery voltage gauge, water temperature gauge or fuel gauge;
- Fix common problems caused by stepper motor of your vehicles:gauges dead,chatter,sticking,false/jumpy/inaccurate readings,pegged out to the left or right of the dial, ratchet up or down,sticky needle movement,erratic gauge movement etc
- Our factory is auto accessories expert, excellent customer service with 12-month warranty
The hands are wrong after reboot
The system lacks an absolute reference. Add a home sensor, align the hands manually at startup, or move safely to a known mechanical stop. Storing the previous position alone is not sufficient if the motor skipped steps before shutdown.
The hand overshoots or chatters
Reduce speed, lighten the hand, add acceleration control, improve shaft alignment, and approach targets consistently from one direction. Excessive backlash and resonance are mechanical problems that software alone cannot eliminate.
Three practical build paths
Faithful small clock
Use two 28BYJ-48 motors, two ULN2003 boards, an Arduino-compatible controller, a regulated 5 V supply, lightweight hands, and an RTC. This is the most accessible route and stays close to the original concept, but it accepts limited torque and open-loop positioning unless sensors are added.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallModern connected clock
Use an ESP32-based controller, compatible drivers, an external motor supply, Wi-Fi time synchronization, and preferably home sensors. This adds automatic time setting and web configuration, but also adds network and 3.3 V logic considerations.
Large kinetic wall clock
Use larger bipolar motors, A4988- or DRV8825-class drivers, bearings, rigid supports, current limiting, acceleration control, and a home sensor for each axis. Do not simply scale up the 28BYJ-48 design; larger hands change the torque, vibration, power, and structural requirements.
When a stepper clock is the wrong choice
If the goal is simply a quiet, low-power, unattended timepiece, a conventional quartz movement is cheaper and simpler. A stepper-driven clock earns its complexity through its unusual display, programmable behavior, and kinetic character—not because it is automatically more accurate.
Once the display geometry, hand weight, power system, time source, and recovery method are designed together, stepper motors become a practical foundation for clocks built around arcs, lines, rings, and other unconventional architectural forms.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

