diff --git a/src/components.scad b/src/components.scad index e92fe19..8cd3547 100644 --- a/src/components.scad +++ b/src/components.scad @@ -40,6 +40,10 @@ top_plate_x = 175; top_plate_y = 200; top_plate_z = 5; +// neutrik D screw holes +neutrik_d_screw_radius = 1.6 + hole_tolerance; +neutrik_d_radius = 12 + hole_tolerance; + /* PARTS */ module m4_hole() { @@ -66,6 +70,20 @@ module frame_interchange_hole() { cylinder(r=15, h=50, $fn=50, center=true); } +module neutrik_d_hole() { + cylinder(r=neutrik_d_radius, h=100, $fn=50, center=true); +} + +module neutrik_d_screw_hole() { + cylinder(r=neutrik_d_screw_radius, h=100, $fn=50, center=true); +} + +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(); +} + /* PIECES */ module levermountbase() { diff --git a/src/frame-middle.scad b/src/frame-middle.scad new file mode 100644 index 0000000..3851af6 --- /dev/null +++ b/src/frame-middle.scad @@ -0,0 +1,44 @@ +/* Copyright Brian Stephan 2023 + * + * This file is part of bullet-system-stick. + * + * bullet-system-stick 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. + * + * bullet-system-stick 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 + * bullet-system-stick. If not, see . + */ + +include + +module middle_frame() { + difference() { + frame(); + // chop the left and right edge off + frame_side_chopper(); + mirror([1, 0, 0]) frame_side_chopper(); + } +} + +difference() { + middle_frame(); + // connection holes to other frames + frame_connection_holes(); + mirror([1, 0, 0]) frame_connection_holes(); + + // cable routing holes + frame_cable_routing_hole(); + mirror([1, 0, 0]) frame_cable_routing_hole(); + + // neutrik mounts for connector, switches + translate([0, 100, 0]) rotate([90, 0, 0]) neutrik_d_mount(); + translate([-40, 100, 0]) rotate([90, 0, 0]) neutrik_d_mount(); + translate([40, 100, 0]) rotate([90, 0, 0]) neutrik_d_mount(); +}