Free 3D model

Split-Flap Clock

A desk clock that shows the time on falling flaps, like the departure boards in old stations. Two drums of flaps, 00 to 23 for the hours and 00 to 59 for the minutes, each turned by its own small stepper motor. The flaps over the top of a drum lean forward on a lip behind the window; at every new minute the motor turns the drum 6°, the front flap slips off the lip and falls with a soft clack, and the next number appears. An ESP32 sets the clock from the internet, so it is always right and changes to summer and winter time by itself. A magnet in each drum and a hall sensor give the drums their zero position when it starts.

  • 28printed parts
  • 13 × 20 × 15 cmassembled (L × W × H)
  • ≈ 0.8 kgfilament in total
  • 97 mmtallest print: a housing half on its end wall (129 × 151 mm); the flap plates need 214 × 146 mm
Download all files ZIP · 2.6 MB

Free for personal use under CC BY-NC 4.0: print it, remix it and share it with credit to Shapekit. Please don't sell the files or the prints.

Take it apart in 3D · Parts · How to build it

In 3D

Turn it, take it apart

Every part as you print it. Pick colours to see what your filament will look like.

The 3D model (2.1 MB) loads when you get here.

Preview colours

Housing
Front panel and middle wall
Flaps
Digits
Drums

Drag to rotate · scroll or pinch to zoom

In the download

28 parts, ready to print

Every STL is already placed the right way up. Download them all at once, or one by one.

Housing, left half

The shell round the hour drum, with the end wall that carries the hour motor on two posts, the ESP32 and a driver board, and a slot at the back for the USB lead. The front panel slides into the grooves at the top and bottom of the opening.

Size
151 × 129 × 97 mm
Print
Standing on its end wall, as saved. No supports.
Filament
≈ 195 g
STL 0.1 MB: Housing, left half

Housing, right half

The same for the minute drum: the minute motor and the second driver board sit on its end wall.

Size
151 × 129 × 97 mm
Print
Standing on its end wall, as saved. No supports.
Filament
≈ 195 g
STL 0.1 MB: Housing, right half

Front panel, left

The window for the hours. The lip on its back, just above the window, is what holds the flaps: the front flap leans on it until the drum turns far enough to let it go.

Size
125 × 97 × 14 mm
Print
Front face on the bed, lip up.
Filament
≈ 30 g
STL 8 KB: Front panel, left

Front panel, right

The window for the minutes, with its lip.

Size
125 × 97 × 14 mm
Print
Front face on the bed, lip up.
Filament
≈ 30 g
STL 8 KB: Front panel, right

Middle wall

Between the two halves: it holds the axle the drums turn on, and on each face a pocket for a hall sensor with a groove for its legs. The notch at the bottom at the back lets the wires through.

Size
151 × 129 × 4 mm
Print
Flat.
Filament
≈ 61 g
STL 61 KB: Middle wall

Axle

An 8 mm pin pressed through the middle wall. Both drums turn on its ends.

Size
18 × 8 × 8 mm
Print
Standing on one end.
Filament
≈ 1 g
STL 38 KB: Axle

Hour drum, motor spool

One disc with 24 holes for the flap pins and the hub tube; the motor shaft goes into the flat-sided hole in the middle. The notch in the rim marks the hole of flap 00.

Size
70 × 67 × 67 mm
Print
Disc on the bed, tube up.
Filament
≈ 23 g
STL 0.2 MB: Hour drum, motor spool

Hour drum, centre spool

The other disc of the hour drum. It fits on the end of the hub tube one way only, held by two M3 × 10 screws, and turns on the axle. The magnet goes in the pocket in its outer face.

Size
67 × 67 × 7 mm
Print
Outer face on the bed.
Filament
≈ 10 g
STL 0.2 MB: Hour drum, centre spool

Minute drum, centre spool

The other disc of the minute drum, with the magnet pocket.

Size
67 × 67 × 7 mm
Print
Outer face on the bed.
Filament
≈ 10 g
STL 0.4 MB: Minute drum, centre spool

Minute flaps 00–09

The minute flaps 00–09, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
214 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 21 g
STL 0.6 MB: Minute flaps 00–09

Minute digits 00–09

The digits for the minute flaps 00–09. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
202 × 139 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 5 g
STL 0.5 MB: Minute digits 00–09

Minute flaps 10–19

