Skip to content

Instantly share code, notes, and snippets.

@ryanpeach
Last active April 20, 2025 14:44
Show Gist options
  • Save ryanpeach/294cc25568b12d976024acf0e031a6b3 to your computer and use it in GitHub Desktop.
Save ryanpeach/294cc25568b12d976024acf0e031a6b3 to your computer and use it in GitHub Desktop.
Anycubic Photon Mono X2 funnel
// Anycubic Photon Mono X2 funnel
// build_x, build_y, build_z from manufacturer specs
build_x = 122; // mm, max X (left–right)
build_y = 196; // mm, max Y (front–back)
build_z = 200; // mm, max Z (vertical)
tolerance = 2; // Avoid the edges of the max build spec
// funnel parameters
wall_thickness = 3; // mm, wall thickness
base_dia = 25.4/2; // mm, spout diameter ≈1 in
// A small number
delta = 0.002;
// make top diameter the smaller of build_x/build_y so it fits on the plate
top_dia = (build_x < build_y) ? build_x - tolerance : build_y - tolerance;
funnel_z = build_z/2-tolerance;
module funnel() {
difference() {
// outer cone from top_dia → base_dia over full height
cylinder(h = funnel_z,
r1 = top_dia/2,
r2 = base_dia/2,
$fn = 128); // smooth circular profile
// inner hollow inset by wall_thickness
translate([0, 0, -delta])
cylinder(h = funnel_z + 2*delta,
r1 = top_dia/2 - wall_thickness,
r2 = base_dia/2 - wall_thickness,
$fn = 128);
}
}
// render it
rotate([180, 0, 0]) {
funnel();
}
@ryanpeach
Copy link
Author

Used to put the resin back in the bottle.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment