Want a color-angular approach to inspecting your solder joint fillet quality? This rainbow-dome is your solution for less than $20!

Similar projects worth following
Hackaday covered some of the tools used for soldering inspection and I'm interested in photographing parts with this unique lighting setup, so let's print it!
I've seen these go for about $1000, and that's just unacceptable, so I pulled this off with less than $10 of LED's and PLA filament. And labor. This model uses 5mm LED's, but I also built a version with NeoPixels which proved too tricky to solder together.I'm going to be building a 1m large version soon as well. I wanna shoot portraits with the large one.

This project has 3 main phases. Printing the dome- needs a 220mm*220mm bed and a day resting on said bed. Inserting LED's- may be excruciating if you slice the print wrong. Soldering- using good solder and mastering the art of surface tension is critical.

For slicing, be sure to use Cura's "exclusive slicing tolerance" feature. This will print the holes slightly oversized. You want the 5mm LED's to be able to fit without cracking the print or your fingernails. Use 125% flow on the infill and connect (gyroid) infill lines and alternate an extra wall to get the best part possible. That's my not-so-secret recipe for good prints every time.

For inserting LED's, place them with the longer lead vertically above the shorter one. Go around the circle of 48 and insert all loosely. Then go back around with a mostly shut crescent wrench or screwdriver and press the LED's in so they're all the way in. Then, take the top lead (anode) and bend it down counterclockwise on the outside of the adjacent LED anode. Go around in a circle. Then, bend the shorter lead (cathode) clockwise to the outside of the adjacent cathode. Bend them so they don't have too much of a gap between them. This is critical for the soldering. You need a bead of solder to wick and stick to both of them so the smaller the gap formed, the better your joint will be.

For soldering, you'll want to use a good solder with rosin. I use a Kester SAC (Sn Ag Cu) flux-core solder so the only neurological abnormality I end up with is brain cancer from the fumes instead of brain dumbening from the lead poisoning. I need my remaining 2 brain cells to do stuff. Put some solder on the iron and place it on the leads to be joined. If the gap is sufficient, you can move on. If the gap is greater than 2mm, you'll need to add enough solder to leave a ball clinging on with surface tension to the two leads. It's not the best joint, but you'll need to make 2,000 of them, so just go quickly.

Rinse and repeat until all the rows are done. Commercial AOI lights use an RGB pattern and I used an ROYGB pattern because LGBTQ pride has my favorite color scheme!

Then, you can connect the upper cathodes to the lower anodes to create a series connection of the parallel LED's. In total, my dome took 21V and a few milliamps. I am not risking a burnout by pushing it beyond 10% of the LED's rated output. It's just not worth it!

Enjoy your shots!


100 gram, 6 inch radius variant! It's called HACKaday! This is a really bad, basically hacked together 3D model of a low material variant which requires fiddling with cura parameters, I changed the line width to 0.3mm and the slicing tolerance to "middle" but was able to get the LED's in by pushing a little harder. Recommended for overhead lights where you want to work on something looking through a microscope and need room to stick your hands in.

Standard Tesselated Geometry - 36.53 MB - 02/12/2021 at 16:13



300 grams, not recommended. The GNU Zip (gzip) compressed G-code file for the Nocticron version of the dome. Sliced with settings optimized for smooth fit of the 5mm LED's for a Creality Ender 3 V2. Printed and verified to fit well.

x-gzip - 24.50 MB - 02/08/2021 at 03:02



300 gram, not recommended for environmental reasons Modified model that will theoretically fit a Nocticron lens.

Standard Tesselated Geometry - 15.59 MB - 02/06/2021 at 16:50



The STL file needed to print the dome. Uses 300g of filament depending on the slicing. I'm testing a low material variant, but for the sake of longevity, just use the extra $4 of filament. The new 100g variant works if sliced right.