The minute flaps 10–19, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
214 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 22 g
STL 0.6 MB: Minute flaps 10–19

Minute digits 10–19

The digits for the minute flaps 10–19. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
202 × 139 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 4 g
STL 0.5 MB: Minute digits 10–19

Minute flaps 20–29

The minute flaps 20–29, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
214 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 21 g
STL 0.8 MB: Minute flaps 20–29

Minute digits 20–29

The digits for the minute flaps 20–29. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
202 × 139 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 5 g
STL 0.7 MB: Minute digits 20–29

Minute flaps 30–39

The minute flaps 30–39, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
214 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 21 g
STL 0.8 MB: Minute flaps 30–39

Minute digits 30–39

The digits for the minute flaps 30–39. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
202 × 141 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 5 g
STL 0.7 MB: Minute digits 30–39

Minute flaps 40–49

The minute flaps 40–49, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
214 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 22 g
STL 0.7 MB: Minute flaps 40–49

Minute digits 40–49

The digits for the minute flaps 40–49. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
202 × 141 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 5 g
STL 0.6 MB: Minute digits 40–49

Minute flaps 50–59

The minute flaps 50–59, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
214 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 21 g
STL 0.8 MB: Minute flaps 50–59

Minute digits 50–59

The digits for the minute flaps 50–59. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
202 × 139 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 5 g
STL 0.7 MB: Minute digits 50–59

Hour flaps 00–07

The hour flaps 00–07, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
171 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 17 g
STL 0.5 MB: Hour flaps 00–07

Hour digits 00–07

The digits for the hour flaps 00–07. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
159 × 139 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 4 g
STL 0.4 MB: Hour digits 00–07

Hour flaps 08–15

The hour flaps 08–15, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
171 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 18 g
STL 0.4 MB: Hour flaps 08–15

Hour digits 08–15

The digits for the hour flaps 08–15. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
159 × 131 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 3 g
STL 0.4 MB: Hour digits 08–15

Hour flaps 16–23

The hour flaps 16–23, each with the top half of its number on the front and the bottom half of the next number on the back, sunk 0.2 mm into the faces for the digits.

Size
171 × 145 × 1 mm
Print
Flat, as saved: 0.2 mm layers, 100% infill (the flaps are only 4 layers thick).
Filament
≈ 17 g
STL 0.5 MB: Hour flaps 16–23

Hour digits 16–23

The digits for the hour flaps 16–23. They fill the recesses exactly: load this file together with the flaps as one object for a two-colour print.

Size
159 × 137 × 1 mm
Print
Together with the flaps above, in a second colour. Not needed when you print with colour changes.
Filament
≈ 4 g
STL 0.5 MB: Hour digits 16–23
Also needed

Parts you buy

  • Two 28BYJ-48 stepper motors, 5 V, each with its ULN2003 driver board (they are sold together, often in fives). The drums sit straight on the motor shafts.
  • An ESP32 dev board (ESP32-WROOM-32, the 30- or 38-pin DevKit), a USB lead that fits it and a 5 V USB charger of at least 1 A. It needs a 2.4 GHz Wi-Fi network for the time.
  • Two A3144 hall sensors and two 6 × 2 mm neodymium disc magnets, one of each per drum.
  • 4 pieces of M3 threaded rod, 205 mm long, and 8 M3 cap nuts: the rods hold the two halves and the middle wall together.
  • 4 × M3 × 8 screws for the motors and 4 × M3 × 10 screws for the drums.
  • Jumper wires (female to female, 20 and 30 cm), double-sided foam tape for the boards, a few cable ties, and a drop of superglue for the sensors and the magnets.
Print settings

Slicer settings

0.20 mmlayer height, also for the first layer of the flaps
3walls
15%infill (the flaps come out solid anyway)
PLAmaterial; matte filament makes the digits easier to read

For a 0.4 mm nozzle. Filament amounts are estimates for these settings.

Assembly

How to build it

Print the flaps

With an AMS, MMU or other multi-colour printer, load each flap plate together with its digits file as one object, and give the digits the second colour. With one nozzle, print only the flap plates and change filament twice: to the digit colour at 0.2 mm and back at 0.6 mm. The digits then show through the recesses in both faces.

Print the rest

The housing halves stand on their end walls, the front panels lie on their front faces, the spools on their discs. Nothing needs supports.

Fill the drums

