Skip to content

v0 Foldable Display Mount #1064

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
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
30 changes: 30 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,30 @@
---

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/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.
36 changes: 36 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,36 @@
# Foldable Display Mount for v0

The v0 barely fits in my travel backpack because the display sticks
out a bit. However, with this mod, I can fold the display, which
allows me to transport my printer safely without worrying about
damaging the display. When I need to use the printer, I can easily
unfold the display for convenience.

![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.