Last active
December 7, 2025 16:15
-
-
Save fadenb/a507dc0a2c89bad78fe94c7c3c161348 to your computer and use it in GitHub Desktop.
I needed a really simple backstop for the iPad mounting angles I installed on the underside of a desk to ensure it is not pushed in to deep
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
| // Parametric Backstop with Counterbore & Chamfers | |
| // All units in mm | |
| $fn = 25; | |
| // Part Dimensions | |
| stop_thickness = 12; // Y-axis dimension | |
| stop_width = 20; // X-axis dimension | |
| stop_height = 15; // Z-axis dimension (Screw axis) | |
| chamfer_size = 1.0; | |
| // Screw & Tool Dimensions | |
| screw_hole_dia = 2.25; | |
| web_thickness = 3.0; // Solid material thickness for the screw | |
| tool_access_dia = 8.0; // Clearance for screwdriver shaft/bit | |
| module backstop() { | |
| difference() { | |
| // Main Body (Chamfered) | |
| // Z-axis is now defined by stop_height | |
| translate([0, 0, stop_height/2]) | |
| chamfer_cube([stop_width, stop_thickness, stop_height], chamfer_size); | |
| // Holes | |
| // 1. The small screw hole (goes all the way through) | |
| cylinder(h=stop_height + 1, d=screw_hole_dia, center=false); | |
| // 2. The tool access channel (counterbore) | |
| translate([0, 0, web_thickness]) | |
| cylinder(h=stop_height, d=tool_access_dia, center=false); | |
| } | |
| } | |
| // Module to create a cube with chamfered edges/corners | |
| module chamfer_cube(size, c) { | |
| hull() { | |
| // Plate X-axis | |
| cube([size.x, size.y - 2*c, size.z - 2*c], center=true); | |
| // Plate Y-axis | |
| cube([size.x - 2*c, size.y, size.z - 2*c], center=true); | |
| // Plate Z-axis | |
| cube([size.x - 2*c, size.y - 2*c, size.z], center=true); | |
| } | |
| } | |
| backstop(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment