Compare commits
5 Commits
b21cb75816
...
a7206add7c
Author | SHA1 | Date |
---|---|---|
Brian S. Stephan | a7206add7c | |
Brian S. Stephan | d70a2f90c6 | |
Brian S. Stephan | 0513da125f | |
Brian S. Stephan | e7543dceb0 | |
Brian S. Stephan | 45439cbf6d |
|
@ -5,45 +5,32 @@ Just some miscellaneous notes for any dear reader, or more likely, my own forget
|
|||
## Putting a BSS Stick Together
|
||||
|
||||
Assembly of a stick is pretty straightforward, but there are some choices that can make it easier or harder. The
|
||||
following is the most consistent way I've found to put one together. This is assuming a v4.1 or beyond stick, with two
|
||||
following is the most consistent way I've found to put one together. This is assuming a v4.2 or beyond stick, with two
|
||||
panels to make a long standard stick, and the frame made of pieces.
|
||||
|
||||
1. Prepare the frame top pieces --- `frame-piece-top-{left,right}`: this is your best shot to get auxillary buttons,
|
||||
1. Prepare the frame top pieces --- `frame-piece-top-left-or-right`: this is your best shot to get auxillary buttons,
|
||||
panel connectors, and the like installed, so do it now, and give them a good tighten. You shouldn't need to adjust
|
||||
these again, so finish their installation while the pieces are free.
|
||||
1. This of course includes decorative plates --- e.g. `misc-decorative-plate-aux-control-three-button-cluster` ---
|
||||
you may choose to use. These are held to the top pieces by the buttons or component mounting screws.
|
||||
2. Start the top panels --- `top-panel-(inset|overhang)-*`: you want both to get the components installed now
|
||||
when it's easy, and to make sure that the overall assembly works with your components, so again get your buttons,
|
||||
lever, etc., in place.
|
||||
lever, etc., in place. You can secure them at this point.
|
||||
1. If you are using a button decorative plate that spans two panels --- e.g.
|
||||
`src/misc-decorative-plate-dir_arc-plus-w-30mm-and-sega-2p-plus-one` --- don't tighten the buttons all the way,
|
||||
as you may need some wiggle to align the panels to the frame in a later step.
|
||||
2. If the above isn't the case, you can tighten all your buttons now.
|
||||
3. If using a lever, don't forget the lever mount spacer --- `src/misc-lever-mount-sanwa-seimitsu` --- if you want
|
||||
`src/misc-decorative-plate-dir_arc-plus-w-30mm-and-sega-2p-plus-one` --- take care to align the two panels as
|
||||
tightly as possible, and accurately, as they will be hard to adjust once everything is secured and in the frame.
|
||||
2. If using a lever, don't forget the lever mount spacer --- `src/misc-lever-mount-sanwa-seimitsu` --- if you want
|
||||
it, and tighten those mounting bolts now as well.
|
||||
3. Create the frame box by combining your `frame-piece-*` parts together. This will be relatively stable just via
|
||||
friction fit.
|
||||
4. Rest the frame top-up on a desk, and put the standoffs through the holes.
|
||||
5. Insert the top panels into the frame. The friction on this will probably be tight, and you may not be able to muscle
|
||||
it in on your own. Get the panel posts at least partially into the frame columns, in any event. If you get all the
|
||||
panels completely in, the next steps will be easier, but it's not imperative.
|
||||
6. Start the bolts for the top panels. Get it so that the bolts catch the standoffs, but don't tighten them completely.
|
||||
You will want some wiggle when connecting the bottom panels, which is maybe the hardest part. Depending on your bolts
|
||||
and how deep into the frame you got the top panels, you might need to push the standoffs up the column in order to
|
||||
catch them with the bolts.
|
||||
4. Rest the frame top-up on a desk, and put the standoffs through the holes. This will probably be tight, and you may
|
||||
even need a rubber mallet or similar to drive the standoffs through the holes.
|
||||
5. Insert the top panels into the frame.
|
||||
6. Insert the bolts for the top panels, make any last adjustments, and tighten them.
|
||||
7. At this point you have an open box with access to all your components. Do all of your wiring.
|
||||
1. Tighten the buttons and etc. if you didn't in step 2.
|
||||
2. TEST YOUR BOARD AND COMPONENTS NOW! You don't want to have to undo the rest of the steps for something trivial,
|
||||
trust me.
|
||||
8. Insert the bottom panels into the frame. This may be difficult. If you got the top panels into the frame in step 4,
|
||||
and left the bolts loose in step 5, you can make the standoffs rise outside of the frame column, which makes it
|
||||
easier to line up the standoffs with the bottom panel posts.
|
||||
9. Drive the bottom bolts into the standoffs. You probably don't have the panels all the way into the frame, but if you
|
||||
can at least get the standoffs in the posts, you can catch them with the bottom bolts, and then let them guide the
|
||||
panels into the frame.
|
||||
10. Tighten all the bolts. If you didn't get the top panels flush in step 4, you can apply the same logic as in step 8
|
||||
and tighten the bolts to guide the panels into the frame.
|
||||
8. Insert the bottom panels into the frame.
|
||||
9. Insert the bottom bolts for the bottom panels, and tighten them.
|
||||
|
||||
In the end, this should be extremely sturdy. None of the frame or panels should be loose at all, and you should be able
|
||||
to move, flip, gently toss, etc. the stick without anything moving or feeling loose.
|
||||
|
|
|
@ -27,17 +27,8 @@ perfect pattern, making the long lines stand out even more.
|
|||
seem to have issues with filling curves and you still want to try to maximize contact with walls. Concentric is great
|
||||
here if you dial it in.
|
||||
|
||||
Panels may have tiny gaps against the circular button cutouts; this is largely not a problem as buttom rims, decorative
|
||||
plates, etc. will cover it up. However, I've had some interesting results with:
|
||||
|
||||
* Initial layer line width: 0.42mm (down .08mm)
|
||||
* Initial layer height: 0.25mm (up .05mm)
|
||||
* Initial layer nozzle temperature: 230°C (up 10°C)
|
||||
* Initial layer bed temperature: 70°C (up 5°C)
|
||||
* Initial layer pattern: concentric
|
||||
|
||||
These are good defaults and print awesome parts, with the only exception being the top panels, which benefit from using
|
||||
a Hilbert curve initial layer pattern instead of concentric.
|
||||
The concentric pattern is a good default and prints awesome parts, with the only exception being the top panels, which
|
||||
benefit from using a Hilbert curve initial layer pattern instead of concentric.
|
||||
|
||||
## Materials
|
||||
|
||||
|
|
|
@ -164,32 +164,7 @@ module levermountcountersinks() {
|
|||
}
|
||||
|
||||
module base_panel() {
|
||||
difference() {
|
||||
union() {
|
||||
cube([panel_x, panel_y, panel_z], center=true);
|
||||
// add posts that sink into the frame, just to give
|
||||
// a somewhat more sturdy/tight connection
|
||||
translate([panel_to_frame_point_x, panel_to_frame_point_y, -panel_z])
|
||||
scale([1.5, 1.5, 0.1]) frame_hex_bolt_hole();
|
||||
translate([-panel_to_frame_point_x, panel_to_frame_point_y, -panel_z])
|
||||
scale([1.5, 1.5, 0.1]) frame_hex_bolt_hole();
|
||||
translate([panel_to_frame_point_x, -panel_to_frame_point_y, -panel_z])
|
||||
scale([1.5, 1.5, 0.1]) frame_hex_bolt_hole();
|
||||
translate([-panel_to_frame_point_x, -panel_to_frame_point_y, -panel_z])
|
||||
scale([1.5, 1.5, 0.1]) frame_hex_bolt_hole();
|
||||
}
|
||||
// the posts mentioned above need space for the actual hex bolts
|
||||
// used in connecting to the frame
|
||||
translate([panel_to_frame_point_x, panel_to_frame_point_y, -panel_z])
|
||||
scale([1, 1, 0.1]) frame_hex_bolt_hole();
|
||||
translate([-panel_to_frame_point_x, panel_to_frame_point_y, -panel_z])
|
||||
scale([1, 1, 0.1]) frame_hex_bolt_hole();
|
||||
translate([panel_to_frame_point_x, -panel_to_frame_point_y, -panel_z])
|
||||
scale([1, 1, 0.1]) frame_hex_bolt_hole();
|
||||
translate([-panel_to_frame_point_x, -panel_to_frame_point_y, -panel_z])
|
||||
scale([1, 1, 0.1]) frame_hex_bolt_hole();
|
||||
}
|
||||
|
||||
cube([panel_x, panel_y, panel_z], center=true);
|
||||
}
|
||||
|
||||
module base_bottom_panel() {
|
||||
|
@ -360,16 +335,6 @@ module frame() {
|
|||
translate([-panel_to_frame_point_x, panel_to_frame_point_y, 0]) frame_hex_bolt_hole();
|
||||
translate([panel_to_frame_point_x, -panel_to_frame_point_y, 0]) frame_hex_bolt_hole();
|
||||
translate([-panel_to_frame_point_x, -panel_to_frame_point_y, 0]) frame_hex_bolt_hole();
|
||||
|
||||
// slightly larger holes than the posts in the base_panel
|
||||
translate([panel_to_frame_point_x, panel_to_frame_point_y, frame_z/2-panel_z-5])
|
||||
scale([1.55, 1.55, 0.2]) frame_hex_bolt_hole();
|
||||
translate([-panel_to_frame_point_x, panel_to_frame_point_y, frame_z/2-panel_z-5])
|
||||
scale([1.55, 1.55, 0.2]) frame_hex_bolt_hole();
|
||||
translate([panel_to_frame_point_x, -panel_to_frame_point_y, frame_z/2-panel_z-5])
|
||||
scale([1.55, 1.55, 0.2]) frame_hex_bolt_hole();
|
||||
translate([-panel_to_frame_point_x, -panel_to_frame_point_y, frame_z/2-panel_z-5])
|
||||
scale([1.55, 1.55, 0.2]) frame_hex_bolt_hole();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ include <parameters.scad>
|
|||
include <components.scad>
|
||||
use <frame-left.scad>
|
||||
|
||||
module top_left_frame_piece() {
|
||||
module top_left_or_right_frame_piece() {
|
||||
piece_width = panel_support_width+frame_wall+frame_mount_column_width;
|
||||
intersection() {
|
||||
left_frame();
|
||||
|
@ -23,4 +23,4 @@ module top_left_frame_piece() {
|
|||
}
|
||||
}
|
||||
|
||||
top_left_frame_piece();
|
||||
top_left_or_right_frame_piece();
|
|
@ -1,26 +0,0 @@
|
|||
/*
|
||||
* SPDX-FileCopyrightText: © 2024 Brian S. Stephan <bss@incorporeal.org>
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*/
|
||||
|
||||
include <parameters.scad>
|
||||
include <components.scad>
|
||||
use <frame-right.scad>
|
||||
|
||||
module top_right_frame_piece() {
|
||||
piece_width = panel_support_width+frame_wall+frame_mount_column_width;
|
||||
intersection() {
|
||||
right_frame();
|
||||
difference() {
|
||||
// include the whole top wall (including mount columns)
|
||||
translate([0, (frame_y/2)-(piece_width/2), 0]) cube([frame_x, piece_width, frame_z], center=true);
|
||||
// ...minus the frame wall and lip on the right
|
||||
translate([frame_x/2-frame_wall/2, 0, 0])
|
||||
cube([frame_wall, frame_y, frame_z], center=true);
|
||||
// ...minus a slot for the combining piece to go into
|
||||
cube([frame_x, frame_y-(panel_support_width+frame_wall)*2, frame_z/4], center=true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
top_right_frame_piece();
|
Loading…
Reference in New Issue