diff --git a/Mechanical/OpenSCAD/Enclosure.scad b/Mechanical/OpenSCAD/Enclosure.scad index 4959e6f..4f5b7da 100644 --- a/Mechanical/OpenSCAD/Enclosure.scad +++ b/Mechanical/OpenSCAD/Enclosure.scad @@ -104,9 +104,7 @@ module rail(make_printable) { // The pocket that the latch bar drops into, including a 45 degree cut for printability translate([0, latch_wall, -latch_h]) cube([latch_d, latch_l, latch_h]); - if (make_printable) { - translate([latch_d, latch_wall+latch_l, -latch_h]) rotate([0, 0, -180+45]) translate([0, -latch_l, 0]) cube([latch_d*2, latch_l, latch_h]); - } + translate([latch_d, latch_wall+latch_l, -latch_h]) rotate([0, 0, -180+45]) translate([0, -latch_l, 0]) cube([latch_d*2, latch_l, latch_h]); } } @@ -174,7 +172,7 @@ module expansion_card_lid() { difference() { translate([-side_wall*2-gap, -base_ext[1]+side_wall+gap, base_ext[2]-side_wall]) cube([base_ext[0]-side_wall*2-gap*2, base_ext[1]-side_wall*2-gap*2, side_wall]); translate([-0.5,-16.4,8]) led_cylinder(); // hollow for D2 LED cylinder - translate([30.55,-16.4,8]) led_cylinder(); // hollow for D3 LED cylinder + translate([30.60,-16.4,8]) led_cylinder(); // hollow for D3 LED cylinder } // joins them together translate([side_wall+gap, -side_wall, base[2]-lower_lid_z]) cube([base[0]-side_wall*2-gap*2, side_wall, base_ext[2]-base[2]+gap*2+0.1]); @@ -237,6 +235,8 @@ module expansion_card_base(open_end, make_printable, pcb_mount="boss") { translate([side_wall, inner[1]+side_wall-notch_l, side_wall]) cube([notch, notch_l, notch_h]); translate([inner[0]+side_wall, inner[1]+side_wall-notch_l, side_wall+notch_h/2]) rotate([0, 0, 180]) rotate([0, 90, 0]); translate([inner[0]+side_wall-notch, inner[1]+side_wall-notch_l, side_wall]) cube([notch, notch_l, notch_h]); + translate([side_wall, inner[1]+side_wall-notch_l, side_wall+notch_h/2]) rotate([0, 0, -90]) rotate([0, 90, 0]) rib(notch_h, notch); + translate([inner[0]+side_wall, inner[1]+side_wall-notch_l, side_wall+notch_h/2]) rotate([0, 0, 180]) rotate([0, 90, 0]) rib(notch_h, notch); } // cutout for sim card access @@ -256,7 +256,7 @@ module expansion_card_base(open_end, make_printable, pcb_mount="boss") { translate([0, base[1]-ledge_cut_d, 0]) cube([base[0], ledge_cut_d, ledge_cut]); // hollow bottom to provide room for back of board - translate([side_wall,-notch_l,-hollow_bottom_z+1.5]) cube([base[0]-side_wall*2, base[1]-side_wall, hollow_bottom_z]); + //translate([side_wall,-notch_l,-hollow_bottom_z+1.5]) cube([base[0]-side_wall*2, base[1]-side_wall, hollow_bottom_z]); } difference() { @@ -292,6 +292,13 @@ module expansion_card_base(open_end, make_printable, pcb_mount="boss") { } } +// A simple 45 degree rib to improve printability +module rib(thickness, height) { + translate([-thickness/2, 0, 0]) difference() { + cube([thickness, height, height]); + translate([-thickness/2, height, 0]) rotate([45, 0, 0]) cube([thickness*2, height*2, height*2]); + } +} module expansion_card_ext(make_printable, pcb_mount="boss_insert") { // Hollowing of the inside @@ -346,7 +353,7 @@ module led_cylinder(stopper) { } } -translate([base_ext[0]-6.45-side_wall*2, -base[1]-base_ext[1]+side_wall*2+0.8, pcb_h+0.78+led_h]) led_cylinder(true); // D2 LED column +translate([base_ext[0]-6.4-side_wall*2, -base[1]-base_ext[1]+side_wall*2+0.8, pcb_h+0.78+led_h]) led_cylinder(true); // D2 LED column translate([-0.5, -base[1]-base_ext[1]+side_wall*2+0.8, pcb_h+0.78+led_h]) led_cylinder(true); // D3 LED column