diff options
author | xengineering <me@xengineering.eu> | 2024-01-03 11:18:28 +0100 |
---|---|---|
committer | xengineering <me@xengineering.eu> | 2024-01-03 11:25:03 +0100 |
commit | 9d87552f99b70ea9d8a8037b67e9be240f5957ce (patch) | |
tree | fca22a7ffc8de268759094977a1fc504e12e9fda | |
parent | 7763f3f158c56cc3a8478d403156fe507646c181 (diff) | |
download | soundbox-9d87552f99b70ea9d8a8037b67e9be240f5957ce.tar soundbox-9d87552f99b70ea9d8a8037b67e9be240f5957ce.tar.zst soundbox-9d87552f99b70ea9d8a8037b67e9be240f5957ce.zip |
mech: Switch to custom front panel
The front panel needs holes for the HDMI, micro USB and cinch connectors
of the Raspberry Pi Zero W.
-rw-r--r-- | mech/assembly.scad | 6 | ||||
-rw-r--r-- | mech/panel_front.scad | 31 | ||||
-rw-r--r-- | mech/production.scad | 4 |
3 files changed, 38 insertions, 3 deletions
diff --git a/mech/assembly.scad b/mech/assembly.scad index 87865eb..756e539 100644 --- a/mech/assembly.scad +++ b/mech/assembly.scad @@ -1,5 +1,7 @@ include <parameters.scad> +use <panel_front.scad> + use <pcb_case/pcb.scad> use <pcb_case/shell.scad> use <pcb_case/panel.scad> @@ -8,9 +10,9 @@ module assembly() { pcb(pcb_dim, drillings, margins, t); pcb_case_shell_bottom(pcb_dim, drillings, margins, t); -// pcb_case_shell_top(pcb_dim, margins, t); + pcb_case_shell_top(pcb_dim, margins, t); pcb_case_panel_back(pcb_dim, margins, t); -// pcb_case_panel_front(pcb_dim, margins, t); + panel_front(pcb_dim, margins, t); } assembly(); diff --git a/mech/panel_front.scad b/mech/panel_front.scad new file mode 100644 index 0000000..31f4ff7 --- /dev/null +++ b/mech/panel_front.scad @@ -0,0 +1,31 @@ +use <pcb_case/conversion.scad> +use <pcb_case/panel.scad> + +tol = 2; +cinch_d = 8.8; + +module panel_front(pcb_dim, margins, t) { + dim = dim_pcb_to_case(pcb_dim, margins, t); + x_off = dim[0]-2*t; + + difference() { + pcb_case_panel_front(pcb_dim, margins, t); + translate([x_off, 17-tol/2, 7.7-tol/2]) mini_hdmi_hole(t); + translate([x_off, 47.7-tol/2, 8-tol/2]) micro_usb_hole(t); + translate([x_off, 60.1-tol/2, 8-tol/2]) micro_usb_hole(t); + translate([x_off, 42.6+cinch_d/2, 26.5+cinch_d/2]) cinch_hole(t); + translate([x_off, 58.5+cinch_d/2, 26.5+cinch_d/2]) cinch_hole(t); + } +} + +module mini_hdmi_hole(t) { + cube([t, 14+tol, 8.9+tol]); +} + +module micro_usb_hole(t) { + cube([t, 10.5+tol, 6.6+tol]); +} + +module cinch_hole(t) { + rotate([0, 90, 0]) cylinder(d=cinch_d+tol, h=t, $fn=30); +} diff --git a/mech/production.scad b/mech/production.scad index 448a439..1485a39 100644 --- a/mech/production.scad +++ b/mech/production.scad @@ -1,5 +1,7 @@ include <parameters.scad> +use <panel_front.scad> + use <pcb_case/conversion.scad> use <pcb_case/shell.scad> use <pcb_case/panel.scad> @@ -23,7 +25,7 @@ module production() { translate([dim[0], dim[1]+spacing, 0]) rotate([0, -90, 0]) translate([2*t-dim[0], -t, -t]) - pcb_case_panel_front(pcb_dim, margins, t); + panel_front(pcb_dim, margins, t); } production(); |