Glue a magnet into the pocket of each centre spool. Stand a motor spool on its disc, tube up, and hang the flaps in by one pin, starting with 00 in the hole next to the notch and going on round: anticlockwise for the minutes, clockwise for the hours, seen from above. Every flap has the top halves of its digits towards the flap before it. Then put the centre spool on top, catching the upper pins one by one, and screw it to the tube with two M3 × 10.

Sensors and axle

Push the axle into the middle wall so it sticks out the same on both sides. Lay a hall sensor in each pocket, printed face out, bend its legs into the groove and fix it with a drop of glue. Solder or crimp a 30 cm jumper wire to each leg.

Motors and boards

Screw each motor onto the posts of its end wall with two M3 × 8, shaft towards the middle, and plug it into a driver board. Stick the driver boards and the ESP32 to the end walls with foam tape where the 3D view shows them: the ESP32 in the left half, its USB socket at the slot.

Wire it

Hours driver IN1 to IN4 to GPIO 13, 14, 27 and 16; minutes driver IN1 to IN4 to GPIO 26, 25, 33 and 32. Both drivers + to VIN (5 V) and − to GND. Hall sensors: the left leg to VIN, the middle to GND, the right leg to GPIO 18 (hours) or GPIO 19 (minutes). Wires to the right half go through the notch in the middle wall and along the bottom rod at the back.

Close it

Slide the front panels into the grooves of their halves, push the drums onto the motor shafts, set the middle wall with the axle between them and push the two halves together. Put the four rods through and tighten the cap nuts evenly.

Load the firmware

Install the Arduino IDE with the ESP32 boards. Open split-flap-clock.ino from the ZIP, fill in your Wi-Fi name, password and time zone at the top and upload it. The clock turns both drums to 00, then on to the time. If a flap falls too early or too late, change HOUR_TRIM or MINUTE_TRIM at the top of the sketch.

Small parts and magnets: keep them away from young children, and never let a child swallow a magnet. Power it from a USB charger only.

More free models

Print this one next

3D render of the Radial Engine: seven silver finned cylinders around a graphite crankcase, a black three-blade propeller with a red spinner, on a white stand

Radial Engine

A 7-cylinder radial with a master rod, six link rods and a 34 cm propeller. Turn the crank and all seven pistons move.

  • 19 parts
  • ≈ 1.0 kg filament
  • STL
View and download
3D render of the V8 Engine: an orange block with graphite heads, eight silver velocity stacks, timing gears and the hand-turned pulley at the front, on a black stand

V8 Engine

A cross-plane V8 with a gear-driven camshaft and sixteen moving valves. Turn the handle and watch it run.

  • 26 parts
  • ≈ 0.8 kg filament
  • STL
View and download
3D render of the Wankel Rotary Engine: a finned orange housing with the silver rotor visible through the open front, spark plugs on the right, intake and exhaust on the left, on a black stand

Wankel Rotary Engine

A single-rotor Wankel with an open front and real phasing gears. Turn the handle and watch the rotor go round.

  • 13 parts
  • ≈ 0.4 kg filament
  • STL
View and download
3D render of the Tourbillon Wall Clock: a white dial with black hands over yellow gears in a graphite frame, the tourbillon cage with its blue balance and hairspring below

Tourbillon Wall Clock

A weight-driven wall clock with a one-minute tourbillon that is also its seconds hand.

  • 34 parts
  • ≈ 0.3 kg filament
  • STL
View and download
3D render of the Enigma Cipher Machine: a round black dial with a white letter ring, three rotor rings with black letters and a red key and pointer

Enigma Cipher Machine

Three rotors wired like the real Enigma I and a key that steps them. It really encrypts.

  • 13 parts
  • ≈ 0.3 kg filament
  • STL
View and download
3D render of the Manual Gearbox: silver gears on two shafts in an open graphite case, blue shift forks and rails above them, and the black lever in its H-pattern gate

Manual Gearbox

A five-speed gearbox with reverse and an H-pattern lever. Shift through the gears and watch the dog collars engage.

  • 41 parts
  • ≈ 0.4 kg filament
  • STL
View and download
3D render of the Music Box: a yellow drum full of black pins between the cheeks of a teal frame, a silver comb under its front and the crank on the right

Music Box

A hand-cranked music box with a drum you program with filament pins. Two octaves, tuned by hand.

  • 8 parts
  • ≈ 0.2 kg filament
  • STL
