From 19ab04d5ed6ebee1a27d69277d304882308eb0a7 Mon Sep 17 00:00:00 2001 From: "Ricardo (XenGi) Band" Date: Wed, 10 Aug 2022 18:00:12 +0200 Subject: [PATCH] add switches --- pcb.scad | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/pcb.scad b/pcb.scad index 2072b82..ecfde7c 100644 --- a/pcb.scad +++ b/pcb.scad @@ -20,10 +20,20 @@ module kailh () { translate([kailh_width-kailh_corner_radius,kailh_length-kailh_corner_radius,0]) cube([kailh_corner_radius,kailh_corner_radius,kailh_height]); } translate([3.7+kailh_corner_radius,0,0]) cylinder(h=kailh_height, r=kailh_corner_radius); - translate([3.7+kailh_corner_radius,0,0]) cube([kailh_width,kailh_corner_radius,kailh_height]); + translate([3.7+kailh_corner_radius,0,0]) cube([kailh_width-3.7-kailh_corner_radius,kailh_corner_radius,kailh_height]); } } +module switch () { + switch_width = 14; + switch_length = 14; + switch_height = 11.5; + + cube([switch_width,switch_length,switch_height]); + translate([switch_width/2-2,switch_length/2-0.625,switch_height]) cube([4,1.25,3.5]); + translate([switch_width/2-0.625,switch_length/2-2,switch_height]) cube([1.25,4,3.5]); +} + translate([pcb_corner_radius,pcb_corner_radius,0]) hull() { cylinder(h=pcb_thickness, r=pcb_corner_radius); translate([pcb_width-2*pcb_corner_radius,0,0]) cylinder(h=pcb_thickness, r=pcb_corner_radius); @@ -32,23 +42,44 @@ translate([pcb_corner_radius,pcb_corner_radius,0]) hull() { } translate([15.5,12.8,0]) kailh(); // 0 +translate([14.5,5,0]) switch(); translate([44,12.8,0]) kailh(); // . +translate([43,5,0]) switch(); translate([63,22.3,0]) kailh(); // enter +translate([62,14.5,0]) switch(); translate([44,31.8,0]) kailh(); // 3 +translate([43,24,0]) switch(); translate([25,31.8,0]) kailh(); // 2 +translate([24,24,0]) switch(); translate([6,31.8,0]) kailh(); // 1 +translate([5,24,0]) switch(); translate([44,50.8,0]) kailh(); // 6 +translate([43,43,0]) switch(); translate([25,50.8,0]) kailh(); // 5 +translate([24,43,0]) switch(); translate([6,50.8,0]) kailh(); // 4 +translate([5,43,0]) switch(); translate([63,60.3,0]) kailh(); // + +translate([63,52.5,0]) switch(); translate([44,69.8,0]) kailh(); // 9 +translate([43,62,0]) switch(); translate([25,69.8,0]) kailh(); // 8 +translate([24,62,0]) switch(); translate([6,69.8,0]) kailh(); // 7 +translate([5,62,0]) switch(); translate([63,88.8,0]) kailh(); // - +translate([63,81,0]) switch(); translate([44,88.8,0]) kailh(); // * +translate([43,81,0]) switch(); translate([25,88.8,0]) kailh(); // / +translate([24,81,0]) switch(); translate([6,88.8,0]) kailh(); // Num +translate([5,81,0]) switch(); translate([63,107.8,0]) kailh(); // Next +translate([63,100,0]) switch(); translate([44,107.8,0]) kailh(); // Stop +translate([43,100,0]) switch(); translate([25,107.8,0]) kailh(); // Play/Pause +translate([24,100,0]) switch(); translate([6,107.8,0]) kailh(); // Prev +translate([5,100,0]) switch(); \ No newline at end of file