discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Re: making threaded holes with OpenScad?

D
Daniel
Wed, Feb 16, 2022 12:41 PM

Hi Eric

Yea you can with the threads lib

https://github.com/rcolyer/threads-scad

You'll need a very accurate printer for 2mm to come out well though.

-Daniel

On 16/02/2022 12:37, Eric Frank via Discuss wrote:


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Hi Eric Yea you can with the threads lib https://github.com/rcolyer/threads-scad You'll need a very accurate printer for 2mm to come out well though. -Daniel On 16/02/2022 12:37, Eric Frank via Discuss wrote: > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
TP
Torsten Paul
Wed, Feb 16, 2022 3:30 PM

On 16.02.22 13:41, Daniel wrote:

You'll need a very accurate printer for 2mm to come out well though.

Good point, for 2mm I've been using self-tapping screws, e.g. in
the code snipped below from a design having PCB standoffs.

ciao,
Torsten.

// https://github.com/UBaer21/UB.scad
use <UB/libraries/ub.scad>

$fa = 4; $fs = 0.4;

/* [Parameters] */
nozzle_diameter = 0.4;
tolerance = 0.35;
eps = 0.01;

wall = nozzle_diameter * 4;
bottom_screw_dia = 2;

// Mounting hole positions for esp12f-led PCB
// https://aisler.net/torsten/finished/esp12f-led-controller/board
module pcb_holes() {
x = 28 / 2;
y = 25.5 / 2;
for (xx = [-x, x], yy = [-y, y])
translate([xx, yy])
children();
}

pcb_holes() {
h = 10;
spiel = 0.2;
difference() {
Strebe(d = bottom_screw_dia + 2 * wall, rad = 3, h = h, single = true, spiel = spiel);
LinEx(h + spiel + eps, bottom_screw_dia, scale2 = 1.2) WStern(r = 1);
}
}

On 16.02.22 13:41, Daniel wrote: > You'll need a very accurate printer for 2mm to come out well though. Good point, for 2mm I've been using self-tapping screws, e.g. in the code snipped below from a design having PCB standoffs. ciao, Torsten. // https://github.com/UBaer21/UB.scad use <UB/libraries/ub.scad> $fa = 4; $fs = 0.4; /* [Parameters] */ nozzle_diameter = 0.4; tolerance = 0.35; eps = 0.01; wall = nozzle_diameter * 4; bottom_screw_dia = 2; // Mounting hole positions for esp12f-led PCB // https://aisler.net/torsten/finished/esp12f-led-controller/board module pcb_holes() { x = 28 / 2; y = 25.5 / 2; for (xx = [-x, x], yy = [-y, y]) translate([xx, yy]) children(); } pcb_holes() { h = 10; spiel = 0.2; difference() { Strebe(d = bottom_screw_dia + 2 * wall, rad = 3, h = h, single = true, spiel = spiel); LinEx(h + spiel + eps, bottom_screw_dia, scale2 = 1.2) WStern(r = 1); } }