View and download
3D render of the Walking Strandbeest: eight orange Jansen legs on a graphite body with white cranks

Walking Strandbeest

Eight Theo Jansen legs and an N20 gear motor on two AA batteries. It walks across your desk by itself.

  • 17 parts
  • ≈ 0.2 kg filament
  • STL
View and download
3D render of the Car Differential: a graphite housing cut open along the axle, an orange ring gear and pinion, a blue carrier with the spider gears, silver axles to two white wheels with black tyres, on a white stand

Car Differential

A cutaway rear axle with a crank: hold one wheel and the spider gears make the other turn twice as fast.

  • 19 parts
  • ≈ 0.8 kg filament
  • STL
View and download
3D render of the Coffee Cup Stirling Engine: a red flywheel on a black A-frame above a silver air chamber with aluminium plates, the white conrods and the orange power cylinder

Coffee Cup Stirling Engine

A low temperature Stirling engine with a balloon diaphragm and a big flywheel. It runs on a mug of hot coffee.

  • 17 parts
  • ≈ 0.2 kg filament
  • STL
View and download
3D render of the Blacksmith Automaton: a blue smith with his hammer raised next to a black anvil with an orange horseshoe, on a terracotta box with a yellow crank

Blacksmith Automaton

A hand-cranked automaton: a snail cam lifts the smith's hammer and lets it drop on the horseshoe.

  • 16 parts
  • ≈ 0.1 kg filament
  • STL
View and download
3D render of the Orrery: an orange Sun with six planets and the Moon on silver arms, above yellow gears in a graphite drum with a crank

Orrery

The Sun, six planets and the Moon on geared arms. One turn of the crank is one year.

  • 43 parts
  • ≈ 0.6 kg filament
  • STL
View and download
3D render of the Marble Machine: a silver screw lift on the left, orange tracks and a red rocker on a white pegboard, on a graphite base, with coloured marbles

Marble Machine

A screw lift carries marbles up, a rocker sends them left and right, four tracks bring them back. Runs on two AA batteries.

  • 10 parts
  • ≈ 0.5 kg filament
  • STL
View and download
3D render of the Tesla Turbine: an orange housing ring with its inlet arm between two graphite side covers on a black stand, with a red spoked pulley on the shaft

Tesla Turbine

Nikola Tesla's bladeless turbine: nine flat discs in a housing, spun by compressed air from the rim inwards.

  • 9 parts
  • ≈ 0.2 kg filament
  • STL
View and download
3D render of the Tendon-Driven Robot Hand: a white hand with a graphite palm on a black open forearm, five blue servos with orange spools in a staircase and five red lines running down from the wrist

Tendon-Driven Robot Hand

A life-size hand with fishing line tendons and elastic: five servos and an Arduino make the gestures, or you pull the rings by hand.

  • 20 parts
  • ≈ 0.3 kg filament
  • STL
View and download
3D render of the Antikythera Mechanism from the front: a zodiac and calendar dial with a gold Sun pointer and a Moon pointer with a half dark phase ball

Antikythera Mechanism

The ancient Greek calculator of the sky: Sun, Moon, Moon phase and eclipse cycles from one crank.

  • 45 parts
  • ≈ 0.6 kg filament
  • STL
View and download
3D render of the Kinetic Wave Sculpture: 32 blue slats on a graphite frame, their crests forming two waves, with a white crank on the right

Kinetic Wave Sculpture

A hand-cranked camshaft of 32 identical cams lifts 32 slats into two rolling waves.

  • 10 parts
  • ≈ 0.6 kg filament
  • STL
View and download
3D render of the Steam Locomotive: a black tank engine with red frames and wheels and silver valve gear, on a piece of dark grey track

Steam Locomotive

A tank engine whose Walschaerts valve gear really works: push it along and watch the valves, pull the lever to reverse.

  • 48 parts
  • ≈ 0.8 kg filament
  • STL
View and download
3D render of the Turbo Desk Fan from the front

Turbo Desk Fan

A working desk fan shaped like a car turbocharger, with a speed knob in the base.

  • 4 parts
  • ≈ 0.9 kg filament
  • STL
View and download
3D render of the Jet Engine Desk Fan: a white engine with a dark fan on a black base

Jet Engine Desk Fan

A turbofan with 20 swept blades. Fits the Turbo Desk Fan's base and prints without supports.

  • 7 parts
  • ≈ 0.8 kg filament
  • STL
