fixed model view sections, fixed tray cases nut holder placement, changed fan mask direction and finalized standard form adapters and cases.

This commit is contained in:
Edward Kisiel
2024-04-22 16:09:31 -04:00
parent 42593fa92f
commit 0807d49dbb
8 changed files with 173 additions and 159 deletions

View File

@@ -3,7 +3,7 @@
// After running this script, copy the output from the first Echo command into the
// list of SBC boards in `sbc_case_builder.scad:32`
// Also copy the output from the second Echo command into the list of case acceessory
// sets in `sbc_case_builder.scad:258`
// sets in `sbc_case_builder.scad:196`
include <./SBC_Model_Framework/sbc_models.cfg>;
include <./sbc_case_builder_accessories.cfg>;

View File

@@ -73,16 +73,16 @@ module fans(style, mask) {
if(enablemask == true) {
if(mstyle == "fan_open") {
translate([0, 0, -adj-msetback]) fan_mask(diameter, mlength, "fan_open");
translate([0, 0, -mlength+msetback-1]) fan_mask(diameter, mlength, "fan_open");
}
if(mstyle == "default" || mstyle == "fan_1") {
translate([0, 0, -adj-msetback]) fan_mask(diameter, mlength, "fan_1");
translate([0, 0, -mlength+msetback-1]) fan_mask(diameter, mlength, "fan_1");
}
if(mstyle == "fan_2") {
translate([0, 0, -adj-msetback]) fan_mask(diameter, mlength, "fan_2");
translate([0, 0, -mlength+msetback-1]) fan_mask(diameter, mlength, "fan_2");
}
if(mstyle == "fan_hex") {
translate([0, 0, -adj-msetback]) fan_mask(diameter, mlength, "fan_hex");
translate([0, 0, -mlength+msetback-1]) fan_mask(diameter, mlength, "fan_hex");
}
}
if(enablemask == false) {

View File

@@ -18,7 +18,7 @@
NAME: case_adapter
DESCRIPTION: creates adapters for legacy cases footprints
TODO: verify mini-stx and nano-itx hole locations
TODO: nano-itx hole locations
USAGE: case_adapter(case_design)
@@ -27,7 +27,15 @@
module case_adapter(case_design) {
mb_adapters=[
["adapter_atx", 304.8, 243.84, ["left_rear", 6.35, 33.02], ["middle_rear", 163.83, 10.16], ["right_rear", 288.29, 10.16],
["adapter_ssi-eeb", 304.8, 330.2, ["left_rear", 6.35, 33.02], ["middle_rear", 163.83, 10.16], ["right_rear", 288.29, 10.16],
["left_middle", 6.35, 165.1], ["middle_middle", 163.83, 165.1], ["right_middle", 288.29, 165.1],
["middle_middle2", 209.55, 237.49], ["right_middle2", 288.29, 237.49],
["left_front", 6.35, 322.58], ["middle_front", 163.83, 322.58], ["right_front", 299.72, 322.58]],
["adapter_ssi-ceb", 304.8, 266.7, ["left_rear", 6.35, 33.02], ["middle_rear", 163.83, 10.16], ["right_rear", 288.29, 10.16],
["left_middle", 6.35, 165.1], ["middle_middle", 163.83, 165.1], ["right_middle", 288.29, 165.1],
["middle_front", 209.55, 237.49], ["right_front", 288.29, 237.49]],
["adapter_atx", 304.8, 243.84, ["left_rear", 6.35, 33.02], ["middle_rear", 163.83, 10.16],
["middle2_rear", 211.99, 10.16], ["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],
@@ -44,6 +52,8 @@ mb_adapters=[
["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-itx_thin", 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", 140, 147, ["left_rear", 5, 5], ["right_rear", 135, 5],
["left_front", 5, 142], ["right_front", 135, 142]],
];
@@ -301,9 +311,6 @@ mb_adapters=[
}
}
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]);
}
// additive accessories
if(accessory_name != "none") {
@@ -348,18 +355,18 @@ mb_adapters=[
/*
NAME: io_plate
NAME: io_shield
DESCRIPTION: creates rear io panel for legacy cases
TODO: none
USAGE: io_plate()
USAGE: io_shield()
*/
module io_plate() {
module io_shield() {
io_window_x = case_design == "adapter_mini-stx" ? 123.95 : 158.75;
io_window_x = case_design == ("adapter_mini-stx") ? 123.95 : 158.75;
io_window_y = 4;
io_window_z = case_design == "adapter_mini-stx" ? 40 : case_design == "adapter_thin-mini-stx" ? 25 : 44;
io_window_z = case_design == "adapter_mini-stx" ? 40 : case_design == "adapter_mini-itx_thin" ? 25 : 44;
io_offset = case_design == "adapter_mini-stx" ? 1.2 : 10.79;
difference() {

View File

@@ -106,7 +106,7 @@ module case_bottom(case_design) {
rotate([90,0,90]) cylinder(d=10, h=4, $fn=6);
}
else {
translate([-adj-gap,wallthick+gap+pcb_depth-8,floorthick+3.4])
translate([-adj-gap,wallthick+gap+pcb_depth+case_offset_y-8,floorthick+3.4])
rotate([90,0,90]) cylinder(d=10, h=4, $fn=6);
}
}
@@ -126,7 +126,7 @@ module case_bottom(case_design) {
rotate([90,0,90]) cylinder(d=10, h=4, $fn=6);
}
else {
translate([width-wallthick-gap-wallthick-4+adj,wallthick+gap+pcb_depth-8,floorthick+3.4])
translate([width-wallthick-gap-wallthick-4+adj,wallthick+gap+pcb_depth+case_offset_y-8,floorthick+3.4])
rotate([90,0,90]) cylinder(d=10, h=4, $fn=6);
}
}
@@ -335,6 +335,7 @@ module case_bottom(case_design) {
rotate([90,0,90]) cylinder(d=6.6, h=3.5, $fn=6);
}
else {
echo(pcb_depth+case_offset_y-10);
translate([-wallthick-gap-adj-6,wallthick+gap+pcb_depth+case_offset_y-8,
floorthick+3.4]) rotate([0,90,0]) cylinder(d=3, h=10+sidethick+(2*adj));
translate([-gap+.6,wallthick+gap+pcb_depth+case_offset_y-8,floorthick+3.4])
@@ -456,12 +457,15 @@ module case_bottom(case_design) {
}
}
}
// rear io plate opening for standard form motherboards
if(rear_io_plate == true) {
// rear io shield opening for standard form motherboards
if(rear_io_shield == true) {
if(sbc_model == "mini-stx") {
translate([6.2+pcb_loc_x,-4.5,-4.4+bottom_height-case_offset_bz-pcb_z+pcb_loc_z]) cube([123.95, 10+pcb_loc_y, 40]);
}
else {
if(sbc_model == "mini-itx_thin") {
translate([-2.62+pcb_loc_x,-4.5,-2+bottom_height-case_offset_bz-pcb_z+pcb_loc_z]) cube([158.75, 10+pcb_loc_y, 25]);
}
if(sbc_model != "mini-stx" && sbc_model != "mini-itx_thin") {
translate([-2.62+pcb_loc_x,-4.5,-2+bottom_height-case_offset_bz-pcb_z+pcb_loc_z]) cube([158.75, 10+pcb_loc_y, 44]);
}
}

View File

@@ -119,7 +119,7 @@ module case_top(case_design) {
floorthick+3.4]) rotate([0,90,0]) cylinder(d=3, h=10+sidethick+(2*adj));
}
else {
translate([-wallthick-gap-adj-6,wallthick+gap+pcb_depth-8,
translate([-wallthick-gap-adj-6,wallthick+gap+pcb_depth+case_offset_y-8,
floorthick+3.4]) rotate([0,90,0]) cylinder(d=3, h=10+sidethick+(2*adj));
}
}
@@ -139,7 +139,7 @@ module case_top(case_design) {
floorthick+3.4]) rotate([0,90,0]) cylinder(d=3, h=10+sidethick+(2*adj));
}
else {
translate([width-3*(wallthick+gap)-adj,wallthick-gap+pcb_depth-8,
translate([width-3*(wallthick+gap)-adj,wallthick-gap+pcb_depth+case_offset_y-8,
floorthick+3.4]) rotate([0,90,0]) cylinder(d=3, h=10+sidethick+(2*adj));
}
}
@@ -379,12 +379,15 @@ module case_top(case_design) {
}
}
}
// rear io plate opening for standard form motherboards
if(rear_io_plate == true) {
// rear io shield opening for standard form motherboards
if(rear_io_shield == true) {
if(sbc_model == "mini-stx") {
translate([6.2+pcb_loc_x,-4.5,-4.4+bottom_height-case_offset_bz-pcb_z+pcb_loc_z]) cube([123.95, 10+pcb_loc_y, 40]);
}
else {
if(sbc_model == "mini-itx_thin") {
translate([-2.62+pcb_loc_x,-4.5,-2+bottom_height-case_offset_bz-pcb_z+pcb_loc_z]) cube([158.75, 10+pcb_loc_y, 25]);
}
if(sbc_model != "mini-stx" && sbc_model != "mini-itx_thin") {
translate([-2.62+pcb_loc_x,-4.5,-2+bottom_height-case_offset_bz-pcb_z+pcb_loc_z]) cube([158.75, 10+pcb_loc_y, 44]);
}
}

View File

@@ -110,7 +110,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -259,7 +259,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -408,7 +408,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -557,7 +557,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -707,7 +707,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "4",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -856,7 +856,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -1005,7 +1005,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -1154,7 +1154,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -1231,7 +1231,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sata_knockout": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
@@ -1361,7 +1361,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -1510,7 +1510,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -1659,7 +1659,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -1808,7 +1808,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -1957,7 +1957,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -2107,7 +2107,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -2406,7 +2406,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -2556,7 +2556,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -2706,7 +2706,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -2855,7 +2855,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -3004,7 +3004,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "2",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -3153,7 +3153,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "2",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -3302,7 +3302,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -3451,7 +3451,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -3600,7 +3600,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -3749,7 +3749,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -3898,7 +3898,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -4047,7 +4047,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -4197,7 +4197,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -4347,7 +4347,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -4497,7 +4497,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -4647,7 +4647,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -4797,7 +4797,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -4947,7 +4947,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -5097,7 +5097,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -5247,7 +5247,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -5397,7 +5397,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -5547,7 +5547,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -5697,7 +5697,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -5847,7 +5847,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -5997,7 +5997,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -6147,7 +6147,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -6297,7 +6297,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -6447,7 +6447,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -6597,7 +6597,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -6747,7 +6747,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -6897,7 +6897,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -7047,7 +7047,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -7197,7 +7197,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -7347,7 +7347,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "false",
"rear_io_shield": "false",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -7496,7 +7496,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "0",
"raise_top": "0",
"rear_io_plate": "true",
"rear_io_shield": "true",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -7645,7 +7645,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "4",
"raise_top": "0",
"rear_io_plate": "true",
"rear_io_shield": "true",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",
@@ -7794,7 +7794,7 @@
"pcb_loc_y": "0",
"pcb_loc_z": "4",
"raise_top": "0",
"rear_io_plate": "true",
"rear_io_shield": "true",
"sbc_bottom_standoffs": "true",
"sbc_highlight": "false",
"sbc_information": "false",

View File

@@ -27,9 +27,9 @@ 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, io_plate, accessories]
individual_part = "bottom"; // [top, bottom, right, left, front, rear, io_shield, 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", "atx", "micro-atx", "dtx", "flex-atx", "mini-dtx", "mini-itx", "mini-stx", "nano-itx", "nuc", "pico-itx"]
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", "nio12", "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", "ssi-eeb", "ssi-ceb", "atx", "micro-atx", "dtx", "flex-atx", "mini-dtx", "mini-itx", "mini-itx_thin", "mini-stx", "nano-itx", "nuc", "pico-itx"]
// sbc off in model view
sbc_off = false;
@@ -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,adapter_atx,adapter_micro-atx,adapter_dtx,adapter_flex-atx,adapter_mini-dtx,adapter_mini-itx,adapter_mini-stx]
case_design = "shell"; // [shell,panel,stacked,tray,tray_sides,tray_vu5,tray_vu7,round,hex,snap,fitted,paper_split-top,paper_full-top,adapter_ssi-eeb,adapter_ssi-ceb,adapter_atx,adapter_micro-atx,adapter_dtx,adapter_flex-atx,adapter_mini-dtx,adapter_mini-itx,adapter_mini-itx_thin,adapter_mini-stx]
// raises top mm in model view or < 0 = off
raise_top = 0; // [-1:100]
@@ -66,10 +66,10 @@ bottom_clearence = 3.5; //[-10:.01:10]
flat_blank_section = false;
/* [Standard Motherboard Case Settings] */
// adjustment for atx, micro-atx, dtx, flex-atx, mini-dtx, mini-itx, mini-stx, nano-itx,nuc, pico-itx PCB thickness from 2mm default//
// adjustment for ssi-eeb, ssi-ceb, atx, micro-atx, dtx, flex-atx, mini-dtx, mini-itx, mini-stx, nano-itx,nuc, pico-itx PCB thickness from 2mm default//
standard_motherboard_thickness = 0; //[-3:.01:3]
// rear io plate opening for standard form motherboards
rear_io_plate = false;
rear_io_shield = false;
/* [3D Case Adjustments] */
// sbc location x axis
@@ -276,7 +276,7 @@ pcb_bmaxz = sbc_data[s[0]][11][6];
pcb_color = sbc_data[s[0]][11][1];
pcb_radius = sbc_data[s[0]][11][0];
pcb_z = sbc_model == "atx" || sbc_model == "micro-atx" || sbc_model == "dtx" || sbc_model == "flex-atx" || sbc_model == "mini-dtx" || sbc_model == "mini-itx" || sbc_model == "mini-stx" || sbc_model == "nano-itx" || sbc_model == "nuc" || sbc_model == "pico-itx" ? pcb_z_orig + standard_motherboard_thickness : pcb_z_orig;
pcb_z = sbc_model == "ssi-eeb" || sbc_model == "ssi-ceb" || sbc_model == "atx" || sbc_model == "micro-atx" || sbc_model == "dtx" || sbc_model == "flex-atx" || sbc_model == "mini-dtx" || sbc_model == "mini-itx" || sbc_model == "mini-stx" || sbc_model == "nano-itx" || sbc_model == "nuc" || sbc_model == "pico-itx" ? pcb_z_orig + standard_motherboard_thickness : pcb_z_orig;
width = pcb_width+2*(wallthick+gap)+case_offset_x;
depth = pcb_depth+2*(wallthick+gap)+case_offset_y;
top_height = pcb_tmaxz+floorthick+case_offset_tz+pcb_loc_z;
@@ -385,9 +385,9 @@ if (view == "platter") {
case_bottom(case_design);
translate([0,(2*depth)+20,case_z+floorthick]) rotate([180,0,0]) case_top(case_design);
}
if(case_design == "adapter_mini-stx" || 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") {
if(case_design == "adapter_mini-stx" || case_design == "adapter_mini-itx_thin" || 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_ssi-ceb" || case_design == "adapter_ssi-eeb") {
color("dimgrey",1) case_adapter(case_design);
color("dimgrey",1) translate([-180, 0, 4]) rotate([270,0,0]) io_plate();
color("dimgrey",1) translate([-180, 0, 4]) rotate([270,0,0]) io_shield();
}
// ui access panel
if(bottom_access_panel_enable == true) {
@@ -467,57 +467,53 @@ if (view == "model") {
difference() {
color("dimgrey",1) translate([0,0,-lower_bottom]) case_bottom(case_design);
if(move_rear < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom])
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom-1])
cube([width+2,gap+wallthick+1.01,case_z+2]);
}
if(move_front < 0) {
translate([-gap-wallthick-1,depth-2*(gap+wallthick),-lower_bottom])
translate([-gap-wallthick-1,depth-2*(gap+wallthick),-lower_bottom-1])
cube([width+2,gap+wallthick+1.01,case_z+2]);
}
if(move_leftside < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom])
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+1.01,depth+2,case_z+2]);
}
if(move_rightside < 0) {
translate([width-gap-(2*wallthick)-adj,-gap-wallthick-1,-lower_bottom])
cube([gap+wallthick,depth+2,case_z+2]);
translate([width-2*(gap+wallthick),-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+1,depth+2,case_z+2]);
}
}
}
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);
}
if(raise_top >= 0) {
difference() {
color("grey",1) translate([0,0,raise_top]) case_top(case_design);
if(move_rear < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,raise_top])
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom-1])
cube([width+2,gap+wallthick+1.01,case_z+2]);
}
if(move_front < 0) {
translate([-gap-wallthick-1,depth-2*(gap+wallthick),raise_top])
translate([-gap-wallthick-1,depth-2*(gap+wallthick),-lower_bottom-1])
cube([width+2,gap+wallthick+1.01,case_z+2]);
}
if(move_leftside < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,raise_top])
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+1.01,depth+2,case_z+2]);
}
if(move_rightside < 0) {
translate([width-gap-(2*wallthick)-adj,-gap-wallthick-1,raise_top])
cube([gap+wallthick,depth+2,case_z+2]);
translate([width-2*(gap+wallthick),-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+1,depth+2,case_z+2]);
}
}
}
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);
}
}
if(case_design == "panel") {
if(lower_bottom >= 0) {
color("dimgrey",1) translate([0,0,-lower_bottom]) case_bottom(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);
}
if(raise_top >= 0) {
color("grey",1) translate([0,0,raise_top])case_top(case_design);
}
@@ -533,63 +529,63 @@ if (view == "model") {
if(move_leftside >= 0) {
color("grey",1) translate([-move_leftside,0,0]) case_side(case_design,"left");
}
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);
}
}
if(case_design == "stacked") {
if(lower_bottom >= 0) {
color("grey",1) translate([0,0,-lower_bottom]) case_bottom(case_design);
}
if(raise_top >= 0) {
color("grey",1) translate([0,0,raise_top]) case_top(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);
}
if(raise_top >= 0) {
color("grey",1) translate([0,0,raise_top]) case_top(case_design);
}
}
if(case_design == "tray" || case_design == "tray_vu5" || case_design == "tray_vu7" || case_design == "tray_sides") {
if(case_design == "tray" || case_design == "tray_sides" || case_design == "tray_vu5" || case_design == "tray_vu7") {
if(lower_bottom >= 0) {
difference() {
color("dimgrey",1) translate([0,0,-lower_bottom]) case_bottom(case_design);
if(move_rear < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom])
cube([width+2,gap+wallthick+1.01,case_z+2]);
translate([-gap-wallthick-sidethick-1,-gap-wallthick-1,-lower_bottom-1])
cube([width+2*sidethick+2,gap+wallthick+1.01,case_z+5]);
}
if(move_front < 0) {
translate([-gap-wallthick-1,depth-2*(gap+wallthick)-1.01,-lower_bottom])
cube([width+2,gap+wallthick+1.01,case_z+2]);
translate([-gap-wallthick-sidethick-1,depth-2*(gap+wallthick),-lower_bottom-1])
cube([width+2*sidethick+2,gap+wallthick+1.01,case_z+5]);
}
if(move_leftside < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom])
cube([gap+wallthick+1.01,depth+2,case_z+2]);
translate([-gap-wallthick-sidethick-1,-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+2*sidethick+1.01,depth+2,case_z+5]);
}
if(move_rightside < 0) {
translate([width-(2*wallthick)-adj-1.01,-gap-wallthick-1,-lower_bottom])
cube([gap+wallthick+1,depth+2,case_z+2]);
translate([width-sidethick-2*(gap+wallthick),-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+2*sidethick+1,depth+2,case_z+5]);
}
}
}
if(sbc_off == false) {
translate([pcb_loc_x,pcb_loc_y,bottom_height-pcb_z+pcb_loc_z-adj])
sbc(sbc_model, cooling, fan_size, gpio_opening, uart_opening, false);
}
if(raise_top >= 0) {
difference() {
color("grey",1) translate([0,0,raise_top]) case_top(case_design);
if(move_rear < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,raise_top])
cube([width+2,gap+wallthick+1.01,case_z+2]);
translate([-gap-wallthick-sidethick-1,-gap-wallthick-1,-lower_bottom-1])
cube([width+2*sidethick+2,gap+wallthick+1.01,case_z+5]);
}
if(move_front < 0) {
translate([-gap-wallthick-1,depth-gap-wallthick-2.01,raise_top])
cube([width+2,gap+wallthick+1.01,case_z+2]);
translate([-gap-wallthick-sidethick-1,depth-2*(gap+wallthick),-lower_bottom-1])
cube([width+2*sidethick+2,gap+wallthick+1.01,case_z+5]);
}
if(move_leftside < 0) {
translate([-gap-2*wallthick-1,-gap-wallthick-1,raise_top])
cube([gap+wallthick+1.01,depth+2,case_z+2]);
translate([-gap-wallthick-sidethick-1,-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+2*sidethick+1.01,depth+2,case_z+5]);
}
if(move_rightside < 0) {
translate([width-gap-wallthick-2.01,-gap-wallthick-1,raise_top])
cube([gap+2*wallthick+1,depth+2,case_z+2]);
translate([width-sidethick-2*(gap+wallthick),-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+2*sidethick+1,depth+2,case_z+5]);
}
}
}
@@ -637,78 +633,82 @@ if (view == "model") {
color("darkgrey",.5) translate([-((192.90-100)/2)+(width/2)-wallthick-gap-53.5,depth+11.5,
case_z+27]) rotate([-15,0,180]) hk_speaker();
}
if(sbc_off == false) {
translate([pcb_loc_x,pcb_loc_y,bottom_height-pcb_z+pcb_loc_z-adj])
sbc(sbc_model, cooling, fan_size, gpio_opening, uart_opening, false);
}
}
if(case_design == "round" || case_design == "hex") {
if(lower_bottom >= 0) {
color("dimgrey",1) translate([0,0,-lower_bottom]) case_bottom(case_design);
}
if(raise_top >= 0) {
color("grey",1) translate([0,0,raise_top]) case_top(case_design);
}
if(sbc_off == false) {
translate([pcb_loc_x ,pcb_loc_y,bottom_height-pcb_z+pcb_loc_z-adj])
sbc(sbc_model, cooling, fan_size, gpio_opening, uart_opening, false);
}
if(raise_top >= 0) {
color("grey",1) translate([0,0,raise_top]) case_top(case_design);
}
}
if(case_design == "snap" || case_design == "fitted") {
if(lower_bottom >= 0) {
difference() {
color("dimgrey",1) translate([0,0,-lower_bottom]) case_bottom(case_design);
if(move_rear < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom])
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom-1])
cube([width+2,gap+wallthick+1.01,case_z+2]);
}
if(move_front < 0) {
translate([-gap-wallthick-1,depth-2*(wallthick+gap)-adj,-lower_bottom])
cube([width+2,2*(gap+wallthick)+adj,case_z+2]);
translate([-gap-wallthick-1,depth-2*(gap+wallthick),-lower_bottom-1])
cube([width+2,gap+wallthick+1.01,case_z+2]);
}
if(move_leftside < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom])
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+1.01,depth+2,case_z+2]);
}
if(move_rightside < 0) {
translate([width-2*(wallthick+gap)-adj,-gap-wallthick-1,-lower_bottom])
translate([width-2*(gap+wallthick),-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+1,depth+2,case_z+2]);
}
}
}
if(sbc_off == false) {
translate([pcb_loc_x ,pcb_loc_y,bottom_height-pcb_z+pcb_loc_z-adj])
sbc(sbc_model, cooling, fan_size, gpio_opening, uart_opening, false);
}
if(raise_top >= 0) {
difference() {
color("grey",1) translate([0,0,raise_top]) case_top(case_design);
if(move_rear < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,raise_top])
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom-1])
cube([width+2,gap+wallthick+1.01,case_z+2]);
}
if(move_front < 0) {
translate([-gap-wallthick-1,depth-gap-wallthick-2.01,raise_top])
translate([-gap-wallthick-1,depth-2*(gap+wallthick),-lower_bottom-1])
cube([width+2,gap+wallthick+1.01,case_z+2]);
}
if(move_leftside < 0) {
translate([-gap-wallthick-1,-gap-wallthick-1,raise_top])
translate([-gap-wallthick-1,-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+1.01,depth+2,case_z+2]);
}
if(move_rightside < 0) {
translate([width-gap-wallthick-2.01,-gap-wallthick-1,raise_top])
translate([width-2*(gap+wallthick),-gap-wallthick-1,-lower_bottom-1])
cube([gap+wallthick+1,depth+2,case_z+2]);
}
}
}
if(sbc_off == false) {
translate([pcb_loc_x ,pcb_loc_y,bottom_height-pcb_z+pcb_loc_z-adj])
sbc(sbc_model, cooling, fan_size, gpio_opening, uart_opening, false);
}
}
if(case_design == "adapter_mini-stx" || 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") {
if(case_design == "adapter_mini-stx" || case_design == "adapter_mini-itx_thin" || 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_ssi-ceb" || case_design == "adapter_ssi-eeb") {
color("dimgrey",1) case_adapter(case_design);
if(sbc_off == false) {
translate([pcb_loc_x ,pcb_loc_y,bottom_height-case_offset_bz-pcb_z+pcb_loc_z])
sbc(sbc_model, cooling, fan_size, gpio_opening, uart_opening, false);
}
if(case_design == "adapter_mini-stx") {
color("dimgrey",1) translate([-1.2,-4.5,-2]) io_plate();
color("dimgrey",1) translate([-1.2,-4.5,-2]) io_shield();
}
else {
color("dimgrey",1) translate([-10.79,-4.5,-2]) io_plate();
color("dimgrey",1) translate([-10.79,-4.5,-2]) io_shield();
}
}
// ui access panel
@@ -806,7 +806,7 @@ if (view == "part") {
}
}
if(individual_part == "bottom") {
if(case_design == "adapter_mini-stx" || 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") {
if(case_design == "adapter_mini-stx" || case_design == "adapter_mini-itx_thin" || 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_ssi-ceb" || case_design == "adapter_ssi-eeb") {
case_adapter(case_design);
}
else {
@@ -843,9 +843,9 @@ if (view == "part") {
case_side(case_design,"left");
}
}
if(individual_part == "io_plate") {
if(case_design == "adapter_mini-stx" || 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") {
translate([0, 0, 4]) rotate([270,0,0]) io_plate();
if(individual_part == "io_shield") {
if(case_design == "adapter_mini-stx" || case_design == "adapter_mini-itx_thin" || 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_ssi-ceb" || case_design == "adapter_ssi-eeb") {
translate([0, 0, 4]) rotate([270,0,0]) io_shield();
}
}
if(individual_part == "accessories") {

View File

@@ -208,7 +208,7 @@ accessory_data = [
"add2","hd_holder",10,-24,1.99,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,"portrait"],[false,10,2,"default"],
"model","hd25",10,-24,2,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait",15],[true,17,2,"both"],
"model","hd25",10,-24,20,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait",15],[true,17,2,"default"],
"model","fan",5.25,10,7.5,"bottom",[90,0,0],["case",true,false,false],[40,0,3],["box40x10"],[true,10,-6,"fan_open"],
"model","fan",37,10,7,"bottom",[90,0,0],["case",true,false,false],[40,0,3],["box40x10"],[true,10,15,"fan_open"],
"model","fan_cover",37,-4,7,"bottom",[90,0,0],["case",true,false,false],[40,0,3],["fan_1"],[false,10,2,"default"],
"platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],["fan_1"],[false,10,2,"default"]],
@@ -224,7 +224,7 @@ accessory_data = [
"add2","hd_holder",12,-21,1.99,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,"portrait"],[false,10,2,"default"],
"model","hd25",12,-21,2,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait",15],[true,20,2,"both"],
"model","hd25",12,-21,20,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait",15],[true,20,2,"default"],
"model","fan",39,10,7.5,"bottom",[90,0,0],["case",true,false,false],[40,0,3],["box40x10"],[true,10,-6,"fan_open"],
"model","fan",39,10,7.5,"bottom",[90,0,0],["case",true,false,false],[40,0,3],["box40x10"],[true,10,2,"fan_open"],
"model","fan_cover",39,-4,7.5,"top",[90,0,0],["case",true,false,false],[40,0,3],["fan_1"],[false,10,2,"default"],
"platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],["fan_1"],[false,10,2,"default"]],
@@ -241,7 +241,7 @@ accessory_data = [
"sub","vent",92,35,9,"bottom",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"],
"add1","hk_hc4_oled_holder",20,82,1.99,"bottom",[0,0,0],["case",false,true,false],[0,0,2],[0],[true,10,2,"default"],
"model","hk_hc4_oled",20,82,1.99,"bottom",[0,0,0],["case",false,true,false],[0,0,0],[0],[false,10,2,"default"],
"model","fan",40,10,30,"top",[90,0,0],["case",true,false,false],[40,0,3],["box40x10"],[true,10,-6,"fan_open"],
"model","fan",40,10,30,"top",[90,0,0],["case",true,false,false],[40,0,3],["box40x10"],[true,10,2,"fan_open"],
"model","fan_cover",40,-3,30,"top",[90,0,0],["case",true,false,false],[40,0,3],["fan_1"],[false,10,2,"default"],
"platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],["fan_1"],[false,10,2,"default"]],
@@ -258,7 +258,7 @@ accessory_data = [
"model","hd35",-21,-67,3,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait"],[true,20,2,"both"],
"model","hd35",-21,-67,35,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait"],[true,20,2,"default"],
"model","fan_cover",5.5,-4,7,"top",[90,0,0],["case",true,false,false],[40,0,3],["fan_1"],[false,10,2,"default"],
"model","fan",5.25,10,7.5,"bottom",[90,0,0],["case",true,false,false],[40,0,3],["box40x10"],[true,10,-6,"fan_open"],
"model","fan",5.25,10,7.5,"bottom",[90,0,0],["case",true,false,false],[40,0,3],["box40x10"],[true,10,2,"fan_open"],
"platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],["fan_1"],[false,10,2,"default"]],
// Odroid-M1S
@@ -305,7 +305,7 @@ accessory_data = [
["m1_fitted_pizzabox2.5",
"sub","vent",-3.75,30,9,"bottom",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"],
"sub","vent",93,30,9,"bottom",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"],
"model","fan",10,1,25,"top",[0,0,0],["case",true,true,true],[0,0,0],["box60x10"],[true,10,-10,"fan_hex"],
"model","fan",10,1,25,"top",[0,0,0],["case",true,true,true],[0,0,0],["box60x10"],[true,10,2,"fan_hex"],
"add2","standoff",22,36,0,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[[5.75,5,3.6,10,4,"countersunk","hex",false,false,4.5,5.1]],[true,10,2,"default"],
"add2","standoff",22,112.5,0,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[[5.75,5,3.6,10,4,"countersunk","hex",false,false,4.5,5.1]],[true,10,2,"default"],
"add2","standoff",83.5,36,0,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[[5.75,5,3.6,10,4,"countersunk","hex",false,false,4.5,5.1]],[true,10,2,"default"],
@@ -316,7 +316,7 @@ accessory_data = [
"sub","vent",-3.75,60,9,"bottom",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"],
"sub","vent",92,60,9,"bottom",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"],
"suball","vent",-89,126,15,"bottom",[0,0,0],["case",true,true,false],[2,13,4],[1,4,"vertical",1],[false,10,2,"default"],
"model","fan",-100,63,25,"top",[0,0,0],["case",true,true,true],[0,0,0],["box60x10"],[true,10,-10,"fan_hex"],
"model","fan",-100,63,25,"top",[0,0,0],["case",true,true,true],[0,0,0],["box60x10"],[true,10,2,"fan_hex"],
"add2","standoff",-8.75,14.25,0,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[[5.75,5,3.6,10,4,"countersunk","hex",false,false,4.5,5.1]],[true,10,2,"default"],
"add2","standoff",-8.75,58.75,0,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[[5.75,5,3.6,10,4,"countersunk","hex",false,false,4.5,5.1]],[true,10,2,"default"],
"add2","standoff",-8.75,90.5,0,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[[5.75,5,3.6,10,4,"countersunk","hex",false,false,4.5,5.1]],[true,10,2,"default"],
@@ -331,7 +331,7 @@ accessory_data = [
"sub","vent",111.5,30,18,"top",[0,0,90],["case",true,false,true],[2,12,4],[1,17,"vertical",1],[false,10,2,"default"],
"sub","vent",-3.5,30,4,"bottom",[0,0,90],["case",false,false,true],[2,6,4],[1,17,"vertical",1],[false,10,2,"default"],
"sub","vent",111.5,30,4,"bottom",[0,0,90],["case",true,false,true],[2,6,4],[1,17,"vertical",1],[false,10,2,"default"],
"model","fan",7.5,20,43,"top",[0,0,0],["sbc-case_z",true,true,true],[0,0,0],["box80x10"],[true,10,-10,"fan_hex"],
"model","fan",7.5,20,43,"top",[0,0,0],["sbc-case_z",true,true,true],[0,0,0],["box80x10"],[true,10,2,"fan_hex"],
"add2","batt_holder",101,40,55.25,"top",[180,0,-18],["sbc-case_z",true,true,true],[10,10,0],[0],[false,10,2,"default"],
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"],
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"],
@@ -393,13 +393,13 @@ accessory_data = [
"sub","vent",111.5,30,28,"top",[0,0,90],["case",true,false,false],[2,12,4],[1,17,"vertical",1],[false,10,2,"default"],
"sub","vent",-3.5,30,4,"bottom",[0,0,90],["case",false,false,false],[2,6,4],[1,17,"vertical",1],[false,10,2,"default"],
"sub","vent",111.5,30,4,"bottom",[0,0,90],["case",true,false,false],[2,6,4],[1,17,"vertical",1],[false,10,2,"default"],
"model","fan",7.5,20,28,"top",[0,0,0],["sbc-case_z",true,true,true],[0,0,0],["box80x25"],[true,25,-25,"fan_hex"],
"model","fan",7.5,20,28,"top",[0,0,0],["sbc-case_z",true,true,true],[0,0,0],["box80x25"],[true,25,2,"fan_hex"],
"model","hk_pwr_button",20,110,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[0,0,0],[0],[true,10,2,"default"],
"add2","hd_holder",98,10,1.99,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,"portrait","vertical","left"],[false,10,2,"default"],
"model","hd25",98,10,2,"bottom",[0,270,0],["case",true,true,false],[0,0,0],["portrait",7],[true,19,2,"both"]],
["h3_ultimate2",
"model","fan",24,25,3,"bottom",[0,270,0],["case",false,false,false],[0,0,0],["box60x25"],[true,25,-25,"fan_open"],
"model","fan",24,25,3,"bottom",[0,270,0],["case",false,false,false],[0,0,0],["box60x25"],[true,25,2,"fan_open"],
"model","fan_cover",-4,25,3,"top",[0,270,0],["case",false,false,false],[60,0,2],["fan_hex"],[false,10,2,"default"],
"platter","fan_cover",-100,150,0,"top",[0,0,0],["case",false,false,false],[60,0,2],["fan_hex"],[false,10,2,"default"],
// side panel