STEPPER MECHANICAL CLOCK / ESP32 APPLICATION
Mechanical Clock
A mechanical HH:MM:SS clock with six Hall-referenced stepper motors, driven by a custom PLC-style non-blocking architecture on an ESP32-S3.

About this project
About this project
Six digit wheels, one per HH:MM:SS character, each turned by a NEMA 17 stepper through a TMC2209 and zeroed by its own Hall sensor. An ESP32-S3 runs the whole thing as non-blocking function blocks in the style of IEC-61131-3, with hand-written `Ton`/`Tof` timers instead of `delay()`, so no missed step pulses. A modulo wrapper around AccelStepper always advances through the shortest positive path, and homing approaches the switch at reference speed, backs off, then closes in at a tenth of that. UART diagnostics were abandoned for plain STEP/DIR with MS1/MS2 strapping at 1/64. Status is honest: one wheel of the six is running.
From the README
From the README
- Motor
- NEMA 17 steppers, 200 full steps/rev (1.8°), direct-drive — no gearbox
- Driver
- TMC2209 (STEP/DIR mode, MS1/MS2 microstepping)
- Input
- Hall-effect sensors (one per digit wheel, homing only)
- Display
- 128×64 SSD1306 OLED (I²C)
- Limit
- one of six digit wheels is running
Hardware
Native board: Waveshare ESP32-S3-Pico
Boards: ESP32-S3
ESP32-S3. Verify the exact board revision, wiring and power requirements in the upstream build guide.
Media credit & rights
Upstream project media · rights remain with its owner · Credit: bernhardfoelk
Screenshots from the upstream README. Code and firmware were not executed. License notices are included.
View original source ↗ Copyright & removal · Reviewed
More projects on these boards
Bus 404 Found Cardboard Robot Claudescreen Codex Proxy Rs ESP32 Monitor DFR1154 AI Camera Desktop Buddy
See what an ESP32 project looks like, and whether it runs on your board.
FILTERS
Browse by form factor. Check the exact board, chip and peripherals before installing.
Try a project
Newest listings
Give your project a little spotlight.
Repository links do not imply author endorsement or verified hardware compatibility. Check the upstream safety guidance before powering or flashing a build.