by artdavis, published

Monoculight by artdavis Jul 8, 2015

Challenge Winner

0 Share
Download All Files

Thing Apps Enabled

Open in Customizer Order This Printed View All Apps



Monoculight by artdavis is licensed under the Creative Commons - Attribution license.

Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

3105Views 1427Downloads Found in Learning


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
    understandable way.

  • 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
    ever invented.

  • 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.

OpenSCAD Customization

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 openscad.org). To
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.

MakerBot Customizer

Navigate to the Monoculight thing page at thingiverse.com/
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.

Eye specs

  • 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
    seat properly.

  • 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

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 Lens

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
performance comparison.

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

Lens Parameters

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.

Printed Parts

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

Printer Settings

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

Part Finishing

  1. 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.

  2. 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.

  3. Test fit the lens in the front half and file away any plastic that
    prevents it from fully seating in the pocket.

  4. If you used a plastic that sands well and wish to do that, now’s the

  5. 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.

  6. For the LED holes you can use scrap LEDs to plug them or print some
    faux LEDs to use. I used thingiverse.com/Acarious10’s model:
    thingiverse.com/thing:38396 after trimming off the leads in the
    CAD file. Also wadded up masking tape works fine.

  7. 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.

  8. 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.

  9. 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.

  10. 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
  • LEDs
  • 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.

Circuit Design

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
posted by thingiverse.com/bmcage: thingiverse.com/thing:79502. I’ve
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:

Negative Terminal

  1. Unravel a paper clip and poke it about halfway in to one of the
    lower exterior holes.

  2. 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
    with pliers.

  3. Make another U-bend in the wire and send it back through the
    adjacent hole.

  4. Pull the wire tight so that it seats in the interior indent. This
    will be the connector for the negative terminal of the battery.

  5. From the exterior, bend the lead down to the lower hole.

  6. 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.

Positive Terminal

  1. 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.

  2. Seat the lead into the indent of the retaining wall and hook it over
    the wall ledge.

  3. Squeeze the leads with pliers so that it holds itself tightly in
    place. This will be the positive terminal for connecting to your

  4. Test that your terminals have the expected voltage with a meter and
    connect your circuit to see if everything works.

Circuit Assembly

  1. Collect up the components for your selected wiring configuration.

  2. Dry fit your components in place to set the proper lengths of your
    wires and leads.

  3. Solder your components together and apply heat shrink/insulating
    tape to the connections at your discretion.

  4. Confirm the circuit works properly.

  5. 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.

  6. 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.

    • If you don’t have an opaque adhesive, paint over the adhesive
      with black paint after it has set up.

    • Test the effectiveness of mitigating the LED backward stray
      light and apply additional coats of paint as necessary.
  7. Install the switch with its retaining mechanism (typically a
    threaded ring or nut).

Final Assembly


  • 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

  1. 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).

  2. 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).

  3. Apply the strips to the inside of the lens pocket so the inner
    circumference has 1 layer of tape. Some overlapping layers are OK.

  4. 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.

  5. 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.

  6. Use a razor to trim the excess screen material flush with the
    exterior shell.

    • 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.
  7. Snap the front and back halves of the Monculight together and
    assembly is complete! Share and Enjoy!

More from Learning

view more

All Apps

Customizer is the easiest way to take great 3D printable designs and make them your own. Make your OpenSCAD designs infinitely more valuable by empowering the community to customize them.

App Info Launch App
Customizer Thing App

3D Print your file with 3D Hubs, the world’s largest online marketplace for 3D printing services.

App Info Launch App

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

3D Print a wide range of designs with Treatstock. Easy to use tools to get the perfect result. The global 3D printing network that connects you with high-quality and fast working print services nea...

App Info Launch App