From 7e809f2719a14ddfb8a8ca1d8064a00da2714f31 Mon Sep 17 00:00:00 2001 From: Edward Kisiel Date: Thu, 30 Jan 2025 11:20:34 -0500 Subject: [PATCH] fixed standoff openings from interfering with case geometry --- mod/case_bottom.scad | 32 ++++++++++++------------- mod/case_top.scad | 40 ++++++++++++++++---------------- sbc_case_builder_accessories.cfg | 4 ++-- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/mod/case_bottom.scad b/mod/case_bottom.scad index d7d5ed2..097ab6c 100644 --- a/mod/case_bottom.scad +++ b/mod/case_bottom.scad @@ -390,19 +390,19 @@ echo(pcb_depth+case_offset_y-10); if (class == "pcbhole" && id == 0 && pcbhole_pos == "left_rear" && bottom_rear_left_enable == true && bottom_standoff[6] != "blind") { - translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=bottom_standoff[4]-.2, h=bottom_height); + translate([pcbhole_x,pcbhole_y,-adj]) cylinder(d=bottom_standoff[4]-.2, h=floorthick+(2*adj)); } if (class == "pcbhole" && id == 0 && pcbhole_pos == "left_front" && bottom_front_left_enable == true && bottom_standoff[6] != "blind") { - translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=bottom_standoff[4]-.2, h=bottom_height); + translate([pcbhole_x,pcbhole_y,-adj]) cylinder(d=bottom_standoff[4]-.2, h=floorthick+(2*adj)); } if (class == "pcbhole" && id == 0 && pcbhole_pos == "right_rear" && bottom_rear_right_enable == true && bottom_standoff[6] != "blind") { - translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=bottom_standoff[4]-.2, h=bottom_height); + translate([pcbhole_x,pcbhole_y,-adj]) cylinder(d=bottom_standoff[4]-.2, h=floorthick+(2*adj)); } if (class == "pcbhole" && id == 0 && pcbhole_pos == "right_front" && bottom_front_right_enable == true && bottom_standoff[6] != "blind") { - translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=bottom_standoff[4]-.2, h=bottom_height); + translate([pcbhole_x,pcbhole_y,-adj]) cylinder(d=bottom_standoff[4]-.2, h=floorthick+(2*adj)); } } @@ -431,22 +431,22 @@ echo(pcb_depth+case_offset_y-10); if (pcbclass == "pcbhole" && pcbhole_pos == "left_rear" && multipcb_bottom_rear_left_enable == true && (pcbhole_state == "bottom" || pcbhole_state == "both")) { - translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=multipcb_bottom_standoff[4]-.2, h=bottom_height); + translate([pcbhole_x,pcbhole_y,-adj]) cylinder(d=multipcb_bottom_standoff[4]-.2, h=floorthick+(2*adj)); } if (pcbclass == "pcbhole" && pcbhole_pos == "left_front" && multipcb_bottom_front_left_enable == true && (pcbhole_state == "bottom" || pcbhole_state == "both")) { - translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=multipcb_bottom_standoff[4]-.2, h=bottom_height); + translate([pcbhole_x,pcbhole_y,-adj]) cylinder(d=multipcb_bottom_standoff[4]-.2, h=floorthick+(2*adj)); } if (pcbclass == "pcbhole" && pcbhole_pos == "right_rear" && multipcb_bottom_rear_right_enable == true && (pcbhole_state == "bottom" || pcbhole_state == "both")) { - translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=multipcb_bottom_standoff[4]-.2, h=bottom_height); + translate([pcbhole_x,pcbhole_y,-adj]) cylinder(d=multipcb_bottom_standoff[4]-.2, h=floorthick+(2*adj)); } if (pcbclass == "pcbhole" && pcbhole_pos == "right_front" && multipcb_bottom_front_right_enable == true && (pcbhole_state == "bottom" || pcbhole_state == "both")) { - translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=multipcb_bottom_standoff[4]-.2, h=bottom_height); + translate([pcbhole_x,pcbhole_y,-adj]) cylinder(d=multipcb_bottom_standoff[4]-.2, h=floorthick+(2*adj)); } } } @@ -460,8 +460,8 @@ echo(pcb_depth+case_offset_y-10); || pcb_loc_y >= ext_bottom_standoff_support_size)) && ext_bottom_rear_right_enable == true && ext_bottom_standoff[6] != "blind") { translate([width-ext_bottom_standoff_support_size/4-(2*(wallthick+gap)), - ext_bottom_standoff_support_size/4,-1]) - cylinder(d=ext_bottom_standoff[4]-.2, h=bottom_height); + ext_bottom_standoff_support_size/4,-adj]) + cylinder(d=ext_bottom_standoff[4]-.2, h=floorthick+(2+adj)); } // right-front standoff if(((width-pcb_loc_x-pcb_width-(gap+2*wallthick) >= ext_bottom_standoff_support_size && @@ -472,15 +472,15 @@ echo(pcb_depth+case_offset_y-10); depth-pcb_loc_y-pcb_depth >= ext_bottom_standoff_support_size)) && ext_bottom_front_right_enable == true && ext_bottom_standoff[6] != "blind") { translate([width-ext_bottom_standoff_support_size/4-(2*(wallthick+gap)), - depth-ext_bottom_standoff_support_size/4-(2*(wallthick+gap)),-1]) - cylinder(d=ext_bottom_standoff[4]-.2, h=bottom_height); + depth-ext_bottom_standoff_support_size/4-(2*(wallthick+gap)),-adj]) + cylinder(d=ext_bottom_standoff[4]-.2, h=floorthick+(2*adj)); } // left-rear standoff if((pcb_loc_x >= ext_bottom_standoff_support_size || pcb_loc_y >= ext_bottom_standoff_support_size) && ext_bottom_rear_left_enable == true && ext_bottom_standoff[6] != "blind") { translate([ext_bottom_standoff_support_size/4, - ext_bottom_standoff_support_size/4,-1]) - cylinder(d=ext_bottom_standoff[4]-.2, h=bottom_height); + ext_bottom_standoff_support_size/4,-adj]) + cylinder(d=ext_bottom_standoff[4]-.2, h=floorthick+(2*adj)); } // left-front standoff if(((pcb_loc_x >= ext_bottom_standoff_support_size && @@ -491,8 +491,8 @@ echo(pcb_depth+case_offset_y-10); (depth-(pcb_loc_y+pcb_depth)) <= ext_bottom_standoff_support_size)) && ext_bottom_front_left_enable == true && ext_bottom_standoff[6] != "blind") { translate([ext_bottom_standoff_support_size/4, - depth-(ext_bottom_standoff_support_size/4)-(2*(wallthick+gap)),-1]) - cylinder(d=ext_bottom_standoff[4]-.2, h=bottom_height); + depth-(ext_bottom_standoff_support_size/4)-(2*(wallthick+gap)),-adj]) + cylinder(d=ext_bottom_standoff[4]-.2, h=floorthick+(2*adj)); } } // bottom cover pattern diff --git a/mod/case_top.scad b/mod/case_top.scad index aee90e2..b8f861f 100644 --- a/mod/case_top.scad +++ b/mod/case_top.scad @@ -313,19 +313,19 @@ module case_top(case_design) { if (class == "pcbhole" && id == 0 && pcbhole_pos == "left_rear" && top_rear_left_enable == true && top_standoff[6] != "blind") { - translate([pcbhole_x,pcbhole_y,top_height+5]) cylinder(d=top_standoff[4]-.2, h=top_height); + translate([pcbhole_x,pcbhole_y,case_z-(floorthick+adj)]) cylinder(d=top_standoff[4]-.2, h=floorthick+(2+adj)); } if (class == "pcbhole" && id == 0 && pcbhole_pos == "left_front" && top_front_left_enable == true && top_standoff[6] != "blind") { - translate([pcbhole_x,pcbhole_y,top_height+5]) cylinder(d=top_standoff[4]-.2, h=top_height); + translate([pcbhole_x,pcbhole_y,case_z-(floorthick+adj)]) cylinder(d=top_standoff[4]-.2, h=floorthick+(2*adj)); } if (class == "pcbhole" && id == 0 && pcbhole_pos == "right_rear" && top_rear_right_enable == true && top_standoff[6] != "blind") { - translate([pcbhole_x,pcbhole_y,top_height+5]) cylinder(d=top_standoff[4]-.2, h=top_height); + translate([pcbhole_x,pcbhole_y,case_z-(floorthick+adj)]) cylinder(d=top_standoff[4]-.2, h=floorthick+(2*adj)); } if (class == "pcbhole" && id == 0 && pcbhole_pos == "right_front" && top_front_right_enable == true && top_standoff[6] != "blind") { - translate([pcbhole_x,pcbhole_y,top_height+5]) cylinder(d=top_standoff[4]-.2, h=top_height); + translate([pcbhole_x,pcbhole_y,case_z-(floorthick+adj)]) cylinder(d=top_standoff[4]-.2, h=floorthick+(2*adj)); } } } @@ -353,26 +353,26 @@ module case_top(case_design) { if (pcbclass == "pcbhole" && pcbhole_pos == "left_rear" && multipcb_top_rear_left_enable == true && (pcbhole_state == "top" || pcbhole_state == "both")) { - translate([pcbhole_x,pcbhole_y,top_height]) - cylinder(d=multipcb_top_standoff[4]-.2, h=top_height); + translate([pcbhole_x,pcbhole_y,case_z-(floorthick+adj)]) + cylinder(d=multipcb_top_standoff[4]-.2, h=floorthick+(2*adj)); } if (pcbclass == "pcbhole" && pcbhole_pos == "left_front" && multipcb_top_front_left_enable == true && (pcbhole_state == "top" || pcbhole_state == "both")) { - translate([pcbhole_x,pcbhole_y,top_height]) - cylinder(d=multipcb_top_standoff[4]-.2, h=top_height); + translate([pcbhole_x,pcbhole_y,case_z-(floorthick+adj)]) + cylinder(d=multipcb_top_standoff[4]-.2, h=floorthick+(2*adj)); } if (pcbclass == "pcbhole" && pcbhole_pos == "right_rear" && multipcb_top_rear_right_enable == true && (pcbhole_state == "top" || pcbhole_state == "both")) { - translate([pcbhole_x,pcbhole_y,top_height]) - cylinder(d=multipcb_top_standoff[4]-.2, h=top_height); + translate([pcbhole_x,pcbhole_y,case_z-(floorthick+adj)]) + cylinder(d=multipcb_top_standoff[4]-.2, h=floorthick+(2*adj)); } if (pcbclass == "pcbhole" && pcbhole_pos == "right_front" && multipcb_top_front_right_enable == true && (pcbhole_state == "top" || pcbhole_state == "both")) { - translate([pcbhole_x,pcbhole_y,top_height]) - cylinder(d=multipcb_top_standoff[4]-.2, h=top_height); + translate([pcbhole_x,pcbhole_y,case_z-(floorthick+adj)]) + cylinder(d=multipcb_top_standoff[4]-.2, h=floorthick+(2*adj)); } } } @@ -386,8 +386,8 @@ module case_top(case_design) { pcb_loc_y >= ext_top_standoff_support_size) && ext_top_rear_right_enable == true && ext_top_standoff[6] != "blind") { translate([width-ext_top_standoff_support_size/4-(2*(wallthick+gap)), - ext_top_standoff_support_size/4,top_height+5]) - cylinder(d=ext_top_standoff[4]-.2, h=top_height); + ext_top_standoff_support_size/4,case_z-(floorthick+adj)]) + cylinder(d=ext_top_standoff[4]-.2, h=floorthick+(2*adj)); } // right-front standoff if(((width-pcb_loc_x-pcb_width-(gap+2*wallthick) >= ext_top_standoff_support_size && @@ -398,14 +398,14 @@ module case_top(case_design) { depth-pcb_loc_y-pcb_depth >= ext_top_standoff_support_size)) && ext_top_front_right_enable == true && ext_top_standoff[6] != "blind") { translate([width-ext_top_standoff_support_size/4-(2*(wallthick+gap)), - depth-ext_top_standoff_support_size/4-(2*(wallthick+gap)),top_height+5]) - cylinder(d=ext_top_standoff[4]-.2, h=top_height); + depth-ext_top_standoff_support_size/4-(2*(wallthick+gap)),case_z-(floorthick+adj)]) + cylinder(d=ext_top_standoff[4]-.2, h=floorthick+(2*adj)); } // left-rear standoff if((pcb_loc_x >= ext_top_standoff_support_size || pcb_loc_y >= ext_top_standoff_support_size) && ext_top_rear_left_enable == true && ext_top_standoff[6] != "blind") { - translate([ext_top_standoff_support_size/4, ext_top_standoff_support_size/4,top_height+5]) - cylinder(d=ext_top_standoff[4]-.2, h=top_height); + translate([ext_top_standoff_support_size/4, ext_top_standoff_support_size/4,case_z-(floorthick+adj)]) + cylinder(d=ext_top_standoff[4]-.2, h=floorthick+(2*adj)); } // left-front standoff if(((pcb_loc_x >= ext_top_standoff_support_size && @@ -416,8 +416,8 @@ module case_top(case_design) { (depth-(pcb_loc_y+pcb_depth)) <= ext_top_standoff_support_size)) && ext_top_front_left_enable == true && ext_top_standoff[6] != "blind") { translate([ext_top_standoff_support_size/4, - depth-ext_top_standoff_support_size/4-(2*(wallthick+gap)),top_height+5]) - cylinder(d=ext_top_standoff[4]-.2, h=top_height); + depth-ext_top_standoff_support_size/4-(2*(wallthick+gap)),case_z-(floorthick+adj)]) + cylinder(d=ext_top_standoff[4]-.2, h=floorthick+(2*adj)); } } // top cover pattern diff --git a/sbc_case_builder_accessories.cfg b/sbc_case_builder_accessories.cfg index e37566b..1516433 100644 --- a/sbc_case_builder_accessories.cfg +++ b/sbc_case_builder_accessories.cfg @@ -256,8 +256,8 @@ accessory_data = [ "add2","button",5.5,56,24,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,1.5],["cutout",[2,2,2,2],2.25],[true,10,2,"default"]], ["m2_eyespi_shell", - "model","stl_model",109.62,9.8,19.25,"bottom",[0,0,180],["sbc",true,true,true],[0,0,0],[1,"stl/EYESPI-Dual_I2C.stl"],[false,10,2,"default"], - "model","stl_model",50.5,99.75,3,"bottom",[90,0,180],["sbc",false,false,false],[0,0,0],[1,"adafruit/4196 1.54in eink display SSD1681.stl"],[false,10,2,"default"], +// "model","stl_model",109.62,9.8,19.25,"bottom",[0,0,180],["sbc",true,true,true],[0,0,0],[1,"stl/EYESPI-Dual_I2C.stl"],[false,10,2,"default"], +// "model","stl_model",50.5,99.75,3,"bottom",[90,0,180],["sbc",false,false,false],[0,0,0],[1,"adafruit/4196 1.54in eink display SSD1681.stl"],[false,10,2,"default"], // "sub","round",13,99,5.5,"bottom",[270,0,0],["sbc",false,false,false],[2.5,0,6],[0],[false,10,2,"default"], // "sub","round",51,99,5.5,"bottom",[270,0,0],["sbc",false,false,false],[2.5,0,6],[0],[false,10,2,"default"], "add2","standoff",13.5,104.5,5.5,"bottom",[90,0,0],["sbc",false,false,false],[0,0,0],[["m2.5+",3,3.25,3.6,6,3.25,"countersunk","hex",false,false,4.5,5.1]],[true,10,2,"default"],