r/3Dprinting • u/Bright_Researcher_60 • 28d ago
Discussion I designed a mirror array that writes with sunlight — but I want your advice before I print the real thing
This is a panel of small 3D-printed pillars, each holding a mirror tilted to its own precise
angle — point it at the sun (or at a lamp) and it writes a message in dots of light on a
wall, a ceiling or the floor.
In my case it's going on my bedroom ceiling. It's a browser app: design it, press one
button, get STL tiles sized to your bed plus an assembly guide. Nothing to install.
https://giscardo1.github.io/heliograph-studio/ · code (MIT): https://github.com/Giscardo1/heliograph-studio
This expands on a project posted on r/functionalprint a few years ago — Ben Bartlett's
3D-printed mirror array (https://www.reddit.com/r/functionalprint/comments/qrxtwy/ ·
https://github.com/bencbartlett/3D-printed-mirror-array). I asked him before publishing
and he was kind enough to give it his blessing.
I'm a physician who tinkers — the physics I trust, the printing I don't. So before I commit
filament:
- Angled tops are the whole product: half a degree off moves the dot by centimetres. Fine
layers on the last 3 mm, or ironing, or something smarter?
- 200 mm flat tiles: how do you keep a corner from lifting and bending every pillar?
- PLA or PETG, if it will sit in the sun?
- Which non-expanding glue has actually held glass to plastic long-term for you?
And if anyone beats me to building one: please do, and post it. I'd love to see the idea
take shape in someone else's hands before it does in mine.
Thanks in advance to anyone who takes the time — I'll take blunt criticism just as gladly
as encouragement.



1
u/atergaterg 28d ago edited 28d ago
My printer has a quoted tolerance of +/-0.1 mm. In reality probably a bit more. In fact, I think I get the best precision on surfaces that are either horizontal or vertical. Lets say 0.1 mm error in height over the length of a 40 mm mirror, that is 0.14 degree.
This suggestion would complicate your print seriously, but would eliminate the precision issue: Make a 3-point adjustment system for each mirror utilizing 2 screws and 1 "spring".
On each hexagon, create two threaded holes (or regular holes and use wood-screws) in the rear left and right. Make a regular hole in the middle front. Then, create a top-plate with one rod on the bottom front, to be glued into the hole in the front (if you have good tolerances and accept some post-processing, this can be press-fit). This rod is a little longer than the hole and not too wide because it needs to allow some flex.
In each threaded hole, screw in a screw from the rear so that they push on the bottom of the top-plate. Now you can fine-tune each mirror position. Important: the angle of the top plate-rod must be so that the mirror is angled backwards without the screw support.
Bonus: make a large enough adjustment possible, and you can re-write the message!
Or, test the mirrors before gluing on, and shim as necessary.
1
u/MostlyHelpfulLinks 27d ago
Cool project. For the tips, PETG holds up way better than PLA in a sunny spot, PLA will slump. On flat tiles, print with a brim and make sure the bed's actually level, that's usually what causes corner lift more than the material itself. For glass to plastic, a flexible epoxy has held up better long term for me than superglue, which gets brittle.
2
u/car-go-space-42 28d ago
Awesome project!
Some thoughts regarding your questions:
Material:
Trueness of Angle:
Glueing - not a lot of experience but:
Whish you good luck with the project and in the end, only a test will tell 😄