started cleaning json and cfg file, updated ui and added new features

This commit is contained in:
Edward Kisiel
2024-02-25 21:39:41 -05:00
parent 2c61849665
commit d5d23fba18
3 changed files with 23 additions and 24008 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -33,6 +33,8 @@ sbc_model = "c1+"; // ["c1+", "c2", "c4", "hc4", "xu4", "xu4q", "mc1", "hc1", "
// sbc off in model view // sbc off in model view
sbc_off = false; sbc_off = false;
// sbc information display
sbc_information = false;
// enable highlight for sbc component subtarctive geometry // enable highlight for sbc component subtarctive geometry
sbc_highlight = false; sbc_highlight = false;
// enable highlight for accessory subtarctive geometry // enable highlight for accessory subtarctive geometry
@@ -95,8 +97,8 @@ top_standoff_hole_size = 2.75; //[0:.01:5]
top_standoff_support_size = 10; //[0:.01:15] top_standoff_support_size = 10; //[0:.01:15]
top_standoff_support_height = 4; //[0:.01:50] top_standoff_support_height = 4; //[0:.01:50]
top_standoff_insert = false; top_standoff_insert = false;
top_standoff_insert_dia = 4.5; //[0:.01:6] top_standoff_insert_dia = 4.2; //.01
top_standoff_insert_height = 5; //[0:.01:10] top_standoff_insert_height = 5.1; //.01
top_standoff_reverse = true; top_standoff_reverse = true;
// enable wall support for standoffs // enable wall support for standoffs
top_sidewall_support = true; top_sidewall_support = true;
@@ -124,8 +126,8 @@ bottom_standoff_hole_size = 3.4; //[0:.01:5]
bottom_standoff_support_size = 10; //[1:.01:15] bottom_standoff_support_size = 10; //[1:.01:15]
bottom_standoff_support_height = 4; //[0:.01:50] bottom_standoff_support_height = 4; //[0:.01:50]
bottom_standoff_insert = false; bottom_standoff_insert = false;
bottom_standoff_insert_dia = 4.5; //[0:.01:6] bottom_standoff_insert_dia = 4.2; //.01
bottom_standoff_insert_height = 5; //[0:.01:10] bottom_standoff_insert_height = 5.1; //.01
bottom_standoff_reverse = false; bottom_standoff_reverse = false;
// enable wall support for standoffs // enable wall support for standoffs
bottom_sidewall_support = true; bottom_sidewall_support = true;
@@ -153,8 +155,8 @@ ext_top_standoff_hole_size = 2.75; //[0:.01:5]
ext_top_standoff_support_size = 10; //[0:.01:15] ext_top_standoff_support_size = 10; //[0:.01:15]
ext_top_standoff_support_height = 4; //[0:.01:50] ext_top_standoff_support_height = 4; //[0:.01:50]
ext_top_standoff_insert = false; ext_top_standoff_insert = false;
ext_top_standoff_insert_dia = 4.5; //[0:.01:6] ext_top_standoff_insert_dia = 4.2; //.01
ext_top_standoff_insert_height = 5; //[0:.01:10] ext_top_standoff_insert_height = 5.1; //.01
ext_top_standoff_reverse = true; ext_top_standoff_reverse = true;
// enable wall support for extended standoffs // enable wall support for extended standoffs
ext_top_sidewall_support = true; ext_top_sidewall_support = true;
@@ -183,8 +185,8 @@ ext_bottom_standoff_hole_size = 3.4; //[0:.01:5]
ext_bottom_standoff_support_size = 10; //[1:.01:15] ext_bottom_standoff_support_size = 10; //[1:.01:15]
ext_bottom_standoff_support_height = 4; //[0:.01:50] ext_bottom_standoff_support_height = 4; //[0:.01:50]
ext_bottom_standoff_insert = false; ext_bottom_standoff_insert = false;
ext_bottom_standoff_insert_dia = 4.5; //[0:.01:6] ext_bottom_standoff_insert_dia = 4.2; //.01
ext_bottom_standoff_insert_height = 5; //[0:.01:10] ext_bottom_standoff_insert_height = 5.1; //.01
ext_bottom_standoff_reverse = false; ext_bottom_standoff_reverse = false;
// enable wall support for extended standoffs // enable wall support for extended standoffs
ext_bottom_sidewall_support = true; ext_bottom_sidewall_support = true;
@@ -213,23 +215,29 @@ bottom_clearence = 3.5; //[-10:.01:10]
flat_blank_section = false; flat_blank_section = false;
/* [Features and Accessories] */ /* [Features and Accessories] */
// top cover pattern
top_cover_pattern = "solid"; //[solid,hex_5mm,hex_8mm,embedded,Apollonian]
// bottom cover pattern
bottom_cover_pattern = "solid"; //[solid,hex_5mm,hex_8mm,embedded,Apollonian]
bottom_access_port_enable = false;
access_port_size = [30,70]; //[10:.01:120]
access_port_orientation = "landscape"; //[landscape,portrait]
access_port_location = [10,10]; //[0:.01:200]
access_port_rotation = 0; //[0:90:270]
// heatsink opening // heatsink opening
cooling = "default"; // [default,none,open,fan_open,fan_1,fan_2,fan_hex,vent,vent_hex_5mm,vent_hex_8mm,custom] cooling = "default"; // [default,none,open,fan_open,fan_1,fan_2,fan_hex,vent,vent_hex_5mm,vent_hex_8mm,custom]
fan_size = 0; // [0,30,40,50,60,70,80,92] fan_size = 0; // [0,30,40,50,60,70,80,92]
// exhaust vent // exhaust vent
exhaust_vents = "vent"; // [none,vent] exhaust_vent = "none"; // [none,rear,front,right,left]
// gpio opening // gpio opening
gpio_opening = "default"; // [default,none,open,block,knockout,vent] gpio_opening = "default"; // [default,none,open,block,knockout,vent]
// uart opening // uart opening
uart_opening = "default"; // [default,none,open,knockout] uart_opening = "default"; // [default,none,open,knockout]
// enable indentations around io openings // enable indentations around io openings
indents = true; indents = true;
// enable sata knockout
sata_knockout = false;
// case accessory group to load // case accessory group to load
accessory_name = "none"; // ["none", "hk_uart", "sensors", "c1+_shell_boombox", "c1+_panel_boombox", "c1+_panel_lcd3.5", "c1+_desktop_lcd3.5", "c1+_deskboom_lcd3.5", "c1+_tray_boombox", "c1+_round", "c1+_hex", "c2_shell_boombox", "c2_panel_boombox", "c2_panel_lcd3.5", "c2_desktop_lcd3.5", "c2_deskboom_lcd3.5", "c2_tray_boombox", "c2_round", "c2_hex", "c4_shell_boombox", "c4_panel_lcd3.5", "c4_desktop_lcd3.5", "c4_deskboom_lcd3.5", "c4_panel_boombox", "c4_tray_boombox", "c4_round", "c4_hex", "xu4_keyhole", "hc4_tray_drivebox2.5", "hc4_shell_drivebox2.5", "hc4_shell_drivebox2.5v", "hc4_shell_drivebox3.5", "n2l_tray", "n2l_gpio", "n2+_tray_vu7_fan", "m1s_shell", "m1s_shell_nvme", "m1s_shell_ups", "m1s_panel", "m1s_tray_nvme", "m1s_snap", "m1s_fitted", "m1_panel", "m1_tray", "m1_tray_ssd", "m1_tray_sides", "m1_tray_vu5", "m1_tray_vu7", "m1_fitted_drivebox2.5", "m1_fitted_drivebox3.5", "m1_fitted_pizzabox", "m1_fitted_drivebox3.5v", "h2_shell", "h2_shell_router", "h2_shell_router-ssd", "h2_lowboy", "h2_lowboy_router", "h2_tray", "h2_tray_sides", "h2_tray_router", "h2_router_station", "h2_round", "h2_hex", "h3_shell", "h3_lowboy", "h3_lowboy_router", "h3_tallboy", "h3_tallboy-ssd", "h3_ultimate", "h3_ultimate2", "h3_shell_drivebox2.5v", "show2_shell", "jetsonnano_shell", "jetsonnano_panel", "jetsonnano_stacked", "jetsonnano_tray", "jetsonnano_tray_sides", "jetsonnano_round", "jetsonnano_hex", "jetsonnano_snap", "jetsonnano_fitted", "rock64_round", "rock64_hex", "rockpro64_shell", "rockpro64_panel", "rockpro64_stacked", "rockpro64_tray", "rockpro64_tray_sides", "rockpro64_round", "rockpro64_hex", "rockpro64_snap", "rockpro64_fitted", "star64_shell", "rpi1b+_round", "rpi1b+_hex", "rpi3b_round", "rpi3b_hex", "rpi3b+_round", "rpi3b+_hex", "rpi4b_round", "rpi4b_hex", "rpi4b_shell_geeekpi_poe_hat", "rpi5_round", "rpi5_hex", "rock4b+_round", "rock4b+_hex", "rock4c_round", "rock4c_hex", "rock4c+_round", "rock4c+_hex", "rock5b", "rock5b_shell", "rock5bq", "rock5bq_shell", "rock5bq_tray", "rock5bq_tray_sides", "rock5bq_snap", "rock5bq_fitted", "rock5b-v1.3", "tinkerboard_round", "tinkerboard_hex", "tinkerboard-s_round", "tinkerboard-s_hex", "tinkerboard-2_round", "tinkerboard-2_hex", "tinkerboard-r2_round", "tinkerboard-r2_hex", "visonfive2_shell", "visonfive2_panel", "visonfive2_stacked", "visonfive2_tray", "visonfive2_snap", "visonfive2_fitted", "visonfive2q_shell", "visonfive2q_panel", "visonfive2q_stacked", "visonfive2q_tray", "visonfive2q_snap", "visonfive2q_fitted"] accessory_name = "none"; // ["none", "hk_uart", "sensors", "c4_shell_boombox", "c4_panel_lcd3.5", "c4_desktop_lcd3.5", "c4_deskboom_lcd3.5", "c4_panel_boombox", "c4_tray_boombox", "c4_round", "c4_hex", "xu4_keyhole", "hc4_tray_drivebox2.5", "hc4_shell_drivebox2.5", "hc4_shell_drivebox2.5v", "hc4_shell_drivebox3.5", "n2l_tray", "n2l_gpio", "m1s_shell_nvme", "m1s_shell_ups", "m1s_tray_nvme", "m1s_snap", "m1s_fitted", "m1_panel", "m1_tray", "m1_tray_ssd", "m1_tray_sides", "m1_tray_vu5", "m1_tray_vu7", "m1_fitted_drivebox2.5", "m1_fitted_drivebox3.5", "m1_fitted_pizzabox", "m1_fitted_drivebox3.5v", "h3_shell", "h3_lowboy", "h3_lowboy_router", "h3_tallboy", "h3_tallboy-ssd", "h3_ultimate", "h3_ultimate2", "h3_shell_drivebox2.5v", "show2_shell", "jetsonnano_shell", "jetsonnano_panel", "jetsonnano_stacked", "jetsonnano_tray", "jetsonnano_tray_sides", "jetsonnano_round", "jetsonnano_hex", "jetsonnano_snap", "jetsonnano_fitted", "rock5b", "rock5b_shell", "rock5bq", "rock5bq_shell", "rock5bq_tray", "rock5bq_tray_sides", "rock5bq_snap", "rock5bq_fitted", "rock5b-v1.3", "visonfive2_shell", "visonfive2_panel", "visonfive2_stacked", "visonfive2_tray", "visonfive2_snap", "visonfive2_fitted", "visonfive2q_shell", "visonfive2q_panel", "visonfive2q_stacked", "visonfive2q_tray", "visonfive2q_snap", "visonfive2q_fitted"]
// sbc information display
sbc_information = false;
text_color = "Green"; // [Green, Black, Dimgrey, White, Yellow, Orange, Red, DarkbBlue] text_color = "Green"; // [Green, Black, Dimgrey, White, Yellow, Orange, Red, DarkbBlue]
text_font = "Nimbus Mono PS"; // [Nimbus Mono PS, Liberation Mono, Noto Sans Mono] text_font = "Nimbus Mono PS"; // [Nimbus Mono PS, Liberation Mono, Noto Sans Mono]

