From 00648a52e9af94baa5dd40163935156cdb450e20 Mon Sep 17 00:00:00 2001 From: Edward Kisiel Date: Sat, 4 Mar 2023 17:16:01 -0500 Subject: [PATCH] updated sbc model framework, renamed radax rockpi to rock, rock 5b io adjustments, visionfive2 io overhang adjusted, readme.md and file comments updated. --- README.md | 16 +- SBC_Model_Framework | 2 +- sbc_case_builder.json | 301 ++++++++++++++++++------------- sbc_case_builder.scad | 8 +- sbc_case_builder_accessories.cfg | 64 ++++--- sbc_case_builder_library.scad | 17 +- 6 files changed, 235 insertions(+), 173 deletions(-) diff --git a/README.md b/README.md index 5486fa6..485350d 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ ## 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 57 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 58 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. @@ -76,7 +76,7 @@ An array holds a string and 3 Boolean that represent which association and axis ### Accuracy In the past there was been no way of validating whether a SBC Model Framework model and it’s components were dimensionaly accurate in their size and placement other then trial and error. Along with producing cases this project provides a much needed model validation tool to assure model accuracy thru the use of test cases. It works on the very simple premise that if the real SBC fits the test case then the virtual model is accurate or otherwise shows were corrections are needed. This will further increased the overall accuracy of models. -There are currently 56 SBC represented by 52 models, from 10 manufactures in SBC Model Framework. Some SBC in SBC Model Framework have not been validated or may be missing component data and may produce one or more aspects of a case incorrectly. SBC status is noted in sbc.png, the README.md file and at the beginning of the SBC entry defined in sbc_models.cfg, all a part of SBC Model Framework. The color coded indicator of an SBC’s verification and completion as indicated in sbc.png is as follows: +There are currently 58 SBC represented by 54 models, from 10 manufactures in SBC Model Framework. Some SBC in SBC Model Framework have not been validated or may be missing component data and may produce one or more aspects of a case incorrectly. SBC status is noted in sbc.png, the README.md file and at the beginning of the SBC entry defined in sbc_models.cfg, all a part of SBC Model Framework. The color coded indicator of an SBC’s verification and completion as indicated in sbc.png is as follows: - GREEN = verified, complete and passes SBC Case Builder - YELLOW = unverified, mostlikely usable and/or missing minor information @@ -103,7 +103,7 @@ Template creation and i/o panel layouts in a dxf format can be easily created an ### 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. -#### Current Case Count 438 +#### Current Case Count 439 ##### Hardkernel - 182 @@ -181,15 +181,15 @@ c4_tray_vu7, c4_shell_boombox, c4_panel_boombox, c4_deskboom_lcd3.5, c4_tray_boo **Jetson Nano** - 9 : jetsonnano_shell, jetsonnano_panel, jetsonnano_stacked, jetsonnano_tray, jetsonnano_tray_sides, jetsonnano_round, jetsonnano_hex, jetsonnano_snap, jetsonnano_fitted -##### Radxa - 36 +##### Radxa - 37 -**ROCKPi 4b+** - 9 : rockpi4b+_shell, rockpi4b+_panel, rockpi4b+_stacked, rockpi4b+_tray, rockpi4b+_tray_sides, rockpi4b+_round, rockpi4b+_hex, rockpi4b+_snap, rockpi4b+_fitted +**ROCK 4b+** - 9 : rock4b+_shell, rock4b+_panel, rock4b+_stacked, rock4b+_tray, rock4b+_tray_sides, rock4b+_round, rock4b+_hex, rock4b+_snap, rock4b+_fitted -**ROCKPi 4c** - 9 : rockpi4c_shell, rockpi4c_panel, rockpi4c_stacked, rockpi4c_tray, rockpi4c_tray_sides, rockpi4c_round, rockpi4c_hex, rockpi4c_snap, rockpi4c_fitted +**ROCK 4c** - 9 : rock4c_shell, rock4c_panel, rock4c_stacked, rock4c_tray, rock4c_tray_sides, rock4c_round, rock4c_hex, rock4c_snap, rock4c_fitted -**ROCKPi 4c+** - 9 : rockpi4c+_shell, rockpi4c+_panel, rockpi4c+_stacked, rockpi4c+_tray, rockpi4c+_tray_sides, rockpi4c+_round, rockpi4c+_hex, rockpi4c+_snap, rockpi4c+_fitted +**ROCK 4c+** - 9 : rock4c+_shell, rock4c+_panel, rock4c+_stacked, rock4c+_tray, rock4c+_tray_sides, rock4c+_round, rock4c+_hex, rock4c+_snap, rock4c+_fitted -**ROCKPi5b** - 9 : rockpi5b_shell, rockpi5b_panel, rockpi5b_stacked, rockpi5b_tray, rockpi5b_tray_sides, rockpi5b_round, rockpi5b_hex, rockpi5b_snap, rockpi5b_fitted +**ROCK 5b** - 10 : rock5b_shell,rock5b_shell-v1.3, rock5b_panel, rock5b_stacked, rock5b_tray, rock5b_tray_sides, rock5b_round, rock5b_hex, rock5b_snap, rock5b_fitted ##### Khadas - 45 diff --git a/SBC_Model_Framework b/SBC_Model_Framework index 4501d47..3d4e2ad 160000 --- a/SBC_Model_Framework +++ b/SBC_Model_Framework @@ -1 +1 @@ -Subproject commit 4501d471f6542a90ee2da7c4cde62f2e4cd806c4 +Subproject commit 3d4e2ad1e5a6956bcb506cbc739a4b216a6ad830 diff --git a/sbc_case_builder.json b/sbc_case_builder.json index 6906d7e..2560027 100644 --- a/sbc_case_builder.json +++ b/sbc_case_builder.json @@ -16532,10 +16532,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4b+_shell": { + "rock4b+_shell": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_shell", + "accessory_name": "rock4b+_shell", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -16573,7 +16573,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "0", @@ -16589,10 +16589,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4b+_panel": { + "rock4b+_panel": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_panel", + "accessory_name": "rock4b+_panel", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -16630,7 +16630,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "0", @@ -16646,10 +16646,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4b+_stacked": { + "rock4b+_stacked": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_stacked", + "accessory_name": "rock4b+_stacked", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -16687,7 +16687,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "0", @@ -16703,10 +16703,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4b+_tray": { + "rock4b+_tray": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_tray", + "accessory_name": "rock4b+_tray", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -16744,7 +16744,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "0", @@ -16760,10 +16760,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4b+_tray_sides": { + "rock4b+_tray_sides": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_tray_sides", + "accessory_name": "rock4b+_tray_sides", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -16801,7 +16801,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "2", @@ -16817,10 +16817,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4b+_round": { + "rock4b+_round": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_round", + "accessory_name": "rock4b+_round", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -16858,7 +16858,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -16874,10 +16874,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, - "rockpi4b+_hex": { + "rock4b+_hex": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_hex", + "accessory_name": "rock4b+_hex", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -16915,7 +16915,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -16931,10 +16931,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, - "rockpi4b+_snap": { + "rock4b+_snap": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_snap", + "accessory_name": "rock4b+_snap", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -16972,7 +16972,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -16988,10 +16988,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4b+_fitted": { + "rock4b+_fitted": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4b+_fitted", + "accessory_name": "rock4b+_fitted", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17029,7 +17029,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4b+", + "sbc_model": "rock4b+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -17045,10 +17045,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c_shell": { + "rock4c_shell": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_shell", + "accessory_name": "rock4c_shell", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17086,7 +17086,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "0", @@ -17102,10 +17102,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c_panel": { + "rock4c_panel": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_panel", + "accessory_name": "rock4c_panel", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17143,7 +17143,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "0", @@ -17159,10 +17159,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c_stacked": { + "rock4c_stacked": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_stacked", + "accessory_name": "rock4c_stacked", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17200,7 +17200,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "0", @@ -17216,10 +17216,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c_tray": { + "rock4c_tray": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_tray", + "accessory_name": "rock4c_tray", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17257,7 +17257,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "0", @@ -17273,10 +17273,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c_tray_sides": { + "rock4c_tray_sides": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_tray_sides", + "accessory_name": "rock4c_tray_sides", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17314,7 +17314,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "2", @@ -17330,10 +17330,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c_round": { + "rock4c_round": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_round", + "accessory_name": "rock4c_round", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17371,7 +17371,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -17387,10 +17387,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, - "rockpi4c_hex": { + "rock4c_hex": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_hex", + "accessory_name": "rock4c_hex", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17428,7 +17428,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -17444,10 +17444,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, - "rockpi4c_snap": { + "rock4c_snap": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_snap", + "accessory_name": "rock4c_snap", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17485,7 +17485,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -17501,10 +17501,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c_fitted": { + "rock4c_fitted": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c_fitted", + "accessory_name": "rock4c_fitted", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17542,7 +17542,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c", + "sbc_model": "rock4c", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -17558,10 +17558,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c+_shell": { + "rock4c+_shell": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_shell", + "accessory_name": "rock4c+_shell", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17599,7 +17599,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "0", @@ -17615,10 +17615,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c+_panel": { + "rock4c+_panel": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_panel", + "accessory_name": "rock4c+_panel", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17656,7 +17656,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "0", @@ -17672,10 +17672,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c+_stacked": { + "rock4c+_stacked": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_stacked", + "accessory_name": "rock4c+_stacked", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17713,7 +17713,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "0", @@ -17729,10 +17729,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c+_tray": { + "rock4c+_tray": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_tray", + "accessory_name": "rock4c+_tray", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17770,7 +17770,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "0", @@ -17786,10 +17786,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c+_tray_sides": { + "rock4c+_tray_sides": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_tray_sides", + "accessory_name": "rock4c+_tray_sides", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17827,7 +17827,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "2", @@ -17843,10 +17843,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c+_round": { + "rock4c+_round": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_round", + "accessory_name": "rock4c+_round", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17884,7 +17884,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -17900,10 +17900,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, - "rockpi4c+_hex": { + "rock4c+_hex": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_hex", + "accessory_name": "rock4c+_hex", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17941,7 +17941,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -17957,10 +17957,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, - "rockpi4c+_snap": { + "rock4c+_snap": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_snap", + "accessory_name": "rock4c+_snap", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -17998,7 +17998,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -18014,10 +18014,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi4c+_fitted": { + "rock4c+_fitted": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi4c+_fitted", + "accessory_name": "rock4c+_fitted", "adjust": "0.01", "bottom_ext_standoff": "[6.25, 5, 3.6, 10, 4, 1, 0, 0, 0, 4.5, 5.1]", "bottom_front_left": "-14", @@ -18055,7 +18055,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi4c+", + "sbc_model": "rock4c+", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -18074,7 +18074,7 @@ "rocki5b_shell": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b", "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", @@ -18096,7 +18096,7 @@ "exhaust_vents": "vent", "fillet": "0", "floorthick": "2", - "gap": "1.5", + "gap": "1.75", "gpio_opening": "none", "indents": "false", "lip": "5", @@ -18112,7 +18112,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "0", @@ -18128,10 +18128,67 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi5b_panel": { + "rocki5b_shell_v1.3": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b-v1.3", + "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": "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": "fan", + "exhaust_vents": "vent", + "fillet": "0", + "floorthick": "2", + "gap": "1.75", + "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": "rock5b-v1.3", + "sbc_off": "false", + "sbc_top_standoffs": "true", + "sidethick": "0", + "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" + }, + "rock5b_panel": { + "$fn": "90", + "accessory_highlight": "false", + "accessory_name": "rock5b", "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", @@ -18153,7 +18210,7 @@ "exhaust_vents": "vent", "fillet": "0", "floorthick": "2", - "gap": "1.5", + "gap": "1.75", "gpio_opening": "none", "indents": "false", "lip": "5", @@ -18169,7 +18226,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "0", @@ -18185,10 +18242,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi5b_stacked": { + "rock5b_stacked": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b", "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", @@ -18210,7 +18267,7 @@ "exhaust_vents": "vent", "fillet": "0", "floorthick": "2", - "gap": "1.5", + "gap": "1.75", "gpio_opening": "none", "indents": "false", "lip": "5", @@ -18226,7 +18283,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "true", "sidethick": "0", @@ -18242,10 +18299,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi5b_tray": { + "rock5b_tray": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b", "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", @@ -18267,7 +18324,7 @@ "exhaust_vents": "vent", "fillet": "2", "floorthick": "2", - "gap": "1.5", + "gap": "1.75", "gpio_opening": "none", "indents": "false", "lip": "5", @@ -18283,7 +18340,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "0", @@ -18299,10 +18356,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi5b_tray_sides": { + "rock5b_tray_sides": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b", "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", @@ -18324,7 +18381,7 @@ "exhaust_vents": "vent", "fillet": "2", "floorthick": "2", - "gap": "1.5", + "gap": "1.75", "gpio_opening": "none", "indents": "false", "lip": "5", @@ -18340,7 +18397,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "2", @@ -18356,10 +18413,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi5b_round": { + "rock5b_round": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b", "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", @@ -18381,7 +18438,7 @@ "exhaust_vents": "vent", "fillet": "0", "floorthick": "2", - "gap": "1.5", + "gap": "1.75", "gpio_opening": "none", "indents": "false", "lip": "5", @@ -18397,7 +18454,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -18413,10 +18470,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, - "rockpi5b_hex": { + "rock5b_hex": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b", "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", @@ -18438,7 +18495,7 @@ "exhaust_vents": "vent", "fillet": "0", "floorthick": "2", - "gap": "1.5", + "gap": "1.75", "gpio_opening": "none", "indents": "false", "lip": "5", @@ -18454,7 +18511,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -18470,10 +18527,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "3" }, - "rockpi5b_snap": { + "rock5b_snap": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b", "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", @@ -18495,7 +18552,7 @@ "exhaust_vents": "vent", "fillet": "0", "floorthick": "2", - "gap": "1", + "gap": "1.75", "gpio_opening": "none", "indents": "true", "lip": "5", @@ -18511,7 +18568,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -18527,10 +18584,10 @@ "vu_rotation": "[15, 0, 0]", "wallthick": "2" }, - "rockpi5b_fitted": { + "rock5b_fitted": { "$fn": "90", "accessory_highlight": "false", - "accessory_name": "rockpi5b", + "accessory_name": "rock5b", "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", @@ -18552,7 +18609,7 @@ "exhaust_vents": "vent", "fillet": "0", "floorthick": "2", - "gap": "1", + "gap": "1.75", "gpio_opening": "none", "indents": "true", "lip": "5", @@ -18568,7 +18625,7 @@ "sata_punchout": "false", "sbc_bottom_standoffs": "true", "sbc_highlight": "false", - "sbc_model": "rockpi5b-v1.42", + "sbc_model": "rock5b-v1.42", "sbc_off": "false", "sbc_top_standoffs": "false", "sidethick": "1", @@ -24829,7 +24886,7 @@ "exhaust_vents": "none", "fillet": "0", "floorthick": "2", - "gap": "1", + "gap": "1.25", "gpio_opening": "vent", "indents": "true", "individual_part": "bottom", @@ -24887,7 +24944,7 @@ "exhaust_vents": "none", "fillet": "0", "floorthick": "2", - "gap": "1", + "gap": "1.25", "gpio_opening": "vent", "indents": "true", "individual_part": "bottom", @@ -25003,7 +25060,7 @@ "exhaust_vents": "none", "fillet": "0", "floorthick": "2", - "gap": "1", + "gap": "1.25", "gpio_opening": "vent", "indents": "true", "individual_part": "bottom", @@ -25061,7 +25118,7 @@ "exhaust_vents": "none", "fillet": "0", "floorthick": "2", - "gap": "1", + "gap": "1.25", "gpio_opening": "vent", "indents": "true", "individual_part": "bottom", @@ -25119,7 +25176,7 @@ "exhaust_vents": "none", "fillet": "0", "floorthick": "2", - "gap": "2", + "gap": "3", "gpio_opening": "vent", "indents": "true", "individual_part": "bottom", @@ -25177,7 +25234,7 @@ "exhaust_vents": "none", "fillet": "0", "floorthick": "2", - "gap": "2", + "gap": "3", "gpio_opening": "vent", "indents": "true", "individual_part": "bottom", diff --git a/sbc_case_builder.scad b/sbc_case_builder.scad index 1631f41..cff91b2 100644 --- a/sbc_case_builder.scad +++ b/sbc_case_builder.scad @@ -48,7 +48,7 @@ 2023xxxx Version 2.0.x fixed standoff sidewall support misplacement on sbc move, fixed standoff auto opening z height, fixed case top right side standoffs support, fixed access_port and access_cover 180 rotation in portrait and landscape, - adjusted jack_3.5 and hdmi_a_vertical opening + adjusted jack_3.5 and hdmi_a_vertical opening, change radxa rockpi to rock see https://github.com/hominoids/SBC_Case_Builder */ @@ -88,7 +88,7 @@ case_design = "shell"; // [shell,panel,stacked,tray,round,hex,snap,fitted] // base case style case_style = "none"; // ["none","vu5","vu7","sides"] // 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", "a64", "rock64", "rockpro64", "quartz64a", "quartz64b", "h64b", "star64", "atomicpi", "jetsonnano", "rockpi4b+", "rockpi4c", "rockpi4c+", "rockpi5b-v1.3", "rockpi5b-v1.42", "vim1", "vim2", "vim3", "vim3l", "vim4", "tinkerboard", "tinkerboard-s", "tinkerboard-2", "tinkerboard-r2", "opizero", "opizero2", "opir1plus_lts", "opi5", "licheerv+dock", "visionfive2"] +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", "a64", "rock64", "rockpro64", "quartz64a", "quartz64b", "h64b", "star64", "atomicpi", "jetsonnano", "rock4b+", "rock4c", "rock4c+", "rock5b-v1.3", "rock5b-v1.42", "vim1", "vim2", "vim3", "vim3l", "vim4", "tinkerboard", "tinkerboard-s", "tinkerboard-2", "tinkerboard-r2", "opizero", "opizero2", "opir1plus_lts", "opi5", "licheerv+dock", "visionfive2"] // sbc location x axis pcb_loc_x = 0; //[0:.5:300] // sbc location y axis @@ -110,7 +110,7 @@ floorthick = 2; //[1:.5:5] // case side thickness sidethick = 2; //[1:.5:5] // distance between pcb and case -gap = 1; //[.5:.5:5] +gap = 1; //[.5:.25:5] // corner fillets c_fillet = 3; //[0:.5:9] // edge fillets @@ -169,7 +169,7 @@ cooling = "fan"; // [none,vents,fan,custom] exhaust_vents = "vent"; // [none,vent] // case accessory group to load -accessory_name = "none"; // ["none", "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", "n1_round", "n1_hex", "n2l_tray", "n2l_gpio", "n2+_tray_vu7_fan", "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", "jetsonnano_shell", "jetsonnano_panel", "jetsonnano_stacked", "jetsonnano_tray", "jetsonnano_tray_sides", "jetsonnano_round", "jetsonnano_hex", "jetsonnano_snap", "jetsonnano_fitted", "rock64_shell", "rock64_panel", "rock64_stacked", "rock64_tray", "rock64_tray_sides", "rock64_round", "rock64_hex", "rock64_snap", "rock64_fitted", "rockpro64_shell", "rockpro64_panel", "rockpro64_stacked", "rockpro64_tray", "rockpro64_tray_sides", "rockpro64_round", "rockpro64_hex", "rockpro64_snap", "rockpro64_fitted", "quartz64b_stacked_poe_hat", "star64_shell", "show2_shell", "rpi1a+_shell", "rpi1a+_panel", "rpi1a+_stacked", "rpi1a+_tray", "rpi1a+_tray_sides", "rpi1a+_round", "rpi1a+_hex", "rpi1a+_snap", "rpi1a+_fitted", "rpi1b+_shell", "rpi1b+_panel", "rpi1b+_stacked", "rpi1b+_tray", "rpi1b+_tray_sides", "rpi1b+_round", "rpi1b+_hex", "rpi1b+_snap", "rpi1b+_fitted", "rpi3a+_shell", "rpi3a+_panel", "rpi3a+_stacked", "rpi3a+_tray", "rpi3a+_tray_sides", "rpi3a+_round", "rpi3a+_hex", "rpi3a+_snap", "rpi3a+_fitted", "rpi3b_shell", "rpi3b_panel", "rpi3b_stacked", "rpi3b_tray", "rpi3b_tray_sides", "rpi3b_round", "rpi3b_hex", "rpi3b_snap", "rpi3b_fitted", "rpi3b+_shell", "rpi3b+_panel", "rpi3b+_stacked", "rpi3b+_tray", "rpi3b+_tray_sides", "rpi3b+_round", "rpi3b+_hex", "rpi3b+_snap", "rpi3b+_fitted", "rpi4b_shell", "rpi4b_shell_geeekpi_poe_hat", "rpi4b_panel", "rpi4b_stacked", "rpi4b_tray", "rpi4b_tray_sides", "rpi4b_round", "rpi4b_hex", "rpi4b_snap", "rpi4b_fitted", "rockpi4b+_shell", "rockpi4b+_panel", "rockpi4b+_stacked", "rockpi4b+_tray", "rockpi4b+_tray_sides", "rockpi4b+_round", "rockpi4b+_hex", "rockpi4b+_snap", "rockpi4b+_fitted", "rockpi4c_shell", "rockpi4c_panel", "rockpi4c_stacked", "rockpi4c_tray", "rockpi4c_tray_sides", "rockpi4c_round", "rockpi4c_hex", "rockpi4c_snap", "rockpi4c_fitted", "rockpi4c+_shell", "rockpi4c+_panel", "rockpi4c+_stacked", "rockpi4c+_tray", "rockpi4c+_tray_sides", "rockpi4c+_round", "rockpi4c+_hex", "rockpi4c+_snap", "rockpi4c+_fitted", "rockpi5b", "vim1_shell", "vim1_panel", "vim1_stacked", "vim1_tray", "vim1_tray_sides", "vim1_round", "vim1_hex", "vim1_snap", "vim1_fitted", "vim2_shell", "vim2_panel", "vim2_stacked", "vim2_tray", "vim2_tray_sides", "vim2_round", "vim2_hex", "vim2_snap", "vim2_fitted", "vim3l_shell", "vim3l_panel", "vim3l_stacked", "vim3l_tray", "vim3l_tray_sides", "vim3l_round", "vim3l_hex", "vim3l_snap", "vim3l_fitted", "vim3_shell", "vim3_panel", "vim3_stacked", "vim3_tray", "vim3_tray_sides", "vim3_round", "vim3_hex", "vim3_snap", "vim3_fitted", "vim4_shell", "vim4_panel", "vim4_stacked", "vim4_tray", "vim4_tray_sides", "vim4_round", "vim4_hex", "vim4_snap", "vim4_fitted", "tinkerboard_shell", "tinkerboard_panel", "tinkerboard_stacked", "tinkerboard_tray", "tinkerboard_tray_sides", "tinkerboard_round", "tinkerboard_hex", "tinkerboard_snap", "tinkerboard_fitted", "tinkerboard-s_shell", "tinkerboard-s_panel", "tinkerboard-s_stacked", "tinkerboard-s_tray", "tinkerboard-s_tray_sides", "tinkerboard-s_round", "tinkerboard-s_hex", "tinkerboard-s_snap", "tinkerboard-s_fitted", "tinkerboard-2_shell", "tinkerboard-2_panel", "tinkerboard-2_stacked", "tinkerboard-2_tray", "tinkerboard-2_tray_sides", "tinkerboard-2_round", "tinkerboard-2_hex", "tinkerboard-2_snap", "tinkerboard-2_fitted", "tinkerboard-r2_shell", "tinkerboard-r2_panel", "tinkerboard-r2_stacked", "tinkerboard-r2_tray", "tinkerboard-r2_tray_sides", "tinkerboard-r2_round", "tinkerboard-r2_hex", "tinkerboard-r2_snap", "tinkerboard-r2_fitted", "opi5_shell", "opi5_panel", "opi5_stacked", "opi5_tray", "opi5_tray-sides", "opi5_snap", "opi5_fitted", "visonfive2_shell", "visonfive2_panel", "visonfive2_stacked", "visonfive2_tray", "visonfive2_snap", "visonfive2_fitted", "hk_uart"] +accessory_name = "none"; // ["none", "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", "n1_round", "n1_hex", "n2l_tray", "n2l_gpio", "n2+_tray_vu7_fan", "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", "jetsonnano_shell", "jetsonnano_panel", "jetsonnano_stacked", "jetsonnano_tray", "jetsonnano_tray_sides", "jetsonnano_round", "jetsonnano_hex", "jetsonnano_snap", "jetsonnano_fitted", "rock64_shell", "rock64_panel", "rock64_stacked", "rock64_tray", "rock64_tray_sides", "rock64_round", "rock64_hex", "rock64_snap", "rock64_fitted", "rockpro64_shell", "rockpro64_panel", "rockpro64_stacked", "rockpro64_tray", "rockpro64_tray_sides", "rockpro64_round", "rockpro64_hex", "rockpro64_snap", "rockpro64_fitted", "quartz64b_stacked_poe_hat", "star64_shell", "show2_shell", "rpi1a+_shell", "rpi1a+_panel", "rpi1a+_stacked", "rpi1a+_tray", "rpi1a+_tray_sides", "rpi1a+_round", "rpi1a+_hex", "rpi1a+_snap", "rpi1a+_fitted", "rpi1b+_shell", "rpi1b+_panel", "rpi1b+_stacked", "rpi1b+_tray", "rpi1b+_tray_sides", "rpi1b+_round", "rpi1b+_hex", "rpi1b+_snap", "rpi1b+_fitted", "rpi3a+_shell", "rpi3a+_panel", "rpi3a+_stacked", "rpi3a+_tray", "rpi3a+_tray_sides", "rpi3a+_round", "rpi3a+_hex", "rpi3a+_snap", "rpi3a+_fitted", "rpi3b_shell", "rpi3b_panel", "rpi3b_stacked", "rpi3b_tray", "rpi3b_tray_sides", "rpi3b_round", "rpi3b_hex", "rpi3b_snap", "rpi3b_fitted", "rpi3b+_shell", "rpi3b+_panel", "rpi3b+_stacked", "rpi3b+_tray", "rpi3b+_tray_sides", "rpi3b+_round", "rpi3b+_hex", "rpi3b+_snap", "rpi3b+_fitted", "rpi4b_shell", "rpi4b_shell_geeekpi_poe_hat", "rpi4b_panel", "rpi4b_stacked", "rpi4b_tray", "rpi4b_tray_sides", "rpi4b_round", "rpi4b_hex", "rpi4b_snap", "rpi4b_fitted", "rock4b+_shell", "rock4b+_panel", "rock4b+_stacked", "rock4b+_tray", "rock4b+_tray_sides", "rock4b+_round", "rock4b+_hex", "rock4b+_snap", "rock4b+_fitted", "rock4c_shell", "rock4c_panel", "rock4c_stacked", "rock4c_tray", "rock4c_tray_sides", "rock4c_round", "rock4c_hex", "rock4c_snap", "rock4c_fitted", "rock4c+_shell", "rock4c+_panel", "rock4c+_stacked", "rock4c+_tray", "rock4c+_tray_sides", "rock4c+_round", "rock4c+_hex", "rock4c+_snap", "rock4c+_fitted", "rock5b", "rock5b-v1.3", "vim1_shell", "vim1_panel", "vim1_stacked", "vim1_tray", "vim1_tray_sides", "vim1_round", "vim1_hex", "vim1_snap", "vim1_fitted", "vim2_shell", "vim2_panel", "vim2_stacked", "vim2_tray", "vim2_tray_sides", "vim2_round", "vim2_hex", "vim2_snap", "vim2_fitted", "vim3l_shell", "vim3l_panel", "vim3l_stacked", "vim3l_tray", "vim3l_tray_sides", "vim3l_round", "vim3l_hex", "vim3l_snap", "vim3l_fitted", "vim3_shell", "vim3_panel", "vim3_stacked", "vim3_tray", "vim3_tray_sides", "vim3_round", "vim3_hex", "vim3_snap", "vim3_fitted", "vim4_shell", "vim4_panel", "vim4_stacked", "vim4_tray", "vim4_tray_sides", "vim4_round", "vim4_hex", "vim4_snap", "vim4_fitted", "tinkerboard_shell", "tinkerboard_panel", "tinkerboard_stacked", "tinkerboard_tray", "tinkerboard_tray_sides", "tinkerboard_round", "tinkerboard_hex", "tinkerboard_snap", "tinkerboard_fitted", "tinkerboard-s_shell", "tinkerboard-s_panel", "tinkerboard-s_stacked", "tinkerboard-s_tray", "tinkerboard-s_tray_sides", "tinkerboard-s_round", "tinkerboard-s_hex", "tinkerboard-s_snap", "tinkerboard-s_fitted", "tinkerboard-2_shell", "tinkerboard-2_panel", "tinkerboard-2_stacked", "tinkerboard-2_tray", "tinkerboard-2_tray_sides", "tinkerboard-2_round", "tinkerboard-2_hex", "tinkerboard-2_snap", "tinkerboard-2_fitted", "tinkerboard-r2_shell", "tinkerboard-r2_panel", "tinkerboard-r2_stacked", "tinkerboard-r2_tray", "tinkerboard-r2_tray_sides", "tinkerboard-r2_round", "tinkerboard-r2_hex", "tinkerboard-r2_snap", "tinkerboard-r2_fitted", "opi5_shell", "opi5_panel", "opi5_stacked", "opi5_tray", "opi5_tray-sides", "opi5_snap", "opi5_fitted", "visonfive2_shell", "visonfive2_panel", "visonfive2_stacked", "visonfive2_tray", "visonfive2_snap", "visonfive2_fitted", "hk_uart"] a = search([accessory_name],accessory_data); s = search([sbc_model],sbc_data); diff --git a/sbc_case_builder_accessories.cfg b/sbc_case_builder_accessories.cfg index e6b952a..ffa1ef5 100644 --- a/sbc_case_builder_accessories.cfg +++ b/sbc_case_builder_accessories.cfg @@ -1269,103 +1269,109 @@ accessory_data = [ "sub","fan",10,10,25.5,"top",[0,0,0],["sbc-case_z",true,true,true],40,0,6,2,0,"",0], // sub fan opening // Radxa - ["rockpi4b+_shell", + ["rock4b+_shell", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4b+_panel", + ["rock4b+_panel", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4b+_stacked", + ["rock4b+_stacked", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4b+_tray", + ["rock4b+_tray", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4b+_tray_sides", + ["rock4b+_tray_sides", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4b+_round", + ["rock4b+_round", "suball","rectangle",4.5,-26,14.5,"top",[0,0,0],["sbc",true,true,true],11,20,8,0,0,"vertical",[1,1,1,1], // sub hdmi opening "suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],21,10,15.5,0,0,"vertical",[1,1,1,1], // sub hdmi opening "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4b+_hex", + ["rock4b+_hex", "suball","rectangle",4.5,-20,14.5,"top",[0,0,0],["sbc",true,true,true],11,20,8,0,0,"vertical",[1,1,1,1], // sub hdmi opening "suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],21,20,15.5,0,0,"vertical",[1,1,1,1], // sub hdmi opening "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4b+_snap", + ["rock4b+_snap", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4b+_fitted", + ["rock4b+_fitted", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_shell", + ["rock4c_shell", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_panel", + ["rock4c_panel", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_stacked", + ["rock4c_stacked", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_tray", + ["rock4c_tray", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_tray_sides", + ["rock4c_tray_sides", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_round", + ["rock4c_round", "suball","rectangle",4.5,-26,14.5,"top",[0,0,0],["sbc",true,true,true],11,20,8,0,0,"vertical",[1,1,1,1], // sub hdmi opening "suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],21,10,15.5,0,0,"vertical",[1,1,1,1], // sub hdmi opening "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_hex", + ["rock4c_hex", "suball","rectangle",4.5,-20,14.5,"top",[0,0,0],["sbc",true,true,true],11,20,8,0,0,"vertical",[1,1,1,1], // sub hdmi opening "suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],21,20,15.5,0,0,"vertical",[1,1,1,1], // sub hdmi opening "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_snap", + ["rock4c_snap", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c_fitted", + ["rock4c_fitted", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_shell", + ["rock4c+_shell", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_panel", + ["rock4c+_panel", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_stacked", + ["rock4c+_stacked", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_tray", + ["rock4c+_tray", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_tray_sides", + ["rock4c+_tray_sides", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_round", + ["rock4c+_round", "suball","rectangle",4.5,-26,14.5,"top",[0,0,0],["sbc",true,true,true],11,20,8,0,0,"vertical",[1,1,1,1], // sub hdmi opening "suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],21,10,15.5,0,0,"vertical",[1,1,1,1], // sub hdmi opening "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_hex", + ["rock4c+_hex", "suball","rectangle",4.5,-20,14.5,"top",[0,0,0],["sbc",true,true,true],11,20,8,0,0,"vertical",[1,1,1,1], // sub hdmi opening "suball","rectangle",21.5,-26,13,"top",[0,0,0],["sbc",true,true,true],21,20,15.5,0,0,"vertical",[1,1,1,1], // sub hdmi opening "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_snap", + ["rock4c+_snap", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi4c+_fitted", + ["rock4c+_fitted", "sub","fan",10,10,0,"bottom",[0,0,0],["sbc",true,true,false],40,0,6,2,0,"",0], // sub fan opening - ["rockpi5b", + ["rock5b", + "sub","rectangle",-1,66.5,13,"top",[0,0,0],["sbc",true,true,false],10,2,8,0,0,"",[.25,.25,.25,.25], // UL standoff adjustment + "sub","rectangle",92,17.5,13,"top",[0,0,0],["sbc",true,true,false],10,2,15,0,0,"",[.25,.25,.25,.25], // LR standoff adjustment + "sub","rectangle",78,67,-1,"bottom",[0,0,0],["sbc",true,true,false],14,18,12.5,0,0,"",[.25,.25,.25,.25], // sdcard opening + "add1","access_port",10,0,-0.01,"bottom",[0,0,0],["sbc",true,true,false],80,75,2,0,0,"portrait",0, // access port + "model","access_cover",10,0,-0.01,"bottom",[0,0,0],["sbc",true,true,false],80,75,2,0,0,"portrait",0, // model access port cover + "platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],80,75,2,0,0,"portrait",0], // platter access port cover + ["rock5b-v1.3", "sub","rectangle",-1,66.5,13,"top",[0,0,0],["sbc",true,true,false],10,2,8,0,0,"",[.25,.25,.25,.25], // UL standoff adjustment "sub","rectangle",92,17.5,13,"top",[0,0,0],["sbc",true,true,false],10,2,15,0,0,"",[.25,.25,.25,.25], // LR standoff adjustment - "sub","rectangle",77,67,-1,"bottom",[0,0,0],["sbc",true,true,false],15,18,12.5,0,0,"",[.25,.25,.25,.25], // sdcard opening "add1","access_port",10,0,-0.01,"bottom",[0,0,0],["sbc",true,true,false],80,75,2,0,0,"portrait",0, // access port "model","access_cover",10,0,-0.01,"bottom",[0,0,0],["sbc",true,true,false],80,75,2,0,0,"portrait",0, // model access port cover "platter","access_cover",-110,30,0,"bottom",[0,0,0],["case",false,false,false],80,75,2,0,0,"portrait",0], // platter access port cover diff --git a/sbc_case_builder_library.scad b/sbc_case_builder_library.scad index d02de75..085c83c 100644 --- a/sbc_case_builder_library.scad +++ b/sbc_case_builder_library.scad @@ -2826,16 +2826,16 @@ module mask(loc_x,loc_y,loc_z,rotation,side,class,type,wallthick,gap,floorthick, } // hdmi vertical opening if(type == "hdmi_a_vertical" && side == "top" && rotation == 0) { - place(loc_x-.5,loc_y,loc_z+1,15,11.5,rotation,side) translate([-.25,0,15.4]) rotate([0,90,0]) hdmi_open("hdmi_a"); + place(loc_x-.5,loc_y,loc_z+1.5,15,11.5,rotation,side) translate([-.25,0,15.4]) rotate([0,90,0]) hdmi_open("hdmi_a"); } if(type == "hdmi_a_vertical" && side == "top" && rotation == 90) { - place(loc_x-1,loc_y,loc_z+.5,15,11.5,rotation,side) translate([-.25,0,15.4]) rotate([0,90,0]) hdmi_open("hdmi_a"); + place(loc_x-1,loc_y,loc_z+1.5,15,11.5,rotation,side) translate([-.25,0,15.4]) rotate([0,90,0]) hdmi_open("hdmi_a"); } if(type == "hdmi_a_vertical" && side == "top" && rotation == 180) { - place(loc_x,loc_y+1,loc_z+.5,15,11.5,rotation,side) translate([-.25,0,15.4]) rotate([0,90,0]) hdmi_open("hdmi_a"); + place(loc_x,loc_y+1,loc_z+1.5,15,11.5,rotation,side) translate([-.25,0,15.4]) rotate([0,90,0]) hdmi_open("hdmi_a"); } if(type == "hdmi_a_vertical" && side == "top" && rotation == 270) { - place(loc_x+1,loc_y-.5,loc_z+.5,15,11.5,rotation,side) translate([-.25,0,15.4]) rotate([0,90,0]) hdmi_open("hdmi_a"); + place(loc_x+1,loc_y-.5,loc_z+1.5,15,11.5,rotation,side) translate([-.25,0,15.4]) rotate([0,90,0]) hdmi_open("hdmi_a"); } // hdmi micro opening if(class == "video" && type == "hdmi_micro" && rotation == 0 && side == "top") { @@ -3301,19 +3301,19 @@ module mask(loc_x,loc_y,loc_z,rotation,side,class,type,wallthick,gap,floorthick, // single vertical usbc opening if(class == "usbc" && type == "single_vertical" && rotation == 0 && side == "top") { place(loc_x+1.5,loc_y+2,loc_z+1.75,6,8,rotation,side) - translate([.25,0,5.5]) rotate([90,90,0]) slot(3.75,5.5,8); + translate([.25,0,5.75]) rotate([90,90,0]) slot(3.75,5.5,8); } if(class == "usbc" && type == "single_vertical" && rotation == 90 && side == "top") { place(loc_x+2,loc_y+1.5,loc_z+1.75,6,8,rotation,side) - translate([.25,0,5.5]) rotate([90,90,0]) slot(3.75,5.5,8); + translate([.25,0,5.75]) rotate([90,90,0]) slot(3.75,5.5,8); } if(class == "usbc" && type == "single_vertical" && rotation == 180 && side == "top") { place(loc_x+1.5,loc_y-3-adjust,loc_z+2,6,8,rotation,side) - translate([.25,0,5.5]) rotate([90,90,0]) slot(3.75,5.5,8); + translate([.25,0,5.75]) rotate([90,90,0]) slot(3.75,5.5,8); } if(class == "usbc" && type == "single_vertical" && rotation == 270 && side == "top") { place(loc_x-3-adjust,loc_y+1.5,loc_z+1.75,6,8,rotation,side) - translate([.25,0,5.5]) rotate([90,90,0]) slot(3.75,5.5,8); + translate([.25,0,5.75]) rotate([90,90,0]) slot(3.75,5.5,8); } // ir opening if(type == "ir_1" && rotation == 0) { @@ -3536,7 +3536,6 @@ module mask(loc_x,loc_y,loc_z,rotation,side,class,type,wallthick,gap,floorthick, place(loc_x,loc_y,loc_z,4.5,3.5,rotation,side) union() { translate([2.25,0,1.8]) rotate([90,0,0]) cylinder(d=3.5, h=8); - translate([-1.25,-3.75,0]) cube([7,2.5,5]); } } if(type == "momentary_7x3x3_90" && rotation == 0) {