Microscope 60 LED Ring Light Adapter

The Barbie-themed microscope light I built from an angel eye LED ring worked fine for the last six years (!), but a much brighter ring with 60 aimed 5 mm LEDs for $17 delivered from a US seller caught my eye:

Microscope 60 LED ring light - in use
Microscope 60 LED ring light – in use

Although this ring looks much more professional, it didn’t quite fit the microscope, being designed for a round snout rather than a squarish one. This snout has a 47-ish mm threaded ring intended for filters & suchlike, so I built an adapter between that and the 60 mm ID of the LED ring:

Microscope 60 LED Ring Light Adapter - top - Slic3r
Microscope 60 LED Ring Light Adapter – top – Slic3r

The ring came with three long knurled screws which I replaced with much tidier M3 socket-head screws going into those holes:

Microscope 60 LED ring light - assembled - top
Microscope 60 LED ring light – assembled – top

The part going into the snout threads is deliberately (honest!) a bit small, so I could wrap it with soft tape for a good friction fit. The Barbie Ring didn’t weigh anything and I wound up using squares of double-sticky foam tape; it could come to that for this ring, too.

The adapter features a taper on the bottom for no particularly good reason, as the field-of-view tapers inward, not outward:

Microscope 60 LED Ring Light Adapter - bottom - Slicer
Microscope 60 LED Ring Light Adapter – bottom – Slicer

Seen from the bug’s POV, it’s a rather impressive spectacle:

Microscope 60 LED ring light - assembled - bottom
Microscope 60 LED ring light – assembled – bottom

The control box sports a power switch and a brightness knob. Come to find out the ring is actually too bright at full throttle; a nice problem to have.

That was easy!

The OpenSCAD source code as a GitHub Gist:

// LED Ring Light Mount - 60 mm ID ring
// Ed Nisley KE4ZNU April 2017
//- Extrusion parameters must match reality!
ThreadThick = 0.25;
ThreadWidth = 0.40;
HoleWindage = 0.2;
Protrusion = 0.1; // make holes end cleanly
inch = 25.4;
function IntegerMultiple(Size,Unit) = Unit * ceil(Size / Unit);
//----------------------
// Dimensions
ID = 0;
OD = 1;
LENGTH = 2;
ScopeThread = [43.0,46.5,4.0]; // scope snout thread, ID = minimum invisible
LEDRing = [ScopeThread[ID],60.0,8.0];
LEDScrewOffset = 4.0;
LEDScrewOD = 3.0;
LEDScrews = 3;
OAH = ScopeThread[LENGTH] + LEDRing[LENGTH];
NumSides = 3*4*LEDScrews; // get symmetry for screws
//----------------------
// Useful routines
module PolyCyl(Dia,Height,ForceSides=0) { // based on nophead's polyholes
Sides = (ForceSides != 0) ? ForceSides : (ceil(Dia) + 2);
FixDia = Dia / cos(180/Sides);
cylinder(r=(FixDia + HoleWindage)/2,h=Height,$fn=Sides);
}
//----------------------
// Build it
difference() {
rotate(180/NumSides)
union() {
cylinder(d=ScopeThread[OD],h=OAH,$fn=NumSides);
cylinder(d=LEDRing[OD],h=LEDRing[LENGTH],$fn=NumSides);
}
translate([0,0,-Protrusion])
rotate(180/NumSides)
cylinder(d=ScopeThread[ID],h=OAH + 2*Protrusion,$fn=NumSides);
translate([0,0,-Protrusion])
rotate(180/NumSides)
cylinder(d1=LEDRing[OD] - 2*6*ThreadWidth,
d2=ScopeThread[ID],
h=LEDRing[LENGTH] + Protrusion,$fn=NumSides);
for (i=[0:LEDScrews-1])
rotate(i*360/LEDScrews)
translate([LEDRing[OD]/2 - LEDScrewOD,0,LEDRing[LENGTH] - LEDScrewOffset])
rotate([0,90,0]) rotate(180/6)
cylinder(d=LEDScrewOD,h=LEDScrewOD + Protrusion,$fn=6);
}

 

5 thoughts on “Microscope 60 LED Ring Light Adapter

  1. Having just done an angel eye hack version myself, can you expand on sourcing for this €17 version? Also, how are they switching the leds, correctly with current limiting resistors, or simply series and hope for the best (angel eye, at least the one I ended up with!;-)).

    A few years ago, Elektor had a lovely design of a ring light with smd or aimed leds that you could switch in patterns. I think they had quarters, 50%, and half half. All with a switched PMM. Unfortunately I missed the cutoff to order their kit and haven’t spent the time to design my own. Or better said, the cheap hack and existing equipment suffice, thus far.

    1. I added the eBay search to the post where it should have been all along; scroll down past the direct-from-China suppliers.

      Judging from the label on the bottom of the power brick, it’s a 10-12 VDC variable output supply, probably with the usual ballast resistors in the ring. No flicker = fine with me!

  2. Don’t know if this helps but we used some of these from eBay for a device concept (links are dead by now anyway so use search string). As far as I know non craped out yet and they cost about 5-6$:)

    5050 16-Bit RGB LED Ring WS2812 Round Decoration Bulb Perfect For Arduino OE
    5050 12-Bit RGB LED Ring WS2812 Round Decoration Bulb Perfect For Arduino F5

    1. I wondered what “12 bit” and “16 bit” meant in the context of a controller with 3 × 8 bits of RGB color, until I counted the LED packages … you can get “8 bit” and “24 bit” rings, too!

      Ripping the Open Source Hardware logo finishes it off. [sigh]

      I could make rotating eye rings to fill the Forester’s empty fog light bezels!

Comments are closed.