Standard Tesselated Geometry - 14.85 MB - 02/06/2021 at 09:44


  • Further Progress and Next Steps

    Sina Roughani02/09/2021 at 19:58 0 comments

    I've printed the Nocticron dome and found the 5mm LED's fit perfectly with the exclusive slicing tolerance. Much less painful than forcing them in with a crescent wrench. Unfortunately, I forgot the minimum focus distance of the Nocticron is NOT 4 inches. I'll need to print an adapter for my Macro-Elmarit lens instead.

    I'll share a few more pics here.

    Here's a MEMS microphone from TDK which has a tough footprint. The wicking effect and possible solder-mask bridging to signal lines makes it poor compared to other footprints. That's why these needed to come off of one of my old boards. Destructively. At least their cans look nice.

    Here's an upcoming project- a PCB motor. You'll hear more about this one later this week. I think the pattern is neato and perfectly exploits surface tension to form a rugged assembly. Unfortunately, it fried one of my three-phase motor drivers so I'll need to figure out what to do about that.

    I got a jar of ball bearings and got these eye-hole like shots. Forbidden caviar, anybody?

    And here's the jar after I took the dome off horizontally

    There was a pound of bearings there. After I clean that up, I'll be designing a 1m diameter dome with laser-cut black acrylic to take portraits. Maybe I can take it to the TC pride parade this year for portraits!

    I wanna help more people use this in their photography, so I'd be willing to set up a Tindie or eBay kit with the LED's you'd need for about $10-$20 and fully assembled for maybe $50 depending on the interest. The domes take a full day to print, so that's where most of the cost comes from. I want you to do it yourself though, so have fun with those files!

    The low material variant printed successfully after fiddling with parameters, needing to jump to middle slicing tolerance. This variant has a 6 inch radius which allows you to stick your hands underneath and this to be suspended overhead. It uses 100 grams of filament but takes more than a day to print! I used extra fine features, but in the end it was kind of worth it because they fit with a medium amount of effort. Not as bad as the inclusive slicing tolerance, but not as smooth as the exclusive slicing tolerance.

  • YOLO- Just do it, lol

    Sina Roughani02/06/2021 at 09:25 0 comments

    After a few days of sore fingers, I just went for it. The holes were so tight that it was a real effort to push the LED's in. But, I just pushed them in using a crescent wrench to get even pressure on the back. Here's the first row inserted with cathodes below anodes.

    A few rows inserted and soldered...

    The show "Stranger" on Netflix is pretty good. You should check it out.

    After a few episodes, I was done!

    Then, the serial connection

    And with the power supply carefully applying 21V,

    Imagine waking up to this, lol

    Okay, but here's the helping hand that helped me push all those LED's in place.

    And let's pick something popular to test this out with... hmmm...

    And with the macro lens, the fake Arduino looks really good.

    Let's check out some of these joints.

    If you look at the SOT package on the upper right (3 leads), you can see the smooth rainbow transition due to the long pad transition area. The same applies to the resistors and capacitors. However, the DFN package marked "035" has uneven lead formation. Specifically, notice how the fillet on the upper middle pin is radiused instead of filleted like the adjacent pads because the adjacent pads were able to use the traces leading to the inductor to wick into the pad. Alternatively, the inductor could just be blocking the light and not showing a smooth fillet.

    On the DFN ROM chip, you can see uniform, well formed joints. The light produces an interesting glow. You can even make out the lighting variations on the copper and soldermask thickness variations as well. It's a very fun lighting process!

    Hope this inspires you!


  • Hot Off the Presses

    Sina Roughani01/31/2021 at 02:02 0 comments

    The print just completed and I wanted to make a few notes about tolerance.

    Tolerance of others lifestyles is critical for being a good person, but tolerances on 3D printed parts are not essential for being a good person. No matter what you do, mis-fitting parts are destined to print on fresh, untested settings. I designed with this in mind and tossed in a 0.2mm hole oversize. Cura also has a setting called "slicing wall tolerance" which allows for exclusive, inclusive, and middle slicing tolerances. 

    As you can tell, for fitting 5mm LED's through 5mm holes, I should have used exclusive tolerances. The problem is, I did and it still didn't fit. On such a large print, you can't afford layer adhesion issues, so the surefire solution to preventing that is to boost your extrusion and over-extrude by setting infill "flow" to 125% and wall flow to 110%. Unfortunately that resulted in holes that are *just* too snug.

    Time to whip out the drill.

View all 3 project logs

Enjoy this project?



cmshelton2010 wrote 02/16/2024 at 00:45 point

Great Project!   You missed one! (photo of wires connected) but that gave me the idea, use last pin in loop for jumper wire. 

  Are you sure? yes | no

Billy@PocketNC wrote 03/17/2023 at 23:38 point

Did you ever make the 1m version of this Project?

  Are you sure? yes | no

Sina Roughani wrote 03/18/2023 at 03:38 point

I would do that differently. 3D printing imposes a very linear translation of digital twins to forms. When dimensional needs go beyond a machine's form, is it devoid of function? Will you make an inverse PocketNC (5 axis robotic arm with a spindle) which can carve molds as large as a tire? Why didn't I just use an umbrella and quickly injection mold hundreds of LED holders after turning a simple set of molds on a lathe? Because then it would be a matter of logistics. The same effect can be achieved with an ordinary television displaying a concentric color pattern and the Fresnel lens of a rear projection television. Not as good in the rain.

  Are you sure? yes | no

Billy@PocketNC wrote 03/20/2023 at 15:19 point

Thanks for the response, I may have miss read something in your post. 

  Are you sure? yes | no

Colin O'Flynn wrote 05/03/2021 at 21:32 point

Thanks for this great project - I was looking at purchasing an off-the-shelf unit and came across this. Did you consider selling complete units yet? If you've already figured out the process may save me some tweaking attempts on my 3D printer, and of course happy to support the creator (however your $50 mentioned feels much too low - there's no way I'm paying that little when all the other units are >$500 I've seen!). Send me a DM (I think you can do that on hackaday?) if you're setting this up still!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates