The Smell of Molten Projects in the Morning

Ed Nisley's Blog: Shop notes, electronics, firmware, machinery, 3D printing, laser cuttery, and curiosities. Contents: 100% human thinking, 0% AI slop.

Outdoor Lamp Glass Retainers

Tucking seasonal decorations into the lamps bracketing the garage door would be much easier if the rubber buttons retaining the glass panes were squishy cylinders, rather than fossilized pebbles:

Outdoor Lamp Glass Retainers - old vs new
Outdoor Lamp Glass Retainers – old vs new

The five tidy buttons on the right are black TPU, hot off the MK4’s printbed:

Outdoor Lamp Glass Retainers - PrusaSlicer preview
Outdoor Lamp Glass Retainers – PrusaSlicer preview

The flange allows for some, shall we say, dimensional variation in the installation:

Outdoor Lamp Glass Retainers - old vs new - installed
Outdoor Lamp Glass Retainers – old vs new – installed

They’re just a tube atop a cylinder:

nx = ceil(sqrt(NumButtons));
ny = nx;

union()
for (nx = [0:nx-1], ny = [0:ny-1])
  right(nx*(FlangeOD + Gap))
    back(ny*(FlangeOD + Gap))
      render()
      union() {
        cyl(FlangeHeight,d=FlangeOD,circum=true,anchor=BOTTOM);
        tube(ButtonOA.z,od=ButtonOA[OD],id=ScrewOD,circum=true,anchor=BOTTOM);
      }

Feel free to set up your own dimensions, in the unlikely event you have lamps in need of similar buttons.

Each of the three lamps has sixteen buttons and, although PrusaSlicer allows you to set the number of instances, its Arrange tool doesn’t make a tidy / compact layout. Doing the layout in OpenSCAD saves a bunch of hassle, with the overall union() turning the array into a single object.

It might not be the best decoration, but it should suffice:

Outdoor Lamp Glass Retainers - with decoration
Outdoor Lamp Glass Retainers – with decoration

Now, to make critters for the driveway …

Comments

Spam comments get trashed, so don’t bother; you’re not as clever as you think. Comment moderation may cause a delay.