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).
- 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.
- Support my drinking habits:
⚠️ = ❗Please pay extra attention to items marked with this.❗- 📄 = Link to another page.
- 📌 = Jump to section (on same page).
- Before We Begin
⚠️ Important Checks
- A Note About Line Width
- Setting Expectations
Essentials. Read/follow these in order shown.
- Build Surface Adhesion
- First Layer Squish
- Pressure Advance
- Why PA is Needed
- What PA Does
- Lines Method
- Fine-Tuning and What to Look For
- Tower Method
- Extrusion Multiplier
- Background
- Method
- Rationale & Dimensional Accuracy
- PA / EM Oddities
- Slight Perimeter Gapping
- Slight Corner Gapping
- Cooling and Layer Times
- Signs of Overheating
- How to Fix It
- Retraction
- If You Are Having Persistent Issues
- With PETG
- If You Are Having Persistent Issues
- Infill/Perimeter Overlap
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
- Flow Dropoff
- 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
- Stepover (The black magic secret for better overhangs)
- Useful Macros
- Conditional Homing
- Conditional QGL
⚠️ Hotend Fan RPM Monitoring- My Pause/Resume Macros (For Runouts, Filament Swaps, and Manual Pauses)
- Pause
- Resume
- Cancel
- Octoprint Configuration
- M600 (Filament Change) Alias
- Example Filament Sensor Config
- Basic Filament Switch Sensor
- Smart Filament Sensor
- Filament Sensor Management
- Beeper
- LCD RGB
- 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)
Even without issues, you should look through these to fmiliarize 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
- Perimeter Separation
- 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