Parametric open source reconstructions of Voron printed parts

Overview

The Parametric Voron

This repository contains Fusion 360 reconstructions of various printed parts from the Voron printers (https://vorondesign.com/). Unlike the CAD files provided by the Voron team, which are essentially just STEP files in F3D format, these files have full parametric design history turned on, and are easy to edit.

This is a community effort and it may take months, or even years, to recreate the full set of parts. If you would like to contribute, feel free to open a pull request. Parts are organized per Voron release, with the same directory structure and naming conventions used by the original Voron parts.

For inspiration as to what this could eventually become, take a look at the Fusion 360 Models available for the Railcore project (https://railcore.org/). Every part is fully parametric with design history, and the parts are all linked together into a master assembly. (You will need to open in Fusion 360 directly to see the history, since the web version does not show that.)

Design Guidelines

  • All parts should match the Voron original parts as closely as possible. However, very small details that do not affect functionality do not need to be perfectly reconstructed. Examples:
    • If a complex shape could be constructed from a loft, an extruded cut, or a combination of fillets, please use whichever is most expedient. It's not necessary to choose the one which most exactly matches the result achieved in the original part.
    • Fillets and chamfers should have the same radius as the original part, but only within 0.05mm.
  • Including Voron logos and branding is optional, but preferred. All text should remain editable - no vector text please. The Voron logo is available in parametric F3D and rendered vector SVG formats in the assets folder. The font used for branding is Play from Google Fonts.
  • User parameters should be used where possible, for anything the user is very likely to want to change (e.g. the length of an extrude for something like a panel thickness), or for values which are reused frequently within the design and might need to be changed. However: a working part with no user parameters is preferable to no working part at all! Feel free to open a PR even if your F3D doesn't use them.
  • A pair of parts that are mirror images of each other only needs to have one F3D file uploaded, to avoid duplication. It is the user's responsibility to flip the part as needed before printing in the slicer.
  • Use millimeter measurements throughout.

Standard Parameter Names

For consistency across parts, where possible, please use the following names for various standard parameters (all units are millimeters):

Parameter Name Definition
ab_belt_width Width of the AB belts
chamfer Default chamfer, typically 0.4mm
extrusion_width Extrusion width
panel_thickness Panel thickness, including foam tape and VHB as needed
rail_width Linear rail width
tolerance Tolerance added for good fit, typically 0.2mm
z_belt_distance Distance between the Z belts
z_belt_width Width of the Z belts

Design Tips

An easy way to reconstruct a part is to import the original piece from the official Voron F3D CAD, center it, then start drawing sketches around it to capture the main dimensions. As you build up the part, you can hide or show the original body to compare against your component, and see what else you need to do.

To do this:

  • Open the original CAD F3D file in Fusion 360.
  • Find the part you are interested in in the heirarchy view.
  • Right click, and select "Save Copy As".
  • Open the new part and make it editable. Click on the body, go to MODIFY -> Align, and select the origin.

Before starting work, you MUST do the following, otherwise you will find yourself having to start all over again:

  • Turn on design history: right click the top level item in the heirarchy, and select "Capture Design History."
  • Create a new component: ASSEMBLE -> New Component.
  • Name the component to match the name of the part.
  • Activate the component in the heirarchy.
  • When starting your first sketch, be sure to select a plane that is part of the new component, and not a face of the imported body. Hiding the imported body temporarily is a good way to ensure this.

While working, you can capture measurements like distances, XYZ coordinates, and radii, by selecting appropriate points, lines, and curves, in the original component, and by using the INSPECT -> Measure tool as needed.

Don't forget to save your work often, since Fusion 360 can be unstable when used with certain graphics drivers. If you have an Nvidia graphics card and are running Windows, switch to the Studio driver using Geforce Experience (use the three dots icon at the top right of the DRIVERS tab), it is much more stable.

Before exporting, you can delete the imported body from the heirarchy.

Always follow the two golden rules of Fusion 360:

  1. Before doing anything, create a component and make sure it's activated.
  2. Name your components, sketches, and so on.

It's important to be aware of some shortcomings of Fusion 360 that require workarounds:

  • Extrudes in "join" mode combine bodies based on what is visible in the viewport at the time the designer does the join. However, this information is not captured in the design history! If you go back and edit the extrude, or modify a user parameter, Fusion may recombine bodies in a way that breaks the rest of the timeline. The solution is to put bodies that should stay separate into separate components: extrude will not join bodies from different components.

Progress (as of 2021-09-06 01:33AM EDT)

Voron-2 (46/131, 35%)

  • TEST_PRINTS (1/3, 33%)
    • Filament Card Caddy 25
    • Filament Card
    • Voron_Design_Cube_v7
  • VORON2.4 (45/128, 35%)
    • Electronics_Compartment (2/15, 13%)
      • DIN_Brackets (2/8, 25%)
        • duet_duex_bracket_x2
        • lrs_psu_bracket_clip
        • pcb_din_clip_x3
        • ramps_bracket_x2
        • raspberrypi_bracket
        • rs25_psu_bracket_clip
        • skr_1.3_1.4_bracket_x2
        • skr_mini_e3_bracket_x2
      • LCD_Module (0/4, 0%)
        • [a]_mini12864_case_hinge
        • mini12864_case_front
        • mini12864_case_rear
        • mini12864_spacer
      • Plug_Panel (0/3, 0%)
        • [a]_keystone_blank_insert
        • plug_panel
        • plug_panel_filtered_mains
    • Exhaust_Filter (2/4, 50%)
      • [a]_exhaust_filter_mount_x2
      • [a]_filter_access_cover
      • exhaust_filter_grill
      • exhaust_filter_housing
    • Gantry (15/54, 28%)
      • [a]_z_belt_clip_lower_x4
      • [a]_z_belt_clip_upper_x4
      • z_chain_bottom_anchor
      • z_chain_guide
      • AB_Drive_Units (1/6, 17%)
        • [a]_cable_cover
        • [a]_z_chain_retainer_bracket_x2
        • a_drive_frame_lower
        • a_drive_frame_upper
        • b_drive_frame_lower
        • b_drive_frame_upper
      • Front_Idlers (2/6, 33%)
        • [a]_tensioner_left
        • [a]_tensioner_right
        • front_idler_left_lower
        • front_idler_left_upper
        • front_idler_right_lower
        • front_idler_right_upper
      • X_Axis (7/35, 20%)
        • XY_Joints (0/8, 0%)
          • [a]_endstop_pod_hall_effect
          • [a]_endstop_pod_microswitch
          • [a]_xy_joint_cable_bridge_generic
          • [a]_xy_joint_cable_bridge_igus
          • xy_joint_left_lower
          • xy_joint_left_upper
          • xy_joint_right_lower
          • xy_joint_right_upper
        • X_Carriage (7/27, 26%)
          • [a]_belt_clamp_x2
          • [a]_blower_housing_front
          • blower_housing_rear
          • hotend_fan_mount
          • probe_retainer_bracket
          • x_carriage_frame_left
          • x_carriage_frame_right
          • x_carriage_pivot_block
          • Bowden (0/5, 0%)
            • bowden_module_front
            • bowden_module_rear_generic
            • bowden_module_rear_igus
            • bsp_adapter
            • tl_collet_adapter
          • Direct_Feed (4/8, 50%)
            • [a]_connector_cover
            • [a]_guidler
            • [a]_latch
            • chain_anchor_generic
            • chain_anchor_igus
            • extruder_body
            • extruder_motor_plate
            • latch_shuttle
          • Printheads (0/6, 0%)
            • E3D_V6 (0/2, 0%)
              • printhead_front_e3dv6
              • printhead_rear_e3dv6
            • Slice_Mosquito (0/2, 0%)
              • printhead_front_mosquito
              • printhead_rear_mosquito
            • TriangleLab_Dragon (0/2, 0%)
              • printhead_front_dragon
              • printhead_rear_dragon
      • Z_Joints (3/3, 100%)
        • z_joint_lower_x4
        • z_joint_upper_hall_effect
        • z_joint_upper_x4
    • Panel_Mounting (10/12, 83%)
      • bottom_panel_clip_x4
      • bottom_panel_hinge_x2
      • corner_panel_clip_3mm_x12
      • corner_panel_clip_6mm_x4
      • midspan_panel_clip_3mm_x12
      • midspan_panel_clip_6mm_x3
      • z_belt_cover_a_x2
      • z_belt_cover_b_x2
      • Front_Doors (4/4, 100%)
        • door_hinge_x4
        • handle_a_x2
        • handle_b_x2
        • latch_x2
    • Skirts (1/16, 6%)
      • [a]_60mm_fan_blank_insert_x2
      • [a]_belt_guard_a_x2
      • [a]_belt_guard_b_x2
      • side_fan_support_x2
      • 250 (0/4, 0%)
        • front_rear_skirt_a_250_x2
        • front_rear_skirt_b_250_x2
        • side_skirt_a_250_x2
        • side_skirt_b_250_x2
      • 300 (0/4, 0%)
        • front_rear_skirt_a_300_x2
        • front_rear_skirt_b_300_x2
        • side_skirt_a_300_x2
        • side_skirt_b_300_x2
      • 350 (0/4, 0%)
        • front_rear_skirt_a_350_x2
        • front_rear_skirt_b_350_x2
        • side_skirt_a_350_x2
        • side_skirt_b_350_x2
    • Spool_Management (2/2, 100%)
      • bowen_retainer
      • spool_holder
    • Tools (2/2, 100%)
      • bed_hole_marking_template_x1_Rev2
      • rail_installation_guide_center_x2
    • Z_Drive (6/11, 55%)
      • [a]_belt_tensioner_a_x2
      • [a]_belt_tensioner_b_x2
      • [a]_stopgap_80T_hubbed_gear
      • [a]_z_drive_baseplate_a_x2
      • [a]_z_drive_baseplate_b_x2
      • z_drive_main_a_x2
      • z_drive_main_b_x2
      • z_drive_retainer_a_x2
      • z_drive_retainer_b_x2
      • z_motor_mount_a_x2
      • z_motor_mount_b_x2
    • Z_Endstop (1/1, 100%)
      • nozzle_probe
    • Z_Idlers (4/4, 100%)
      • [a]_z_tensioner_x4_6mm
      • [a]_z_tensioner_x4_9mm
      • z_tensioner_bracket_a_x2
      • z_tensioner_bracket_b_x2
    • ZipChain (0/7, 0%)
      • XY (0/3, 0%)
        • zipchain2_xy_end
        • zipchain2_xy_link_a
        • zipchain2_xy_link_b
      • Z (0/4, 0%)
        • zipchain2_z_end
        • zipchain2_z_link_a
        • zipchain2_z_link_b
        • zipchain2_z_link_b_locking

License

All parts are licensed under the GPLv3. For the purposes of the GPL license:

  • "Source code" means:
    • Original parametric Fusion 360 (F3D) files, with design history enabled, fully visible, and editable.
    • Similar files from Autodesk Inventor, Solidworks, and any other parametric CAD tool.
    • DXFs and other editable vector-based graphics files.
    • Bitmap image files such as PNGs and JPGs.
    • Any other files which would normally be considered "source code" in a software project covered by GPLv3, such as scripts and source code in any programming language.
  • "Object code" means:
    • STEP files, STL files, 3MF files, F3D or other parametric CAD files which have had design history or original sketches removed or disabled.
    • Any bit sequence compiled from the "source code" or any derivative thereof, into a form from which the original "source code" cannot be directly retrieved.

Unless otherwise specified, copyright for each F3D file is owned collectively by the individual who committed (or is listed as an author in the commit for) the initial version of the file, and any individual who committed (or is listed as an author in the commit for) any modifications to it.

Owner
Matthew Lloyd
Matthew Lloyd
Home Assistant custom components MPK-Lodz

MPK Łódź sensor This sensor uses unofficial API provided by MPK Łódź. Configuration options Key Type Required Default Description name string False MP

Piotr Machowski 3 Nov 01, 2022
Home-Assistant MQTT bridge for Panasonic Comfort Cloud

Panasonic Comfort Cloud MQTT Bridge Home-Assistant MQTT bridge for Panasonic Comfort Cloud. Note: Currently this brige is a one evening prototype proj

Santtu Järvi 2 Jan 04, 2023
Code reimplementation of some papers published in SAIL-Lab

SAIL SAIL-Lab统一代码库 Motivation 创建这个项目的动机最早来源于实验室组内成员相互Debug代码的时候遇到的麻烦。

Jianwen Chen 8 Nov 15, 2022
Lenovo Legion 5 Pro 2021 Linux RGB Keyboard Light Controller

Lenovo Legion 5 Pro 2021 Linux RGB Keyboard Light Controller This util allows to drive RGB keyboard light on Lenovo Legion 5 Pro 2021 Laptop Requireme

36 Dec 16, 2022
Christmasvillage-rpi - Raspberry Pi relay controller for ChristmasVillage.io

ChristmasVillage.io Relay Controller Links ChristmasVillage.io - Live Stream & Controls Youtube Instagram About This repository controls the light rel

Grant Windes 2 Feb 15, 2022
This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC

About This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC, issue #56 and f

Philippe Teuwen 28 Nov 21, 2022
A custom mechanical keyboard inspired by the CFTKB Mysterium

Env-KB A custom mechanical keyboard inspired by the CFTKB Mysterium Build Guide and Parts List What is to do? Right now for the first 5 PCBs I have, i

EnviousData 203 Jan 04, 2023
Sleep As Android integration for Home Assistant

Sleep As Android custom integration This integration will allow you to get events from your SleepAsAndroid application in a form of the sensor states

Igor 84 Dec 30, 2022
Smart Tech Automation Remote via Kinematics Gesture control for IoT devices

STARK Smart Tech Automation Remote via Kinematics Gesture control for IoT devices View Demo · Report Bug · Request Feature Table of Contents About The

Juseong (Joe) Kim 1 Jan 29, 2022
Vvim - Keyboardless Vim interactions

This is done via a hardware glove that the user wears. The glove detects the finger's positions and translates them into key presses. It's currently a work in progress.

Boyd Kane 8 Nov 17, 2022
A versatile program that uses the raspberry pi camera and provides it as a service

PiCameleon Is a daemon program meant to provide the RaspberryPi Camera as a service while running according to a configuration.

André Esser 52 Oct 16, 2022
An alternative to Demise-Assistant-Batch made entirely in Python for more capabilities.

Demise-Assistant-Python An alternative to Demise-Assistant-Batch made entirely in Python for more capabilities. IMPORTANT NOTE Demise-Assistant-Batch

SkelOrganisation 1 Nov 24, 2021
Technical Answers to Real-World Problems. Evolution of Watering Manually to Watering Automatically.

Automatic Watering System using Soil Moisture Sensor and RTC Timer with Arduino Technical Answers to Real-World Problems Know the plant, Grow the plan

NelakurthiSudheer 3 Jan 03, 2022
Doughskript interpreter for converting simple command sequences into executable Arduino C++ code.

Doughskript interpreter for converting simple command sequences into executable Arduino C++ code.

Svjatoslav 2 Jan 11, 2022
This Home Assistant custom component adds support for controlling Midea dehumidiferes on local network.

This is a custom component for Home assistant that adds support for Midea dehumidifier appliances via the local area network. midea-dehumidifier-lan H

Nenad Bogojevic 97 Jan 08, 2023
Modeling and Simulation of Satellite Servicing Manipulators

Modeling and Simulation of Satellite Servicing Manipulators Final Project for the course ENPM662: Introduction to Robot Modeling (Fall 2021). This pro

Adarsh M 1 Jan 24, 2022
Isaac Gym Environments for Legged Robots

Isaac Gym Environments for Legged Robots This repository provides the environment used to train ANYmal (and other robots) to walk on rough terrain usi

Robotic Systems Lab - Legged Robotics at ETH Zürich 372 Jan 08, 2023
A low power 1U Raspberry Pi cluster server for inexpensive colocation.

Raspberry Pi 1U Server There are server colocation providers that allow hosting a 1U server for as low as $30/month, but there's a catch: There are re

Paul Brown 627 Dec 31, 2022
🐱 Petkit feeder components for HomeAssistant

Petkit for HomeAssistant Installing Download and copy custom_components/xiaomi_miot folder to custom_components folder in your HomeAssistant config fo

62 Dec 29, 2022
ArduinoWaterHeaterIOT - IoT Probe of a solar PV water heating system - Arduino, Python, MQTT, MySQL

ArduinoWaterHeaterIOT IoT Probe of a solar PV water heating system - Arduino, Raspberry Pi, Python, MQTT, MySQL The Arduino sends the AC and DC watts

Jacques Fourie 1 Jan 11, 2022