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: Sewing

Fabric arts and machines

  • USB Charger: Safety FAIL

    USB Charger: Safety FAIL

    Mary reported a problem unplugging the USB charger powering the light pad (the successor to the pad I repaired) she uses for quilting layouts:

    USB Charger - as found
    USB Charger – as found

    Yes, that blade is sticking out of the hot (“Line”) side of the outlet.

    The only way into the charger was through its other end:

    USB charger - interior top
    USB charger – interior top

    Because I had no intention of returning it to service, I tried pushing the errant blade back in place, only to have it overshoot the mark and bulldoze various parts aside:

    USB charger - PCB blade contacts
    USB charger – PCB blade contacts

    The two upright shapes contact the blades, but do not lock them in place. The PCB pulled easily out of the case, with no objection from the remaining (“Neutral”) blade.

    The blades are simple steel bars press-fit into the plastic case, without holes / dimples / notches to lock them into the plastic. As far as I could tell, they were not molded in place.

    I tossed the corpse into the e-waste box, extracted another USB charger from the Box o’ USB Chargers and returned the light pad to service.

    I do have a few Genuine UL Listed USB chargers, but these are not among them.

  • Sewing Notions Drawer Pull Rethreading

    Sewing Notions Drawer Pull Rethreading

    A small sewing notions cabinet, once my mother’s, now holds some of Mary’s supplies and, a few days ago, had one of its drawer pulls fall off. While preemptively tightening all the screws, I found one no longer held onto its pull:

    Notions drawer pull - parts
    Notions drawer pull – parts

    They don’t make drawer pulls like that any more!

    As I see things, it can be forgiven for losing its grip after nearly a century.

    Thread the screw in as far as it will go and lay the pull flat on the bench vise anvil:

    Notions drawer pull - hammering setup
    Notions drawer pull – hammering setup

    A few gentle whacks with a pin punch on top and bottom, plus a tap on each side, compressed the pull’s remaining threads around & into the screw:

    Notions drawer pull - reshaped
    Notions drawer pull – reshaped

    Put it back in its drawer, snug the screw, and it’s all good.

    That should suffice for at least the remainder of its first century …

  • Kenmore 158 Sewing Machine: COB LEDs Redux

    Kenmore 158 Sewing Machine: COB LEDs Redux

    Having harvested the COB LED lighting from the Kenmore 158 Mary gave to a friend, I took advantage of a sewing pause to install the hardware on the 158 she now uses:

    Kenmore 158 - needle light detail
    Kenmore 158 – needle light detail

    That’s the sandblasted presser foot atop the original glare-y metal plates.

    For the record, this is inside the machine’s power connector:

    Kenmore 158 - power connector wiring
    Kenmore 158 – power connector wiring

    Power for the original glowworm incandescent light comes from the two rightmost terminals: 120 VAC switched by the machine’s power button. Those terminals now go to a new, much more flexy, cable for the 12 VDC power supply, with a step-up supply for the needle LEDs.

    An overview of the wire routing:

    Kenmore 158 - COB LED wire routing
    Kenmore 158 – COB LED wire routing

    There’s now a 9-pin JST SM connector between the repurposed serial cable and the LEDs, mostly so I can add another light bar to the front in the unlikely event it becomes necessary.

    The rear light bar wire once again burrows into the machine above the presser foot lever:

    Kenmore 158 - COB LED bar wire routing
    Kenmore 158 – COB LED bar wire routing

    All the LED wiring fans out through the endcap:

    Kenmore 158 - COB LED needle heatsink
    Kenmore 158 – COB LED needle heatsink

    You can just barely see the edge of the strip of LEDs epoxied to the bottom of the machine nose, on the right of the needle.

    If I were inclined to rebuild the needle LEDs, I’d use flexy silicone wiring instead of the Teflon insulated coax. The black insulation wouldn’t be nearly as pretty, but it’d be *way* easier to cut to length and solder.

    The patient survived the operation and sewing should resume shortly …

  • HQ Sixteen: Under-arm Lights

    HQ Sixteen: Under-arm Lights

    With the nose ring lights in place, I soldered up eight more 24 V LED strips to light the quilt under the HQ Sixteen’s arm:

    HQ Sixteen - under-arm lights - bottom view
    HQ Sixteen – under-arm lights – bottom view

    A simple fixture aligned the strips for soldering:

    HQ Sixteen - under-arm lights - soldering fixture
    HQ Sixteen – under-arm lights – soldering fixture

    I intended to peel the masking tape off the glossy cardboard, then use it to keep the strips aligned while I pressed the PSA adhesive on the back of the strips to the machine. The silicone molded over the LEDS turned out to be supremely un-stick-able to the tape and the strips got far more handling than I planned, but I think the adhesive will work.

    The cable from the power supply now has a pair of JST SM connectors on the end. Although crimping two conductors into the same pin is not good practice, all 14 of the LED strips draw an aggregate of maybe 130 mA, so I think it’ll suffice.

    The JST connectors hide behind the ribbon cable going to the machine’s front panel, so there’s not a lot of basis for arguing they’re unsightly:

    HQ Sixteen - under-arm lights - side view
    HQ Sixteen – under-arm lights – side view

    The finished part of the quilt passes under the bottom bar on the left (the rear of the machine table) and forms an ever-increasing roll around the top bar; the white fabric leader attaches to the edge of the quilt. The LED strips illuminate the in-progress part of the quilt under the arm and should be far enough forward to not snag on the rolled-up finished part.

    I think there’s now enough light to work with:

    HQ Sixteen - under-arm lights - top view
    HQ Sixteen – under-arm lights – top view

    We recently decided the motor stall Heisenbug has vanished, perhaps due to my re-soldering the motor power supply components on the PCB. It’s hard to tell with Heisenbugs, but sometimes they decohere into a desirable state.

    After the better part of a year, Mary’s vintage HQ Sixteen runs better than new!

    A blog search unearths an extensive project in reverse chronologic order.

  • HQ Sixteen: Nose Ring Lights Power Supply

    HQ Sixteen: Nose Ring Lights Power Supply

    With the quilt off the HQ Sixteen, I could install the 24 V power supply for the Nose Ring Lights:

    HQ Sixteen Nose Ring Lights - power supply installed
    HQ Sixteen Nose Ring Lights – power supply installed

    IMO, black nylon screws look spiffier than brass.

    The solid model shows the covers have a 2 mm overlap with the power supply case to keep them lined up:

    HQ Sixteen Nose Ring Lights - power supply cover - solid model
    HQ Sixteen Nose Ring Lights – power supply cover – solid model

    I managed to reuse three of the five holes from the previous 12 V power supply and drill only three more:

    HQ Sixteen Nose Ring Lights - power supply detail
    HQ Sixteen Nose Ring Lights – power supply detail

    The tops of the power supply ears aren’t quite flat, giving the standoffs a slight tilt that the covers mostly drag back into alignment.

    The M4 brass standoffs screw into holes tapped in the thick plastic, thus eliminating nuts inside the power pod:

     HQ Sixteen Nose Ring Lights - power supply wiring
    HQ Sixteen Nose Ring Lights – power supply wiring

    The yellow silicone tape wraps two pairs of Wago connectors that dramatically simplify electrical connections in anything with enough space for their chonky bodies.

    In the unlikely event you need such things, the original post links the OpenSCAD source code.

    With the power supply in place, I think I can put some LED strips under the arm of the machine to light up more of the quilt than the nose lights can reach. More pondering is in order.

  • HQ Sixteen: Nose Ring Lights

    HQ Sixteen: Nose Ring Lights

    We don’t know what the proper term might be for this part of the machine, but it looks sorta like a nose and the lights form most of a ring around it, so I’m going with “Nose Ring Lights”:

    HQ Sixteen Nose Ring lights - front view
    HQ Sixteen Nose Ring lights – front view

    The general idea is to put more light on the quilt than the Chin Light, which looked pretty good until the COB LED strip started flickering as the LEDs failed.

    Handi-Quilter sells a ring light for machines manufactured a decade later than ours, but it uses a built-in USB jack this machine lacks.

    One of two (apparently) unused M4 holes on the left side of the machine frame suggested a mounting point for a 3D printed bracket:

    HQ Sixteen Nose Ring Lights - solid model
    HQ Sixteen Nose Ring Lights – solid model

    The ramp matches the 3° (-ish) mold draft of the machine frame, which I initially ignored by angling the tab, but a tilted frame looked awful; it’s now aligned with local horizontal..

    A few iterations got all the pieces & holes in their proper places:

    HQ Sixteen Nose Ring lights - iterations
    HQ Sixteen Nose Ring lights – iterations

    The smaller (rampless) bracket has three LED strips, but a quick test showed more light would be better:

    HQ Sixteen Nose Ring lights - bottom view
    HQ Sixteen Nose Ring lights – bottom view

    The lack of a transparent-ish cover is obviously unsuitable for a commercial product, but the key design goal is to not interfere with spreading as much light as possible across as much of the quilt as possible. The black JB Weld Plastic Bonder blobs keep the 24 VDC supply out of harm’s way, which is as good as it needs to be for now.

    The bracket has three sides, because the right side of the machine has all the thread guide hardware. Putting anything over there seemed likely to interfere with either thread movement or fingers making adjustments.

    Fortunately, the wider bracket doesn’t stick out too far beyond the machine frame and the doubled LED strips create a much smoother light pool:

    HQ Sixteen Nose Ring lights - left front view
    HQ Sixteen Nose Ring lights – left front view

    Yes, the quilt is focused and the LED frame is blurred.

    The larger light-emitting area reduces the shadow under the left rod (supporting the ruler foot) enough to be unobjectionable.

    A 0.2 mm layer thickness transforms the smooth ramp into stair steps:

    HQ Sixteen Nose Ring Lights - PrusaSlicer
    HQ Sixteen Nose Ring Lights – PrusaSlicer

    They’re inconspicuous after the bracket is installed.

    The Chin Light ran on 12 V and these strips require 24 V, so the OpenSCAD code creates a pair of endcaps for the new supply, which is of course completely different than the old supply. Setting that up must await quilt completion.

    The OpenSCAD source code as a GitHub Gist:

    // HQ Sixteen Nose Ring Lights
    // Ed Nisley – KE4ZNU
    // 2025-05-23
    include <BOSL2/std.scad>
    Layout = "Show"; // [Show,Build,NosePlan,PowerCap]
    // Number of side-by-side LED strips
    Strips = 2;
    /* [Hidden] */
    HoleWindage = 0.2;
    Protrusion = 0.1;
    NumSides = 3*3*4;
    $fn=NumSides;
    ID = 0;
    OD = 1;
    LENGTH = 2;
    Gap = 5.0;
    WallThick = 5.0; // default thickness for things
    NoseRadius = 6.0; // corner roundoff
    NoseOA = [44.0,36.5]; // overall nose size
    NoseAngles = [87,87]; // front & rear inward angles wrt left side
    NoseCenters = [ // centers of circles defining the nose corners
    [NoseRadius, NoseOA.y/2 – NoseRadius],
    [NoseRadius,-(NoseOA.y/2 – NoseRadius)],
    [NoseOA.x – NoseRadius, NoseOA.y/2 – NoseRadius – (NoseOA.x – 2*NoseRadius)*tan(90 – NoseAngles[0])],
    [NoseOA.x – NoseRadius,-(NoseOA.y/2 – NoseRadius – (NoseOA.x – 2*NoseRadius)*tan(90 – NoseAngles[1]))],
    ];
    LEDMargin = 1.0;
    LEDStrip = [41.5 + LEDMargin,8.0 + LEDMargin,1.8 + 0.2]; // 24 V COB LED strip unit + windage
    LEDBaseOA = [LEDStrip.x + Strips*LEDStrip.y,NoseOA.y + 2*Strips*LEDStrip.y,WallThick]; // LED mount
    DraftAngle = 3.0; // angle of frame wrt horizontal at right end of nose
    DraftWedge = [NoseOA.x,NoseOA.y + 2*LEDStrip.y,NoseOA.x*tan(DraftAngle)];
    HoleOffset = [-10.0,5.5,DraftWedge.z + 10.0]; // from left front corner of nose
    HolePosition = HoleOffset + [0,-NoseOA.y/2,WallThick]; // absolute coordinates from origin
    Screw = [4.0 + HoleWindage,9.0,2.0]; // LENGTH=button head
    Bracket = [WallThick,Screw[OD] + 4.0,HoleOffset.z + Screw[OD/2] + 2.0 + WallThick];
    Supply = [46.0,30.0,21.0]; // 24 VDC power supply
    SupplyScrewOffset = 5.0; // … M4 screw hole from end of supply case
    CapWall = 3.0;
    CapRadius = CapWall – 1.0;
    CapInset = 1.0;
    CapOA = [20.0,Supply.y + 2*CapWall,Supply.z + CapWall]; // x & y to cover existing holes
    //———-
    // Define Shapes
    //—– 2D outline of nose piece just under frame casting
    module NosePlan() {
    hull()
    for (p = NoseCenters)
    translate(p) circle(r=NoseRadius);
    }
    //—– LED mounting plate
    module Mount() {
    union() {
    difference() {
    union() {
    right(LEDBaseOA.x/2 – Strips*LEDStrip.y)
    cuboid(LEDBaseOA,rounding=WallThick/2,except=BOTTOM,anchor=BOTTOM);
    up(LEDBaseOA.z) left(-HoleOffset.x/2)
    yrot(DraftAngle)
    cuboid(DraftWedge,rounding=WallThick/2,edges="Z",anchor=LEFT+BOTTOM);
    }
    down(Protrusion)
    linear_extrude(LEDBaseOA.z + DraftWedge.z + Protrusion)
    NosePlan();
    if (Strips > 1)
    translate([HolePosition.x – Bracket.x/2,HolePosition.y – Bracket.y,-Protrusion])
    cyl(LEDBaseOA.z + 2*Protrusion,d=4.0,anchor=BOTTOM);
    }
    difference() {
    union() {
    translate([HolePosition.x,HolePosition.y,(Bracket.x/2)*sin(DraftAngle)])
    left(Bracket.x)
    cuboid(Bracket,rounding=WallThick/2,edges=LEFT,anchor=BOTTOM+LEFT);
    translate([HolePosition.x – Bracket.x/2,HolePosition.y,0]) // rounding filler
    cuboid([LEDStrip.y,Bracket.y,WallThick],anchor=BOTTOM+LEFT);
    }
    translate(HolePosition)
    xrot(180/6) xcyl(l=NoseOA.x,d=Screw[ID],$fn=6);
    }
    }
    }
    //—– Endcap for power supply
    module EndCap() {
    difference() {
    cuboid(CapOA,rounding=CapRadius,except=BOTTOM,anchor=LEFT+BOTTOM);
    right(CapOA.x – CapWall) down(Protrusion)
    cuboid(Supply + [0,0,Protrusion],anchor=RIGHT+BOTTOM);
    right(CapInset + SupplyScrewOffset)
    zcyl(l=2*CapOA.z,d=Screw[ID],$fn=6,anchor=BOTTOM);
    }
    }
    //———-
    // Build things
    if (Layout == "NosePlan") {
    NosePlan();
    }
    if (Layout == "PowerCap") {
    EndCap();
    }
    if (Layout == "Show") {
    Mount();
    ctr = 80;
    ofs = Supply.x/2 – CapInset;
    left(ctr – ofs)
    EndCap();
    left(ctr + ofs)
    xflip()
    EndCap();
    color("Silver",0.6)
    left (ctr)
    cuboid(Supply,anchor=BOTTOM);
    }
    if (Layout == "Build") {
    Mount();
    back((LEDBaseOA.y + CapOA.y)/2 + Gap) right(Gap) up(CapOA.z) zflip()
    EndCap();
    back((LEDBaseOA.y + CapOA.y)/2 + Gap) left(Gap) zrot(180) up(CapOA.z) zflip()
    EndCap();
    }

  • HQ Sixteen: Chin Light Failure

    HQ Sixteen: Chin Light Failure

    The COB LED module I stuck under the HQ Sixteen’s chin worked well at first:

    HQ Sixteen Chin Light - results
    HQ Sixteen Chin Light – results

    Last month it began to flicker and I eventually caught it in the act:

    HQ Sixteen Chin Light - first failure
    HQ Sixteen Chin Light – first failure

    That’s taken with the phone’s selfie camera from the quilt’s viewpoint, which is much too close for the camera’s focus, but you get the general idea.

    Pulling it off, putting it on the bench, applying 12 V, and letting it heat up produced this:

    HQ Sixteen Chin Light - hot failure
    HQ Sixteen Chin Light – hot failure

    That’s with the voltage backed off to 8 V to avoid burning out the exposure.

    Letting it cool a bit:

    HQ Sixteen Chin Light - cool failure
    HQ Sixteen Chin Light – cool failure

    You may recall I stuck the aluminum backing plate to the HQ Sixteen’s case aluminum body with some heatsink tape and the thing ran just warm to the touch, so I suspect the initial failure had little-or-nothing to do with overheating and a lot to do with buying stuff from eBay.

    That suspicion is supported by having two more of those in the drawer with their failed chips circled.

    So a better design is in order …