So for a long time I’ve had my Canon S5 IS camera capable of macro and ‘super-macro’ (focusing down to 0mm from the lens), but the main problem that exists is the lack of sufficient and even lighting on the subject to produce a quality, low noise, sharp image. Since ambient light typically comes from above the camera, the lens itself produces a shadow below the camera which is visible in these close up photos, a typical solution is to use a ring flash or ring light around the lens to provide even lighting coverage of the subject.

Instead of spending a few hundred dollars on a ring light or flash by Canon, I decided to hack my own. Since my camera already has a 58mm lens tube adapter and UV filter, I decided to laser cut an acrylic ring, sand one side to a ‘frosted’ finish for light diffusion, and glued a common 60mm LED ring light (runs from 12VDC unregulated) onto this acrylic ring. After sanding the inner ring for a friction fit, the ring was press-fit onto the UV filter.

Press fit LED ring onto the lens adapter/filter.

This sample image shows just how even the lighting is at close range in the foreground

Here is another sample close up image showing a 9V battery with background lighting, with and without foreground lighting from the LED ring light.
I plan to order in another 58mm lens adapter and a UV filter so I can simply swap the regular lens tube for the macro-light version without needing to screw and unscrew the 58mm UV filter repeatedly.
Another improvement is to properly terminate the power cable on both ends, and possibly make a small belt-pack with a battery. The lamp draws 180mA at 12V, thus 2.16W; using a small switch mode circuit I could probably make a 2xAA to 12V dc-dc converter. Another alternative is to use 14450 sized Li-ion batteries (same as AA), and design the switch mode circuit to use either AA or 14500 batteries (2.7 vs 1.5V per cell, input range varies but output should remain at 12V).
Total cost, about $10 ($8 ring light, $1-2 acrylic) plus the cost of the new adapter and filter.
1024
