This is my entry for the Thingiversity Technology S.T.E.A.M. Challenge:
LightItUp. The assembled part is a functional light-up eyeball
demonstrator to encourage kids of all ages to think about how basic lens
technology works and how the marvelous biological optical systems in our
heads (aka our eyes) enable us to see.
I've blogged my development progress at http://monoculight.tumblr.com
which is also available as a PDF document in the Thing Files as
Abbreviated build instructions are provided under "Instructions" and the
full detailed build instructions including figures are available in the
Thing Files as "Monoculight-Documentation.pdf". This document also
includes a complete description on how Monoculight is especially
relevant to the MakerBot Technology Challenge.
This was a fun project in which I had to develop a lot of technology
(printing hemispheres, snap fit features, battery holders, circuits, CAD
parameterization, lens fabrication, etc.). But what I'm most proud of is
how Monoculight can be used to inspire self-directed technology
education. Just put a Monoculight in someones hands and see what
Experience how basic lens technology works in a very tactile and
Press a button to make bright lights. Pop the Monoculight open and
see the very simple circuit technology at work.
Confused about why the image is upside down on the retina in
Monoculight while we don't see things upside in real life? It's easy
for our brains which are better image processors than any technolgy
Light up Monoculight in the dark and observe first hand additive color
mixing which is the principle behind the ubiquitous display
technologies we use every day.
- Curious about that display technology? Open Monoculight, place it near
a display and see the RGB pixels firsthand.
A big thanks to the folks at MakerBot for hosting the Thingiversity
Summer S.T.E.A.M. Challenges. This contest provided an inspirational
spark for myself and many others to work on developing technology around
3D printing and Light. It's been great fun!
Detailed instructions are provided in the Thing Files as
"Monoculight-Documentation.pdf" which contains information on
the relevance of Monoculight to the Technology Challenge and build
information along with lots of helpful figures. It is highly
recommended that you use it as your primary reference for creating
your own Monoculight. An abridged version is included here...
To build your own Monoculight you should customize it to your liking and
unless you find a lens exactly like the one I’m using (BFL=64mm; Lens
Diam=28mm), you need to customize the build geometry anyway.
If you are familiar with OpenSCAD you can download the Monoculight SCAD
source file to generate Monoculight STLs on your computer. If the
options presented in the MakerBot Customizer don’t meet your design
ambitions, you can modify the source for your purposes. To try this,
you’ll need OpenSCAD which is freely available (see
get the Monoculight source, click on the “Thing Files” tab from the
Monoculight thing page and download “Customizable_Monoculight.scad”.
The Monoculight source is modular and well documented but can still be
daunting. It will be much easier to use the MakerBot Customizer to
generate the STL files as described next.
Navigate to the Monoculight thing page at
thing:915796 and click the Red icon that says “Open in Customizer”.
Note that there are three available tabs: “Eye specs”, “Electrical” and
“Build Plate”. Each tab has it’s own set of options for you to adjust.
The “Part” dropdown menu is available on every tab. Use this to choose
an individual part you want to evaluate.
Shell Th sets the sidewall thickness for the hemispherical shells.
I’ve had good luck with the default setting of 2mm. If your printer is
having trouble with the top region of the hemisphere you can try
thickening this value up. It you think your printer has what it takes
for building up challenging ledge geometry you can try dialing this
BFL sets your lens Back Focal Length. This is one of the most critically
important parameters to set correctly.
Lens Diam is important for generating a part in which so your lens will
- Refractive Index is used for generating lens fabrication geometry. The
default of 1.4 is a typical Silicone. Adjust this if you know the index
of refraction of your lens material and you are making your own lens as
described in Appendix A of "Monoculight-Documentation.pdf".
Num Leds: The number of LEDs you want your Monoculight to have. Make
sure there’s enough room for them all in the part preview of the “Front
Half”. You can dial this down to 0 for a “no LED” Monoculight that only
works in bright environments.
LED Hole Diam: The clearance hole diameter for the LED package you’ll
be using. The default of 5.2mm works well for your typical 5mm package
Make Batt Holder: Whether you want the integrated battery holder to be
incorporated into the part geometry. If you’re building a “no LED”
Monoculight set this to “No”.
N Batts: The number of CR2032 batteries the battery holder should
accomodate. Be sure to check that the battery holder does not get too
big and interfere with the optical path. See the Electronics section
in "Monoculight-Documentation.pdf" for information on how to design
your LED circuit so you can choose a good number of batteries to use.
Make Switch Hole: Whether to include a hole for mounting a switch.
Again, useful to set to “No” for a “no LED” Monoculight.
- Switch Hole Diam: You may have to scroll the parameter scroll bar to
get to this one. Set this number according to the thru-hole diameter
you need to accommodate your switch.
Build plate geometry is just used for reference. STL files of the build
plate are never generated.
Show Build Plate: If you want to see how your customized Monoculight
part(s) will fit on your printer’s build plate, set “Show Build Plate”
to “Yes”. Select “No” to get a zoomed in view of your part(s) when you
are evaluating individual geometries.
Build Plate Selector: If you have one of the printers listed, choose
it from the drop-down. Otherwise, set it to “Manual” and configure your
build-plate geometry using the “Build Plate Manual X/Y” sliders.
- Build Plate Manual X/Y: Only used for “Build Plate Selector” set to
“Manual”. Set your build plate geometry here if your printer is not
listed in the “Build Plate Selector”.
When everything has been set to your satisfaction, click the “Create
Thing” button in the bottom right corner. A window should pop up that
allows you to give your customized Monoculight a customized name. Name
it and check whether you want to publish it or not. Click through
“Create Thing”. This can take some time and if you select “Go to my
Queue” in the new window you can keep track of the progress.
The whole Monoculight design is based on the properties of the lens that
you will use. You should open Monoculight in the MakerBot Customizer and
set the BFL (Back Focal Length) and Lens Diam (Diameter of the lens).
These two key parameters drive the geometry for the outer shell of
A huge part of the technology development for Monoculight was devising a
process for using consumer desktop 3D printing in conjunction with other
readily available household materials for fabricating your own lens
If you are interested in fabricating your own lens, refer to Appendix A
in "Monoculight-Documentation.pdf". It will be much easier for you to
acquire a decent quality commercially manufactured lens and this is the
recommended thing to do. Later if you’re up for the challenge you may
attempt your own lens fabrication with the same focal length as the
commercial lens you have and retrofit it into your Monoculight for
Go see what lenses you can find that you may already have. Maybe you
have some in a teaching kit? Or maybe you can find a piece of broken
equipment like a projector you can take apart to salvage the optics? A
simple magnifying lens should do the trick as well. If you want to go
buy something a small magnifying lens is probably the cheapest route.
I suggest something with a focal length in the neighborhood of 2.5" (may
be specified as a 4x magnifier) and a diameter around 1". The
OpenSCAD/MakerBot Customizer can accommodate whatever you come up with
but if you stray too far from these suggested values, your mileage may
Whether you made your own lens or found a commercial one you will now
need to measure it’s focal length and aperture diameter for
customization of your own part files.
The lens BFL (Back Focal Length) is defined as the distance from the
back of the lens to the lens focal point. It’s easiest to measure this
in the day time where there’s a light colored wall opposite a window.
Keeping the lens parallel to the wall and on-center to the window,
slowly move the lens back and forth until you get the sharpest image of
the objects outside the window. Measure the distance from the back of
your lens to the wall at this best focus location using a ruler (or
better, verniers if you have them). This distance in millimeters is the
lens BFL to use with the Customizer.
If you don’t have a bright exterior window handy, you can also find an
acceptable value for the BFL from the best focus of a ceiling light on
the floor. Use the same procedure and be sure to center the lens
directly underneath the ceiling light as best as possible.
Measure the diameter of your lens and enter this value into the
Customizer as well.
At this point you should have a lens and have measured it to generate
your customized Monoculight STL files. The OpenSCAD program and the
MakerBot Customizer will generate a lot of peripheral support files that
are only necessary if you are fabricating your own lens. Only three 3D
printed parts are actually required for assembly:
Front_Half: Hemispherical shell for the front of Monoculight. This
contains the lens pocket, the LED holes, the switch mounting hole and
the battery holder.
Back_Half: Hemispherical shell for the back of Monoculight. This
contains the pocket for the retina screen.
- Retina_Retainer: A small cylindrical ring which fits snugly into
the retina screen retention pocket for holding in the retina screen.
You’ll probably want to print the parts one at a time for the best
quality... and also to make sure your printer can handle building a
hemisphere before consuming the material for two at once! With a
multi-part print there may be some stringiness where the extruder hops
from one part profile to the next. If you regularly make high quality
multi-part prints and you’re confident that your printer can build the
hemisphere the multi-part print should be fine and will even provide the
added benefit of additional cooling time for the ledging layers at the
top of the hemisphere.
- Small files
- Masking tape
- Spray paint rated for plastics
Monoculight was developed using PLA but other materials may be used. The
hemispherical parts are fairly difficult to build so you should try to
print with the material your printer is best “tuned up” to use.
For the printer and PLA filament I used, the best hot-end temperature
was found to be 190°C. This may not be the best setting for your
particular printer and filament. You should start with settings you know
work choosing a temperature on the high side of your typical process
I also set a minimum layer time of 15 seconds so that the smaller
profile rings that need to “ledge” have extra time to cool before
starting the next layer.
For process optimization, you can set
part = Custom_Trim in the
OpenSCAD source to just generate the most difficult to print section.
When this part prints properly, you should be tuned in for printing the
whole hemisphere at high quality.
The nozzle diameter in my printer is 0.4mm and I set the slicer shell
thickness to 0.8mm. I haven’t experimented with other size nozzle
diameters but it’s probably best to pick a shell thickness equal to
twice your nozzle diameter.
I also printed at 0.2mm layer thickness. Going thinner would yield
higher quality parts. Adjust this as per your patience; thinner layers
means longer print times.
And finally, the most significant thing I found for successful prints
was to set the fill density to 100%. Especially near the top of the
hemisphere, having a solid base layer to ledge from is very important.
In summary, good slicer settings to use assuming a 0.4mm nozzle diameter
- 0.2mm layer thickness (or thinner)
- 0.8mm shell thickness
- 100% fill density
- 15 seconds minimum time per layer
File down any rough spots or stringiness that may have ocurred. Pay
particular attention to the snap fit features. A tiny file can be
used to remove burrs and other imperfections that may prevent a
proper mate between the two hemispherical shells. The front half
mating feature and exterior shell ledge and the back half interior
shell surface are the areas to give the most attention to. Whittle
away until the two halves snap together firmly.
Test fit the retina screen retaining ring in the back half pocket
and file as necessary. The ring should fit very snugly and seat
fully so as to securely hold the retina screen later.
Test fit the lens in the front half and file away any plastic that
prevents it from fully seating in the pocket.
If you used a plastic that sands well and wish to do that, now’s the
Before painting, carefully mask off the pockets and holes. For the
main pockets this is easily accomplished by putting masking tape
over the hole and then pushing the retaining ring firmly down on the
masking tape. The tape can then be wrapped over the retaining ring
to keep paint off of it.
For the LED holes you can use scrap LEDs to plug them or print some
faux LEDs to use. I used
thingiverse.com/thing:38396 after trimming off the leads in the
CAD file. Also wadded up masking tape works fine.
The inside of the front half should be painted black. You may not
need to do this depending on the opacity of the PLA material you’re
using. I was using a natural/clear PLA in which case painting the
inside is essential to prevent stray light from washing out the
image on the retina screen.
Prime/paint the outside of the Front and Back halves as per your
favorite process. Especially if you want to brush paint the iris
and/or some fine detail arteries later since without a base layer
the brush painted details will tend to wick/run.
When dried, remove the masking tape and file out any paint bleeds.
Make sure the parts snap together and the necessary pieces fit in
their pockets/holes and again file as necessary.
- For the final level of detail finishing, use acrylic model paints
with a fine tip paintbrush to color in the iris and add arteries
around the back and sides. Make sure the front and back halves are
securely snapped together when painting decor that spans the snap
interface. Also don’t rotate the front and back halves with respect
to each other during the painting.
To light up Monoculight with LEDs you’ll need some basic circuit
- Equipped soldering station
- Thru-hole mountable switch
- CR2032 Batteries
- Paper clips
- Opaque adhesive like black silicone (alternatively a non-opaque
adhesive can be used and painted black afterwards).
It may be possible to assemble the circuit by twisting wires and leads
together or using solderless wire clips. But for the best reliability
the circuit should be soldered.
The simplest LED circuit can be made using 12V pre-wired LEDs. These are
nice because the wire leads are already soldered on with the correct
current limiting resistor so all you need to do is connect as many LEDs
as you like up to 12V DC (in parallel).
It may instead be preferable to create a custom circuit using 20mA 5mm
LEDs which are ubiquitously available. When creating a custom LED
circuit, it is important to get the current limiting resistor correct so
you can get good brightness out of your LEDs without burning them up.
There are a number of good tutorials available online that you can find.
Detailed circuit design information is included in
Battery Holder Wiring
The battery holder is inspired by the solderless battery holder design
redesigned the form factor for incorporation into Monoculight, added
additional holes and wire indents and provided an opening at the bottom
for easily ejecting the batteries.
There are multiple ways the electrical leads can be installed and you
can play around with different wire routes as you see fit. The best one
I was able to come up with is explained here:
Unravel a paper clip and poke it about halfway in to one of the
lower exterior holes.
Make a U-bend in the wire and push it back through the hole directly
above. Push it all the way through to the interior and pull it tight
Make another U-bend in the wire and send it back through the
Pull the wire tight so that it seats in the interior indent. This
will be the connector for the negative terminal of the battery.
From the exterior, bend the lead down to the lower hole.
- Thread the wire back through into the interior. Pull it tight with
pliers and bend it sharply where it exits the retaining wall so it
holds itself in place. This will be the negative terminal for
connecting to your circuit.
Unravel another paperclip and bend it into a shape with a hook on
one end, a long straight section the length of the battery retaining
wall and a hairpin bend on the other (see the Figure in
"Monoculight-Documentation.pdf"). Cut off the excess wire length.
Seat the lead into the indent of the retaining wall and hook it over
the wall ledge.
Squeeze the leads with pliers so that it holds itself tightly in
place. This will be the positive terminal for connecting to your
- Test that your terminals have the expected voltage with a meter and
connect your circuit to see if everything works.
Collect up the components for your selected wiring configuration.
Dry fit your components in place to set the proper lengths of your
wires and leads.
Solder your components together and apply heat shrink/insulating
tape to the connections at your discretion.
Confirm the circuit works properly.
You should have already painted the inside of the shell for glare
reduction, but in case you haven’t you probably want to get that
done before the next step.
Glue in the LEDs with black silicone caulk or similar. The adhesive
needs to fully encapsulate the back of each LED so light doesn’t
escape into the shell interior.
- Install the switch with its retaining mechanism (typically a
threaded ring or nut).
- Razor or hobby knife
- Masking tape
- Retina screen: Matte finish cellophane tape works best. Otherwise
parchment paper, wax paper or tracing paper.
Putting it all together
Apply a couple of inches of masking tape down on a flat plastic
surface you don’t mind scoring up (a CD case works well for this).
Use a straight edge to cut thin strips of the tape that will fit
within the height of the lens pocket (a couple of millimeters).
Apply the strips to the inside of the lens pocket so the inner
circumference has 1 layer of tape. Some overlapping layers are OK.
Fit the lens in carefully trying not to scrunch up the tape. If it
is snugly held in place and doesn’t fall out then lens installation
is done! Otherwise apply additional layers of tape until the lens is
held in securely by the friction fit.
Place an oversized piece of screen material over the retinal pocket.
Take the retinal retaining ring and press it firmly down on the
screen in to the pocket. Take care to prevent the viewing area of
the screen from buckling.
Use a razor to trim the excess screen material flush with the
- If this process did not work well then you can also just use the
retaining ring as a template for trimming out your screen
material and then dropping it in the pocket and then inserting
the retaining ring.
- Snap the front and back halves of the Monculight together and
assembly is complete! Share and Enjoy!