summaryrefslogtreecommitdiff
path: root/mech/panel_front.scad
diff options
context:
space:
mode:
Diffstat (limited to 'mech/panel_front.scad')
-rw-r--r--mech/panel_front.scad63
1 files changed, 51 insertions, 12 deletions
diff --git a/mech/panel_front.scad b/mech/panel_front.scad
index 31f4ff7..f430789 100644
--- a/mech/panel_front.scad
+++ b/mech/panel_front.scad
@@ -2,7 +2,6 @@ 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);
@@ -10,22 +9,62 @@ module panel_front(pcb_dim, margins, 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);
+ mini_hdmi_hole(pcb_dim, margins, t);
+ for(v=[
+ [usb_max_y-usb_max_delta_y-tol/2, 0.75*t],
+ [usb_max_y-usb_delta_y-tol/2, t]
+ ]) {
+ translate([0, v[0], 0]) {
+ micro_usb_hole(pcb_dim, margins, t, v[1]);
+ }
+ }
+ for(y = [cinch_max_y-cinch_d/2, cinch_max_y-cinch_delta_y+cinch_d/2]) {
+ translate([0, y, 0]) {
+ cinch_hole(pcb_dim, margins, t);
+ }
+ }
}
}
-module mini_hdmi_hole(t) {
- cube([t, 14+tol, 8.9+tol]);
+hdmi_delta_y = 11.8;
+hdmi_delta_z = 3.9;
+hdmi_max_y = 31.7;
+hdmi_max_z = 13.7;
+module mini_hdmi_hole(pcb_dim, margins, t) {
+ case_dim = dim_pcb_to_case(pcb_dim, margins, t);
+ translate([
+ case_dim[0]-2*t,
+ hdmi_max_y-hdmi_delta_y-tol/2,
+ hdmi_max_z-hdmi_delta_z-tol/2]) {
+ cube([t, hdmi_delta_y+tol, hdmi_delta_z+tol]);
+ }
}
-module micro_usb_hole(t) {
- cube([t, 10.5+tol, 6.6+tol]);
+usb_delta_y = 8;
+usb_max_delta_y = 20.6;
+usb_delta_z = 3;
+usb_max_y = 71.55;
+usb_max_z = 12.7;
+module micro_usb_hole(pcb_dim, margins, t, dx) {
+ echo(dx);
+ case_dim = dim_pcb_to_case(pcb_dim, margins, t);
+ translate([
+ case_dim[0]-2*t,
+ 0,
+ usb_max_z-usb_delta_z-tol/2]) {
+ cube([dx, usb_delta_y+tol, usb_delta_z+tol]);
+ }
}
-module cinch_hole(t) {
- rotate([0, 90, 0]) cylinder(d=cinch_d+tol, h=t, $fn=30);
+cinch_d = 8.8;
+cinch_delta_y = 24.5;
+cinch_max_y = 70.4;
+cinch_max_z = 34.25;
+module cinch_hole(pcb_dim, margins, t) {
+ case_dim = dim_pcb_to_case(pcb_dim, margins, t);
+ translate([case_dim[0]-2*t, 0, cinch_max_z-cinch_d/2]) {
+ rotate([0, 90, 0]) {
+ cylinder(d=cinch_d+tol, h=t, $fn=30);
+ }
+ }
}