Much of this guide is specific to printers running Klipper.
This guide was originally written for the Voron community, however all of the tuning sections should work on any Klipper printer. Some notes and hardware troubleshooting tips are still Voron specific, however.
-
My SuperSlicer profiles are located 📄here.
-
If you have issues, comments, or suggestions about the guide, please let me know on GitHub issues or via Discord: 📄Ellis#4980
-
For issues not directly related to the guide content itself, or for troubleshooting & print help, please use the public help channels in the 📄Voron Discord (or the appropriate community for your printer).
-
I can't be everyone's personal troubleshooting assistant - there are lots of people hanging out in the public channels who can help!
-
-
You can find the bed models and textures I am using 📄here. The bed texture I am using in some of the older screenshots is from 📄VoronUsers.
-
Thank you to bythorsthunder for help with testing these methods and providing some of the photos.
-
⚠️ = ❗Please pay extra attention to items marked with this.❗ -
📄 = Link to another page.
-
📌 = Jump to section (on same page).
-
⚠️ Important Checks
-
Print Tuning
Essentials. Read/follow these in order shown.- Build Surface Adhesion
- First Layer Squish
- Pressure Advance
- Lines Method
- Tower Method
- Fine-Tuning and What to Look For
- Extrusion Multiplier
- Background
- Methods I'm Not a Fan Of
- Method
- PA / EM Oddities
- Slight Perimeter Gapping
- Slight Corner Gapping
- Cooling and Layer Times
- Signs of Overheating
- How to Fix It
- Retraction
- Infill/Perimeter Overlap
-
Printer Tuning
Mostly optional. For pushing limits, or for troubleshooting.
"Voron V2 Gantry Squaring" is the only essential.- Determining Maximum Volumetric Flow Rate
- Why?
- Approximate Values
- How Volumetric Flow Rate Relates to Print Speed
- Formulas
- Method
- Theory vs Reality
- Determining Motor Currents
- Determining Initial
run_current
- Determining Maximum
run_current
- Determining
hold_current
- Determining Initial
- Determining Maximum Speeds and Accelerations
- Method
- Usage of the
TEST_SPEED
Macro
- Voron V2 Gantry Squaring
- Determining Maximum Volumetric Flow Rate
-
Miscellaneous
- Stepover (The black magic secret for better overhangs)
- Useful Macros
- Conditional Homing
- Conditional QGL
- Beeper
- LCD RGB
- My Pause/Resume Macros (For Runouts, Filament Swaps, and Manual Pauses)
- M600 (Filament Change) Alias
- Example Filament Sensor Config
- Basic Filament Switch Sensor
- Smart Filament Sensor
- Pause
- Resume
- Cancel
- Octoprint Configuration
- Filament Sensor Management
- Parking
- Off
- Shut Down Pi
- As option in LCD menu
- Dump Variables
- Get Variable
- Replace
M109
/M190
WithTEMPERATURE_WAIT
- Passing Slicer Variables to PRINT_START
- Passing Temperatures
- SuperSlicer
- Prusa Slicer
- Cura
- Passing Temperatures
- Controlling Slicer Temperature G-Code Order (Simple Method)
- My Setup (since people ask a lot)
-
Troubleshooting
Even without issues, it's worth looking through some of these to familiarize yourself with things to look out for. Especially thermal drift under "First Layer / Squish Consistency Issues"- BMG Clockwork Backlash Issues (Repeating Patterns / "Wood Grain")
- Bulging
- Bulging Layers
- Bulges at STL Vertices
- Bulging Patterns on Overhangs (SS)
- Crimps
- Error: "Command Format Mismatch"
- Extruder Skipping
- First Layer / Squish Consistency Issues
- Thermal Drift
- First Layer Conistency
- Squish Consistency (Between Prints)
- Layer Shifting
- Mechanical
- Speeds and Accelerations
- Electrical
- PLA is Overheating
- Pockmarks
- VFAs (Vertical Fine Artifacts)
- Repeating VFAs With ~2mm Spacing
- Repeating VFAs With Non-2mm Spacing
- Slicer is Putting Heating G-codes in the Wrong Place/Order
- Small Infill Areas Look Overextruded