3D printed electromechanical analog clock
This 3D printed electromechanical clock is built around a 28BYJ-48 stepper motor driven by an accurate step sequencer. The step sequence for the motor is generated by an AVR ATtiny85, timed by a crystal clock generator. The AVR code is located here https://github.com/eyalabraham/analog-clock. Timer divisor adjustments may be necessary in order to adjust clock accuracy.
All gears, face plates, and clock hands are 3D printer with blue PLA. The clock hands are painted with DecoArt multi-surface paint.
CAD files can be found on GradCAD https://grabcad.com/library/electromechanical-clock-1
Step 1: 3D printed parts
Step 2: back plate with motor pinion and seconds axis
Step 3: first minutes gear reducer
Step 4: front plate preparation
Step 5: front plate with hour gear and axis, and second minutes gear
Step 6: add minutes axis
Step 7: combine front and back plate while adding third minutes gear
Step 8: print clock hands and paint, or print in different color
Step 9: build and attach electronics
Step 10: attach clock hands (with a drop of Super Glue)
Schematics for the driver electronics included here show the ATtiny85 clocked by an accurate crystal oscillator at 9.8304Mhz. The 74139 and the NAND gates on the ATtiny generate the stepper motor sequence while using only two AVR output pins, leaving enough inputs for two clock adjustment push-buttons.
ATtiny code and documentation can be found on Git: https://github.com/eyalabraham/analog-clock