added odroid-m1s, added hex vent cooling option and made other changes.
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
## Introduction
|
## Introduction
|
||||||
|
|
||||||
This project is about autonomous SBC case creation. It utilizes the SBC Model Framework project to automatically generate cases based on the data for any of the 61 current SBC contained within the framework. This allows legacy, current and future SBC to have multiple cases available on day one of their inclusion in the framework. There are multiple base case designs(shell, panel, stacked, tray, tray-sides, round, hex, snap, fitted) available and each allows for different styles within the design.
|
This project is about autonomous SBC case creation. It utilizes the SBC Model Framework project to automatically generate cases based on the data for any of the 62 current SBC contained within the framework. This allows legacy, current and future SBC to have multiple cases available on day one of their inclusion in the framework. There are multiple base case designs(shell, panel, stacked, tray, tray-sides, round, hex, snap, fitted) available and each allows for different styles within the design.
|
||||||
|
|
||||||
All case openings are created automatically based on SBC data and the dimensions of any case design can be expanded in any axis allowing for the creation of larger cases. If you reposition the SBC in a case, you will see i/o openings created or removed appropriately based on it’s proximity to the case geometry. These cases might be useful for prototypes or other in house uses to quickly and easily create standard, specialized and custom SBC cases thru different case designs, styles and accessories.
|
All case openings are created automatically based on SBC data and the dimensions of any case design can be expanded in any axis allowing for the creation of larger cases. If you reposition the SBC in a case, you will see i/o openings created or removed appropriately based on it’s proximity to the case geometry. These cases might be useful for prototypes or other in house uses to quickly and easily create standard, specialized and custom SBC cases thru different case designs, styles and accessories.
|
||||||
|
|
||||||
@@ -103,9 +103,9 @@ Template creation and i/o panel layouts in a dxf format can be easily created an
|
|||||||
### Case Designs and Styles
|
### Case Designs and Styles
|
||||||
The case naming convention for standard cases in the configuration file follow the basic form of “sbc”_”design”_”style” e.g. c4_shell or c4_tray_vu5.
|
The case naming convention for standard cases in the configuration file follow the basic form of “sbc”_”design”_”style” e.g. c4_shell or c4_tray_vu5.
|
||||||
|
|
||||||
#### Current Case Count 446
|
#### Current Case Count 454
|
||||||
|
|
||||||
##### Hardkernel - 182
|
##### Hardkernel - 191
|
||||||
|
|
||||||
**Odorid-C1+ cases** - 16 : c1+_shell, c1+_panel, c1+_panel_lcd3.5, c1+_desktop_lcd3.5, c1+_stacked, c1+_tray, c1+_tray_sides, c1+_tray_vu5,
|
**Odorid-C1+ cases** - 16 : c1+_shell, c1+_panel, c1+_panel_lcd3.5, c1+_desktop_lcd3.5, c1+_stacked, c1+_tray, c1+_tray_sides, c1+_tray_vu5,
|
||||||
c1+_tray_vu7, c1+_shell_boombox, c1+_panel_boombox, c1+_tray_boombox, c1+_round, c1+_hex, c1+_snap, c1+_fitted
|
c1+_tray_vu7, c1+_shell_boombox, c1+_panel_boombox, c1+_tray_boombox, c1+_round, c1+_hex, c1+_snap, c1+_fitted
|
||||||
@@ -129,6 +129,8 @@ c4_tray_vu7, c4_shell_boombox, c4_panel_boombox, c4_deskboom_lcd3.5, c4_tray_boo
|
|||||||
|
|
||||||
**Odorid-N2LQ cases** - 9 :n2lq_shell, n2lq_panel, n2lq_stacked, n2lq_tray, n2lq_tray_sides, n2lq_tray_vu5, n2lq_tray_vu7, n2lq_snap, n2lq_fitted
|
**Odorid-N2LQ cases** - 9 :n2lq_shell, n2lq_panel, n2lq_stacked, n2lq_tray, n2lq_tray_sides, n2lq_tray_vu5, n2lq_tray_vu7, n2lq_snap, n2lq_fitted
|
||||||
|
|
||||||
|
**Odorid-M1S cases** - 9 : m1s_shell, m1s_panel, m1s_stacked, m1s_tray, m1s_tray_vu5, m1s_tray_vu7, m1s_tray_sides, m1s_snap, m1s_fitted
|
||||||
|
|
||||||
**Odorid-M1 cases** - 12 : m1_panel, m1_tray, m1_tray_drive, m1_tray_sides, m1_tray_vu5, m1_tray_vu7, m1_snap, m1_fitted, m1_fitted_drivebox2.5, m1_fitted_drivebox3.5, m1_fitted_pizzabox, m1_fitted_drivebox3.5v
|
**Odorid-M1 cases** - 12 : m1_panel, m1_tray, m1_tray_drive, m1_tray_sides, m1_tray_vu5, m1_tray_vu7, m1_snap, m1_fitted, m1_fitted_drivebox2.5, m1_fitted_drivebox3.5, m1_fitted_pizzabox, m1_fitted_drivebox3.5v
|
||||||
|
|
||||||
**Odorid-XU4 cases** - 11 : xu4_shell, xu4_panel, xu4_stacked, xu4_tray, xu4_tray_sides, xu4_tray_vu5, xu4_tray_vu7, xu4_round, xu4_hex, xu4_snap, xu4_fitted
|
**Odorid-XU4 cases** - 11 : xu4_shell, xu4_panel, xu4_stacked, xu4_tray, xu4_tray_sides, xu4_tray_vu5, xu4_tray_vu7, xu4_round, xu4_hex, xu4_snap, xu4_fitted
|
||||||
|
|||||||
Submodule SBC_Model_Framework updated: d81d920219...cca4d08395
@@ -5073,7 +5073,520 @@
|
|||||||
"vu_rotation": "[15, 0, 0]",
|
"vu_rotation": "[15, 0, 0]",
|
||||||
"wallthick": "2"
|
"wallthick": "2"
|
||||||
},
|
},
|
||||||
"m1_panel": {
|
"m1s_shell": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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, 8, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]",
|
||||||
|
"c_fillet": "3",
|
||||||
|
"case_design": "shell",
|
||||||
|
"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": "hex",
|
||||||
|
"exhaust_vents": "vent",
|
||||||
|
"fillet": "0",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"indents": "true",
|
||||||
|
"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_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"sbc_off": "false",
|
||||||
|
"sbc_top_standoffs": "true",
|
||||||
|
"sidethick": "2",
|
||||||
|
"sidewall_support": "true",
|
||||||
|
"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]",
|
||||||
|
"view": "model",
|
||||||
|
"vu_rotation": "[15, 0, 0]",
|
||||||
|
"wallthick": "2"
|
||||||
|
},
|
||||||
|
"m1s_panel": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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": "0",
|
||||||
|
"case_design": "panel",
|
||||||
|
"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": "hex",
|
||||||
|
"exhaust_vents": "vent",
|
||||||
|
"fillet": "0",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1.5",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"indents": "true",
|
||||||
|
"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_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
"m1s_stacked": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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",
|
||||||
|
"case_design": "stacked",
|
||||||
|
"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": "hex",
|
||||||
|
"exhaust_vents": "none",
|
||||||
|
"fillet": "0",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1.5",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"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_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"sbc_off": "false",
|
||||||
|
"sbc_top_standoffs": "true",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
"m1s_tray": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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",
|
||||||
|
"case_design": "tray",
|
||||||
|
"case_ext_standoffs": "false",
|
||||||
|
"case_ffn": "90",
|
||||||
|
"case_fn": "360",
|
||||||
|
"case_offset_bz": "8.5",
|
||||||
|
"case_offset_tz": "0",
|
||||||
|
"case_offset_x": "0",
|
||||||
|
"case_offset_y": "0",
|
||||||
|
"case_style": "none",
|
||||||
|
"cooling": "hex",
|
||||||
|
"exhaust_vents": "vent",
|
||||||
|
"fillet": "2",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"indents": "true",
|
||||||
|
"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_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"sbc_off": "false",
|
||||||
|
"sbc_top_standoffs": "false",
|
||||||
|
"sidethick": "2",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
"m1s_tray_sides": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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": "0",
|
||||||
|
"case_design": "tray",
|
||||||
|
"case_ext_standoffs": "false",
|
||||||
|
"case_ffn": "90",
|
||||||
|
"case_fn": "360",
|
||||||
|
"case_offset_bz": "8.5",
|
||||||
|
"case_offset_tz": "0",
|
||||||
|
"case_offset_x": "0",
|
||||||
|
"case_offset_y": "0",
|
||||||
|
"case_style": "sides",
|
||||||
|
"cooling": "hex",
|
||||||
|
"exhaust_vents": "vent",
|
||||||
|
"fillet": "2",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"indents": "true",
|
||||||
|
"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_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"sbc_off": "false",
|
||||||
|
"sbc_top_standoffs": "false",
|
||||||
|
"sidethick": "2",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
"m1s_tray_vu5": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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",
|
||||||
|
"case_design": "tray",
|
||||||
|
"case_ext_standoffs": "false",
|
||||||
|
"case_ffn": "90",
|
||||||
|
"case_fn": "360",
|
||||||
|
"case_offset_bz": "8.5",
|
||||||
|
"case_offset_tz": "0",
|
||||||
|
"case_offset_x": "0",
|
||||||
|
"case_offset_y": "0",
|
||||||
|
"case_style": "vu5",
|
||||||
|
"cooling": "hex",
|
||||||
|
"exhaust_vents": "vent",
|
||||||
|
"fillet": "2",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1.5",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"indents": "true",
|
||||||
|
"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_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"sbc_off": "false",
|
||||||
|
"sbc_top_standoffs": "false",
|
||||||
|
"sidethick": "2",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
"m1s_tray_vu7": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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",
|
||||||
|
"case_design": "tray",
|
||||||
|
"case_ext_standoffs": "false",
|
||||||
|
"case_ffn": "90",
|
||||||
|
"case_fn": "360",
|
||||||
|
"case_offset_bz": "8.5",
|
||||||
|
"case_offset_tz": "0",
|
||||||
|
"case_offset_x": "34",
|
||||||
|
"case_offset_y": "0",
|
||||||
|
"case_style": "vu7",
|
||||||
|
"cooling": "hex",
|
||||||
|
"exhaust_vents": "vent",
|
||||||
|
"fillet": "2",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1.5",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"indents": "true",
|
||||||
|
"lip": "5",
|
||||||
|
"lower_bottom": "0",
|
||||||
|
"move_front": "0",
|
||||||
|
"move_leftside": "0",
|
||||||
|
"move_rear": "0",
|
||||||
|
"move_rightside": "0",
|
||||||
|
"pcb_loc_x": "34",
|
||||||
|
"pcb_loc_y": "0",
|
||||||
|
"pcb_loc_z": "0",
|
||||||
|
"raise_top": "0",
|
||||||
|
"sata_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"sbc_off": "false",
|
||||||
|
"sbc_top_standoffs": "false",
|
||||||
|
"sidethick": "2",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
"m1s_snap": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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",
|
||||||
|
"case_design": "snap",
|
||||||
|
"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": "hex",
|
||||||
|
"exhaust_vents": "vent",
|
||||||
|
"fillet": "0",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"indents": "true",
|
||||||
|
"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_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"sbc_off": "false",
|
||||||
|
"sbc_top_standoffs": "false",
|
||||||
|
"sidethick": "1",
|
||||||
|
"sidewall_support": "true",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
"m1s_fitted": {
|
||||||
|
"$fn": "90",
|
||||||
|
"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",
|
||||||
|
"case_design": "fitted",
|
||||||
|
"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": "hex",
|
||||||
|
"exhaust_vents": "vent",
|
||||||
|
"fillet": "0",
|
||||||
|
"floorthick": "2",
|
||||||
|
"gap": "1.5",
|
||||||
|
"gpio_opening": "none",
|
||||||
|
"indents": "true",
|
||||||
|
"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_punchout": "false",
|
||||||
|
"sbc_bottom_standoffs": "true",
|
||||||
|
"sbc_highlight": "false",
|
||||||
|
"sbc_model": "m1s",
|
||||||
|
"sbc_off": "false",
|
||||||
|
"sbc_top_standoffs": "false",
|
||||||
|
"sidethick": "1",
|
||||||
|
"sidewall_support": "true",
|
||||||
|
"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"
|
||||||
|
},
|
||||||
|
"m1_panel": {
|
||||||
"$fn": "90",
|
"$fn": "90",
|
||||||
"accessory_highlight": "false",
|
"accessory_highlight": "false",
|
||||||
"accessory_name": "m1_panel",
|
"accessory_name": "m1_panel",
|
||||||
|
|||||||
@@ -50,6 +50,7 @@
|
|||||||
fixed access_port and access_cover 180 rotation in portrait and landscape,
|
fixed access_port and access_cover 180 rotation in portrait and landscape,
|
||||||
adjusted jack_3.5 and hdmi_a_vertical opening, change radxa rockpi to rock,
|
adjusted jack_3.5 and hdmi_a_vertical opening, change radxa rockpi to rock,
|
||||||
changed visionfive2 tray design bottom screw locations, updated sbc model framework.
|
changed visionfive2 tray design bottom screw locations, updated sbc model framework.
|
||||||
|
20231115 Version 2.0.5 added hex vent and new component openings, updated sbc model framework
|
||||||
|
|
||||||
see https://github.com/hominoids/SBC_Case_Builder
|
see https://github.com/hominoids/SBC_Case_Builder
|
||||||
*/
|
*/
|
||||||
@@ -89,7 +90,7 @@ case_design = "shell"; // [shell,panel,stacked,tray,round,hex,snap,fitted]
|
|||||||
// base case style
|
// base case style
|
||||||
case_style = "none"; // ["none","vu5","vu7","sides"]
|
case_style = "none"; // ["none","vu5","vu7","sides"]
|
||||||
// single board computer model
|
// single board computer model
|
||||||
sbc_model = "c1+"; // ["c1+", "c2", "c4", "xu4", "xu4q", "mc1", "hc1", "n1", "n2", "n2+", "n2+_noheatsink", "n2l", "n2lq", "m1", "m1_noheatsink", "h2", "h3", "hc4", "show2", "rpizero", "rpizero2w", "rpi1a+", "rpi1b+", "rpi3a+", "rpi3b", "rpi3b+", "rpi4b", "rpi5", "rpi5_noheatsink", "a64", "rock64", "rockpro64", "quartz64a", "quartz64b", "h64b", "star64", "atomicpi", "jetsonnano", "rock4b+", "rock4c", "rock4c+", "rock5b-v1.3", "rock5b-v1.42", "rock5bq-v1.42", "vim1", "vim2", "vim3", "vim3l", "vim4", "tinkerboard", "tinkerboard-s", "tinkerboard-2", "tinkerboard-r2", "opizero", "opizero2", "opir1plus_lts", "opir1", "opi5", "licheerv+dock", "visionfive2", "visionfive2q"]
|
sbc_model = "c1+"; // ["c1+", "c2", "c4", "xu4", "xu4q", "mc1", "hc1", "n1", "n2", "n2+", "n2+_noheatsink", "n2l", "n2lq", "m1", "m1_noheatsink", "m1s", "h2", "h3", "hc4", "show2", "rpizero", "rpizero2w", "rpi1a+", "rpi1b+", "rpi3a+", "rpi3b", "rpi3b+", "rpi4b", "rpi5", "rpi5_noheatsink", "a64", "rock64", "rockpro64", "quartz64a", "quartz64b", "h64b", "star64", "atomicpi", "jetsonnano", "rock4b+", "rock4c", "rock4c+", "rock5b-v1.3", "rock5b-v1.42", "rock5bq-v1.42", "vim1", "vim2", "vim3", "vim3l", "vim4", "tinkerboard", "tinkerboard-s", "tinkerboard-2", "tinkerboard-r2", "opizero", "opizero2", "opir1plus_lts", "opir1", "opi5", "licheerv+dock", "visionfive2", "visionfive2q"]
|
||||||
// sbc location x axis
|
// sbc location x axis
|
||||||
pcb_loc_x = 0; //[0:.5:300]
|
pcb_loc_x = 0; //[0:.5:300]
|
||||||
// sbc location y axis
|
// sbc location y axis
|
||||||
@@ -165,7 +166,7 @@ sata_punchout = false;
|
|||||||
// gpio openings
|
// gpio openings
|
||||||
gpio_opening = "none"; // [none,vent,open,punchout]
|
gpio_opening = "none"; // [none,vent,open,punchout]
|
||||||
// cooling openings
|
// cooling openings
|
||||||
cooling = "fan"; // [none,vents,fan,custom]
|
cooling = "fan"; // [none,vents,fan,hex,custom]
|
||||||
// exhaust vents
|
// exhaust vents
|
||||||
exhaust_vents = "vent"; // [none,vent]
|
exhaust_vents = "vent"; // [none,vent]
|
||||||
// case accessory group to load
|
// case accessory group to load
|
||||||
@@ -2261,10 +2262,14 @@ module open_io() {
|
|||||||
}
|
}
|
||||||
// top cooling openings
|
// top cooling openings
|
||||||
if(side == "top" && cooling == "fan" && class == "heatsink" && type != "h3_oem"
|
if(side == "top" && cooling == "fan" && class == "heatsink" && type != "h3_oem"
|
||||||
&& type != "h2_oem" && type != "n2_oem" && type != "n2+_oem") {
|
&& type != "h2_oem" && type != "n2_oem" && type != "n2+_oem"&& type != "m1s_oem") {
|
||||||
translate([loc_x+6,loc_y-28,case_z-(floorthick+adjust)-5])
|
translate([loc_x+6,loc_y-28,case_z-(floorthick+adjust)-5])
|
||||||
fan_mask(40,floorthick+(2*adjust)+8,2);
|
fan_mask(40,floorthick+(2*adjust)+8,2);
|
||||||
}
|
}
|
||||||
|
if(side == "top" && cooling == "fan" && class == "heatsink" && type == "m1s_oem") {
|
||||||
|
translate([loc_x,loc_y,case_z-(floorthick+adjust)-5])
|
||||||
|
fan_mask(40,floorthick+(2*adjust)+8,2);
|
||||||
|
}
|
||||||
if(side == "top" && cooling == "fan" && class == "heatsink" && (type == "n2_oem" || type == "n2+_oem")) {
|
if(side == "top" && cooling == "fan" && class == "heatsink" && (type == "n2_oem" || type == "n2+_oem")) {
|
||||||
translate([loc_x+4,loc_y+5.5,-adjust])
|
translate([loc_x+4,loc_y+5.5,-adjust])
|
||||||
fan_mask(80,floorthick+(2*adjust),2);
|
fan_mask(80,floorthick+(2*adjust),2);
|
||||||
@@ -2283,20 +2288,34 @@ module open_io() {
|
|||||||
translate([loc_x-5,loc_y-16,case_z-(floorthick+adjust)])
|
translate([loc_x-5,loc_y-16,case_z-(floorthick+adjust)])
|
||||||
fan_mask(90,floorthick+6,2);
|
fan_mask(90,floorthick+6,2);
|
||||||
}
|
}
|
||||||
if(side == "top" && cooling == "vents" && class == "heatsink") {
|
if(side == "top" && cooling == "vents" && class == "heatsink" && type != "m1s_oem") {
|
||||||
for(r=[loc_x+7:4:48+loc_x]) {
|
for(r=[loc_x+7:4:58+loc_x]) {
|
||||||
translate([r,loc_y-20,case_z-(floorthick+adjust)-6])
|
translate([r,loc_y-20,case_z-(floorthick+adjust)-6])
|
||||||
cube([2,25,floorthick+(adjust*2)+8]);
|
cube([2,30,floorthick+(adjust*2)+12]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(side == "top" && cooling == "vents" && class == "heatsink" && type == "m1s_oem") {
|
||||||
|
for(r=[loc_x+7:4:58+loc_x]) {
|
||||||
|
translate([r-8,loc_y+8,case_z-(floorthick+adjust)-6])
|
||||||
|
cube([2,30,floorthick+(adjust*2)+12]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(side == "top" && cooling == "hex" && class == "heatsink" && type != "m1s_oem") {
|
||||||
|
translate([loc_x,loc_y-32,case_z-(floorthick+adjust)-6])
|
||||||
|
vent_hex(11, 5, floorthick+(adjust*2)+12, 8, 1.5, "horizontal");
|
||||||
|
}
|
||||||
|
if(side == "top" && cooling == "hex" && class == "heatsink" && type == "m1s_oem") {
|
||||||
|
translate([loc_x-8,loc_y,case_z-(floorthick+adjust)-6])
|
||||||
|
vent_hex(11, 5, floorthick+(adjust*2)+12, 8, 1.5, "horizontal");
|
||||||
|
}
|
||||||
if(side == "top" && cooling == "custom" && class == "heatsink") {
|
if(side == "top" && cooling == "custom" && class == "heatsink") {
|
||||||
translate([loc_x+6,loc_y-14,case_z-(floorthick+adjust)])
|
translate([loc_x+6,loc_y-14,case_z-(floorthick+adjust)])
|
||||||
linear_extrude(height = wallthick+(2*adjust)) import(file = "./dxf/customfan.dxf");
|
linear_extrude(height = wallthick+(2*adjust)+12) import(file = "./dxf/customfan.dxf");
|
||||||
}
|
}
|
||||||
if(side == "top" && exhaust_vents == "vent" && (cooling == "fan" || cooling == "vents"
|
if(side == "top" && exhaust_vents == "vent" && (cooling == "fan" || cooling == "vents" || cooling == "hex"
|
||||||
|| cooling == "custom") && class == "heatsink" && gpio_opening != "vent" && gpio_opening != "open"
|
|| cooling == "custom") && class == "heatsink" && gpio_opening != "vent" && gpio_opening != "open"
|
||||||
&& gpio_opening != "punchout") {
|
&& gpio_opening != "punchout") {
|
||||||
for(r=[loc_x+7:4:46+loc_x]) {
|
for(r=[loc_x+7:4:50+loc_x]) {
|
||||||
translate([r,depth-(2*wallthick)-adjust-2,bottom_height+2])
|
translate([r,depth-(2*wallthick)-adjust-2,bottom_height+2])
|
||||||
cube([2,wallthick+(2*adjust)+1,top_height-floorthick-6]);
|
cube([2,wallthick+(2*adjust)+1,top_height-floorthick-6]);
|
||||||
}
|
}
|
||||||
@@ -2382,6 +2401,19 @@ module open_io() {
|
|||||||
punchout(15,8,1,wallthick+(2*adjust)+12,2,"rectangle");
|
punchout(15,8,1,wallthick+(2*adjust)+12,2,"rectangle");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(side == "bottom" && type == "uart_micro_h" && rotation == 90) {
|
||||||
|
translate([loc_x-wallthick-gap+8.5,loc_y-1,bottom_height-6]) rotate([90,0,90])
|
||||||
|
punchout(15,5,1,wallthick+(2*adjust)+10,2,"rectangle");
|
||||||
|
}
|
||||||
|
if(side == "bottom" && type == "uart_micro_h" && rotation == -90) {
|
||||||
|
translate([loc_x+2*(wallthick+gap)+1,loc_y-1,bottom_height+5]) rotate([90,0,90])
|
||||||
|
punchout(15,5,1,wallthick+(2*adjust)+5,2,"rectangle");
|
||||||
|
}
|
||||||
|
if(side == "bottom" && type == "uart_micro_h" && rotation == 270) {
|
||||||
|
translate([loc_x-2*(wallthick),loc_y-1,bottom_height+5]) rotate([90,0,90])
|
||||||
|
punchout(15,5,1,wallthick+(2*adjust)+12,2,"rectangle");
|
||||||
|
}
|
||||||
|
|
||||||
// sata openings
|
// sata openings
|
||||||
if(side == "top" && type == "sata_power_vrec" && sata_punchout == true) {
|
if(side == "top" && type == "sata_power_vrec" && sata_punchout == true) {
|
||||||
translate([loc_x-3,loc_y+1.75,case_z-adjust-floorthick])
|
translate([loc_x-3,loc_y+1.75,case_z-adjust-floorthick])
|
||||||
|
|||||||
@@ -54,6 +54,7 @@
|
|||||||
vent_panel_hex(x, y, thick, cell_size, cell_spacing, border, borders),
|
vent_panel_hex(x, y, thick, cell_size, cell_spacing, border, borders),
|
||||||
added nut_holder(nut, style, dia_x, dia_y, height), fixed access_port and access_cover 180 rotation
|
added nut_holder(nut, style, dia_x, dia_y, height), fixed access_port and access_cover 180 rotation
|
||||||
in portrait and landscape, added h3_port_extender_holder(part,offset), cableholder_spacer()
|
in portrait and landscape, added h3_port_extender_holder(part,offset), cableholder_spacer()
|
||||||
|
20231115 Version 2.0.5 added hex vent and new component openings
|
||||||
|
|
||||||
see https://github.com/hominoids/SBC_Case_Builder
|
see https://github.com/hominoids/SBC_Case_Builder
|
||||||
|
|
||||||
@@ -3183,6 +3184,10 @@ module mask(loc_x,loc_y,loc_z,rotation,side,class,type,wallthick,gap,floorthick,
|
|||||||
place(loc_x+10.5,loc_y,loc_z,18,17.5,rotation,side)
|
place(loc_x+10.5,loc_y,loc_z,18,17.5,rotation,side)
|
||||||
cube([19,12,27]);
|
cube([19,12,27]);
|
||||||
}
|
}
|
||||||
|
if(type == "rj45_low_profile" && rotation == 0) {
|
||||||
|
place(loc_x,loc_y-6,loc_z-3.5,15,8,rotation,side)
|
||||||
|
cube([14.75,8,12.25]);
|
||||||
|
}
|
||||||
// micro usb opening
|
// micro usb opening
|
||||||
if(class == "usb2" && type == "micro" && rotation == 0 && side == "top") {
|
if(class == "usb2" && type == "micro" && rotation == 0 && side == "top") {
|
||||||
place(loc_x,loc_y-3,loc_z,8,3,rotation,side) microusb_open();
|
place(loc_x,loc_y-3,loc_z,8,3,rotation,side) microusb_open();
|
||||||
|
|||||||
Reference in New Issue
Block a user