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.

Author: Ed

  • Cheese Slicer: XTC-3D Epoxy Coating

    We have, as you might expect, a Favorite Cheese Slicer of no particular provenance. Being made of cheap pot metal, it left black smudges wherever it went and, decades ago, I coated it with bright red rubbery grip material. Recently, the coating became lumpy and peeling off the loose sections revealed a definite problem:

    Cheese slicer - aluminum corrosion
    Cheese slicer – aluminum corrosion

    Vigorous scrubbing with a foam sanding block and a Scotchbrite pad, interspersed with rotary wire brushing, removed the corrosion and left a slightly pitted metal frame. Protip: scrub under water and wire-brush with a vacuum hose to keep the dust under control.

    A pair of 6-32 screws, nuts, and brass sleeves, with two oil dots protecting the frame threads, provided hand grips while I wiped it down with denatured alcohol and coated it with XTC-3D epoxy:

    Cheese slicer - epoxy curing
    Cheese slicer – epoxy curing

    Turns out the mixing stick worked quite well to cover the entire thing, as the epoxy does a great job of leveling itself. I suppose wasting a tiny brush would be more professional, but …

    It quietly dripped excess epoxy into a strategically placed trash can for about ten minutes. I wiped off the final drip before the epoxy solidified, leaving a smooth layer over the end of the handle:

    Cheese slicer - reassembled
    Cheese slicer – reassembled

    It’s back in service and works as well as ever, with a handle now smooth to the touch. I suppose I could have tinted the epoxy to hide the metal, but we regard those corrosion pits as beausage.

    I’ve slathered XTC-3D on some 3D printed parts, but have no idea how durable it is; this should serve as an accelerated survival test under rather harsh usage.

    The instruction sheet says XTC-3D isn’t the most transparent epoxy they make and, indeed, the layer left in the mixing pan came out more hazy than I expected:

    XTC-3D Epoxy - thin cured layer
    XTC-3D Epoxy – thin cured layer

    They point out the haze doesn’t matter for thin surface coatings, which is certainly true.

  • Whirlpool Refrigerator Drawer Slide: Another Bracket

    Thirteen years after the original repair on the left side and eight years after I fixed the drawer slide on the right side, this happened:

    Refrigerator shelf slide - failed parts
    Refrigerator shelf slide – failed parts

    The general idea is to wrap a new bracket around the old bracket, because trying to remove the old one will probably cause more damage:

    Refrigerator shelf slide - trial assembly
    Refrigerator shelf slide – trial assembly

    A pair of screws hold the new bracket to the shelf support:

    Refrigerator shelf slide - support screw nut openings
    Refrigerator shelf slide – support screw nut openings

    Those two screws must support the entire weight of the drawer, which is exactly what broke the original all-plastic frame and slide.

    The epoxy chip and transparent plastic sheet in the first picture spaced the old aluminum bracket away from the shelf support and reduced the space beyond the new bracket enough to require drilling access holes. Fortunately, they’re hidden inside the support frame, so nobody will ever know.

    The shelf support is a huge floppy rectangle, so I clamped it to the bench vise while drilling the holes:

    Refrigerator shelf slide - upright vise clamp
    Refrigerator shelf slide – upright vise clamp

    The new bracket is on the right, with a sheet of white acrylic spacing it away from the shelf support by exactly the same distance as the angled aluminum snippet replacing the failed epoxy & plastic on the broken part:

    Refrigerator shelf slide - bracket parts
    Refrigerator shelf slide – bracket parts

    The two holes in the middle of the aluminum parts show that I used exactly the same angle brackets as raw material. It’ll be a sad day when I eventually use the last of those brackets.

    Putting the parts together, with double-stick tape holding all the parts in place, shows how they fit:

    Refrigerator shelf slide - repair trial assembly
    Refrigerator shelf slide – repair trial assembly

    And then it just snapped into place. I didn’t bother pretending solvent glue would help anything, nor did I apply any epoxy, so this whole thing hangs from those two 4-40 screws. On the other paw, their steel beats the original white plastic.

    I devoutly hope to never rebuild the actual drawer slide, but these dimensions may help somebody else out of a jam:

    Refrigerator shelf slide - dimensions
    Refrigerator shelf slide – dimensions

    The vertical “40” dimension refers to the available space from the bottom of the white plastic part to the top of the shelf support frame; the new bracket is a tad shorter than that.

    The plastic parts in that refrigerator have been a complete disappointment: were it not for my relentless repair jones, we’d likely be on our third or fourth refrigerator by now. Oddly, the cooling parts continue to chug along (*), without more than the occasional loud noise in the middle of the night.

    We’re definitely doing our part to reduce our waste stream.

    (*) The most recent freezer fan hasn’t failed yet!

  • Hydrant Wrench

    Just because I can:

    Fire Hydrant Wrench
    Fire Hydrant Wrench

    The Slic3r preview shows a bit more detail:

    Hydrant Wrench - Slic3r preview
    Hydrant Wrench – Slic3r preview

    Even an inch-thick handle wouldn’t have enough mojo for the task.

    Wikipedia has the equations you need to go from the easily measured “height” (vertex to opposite side) dimension to the pentagon’s “outside radius”, which equals the radius of the circumscribed circle needed by OpenSCAD.

    The OpenSCAD source code as a GitHub Gist:

    // Hydrant Wrench
    // Ed Nisley KE4ZNU – September 2017
    /* [Extrusion] */
    ThreadThick = 0.25; // [0.20, 0.25]
    ThreadWidth = 0.40; // [0.40]
    function IntegerMultiple(Size,Unit) = Unit * ceil(Size / Unit);
    Protrusion = 0.01; // [0.01, 0.1]
    HoleWindage = 0.2;
    //- Sizes
    /* [Dimensions] */
    NumFlats = 5; // this is not a variable for this geometry!
    Height = 39.0; // pentagon flat-to-vertex measurement
    Side = Height / 1.539;
    echo(str("Side:",Side));
    Radius = Side / 1.176;
    echo(str("Radius: ",Radius));
    WrenchDia = 2*Radius; // pentagon circumcircle diameter
    echo(str("Wrench dia:",WrenchDia));
    JawWidth = 10.0;
    JawOD = 2*JawWidth + WrenchDia;
    echo(str("Jaw OD: ",JawOD));
    WrenchThick = 5.0;
    HandleLength = 2*JawOD;
    HandleWidth = 25.0;
    //- Build things
    difference() {
    linear_extrude(height=WrenchThick,convexity=4) {
    hull() { // taper wrench body to handle
    circle(d=JawOD);
    translate([0.75*JawOD,0,0])
    circle(d=HandleWidth);
    }
    hull() { // handle
    translate([0.75*JawOD,0,0])
    circle(d=HandleWidth);
    translate([HandleLength,0,0])
    circle(d=HandleWidth);
    }
    }
    translate([0,0,-Protrusion])
    rotate(180/NumFlats)
    cylinder(d=WrenchDia,h=(WrenchThick + 2*Protrusion),$fn=NumFlats);
    translate([WrenchDia,0,WrenchThick – 3*ThreadThick])
    linear_extrude(3*ThreadThick + Protrusion,convexity=10)
    text(text=str("Fire Hydrant!"),size=8,spacing=1.20,font="Arial",halign="left",valign="center");
    }

    Sorry ’bout that … had to do it.

  • Streaming Media Player: OLED Weirdness

    Of late, the OLED displays on two RPi 3 streaming players (the others are RPi 2) have occasionally gone blank, while the players continue to work fine. I checked the logs, swapped MicroSD cards, rebuilt the images, and generally screwed around, all to no avail. The SH1106 controller has a command containing a single bit to blank the display and, perhaps, an SPI data transfer error could shut it off.

    This is much harder to explain:

    Mirror-image OLED display
    Mirror-image OLED display

    There’s a hardware command to flip the display top-to-bottom, not left-to-right. The Luma OLED driver can rotate the display in 90° increments, but AFAICT not reflect it.

    Yes, they’re networked, but, no, they’re not directly exposed to the Intertubes.

    Changing streams had no effect. Shutting down and rebooting restored normal operation.

    There’s been exactly one such failure so far, so I lack evidence.

    I have no clue what’s going on.

  • 60 kHz Preamp: Antenna Input Tickler

    The pair of air-wired inductors and resistors simulate the 60 kHz resonant loop antenna:

    60 kHz Preamp - antenna input tickler
    60 kHz Preamp – antenna input tickler

    I didn’t include a pair of capacitors to simulate the antenna’s stray capacitance, as the resonance is so broad and my signal so strong that pretty nearly anything will work.

    The current transformer injecting a differential signal into the “antenna” came without provenance; it measures 3 Ω DC resistance and 140 mH inductance, so it most likely has a bazillion turns. A 50 pF cap would resonate it at 60 kHz, where both reactances would be 53 kΩ, which also doesn’t matter.

    The alligator clips come from the LF Crystal Tester‘s buffer amp, with the Arduino Nano loaded with sine generator firmware. A 100 nF cap blocks the buffer’s DC bias, a 3.3 kΩ resistor (inside the heatstink tubing) knocks the signal down a bit, and it works pretty well:

    DDS ant drive - Preamp out
    DDS ant drive – Preamp out

    The upper trace is the DDS buffer output at the clip leads and the lower trace is the preamp output.

    The output of the LT1920 instrumentation amplifier (not shown) is 4.7 mVrms with a 20 dB gain, so the differential input runs a bit under 500 μV at the antenna terminals. That’s hotter than you’d expect from real WWVB RF, at least in the off season.

    Looking in the other direction, the net gain through LF353 bandpass filter and resonator works out to 22 dB, so the resonator isn’t all that lossy right in the middle of its passband. Yes, I’m cheating: I tweaked the series cap for maximum output at 60.000 kHz input.

    Good enough for a first pass, though, and makes for easy measurement.

  • Monthly Science: Raising a Monarch Butterfly

    A Monarch butterfly laid eggs in late July. On the 29th of July they looked like this:

    Monarch Egg - focus stacked
    Monarch Egg – focus stacked

    By August 2, a pair of caterpillars had hatched and grew to 3 mm:

    Monarch caterpillar - 3 mm - 2017-08-02
    Monarch caterpillar – 3 mm – 2017-08-02

    A day later, they were 4 mm long:

    Monarch caterpillars - 4 mm - 2017-08-03
    Monarch caterpillars – 4 mm – 2017-08-03

    They really were sort of blue-ish with green hints:

    Monarch caterpillar 1 - 4 mm - 2017-08-03
    Monarch caterpillar 1 – 4 mm – 2017-08-03

    And:

    Monarch caterpillar 2 - 4 mm - 2017-08-03
    Monarch caterpillar 2 – 4 mm – 2017-08-03

    By August 9, one had had more mature coloration:

    Monarch caterpillar - 2017-08-09
    Monarch caterpillar – 2017-08-09

    The other caterpillar had vanished; we assume it got out of the aquarium and wandered off.

    Apparently, the front end of the caterpillar (at the bottom of the picture) has a hard windshield reflecting the ring of LEDs around the camera lens. The caterpillar eats its skin after each molting, except for the windshield:

    Monarch Windshield - 2017-08-09
    Monarch Windshield – 2017-08-09

    We kept fresh milkweed branches in a vase and the caterpillar ate almost continuously:

    Monarch caterpillar - 2017-08-13
    Monarch caterpillar – 2017-08-13

    By August 15, the caterpillar was ready for the next stage in its life. At 10 in the morning it had attached itself to the screen covering the aquarium and assumed the position:

    Monarch caterpillar - starting chrysalis - 2017-08-15
    Monarch caterpillar – starting chrysalis – 2017-08-15

    It transformed into a chrysalis by 5:30 PM:

    Monarch Chrysalis - with skin
    Monarch Chrysalis – with skin

    The discarded skin remained loosely attached until I carefully removed it.

    What look like small yellow spots are actually a striking metallic gold color.

    Eleven days later, on August 26 at 9 AM, the chrysalis suddenly became transparent:

    Monarch chrysalis - ready - left
    Monarch chrysalis – ready – left

    And:

    Monarch chrysalis - ready - right
    Monarch chrysalis – ready – right

    The shape of the butterfly becomes visible in reflected light:

    Monarch chrysalis - ready - ventral detail
    Monarch chrysalis – ready – ventral detail

    The gold dots and line remained visible.

    The magic happened at 3 PM:

    Monarch chrysalis - emerging - unfolding
    Monarch chrysalis – emerging – unfolding

    The compacted wings emerge intense orange on the top and lighter orange on the bottom:

    Monarch unfolding - left
    Monarch unfolding – left

    The butterfly took most of the day to unfurl and stiffen its wings into flat plates:

    Monarch unfolding - dorsal
    Monarch unfolding – dorsal

    And:

    Monarch unfolding - right
    Monarch unfolding – right

    By 8 PM it began exploring the aquarium:

    Monarch unfolded - right
    Monarch unfolded – right

    As adults, they sip nectar from flowers, but don’t feed for the first day, so we left it in the aquarium overnight.

    At 10 AM on August 27, we transported it to the goldenrod in the garden, where it immediately began tanking operations:

    Monarch on Milkweed - left
    Monarch on Milkweed – left

    A few minutes later, it began sun-warming operations:

    Monarch on Milkweed - dorsal
    Monarch on Milkweed – dorsal

    Mary watched it while she was tending the garden and, an hour or so later, saw it take off and fly over the house in a generally southwest direction. It will cross half the continent under a geas prohibiting any other action, eventually overwinter in Mexico with far too few of its compadres, then die after producing the eggs for a generation beginning the northward journey next year.

    Godspeed, little butterfly, godspeed …

    In the spirit of “video or it didn’t happen”, there’s a 15 fps movie of the emergence taken at 5 s/image.

  • Groundhog in the Compost Bin

    Mary confronted this critter in the garden, whereupon it fled into the compost bin:

    Groundhog in the compost bin - front
    Groundhog in the compost bin – front

    She barricaded it with spare tomato cages across the bin’s entrance, I wedged an aluminum sheet behind the cages, and we got the stinkeye for our efforts:

    Groundhog in the compost bin - left
    Groundhog in the compost bin – left

    I deployed the hose, watered it for a few minutes, and we left it to consider its options. Groundhogs are pretty much waterproof, but we hoped the wetdown would be sufficiently unpleasant to mark the garden as “Here be dragons” in its mental map.

    After an hour, it had vanished. We know from past experience that groundhogs can climb up-and-over the chain link fence surrounding the compost bin (it was a dog pen for the previous owners), although it knocked down the aluminum sheet and may have exited through the garden.

    It looks well-fed and ready for winter.

    Searching for groundhog will reveal previous encounters with its ancestors & relatives.