View and download
3D render of the Self-Watering Planter: a fluted terracotta pot with a dark inner pot and the fill cap at the back

Self-Watering Planter

A fluted planter for a 12 cm plant, with a hidden 0.6 litre reservoir and a float that shows the water level.

  • 6 parts
  • ≈ 0.6 kg filament
  • STL
View and download
3D render of the Headphone Stand: a white base and upright with a teal cushioned hanger

Headphone Stand

A sturdy headphone stand with a bayonet base, a cushioned hanger, an earbud tray and a cable hook.

  • 3 parts
  • ≈ 0.3 kg filament
  • STL
View and download
3D render of the Mini Drawer Cabinet: a graphite frame with three white drawers and orange handles, one drawer open

Mini Drawer Cabinet

Two small drawers and a wide one, with drawer stops and clip-on handles. Stack or link as many as you like.

  • 5 parts
  • ≈ 0.6 kg filament
  • STL
View and download
3D render of the stand: a white base with an orange back support, holding a phone

Phone & Tablet Stand

Plug the back in at 55, 65 or 75 degrees. Fits phones and tablets in a case, with a slot for the charging cable.

  • 2 parts
  • ≈ 0.1 kg filament
  • STL
View and download
3D render of the Bird Feeder: a sage green roof and tray with a white seed tube and a dark hanging loop

Bird Feeder

A hanging seed feeder with a twist-lock tube, a perch ring and a roof that slides up to refill.

  • 4 parts
  • ≈ 0.3 kg filament
  • STL
View and download
3D render of the Rotating Desk Organizer: a white carousel with pen cups, a scissor slot and a tray on a dark base

Rotating Desk Organizer

Pen cups, a scissor slot and a tray on a base that spins smoothly on 6 mm airsoft BBs.

  • 3 parts
  • ≈ 0.3 kg filament
  • STL
View and download
3D render of the Planetary Gear Desk Toy: a graphite housing on a foot with orange gears, a white carrier, pointer and crank

Planetary Gear Desk Toy

A hand-cranked 5:1 planetary gearbox with herringbone teeth. Clicks together and prints without supports.

  • 7 parts
  • ≈ 0.2 kg filament
  • STL
View and download
3D render of the Laptop Stand: two graphite side stands joined by orange cross bars, holding an open 14-inch laptop

Laptop Stand

Lifts your screen about 12 cm at a 20° tilt. Fits 11 to 16 inch laptops; the cross bars wedge in, no screws.

  • 3 parts
  • ≈ 0.3 kg filament
  • STL
View and download
The empty stand: graphite base with side walls, two orange rollers on white axle pegs and the curved filament guide

Filament Spool Holder

Rolls any spool from 250 g to 3 kg on four 608 skate bearings, with a filament guide. Any hub size.

  • 4 parts
  • ≈ 0.2 kg filament
  • STL
View and download
3D render of the Gridfinity Starter Set: a graphite baseplate filled with white, orange and teal bins

Gridfinity Starter Set

A 4 × 4 baseplate with eight stackable bins that fill it. Gridfinity-compatible, no supports.

  • 7 parts
  • ≈ 0.3 kg filament
  • STL
View and download
3D render of the Dice Tower: a graphite castle tower with a crenellated crown and corner turrets, standing in an orange tray with dice in front of the arched gate

Dice Tower

Two baffles and an exit ramp tumble your dice into a tray with a felt recess. No glue, no supports.

  • 4 parts
  • ≈ 0.3 kg filament
  • STL
View and download
3D render of the Battery Dispenser: a white dispenser with three chutes of batteries, one battery in each tray, and an orange lid

Battery Dispenser

Two AA chutes and one AAA chute. The bottom battery rolls onto a tray, the next drops down.

  • 2 parts
  • ≈ 0.2 kg filament
  • STL
View and download
3D render of the Cube Desk Calendar: two white cubes showing 14 and a teal bar showing OCT in a graphite stand

Cube Desk Calendar

Two number cubes show every date, three bars show the month. With a stand that hides the spare bars.

  • 6 parts
  • ≈ 0.1 kg filament
  • STL
View and download
A lamp shade with a photo in it, glowing

Or design your own

Put your own photo in a phone case, lamp shade or lithophane, right in your browser.

  • Free
  • No account
  • STL
Open the makers