solve for 24mm/30mm snap-ins

This commit is contained in:
Brian S. Stephan 2023-08-25 14:59:37 -05:00
parent 8fc51019c3
commit 6ca57615e4
Signed by: bss
GPG Key ID: 3DE06D3180895FCB
3 changed files with 20 additions and 7 deletions

View File

@ -45,7 +45,6 @@ What you'll need beyond these objects:
This is a living repository, and as such, there are likely issues with the objects, known or otherwise. Be aware:
* The top panel is 5mm tall and doesn't have an inset; snap-in buttons likely do not fit.
* A composition error made the frame 5mm shorter than intended and wasn't noticed until I printed everything:
* Some levers don't have enough clearance in the case.
* Buttons with traditional quick connects are a *very* tight fit, you will probably need to bend pins.

View File

@ -7,8 +7,6 @@ Notes for "next time".
* I need at least 5mm, maybe 10mm, more height, to fit some of my levers like the Nobi Bullet
* I couldn't even fit a JLF without the compensations in v1 on the bottom panel
* I had to bend the pins a bit on Crown SDB-202s, too
* Top plates are 1-2mm too thick for snap-ins, maybe have a variant with a couple shaved off like with the bottom plate
workaround
* The plates bow a bit on the top when pressure is applied, because there's no support from the frame up there ---
adding 5mm to the frame should leave a couple mm for support to get added back
* PCB mount on `top-panel-dir_arc-plus-w-30mm-plus-one-with-mount.scad` doesn't leave room for a USB cable on the right

View File

@ -68,10 +68,26 @@ module button_24mm_hole() {
cylinder(r=small_button_radius, h=100, $fn=50, center=true);
}
module button_24mm_hole_for_snapins() {
button_24mm_hole();
// carve out space for snap-ins, leave 3mm
// slagcoin has screw-in nut diameter at 35mm, so radius+3 to leave some space
// translation is to leave 3mm thickness in the plate without recentering anything
translate([0, 0, -25]) cylinder(r=small_button_radius+3, h=49, $fn=50, center=true);
}
module button_30mm_hole() {
cylinder(r=big_button_radius, h=100, $fn=50, center=true);
}
module button_30mm_hole_for_snapins() {
button_30mm_hole();
// carve out space for snap-ins, leave 3mm
// slagcoin has screw-in nut diameter at 36mm, so radius+4 to leave some space
// translation is to leave 3mm thickness in the plate without recentering anything
translate([0, 0, -25]) cylinder(r=big_button_radius+4, h=49, $fn=50, center=true);
}
module frame_hex_bolt_hole() {
scale([1, 1, 2]) cylinder(r=m4_bolt_hex_exterior_radius, h=frame_z, $fn=6, center=true);
}
@ -236,7 +252,7 @@ module frame() {
/* LAYOUTS */
module dir_arc_30mm_button_l() {
translate([68, 132, 0]) button_30mm_hole();
translate([68, 132, 0]) button_30mm_hole_for_snapins();
}
module dir_arc_w_30mm() {
@ -245,7 +261,7 @@ module dir_arc_w_30mm() {
translate([35+33.5, -12.9, 0]) dir_arc_30mm_button_l();
translate([35+7, 34.5, 0]) dir_arc_30mm_button_l();
// just my guesstimate on this one, but note that this is the same position as sega 2p (just mirrored)
translate([top_plate_x-33.06, 145-19-9-11-19-9-11, 0]) button_30mm_hole();
translate([top_plate_x-33.06, 145-19-9-11-19-9-11, 0]) button_30mm_hole_for_snapins();
}
module dir_arc_w_30mm_plus_one() {
@ -254,7 +270,7 @@ module dir_arc_w_30mm_plus_one() {
}
module noir_button_p1() {
translate([40, 145, 0]) button_30mm_hole();
translate([40, 145, 0]) button_30mm_hole_for_snapins();
}
module noir_plus_one() {
@ -273,7 +289,7 @@ module noir_plus_one() {
}
module sega_2p_p1() {
translate([33.06, 145, 0]) button_30mm_hole();
translate([33.06, 145, 0]) button_30mm_hole_for_snapins();
}
module sega_2p_plus_one() {