Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions printer_mods/cdc/v0_Foldable_Display_Mount/.metadata.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---

title: v0 Foldable Display Mount

description: A foldable display mount for v0 that allows the entire printer to fit into my travel backpack.

mod_version: 1

cad:
- CAD/v0_Foldable_Display_Mount.scad

stl:
- STL/STL_FILE_1.stl
- STL/STL_FILE_2.obj
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like you missed removing these two lines from the template

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops, sorry... Thanks a lot for your review!

- STL/fixed_back_part_left.stl
- STL/fixed_back_part_right.stl
- STL/hinge_pin_x4.stl
- STL/movable_bottom_part.stl
- STL/movable_front_part_left.stl
- STL/movable_front_part_right.stl

images:
- Images/mounted_closed.jpg
- Images/mounted_open.jpg
- Images/unfold_use_fold.gif
- Images/open_position_holder.jpg
- Images/assembly_instructions.png
- Images/assembled.jpg
- Images/assembled_with_display.jpg

printer_compatibility:
- V0
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
include <BOSL2/std.scad>
include <BOSL2/joiners.scad>

$fn = $preview ? 64 : 256;

render = ""; // [hinge pin, fixed back part, movable front part, movable bottom part]
mirrored = false;

module __Customizer_Limit__ () {}

if (render == "hinge pin") {
hinge_pin();
} else if (render == "fixed back part") {
if (mirrored) { xflip() fixed_back_part();
} else { fixed_back_part(); }
} else if (render == "movable front part") {
if (mirrored) { xflip() movable_front_part();
} else { movable_front_part(); }
} else if (render == "movable bottom part") {
movable_bottom_part();
}

module hinge_pin () {
snap_pin("small");
}

thickness = 5;

module fixed_back_part () {
diff()
cuboid([22 - 4, 5.285, 6]) {
position(BACK+TOP)
left(3+1)
cuboid(anchor = FRONT+TOP, [8, 0.6, 3], chamfer = 0.6, edges = [BACK+TOP, BACK+BOT]);

foo = 8.725 - $parent_size.y;

position(TOP)
prismoid(anchor = BOT, size1 = point2d($parent_size), size2 = [$parent_size.x, foo], h = 3.2, shift = [0, ($parent_size.y - foo) / 2]);

tag("remove")
position(RIGHT+FRONT)
move([-3, 0, 1.5])
ycyl(anchor = RIGHT+FRONT, l = 2.285, d = 6) {
position(BACK)
ycyl(anchor = FRONT, l = 3, d = 3.5);
}

tag("remove")
position(LEFT+BACK+BOT)
move([0, -1.5, thickness / 2])
snap_pin_socket("small", anchor = BOT+BACK, orient = RIGHT, fixed = false);
}
}

module movable_front_part () {
extra_front = 3;

diff()
cuboid([12.4, 44.75 + extra_front, thickness], rounding = thickness / 2, edges = "X") {
tag("remove")
fwd(5.8 - extra_front / 2)
yflip_copy(12.5)
position(BOT)
cyl(anchor = BOT, d = 4, l = thickness - 4) {
tag("remove")
position(BOT)
cyl(anchor = BOT, d = 2.2, l = thickness + $parent_size.z);
}

tag("remove")
position(RIGHT+BACK+BOT)
move([0, -1.5, 0.5])
snap_pin_socket("small", anchor = BOT+BACK+LEFT, orient = LEFT, fixed = false);

tag("remove")
position(RIGHT+FRONT+BOT)
move([0, 1.5, 0.5])
snap_pin_socket("small", anchor = BOT+FRONT+LEFT, orient = LEFT, fixed = false);

tag("remove")
position(TOP)
fwd(5.8 - extra_front / 2)
cuboid(anchor = TOP, [$parent_size.x, 12.5 * 3/2, $parent_size.z / 2], rounding = $parent_size.z / 2, edges = [BOT+FRONT, BOT+BACK]);
}
}

module movable_bottom_part () {
diff()
cuboid([58.5, thickness, 34+2], rounding = thickness / 2, edges = [TOP+BACK, TOP+FRONT]) {
tag("remove")
xflip_copy()
position(RIGHT+TOP)
down(0.5)
snap_pin_socket("small", anchor = BOT+RIGHT, orient = LEFT, fixed = false);

extra_thickness = 1;

position(BOT)
cuboid(anchor = BOT, [$parent_size.x, 6, 5 + extra_thickness], rounding = extra_thickness, edges = [TOP+FRONT, TOP+BACK]) {
tag("remove")
position(BOT)
cuboid(anchor = BOT, [$parent_size.x, $parent_size.y - 2, $parent_size.z - extra_thickness], rounding = ($parent_size.y - 2) / 2, edges = [TOP+FRONT, TOP+BACK]);

position(BOT+BACK)
cuboid(anchor = TOP+BACK, [$parent_size.x, extra_thickness, 5]);
}
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
33 changes: 33 additions & 0 deletions printer_mods/cdc/v0_Foldable_Display_Mount/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Foldable Display Mount for v0

A foldable display mount for v0 that allows the entire printer to fit
into my travel backpack.

![photo](./Images/mounted_closed.jpg)
![photo](./Images/mounted_open.jpg)
![photo](./Images/unfold_use_fold.gif)
![photo](./Images/open_position_holder.jpg)

## Assembly instructions

This mod is designed for easy assembly without the need for additional
hardware. All parts, including the hinges, are 3D printed.

When the pieces are first put together, they feel a very loose. Don’t
worry! Once you attach them to the frame and the display, they will
fit together perfectly with just enough looseness to allow for
folding.

The following pictures demonstrate how to assemble all the parts:
![photo](./Images/assembly_instructions.png)
![photo](./Images/assembled.jpg)
![photo](./Images/assembled_with_display.jpg)

## Printing

All STL files are positioned in the correct orientation for printing.
The file [all\_in\_one.stl](STL/all_in_one.stl) includes all the
necessary parts arranged on a single build plate. You can use the
standard Voron print settings for printing.


Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading