legacy case adapters added
This commit is contained in:
24632
dxf/astroid_8mm.dxf
Normal file
24632
dxf/astroid_8mm.dxf
Normal file
File diff suppressed because it is too large
Load Diff
@@ -41,6 +41,7 @@
|
||||
hk_m1s_ups()
|
||||
proto_m1s()
|
||||
proto_ups()
|
||||
hk_xu4_shifter_shield(mask)
|
||||
|
||||
*/
|
||||
|
||||
@@ -1568,3 +1569,59 @@ module hk_m1s_case_holes(type = "landscape") {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
NAME: hk_xu4_shifter_shield
|
||||
DESCRIPTION: hardkernel xu4 shifter shield
|
||||
TODO: none
|
||||
|
||||
USAGE: hk__xu4_shifter_shield(mask)
|
||||
|
||||
mask[0] = enablemask
|
||||
mask[1] = mask length
|
||||
mask[2] = mask setback
|
||||
mask[3] = mask style, "default"
|
||||
*/
|
||||
|
||||
module hk_xu4_shifter_shield(mask) {
|
||||
|
||||
size = [83,59,1];
|
||||
enablemask = mask[0];
|
||||
mlength = mask[1];
|
||||
msetback = mask[2];
|
||||
mstyle = mask[3];
|
||||
|
||||
adj = .01;
|
||||
$fn = 90;
|
||||
|
||||
if(enablemask == true) {
|
||||
switch("slide_4x9", 28, 55, 0, "top", 180, [5, 4, .8], ["dimgrey"], size[2], true, [true, 10, 2, "default"]);
|
||||
gpio("open", 25, 1, 0, "top", 180, [20,2,6], ["thruhole","black","male",2.54,"silver"], size[2], true, [true, 10, 0, "block"]);
|
||||
}
|
||||
if(enablemask == false) {
|
||||
difference() {
|
||||
union() {
|
||||
color("#18525d") slab(size,3.5);
|
||||
pcbhole("round",3.5,3.5,0,"top",0,[3,0,0],["solid","#fee5a6","none",5,"left_rear"],size[2],false,[false,10,2,"default"]);
|
||||
pcbhole("round",3.5,55.5,0,"top",0,[3,0,0],["solid","#fee5a6","none",5,"left_front"],size[2],false,[false,10,2,"default"]);
|
||||
pcbhole("round",79.5,3.5,0,"top",0,[3,0,0],["solid","#fee5a6","none",5,"right_rear"],size[2],false,[false,10,2,"default"]);
|
||||
pcbhole("round",79.5,55.5,0,"top",0,[3,0,0],["solid","#fee5a6","none",5,"right_front"],size[2],false,[false,10,2,"default"]);
|
||||
}
|
||||
color("#fee5a6") translate([3.5,3.5,-1]) cylinder(d=3, h=4);
|
||||
color("#fee5a6") translate([3.5,55.5,-1]) cylinder(d=3, h=4);
|
||||
color("#fee5a6") translate([79.5,3.5,-1]) cylinder(d=3, h=4);
|
||||
color("#fee5a6") translate([79.5,55.5,-1]) cylinder(d=3, h=4);
|
||||
}
|
||||
ic("generic", 43, 39.5, 0, "top", 0, [5, 4, .8], ["dimgrey"], size[2], false, [false, 0, 0, "none"]);
|
||||
ic("generic", 53, 39.5, 0, "top", 0, [5, 4, .8], ["dimgrey"], size[2], false, [false, 0, 0, "none"]);
|
||||
ic("generic", 63, 39.5, 0, "top", 0, [5, 4, .8], ["dimgrey"], size[2], false, [false, 0, 0, "none"]);
|
||||
header("open", 77, 36.5, 0, "bottom", 0, [2,6,16], ["thruhole","black","female",2,"silver"], size[2], false, [true,10,2,"default"]);
|
||||
header("open", 39, 53, 0, "bottom", 0, [15,2,16], ["thruhole","black","female",2,"silver"], size[2], false, [true,10,2,"default"]);
|
||||
gpio("open", 25, 1, 0, "top", 180, [20,2,6], ["thruhole","black","male",2.54,"silver"], size[2], false, [true,10,2,"default"]);
|
||||
header("open", 8, 1, 0, "top", 0, [6,1,6], ["thruhole","black","male",2.54,"silver"], size[2], false, [true,10,2,"default"]);
|
||||
switch("slide_4x9", 28, 55, 0, "top", 180, [5, 4, .8], ["dimgrey"], size[2], false, [true, 0, 0, "none"]);
|
||||
pcbpad("round", 9.27, 4.81, 0, "top", 0, [6, 21, .8], [1,"#fee5a6",1.7,"front"], size[2], false, [false, 0, 0, "none"]);
|
||||
pcbpad("round", 24.54, 35.27, 0, "top", 0, [2, 9, .8], [1,"#fee5a6",1.7,"front"], size[2], false, [false, 0, 0, "none"]);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
242
mod/case_adapter.scad
Normal file
242
mod/case_adapter.scad
Normal file
@@ -0,0 +1,242 @@
|
||||
/*
|
||||
This file is part of SBC Case Builder https://github.com/hominoids/SBC_Case_Builder
|
||||
Copyright 2022,2023,2024 Edward A. Kisiel hominoid@cablemi.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>
|
||||
Code released under GPLv3: http://www.gnu.org/licenses/gpl.html
|
||||
|
||||
|
||||
NAME: case_adapter
|
||||
DESCRIPTION: creates adapters for legacy cases footprints
|
||||
TODO: verify mini-stx and nano-itx hole locations
|
||||
|
||||
USAGE: case_adapter(case_design)
|
||||
|
||||
*/
|
||||
|
||||
module case_adapter(case_design) {
|
||||
|
||||
mb_adapters=[
|
||||
["adapter_atx", 304.8, 243.84, ["left_rear", 6.35, 33.02], ["right_rear", 288.29, 10.16],
|
||||
["left_middle", 6.35, 165.1], ["middle_middle", 163.83, 165.1], ["right_middle", 288.29, 165.1],
|
||||
["left_front", 6.35, 237.49], ["middle_front", 163.83, 237.49], ["right_front", 288.29, 237.49]],
|
||||
["adapter_micro-atx", 243.84, 243.84, ["left_rear", 6.35, 33.02], ["middle_rear", 163.83, 10.16], ["right_rear", 211.99, 10.16],
|
||||
["left_middle", 6.35, 165.1], ["middle_middle", 163.83, 165.1],
|
||||
["middle2_middle", 209.55, 165.1], ["right_middle", 229.87, 165.1],
|
||||
["left_front", 6.35, 237.49], ["right_front", 163.83, 237.49]],
|
||||
["adapter_dtx", 230.2, 243.84, ["left_rear", 6.35, 33.02], ["middle_rear", 163.83, 10.16], ["right_rear", 211.99, 10.16],
|
||||
["left_middle", 6.35, 165.1], ["middle_middle", 163.83, 165.1], ["right_middle", 209.55, 165.1],
|
||||
["left_front", 6.35, 237.49], ["right_front", 163.83, 237.49]],
|
||||
["adapter_flex-atx", 228.6, 190.5, ["left_rear", 6.35, 33.02], ["right_rear", 211.99, 10.16],
|
||||
["left_front", 6.35, 165.1], ["middle_front", 163.83, 165.1],
|
||||
["right_front", 209.55, 165.1]],
|
||||
["adapter_mini-dtx", 203.2, 170.18, ["left_rear", 6.35, 33.02], ["right_rear", 163.83, 10.16],
|
||||
["left_front", 6.35, 165.1], ["right_front", 163.83, 165.1]],
|
||||
["adapter_mini-itx", 170, 170, ["left_rear", 6.35, 33.02], ["right_rear", 163.83, 10.16],
|
||||
["left_front", 6.35, 165.1], ["right_front", 163.83, 165.1]],
|
||||
["adapter_mini-stx", 147, 140, ["left_rear", 4.8, 5.15], ["right_rear", 139.8, 5.15],
|
||||
["left_front", 4.8, 134.85], ["right_front", 139.8, 134.85]],
|
||||
["adapter_nano-itx", 120, 120, ["left_rear", 6.35, 33.02], ["right_rear", 113.65, 6.35],
|
||||
["left_front", 6.35, 113.65], ["right_front", 113.65, 113.65]],
|
||||
["adapter_nuc", 101.6, 101.6, ["left_rear", 3.3, 7.3], ["right_rear", 98.3, 7.3],
|
||||
["left_front", 3.3, 97.7], ["right_front", 98.3, 97.7]],
|
||||
["adapter_pico-itx", 100, 72, ["left_rear", 2.97, 3.04], ["right_rear", 97.05, 3.04],
|
||||
["left_front", 2.97, 69.08], ["right_front", 97.05, 69.08]]
|
||||
];
|
||||
|
||||
mb = search([case_design],mb_adapters);
|
||||
mba_x = mb_adapters[mb[0]][1];
|
||||
mba_y = mb_adapters[mb[0]][2];
|
||||
mba_z = floorthick;
|
||||
mba_offset_x = -6.35;
|
||||
mba_offset_y = 0;
|
||||
mba_radius = 5;
|
||||
mba_standoff = [5.75, floorthick, 3.4, 7, floorthick, "none", "round", "none", true, false, 0, 0];
|
||||
io_offset = 6.35;
|
||||
adj = .01;
|
||||
|
||||
difference() {
|
||||
union() {
|
||||
difference() {
|
||||
translate([mba_offset_x,mba_offset_y,0]) slab([mba_x,mba_y,mba_z], mba_radius);
|
||||
translate([mba_offset_x+8,mba_offset_y+8,0]) vent_hex((mba_x-16)/6,(mba_y-16)/10,floorthick+4,10,1.5,"horizontal");
|
||||
// adapter standoff holes
|
||||
for (i=[2:len(mb_adapters[mb[0]])-3:len(mb_adapters[mb[0]])-3]) {
|
||||
for (c=[1:1:len(mb_adapters[mb[0]])-3]) {
|
||||
mbhole_pos = mb_adapters[mb[0]][i+c][0];
|
||||
mbhole_x = mb_adapters[mb[0]][i+c][1]+mba_offset_x;
|
||||
mbhole_y = mb_adapters[mb[0]][i+c][2]+mba_offset_y;
|
||||
mbhole_z = -floorthick;
|
||||
translate([mbhole_x,mbhole_y,-1]) cylinder(d=6.5, h=mba_z+2);
|
||||
}
|
||||
}
|
||||
|
||||
// pcb standoff holes
|
||||
if(sbc_bottom_standoffs == true) {
|
||||
for (i=[1:11:len(sbc_data[s[0]])-2]) {
|
||||
class = sbc_data[s[0]][i+1];
|
||||
type = sbc_data[s[0]][i+2];
|
||||
id = sbc_data[s[0]][i+3];
|
||||
pcbhole_x = sbc_data[s[0]][i+4]+pcb_loc_x;
|
||||
pcbhole_y = sbc_data[s[0]][i+5]+pcb_loc_y;
|
||||
pcbhole_z = sbc_data[s[0]][i+6];
|
||||
pcbhole_size = sbc_data[s[0]][i+9][0];
|
||||
pcbhole_pos = sbc_data[s[0]][i+10][4];
|
||||
|
||||
if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "left_rear" &&
|
||||
bottom_rear_left_enable == true && bottom_standoff[5] != "blind") {
|
||||
translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=6.5, h=bottom_height);
|
||||
}
|
||||
if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "left_front" &&
|
||||
bottom_front_left_enable == true && bottom_standoff[5] != "blind") {
|
||||
translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=6.5, h=bottom_height);
|
||||
}
|
||||
if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "right_rear" &&
|
||||
bottom_rear_right_enable == true && bottom_standoff[5] != "blind") {
|
||||
translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=6.5, h=bottom_height);
|
||||
}
|
||||
if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "right_front" &&
|
||||
bottom_front_right_enable == true && bottom_standoff[5] != "blind") {
|
||||
translate([pcbhole_x,pcbhole_y,-1]) cylinder(d=6.5, h=bottom_height);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// adapter standoffs
|
||||
for (i=[2:len(mb_adapters[mb[0]])-3:len(mb_adapters[mb[0]])-3]) {
|
||||
for (c=[1:1:len(mb_adapters[mb[0]])-3]) {
|
||||
mbhole_pos = mb_adapters[mb[0]][i+c][0];
|
||||
mbhole_x = mb_adapters[mb[0]][i+c][1]+mba_offset_x;
|
||||
mbhole_y = mb_adapters[mb[0]][i+c][2]+mba_offset_y;
|
||||
mbhole_z = -floorthick;
|
||||
translate([mbhole_x,mbhole_y,floorthick]) standoff(mba_standoff,[false,10,2,"default"]);
|
||||
}
|
||||
}
|
||||
// pcb standoffs
|
||||
if(sbc_bottom_standoffs == true) {
|
||||
for (i=[1:11:len(sbc_data[s[0]])-2]) {
|
||||
class = sbc_data[s[0]][i+1];
|
||||
type = sbc_data[s[0]][i+2];
|
||||
id = sbc_data[s[0]][i+3];
|
||||
pcbhole_x = sbc_data[s[0]][i+4]+pcb_loc_x;
|
||||
pcbhole_y = sbc_data[s[0]][i+5]+pcb_loc_y;
|
||||
pcbhole_z = sbc_data[s[0]][i+6];
|
||||
pcbhole_size = sbc_data[s[0]][i+9][0];
|
||||
pcbhole_pos = sbc_data[s[0]][i+10][4];
|
||||
|
||||
if(class == "pcbhole" && id == pcb_id &&
|
||||
(pcbhole_pos == "left_rear" || pcbhole_pos == "left_front" || pcbhole_pos == "right_rear" || pcbhole_pos == "right_front")) {
|
||||
if (pcbhole_pos == "left_rear" && bottom_rear_left_enable == true) {
|
||||
bottom_support = bottom_sidewall_support == true ? bottom_rear_left_support : "none";
|
||||
normal_standoff = [bottom_standoff[0],
|
||||
bottom_height-pcb_z+pcb_loc_z+bottom_rear_left_adjust,
|
||||
bottom_standoff[2],
|
||||
bottom_standoff[3],
|
||||
bottom_standoff[4],
|
||||
bottom_standoff[5],
|
||||
bottom_standoff[6],
|
||||
bottom_support,
|
||||
bottom_standoff[8],
|
||||
bottom_standoff[9],
|
||||
bottom_standoff[10],
|
||||
bottom_standoff[11]];
|
||||
translate([pcbhole_x,pcbhole_y,0]) standoff(normal_standoff,[false,10,2,"default"]);
|
||||
}
|
||||
if (pcbhole_pos == "left_front" && bottom_front_left_enable == true) {
|
||||
bottom_support = bottom_sidewall_support == true ? bottom_front_left_support : "none";
|
||||
normal_standoff = [bottom_standoff[0],
|
||||
bottom_height-pcb_z+pcb_loc_z+bottom_front_left_adjust,
|
||||
bottom_standoff[2],
|
||||
bottom_standoff[3],
|
||||
bottom_standoff[4],
|
||||
bottom_standoff[5],
|
||||
bottom_standoff[6],
|
||||
bottom_support,
|
||||
bottom_standoff[8],
|
||||
bottom_standoff[9],
|
||||
bottom_standoff[10],
|
||||
bottom_standoff[11]];
|
||||
translate([pcbhole_x,pcbhole_y,0]) standoff(normal_standoff,[false,10,2,"default"]);
|
||||
}
|
||||
if (pcbhole_pos == "right_rear" && bottom_rear_right_enable == true) {
|
||||
bottom_support = bottom_sidewall_support == true ? bottom_rear_right_support : "none";
|
||||
normal_standoff = [bottom_standoff[0],
|
||||
bottom_height-pcb_z+pcb_loc_z+bottom_rear_right_adjust,
|
||||
bottom_standoff[2],
|
||||
bottom_standoff[3],
|
||||
bottom_standoff[4],
|
||||
bottom_standoff[5],
|
||||
bottom_standoff[6],
|
||||
bottom_support,
|
||||
bottom_standoff[8],
|
||||
bottom_standoff[9],
|
||||
bottom_standoff[10],
|
||||
bottom_standoff[11]];
|
||||
translate([pcbhole_x,pcbhole_y,0]) standoff(normal_standoff,[false,10,2,"default"]);
|
||||
}
|
||||
if (pcbhole_pos == "right_front" && bottom_front_right_enable == true) {
|
||||
bottom_support = bottom_sidewall_support == true ? bottom_front_right_support : "none";
|
||||
normal_standoff = [bottom_standoff[0],
|
||||
bottom_height-pcb_z+pcb_loc_z+bottom_front_right_adjust,
|
||||
bottom_standoff[2],
|
||||
bottom_standoff[3],
|
||||
bottom_standoff[4],
|
||||
bottom_standoff[5],
|
||||
bottom_standoff[6],
|
||||
bottom_support,
|
||||
bottom_standoff[8],
|
||||
bottom_standoff[9],
|
||||
bottom_standoff[10],
|
||||
bottom_standoff[11]];
|
||||
translate([pcbhole_x,pcbhole_y,0]) standoff(normal_standoff,[false,10,2,"default"]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
translate([mba_offset_x-10, -10, -1]) cube([mba_x+20, 10, floorthick+10]);
|
||||
// translate([mba_offset_x-10, mba_y, -1]) cube([mba_x+20, 10, floorthick+4]);
|
||||
// translate([mba_offset_x-10, -10, -1]) cube([10, mba_y+20, floorthick+4]);
|
||||
// translate([mba_x+mba_offset_x, -10, -1]) cube([10, mba_y+20, floorthick+4]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
NAME: io_panel
|
||||
DESCRIPTION: creates rear io panel for legacy cases
|
||||
TODO: none
|
||||
|
||||
USAGE: io_panel()
|
||||
|
||||
*/
|
||||
module io_panel() {
|
||||
|
||||
io_window_x = 158.75;
|
||||
io_window_y = 4;
|
||||
io_window_z = 44;
|
||||
io_offset = 6.35;
|
||||
|
||||
difference() {
|
||||
union() {
|
||||
translate([-1,io_window_y-1,-1]) cube([io_window_x+2,1,io_window_z+2]);
|
||||
translate([0,0,0]) cube([io_window_x,4,io_window_z]);
|
||||
}
|
||||
translate([2,-2,2]) cube([io_window_x-4,5,io_window_z-4]);
|
||||
translate([0 ,6,bottom_height-pcb_z+pcb_loc_z-adj])
|
||||
sbc(sbc_model, cooling, fan_size, gpio_opening, uart_opening, true);
|
||||
}
|
||||
}
|
||||
|
||||
translate([-8.79,-4,0])
|
||||
|
||||
@@ -27,7 +27,7 @@ include <./sbc_case_builder_accessories.cfg>;
|
||||
/* [View] */
|
||||
// viewing mode "model", "platter", "part"
|
||||
view = "model"; // [model, platter, part]
|
||||
individual_part = "bottom"; // [top, bottom, right, left, front, rear, accessories]
|
||||
individual_part = "bottom"; // [top, bottom, right, left, front, rear, io_panel, accessories]
|
||||
// single board computer model
|
||||
sbc_model = "c1+"; // ["c1+", "c2", "c4", "hc4", "xu4", "xu4q", "mc1", "hc1", "n1", "n2", "n2+", "n2l", "n2lq", "m1", "m1s", "h2", "h2+", "h3", "h3+", "show2", "rpipico", "rpipicow", "rpicm4+ioboard", "rpicm1", "rpicm3", "rpicm3l", "rpicm3+", "rpicm4s", "rpicm4", "rpicm4l", "rpizero", "rpizerow", "rpizero2w", "rpi1a+", "rpi1b+", "rpi2b", "rpi3a+", "rpi3b", "rpi3b+", "rpi4b", "rpi5", "rock64", "rockpro64", "quartz64a", "quartz64b", "h64b", "star64", "rock4a", "rock4b", "rock4a+", "rock4b+", "rock4c", "rock4c+", "rock5b-v1.3", "rock5b", "rock5bq", "vim1", "vim2", "vim3", "vim3l", "vim4", "tinkerboard", "tinkerboard-s", "tinkerboard-2", "tinkerboard-2s", "tinkerboard-r2", "tinkerboard-r2s", "opizero", "opizero2", "opir1plus_lts", "opir1", "opi5", "jetsonnano", "lepotato", "sweetpotato", "tritium-h2+", "tritium-h3", "tritium-h5", "solitude", "alta", "atomicpi", "visionfive2", "visionfive2q", "licheerv+dock", "rak19007"]
|
||||
|
||||
@@ -40,7 +40,7 @@ sbc_highlight = false;
|
||||
// enable highlight for accessory subtractive geometry
|
||||
accessory_highlight = false;
|
||||
// base case design
|
||||
case_design = "shell"; // [shell,panel,stacked,tray,tray_sides,tray_vu5,tray_vu7,round,hex,snap,fitted,paper_split-top,paper_full-top]
|
||||
case_design = "shell"; // [shell,panel,stacked,tray,tray_sides,tray_vu5,tray_vu7,round,hex,snap,fitted,paper_split-top,paper_full-top,adapter_atx,adapter_micro-atx,adapter_dtx,adapter_flex-atx,adapter_mini-dtx,adapter_mini-itx,adapter_mini-stx,adapter_nano-itx,adapter_nuc,adapter_pico-itx]
|
||||
|
||||
// raises top mm in model view or < 0 = off
|
||||
raise_top = 0; // [-1:100]
|
||||
@@ -100,7 +100,7 @@ tol = .25; //[-.5:.0625:.5]
|
||||
sbc_top_standoffs = true;
|
||||
top_standoff_reverse = true;
|
||||
// enable wall support for standoffs
|
||||
top_sidewall_support = true;
|
||||
top_sidewall_support = false;
|
||||
top_standoff_type = "blind"; //[none, countersunk, recessed, nut holder, blind]
|
||||
top_standoff_pillar = "hex"; //[hex, round]
|
||||
top_standoff_diameter = 5.75; //[0:.01:10]
|
||||
@@ -134,7 +134,7 @@ top_front_right_support = "front"; //[none,left,rear,front,right]
|
||||
sbc_bottom_standoffs = true;
|
||||
bottom_standoff_reverse = false;
|
||||
// enable wall support for standoffs
|
||||
bottom_sidewall_support = true;
|
||||
bottom_sidewall_support = false;
|
||||
bottom_standoff_type = "countersunk"; //[none, countersunk, recessed, nut holder, blind]
|
||||
bottom_standoff_pillar = "hex"; //[hex, round]
|
||||
bottom_standoff_diameter = 5.75; //[2:.01:10]
|
||||
@@ -437,6 +437,10 @@ if (view == "platter") {
|
||||
if(case_design == "paper_split-top" || case_design == "paper_full-top") {
|
||||
case_folded(case_design);
|
||||
}
|
||||
if(case_design == "adapter_mini-itx" || case_design == "adapter_flex-atx" || case_design == "adapter_mini-dtx" || case_design == "adapter_dtx" || case_design == "adapter_micro-atx" || case_design == "adapter_atx" || case_design == "adapter_mini-stx" || case_design == "adapter_nano-itx" || case_design == "adapter_nuc" || case_design == "adapter_pico-itx") {
|
||||
color("dimgrey",1) case_adapter(case_design);
|
||||
color("dimgrey",1) translate([-180, 0, 4]) rotate([270,0,0]) io_panel();
|
||||
}
|
||||
if(case_design == "tray" || case_design == "tray_vu5" || case_design == "tray_vu7" || case_design == "tray_sides") {
|
||||
echo(Case_Width=width+2*sidethick,Depth=depth,Top=top_height,Bottom=bottom_height);
|
||||
}
|
||||
@@ -690,6 +694,14 @@ if (view == "model") {
|
||||
}
|
||||
}
|
||||
}
|
||||
if(case_design == "adapter_mini-itx" || case_design == "adapter_flex-atx" || case_design == "adapter_mini-dtx" || case_design == "adapter_dtx" || case_design == "adapter_micro-atx" || case_design == "adapter_atx" || case_design == "adapter_mini-stx" || case_design == "adapter_nano-itx" || case_design == "adapter_nuc" || case_design == "adapter_pico-itx") {
|
||||
color("dimgrey",1) case_adapter(case_design);
|
||||
if(sbc_off == false) {
|
||||
translate([pcb_loc_x ,pcb_loc_y,bottom_height-pcb_z+pcb_loc_z])
|
||||
sbc(sbc_model, cooling, fan_size, gpio_opening, uart_opening, false);
|
||||
}
|
||||
color("dimgrey",1) translate([0,-4,0]) io_panel();
|
||||
}
|
||||
// ui access panel
|
||||
if(bottom_access_panel_enable == true) {
|
||||
if(access_panel_rotation == 0) {
|
||||
@@ -786,6 +798,12 @@ if (view == "part") {
|
||||
}
|
||||
if(individual_part == "bottom") {
|
||||
case_bottom(case_design);
|
||||
if(case_design == "adapter_mini-itx" || case_design == "adapter_flex-atx" || case_design == "adapter_mini-dtx" || case_design == "adapter_dtx" || case_design == "adapter_micro-atx" || case_design == "adapter_atx" || case_design == "adapter_mini-stx" || case_design == "adapter_nano-itx" || case_design == "adapter_nuc" || case_design == "adapter_pico-itx") {
|
||||
color("dimgrey",1) case_adapter(case_design);
|
||||
}
|
||||
else {
|
||||
case_bottom(case_design);
|
||||
}
|
||||
}
|
||||
if(individual_part == "front") {
|
||||
if(case_design == "panel") {
|
||||
@@ -817,6 +835,11 @@ if (view == "part") {
|
||||
case_side(case_design,"left");
|
||||
}
|
||||
}
|
||||
if(individual_part == "io_panel") {
|
||||
if(case_design == "adapter_mini-itx" || case_design == "adapter_flex-atx" || case_design == "adapter_mini-dtx" || case_design == "adapter_dtx" || case_design == "adapter_micro-atx" || case_design == "adapter_atx" || case_design == "adapter_mini-stx" || case_design == "adapter_nano-itx" || case_design == "adapter_nuc" || case_design == "adapter_pico-itx") {
|
||||
color("dimgrey",1) translate([0, 0, 4]) rotate([270,0,0]) io_panel();
|
||||
}
|
||||
}
|
||||
if(individual_part == "accessories") {
|
||||
// ui access panel
|
||||
if(bottom_access_panel_enable == true) {
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
use <./SBC_Model_Framework/sbc_models_library.scad>
|
||||
|
||||
include <./mod/add.scad>;
|
||||
include <./mod/case_adapter.scad>;
|
||||
include <./mod/case_bottom.scad>;
|
||||
include <./mod/case_side.scad>;
|
||||
include <./mod/case_top.scad>;
|
||||
|
||||
Reference in New Issue
Block a user