Compare commits

..

No commits in common. "e2549694ea127f729077039a5f173814dd5e56ba" and "3f0712af70e49910ba281fd351cf9c7b753e13ba" have entirely different histories.

5 changed files with 16 additions and 45 deletions

View File

@ -41,14 +41,7 @@ What you'll need beyond these objects:
* Buttons and levers as desired
* Wiring as required
## Rough Costs
This is a rough estimate of the cost to produce one of these sticks. Filament masses from Bambu Studio estimates, using
Bambu PLA Basic.
* Left/right frame: 141.84g (~$3.54 USD as of 2023-09-12)
## Issues and Limitations
### Issues and Limitations
This is a living repository, and as such, there are likely issues with the objects, known or otherwise.
These issues may be fixed in the future; see `TODO.md` for details.

View File

@ -148,11 +148,8 @@ 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();
}
// space for a neutrik D mount or 24mm button
module frame_cutout() {
cube([36.5, 8, 40], center=true);
// clearance for cutting space out of e.g. frame wall
translate([0, 0, 25]) cube([32, 40, 50], center=true);
}
module m3_mount_post() {

View File

@ -36,16 +36,9 @@ module left_frame() {
translate([0, 0, -top_plate_z/2]) frame_cable_routing_hole();
// aux button holes
translate([-30, 101.5, 0]) rotate([270, 0, 0]) button_24mm_hole();
translate([-30, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
translate([-70, 101.5, 0]) rotate([270, 0, 0]) button_24mm_hole();
translate([-70, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
translate([10, 101.5, 0]) rotate([270, 0, 0]) button_24mm_hole();
translate([10, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
// neutrix button hole
translate([70, (frame_y/2)-neutrik_panel_thickness, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([70, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
translate([0, 101.5, 0]) rotate([270, 0, 0]) button_24mm_hole();
translate([-40, 101.5, 0]) rotate([270, 0, 0]) button_24mm_hole();
translate([40, 101.5, 0]) rotate([270, 0, 0]) button_24mm_hole();
}
}

View File

@ -40,11 +40,8 @@ module middle_frame() {
// neutrik mounts for connector, switches
translate([0, (frame_y/2)-neutrik_panel_thickness, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([0, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
translate([-40, (frame_y/2)-neutrik_panel_thickness, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([-40, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
translate([40, (frame_y/2)-neutrik_panel_thickness, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([40, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
}
}

View File

@ -20,35 +20,26 @@ include <components.scad>
module solo_frame() {
difference() {
frame();
rotate([0, 0, 90]) frame();
// neutrik mounts for connector, switches
translate([0, (frame_y/2)-2.5, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([0, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
translate([-40, (frame_y/2)-2.5, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([-40, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
translate([40, (frame_y/2)-2.5, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([40, (frame_y/2)-neutrik_panel_thickness-4, 0]) frame_cutout();
translate([0, (frame_x/2)-2.5, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([-40, (frame_x/2)-2.5, 0]) rotate([90, 0, 0]) neutrik_d_mount();
translate([40, (frame_x/2)-2.5, 0]) rotate([90, 0, 0]) neutrik_d_mount();
// aux button holes
translate([-frame_x/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([-frame_y/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([0, 0, 0]) rotate([90, 0, 0]) button_24mm_hole();
translate([(frame_x/2)-neutrik_panel_thickness-4, 0, 0]) rotate([0, 0, 90]) frame_cutout();
translate([-frame_x/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([-frame_y/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([-40, 0, 0]) rotate([90, 0, 0]) button_24mm_hole();
translate([(frame_x/2)-neutrik_panel_thickness-4, -40, 0]) rotate([0, 0, 90]) frame_cutout();
translate([-frame_x/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([-frame_y/2+2.5, 0, 0]) rotate([0, 0, 270])
translate([40, 0, 0]) rotate([90, 0, 0]) button_24mm_hole();
translate([(frame_x/2)-neutrik_panel_thickness-4, 40, 0]) rotate([0, 0, 90]) frame_cutout();
translate([frame_x/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([frame_y/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([0, 0, 0]) rotate([90, 0, 0]) button_24mm_hole();
translate([-(frame_x/2)+neutrik_panel_thickness+4, 0, 0]) rotate([0, 0, 90]) frame_cutout();
translate([frame_x/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([frame_y/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([-40, 0, 0]) rotate([90, 0, 0]) button_24mm_hole();
translate([-(frame_x/2)+neutrik_panel_thickness+4, -40, 0]) rotate([0, 0, 90]) frame_cutout();
translate([frame_x/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([frame_y/2-2.5, 0, 0]) rotate([0, 0, 90])
translate([40, 0, 0]) rotate([90, 0, 0]) button_24mm_hole();
translate([-(frame_x/2)+neutrik_panel_thickness+4, 40, 0]) rotate([0, 0, 90]) frame_cutout();
}
}