Skip to content

Instantly share code, notes, and snippets.

@ednisley
Created April 28, 2025 22:45
Show Gist options
  • Save ednisley/427e7bf864506383b6e08104abad6ac9 to your computer and use it in GitHub Desktop.
Save ednisley/427e7bf864506383b6e08104abad6ac9 to your computer and use it in GitHub Desktop.
OpenSCAD source code: TPU pads for metal spring clamps
// 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();
}
@ednisley
Copy link
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment