summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorxengineering <me@xengineering.eu>2024-01-09 19:59:04 +0100
committerxengineering <me@xengineering.eu>2024-01-09 19:59:04 +0100
commitc9fb2c1531fd1430fb2034fa3edbb41f7b69b385 (patch)
tree48ca031e42ffba2d784fef1d8eb8ea3c96870b31
parentca53dd20c9f45809888b3a0511c223847e97988a (diff)
downloadsoundbox-c9fb2c1531fd1430fb2034fa3edbb41f7b69b385.tar
soundbox-c9fb2c1531fd1430fb2034fa3edbb41f7b69b385.tar.zst
soundbox-c9fb2c1531fd1430fb2034fa3edbb41f7b69b385.zip
mech: pcb_case: Add spacers
Since a proper norm-based distance bolt was not found printing spacers is the easiest way to make the case producable independent of part availability.
-rw-r--r--mech/pcb_case/spacer.scad10
-rw-r--r--mech/production.scad7
2 files changed, 17 insertions, 0 deletions
diff --git a/mech/pcb_case/spacer.scad b/mech/pcb_case/spacer.scad
new file mode 100644
index 0000000..e7eba3a
--- /dev/null
+++ b/mech/pcb_case/spacer.scad
@@ -0,0 +1,10 @@
+include <bolt.scad>
+
+spacer_h = 11;
+
+module spacer() {
+ difference() {
+ cylinder(d=bolt_dk, h=spacer_h, $fn=30);
+ cylinder(d=bolt_ds+bolt_ds_tol, h=spacer_h, $fn=30);
+ }
+}
diff --git a/mech/production.scad b/mech/production.scad
index 1485a39..7ca3051 100644
--- a/mech/production.scad
+++ b/mech/production.scad
@@ -5,6 +5,7 @@ use <panel_front.scad>
use <pcb_case/conversion.scad>
use <pcb_case/shell.scad>
use <pcb_case/panel.scad>
+use <pcb_case/spacer.scad>
module production() {
dim = dim_pcb_to_case(pcb_dim, margins, t);
@@ -26,6 +27,12 @@ module production() {
rotate([0, -90, 0])
translate([2*t-dim[0], -t, -t])
panel_front(pcb_dim, margins, t);
+
+ for(i = [0:3]) {
+ translate([dim[0]+bolt_dk/2+spacing, bolt_dk/2+i*(bolt_dk+spacing), 0]) {
+ spacer();
+ }
+ }
}
production();