Enhance multi-device support with presets and angled gussets#22
Open
rwb5510 wants to merge 2 commits intospuder:mainfrom
Open
Enhance multi-device support with presets and angled gussets#22rwb5510 wants to merge 2 commits intospuder:mainfrom
rwb5510 wants to merge 2 commits intospuder:mainfrom
Conversation
…led supports Add multi-section support, keystone jacks, device presets, and angled gussets Merge and extend the original single-switch mount with three new capabilities: multi-section faceplates (up to 4 openings), per-section keystone jack cutouts, and optional angled support gussets for heavy devices. Also adds a device preset table so common gear can be selected by name instead of entering dimensions by hand. - Generalize the dual-sleeve branch (PR spuder#20, @cjolivier01) to N sections with a section_count parameter and per-section enable flags - Merge the keystone jack feature from PR spuder#21, extended to be per-section with side selection and automatic clearance around front wire holes and rack-rail slot columns - Add angled triangular gussets that tie each sleeve to the faceplate, with per-side width auto-clamped to available gutter space - Add a device preset dropdown per section with ~25 preloaded sizes sourced from the MakerWorld 10-inch Mini Rack Generator project page; Custom preserves the original manual-dimension workflow - Emit echo warnings when a preset exceeds rack_height, when keystones collide with rail columns, or when a gusset is clamped below the minimum renderable width Co-authored-by: cjolivier01 <https://github.com/cjolivier01> Preset dimensions: https://makerworld.com/en/models/1765102-10-inch-mini-rack-generator
Add usage guide for 10-inch rack mount generator with detailed instructions and parameters.
cjolivier01
approved these changes
Apr 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Combines the dual-sleeve fork with the keystone jack PR and adds two new features on top: angled support gussets for heavy devices, and a device preset table so the most common rack-mounted gear can be selected by name.
Going from the original single-opening generator to this version:
section_count)What changed
Multi-section layout (extends #20 by @cjolivier01)
section_countparameter (1–4). The original dual-sleeve branch hard-coded two sections; this generalizes to N with a unified iteration model.width / height / depth / x_offset / y_offsetplus independent feature flags.max(section_depth)so the slots still punch through the deepest sleeve.Keystone jack cutouts (extends #21)
sectionN_keystonetoggle, count (1–6), and side-of-opening selector (left/right of that specific opening).front_thickness + 2·tolerance— punches only the faceplate, not the sleeve.front_wire_holesis enabled): keystones are pushed outward bywire_diameter × 0.7so the circles don't clip the jack bezel.slot_len/2 + support_rail_marginof the rails is skipped with anechowarning instead of cutting into the mounting slot.Angled support gussets (new)
sectionN_supporttoggle. When enabled, renders triangular prisms on both outer walls of the sleeve, attaching chassis side to faceplate.support_width_requested(how far along the faceplate) andsupport_depth_requested(how far back along the sleeve).support_rail_margin. If the available gutter drops belowsupport_min_width, that side is skipped with anechowarning.Device presets (new)
sectionN_devicedropdown with ~25 preloaded sizes (Firewalla, UniFi, Intel/Dell/HP/Lenovo micro PCs, Mac Mini, Synology DS-series, etc).width/height/depth. ChoosingCustomuses the manual values, preserving the original workflow.echowarning fires on preview if a chosen preset is taller thanrack_height(e.g. picking a Mac Mini in a 1U config).Parameter file organization
/* [Section 1] */etc.) so the customizer groups parameters by section and feature.Credits
Testing notes
support = true.front_wire_holeswith keystones enabled on both sides; check no bezel-to-wire-hole overlap in preview.