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.

The New Hotness

  • Metal Spring Clamp: TPU Jaw Pads

    Setting up the Makergear M2 to print TPU (eSun 95A) involved a cold pull to get the remaining PETG out of the nozzle, some manual flushing, then printing test cubes to figure out a reasonable speed / temperature combination:

    Makergear M2 - first TPU test cube
    Makergear M2 – first TPU test cube

    A 10 mm solid cube came out overstuffed and the first 20 mm cube lacked enough infill to hold its top up, but the third cube looked surprisingly good at 230 °C and 30 mm/s with 15% 3D Honeycomb infill:

    Makergear M2 - TPU test cubes
    Makergear M2 – TPU test cubes

    With that settled, I conjured pairs of soft (-ish) jaw pads for the far-too-many metal spring clamps having worn out their vinyl pads:

    Spring clamp jaws - installed
    Spring clamp jaws – installed

    Those were the first attempt and worked well enough to suggest nicely rounded endcaps instead of flat cylinders:

    Spring Clamp Jaws - show view
    Spring Clamp Jaws – show view

    Unlike the first version, they now build standing on their rectangular clamp jaw opening:

    Spring Clamp Jaws - slicer preview
    Spring Clamp Jaws – show view

    Those two groups have different lengths (1 inch and 1-⅛ inch) with PrusaSlicer combining the OpenSCAD program’s output.

    The as-built pads are essentially un-photographable:

    Spring clamp jaws - group build
    Spring clamp jaws – group build

    TPU is tough enough to make the single-layer brim un-tearable, but they’re easy enough to separate & trim with scissors. Even the 5 mm brim has a tenuous grip on glass + Suave hair “spray” applied from a dropper bottle, so I should try a BuildTak sheet that’s been on the to-do pile for far too many years.

    Similarly, TPU is flexy enough to make a precise fit unnecessary: push firmly to force the pads onto the jaws and you’re done.

    The OpenSCAD source code as a GitHub Gist:

    // Spring clamp replacement jaw pad
    // Ed Nisley – KE4ZNU
    // 2025-04-26
    include <BOSL2/std.scad>
    Layout = "Show"; // [Show,Build,Clamp]
    Ends = "Round"; // [Flat,Round]
    Sets = 1;
    /* [Hidden] */
    HoleWindage = 0.2;
    Protrusion = 0.1;
    NumSides = 2*3*4;
    WallThick = 2.0;
    CushionOD = 10.0;
    CushionStem = 10.0;
    JawAngle = 60/2; // just for Show
    JawWidth = 1.000*INCH; // clamps are hard-inch sizes: 1.0 and 1.125
    Jaw = [1.5,50,JawWidth]; // roughly one jaw
    Gap = 2.0;
    $fn = 2*3*4;
    //———-
    // Define objects
    //—–
    // Clamp jaw
    module Clamp() {
    up(WallThick)
    cuboid(Jaw,anchor=BOTTOM+BACK);
    }
    module Pad() {
    difference() {
    union() {
    cyl(d=CushionOD,h=Jaw.z + 2*WallThick,anchor=BOTTOM,
    rounding = (Ends == "Flat") ? 0 : CushionOD/2);
    cuboid([Jaw.x + 2*WallThick,CushionStem,Jaw.z + 2*WallThick],
    rounding=WallThick/2,anchor=BOTTOM+BACK);
    }
    Clamp();
    }
    }
    //———-
    // Build things
    if (Layout == "Clamp") {
    Clamp();
    }
    if (Layout == "Show") {
    for (i = [-1,1])
    right(i*(CushionOD + Gap)/2)
    zrot(i*JawAngle) {
    Pad();
    color("Silver",0.5)
    Clamp();
    }
    }
    if (Layout == "Build") {
    for (n = [0:(Sets – 1)])
    for (i = [-1,1])
    right(i*((CushionOD + Gap)/2 + n*(CushionOD + Gap)))
    up(CushionStem) back(Jaw.z/2) xrot(90)
    Pad();
    }