Basic design objective
The design is to use a single stepper motor that drives the minute hand. The hour hand is stationary, but can be moved by the minute hand via a small protrusion when they are above each other. The idea is to rotate the minute hand (clockwise) until it has positioned the hour hand, and then move (anticlockwise) back to its correct position. The minute hand will then move normally for a few minutes, and then it will nudge the hour hand forward by the same manuever.
The hour hand will be positioned exactly like a "normal" hour hand, ie. it will be slightly before, on, and after the correct hour. At half past it will be shifted the large amount to match to the next digit (which will not be adjacent)
The minute hand does the same; it normally would be close to the hourdigit as on a normal clock., i.e. as it hovers around the "3"-digit it means 13 to 17 minutes past the hour (where the "3" is in some other position)
Start and reset
Before applying power one can manually move the hands to 12 o'clock (wherever that number is placed). Future version wil have some small optical sensor to sense that position so restart is fully automtic (assuming the chip has kept time).
To set the chip time a single button is used to advance the hands until they point correct.
A few calculations
A stepper with 200 steps, 1.8°/step, 0.3 minute/step has sufficient resolution so no gearing or halfstep is needed. It can be assumed that it's permamnet magnets will hold position even with the motor turned off. Thus we only need a short current puls to advance it by one step.
3 short pulses/minute ... might tempt to use a battery, but there are 100's of steps needed to move the hour hand every 5 minute. Quick calculation: need 3*60 for minute advance + 200*(60/5) for nudging hour hand = 2400 steps. A step needs ...ehrm... 200mA for 0.2second? = 40mAmpSecond = 0.11 mAh/step ? That means260mAh/per hour = 6000mAh/24hour plus what the microcontroller needs. Mains it must be. (comments to the calculation welcome)