From f71bc2e2d0fc3c48cd4322fed15484652fc58eb3 Mon Sep 17 00:00:00 2001 From: Edward Kisiel Date: Thu, 21 Mar 2024 12:30:35 -0400 Subject: [PATCH] fixed regression in standoff supports and more model cahnges to support auto mask generation --- lib/holder.scad | 81 +- lib/keyhole.scad | 19 +- lib/oem_hk.scad | 2 +- mod/add.scad | 2 +- mod/case_bottom.scad | 12 +- mod/case_top.scad | 25 +- sbc_case_builder.json | 2088 ++++++++++++++++++++---------- sbc_case_builder.scad | 64 +- sbc_case_builder_accessories.cfg | 80 +- 9 files changed, 1562 insertions(+), 811 deletions(-) diff --git a/lib/holder.scad b/lib/holder.scad index 2d858ab..54643cf 100644 --- a/lib/holder.scad +++ b/lib/holder.scad @@ -191,6 +191,7 @@ vu7_pcb_width = 172.90; vu7_pcb_height = 124.27; vu7_width = vu7_pcb_width + vu7_case_x_offset; vu7_height = vu7_pcb_height + 9.75; +vu_rotation = [15,0,0]; difference() { union() { @@ -200,21 +201,21 @@ vu7_height = vu7_pcb_height + 9.75; // right tabs for vu5 attachment if(case_style == "vu5") { translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick,depth-39, - case_z+80]) rotate([90-vu_rotation[0],180,0]) - slab_r([((width-vesa)/2)+4.5,10,sidethick], [.1,.1,3,3]); + case_z+80]) rotate([75,180,0]) + slab_r([((width-vesa)/2)+4.5,10,sidethick], [.01,.01,3,3]); translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick,depth-26, - case_z+31.5]) rotate([90-vu_rotation[0],180,0]) - slab_r([((width-vesa)/2)+4.5,10,sidethick], [.1,.1,3,3]); + case_z+31.5]) rotate([75,180,0]) + slab_r([((width-vesa)/2)+4.5,10,sidethick], [.01,.01,3,3]); - translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick,depth-41.85-adj, - case_z+79.25]) rotate([90-vu_rotation[0],180,0]) + translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick-1.5,depth-40.85-adj, + case_z+79.5]) rotate([75,180,0]) difference() { cube([sidethick,10,sidethick]); translate([0,-adj,sidethick]) rotate([0,45,0]) cube([2*sidethick,10+(2*adj),sidethick]); } - translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick,depth-28.85-adj, - case_z+30.75]) rotate([90-vu_rotation[0],180,0]) + translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick-1.5,depth-27.85-adj, + case_z+31]) rotate([75,180,0]) difference() { cube([sidethick,10,sidethick]); translate([0,-adj,sidethick]) rotate([0,45,0]) @@ -224,21 +225,21 @@ vu7_height = vu7_pcb_height + 9.75; // right tabs for vu7 attachment if(case_style == "vu7") { translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick-1,depth-49.40, - case_z+vu7_height-15]) rotate([90-vu_rotation[0],180,0]) - slab_r([((width-vesa)/2)+12,10,sidethick], [.1,.1,3,3]); + case_z+vu7_height-15]) rotate([75,180,0]) + slab_r([((width-vesa)/2)+12,10,sidethick], [.01,.01,3,3]); translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick-1,depth-23.60, - case_z+22.5]) rotate([90-vu_rotation[0],180,0]) - slab_r([((width-vesa)/2)+12,10,sidethick], [.1,.1,3,3]); + case_z+22.5]) rotate([75,180,0]) + slab_r([((width-vesa)/2)+12,10,sidethick], [.01,.01,3,3]); - translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick,depth-52.25, - case_z+vu7_height-15.75]) rotate([90-vu_rotation[0],180,0]) + translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick-1.5,depth-51.25, + case_z+vu7_height-15.5]) rotate([75,180,0]) difference() { cube([sidethick,10,sidethick]); translate([0,-adj,sidethick]) rotate([0,45,0]) cube([2*sidethick,10+(2*adj),sidethick]); } - translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick,depth-26.5, - case_z+21.8]) rotate([90-vu_rotation[0],180,0]) + translate([(width/2)+((width-vesa)/2)+(vesa/2)-sidethick-1.5,depth-25.5, + case_z+21.8]) rotate([75,180,0]) difference() { cube([sidethick,10,sidethick]); translate([0,-adj,sidethick]) rotate([0,45,0]) @@ -255,20 +256,20 @@ vu7_height = vu7_pcb_height + 9.75; // left tabs for vu5 attachment if(case_style == "vu5") { translate([-((width-vesa)/2)+(width/2)-(vesa/2)-3.5-adj,depth-36.4, - case_z+70]) rotate([90+vu_rotation[0],0,0]) - slab_r([((width-vesa)/2)+4,10, sidethick], [.1,.1,3,3]); + case_z+70]) rotate([105,0,0]) + slab_r([((width-vesa)/2)+4,10, sidethick], [.01,.01,3,3]); translate([-((width-vesa)/2)+(width/2)-(vesa/2)-3.5-adj,depth-23.5, - case_z+22]) rotate([90+vu_rotation[0],0,0]) - slab_r([((width-vesa)/2)+4,10,sidethick], [.1,.1,3,3]); - translate([-((width-vesa)/2)+(width/2)-(vesa/2)-3.5-adj,depth-39.35+adj, - case_z+69.25]) rotate([90+vu_rotation[0],0,0]) + case_z+22]) rotate([105,0,0]) + slab_r([((width-vesa)/2)+4,10,sidethick], [.01,.01,3,3]); + translate([-((width-vesa)/2)+(width/2)-(vesa/2)-3.5-adj,depth-38.35+adj, + case_z+69.5]) rotate([105,0,0]) difference() { cube([sidethick,10,sidethick]); translate([0,-adj,sidethick]) rotate([0,45,0]) cube([2*sidethick,10+(2*adj),2*sidethick]); } - translate([-((width-vesa)/2)+(width/2)-(vesa/2)-3.5-adj,depth-26.4+adj, - case_z+21.25]) rotate([90+vu_rotation[0],0,0]) + translate([-((width-vesa)/2)+(width/2)-(vesa/2)-3.5-adj,depth-25.4+adj, + case_z+21.5]) rotate([105,0,0]) difference() { cube([sidethick,10,sidethick]); translate([0,-adj,sidethick]) rotate([0,45,0]) @@ -278,20 +279,20 @@ vu7_height = vu7_pcb_height + 9.75; // left tabs for vu7 attachment if(case_style == "vu7") { translate([-((width-vesa)/2)+(width/2)-(vesa/2)-4.25-adj,depth-46.85, - case_z+vu7_height-24.5]) rotate([90+vu_rotation[0],0,0]) - slab_r([((width-vesa)/2),10, sidethick], [.1,.1,3,3]); + case_z+vu7_height-24.5]) rotate([105,0,0]) + slab_r([((width-vesa)/2),10, sidethick], [.01,.01,3,3]); translate([-((width-vesa)/2)+(width/2)-(vesa/2)-4.25-adj,depth-21, - case_z+13]) rotate([90+vu_rotation[0],0,0]) - slab_r([((width-vesa)/2),10,sidethick], [.1,.1,3,3]); - translate([-((width-vesa)/2)+(width/2)-(vesa/2)-4-adj,depth-49.75+adj, - case_z+vu7_height-25.25]) rotate([90+vu_rotation[0],0,0]) + case_z+13]) rotate([105,0,0]) + slab_r([((width-vesa)/2),10,sidethick], [.01,.01,3,3]); + translate([-((width-vesa)/2)+(width/2)-(vesa/2)-3.5-adj,depth-48.75+adj, + case_z+vu7_height-25]) rotate([105,0,0]) difference() { cube([sidethick,10,sidethick]); translate([0,-adj,sidethick]) rotate([0,45,0]) cube([2*sidethick,10+(2*adj),2*sidethick]); } - translate([-((width-vesa)/2)+(width/2)-(vesa/2)-4-adj,depth-23.75+adj, - case_z+12.25]) rotate([90+vu_rotation[0],0,0]) + translate([-((width-vesa)/2)+(width/2)-(vesa/2)-3.5-adj,depth-22.65+adj, + case_z+12.5]) rotate([105,0,0]) difference() { cube([sidethick,10,sidethick]); translate([0,-adj,sidethick]) rotate([0,45,0]) @@ -321,9 +322,9 @@ vu7_height = vu7_pcb_height + 9.75; top=[0,0,0,0],bottom=[3,3,3,3], $fn=90); // tab holes translate([width/2+(vesa/2)-3,depth-37, - case_z+75]) rotate([90-vu_rotation[0],180,0]) cylinder(d=3, h=sidethick+1); + case_z+75]) rotate([75,180,0]) cylinder(d=3, h=sidethick+1); translate([width/2+(vesa/2)-3,depth-24, - case_z+26.75]) rotate([90-vu_rotation[0],180,0]) cylinder(d=3, h=sidethick+1); + case_z+26.75]) rotate([75,180,0]) cylinder(d=3, h=sidethick+1); } // vu7 shape and back cut if(case_style == "vu7") { @@ -341,9 +342,9 @@ vu7_height = vu7_pcb_height + 9.75; top=[0,0,0,0],bottom=[3,3,3,3], $fn=90); // tab holes translate([width/2+(vesa/2)-10,depth-47,case_z+vu7_height-19.75]) - rotate([90-vu_rotation[0],180,0]) cylinder(d=3, h=sidethick+4); + rotate([75,180,0]) cylinder(d=3, h=sidethick+4); translate([width/2+(vesa/2)-10,depth-21.25,case_z+18]) - rotate([90-vu_rotation[0],180,0]) cylinder(d=3, h=sidethick+4); + rotate([75,180,0]) cylinder(d=3, h=sidethick+4); } // bottom attachment holes translate([width-wallthick-gap-adj-5,wallthick+gap+10, @@ -369,9 +370,9 @@ vu7_height = vu7_pcb_height + 9.75; top=[0,0,0,0],bottom=[3,3,3,3], $fn=90); // tab holes translate([width/2-(vesa/2)-3,depth-36.75,case_z+75]) - rotate([90+vu_rotation[0],0,0]) cylinder(d=3, h=sidethick+1); + rotate([105,0,0]) cylinder(d=3, h=sidethick+1); translate([width/2-(vesa/2)-3,depth-24.25,case_z+26.75]) - rotate([90+vu_rotation[0],0,0]) cylinder(d=3, h=sidethick+1); + rotate([75,0,0]) cylinder(d=3, h=sidethick+1); } // vu7 shape and back cut if(case_style == "vu7") { @@ -389,9 +390,9 @@ vu7_height = vu7_pcb_height + 9.75; top=[0,0,0,0],bottom=[3,3,3,3], $fn=90); // tab holes translate([width/2-(vesa/2)-10,depth-48,case_z+vu7_height-19.75]) - rotate([90+vu_rotation[0],0,0]) cylinder(d=3, h=sidethick+4); + rotate([105,0,0]) cylinder(d=3, h=sidethick+4); translate([width/2-(vesa/2)-10,depth-22.25,case_z+18]) - rotate([90+vu_rotation[0],0,0]) cylinder(d=3, h=sidethick+4); + rotate([105,0,0]) cylinder(d=3, h=sidethick+4); } // bottom attachment holes translate([-sidethick-adj-6,wallthick+gap+10,((bottom_height+floorthick)/2)-1]) diff --git a/lib/keyhole.scad b/lib/keyhole.scad index aaed4ef..5ee70be 100644 --- a/lib/keyhole.scad +++ b/lib/keyhole.scad @@ -20,20 +20,28 @@ DESCRIPTION: enclosed keyhole TODO: none - USAGE: keyhole(keysize, mask = false) + USAGE: keyhole(keysize, mask) keysize[0] = size_x keysize[1] = size_y keysize[2] = size_z - mask = true, false enable mask + mask[0] = true enables component mask + mask[1] = mask length + mask[2] = mask setback + mask[3] = mstyle "default" */ -module keyhole(keysize, mask = false) { +module keyhole(keysize, mask) { + enablemask = mask[0]; + mlength = mask[1]; + msetback = mask[2]; + mstyle = mask[3]; adj=.01; $fn = 90; - - if(mask == true) { +echo(keysize, mask); + if(enablemask == true && mstyle == "default") { +echo("THIS IS IT"); union() { translate([0, 0, -adj]) cylinder(h=keysize[3]+2*adj, d=keysize[0]); translate([-keysize[1]/2, 0, -adj]) cube([keysize[1], keysize[2]+keysize[0]/2, keysize[3]+2*adj]); @@ -41,6 +49,7 @@ module keyhole(keysize, mask = false) { } } else { +echo("THIS IS NOT IT"); difference() { union() { translate([0, 0, -adj]) diff --git a/lib/oem_hk.scad b/lib/oem_hk.scad index 9b404c4..41ce409 100644 --- a/lib/oem_hk.scad +++ b/lib/oem_hk.scad @@ -1139,7 +1139,7 @@ module boom_speaker(mask) { $fn = 90; if(enablemask == true) { - #translate([0,0,-msetback]) cylinder(d=27, h=mlength); + translate([0,0,-msetback]) cylinder(d=27, h=mlength); } if(enablemask == false) { difference() { diff --git a/mod/add.scad b/mod/add.scad index 8fad056..61caa26 100644 --- a/mod/add.scad +++ b/mod/add.scad @@ -180,7 +180,7 @@ module add(type, loc_x, loc_y, loc_z, face, rotation, size, data, mask) { translate([loc_x,loc_y,loc_z]) rotate(rotation) hk_pwr_button(mask); } if(type == "keyhole") { - translate([loc_x,loc_y,loc_z]) rotate(rotation) keyhole(data[0]); + translate([loc_x,loc_y,loc_z]) rotate(rotation) keyhole(data[0],mask); } if(type == "dsub") { translate([loc_x,loc_y,loc_z]) rotate(rotation) dsub(data[0]); diff --git a/mod/case_bottom.scad b/mod/case_bottom.scad index fcf7ac5..d074b3c 100644 --- a/mod/case_bottom.scad +++ b/mod/case_bottom.scad @@ -419,6 +419,7 @@ module case_bottom(case_design) { 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], @@ -426,7 +427,7 @@ module case_bottom(case_design) { bottom_standoff[4], bottom_standoff[5], bottom_standoff[6], - bottom_rear_left_support, + bottom_support, bottom_standoff[8], bottom_standoff[9], bottom_standoff[10], @@ -434,6 +435,7 @@ module case_bottom(case_design) { 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], @@ -441,7 +443,7 @@ module case_bottom(case_design) { bottom_standoff[4], bottom_standoff[5], bottom_standoff[6], - bottom_front_left_support, + bottom_support, bottom_standoff[8], bottom_standoff[9], bottom_standoff[10], @@ -449,6 +451,7 @@ module case_bottom(case_design) { 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], @@ -456,7 +459,7 @@ module case_bottom(case_design) { bottom_standoff[4], bottom_standoff[5], bottom_standoff[6], - bottom_rear_right_support, + bottom_support, bottom_standoff[8], bottom_standoff[9], bottom_standoff[10], @@ -464,6 +467,7 @@ module case_bottom(case_design) { 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], @@ -471,7 +475,7 @@ module case_bottom(case_design) { bottom_standoff[4], bottom_standoff[5], bottom_standoff[6], - bottom_front_right_support, + bottom_support, bottom_standoff[8], bottom_standoff[9], bottom_standoff[10], diff --git a/mod/case_top.scad b/mod/case_top.scad index 28a455d..1007f29 100644 --- a/mod/case_top.scad +++ b/mod/case_top.scad @@ -283,16 +283,20 @@ module case_top(case_design) { 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" && top_rear_left_enable == true && top_standoff[5] != "blind") { + if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "left_rear" && top_rear_left_enable == true && + top_standoff[5] != "blind") { translate([pcbhole_x,pcbhole_y,top_height+1]) cylinder(d=6.5, h=top_height); } - if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "left_front" && top_front_left_enable == true && top_standoff[5] != "blind") { + if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "left_front" && top_front_left_enable == true && + top_standoff[5] != "blind") { translate([pcbhole_x,pcbhole_y,top_height+1]) cylinder(d=6.5, h=top_height); } - if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "right_rear" && top_rear_right_enable == true && top_standoff[5] != "blind") { + if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "right_rear" && top_rear_right_enable == true && + top_standoff[5] != "blind") { translate([pcbhole_x,pcbhole_y,top_height+1]) cylinder(d=6.5, h=top_height); } - if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "right_front" && top_front_right_enable == true && top_standoff[5] != "blind") { + if (class == "pcbhole" && id == pcb_id && pcbhole_pos == "right_front" && top_front_right_enable == true && + top_standoff[5] != "blind") { translate([pcbhole_x,pcbhole_y,top_height+1]) cylinder(d=6.5, h=top_height); } } @@ -358,10 +362,10 @@ module case_top(case_design) { 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" && top_rear_left_enable == true) { + top_support = top_sidewall_support == true ? top_rear_left_support : "none"; normal_standoff = [top_standoff[0], top_height+pcb_loc_z+top_rear_left_adjust, top_standoff[2], @@ -369,7 +373,7 @@ module case_top(case_design) { top_standoff[4], top_standoff[5], top_standoff[6], - top_rear_left_support, + top_support, top_standoff[8], top_standoff[9], top_standoff[10], @@ -377,6 +381,7 @@ module case_top(case_design) { translate([pcbhole_x,pcbhole_y,case_z]) standoff(normal_standoff,[false,10,2,"default"]); } if (pcbhole_pos == "left_front" && top_front_left_enable == true) { + top_support = top_sidewall_support == true ? top_front_left_support : "none"; normal_standoff = [top_standoff[0], top_height+pcb_loc_z+top_front_left_adjust, top_standoff[2], @@ -384,7 +389,7 @@ module case_top(case_design) { top_standoff[4], top_standoff[5], top_standoff[6], - top_front_left_support, + top_support, top_standoff[8], top_standoff[9], top_standoff[10], @@ -392,6 +397,7 @@ module case_top(case_design) { translate([pcbhole_x,pcbhole_y,case_z]) standoff(normal_standoff,[false,10,2,"default"]); } if (pcbhole_pos == "right_rear" && top_rear_right_enable == true) { + top_support = top_sidewall_support == true ? top_rear_right_support : "none"; normal_standoff = [top_standoff[0], top_height+pcb_loc_z+top_rear_right_adjust, top_standoff[2], @@ -399,7 +405,7 @@ module case_top(case_design) { top_standoff[4], top_standoff[5], top_standoff[6], - top_rear_right_support, + top_support, top_standoff[8], top_standoff[9], top_standoff[10], @@ -407,6 +413,7 @@ module case_top(case_design) { translate([pcbhole_x,pcbhole_y,case_z]) standoff(normal_standoff,[false,10,2,"default"]); } if (pcbhole_pos == "right_front" && top_front_right_enable == true) { + top_support = top_sidewall_support == true ? top_front_right_support : "none"; normal_standoff = [top_standoff[0], top_height+pcb_loc_z+top_front_right_adjust, top_standoff[2], @@ -414,7 +421,7 @@ module case_top(case_design) { top_standoff[4], top_standoff[5], top_standoff[6], - top_front_right_support, + top_support, top_standoff[8], top_standoff[9], top_standoff[10], diff --git a/sbc_case_builder.json b/sbc_case_builder.json index 214cbe8..d6a8d27 100644 --- a/sbc_case_builder.json +++ b/sbc_case_builder.json @@ -149,14 +149,14 @@ "view": "model", "wallthick": "2.5" }, - "c4_desktop_lcd3.5": { + "c4_panel_boombox": { "$fn": "90", "access_port_location": "[10, 10]", "access_port_orientation": "landscape", "access_port_rotation": "0", "access_port_size": "[30, 70]", "accessory_highlight": "false", - "accessory_name": "c4_desktop_lcd3.5", + "accessory_name": "c4_panel_boombox", "adj": "0.01", "bend_allowance": "1", "bottom_access_port_enable": "false", @@ -187,11 +187,11 @@ "bottom_standoff_type": "countersunk", "case_design": "panel", "case_offset_bz": "0", - "case_offset_tz": "1.5", - "case_offset_x": "30", - "case_offset_y": "0", + "case_offset_tz": "13", + "case_offset_x": "40", + "case_offset_y": "15", "case_style": "none", - "cooling": "none", + "cooling": "fan_1", "corner_fillet": "3", "edge_fillet": "0", "exhaust_vent": "none", @@ -256,9 +256,9 @@ "move_leftside": "0", "move_rear": "0", "move_rightside": "0", - "pcb_loc_x": "30", + "pcb_loc_x": "40", "pcb_loc_y": "0", - "pcb_loc_z": "0", + "pcb_loc_z": "4", "raise_top": "0", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", @@ -266,7 +266,7 @@ "sbc_model": "c4", "sbc_off": "false", "sbc_top_standoffs": "false", - "sidethick": "0", + "sidethick": "1", "text_color": "Green", "text_font": "Nimbus Mono PS", "tol": "0.25", @@ -295,7 +295,7 @@ "top_standoff_support_size": "10", "top_standoff_type": "blind", "uart_opening": "default", - "view": "platter", + "view": "model", "wallthick": "2" }, "c4_panel_lcd3.5": { @@ -447,36 +447,556 @@ "view": "model", "wallthick": "2" }, + "c4_desktop_lcd3.5": { + "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", + "accessory_highlight": "false", + "accessory_name": "c4_desktop_lcd3.5", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "front", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "4", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "countersunk", + "case_design": "panel", + "case_offset_bz": "0", + "case_offset_tz": "1.5", + "case_offset_x": "30", + "case_offset_y": "0", + "case_style": "none", + "cooling": "none", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "4", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "false", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "false", + "ext_top_standoff_insert_dia": "4.2", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "4", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "false", + "fan_size": "0", + "flat_blank_section": "false", + "floorthick": "2", + "gap": "1.5", + "gpio_opening": "default", + "indents": "true", + "individual_part": "bottom", + "lower_bottom": "0", + "material_thickness": "0.5", + "move_front": "0", + "move_leftside": "0", + "move_rear": "0", + "move_rightside": "0", + "pcb_loc_x": "30", + "pcb_loc_y": "0", + "pcb_loc_z": "0", + "raise_top": "0", + "sbc_bottom_standoffs": "true", + "sbc_highlight": "false", + "sbc_information": "false", + "sbc_model": "c4", + "sbc_off": "false", + "sbc_top_standoffs": "false", + "sidethick": "0", + "text_color": "Green", + "text_font": "Nimbus Mono PS", + "tol": "0.25", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "front", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "false", + "top_standoff_insert_dia": "4.2", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "4", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", + "view": "model", + "wallthick": "2" + }, + "c4_deskboom_lcd3.5": { + "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", + "accessory_highlight": "false", + "accessory_name": "c4_deskboom_lcd3.5", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "front", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "4", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "countersunk", + "case_design": "panel", + "case_offset_bz": "11", + "case_offset_tz": "1.5", + "case_offset_x": "40", + "case_offset_y": "15", + "case_style": "none", + "cooling": "none", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "4", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "false", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "false", + "ext_top_standoff_insert_dia": "4.2", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "4", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "false", + "fan_size": "0", + "flat_blank_section": "false", + "floorthick": "2", + "gap": "1.5", + "gpio_opening": "default", + "indents": "true", + "individual_part": "bottom", + "lower_bottom": "0", + "material_thickness": "0.5", + "move_front": "0", + "move_leftside": "0", + "move_rear": "0", + "move_rightside": "0", + "pcb_loc_x": "40", + "pcb_loc_y": "0", + "pcb_loc_z": "4", + "raise_top": "0", + "sbc_bottom_standoffs": "true", + "sbc_highlight": "false", + "sbc_information": "false", + "sbc_model": "c4", + "sbc_off": "false", + "sbc_top_standoffs": "false", + "sidethick": "0", + "text_color": "Green", + "text_font": "Nimbus Mono PS", + "tol": "0.25", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "front", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "false", + "top_standoff_insert_dia": "4.2", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "4", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", + "view": "model", + "wallthick": "2" + }, + "c4_tray_boombox": { + "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", + "accessory_highlight": "false", + "accessory_name": "c4_tray_boombox", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "front", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "4", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "countersunk", + "case_design": "tray", + "case_offset_bz": "3", + "case_offset_tz": "3", + "case_offset_x": "40", + "case_offset_y": "15", + "case_style": "none", + "cooling": "vent_hex_8mm", + "corner_fillet": "3", + "edge_fillet": "2", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "4", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "false", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "false", + "ext_top_standoff_insert_dia": "4.2", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "4", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "false", + "fan_size": "0", + "flat_blank_section": "false", + "floorthick": "2", + "gap": "1", + "gpio_opening": "default", + "indents": "true", + "individual_part": "bottom", + "lower_bottom": "0", + "material_thickness": "0.5", + "move_front": "0", + "move_leftside": "0", + "move_rear": "0", + "move_rightside": "0", + "pcb_loc_x": "40", + "pcb_loc_y": "0", + "pcb_loc_z": "0", + "raise_top": "0", + "sbc_bottom_standoffs": "true", + "sbc_highlight": "false", + "sbc_information": "false", + "sbc_model": "c4", + "sbc_off": "false", + "sbc_top_standoffs": "false", + "sidethick": "2", + "text_color": "Green", + "text_font": "Nimbus Mono PS", + "tol": "0.25", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "front", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "false", + "top_standoff_insert_dia": "4.2", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "4", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", + "view": "model", + "wallthick": "2" + }, "c4_tray_vu5": { "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", "accessory_highlight": "false", "accessory_name": "none", - "adjust": "0.01", - "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "bottom_front_left": "0", - "bottom_front_right": "0", - "bottom_rear_left": "0", - "bottom_rear_right": "0", - "bottom_standoff": "[6.25, 7, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "c_fillet": "3.5", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "front", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "4", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "countersunk", "case_design": "tray", - "case_ext_standoffs": "false", - "case_ffn": "90", - "case_fn": "360", "case_offset_bz": "4", "case_offset_tz": "0", "case_offset_x": "0", "case_offset_y": "0", "case_style": "vu5", "cooling": "vent_hex_8mm", - "exhaust_vents": "none", - "fillet": "2", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "4", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "false", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "false", + "ext_top_standoff_insert_dia": "4.2", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "4", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "false", + "fan_size": "0", + "flat_blank_section": "false", "floorthick": "2", "gap": "1.5", "gpio_opening": "default", "indents": "true", - "lip": "5", + "individual_part": "bottom", "lower_bottom": "0", + "material_thickness": "0.5", "move_front": "0", "move_leftside": "0", "move_rear": "0", @@ -485,55 +1005,147 @@ "pcb_loc_y": "0", "pcb_loc_z": "0", "raise_top": "0", - "sata_knockout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", + "sbc_information": "false", "sbc_model": "c4", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "2", - "sidewall_support": "false", + "text_color": "Green", + "text_font": "Nimbus Mono PS", "tol": "0.25", - "top_ext_standoff": "[6.25, 18, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", - "top_front_left": "0", - "top_front_right": "0", - "top_rear_left": "0", - "top_rear_right": "0", - "top_standoff": "[6.25, 20, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "front", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "false", + "top_standoff_insert_dia": "4.2", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "4", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", "view": "model", - "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, "c4_tray_vu7": { "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", "accessory_highlight": "false", "accessory_name": "none", - "adjust": "0.01", - "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "bottom_front_left": "0", - "bottom_front_right": "0", - "bottom_rear_left": "0", - "bottom_rear_right": "0", - "bottom_standoff": "[6.25, 7, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "c_fillet": "3.5", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "front", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "4", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "countersunk", "case_design": "tray", - "case_ext_standoffs": "false", - "case_ffn": "90", - "case_fn": "360", "case_offset_bz": "4", "case_offset_tz": "0", "case_offset_x": "34", "case_offset_y": "0", "case_style": "vu7", "cooling": "vent_hex_8mm", - "exhaust_vents": "none", - "fillet": "2", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "4", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "false", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "false", + "ext_top_standoff_insert_dia": "4.2", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "4", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "false", + "fan_size": "0", + "flat_blank_section": "false", "floorthick": "2", "gap": "1.5", "gpio_opening": "default", "indents": "true", - "lip": "5", + "individual_part": "bottom", "lower_bottom": "0", + "material_thickness": "0.5", "move_front": "0", "move_leftside": "0", "move_rear": "0", @@ -542,80 +1154,42 @@ "pcb_loc_y": "0", "pcb_loc_z": "0", "raise_top": "0", - "sata_knockout": "false", - "sbc_bottom_standoffs": "true", + "sbc_bottom_standoffs": "false", "sbc_highlight": "false", + "sbc_information": "false", "sbc_model": "c4", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "2", - "sidewall_support": "false", + "text_color": "Green", + "text_font": "Nimbus Mono PS", "tol": "0.25", - "top_ext_standoff": "[6.25, 18, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", - "top_front_left": "0", - "top_front_right": "0", - "top_rear_left": "0", - "top_rear_right": "0", - "top_standoff": "[6.25, 20, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "front", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "false", + "top_standoff_insert_dia": "4.2", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "4", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", "view": "model", - "vu_rotation": "[15, 0, 0]", - "wallthick": "2" - }, - "c4_round": { - "$fn": "90", - "accessory_highlight": "false", - "accessory_name": "c4_round", - "adjust": "0.01", - "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "bottom_front_left": "0", - "bottom_front_right": "0", - "bottom_rear_left": "0", - "bottom_rear_right": "0", - "bottom_standoff": "[6.25, 7, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "c_fillet": "0", - "case_design": "round", - "case_ext_standoffs": "false", - "case_ffn": "90", - "case_fn": "360", - "case_offset_bz": "0", - "case_offset_tz": "0", - "case_offset_x": "0", - "case_offset_y": "0", - "case_style": "none", - "cooling": "fan_1", - "exhaust_vents": "none", - "fillet": "0", - "floorthick": "2", - "gap": "1.5", - "gpio_opening": "default", - "indents": "false", - "lip": "5", - "lower_bottom": "0", - "move_front": "0", - "move_leftside": "0", - "move_rear": "0", - "move_rightside": "0", - "pcb_loc_x": "0", - "pcb_loc_y": "0", - "pcb_loc_z": "0", - "raise_top": "0", - "sata_knockout": "false", - "sbc_bottom_standoffs": "true", - "sbc_highlight": "false", - "sbc_model": "c4", - "sbc_off": "false", - "sbc_top_standoffs": "false", - "sidethick": "1", - "sidewall_support": "false", - "tol": "0.25", - "top_ext_standoff": "[6.25, 18, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", - "top_front_left": "0", - "top_front_right": "0", - "top_rear_left": "0", - "top_rear_right": "0", - "top_standoff": "[6.25, 20, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", - "view": "model", - "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, "c4_hex": { @@ -675,36 +1249,258 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, + "c4_round": { + "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", + "accessory_highlight": "false", + "accessory_name": "c4_round", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "front", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "4", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "countersunk", + "case_design": "round", + "case_offset_bz": "0", + "case_offset_tz": "0", + "case_offset_x": "0", + "case_offset_y": "0", + "case_style": "none", + "cooling": "fan_1", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "4", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "false", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "false", + "ext_top_standoff_insert_dia": "4.2", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "4", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "false", + "fan_size": "0", + "flat_blank_section": "false", + "floorthick": "2", + "gap": "1.5", + "gpio_opening": "default", + "indents": "false", + "individual_part": "bottom", + "lower_bottom": "0", + "material_thickness": "0.5", + "move_front": "0", + "move_leftside": "0", + "move_rear": "0", + "move_rightside": "0", + "pcb_loc_x": "0", + "pcb_loc_y": "0", + "pcb_loc_z": "0", + "raise_top": "0", + "sbc_bottom_standoffs": "true", + "sbc_highlight": "false", + "sbc_information": "false", + "sbc_model": "c4", + "sbc_off": "false", + "sbc_top_standoffs": "true", + "sidethick": "1", + "text_color": "Green", + "text_font": "Nimbus Mono PS", + "tol": "0.25", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "front", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "false", + "top_standoff_insert_dia": "4.2", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "4", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", + "view": "model", + "wallthick": "2" + }, "xu4_keyhole": { "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", "accessory_highlight": "false", "accessory_name": "xu4_keyhole", - "adjust": "0.01", - "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "bottom_front_left": "0", - "bottom_front_right": "0", - "bottom_rear_left": "0", - "bottom_rear_right": "0", - "bottom_standoff": "[6.25, 7, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "c_fillet": "3.5", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "front", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "4", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "countersunk", "case_design": "shell", - "case_ext_standoffs": "false", - "case_ffn": "90", - "case_fn": "360", "case_offset_bz": "3", "case_offset_tz": "0", "case_offset_x": "0", "case_offset_y": "0", "case_style": "none", "cooling": "fan_1", - "exhaust_vents": "none", - "fillet": "0", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "4", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "true", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "false", + "ext_top_standoff_insert_dia": "4.2", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "4", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "true", + "fan_size": "0", + "flat_blank_section": "false", "floorthick": "2", "gap": "1.5", "gpio_opening": "default", "indents": "false", - "lip": "5", + "individual_part": "bottom", "lower_bottom": "0", + "material_thickness": "0.5", "move_front": "0", "move_leftside": "0", "move_rear": "0", @@ -713,55 +1509,147 @@ "pcb_loc_y": "0", "pcb_loc_z": "0", "raise_top": "0", - "sata_knockout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", + "sbc_information": "false", "sbc_model": "xu4", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "1", - "sidewall_support": "true", + "text_color": "Green", + "text_font": "Nimbus Mono PS", "tol": "0.25", - "top_ext_standoff": "[6.25, 18, 3.4, 10, 4, 4, 0, 1, 1, 4.25, 5.1]", - "top_front_left": "0", - "top_front_right": "0", - "top_rear_left": "0", - "top_rear_right": "0", - "top_standoff": "[6.25, 18, 3.4, 10, 4, 4, 0, 1, 1, 4.25, 5.1]", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "front", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "false", + "top_standoff_insert_dia": "4.2", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "4", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", "view": "model", - "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, "hc4_shell_drivebox2.5": { "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", "accessory_highlight": "false", "accessory_name": "hc4_shell_drivebox2.5", - "adjust": "0.01", - "bottom_ext_standoff": "[6.25, 27, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "bottom_front_left": "0", - "bottom_front_right": "0", - "bottom_rear_left": "0", - "bottom_rear_right": "0", - "bottom_standoff": "[6.25, 7, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "c_fillet": "9", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "left", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "none", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "15", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "countersunk", "case_design": "shell", - "case_ext_standoffs": "true", - "case_ffn": "90", - "case_fn": "360", "case_offset_bz": "12", "case_offset_tz": "10", "case_offset_x": "86", "case_offset_y": "54", "case_style": "none", "cooling": "fan_1", - "exhaust_vents": "none", - "fillet": "0", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "15", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "true", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "true", + "ext_top_standoff_insert_dia": "4", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "15", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "true", + "fan_size": "0", + "flat_blank_section": "false", "floorthick": "2", "gap": "1.5", "gpio_opening": "default", "indents": "false", - "lip": "5", + "individual_part": "bottom", "lower_bottom": "0", + "material_thickness": "0.5", "move_front": "0", "move_leftside": "0", "move_rear": "0", @@ -770,55 +1658,147 @@ "pcb_loc_y": "0", "pcb_loc_z": "0", "raise_top": "0", - "sata_knockout": "true", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", + "sbc_information": "false", "sbc_model": "hc4", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "2", - "sidewall_support": "true", + "text_color": "Green", + "text_font": "Nimbus Mono PS", "tol": "0.25", - "top_ext_standoff": "[6.25, 27, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", - "top_front_left": "0", - "top_front_right": "0", - "top_rear_left": "0", - "top_rear_right": "0", - "top_standoff": "[6.25, 18, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "left", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "none", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "true", + "top_standoff_insert_dia": "4", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "15", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", "view": "model", - "vu_rotation": "[15, 0, 0]", "wallthick": "2.5" }, "hc4_shell_drivebox2.5v": { "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", "accessory_highlight": "false", "accessory_name": "hc4_shell_drivebox2.5v", - "adjust": "0.01", - "bottom_ext_standoff": "[6.25, 27, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "bottom_front_left": "0", - "bottom_front_right": "0", - "bottom_rear_left": "0", - "bottom_rear_right": "0", - "bottom_standoff": "[6.25, 7, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "c_fillet": "9", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "left", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "none", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "true", + "bottom_standoff_insert_dia": "4", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "22", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "recessed", "case_design": "shell", - "case_ext_standoffs": "true", - "case_ffn": "90", - "case_fn": "360", "case_offset_bz": "12", "case_offset_tz": "32", "case_offset_x": "47.4", "case_offset_y": "54", "case_style": "none", "cooling": "fan_1", - "exhaust_vents": "none", - "fillet": "0", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "true", + "ext_bottom_standoff_insert_dia": "4", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "22", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "recessed", + "ext_bottom_standoffs": "true", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "true", + "ext_top_standoff_insert_dia": "4", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "15", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "true", + "fan_size": "0", + "flat_blank_section": "false", "floorthick": "2", "gap": "1.5", "gpio_opening": "default", "indents": "false", - "lip": "5", + "individual_part": "bottom", "lower_bottom": "0", + "material_thickness": "0.5", "move_front": "0", "move_leftside": "0", "move_rear": "0", @@ -827,55 +1807,147 @@ "pcb_loc_y": "0", "pcb_loc_z": "0", "raise_top": "0", - "sata_knockout": "true", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", + "sbc_information": "false", "sbc_model": "hc4", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "2", - "sidewall_support": "true", + "text_color": "Green", + "text_font": "Nimbus Mono PS", "tol": "0.25", - "top_ext_standoff": "[6.25, 49, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", - "top_front_left": "0", - "top_front_right": "0", - "top_rear_left": "0", - "top_rear_right": "0", - "top_standoff": "[6.25, 18, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "left", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "none", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "3.2", + "top_standoff_insert": "true", + "top_standoff_insert_dia": "4", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "30", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", "view": "model", - "vu_rotation": "[15, 0, 0]", "wallthick": "2.5" }, "hc4_shell_drivebox3.5": { "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", "accessory_highlight": "false", "accessory_name": "hc4_shell_drivebox3.5", - "adjust": "0.01", - "bottom_ext_standoff": "[6.25, 28, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "bottom_front_left": "0", - "bottom_front_right": "0", - "bottom_rear_left": "0", - "bottom_rear_right": "0", - "bottom_standoff": "[6.25, 7, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "c_fillet": "9", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "left", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "20", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "recessed", "case_design": "shell", - "case_ext_standoffs": "true", - "case_ffn": "90", - "case_fn": "360", "case_offset_bz": "12", "case_offset_tz": "20", "case_offset_x": "119.4", "case_offset_y": "95", "case_style": "none", "cooling": "fan_1", - "exhaust_vents": "none", - "fillet": "0", + "corner_fillet": "3", + "edge_fillet": "0", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "20", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "recessed", + "ext_bottom_standoffs": "true", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "true", + "ext_top_standoff_insert_dia": "4", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "20", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "true", + "fan_size": "0", + "flat_blank_section": "false", "floorthick": "3", "gap": "1.5", "gpio_opening": "default", "indents": "false", - "lip": "5", + "individual_part": "bottom", "lower_bottom": "0", + "material_thickness": "0.5", "move_front": "0", "move_leftside": "0", "move_rear": "0", @@ -884,55 +1956,147 @@ "pcb_loc_y": "0", "pcb_loc_z": "0", "raise_top": "0", - "sata_knockout": "true", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", + "sbc_information": "false", "sbc_model": "hc4", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "2", - "sidewall_support": "true", + "text_color": "Green", + "text_font": "Nimbus Mono PS", "tol": "0.25", - "top_ext_standoff": "[6.25, 38, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", - "top_front_left": "0", - "top_front_right": "0", - "top_rear_left": "0", - "top_rear_right": "0", - "top_standoff": "[6.25, 18, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "left", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "true", + "top_standoff_insert_dia": "4", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "20", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", "view": "model", - "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, "hc4_tray_drivebox2.5": { "$fn": "90", + "access_port_location": "[10, 10]", + "access_port_orientation": "landscape", + "access_port_rotation": "0", + "access_port_size": "[30, 70]", "accessory_highlight": "false", "accessory_name": "hc4_tray_drivebox2.5", - "adjust": "0.01", - "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "bottom_front_left": "0", - "bottom_front_right": "0", - "bottom_rear_left": "0", - "bottom_rear_right": "0", - "bottom_standoff": "[6.25, 7, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", - "c_fillet": "9", + "adj": "0.01", + "bend_allowance": "1", + "bottom_access_port_enable": "false", + "bottom_clearence": "3.5", + "bottom_cover_pattern": "solid", + "bottom_front_left_adjust": "0", + "bottom_front_left_enable": "true", + "bottom_front_left_support": "front", + "bottom_front_right_adjust": "0", + "bottom_front_right_enable": "true", + "bottom_front_right_support": "front", + "bottom_rear_left_adjust": "0", + "bottom_rear_left_enable": "true", + "bottom_rear_left_support": "rear", + "bottom_rear_right_adjust": "0", + "bottom_rear_right_enable": "true", + "bottom_rear_right_support": "rear", + "bottom_sidewall_support": "true", + "bottom_standoff_diameter": "5.75", + "bottom_standoff_hole_size": "3.4", + "bottom_standoff_insert": "false", + "bottom_standoff_insert_dia": "4.2", + "bottom_standoff_insert_height": "5.1", + "bottom_standoff_pillar": "hex", + "bottom_standoff_reverse": "false", + "bottom_standoff_support_height": "20", + "bottom_standoff_support_size": "10", + "bottom_standoff_type": "recessed", "case_design": "tray", - "case_ext_standoffs": "false", - "case_ffn": "90", - "case_fn": "360", "case_offset_bz": "12", "case_offset_tz": "10", "case_offset_x": "88", "case_offset_y": "55", "case_style": "none", "cooling": "fan_1", - "exhaust_vents": "none", - "fillet": "2", + "corner_fillet": "3", + "edge_fillet": "2", + "exhaust_vent": "none", + "ext_bottom_front_left_adjust": "0", + "ext_bottom_front_left_enable": "true", + "ext_bottom_front_left_support": "front", + "ext_bottom_front_right_adjust": "0", + "ext_bottom_front_right_enable": "true", + "ext_bottom_front_right_support": "front", + "ext_bottom_rear_left_adjust": "0", + "ext_bottom_rear_left_enable": "true", + "ext_bottom_rear_left_support": "rear", + "ext_bottom_rear_right_adjust": "0", + "ext_bottom_rear_right_enable": "true", + "ext_bottom_rear_right_support": "rear", + "ext_bottom_sidewall_support": "true", + "ext_bottom_standoff_diameter": "5.75", + "ext_bottom_standoff_hole_size": "3.4", + "ext_bottom_standoff_insert": "false", + "ext_bottom_standoff_insert_dia": "4.2", + "ext_bottom_standoff_insert_height": "5.1", + "ext_bottom_standoff_pillar": "hex", + "ext_bottom_standoff_reverse": "false", + "ext_bottom_standoff_support_height": "4", + "ext_bottom_standoff_support_size": "10", + "ext_bottom_standoff_type": "countersunk", + "ext_bottom_standoffs": "false", + "ext_top_front_left_adjust": "0", + "ext_top_front_left_enable": "true", + "ext_top_front_left_support": "front", + "ext_top_front_right_adjust": "0", + "ext_top_front_right_enable": "true", + "ext_top_front_right_support": "front", + "ext_top_rear_left_adjust": "0", + "ext_top_rear_left_enable": "true", + "ext_top_rear_left_support": "rear", + "ext_top_rear_right_adjust": "0", + "ext_top_rear_right_enable": "true", + "ext_top_rear_right_support": "rear", + "ext_top_sidewall_support": "true", + "ext_top_standoff_diameter": "5.75", + "ext_top_standoff_hole_size": "2.75", + "ext_top_standoff_insert": "false", + "ext_top_standoff_insert_dia": "4.2", + "ext_top_standoff_insert_height": "5.1", + "ext_top_standoff_pillar": "hex", + "ext_top_standoff_reverse": "true", + "ext_top_standoff_support_height": "4", + "ext_top_standoff_support_size": "10", + "ext_top_standoff_type": "blind", + "ext_top_standoffs": "false", + "fan_size": "0", + "flat_blank_section": "false", "floorthick": "2", "gap": "1.5", "gpio_opening": "default", "indents": "false", - "lip": "5", + "individual_part": "bottom", "lower_bottom": "0", + "material_thickness": "0.5", "move_front": "0", "move_leftside": "0", "move_rear": "0", @@ -941,23 +2105,42 @@ "pcb_loc_y": "0", "pcb_loc_z": "0", "raise_top": "0", - "sata_knockout": "true", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", + "sbc_information": "false", "sbc_model": "hc4", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "2", - "sidewall_support": "false", + "text_color": "Green", + "text_font": "Nimbus Mono PS", "tol": "0.25", - "top_ext_standoff": "[6.25, 18, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", - "top_front_left": "0", - "top_front_right": "0", - "top_rear_left": "0", - "top_rear_right": "0", - "top_standoff": "[6.25, 18, 2.5, 10, 4, 4, 0, 1, 0, 4.5, 5.1]", + "top_cover_pattern": "solid", + "top_front_left_adjust": "0", + "top_front_left_enable": "true", + "top_front_left_support": "front", + "top_front_right_adjust": "0", + "top_front_right_enable": "true", + "top_front_right_support": "front", + "top_rear_left_adjust": "0", + "top_rear_left_enable": "true", + "top_rear_left_support": "rear", + "top_rear_right_adjust": "0", + "top_rear_right_enable": "true", + "top_rear_right_support": "rear", + "top_sidewall_support": "true", + "top_standoff_diameter": "5.75", + "top_standoff_hole_size": "2.75", + "top_standoff_insert": "false", + "top_standoff_insert_dia": "4.2", + "top_standoff_insert_height": "5.1", + "top_standoff_pillar": "hex", + "top_standoff_reverse": "true", + "top_standoff_support_height": "4", + "top_standoff_support_size": "10", + "top_standoff_type": "blind", + "uart_opening": "default", "view": "model", - "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, "m1s_shell_nvme": { @@ -4262,453 +5445,6 @@ "view": "model", "vu_rotation": "[15, 0, 0]", "wallthick": "2" - }, - "c4_deskboom_lcd3.5": { - "$fn": "90", - "access_port_location": "[10, 10]", - "access_port_orientation": "landscape", - "access_port_rotation": "0", - "access_port_size": "[30, 70]", - "accessory_highlight": "false", - "accessory_name": "c4_deskboom_lcd3.5", - "adj": "0.01", - "bend_allowance": "1", - "bottom_access_port_enable": "false", - "bottom_clearence": "3.5", - "bottom_cover_pattern": "solid", - "bottom_front_left_adjust": "0", - "bottom_front_left_enable": "true", - "bottom_front_left_support": "front", - "bottom_front_right_adjust": "0", - "bottom_front_right_enable": "true", - "bottom_front_right_support": "front", - "bottom_rear_left_adjust": "0", - "bottom_rear_left_enable": "true", - "bottom_rear_left_support": "rear", - "bottom_rear_right_adjust": "0", - "bottom_rear_right_enable": "true", - "bottom_rear_right_support": "rear", - "bottom_sidewall_support": "true", - "bottom_standoff_diameter": "5.75", - "bottom_standoff_hole_size": "3.4", - "bottom_standoff_insert": "false", - "bottom_standoff_insert_dia": "4.2", - "bottom_standoff_insert_height": "5.1", - "bottom_standoff_pillar": "hex", - "bottom_standoff_reverse": "false", - "bottom_standoff_support_height": "4", - "bottom_standoff_support_size": "10", - "bottom_standoff_type": "countersunk", - "case_design": "panel", - "case_offset_bz": "11", - "case_offset_tz": "1.5", - "case_offset_x": "40", - "case_offset_y": "15", - "case_style": "none", - "cooling": "none", - "corner_fillet": "3", - "edge_fillet": "0", - "exhaust_vent": "none", - "ext_bottom_front_left_adjust": "0", - "ext_bottom_front_left_enable": "true", - "ext_bottom_front_left_support": "front", - "ext_bottom_front_right_adjust": "0", - "ext_bottom_front_right_enable": "true", - "ext_bottom_front_right_support": "front", - "ext_bottom_rear_left_adjust": "0", - "ext_bottom_rear_left_enable": "true", - "ext_bottom_rear_left_support": "rear", - "ext_bottom_rear_right_adjust": "0", - "ext_bottom_rear_right_enable": "true", - "ext_bottom_rear_right_support": "rear", - "ext_bottom_sidewall_support": "true", - "ext_bottom_standoff_diameter": "5.75", - "ext_bottom_standoff_hole_size": "3.4", - "ext_bottom_standoff_insert": "false", - "ext_bottom_standoff_insert_dia": "4.2", - "ext_bottom_standoff_insert_height": "5.1", - "ext_bottom_standoff_pillar": "hex", - "ext_bottom_standoff_reverse": "false", - "ext_bottom_standoff_support_height": "4", - "ext_bottom_standoff_support_size": "10", - "ext_bottom_standoff_type": "countersunk", - "ext_bottom_standoffs": "false", - "ext_top_front_left_adjust": "0", - "ext_top_front_left_enable": "true", - "ext_top_front_left_support": "front", - "ext_top_front_right_adjust": "0", - "ext_top_front_right_enable": "true", - "ext_top_front_right_support": "front", - "ext_top_rear_left_adjust": "0", - "ext_top_rear_left_enable": "true", - "ext_top_rear_left_support": "rear", - "ext_top_rear_right_adjust": "0", - "ext_top_rear_right_enable": "true", - "ext_top_rear_right_support": "rear", - "ext_top_sidewall_support": "true", - "ext_top_standoff_diameter": "5.75", - "ext_top_standoff_hole_size": "2.75", - "ext_top_standoff_insert": "false", - "ext_top_standoff_insert_dia": "4.2", - "ext_top_standoff_insert_height": "5.1", - "ext_top_standoff_pillar": "hex", - "ext_top_standoff_reverse": "true", - "ext_top_standoff_support_height": "4", - "ext_top_standoff_support_size": "10", - "ext_top_standoff_type": "blind", - "ext_top_standoffs": "false", - "fan_size": "0", - "flat_blank_section": "false", - "floorthick": "2", - "gap": "1.5", - "gpio_opening": "default", - "indents": "true", - "individual_part": "bottom", - "lower_bottom": "0", - "material_thickness": "0.5", - "move_front": "0", - "move_leftside": "0", - "move_rear": "0", - "move_rightside": "0", - "pcb_loc_x": "40", - "pcb_loc_y": "0", - "pcb_loc_z": "4", - "raise_top": "0", - "sbc_bottom_standoffs": "true", - "sbc_highlight": "false", - "sbc_information": "false", - "sbc_model": "c4", - "sbc_off": "false", - "sbc_top_standoffs": "false", - "sidethick": "0", - "text_color": "Green", - "text_font": "Nimbus Mono PS", - "tol": "0.25", - "top_cover_pattern": "solid", - "top_front_left_adjust": "0", - "top_front_left_enable": "true", - "top_front_left_support": "front", - "top_front_right_adjust": "0", - "top_front_right_enable": "true", - "top_front_right_support": "front", - "top_rear_left_adjust": "0", - "top_rear_left_enable": "true", - "top_rear_left_support": "rear", - "top_rear_right_adjust": "0", - "top_rear_right_enable": "true", - "top_rear_right_support": "rear", - "top_sidewall_support": "true", - "top_standoff_diameter": "5.75", - "top_standoff_hole_size": "2.75", - "top_standoff_insert": "false", - "top_standoff_insert_dia": "4.2", - "top_standoff_insert_height": "5.1", - "top_standoff_pillar": "hex", - "top_standoff_reverse": "true", - "top_standoff_support_height": "4", - "top_standoff_support_size": "10", - "top_standoff_type": "blind", - "uart_opening": "default", - "view": "model", - "wallthick": "2" - }, - "c4_panel_boombox": { - "$fn": "90", - "access_port_location": "[10, 10]", - "access_port_orientation": "landscape", - "access_port_rotation": "0", - "access_port_size": "[30, 70]", - "accessory_highlight": "false", - "accessory_name": "c4_panel_boombox", - "adj": "0.01", - "bend_allowance": "1", - "bottom_access_port_enable": "false", - "bottom_clearence": "3.5", - "bottom_cover_pattern": "solid", - "bottom_front_left_adjust": "0", - "bottom_front_left_enable": "true", - "bottom_front_left_support": "front", - "bottom_front_right_adjust": "0", - "bottom_front_right_enable": "true", - "bottom_front_right_support": "front", - "bottom_rear_left_adjust": "0", - "bottom_rear_left_enable": "true", - "bottom_rear_left_support": "rear", - "bottom_rear_right_adjust": "0", - "bottom_rear_right_enable": "true", - "bottom_rear_right_support": "rear", - "bottom_sidewall_support": "true", - "bottom_standoff_diameter": "5.75", - "bottom_standoff_hole_size": "3.4", - "bottom_standoff_insert": "false", - "bottom_standoff_insert_dia": "4.2", - "bottom_standoff_insert_height": "5.1", - "bottom_standoff_pillar": "hex", - "bottom_standoff_reverse": "false", - "bottom_standoff_support_height": "4", - "bottom_standoff_support_size": "10", - "bottom_standoff_type": "countersunk", - "case_design": "panel", - "case_offset_bz": "0", - "case_offset_tz": "13", - "case_offset_x": "40", - "case_offset_y": "15", - "case_style": "none", - "cooling": "fan_1", - "corner_fillet": "3", - "edge_fillet": "0", - "exhaust_vent": "none", - "ext_bottom_front_left_adjust": "0", - "ext_bottom_front_left_enable": "true", - "ext_bottom_front_left_support": "front", - "ext_bottom_front_right_adjust": "0", - "ext_bottom_front_right_enable": "true", - "ext_bottom_front_right_support": "front", - "ext_bottom_rear_left_adjust": "0", - "ext_bottom_rear_left_enable": "true", - "ext_bottom_rear_left_support": "rear", - "ext_bottom_rear_right_adjust": "0", - "ext_bottom_rear_right_enable": "true", - "ext_bottom_rear_right_support": "rear", - "ext_bottom_sidewall_support": "true", - "ext_bottom_standoff_diameter": "5.75", - "ext_bottom_standoff_hole_size": "3.4", - "ext_bottom_standoff_insert": "false", - "ext_bottom_standoff_insert_dia": "4.2", - "ext_bottom_standoff_insert_height": "5.1", - "ext_bottom_standoff_pillar": "hex", - "ext_bottom_standoff_reverse": "false", - "ext_bottom_standoff_support_height": "4", - "ext_bottom_standoff_support_size": "10", - "ext_bottom_standoff_type": "countersunk", - "ext_bottom_standoffs": "false", - "ext_top_front_left_adjust": "0", - "ext_top_front_left_enable": "true", - "ext_top_front_left_support": "front", - "ext_top_front_right_adjust": "0", - "ext_top_front_right_enable": "true", - "ext_top_front_right_support": "front", - "ext_top_rear_left_adjust": "0", - "ext_top_rear_left_enable": "true", - "ext_top_rear_left_support": "rear", - "ext_top_rear_right_adjust": "0", - "ext_top_rear_right_enable": "true", - "ext_top_rear_right_support": "rear", - "ext_top_sidewall_support": "true", - "ext_top_standoff_diameter": "5.75", - "ext_top_standoff_hole_size": "2.75", - "ext_top_standoff_insert": "false", - "ext_top_standoff_insert_dia": "4.2", - "ext_top_standoff_insert_height": "5.1", - "ext_top_standoff_pillar": "hex", - "ext_top_standoff_reverse": "true", - "ext_top_standoff_support_height": "4", - "ext_top_standoff_support_size": "10", - "ext_top_standoff_type": "blind", - "ext_top_standoffs": "false", - "fan_size": "0", - "flat_blank_section": "false", - "floorthick": "2", - "gap": "1.5", - "gpio_opening": "default", - "indents": "true", - "individual_part": "bottom", - "lower_bottom": "0", - "material_thickness": "0.5", - "move_front": "0", - "move_leftside": "0", - "move_rear": "0", - "move_rightside": "0", - "pcb_loc_x": "40", - "pcb_loc_y": "0", - "pcb_loc_z": "4", - "raise_top": "0", - "sbc_bottom_standoffs": "true", - "sbc_highlight": "false", - "sbc_information": "false", - "sbc_model": "c4", - "sbc_off": "false", - "sbc_top_standoffs": "false", - "sidethick": "1", - "text_color": "Green", - "text_font": "Nimbus Mono PS", - "tol": "0.25", - "top_cover_pattern": "solid", - "top_front_left_adjust": "0", - "top_front_left_enable": "true", - "top_front_left_support": "front", - "top_front_right_adjust": "0", - "top_front_right_enable": "true", - "top_front_right_support": "front", - "top_rear_left_adjust": "0", - "top_rear_left_enable": "true", - "top_rear_left_support": "rear", - "top_rear_right_adjust": "0", - "top_rear_right_enable": "true", - "top_rear_right_support": "rear", - "top_sidewall_support": "true", - "top_standoff_diameter": "5.75", - "top_standoff_hole_size": "2.75", - "top_standoff_insert": "false", - "top_standoff_insert_dia": "4.2", - "top_standoff_insert_height": "5.1", - "top_standoff_pillar": "hex", - "top_standoff_reverse": "true", - "top_standoff_support_height": "4", - "top_standoff_support_size": "10", - "top_standoff_type": "blind", - "uart_opening": "default", - "view": "model", - "wallthick": "2" - }, - "c4_tray_boombox": { - "$fn": "90", - "access_port_location": "[10, 10]", - "access_port_orientation": "landscape", - "access_port_rotation": "0", - "access_port_size": "[30, 70]", - "accessory_highlight": "false", - "accessory_name": "c4_tray_boombox", - "adj": "0.01", - "bend_allowance": "1", - "bottom_access_port_enable": "false", - "bottom_clearence": "3.5", - "bottom_cover_pattern": "solid", - "bottom_front_left_adjust": "0", - "bottom_front_left_enable": "true", - "bottom_front_left_support": "front", - "bottom_front_right_adjust": "0", - "bottom_front_right_enable": "true", - "bottom_front_right_support": "front", - "bottom_rear_left_adjust": "0", - "bottom_rear_left_enable": "true", - "bottom_rear_left_support": "rear", - "bottom_rear_right_adjust": "0", - "bottom_rear_right_enable": "true", - "bottom_rear_right_support": "rear", - "bottom_sidewall_support": "true", - "bottom_standoff_diameter": "5.75", - "bottom_standoff_hole_size": "3.4", - "bottom_standoff_insert": "false", - "bottom_standoff_insert_dia": "4.2", - "bottom_standoff_insert_height": "5.1", - "bottom_standoff_pillar": "hex", - "bottom_standoff_reverse": "false", - "bottom_standoff_support_height": "4", - "bottom_standoff_support_size": "10", - "bottom_standoff_type": "countersunk", - "case_design": "tray", - "case_offset_bz": "3", - "case_offset_tz": "3", - "case_offset_x": "40", - "case_offset_y": "15", - "case_style": "none", - "cooling": "vent_hex_8mm", - "corner_fillet": "3", - "edge_fillet": "2", - "exhaust_vent": "none", - "ext_bottom_front_left_adjust": "0", - "ext_bottom_front_left_enable": "true", - "ext_bottom_front_left_support": "front", - "ext_bottom_front_right_adjust": "0", - "ext_bottom_front_right_enable": "true", - "ext_bottom_front_right_support": "front", - "ext_bottom_rear_left_adjust": "0", - "ext_bottom_rear_left_enable": "true", - "ext_bottom_rear_left_support": "rear", - "ext_bottom_rear_right_adjust": "0", - "ext_bottom_rear_right_enable": "true", - "ext_bottom_rear_right_support": "rear", - "ext_bottom_sidewall_support": "true", - "ext_bottom_standoff_diameter": "5.75", - "ext_bottom_standoff_hole_size": "3.4", - "ext_bottom_standoff_insert": "false", - "ext_bottom_standoff_insert_dia": "4.2", - "ext_bottom_standoff_insert_height": "5.1", - "ext_bottom_standoff_pillar": "hex", - "ext_bottom_standoff_reverse": "false", - "ext_bottom_standoff_support_height": "4", - "ext_bottom_standoff_support_size": "10", - "ext_bottom_standoff_type": "countersunk", - "ext_bottom_standoffs": "false", - "ext_top_front_left_adjust": "0", - "ext_top_front_left_enable": "true", - "ext_top_front_left_support": "front", - "ext_top_front_right_adjust": "0", - "ext_top_front_right_enable": "true", - "ext_top_front_right_support": "front", - "ext_top_rear_left_adjust": "0", - "ext_top_rear_left_enable": "true", - "ext_top_rear_left_support": "rear", - "ext_top_rear_right_adjust": "0", - "ext_top_rear_right_enable": "true", - "ext_top_rear_right_support": "rear", - "ext_top_sidewall_support": "true", - "ext_top_standoff_diameter": "5.75", - "ext_top_standoff_hole_size": "2.75", - "ext_top_standoff_insert": "false", - "ext_top_standoff_insert_dia": "4.2", - "ext_top_standoff_insert_height": "5.1", - "ext_top_standoff_pillar": "hex", - "ext_top_standoff_reverse": "true", - "ext_top_standoff_support_height": "4", - "ext_top_standoff_support_size": "10", - "ext_top_standoff_type": "blind", - "ext_top_standoffs": "false", - "fan_size": "0", - "flat_blank_section": "false", - "floorthick": "2", - "gap": "1", - "gpio_opening": "default", - "indents": "true", - "individual_part": "bottom", - "lower_bottom": "0", - "material_thickness": "0.5", - "move_front": "0", - "move_leftside": "0", - "move_rear": "0", - "move_rightside": "0", - "pcb_loc_x": "40", - "pcb_loc_y": "0", - "pcb_loc_z": "0", - "raise_top": "0", - "sbc_bottom_standoffs": "true", - "sbc_highlight": "false", - "sbc_information": "false", - "sbc_model": "c4", - "sbc_off": "false", - "sbc_top_standoffs": "false", - "sidethick": "2", - "text_color": "Green", - "text_font": "Nimbus Mono PS", - "tol": "0.25", - "top_cover_pattern": "solid", - "top_front_left_adjust": "0", - "top_front_left_enable": "true", - "top_front_left_support": "front", - "top_front_right_adjust": "0", - "top_front_right_enable": "true", - "top_front_right_support": "front", - "top_rear_left_adjust": "0", - "top_rear_left_enable": "true", - "top_rear_left_support": "rear", - "top_rear_right_adjust": "0", - "top_rear_right_enable": "true", - "top_rear_right_support": "rear", - "top_sidewall_support": "true", - "top_standoff_diameter": "5.75", - "top_standoff_hole_size": "2.75", - "top_standoff_insert": "false", - "top_standoff_insert_dia": "4.2", - "top_standoff_insert_height": "5.1", - "top_standoff_pillar": "hex", - "top_standoff_reverse": "true", - "top_standoff_support_height": "4", - "top_standoff_support_size": "10", - "top_standoff_type": "blind", - "uart_opening": "default", - "view": "model", - "wallthick": "2" } }, "fileFormatVersion": "1" diff --git a/sbc_case_builder.scad b/sbc_case_builder.scad index 3f82c42..ae94c99 100644 --- a/sbc_case_builder.scad +++ b/sbc_case_builder.scad @@ -299,30 +299,30 @@ bottom_standoff = [bottom_standoff_diameter, bottom_standoff_insert, bottom_standoff_insert_dia, bottom_standoff_insert_height]; -ext_top_standoff = [top_standoff_diameter, +ext_top_standoff = [ext_top_standoff_diameter, 18, - top_standoff_hole_size, - top_standoff_support_size, - top_standoff_support_height, - top_standoff_type, - top_standoff_pillar, - top_rear_left_support, - top_standoff_reverse, - top_standoff_insert, - top_standoff_insert_dia, - top_standoff_insert_height]; -ext_bottom_standoff = [bottom_standoff_diameter, + ext_top_standoff_hole_size, + ext_top_standoff_support_size, + ext_top_standoff_support_height, + ext_top_standoff_type, + ext_top_standoff_pillar, + ext_top_rear_left_support, + ext_top_standoff_reverse, + ext_top_standoff_insert, + ext_top_standoff_insert_dia, + ext_top_standoff_insert_height]; +ext_bottom_standoff = [ext_bottom_standoff_diameter, 6, - bottom_standoff_hole_size, - bottom_standoff_support_size, - bottom_standoff_support_height, - bottom_standoff_type, - bottom_standoff_pillar, - bottom_rear_left_support, - bottom_standoff_reverse, - bottom_standoff_insert, - bottom_standoff_insert_dia, - bottom_standoff_insert_height]; + ext_bottom_standoff_hole_size, + ext_bottom_standoff_support_size, + ext_bottom_standoff_support_height, + ext_bottom_standoff_type, + ext_bottom_standoff_pillar, + ext_bottom_rear_left_support, + ext_bottom_standoff_reverse, + ext_bottom_standoff_insert, + ext_bottom_standoff_insert_dia, + ext_bottom_standoff_insert_height]; adj = .01; $fn=90; @@ -569,39 +569,39 @@ if (view == "model") { } if(case_style == "vu5") { color("darkgrey",.5) translate([width+((127.5-width)/2)-6.5-wallthick-gap, - depth-1,case_z+15.5]) rotate([-vu_rotation[0],0,180]) + depth-1,case_z+15.5]) rotate([-15,0,180]) import(file = "stl/Vu5a_Case.stl"); // right speaker and bracket color("darkgrey",.5) translate([((127.5-75)/2)+(width/2)-wallthick-gap+30.5,depth-1, - case_z+15]) rotate([90-vu_rotation[0],0,180]) + case_z+15]) rotate([75,0,180]) import(file = "stl/Vu5_Speaker_Bracket_Left.stl"); color("darkgrey",.5) translate([((127.5-75)/2)+(width/2)-wallthick-gap+85,depth+15, - case_z+12.5]) rotate([-vu_rotation[0],0,180]) hk_speaker(); + case_z+12.5]) rotate([-15,0,180]) hk_speaker(); // left speaker and bracket color("darkgrey",.5) translate([-((127.5-75)/2)+(width/2)-wallthick-gap-30.5,depth-1, - case_z+15]) rotate([90-vu_rotation[0],0,180]) + case_z+15]) rotate([75,0,180]) import(file = "stl/Vu5_Speaker_Bracket_Right.stl"); color("darkgrey",.5) translate([-((127.5-75)/2)+(width/2)-wallthick-gap-40.5,depth+15, - case_z+12.5]) rotate([-vu_rotation[0],0,180]) hk_speaker(); + case_z+12.5]) rotate([-15,0,180]) hk_speaker(); } if(case_style == "vu7") { color("darkgrey",.5) translate([width+((192.90-width)/2)-wallthick-gap-20, - depth-1,case_z+15.5]) rotate([-vu_rotation[0],0,180]) + depth-1,case_z+15.5]) rotate([-15,0,180]) import(file = "stl/Vu7a_Case.stl"); // right speaker and bracket color("darkgrey",.5) translate([((192.90-100)/2)+(width/2)-wallthick-gap+57.5,depth-4, - case_z+27]) rotate([90-vu_rotation[0],0,180]) + case_z+27]) rotate([75,0,180]) import(file = "stl/Vu7_Speaker_Bracket_Left.stl"); color("darkgrey",.5) translate([((192.90-100)/2)+(width/2)-wallthick-gap+97,depth+11.5, - case_z+27]) rotate([-vu_rotation[0],0,180]) hk_speaker(); + case_z+27]) rotate([-15,0,180]) hk_speaker(); // left speaker and bracket color("darkgrey",.5) translate([-((192.90-100)/2)+(width/2)-wallthick-gap-58,depth-4, - case_z+27]) rotate([90-vu_rotation[0],0,180]) + case_z+27]) rotate([75,0,180]) import(file = "stl/Vu7_Speaker_Bracket_Right.stl"); color("darkgrey",.5) translate([-((192.90-100)/2)+(width/2)-wallthick-gap-53.5,depth+11.5, - case_z+27]) rotate([-vu_rotation[0],0,180]) hk_speaker(); + case_z+27]) rotate([-15,0,180]) hk_speaker(); } } if(case_design == "round" || case_design == "hex") { diff --git a/sbc_case_builder_accessories.cfg b/sbc_case_builder_accessories.cfg index d7ce0d4..0282807 100644 --- a/sbc_case_builder_accessories.cfg +++ b/sbc_case_builder_accessories.cfg @@ -171,10 +171,6 @@ accessory_data = [ "add2","boom_speaker_holder",108.25,54.6,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["friction",0],[false,10,2,"default"], "add2","boom_grill",16.75,59,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[false,10,2,"default"], "add2","boom_grill",108.25,59,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[false,10,2,"default"], -// "sub","round",-2,11,15.75,"top",[0,-90,0],["case",false,false,false],[5,0,8],[0],[false,10,2,"default"], -// "sub","slot",-9,37.5,17,"top",[90,0,90],["case",false,false,false],[7,14,6],[0],[false,10,2,"default"], -// "sub","round",16.75,60,17.5,"bottom",[90,0,0],["case",false,true,false],[24,0,5],[0],[false,10,2,"default"], -// "sub","round",108.25,60,17.5,"bottom",[90,0,0],["case",false,true,false],[24,0,5],[0],[false,10,2,"default"], "model","boom_speaker",16.75,56,17.5,"bottom",[270,0,0],["case",false,true,false],[0,0,0],[false,"left"],[false,10,2,"default"], "model","boom_speaker",108.25,56,17.5,"bottom",[270,0,0],["case",false,true,false],[0,0,0],[false,"right"],[false,10,2,"default"], "model","hk_boom",32,0,16,"bottom",[0,0,90],["case",false,false,false],[0,0,0],[false,"none"],[true,10,2,"pcb"], @@ -182,55 +178,53 @@ accessory_data = [ "platter","boom_vring",-50,0,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[false,10,2,"default"]], ["c4_round", - "suball","round",10.5,-2,14.5,"top",[90,0,0],["case",false,false,false],[11,0,18],[0],[false,10,2,"default"], // sub power plug hole - "suball","rectangle",35,-28,4,"top",[0,0,0],["case",false,false,false],[21,12,15.5],[[1,1,1,1]],[false,10,2,"default"]], // sub hdmi opening + "suball","round",10.5,-2,14.5,"top",[90,0,0],["case",false,false,false],[11,0,18],[0],[false,10,2,"default"], + "suball","rectangle",35,-28,4,"top",[0,0,0],["case",false,false,false],[21,12,15.5],[[1,1,1,1]],[false,10,2,"default"]], ["c4_hex", - "suball","round",10.5,-2,14.5,"top",[90,0,0],["case",false,false,false],[11,0,18],[0],[false,10,2,"default"], // sub power plug hole - "suball","rectangle",35,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[false,10,2,"default"]], // sub hdmi opening + "suball","round",10.5,-2,14.5,"top",[90,0,0],["case",false,false,false],[11,0,18],[0],[false,10,2,"default"], + "suball","rectangle",35,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[false,10,2,"default"]], // Odroid-XU4 ["xu4_keyhole", - "add1","keyhole",40,30,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[[7,3.2,6,2]],[false,10,2,"default"], // keyhole - "sub","keyhole",40,30,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[[7,3.2,6,2]],[false,10,2,"default"]], // keyhole - + "add1","keyhole",40,30,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[[7,3.2,6,2]],[true,10,2,"default"]], // Odroid-HC4 ["hc4_tray_drivebox2.5", - "add1","hc4_oled_holder",20,82,1.99,"bottom",[0,0,0],["case",false,true,false],[0,0,2],[0],[true,10,2,"default"], // model hc4 holder - "add2","hd_holder",10,-24,2,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,"portrait"],[false,10,2,"default"], // add hd holder - "sub","hd_holes",10,-24,-.01,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,3,"portrait"],[false,10,2,"default"], // sub hd bottom holes - "sub","round",92,-10,5,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], // sub hd side screw hole - "sub","round",92,66.6,5,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], // sub hd side screw hole - "sub","round",92,-10,23,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], // sub hd side screw hole - "sub","round",92,66.6,23,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], // sub hd side screw hole - "suball","fan",37,-.1,7,"bottom",[90,0,0],["case",true,false,false],[40,0,3],[0],[false,10,2,"default"], // sub fan - "suball","vent",72,87,27,"bottom",[0,0,0],["case",false,true,false],[2,13,4],[1,4,"vertical",1],[false,10,2,"default"], // sub vent - "model","hc4_oled",20,81,2,"bottom",[0,0,0],["case",false,true,false],[0,0,0],[0],[false,10,2,"default"], // model hc4 oled - "model","hd25",10,76,2,"bottom",[0,0,-90],["case",true,true,false],[0,0,0],[15],[false,10,2,"default"], // model 2.5 hd - "model","hd25",10,76,20,"bottom",[0,0,-90],["case",true,true,false],[0,0,0],[15],[false,10,2,"default"], // model 2.5 hd - "model","fan_cover",37,-4,7,"bottom",[90,0,0],["case",true,false,false],[40,0,3],[1],[false,10,2,"default"], // model fan - "platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],[1],[false,10,2,"default"]], // model fan + "add1","hc4_oled_holder",20,82,1.99,"bottom",[0,0,0],["case",false,true,false],[0,0,2],[0],[true,10,2,"default"], + "add2","hd_holder",10,-24,0,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,"portrait"],[false,10,2,"default"], + "sub","hd_holes",10,-24,-.01,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,3,"portrait"],[false,10,2,"default"], + "sub","round",92,-10,5,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], + "sub","round",92,66.6,5,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], + "sub","round",92,-10,23,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], + "sub","round",92,66.6,23,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], + "suball","fan",37,-.1,7,"bottom",[90,0,0],["case",true,false,false],[40,0,3],[0],[false,10,2,"default"], + "suball","vent",72,87,27,"bottom",[0,0,0],["case",false,true,false],[2,13,4],[1,4,"vertical",1],[false,10,2,"default"], + "model","hc4_oled",20,81,2,"bottom",[0,0,0],["case",false,true,false],[0,0,0],[0],[false,10,2,"default"], + "model","hd25",10,76,2,"bottom",[0,0,-90],["case",true,true,false],[0,0,0],[15],[false,10,2,"default"], + "model","hd25",10,76,20,"bottom",[0,0,-90],["case",true,true,false],[0,0,0],[15],[false,10,2,"default"], + "model","fan_cover",37,-4,7,"bottom",[90,0,0],["case",true,false,false],[40,0,3],[1],[false,10,2,"default"], + "platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],[1],[false,10,2,"default"]], ["hc4_shell_drivebox2.5", - "add2","hc4_oled_holder",20,82,1.99,"bottom",[0,0,0],["case",false,true,false],[0,0,2],[0],[true,10,2,"default"], // model hc4 holder - "add2","hd_holder",10,-21,1.99,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,"portrait"],[false,10,2,"default"], // add hd holder - "sub","hd_holes",10,-21,-.01,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,3,"portrait"],[false,10,2,"default"], // sub hd bottom holes - "sub","round",92,-5,5,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], // sub hd side screw hole - "sub","round",92,69.6,5,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], // sub hd side screw hole - "sub","round",92,-5,23,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], // sub hd side screw hole - "sub","round",92,69.6,23,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], // sub hd side screws hole - "sub","vent",71.85,88,30,"top",[0,0,0],["case",false,true,false],[2,13,4],[1,4,"vertical",1],[false,10,2,"default"], // sub vent - "suball","fan",39,-.1,7,"bottom",[90,0,0],["case",true,false,false],[40,0,3],[0],[false,10,2,"default"], // sub fan - "sub","vent",-3.5,35,34,"top",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"], // vent opening - "sub","vent",92,35,34,"top",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"], // vent opening - "sub","vent",-3.5,35,9,"bottom",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"], // vent opening - "sub","vent",92,35,9,"bottom",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"], // vent opening - "model","hc4_oled",20,82,1.99,"bottom",[0,0,0],["case",false,true,false],[0,0,0],[0],[false,10,2,"default"], // model hc4 oled - "model","hd25",10,79,2,"bottom",[0,0,-90],["case",true,true,false],[0,0,0],[15],[false,10,2,"default"], // model 2.5 hd - "model","hd25",10,79,20,"bottom",[0,0,-90],["case",true,true,false],[0,0,0],[15],[false,10,2,"default"], // model 2.5 hd - "model","fan_cover",39,-4,7,"top",[90,0,0],["case",true,false,false],[40,0,3],[1],[false,10,2,"default"], // model fan - "platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],[1],[false,10,2,"default"]], // model fan + "add2","hc4_oled_holder",20,82,1.99,"bottom",[0,0,0],["case",false,true,false],[0,0,2],[0],[true,10,2,"default"], + "add2","hd_holder",10,-21,1.99,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,"portrait"],[false,10,2,"default"], + "sub","hd_holes",10,-21,-.01,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,3,"portrait"],[false,10,2,"default"], + "sub","round",92,-5,5,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], + "sub","round",92,69.6,5,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], + "sub","round",92,-5,23,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], + "sub","round",92,69.6,23,"bottom",[0,90,0],["case",true,true,false],[3,0,3],[0],[false,10,2,"default"], + "sub","vent",71.85,88,30,"top",[0,0,0],["case",false,true,false],[2,13,4],[1,4,"vertical",1],[false,10,2,"default"], + "suball","fan",39,-.1,7,"bottom",[90,0,0],["case",true,false,false],[40,0,3],[0],[false,10,2,"default"], + "sub","vent",-3.5,35,34,"top",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"], + "sub","vent",92,35,34,"top",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"], + "sub","vent",-3.5,35,9,"bottom",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"], + "sub","vent",92,35,9,"bottom",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[false,10,2,"default"], + "model","hc4_oled",20,82,1.99,"bottom",[0,0,0],["case",false,true,false],[0,0,0],[0],[false,10,2,"default"], + "model","hd25",10,79,2,"bottom",[0,0,-90],["case",true,true,false],[0,0,0],[15],[false,10,2,"default"], + "model","hd25",10,79,20,"bottom",[0,0,-90],["case",true,true,false],[0,0,0],[15],[false,10,2,"default"], + "model","fan_cover",39,-4,7,"top",[90,0,0],["case",true,false,false],[40,0,3],[1],[false,10,2,"default"], + "platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],[1],[false,10,2,"default"]], ["hc4_shell_drivebox2.5v", "add2","hd_vertright",45.6,-21,1.99,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,"portrait"],[false,10,2,"default"], // sub hd bottom holes