View File

@@ -92,225 +92,6 @@ accessory_data = [
"add2","pcb_holder",65.4,121,1,"bottom",[0,0,270],["case",false,false,false],[61,35,1.65],[2],[true,10,2,"default"], "add2","pcb_holder",65.4,121,1,"bottom",[0,0,270],["case",false,false,false],[61,35,1.65],[2],[true,10,2,"default"],
"model","stl_model",0,70,3,"bottom",[0,0,0],["sbc",false,false,false],[0,0,0],[1,"./adafruit/4632 PMSA003I.stl"],[true,10,2,"default"]], "model","stl_model",0,70,3,"bottom",[0,0,0],["sbc",false,false,false],[0,0,0],[1,"./adafruit/4632 PMSA003I.stl"],[true,10,2,"default"]],
// Odroid-C1+
["c1+_shell_boombox",
"add2","pcb_holder",.75,51.1,1.99,"bottom",[0,0,0],["case",false,true,false],[123.5,35,1.6],[2],[true,10,2,"default"], // add pcb holder
"add2","boom_grill",16.5,60,21.5,"top",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[true,10,2,"default"], // add boom grill
"add2","boom_grill",108,60,21.5,"top",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[true,10,2,"default"], // add boom grill
"add2","hk_uart_holder",10,0,1.9,"bottom",[0,0,0],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart holder
"sub","round",43.75,49,39,"top",[0,0,0],["case",false,true,false],[5,0,5],[0],[true,10,2,"default"], // sub cylinder
"-sub","slot",70.5,65,48,"top",[0,0,0],["case",false,true,false],[6,14,5],[0],[true,10,2,"default"], // sub rectangle
"sub","round",16.5,61,21.5,"top",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","round",108,61,21.5,"top",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","vent",44,60,17,"top",[0,0,0],["case",false,true,false],[2,10,4],[1,10,"vertical",1],[true,10,2,"default"], // vent opening
"suball","slot",16.25,0,8,"top",[90,0,0],["case",false,false,false],[4,5,15],[0],[true,10,2,"default"], // sub rectangle
"model","hk_uart",12.5,23,5,"bottom",[0,0,-90],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart model
"model","hk_uart_strap",10,0,2,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"model","hk_boom",32.25,53,4,"bottom",[90,0,0],["case",false,true,false],[0,0,0],[true,"front"],[true,10,2,"default"], // hk boom bonnet
"model","boom_vring",76.75,49.5,31,"bottom",[90,0,0],["case",false,true,false],[0,0,0],[0],[true,10,2,"default"], // hk boom bonnet volume ring
"platter","hk_uart_strap",-35,75,-9,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"platter","boom_vring",-60,100,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // hk boom bonnet volume ring
["c1+_panel_boombox",
"add2","pcb_holder",.75,51.1,1.99,"bottom",[0,0,0],["case",false,true,false],[123.5,35,1.6],[2],[true,10,2,"default"], // add pcb holder
"add2","boom_grill",16.5,57.5,21.5,"front",[90,0,180],["case",false,true,false],[0,0,2],["flat"],[true,10,2,"default"], // add boom grill
"add2","boom_grill",108,57.5,21.5,"front",[90,0,180],["case",false,true,false],[0,0,2],["flat"],[true,10,2,"default"], // add boom grill
"add2","hk_uart_holder",10,0,1.9,"bottom",[0,0,0],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart holder
"sub","round",16.5,60,21.5,"front",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","round",108,60,21.5,"front",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","vent",-3,22,13,"left",[0,0,90],["case",false,false,true],[2,10,5],[1,8,"vertical",1],[true,10,2,"default"], // vent opening
"suball","slot",16.25,0,8,"top",[90,0,0],["case",false,false,false],[4,5,15],[0],[true,10,2,"default"], // sub rectangle
"model","hk_uart",12.5,23,5,"bottom",[0,0,-90],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart model
"model","hk_uart_strap",10,0,2,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"model","hk_boom",32.25,53,4,"bottom",[90,0,0],["case",false,true,false],[0,0,0],[true,"front"],[true,10,2,"default"], // hk boom bonnet
"model","boom_vring",76.75,49.5,31,"bottom",[90,0,0],["case",false,true,false],[0,0,0],[0],[true,10,2,"default"], // hk boom bonnet volume ring
"platter","hk_uart_strap",-35,75,-9,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"platter","boom_vring",-60,100,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // hk boom bonnet volume ring
["c1+_panel_lcd3.5",
"add2","button",89.875,45,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,34,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,23,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,12,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"sub","vent",-3,13,10,"left",[0,0,90],["case",false,false,false],[2,10,5],[1,8,"vertical",1],[true,10,2,"default"], // vent opening
"sub","rectangle",5.5,2.75,27,"top",[0,0,0],["case",false,false,false],[74.5,51,6],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"model","hk_lcd35",95,56,20,"bottom",[0,0,180],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // model hk 3.5 lcd
["c1+_desktop_lcd3.5",
"add2","button",89.875,45,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,34,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,23,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,12,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add1","rectangle",-3.5,2.65,-24.5,"left",[20,0,0],["case",false,false,false],[2,62.9,24],[[.1,.1,.1,.1]],[true,10,2,"default"], // sub rectangle
"sub","round",-3.75,40,-34,"left",[0,90,0],["case",false,false,false],[65,0,3],[0],[true,10,2,"default"], // sub round
"add1","rectangle",116.5,2.65,-24.5,"right",[20,0,0],["case",false,false,false],[2,62.9,24],[[.1,.1,.1,.1]],[true,10,2,"default"], // sub rectangle
"sub","round",116.4,40,-34,"right",[0,90,0],["case",false,false,false],[65,0,3],[0],[true,10,2,"default"], // sub round
"sub","vent",-3,13,10,"left",[0,0,90],["case",false,false,false],[2,10,5],[1,8,"vertical",1],[true,10,2,"default"], // vent opening
"sub","rectangle",5.5,2.75,27,"top",[0,0,0],["case",false,false,false],[74.5,51,6],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"model","hk_lcd35",95,56,20,"bottom",[0,0,180],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // model hk 3.5 lcd
["c1+_deskboom_lcd3.5",
"add1","rectangle",126.5,14.75,-37.5,"right",[30,0,0],["case",false,false,false],[2,71.15,41],[[.1,.1,.1,.1]],[true,10,2,"default"], // sub rectangle
"add1","rectangle",-3.5,14.75,-37.5,"left",[30,0,0],["case",false,false,false],[2,71.15,41],[[.1,.1,.1,.1]],[true,10,2,"default"], // sub rectangle
"add2","button",89.875,45,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,34,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,23,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,12,27,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","pcb_holder",.75,66.1,1.99,"bottom",[0,0,0],["case",false,false,false],[123.5,35,1.6],[2],[true,10,2,"default"], // add pcb holder
"add2","boom_grill",16.5,72.5,21.5,"front",[90,0,180],["case",false,false,false],[0,0,2],["flat"],[true,10,2,"default"], // add boom grill
"add2","boom_grill",108,72.5,21.5,"front",[90,0,180],["case",false,false,false],[0,0,2],["flat"],[true,10,2,"default"], // add boom grill
"add2","hk_uart_holder",10,0,1.9,"bottom",[0,0,0],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart holder
"sub","round",-3.75,54,-32,"left",[0,90,0],["case",false,false,false],[60,0,3],[0],[true,10,2,"default"], // sub round
"sub","round",126.4,54,-32,"right",[0,90,0],["case",false,false,false],[60,0,3],[0],[true,10,2,"default"], // sub round
"sub","rectangle",5.5,2.75,39,"top",[0,0,0],["case",false,false,false],[74.5,51,5],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","round",43.75,64,39,"top",[0,0,0],["case",false,false,false],[5,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","slot",70.5,63,38,"top",[0,0,0],["case",false,false,false],[6,14,5],[0],[true,10,2,"default"], // sub rectangle
"sub","round",16.5,75,21.5,"front",[90,0,0],["case",false,false,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","round",108,75,21.5,"front",[90,0,0],["case",false,false,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","vent",-3,22,13,"left",[0,0,90],["case",false,false,false],[2,10,5],[1,8,"vertical",1],[true,10,2,"default"], // vent opening
"suball","slot",16.25,0,8,"top",[90,0,0],["case",false,false,false],[4,5,15],[0],[true,10,2,"default"], // sub rectangle
"model","hk_uart",12.5,23,5,"bottom",[0,0,-90],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart model
"model","hk_uart_strap",10,0,2,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"model","hk_boom",32.25,68,4,"bottom",[90,0,0],["case",false,false,false],[0,0,0],[true,"front"],[true,10,2,"default"], // hk boom bonnet
"model","boom_vring",76.75,64.5,31,"bottom",[90,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk boom bonnet volume ring
"model","hk_lcd35",95,56,31,"bottom",[0,0,180],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // model hk 3.5 lcd
"platter","hk_uart_strap",-35,75,-9,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"platter","boom_vring",-60,100,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // hk boom bonnet volume ring
["c1+_tray_boombox",
"add2","boom_speaker_holder",16.75,54.6,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["friction",0],[true,10,2,"default"], // add boom grill
"add2","boom_speaker_holder",108.25,54.6,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["friction",0],[true,10,2,"default"], // add boom grill
"add2","boom_grill",16.75,59,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[true,10,2,"default"], // add boom grill
"add2","boom_grill",108.25,59,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[true,10,2,"default"], // add boom grill
"sub","vent",44,74,12,"bottom",[0,0,0],["case",false,false,false],[2,10,4],[1,10,"vertical",1],[true,10,2,"default"], // vent opening
"sub","round",-2,11,15.75,"top",[0,-90,0],["case",false,false,false],[5,0,8],[0],[true,10,2,"default"], // sub cylinder
"sub","slot",-9,37.5,17,"top",[90,0,90],["case",false,false,false],[7,14,6],[0],[true,10,2,"default"], // sub rectangle
"sub","round",16.75,60,17.5,"bottom",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","round",108.25,60,17.5,"bottom",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"model","boom_speaker",16.75,56,17.5,"bottom",[-90,0,0],["case",false,true,false],[0,0,0],[false,"left"],[true,10,2,"default"], // boom speaker
"model","boom_speaker",108.25,56,17.5,"bottom",[-90,0,0],["case",false,true,false],[0,0,0],[false,"right"],[true,10,2,"default"], // boom speaker
"model","hk_boom",32,0,12,"bottom",[0,0,90],["case",false,false,false],[0,0,0],[false,"front"],[true,10,2,"default"], // hk boom bonnet
"model","boom_vring",4.5,44.5,16,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk boom bonnet volume ring
"platter","boom_vring",-50,0,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // hk boom bonnet volume ring
["c1+_round",
"suball","round",49.5,-15,10.5,"top",[90,0,0],["case",false,false,false],[11,0,15],[0],[true,10,2,"default"], // sub power plug hole
"suball","rectangle",20.5,-26,4.5,"top",[0,0,0],["case",false,false,false],[21,8,13.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["c1+_hex",
"suball","round",49.5,-15,10.5,"top",[90,0,0],["case",false,false,false],[11,0,15],[0],[true,10,2,"default"], // sub power plug hole
"suball","rectangle",20.5,-26,4.5,"top",[0,0,0],["case",false,false,false],[21,18,13.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
// Odroid-C2
["c2_shell_boombox",
"add2","pcb_holder",.75,51.1,1.99,"bottom",[0,0,0],["case",false,true,false],[123.5,35,1.6],[2],[true,10,2,"default"], // add pcb holder
"add2","boom_grill",16.5,60,21.5,"top",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[true,10,2,"default"], // add boom grill
"add2","boom_grill",108,60,21.5,"top",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[true,10,2,"default"], // add boom grill
"add2","hk_uart_holder",10,0,1.9,"bottom",[0,0,0],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart holder
"sub","round",43.75,49,39,"top",[0,0,0],["case",false,true,false],[5,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","slot",70.5,48,39,"top",[0,0,0],["case",false,true,false],[6,14,5],[0],[true,10,2,"default"], // sub rectangle
"sub","round",16.5,61,21.5,"top",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","round",108,61,21.5,"top",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","vent",44,60,17,"top",[0,0,0],["case",false,true,false],[2,10,4],[1,10,"vertical",1],[true,10,2,"default"], // vent opening
"suball","slot",16.25,0,8,"top",[90,0,0],["case",false,false,false],[4,5,15],[0],[true,10,2,"default"], // sub rectangle
"model","hk_uart",12.5,23,5,"bottom",[0,0,-90],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart model
"model","hk_uart_strap",10,0,2,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"model","hk_boom",32.25,53,4,"bottom",[90,0,0],["case",false,true,false],[0,0,0],[true,"front"],[true,10,2,"default"], // hk boom bonnet
"model","boom_vring",76.75,49.5,31,"bottom",[90,0,0],["case",false,true,false],[0,0,0],[0],[true,10,2,"default"], // hk boom bonnet volume ring
"platter","hk_uart_strap",-35,75,-9,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"platter","boom_vring",-60,100,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // hk boom bonnet volume ring
["c2_panel_boombox",
"add2","pcb_holder",.75,51.1,1.99,"bottom",[0,0,0],["case",false,true,false],[123.5,35,1.6],[2],[true,10,2,"default"], // add pcb holder
"add2","boom_grill",16.5,57.5,21.5,"front",[90,0,180],["case",false,true,false],[0,0,2],["flat"],[true,10,2,"default"], // add boom grill
"add2","boom_grill",108,57.5,21.5,"front",[90,0,180],["case",false,true,false],[0,0,2],["flat"],[true,10,2,"default"], // add boom grill
"add2","hk_uart_holder",10,0,1.9,"bottom",[0,0,0],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart holder
"sub","round",16.5,60,21.5,"front",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","round",108,60,21.5,"front",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","vent",-3,22,13,"left",[0,0,90],["case",false,false,false],[2,10,5],[1,8,"vertical",1],[true,10,2,"default"], // vent opening
"suball","slot",16.25,0,8,"top",[90,0,0],["case",false,false,false],[4,5,15],[0],[true,10,2,"default"], // sub rectangle
"model","hk_uart",12.5,23,5,"bottom",[0,0,-90],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart model
"model","hk_uart_strap",10,0,2,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"model","hk_boom",32.25,51,4,"bottom",[90,0,0],["case",false,true,false],[0,0,0],[true,"front"],[true,10,2,"default"], // hk boom bonnet
"model","boom_vring",76.75,49.5,31,"bottom",[90,0,0],["case",false,true,false],[0,0,0],[0],[true,10,2,"default"], // hk boom bonnet volume ring
"platter","hk_uart_strap",-35,75,-9,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"platter","boom_vring",-60,100,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // hk boom bonnet volume ring
["c2_panel_lcd3.5",
"add2","button",89.875,45,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,34,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,23,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,12,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"sub","vent",-3,13,10,"left",[0,0,90],["case",false,false,false],[2,10,5],[1,8,"vertical",1],[true,10,2,"default"], // vent opening
"sub","rectangle",5.5,2.75,27,"top",[0,0,0],["case",false,false,false],[74.5,51,5],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"model","hk_lcd35",95,56,20,"bottom",[0,0,180],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // model hk 3.5 lcd
["c2_desktop_lcd3.5",
"add2","button",89.875,45,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,34,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,23,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,12,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add1","rectangle",-3.5,2.65,-24.5,"left",[20,0,0],["case",false,false,false],[2,62.9,24],[[.1,.1,.1,.1]],[true,10,2,"default"], // sub rectangle
"sub","round",-3.75,40,-34,"left",[0,90,0],["case",false,false,false],[65,0,3],[0],[true,10,2,"default"], // sub round
"add1","rectangle",116.5,2.65,-24.5,"right",[20,0,0],["case",false,false,false],[2,62.9,24],[[.1,.1,.1,.1]],[true,10,2,"default"], // sub rectangle
"sub","round",116.4,40,-34,"right",[0,90,0],["case",false,false,false],[65,0,3],[0],[true,10,2,"default"], // sub round
"sub","vent",-3,13,10,"left",[0,0,90],["case",false,false,false],[2,10,5],[1,8,"vertical",1],[true,10,2,"default"], // vent opening
"sub","rectangle",5.5,2.75,27,"top",[0,0,0],["case",false,false,false],[74.5,51,5],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"model","hk_lcd35",95,56,20,"bottom",[0,0,180],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // model hk 3.5 lcd
["c2_deskboom_lcd3.5",
"add1","rectangle",126.5,14.75,-37.5,"right",[30,0,0],["case",false,false,false],[2,71.15,41],[[.1,.1,.1,.1]],[true,10,2,"default"], // sub rectangle
"add1","rectangle",-3.5,14.75,-37.5,"left",[30,0,0],["case",false,false,false],[2,71.15,41],[[.1,.1,.1,.1]],[true,10,2,"default"], // sub rectangle
"add2","button",89.875,45,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,34,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,23,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","button",89.875,12,26,"top",[0,0,180],["sbc-case_z",false,false,true],[12,8,2],[2,"cutout",[2,2,2,2]],[true,10,2,"default"], // cutout button
"add2","pcb_holder",.75,66.1,1.99,"bottom",[0,0,0],["case",false,false,false],[123.5,35,1.6],[2],[true,10,2,"default"], // add pcb holder
"add2","boom_grill",16.5,72.5,21.5,"front",[90,0,180],["case",false,false,false],[0,0,2],["flat"],[true,10,2,"default"], // add boom grill
"add2","boom_grill",108,72.5,21.5,"front",[90,0,180],["case",false,false,false],[0,0,2],["flat"],[true,10,2,"default"], // add boom grill
"add2","hk_uart_holder",10,0,1.9,"bottom",[0,0,0],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart holder
"sub","round",-3.75,54,-32,"left",[0,90,0],["case",false,false,false],[60,0,3],[0],[true,10,2,"default"], // sub round
"sub","round",126.4,54,-32,"right",[0,90,0],["case",false,false,false],[60,0,3],[0],[true,10,2,"default"], // sub round
"sub","rectangle",5.5,2.75,39,"top",[0,0,0],["case",false,false,false],[74.5,51,5],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","round",43.75,64,39,"top",[0,0,0],["case",false,false,false],[5,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","slot",70.5,63,38,"top",[0,0,0],["case",false,false,false],[6,14,5],[0],[true,10,2,"default"], // sub rectangle
"sub","round",16.5,75,21.5,"front",[90,0,0],["case",false,false,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","round",108,75,21.5,"front",[90,0,0],["case",false,false,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","vent",-3,22,13,"left",[0,0,90],["case",false,false,false],[2,10,5],[1,8,"vertical",1],[true,10,2,"default"], // vent opening
"suball","slot",16.25,0,8,"top",[90,0,0],["case",false,false,false],[4,5,15],[0],[true,10,2,"default"], // sub rectangle
"model","hk_uart",12.5,23,5,"bottom",[0,0,-90],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart model
"model","hk_uart_strap",10,0,2,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"model","hk_boom",32.25,68,4,"bottom",[90,0,0],["case",false,false,false],[0,0,0],[true,"front"],[true,10,2,"default"], // hk boom bonnet
"model","boom_vring",76.75,64.5,31,"bottom",[90,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk boom bonnet volume ring
"model","hk_lcd35",95,56,31,"bottom",[0,0,180],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // model hk 3.5 lcd
"platter","hk_uart_strap",-35,75,-9,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk uart strap
"platter","boom_vring",-60,100,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // hk boom bonnet volume ring
["c2_tray_boombox",
"add2","boom_speaker_holder",16.75,54.6,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["friction",0],[true,10,2,"default"], // add boom grill
"add2","boom_speaker_holder",108.25,54.6,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["friction",0],[true,10,2,"default"], // add boom grill
"add2","boom_grill",16.75,59,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[true,10,2,"default"], // add boom grill
"add2","boom_grill",108.25,59,17.5,"bottom",[90,0,180],["case",false,true,false],[0,0,0],["dome"],[true,10,2,"default"], // add boom grill
"sub","vent",44,59,12,"bottom",[0,0,0],["case",false,true,false],[2,10,4],[1,10,"vertical",1],[true,10,2,"default"], // vent opening
"sub","round",-2,11,15.75,"top",[0,-90,0],["case",false,false,false],[5,0,8],[0],[true,10,2,"default"], // sub cylinder
"sub","slot",-9,37.5,17,"top",[90,0,90],["case",false,false,false],[7,14,6],[0],[true,10,2,"default"], // sub rectangle
"sub","round",16.75,60,17.5,"bottom",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"sub","round",108.25,60,17.5,"bottom",[90,0,0],["case",false,true,false],[24,0,5],[0],[true,10,2,"default"], // sub cylinder
"model","boom_speaker",16.75,56,17.5,"bottom",[-90,0,0],["case",false,true,false],[0,0,0],[false,"left"],[true,10,2,"default"], // boom speaker
"model","boom_speaker",108.25,56,17.5,"bottom",[-90,0,0],["case",false,true,false],[0,0,0],[false,"right"],[true,10,2,"default"], // boom speaker
"model","hk_boom",32,0,12,"bottom",[0,0,90],["case",false,false,false],[0,0,0],[false,"front"],[true,10,2,"default"], // hk boom bonnet
"model","boom_vring",4.5,44.5,16,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"], // hk boom bonnet volume ring
"platter","boom_vring",-50,0,0,"bottom",[0,0,0],["case",false,false,false],[0,0,0],[0],[true,10,2,"default"]], // hk boom bonnet volume ring
["c2_round",
"suball","round",49.5,-15,10.5,"top",[90,0,0],["case",false,false,false],[11,0,15],[0],[true,10,2,"default"], // sub power plug hole
"suball","rectangle",20.5,-26,4.5,"top",[0,0,0],["case",false,false,false],[21,8,13.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["c2_hex",
"suball","round",49.5,-15,10.5,"top",[90,0,0],["case",false,false,false],[11,0,15],[0],[true,10,2,"default"], // sub power plug hole
"suball","rectangle",20.5,-26,4.5,"top",[0,0,0],["case",false,false,false],[21,8,13.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
// Odroid-C4 // Odroid-C4
["c4_shell_boombox", ["c4_shell_boombox",
@@ -505,20 +286,7 @@ accessory_data = [
"sub","fan",20,8,24.5,"top",[0,0,0],["sbc-case_z",true,true,true],[40,0,6],[3],[true,10,2,"default"], // sub fan opening "sub","fan",20,8,24.5,"top",[0,0,0],["sbc-case_z",true,true,true],[40,0,6],[3],[true,10,2,"default"], // sub fan opening
"sub","rectangle",8.5,49,9.9,"top",[0,0,0],["sbc",true,true,true],[56,18,20],[[1,1,1,1]],[true,10,2,"default"]], // gpio opening "sub","rectangle",8.5,49,9.9,"top",[0,0,0],["sbc",true,true,true],[56,18,20],[[1,1,1,1]],[true,10,2,"default"]], // gpio opening
// Odroid-N2+
// internal fan
["n2+_tray_vu7_fan",
"sub","vent",25,25,44,"top",[0,0,0],["case",false,false,false],[10,2,4],[6,6,"horizontal",1],[true,10,2,"default"], // sub vent
"sub","vent",25,50,44,"top",[0,0,0],["case",false,false,false],[10,2,4],[6,6,"horizontal",1],[true,10,2,"default"]], // sub vent
// Odroid-M1S // Odroid-M1S
["m1s_shell",
"sub","vent_hex",10,29,-1,"bottom",[0,0,0],["sbc",true,true,false],[21,5,8],[5,1.5,"horizontal",1],[true,10,2,"default"], // vent opening
"sub","rectangle",73.5,5.5,2.5,"top",[0,0,45],["sbc-case_z",true,true,true],[11,3,15],[[1,1,1,1]],[true,10,2,"default"], // standoff trim
"sub","rectangle",5.5,56,2.5,"top",[0,0,0],["sbc-case_z",true,true,true],[3,11,15],[[1,1,1,1]],[true,10,2,"default"], // standoff trim
"sub","rectangle",81.5,56,2.5,"top",[0,0,0],["sbc-case_z",true,true,true],[3,11,15],[[1,1,1,1]],[true,10,2,"default"], // standoff trim
"sub","rectangle",17.5,12,2.5,"top",[0,0,0],["sbc-case_z",true,true,true],[11,3,15],[[1,1,1,1]],[true,10,2,"default"]], // standoff trim
["m1s_shell_nvme", ["m1s_shell_nvme",
"add1","access_port",-7.5,28,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[105,30,1.5],["landscape"],[true,10,2,"default"], // access port "add1","access_port",-7.5,28,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[105,30,1.5],["landscape"],[true,10,2,"default"], // access port
"model","access_cover",-7.5,28,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[105,30,1.5],["landscape"],[true,10,2,"default"], // access port cover "model","access_cover",-7.5,28,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[105,30,1.5],["landscape"],[true,10,2,"default"], // access port cover
@@ -551,9 +319,6 @@ accessory_data = [
"sub","rectangle",81.5,56,2.5,"top",[0,0,0],["sbc",true,true,true],[3,11,15],[[1,1,1,1]],[true,10,2,"default"], // standoff trim "sub","rectangle",81.5,56,2.5,"top",[0,0,0],["sbc",true,true,true],[3,11,15],[[1,1,1,1]],[true,10,2,"default"], // standoff trim
"sub","rectangle",17.5,12,2.5,"top",[0,0,0],["sbc",true,true,true],[11,3,15],[[1,1,1,1]],[true,10,2,"default"]], // standoff trim "sub","rectangle",17.5,12,2.5,"top",[0,0,0],["sbc",true,true,true],[11,3,15],[[1,1,1,1]],[true,10,2,"default"]], // standoff trim
["m1s_panel",
"sub","vent_hex",10,29,-1,"bottom",[0,0,0],["sbc",true,true,false],[21,5,8],[5,1.5,"horizontal",1],[true,10,2,"default"]], // vent opening
["m1s_tray_nvme", ["m1s_tray_nvme",
"add1","access_port",-12,26.25,-0.01,"bottom",[0,0,180],["sbc",true,true,false],[102,30,2],["landscape"],[true,10,2,"default"], // access port "add1","access_port",-12,26.25,-0.01,"bottom",[0,0,180],["sbc",true,true,false],[102,30,2],["landscape"],[true,10,2,"default"], // access port
"model","access_cover",-12,26.25,-0.01,"bottom",[0,0,180],["sbc",true,true,false],[102,30,2],["landscape"],[true,10,2,"default"], // access port cover "model","access_cover",-12,26.25,-0.01,"bottom",[0,0,180],["sbc",true,true,false],[102,30,2],["landscape"],[true,10,2,"default"], // access port cover
@@ -672,191 +437,6 @@ accessory_data = [
"model","fan_cover",5.6,-4,50,"bottom",[90,0,0],["case",true,false,false],[40,0,3],[3],[true,10,2,"default"], // model fan "model","fan_cover",5.6,-4,50,"bottom",[90,0,0],["case",true,false,false],[40,0,3],[3],[true,10,2,"default"], // model fan
"platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],[3],[true,10,2,"default"]], // model fan "platter","fan_cover",-50,50,0,"bottom",[0,0,0],["case",false,false,false],[40,0,3],[3],[true,10,2,"default"]], // model fan
// Odroid-H2
["h2_shell",
"sub","vent",-3.5,30,18,"top",[0,0,90],["case",false,false,true],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,18,"top",[0,0,90],["case",true,false,true],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-3.5,30,4,"bottom",[0,0,90],["case",false,false,true],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,4,"bottom",[0,0,90],["case",true,false,true],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,79.5,2],["landscape"],[true,10,2,"default"], // access port
"add2","batt_holder",98,40,55.25,"top",[180,0,-18],["sbc-case_z",true,true,true],[10,10,0],[0],[true,10,2,"default"], // add battery holder
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"]], // access port cover
["h2_shell_router",
"sub","vent",-3.5,30,40,"top",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,40,"top",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-3.5,30,4,"bottom",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,4,"bottom",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port
"add2","batt_holder",98,40,65.25,"top",[180,0,-18],["sbc",true,true,true],[10,10,0],[0],[true,10,2,"default"], // add battery holder
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"model","h2_netcard",0,0,19,"bottom",[0,0,0],["sbc",true,true,true],[0,0,0],["portrait"],[true,10,2,"default"], // h2 network card
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"]], // access port cover
["h2_shell_router-ssd",
"sub","vent",111.5,30,40,"top",[0,0,90],["case",true,false,false],[2,15,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-3.5,30,4,"bottom",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-3.5,30,40,"top",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,4,"bottom",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","round",111,44,6.07,"bottom",[0,90,0],["case",true,false,false],[3,0,3],[0],[true,10,2,"default"], // sub hd side screw hole
"sub","round",111,120.6,6.07,"bottom",[0,90,0],["case",true,false,false],[3,0,3],[0],[true,10,2,"default"], // sub hd side screw hole
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port
"add2","batt_holder",98,40,75.25,"top",[180,0,-18],["sbc",true,true,true],[10,10,0],[0],[true,10,2,"default"], // add battery holder
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,42],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,42],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,42],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,42],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"model","h2_netcard",0,0,19,"bottom",[0,0,0],["sbc",true,true,true],[0,0,0],["portrait"],[true,10,2,"default"], // h2 network card
"add2","hd_vertleft",102,10,1.99,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,3,"portrait"],[true,10,2,"default"], // add hd holder
"sub","hd_vertleft_holes",102,10,-.01,"bottom",[0,0,0],["case",true,true,false],[0,0,0],[2.5,3,"portrait"],[true,10,2,"default"], // sub hd bottom holes
"model","hd25",102,110,2,"bottom",[90,0,-90],["case",true,true,false],[0,0,0],[7],[true,10,2,"default"], // model 2.5 hd
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,42],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,42],["recess"],[true,10,2,"default"], // button top
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"]], // access port cover
["h2_lowboy",
"sub","rectangle",94.5,-4,32,"top",[0,0,0],["sbc-case_z",true,true,true],[14,24.5,25],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","rectangle",68,-4,32,"top",[0,0,0],["sbc-case_z",true,true,true],[19.5,21.5,25],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","rectangle",44.5,-4,32,"top",[0,0,0],["sbc-case_z",true,true,true],[20.5,31,25],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","rectangle",19.5,-4,32,"top",[0,0,0],["sbc-case_z",true,true,true],[20.5,31,25],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","vent",-3.5,30,18,"top",[0,0,90],["case",false,false,false],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,18,"top",[0,0,90],["case",true,false,false],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-3.5,30,4,"bottom",[0,0,90],["case",false,false,false],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,4,"bottom",[0,0,90],["case",true,false,false],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add2","batt_holder",98,40,55.25,"top",[180,0,-18],["case",false,false,true],[10,10,0],[0],[true,10,2,"default"], // add uart
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,11],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,11],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,11],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,11],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,11],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,11],["recess"],[true,10,2,"default"], // button top
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],[0,0,"landscape",0]], // access port cover
["h2_lowboy_router",
"sub","rectangle",94.5,-4,32,"top",[0,0,0],["sbc-case_z",true,true,true],[14,24.5,22],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","rectangle",68,-4,32,"top",[0,0,0],["sbc-case_z",true,true,true],[19.5,21.5,22],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","rectangle",44.5,-4,32,"top",[0,0,0],["sbc-case_z",true,true,true],[20.5,31,22],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","rectangle",19.5,-4,32,"top",[0,0,0],["sbc-case_z",true,true,true],[20.5,31,22],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","rectangle",10.5,28.5,50,"top",[0,0,0],["sbc-case_z",true,true,true],[75,71,5],[[.25,.25,.25,.25]],[true,10,2,"default"], // sub rectangle
"sub","vent",-3.5,30,30,"top",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,30,"top",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-3.5,30,4,"bottom",[0,0,90],["case",false,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,4,"bottom",[0,0,90],["case",true,false,false],[2,10,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add2","batt_holder",98,40,44,"top",[180,0,-18],["case",false,false,false],[10,10,0],[0],[true,10,2,"default"], // add uart
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,11],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,11],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,11],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,11],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"model","h2_netcard",0,0,19,"bottom",[0,0,0],["sbc",true,true,true],[0,0,0],["portrait"],[true,10,2,"default"], // h2 network card
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,11],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,11],["recess"],[true,10,2,"default"], // button top
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"]], // access port cover
["h2_tray",
"sub","vent",-6.5,30,30,"top",[0,0,90],["case",false,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,30,"top",[0,0,90],["case",true,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"suball","vent",-6.5,30,6,"top",[0,0,90],["case",false,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"suball","vent",111.5,30,6,"top",[0,0,90],["case",true,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"]], // button top
["h2_tray_sides",
"sub","vent",-6.5,30,30,"left",[0,0,90],["case",false,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,30,"right",[0,0,90],["case",true,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-6.5,30,6,"left",[0,0,90],["case",false,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",111.5,30,6,"right",[0,0,90],["case",true,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port
"add2","button",12.34,106.43,57.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,34],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,57.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,34],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,57.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,34],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,57.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,34],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,34],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,34],["recess"],[true,10,2,"default"]], // button top
["h2_tray_router",
"suball","vent",-6.5,30,45,"top",[0,0,90],["case",false,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"suball","vent",111.5,30,45,"top",[0,0,90],["case",true,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"suball","vent",-6.5,30,6,"top",[0,0,90],["case",false,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"suball","vent",111.5,30,6,"top",[0,0,90],["case",true,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"model","h2_netcard",0,0,19,"bottom",[0,0,0],["sbc",true,true,true],[0,0,0],["portrait"],[true,10,2,"default"], // h2 network card
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,44],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,44],["recess"],[true,10,2,"default"]], // button top
["h2_router_station",
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port
"suball","vent",-6.5,30,45,"left",[0,0,90],["case",false,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"suball","vent",112,30,45,"right",[0,0,90],["case",true,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"suball","vent",-6.5,30,6,"left",[0,0,90],["case",false,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"suball","vent",112,30,6,"right",[0,0,90],["case",true,false,false],[2,10,7],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"model","h2_netcard",0,0,19,"bottom",[0,0,0],["sbc",true,true,true],[0,0,0],["portrait"],[true,10,2,"default"], // h2 network card
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"]], // access port cover
["h2_round",
"sub","vent",-25,30,38,"top",[0,0,90],["case",false,false,false],[2,6,15],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",122,30,38,"top",[0,0,90],["case",false,false,false],[2,6,15],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-25,30,18,"top",[0,0,90],["case",false,false,false],[2,6,15],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",122,30,18,"top",[0,0,90],["case",false,false,false],[2,6,15],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,79.5,2],["landscape"],[true,10,2,"default"], // access port
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"]], // access port cover
["h2_hex",
"sub","vent",-25,30,38,"top",[0,0,90],["case",false,false,false],[2,6,15],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",122,30,38,"top",[0,0,90],["case",false,false,false],[2,6,15],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",-25,30,18,"top",[0,0,90],["case",false,false,false],[2,6,15],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"sub","vent",122,30,18,"top",[0,0,90],["case",false,false,false],[2,6,15],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
"add1","access_port",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,79.5,2],["landscape"],[true,10,2,"default"], // access port
"add2","button",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"add2","button",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button
"model","button_top",12.34,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","button_top",23.77,106.43,55.25,"top",[0,0,0],["sbc-case_z",true,true,true],[10,0,32],["recess"],[true,10,2,"default"], // button top
"model","access_cover",10,30,-0.01,"bottom",[0,0,0],["sbc",true,true,false],[100,80,2],["landscape"],[true,10,2,"default"], // access port cover
"platter","button_top",-20,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","button_top",-30,0,0,"top",[0,0,0],["case",false,false,false],[10,0,32],["recess"],[true,10,2,"default"], // button top
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[100,80,2],["landscape"],[true,10,2,"default"]], // access port cover
// Odroid-H3 // Odroid-H3
["h3_shell", ["h3_shell",
"sub","vent",-3.5,30,18,"top",[0,0,90],["case",false,false,true],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening "sub","vent",-3.5,30,18,"top",[0,0,90],["case",false,false,true],[2,6,4],[1,17,"vertical",1],[true,10,2,"default"], // vent opening
@@ -1104,115 +684,6 @@ accessory_data = [
["jetsonnano_fitted", ["jetsonnano_fitted",
"sub","vent",17.5,36.375,37,"top",[0,0,0],["sbc-case_z",true,true,true],[2,43,4],[1,16,"horizontal",1],[true,10,2,"default"]], "sub","vent",17.5,36.375,37,"top",[0,0,0],["sbc-case_z",true,true,true],[2,43,4],[1,16,"horizontal",1],[true,10,2,"default"]],
// Pine64
["rock64_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rock64_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rockpro64_shell",
"sub","rectangle",43,0,25,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,6],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["rockpro64_panel",
"sub","rectangle",43,0,24.5,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,6],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["rockpro64_stacked",
"sub","rectangle",43,0,24.5,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,6],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["rockpro64_tray",
"sub","rectangle",43,0,24.5,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,8],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["rockpro64_tray_sides",
"sub","rectangle",43,0,24.5,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,8],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["rockpro64_round",
"sub","rectangle",43,0,25,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,6],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["rockpro64_hex",
"sub","rectangle",43,0,25,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,6],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["rockpro64_snap",
"sub","rectangle",43,0,28,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,6],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["rockpro64_fitted",
"sub","rectangle",43,0,28,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,6],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
["star64_shell",
"sub","fan",43,28,36,"top",[0,0,0],["sbc-case_z",true,true,true],[40,0,6],[2],[true,10,2,"default"], // sub fan opening
"sub","rectangle",43,0,36,"top",[0,0,0],["sbc-case_z",true,true,true],[40,10,6],[[1,1,1,1]],[true,10,2,"default"]], // sub pcie opening
// Raspberry Pi
["rpi1b+_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi1b+_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi3b_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi3b_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi3b+_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi3b+_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi4b_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi4b_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi4b_shell_geeekpi_poe_hat",
"sub","fan",12,10,24.5,"top",[0,0,0],["sbc-case_z",true,true,true],[30,0,6],[3],[true,10,2,"default"]], // sub fan opening
["rpi5_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rpi5_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rock4b+_round",
"suball","rectangle",4.5,-26,14.5,"top",[0,0,0],["sbc",true,true,true],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rock4b+_hex",
"suball","rectangle",4.5,-20,14.5,"top",[0,0,0],["sbc",true,true,true],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rock4c_round",
"suball","rectangle",4.5,-26,14.5,"top",[0,0,0],["sbc",true,true,true],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rock4c_hex",
"suball","rectangle",4.5,-20,14.5,"top",[0,0,0],["sbc",true,true,true],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rock4c+_round",
"suball","rectangle",4.5,-26,14.5,"top",[0,0,0],["sbc",true,true,true],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rock4c+_hex",
"suball","rectangle",4.5,-20,14.5,"top",[0,0,0],["sbc",true,true,true],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["rock5b", ["rock5b",
"sub","rectangle",-1,66.5,12.99,"top",[0,0,0],["sbc",true,true,true],[10,2,8],[[.25,.25,.25,.25]],[true,10,2,"default"], // UL standoff adjustment "sub","rectangle",-1,66.5,12.99,"top",[0,0,0],["sbc",true,true,true],[10,2,8],[[.25,.25,.25,.25]],[true,10,2,"default"], // UL standoff adjustment
"sub","rectangle",92,17.5,12.99,"top",[0,0,0],["sbc",true,true,true],[10,2,15],[[.25,.25,.25,.25]],[true,10,2,"default"], // LR standoff adjustment "sub","rectangle",92,17.5,12.99,"top",[0,0,0],["sbc",true,true,true],[10,2,15],[[.25,.25,.25,.25]],[true,10,2,"default"], // LR standoff adjustment
@@ -1323,41 +794,6 @@ accessory_data = [
"platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[80,75,2],["portrait"],[true,10,2,"default"]], // platter access cover "platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],[80,75,2],["portrait"],[true,10,2,"default"]], // platter access cover
// Khadas
// Asus
["tinkerboard_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["tinkerboard_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["tinkerboard-s_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["tinkerboard-s_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["tinkerboard-2_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["tinkerboard-2_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["tinkerboard-r2_round",
"suball","rectangle",4.5,-26,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,10,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["tinkerboard-r2_hex",
"suball","rectangle",4.5,-20,5.5,"top",[0,0,0],["case",false,false,false],[11,20,8],[[1,1,1,1]],[true,10,2,"default"], // sub hdmi opening
"suball","rectangle",21.5,-26,4,"top",[0,0,0],["case",false,false,false],[21,20,15.5],[[1,1,1,1]],[true,10,2,"default"]], // sub hdmi opening
["visonfive2_shell", ["visonfive2_shell",
"sub","rectangle",89,9.25,11,"top",[0,0,0],["case",true,true,false],[10,10,15],[[1,1,1,1]],[true,10,2,"default"], // sub fitting "sub","rectangle",89,9.25,11,"top",[0,0,0],["case",true,true,false],[10,10,15],[[1,1,1,1]],[true,10,2,"default"], // sub fitting
"add1","round",11.25,-.5,10,"top",[0,0,0],["case",true,true,true],[2,0,17],[0],[true,10,2,"default"], // wall support "add1","round",11.25,-.5,10,"top",[0,0,0],["case",true,true,true],[2,0,17],[0],[true,10,2,"default"], // wall support