standalone frame, with tweaks to the frame as a consequence

* frame width has been reduced in order to leave more space and have
  sunken buttons somewhat accessible
* the cutout for neutrik mounts has been reduced and moved into the
  holes themselves, to do this more modularly and restore some support
This commit is contained in:
Brian S. Stephan 2023-08-26 21:50:20 -05:00
parent a8d02f9229
commit 344de2c84f
Signed by: bss
GPG Key ID: 3DE06D3180895FCB
4 changed files with 56 additions and 13 deletions

View File

@ -49,8 +49,6 @@ This is a living repository, and as such, there are likely issues with the objec
* 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.
* The PCB mount position was very tight on the buttons panel; it will probably have to be moved.
* Support for the top plate was removed from the frame due to overhang issues, and now the top plate can bow slightly
with pressure; a new solution needs to be found.
These issues may be fixed in the future; see `TODO.md` for details.

View File

@ -11,6 +11,4 @@ Notes for "next time".
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
hand side
* The panels' connection points could probably be a bit thinner to accommodate more bolts. A 20mm bolt barely clears the
two panels and I don't like that kind of bolt connection.
* Engraving some cosmetic stuff? Or maybe a place to mount other plates?

View File

@ -50,6 +50,9 @@ top_plate_x = 175;
top_plate_y = 200;
top_plate_z = 5;
// frame interior that supports the top plates
panel_support_width = 5;
// neutrik D screw holes
neutrik_d_screw_radius = 1.6 + hole_tolerance;
neutrik_d_radius = 12 + hole_tolerance;
@ -84,9 +87,9 @@ module button_24mm_hole() {
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
// slagcoin has screw-in nut diameter at 29.5mm, so radius+6 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);
translate([0, 0, -25]) cylinder(r=small_button_radius+6, h=49, $fn=50, center=true);
}
module button_30mm_hole() {
@ -96,9 +99,9 @@ module button_30mm_hole() {
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
// slagcoin has screw-in nut diameter at 36mm, so radius+6 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);
translate([0, 0, -25]) cylinder(r=big_button_radius+6, h=49, $fn=50, center=true);
}
module frame_hex_bolt_hole() {
@ -121,6 +124,7 @@ module neutrik_d_mount() {
neutrik_d_hole();
translate([9.5, 12, 0]) neutrik_d_screw_hole();
translate([-9.5, -12, 0]) neutrik_d_screw_hole();
translate([0, 0, 25]) cube([32, 37, 50], center=true);
}
module m3_mount_post() {
@ -182,7 +186,7 @@ module base_topplate_with_raised_overhang() {
// make a frame out of the top plate (and keep the main plate on the center plane)
translate([0, 0, -5]) difference() {
base_topplate();
cube([top_plate_x-10, top_plate_y-10, top_plate_z*2], center=true);
cube([top_plate_x-(panel_support_width*2), top_plate_y-(panel_support_width*2), top_plate_z*2], center=true);
}
translate([(top_plate_x/2)-10, (top_plate_y/2)-10, -2.5]) resize([0, 0, 10]) frame_mount_column();
translate([-((top_plate_x/2)-10), (top_plate_y/2)-10, -2.5]) resize([0, 0, 10]) frame_mount_column();
@ -210,7 +214,7 @@ module topplate_with_raised_overhang() {
module frame_box() {
difference() {
roundedcube([frame_x, frame_y, frame_z], center=true, radius=3);
cube([frame_x-26, frame_y-26, frame_z+5], center=true);
cube([frame_x-(panel_support_width*2), frame_y-(panel_support_width*2), frame_z+5], center=true);
}
}
@ -262,9 +266,6 @@ module frame() {
frame_hex_bolt_hole();
translate([-((top_plate_x/2)-10), -((top_plate_y/2)-10), 0])
frame_hex_bolt_hole();
// thin up the mount point to accommodate snap-ins, ethercon adapter
translate([0, 10, 10]) cube([120, 180, 60], center=true);
}
}

46
src/frame-solo.scad Normal file
View File

@ -0,0 +1,46 @@
/* Copyright Brian Stephan 2023
*
* This file is part of the Buildable Stick System.
*
* The Buildable Stick System is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version.
*
* The Buildable Stick System is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along with
* the Buildable Stick System. If not, see <https://www.gnu.org/licenses/>.
*/
include <components.scad>
module solo_frame() {
difference() {
rotate([0, 0, 90]) frame();
// neutrik mounts for connector, switches
translate([0, (frame_x/2)-2.5, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([-40, (frame_x/2)-2.5, 0]) rotate([270, 0, 0]) button_24mm_hole_for_snapins();
translate([40, (frame_x/2)-2.5, 0]) rotate([270, 0, 0]) button_24mm_hole_for_snapins();
// aux button holes
translate([-frame_y/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([0, 0, 0]) rotate([90, 0, 0]) button_24mm_hole_for_snapins();
translate([-frame_y/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([-40, 0, 0]) rotate([90, 0, 0]) button_24mm_hole_for_snapins();
translate([-frame_y/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([40, 0, 0]) rotate([90, 0, 0]) button_24mm_hole_for_snapins();
translate([frame_y/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([0, 0, 0]) rotate([90, 0, 0]) button_24mm_hole_for_snapins();
translate([frame_y/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([-40, 0, 0]) rotate([90, 0, 0]) button_24mm_hole_for_snapins();
translate([frame_y/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([40, 0, 0]) rotate([90, 0, 0]) button_24mm_hole_for_snapins();
}
}
solo_frame();