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.

Tag: Improvements

Making the world a better place, one piece at a time

  • Bathroom Door Retainer: Bigger and Stronger

    Bathroom Door Retainer: Bigger and Stronger

    After three years, the retainer holding the front bathroom door open against winds blowing through the house on stormy days finally fractured, right at the top of the towel rack where you’d expect it:

    Bathroom Door Retainer - fractured
    Bathroom Door Retainer – fractured

    I was all set to add reinforcing pins and whatnot, then came to my senses and just made the whole thing a few millimeters larger:

    Bathroom Door Retainer - stronger
    Bathroom Door Retainer – stronger

    Customer feedback indicates white blends better with the background.

    I made a few minor tweaks to the original design, including slightly larger bumps to hold it against the towel bar that, regrettably, put corresponding gouges into the bar. Who knew they used such soft plastic back in the day?

    The OpenSCAD source code as a GitHub Gist:

    // Bathroom Door Retainer
    // Ed Nisley KE4ZNU – May 2017
    // 2020-07 beef up, particularly at top of bar
    Layout = "Show"; // [Show, Build]
    //——-
    //- Extrusion parameters must match reality!
    /* [Hidden] */
    ThreadThick = 0.20;
    ThreadWidth = 0.40;
    HoleWindage = 0.2;
    Protrusion = 0.1; // make holes end cleanly
    function IntegerMultiple(Size,Unit) = Unit * ceil(Size / Unit);
    //——-
    // Dimensions
    /* [Dimensions] */
    TowelBarSide = 20.5; // towel bar across flat side
    TowelBarAngle = 45; // rotation of top flat from horizontal
    BumpOD = 2.0; // retaining ball
    DoorOffset = 14.0; // from towel bar to door
    DoorThick = 37.0;
    WallThick = 8.0; // minimum wall thickness
    PlateThick = 4.0; // … slab
    RetainerDepth = 15.0; // thickness of retaining notch
    NumSides = 6*4;
    CornerRad = WallThick;
    BarClipOD = TowelBarSide*sqrt(2) + 2*WallThick;
    BarClipRad = BarClipOD/2;
    OAH = RetainerDepth + PlateThick;
    module LatchPlan() {
    union() {
    linear_extrude(height=OAH,convexity=4)
    difference() {
    union() {
    circle(d=BarClipOD,$fn=NumSides);
    hull()
    for (i=[0,1], j=[0,1])
    translate([i*(BarClipRad + DoorOffset + DoorThick + WallThick – CornerRad),j*(BarClipRad – CornerRad)])
    circle(r=CornerRad,$fn=4*4);
    }
    rotate(TowelBarAngle) // towel bar shape
    square(size=TowelBarSide,center=true);
    translate([0,-TowelBarSide/sqrt(2)]) // make access slot
    rotate(-TowelBarAngle)
    square(size=[2*TowelBarSide,TowelBarSide],center=false);
    }
    for (a=[0:180:360])
    rotate(a + TowelBarAngle)
    translate([TowelBarSide/2,0,OAH/2])
    rotate([90,0,45])
    sphere(d=BumpOD,$fn=4*3);
    }
    }
    module Latch() {
    difference() {
    LatchPlan();
    translate([BarClipRad + DoorOffset,-BarClipRad/2,-Protrusion])
    cube([DoorThick,BarClipOD,RetainerDepth + Protrusion],center=false);
    }
    }
    //——-
    // Build it!
    if (Layout == "Show") {
    Latch();
    }
    if (Layout == "Build") {
    translate([0,0,OAH])
    rotate([180,0,0])
    Latch();
    }

    Done!

  • Makergear M2 Extruder Motor Debugging

    Makergear M2 Extruder Motor Debugging

    While sorting out an extrusion problem on the Makergear forum, I suggested marking the motor shaft and the filament drive shaft to see if the motor pinion inside the gearbox had worn out: if the motor turns and the filament gear doesn’t, then it’s dead inside.

    For future reference, you mark the motor shaft thusly:

    Makergear M2 - filament drive motor - rear shaft
    Makergear M2 – filament drive motor – rear shaft

    Two marks on the filament drive gear tell you if the shaft is turning and if the gear is slipping on the shaft:

    Makergear M2 - filament drive gear
    Makergear M2 – filament drive gear

    A closeup of an earlier, much coarser, drive gear:

    M2 - Filament Drive Gear
    M2 – Filament Drive Gear

    It all worked out well in the end!

  • USB Media Card Reader: Contrast Improvement

    USB Media Card Reader: Contrast Improvement

    Consumer electronics designers seem to favor low- or no-contrast markings, with this USB reader falling on the vanishing end of the spectrum:

    USB card reader - low-contrast slots
    USB card reader – low-contrast slots

    I poke the MicroSD card from the AS30V helmet camera into the smaller slot on the top surface, but, contrary to what’s revealed by the camera’s flash, the slot is a black-on-black target.

    Well, I finally fixed that:

    USB card reader - high-contrast slots
    USB card reader – high-contrast slots

    Although white tape surely would have sufficed, the roll of fluorescent red came to hand and that’s what it’ll be. The CompactFlash and Memory Stick slots on the front don’t see much traffic and have better access.

    I slapped tape on case, trimmed the slots with a razor knife, and declared victory.

    Much better!

  • Soft Vise Jaws

    Soft Vise Jaws

    A Round Tuit™ finally arrived for this long-delayed project:

    Vise soft jaws - installed
    Vise soft jaws – installed

    They’re bandsawed from an impossibly heavy-duty U-shaped aluminum extrusion salvaged from a scrap pile; the flanges are 6 and 7 mm thick. I’ll put in a good word for the Proxxon 10/14 TPI blade, because it goes through aluminum plate like butter.

    The wood strip under the top flange raises the fillet on the interior angle enough to let the extrusion sit flat on the top vise jaw and square against the gripping side. It’s held in place with double-sided carpet tape.

    They’re faced with a rubber sheet I thought was twice as thick when I picked it out of the Big Box o’ Squishy Sheets, but turned out to be two thinner sheets invisibly stuck together. Carpet tape holds one of the sheets to the jaw; I expect the other sheet to fall off in short order.

    You’re supposed to embed neodymium magnets in the jaws to hold them to the vise. As far as I can tell, they’re perfectly happy to just sit there all by themselves and, anyway, magnets would grow lethally sharp and bulky steel fur coats in short order.

    Squaring the long edge didn’t pose much of a problem:

    Vise soft jaws - squaring edge
    Vise soft jaws – squaring edge

    Tidying the ends, however, required more setup:

    Vise soft jaws - squaring ends
    Vise soft jaws – squaring ends

    That’s the Sherline Tilting Angle Plate at 90°, with barely enough room on the far side for the base of a Starrett Double Square to set the extrusion vertical; the hand clamp holds it in place while tightening the step clamps. It sits on an aluminum sheet to put its upper end three smidgens over the angle plate, letting me flycut one smidgen for a clean edge.

    Now I can retire the old soft jaws, which have served for too many decades and are far too ugly to show; improvised from weatherstripping glued to bent-square copper pipe and intended as a quick fix. You know how that goes …

  • Garden Soaker Hose Repairs In Use

    Garden Soaker Hose Repairs In Use

    Just for completeness, here’s what the various soaker hose clamps look like in the garden, as solid models only let you visualize the ideal situation:

    Soaker Hose Connector Clamp - Show view
    Soaker Hose Connector Clamp – Show view

    This one prevents a puddle in the path to the right:

    Soaker hose repairs in situ - clamp
    Soaker hose repairs in situ – clamp

    Bending the hoses around the end of a bed puts them on edge, with this clamp suppressing a shin-soaking spray to the left:

    Soaker hose repairs in situ - end-on clamp
    Soaker hose repairs in situ – end-on clamp

    The clamp at the connector closes a leak around the crimped brass fitting, with the other two preventing gouges from direct sprays into the path along the bottom of the picture:

    Soaker hose repairs in situ - clamps and connector fix
    Soaker hose repairs in situ – clamps and connector fix

    All in all, a definite UI improvement!

    As far as I can tell, we have the only soaker hose repairs & spritz stoppers in existence. Hooray for 3D printing!

  • USB Charger: Abosi Waveforms

    USB Charger: Abosi Waveforms

    For comparison with the Anonymous White Charger of Doom, I bought a trio of Abosi USB chargers:

    Abosi charger - dataplate
    Abosi charger – dataplate

    The symbology indicates it’s UL, but not CE, listed. Consumer Reports has a guide to some of the symbols; I can’t find anything more comprehensive.

    Applying the same 8 Ω + 100 µF load as before:

    Abosi charger - 8 ohm 100 uF detail - 100 ma-div
    Abosi charger – 8 ohm 100 uF detail – 100 ma-div

    The voltage (yellow) and current (green, 100 mA/div) waveforms look downright tame compared to some of the other chargers!

    I made a cursory attempt to crack the case open, but gave up before doing any permanent damage. Hey, that UL listing (and, presumably, the interior details) means they’re three times the price of those Anonymous chargers!

  • JPG Recovery From a Camera FAT Filesystem

    JPG Recovery From a Camera FAT Filesystem

    You can do it by hand, as I used to, or use recoverjpeg:

    dmesg | tail
    cd /tmp
    sudo dcfldd if=/dev/sde1 of=pix.bin bs=1M count=100
    recoverjpeg pix.bin 
    ristretto image00*
    

    Nothing prizewinning, but better than no picture at all:

    Garage Robin - recovered image
    Garage Robin – recovered image

    Note that you start by copying a reasonable chunk of the partition from the Memory Stick / (micro)SD Card first, to prevent a bad situation from getting worse.

    Now I can remember the easy way the next time around this block …