input shapingprint qualityghostingringingKlipperprint speed

Input Shaping Explained: Print Faster Without Ghosting

If you have ever printed at high speeds and noticed wavy patterns on flat surfaces, especially around corners and sharp features, you have seen ghosting (also called ringing). It is one of the most common print quality issues, and for years the only solution was to slow down.

Input shaping changed that. It is a software technique that lets you print significantly faster without sacrificing quality. Every major modern printer — Bambu Lab, Prusa, and any Klipper-based machine — uses some form of input shaping. Understanding what it does and how to tune it will help you get the most from your printer.

What Causes Ghosting?

To understand input shaping, you first need to understand the problem it solves.

When your print head changes direction — at a corner, around a curve, or at the edge of an infill line — the sudden deceleration and acceleration creates vibrations in the printer frame and motion system. These vibrations cause the nozzle to oscillate slightly, leaving a pattern of waves on the print surface that echo the shape of whatever feature caused the direction change.

The effect is most visible:

The oscillation follows a predictable pattern based on the printer's resonant frequency — the natural frequency at which the frame and motion system vibrate. This predictability is exactly what makes input shaping possible.

How Input Shaping Works

Input shaping is a feedforward control technique originally developed for industrial CNC machines and robotic arms. The concept is straightforward:

  1. Measure the resonant frequency of your printer's motion system (separately for X and Y axes).
  2. Apply a filter to the motion commands that cancels out the vibrations at those frequencies.

The filter works by splitting each movement command into two (or more) carefully timed pulses. When the printer executes these pulses, the vibration from the first pulse is canceled by the vibration from the second pulse. They are phase-shifted to destructively interfere.

Think of it like noise-canceling headphones for your printer. The headphones listen to the noise and generate an inverse wave to cancel it. Input shaping predicts the vibration pattern and generates inverse movements to cancel it.

Types of Input Shapers

Different input shaping algorithms trade off between vibration suppression and the amount of smoothing they apply to the motion path:

ZV (Zero Vibration): The simplest shaper. Applies minimal smoothing, preserving sharp corners. Good for low-speed printing but less effective at high speeds.

MZV (Modified Zero Vibration): Better vibration suppression than ZV with slightly more smoothing. A good middle ground.

EI (Extra Insensitive): More aggressive vibration suppression that handles a wider range of frequencies. Applies more smoothing, which can round sharp corners slightly.

2HUMP_EI and 3HUMP_EI: The most aggressive shapers. Excellent at suppressing vibrations across a wide frequency range but apply significant smoothing. Best for printers with poorly characterized resonances.

For most printers, MZV or EI provides the best balance. Bambu Lab printers use their own proprietary input shaping algorithm that is tuned per model.

Setting Up Input Shaping on Klipper

Klipper has excellent built-in support for input shaping. Here is how to set it up:

Step 1: Install an Accelerometer

Input shaping requires measuring your printer's resonant frequencies. The most reliable way is with an ADXL345 accelerometer attached to the print head.

You can get an ADXL345 accelerometer module for a few dollars. Wire it to your printer's control board via SPI. The Klipper documentation has detailed wiring instructions for common boards.

Step 2: Run the Resonance Test

With the accelerometer mounted, run Klipper's resonance test:

SHAPER_CALIBRATE

This command moves the print head at increasing frequencies and measures the resulting vibrations. It produces a frequency response graph showing the resonant peaks for both X and Y axes.

Step 3: Apply the Recommended Shaper

Klipper analyzes the frequency data and recommends the best input shaper type and frequency for each axis. Apply them in your printer.cfg:

[input_shaper]
shaper_freq_x: 48.6
shaper_freq_y: 36.2
shaper_type_x: mzv
shaper_type_y: ei

Your frequencies will differ — use the values from your specific measurement.

Step 4: Test Print

Print a calibration cube or a test model with flat surfaces and sharp corners. Compare to a print made before input shaping. The ghosting reduction should be immediately visible.

Input Shaping on Bambu Lab Printers

Bambu Lab printers come with input shaping pre-configured and auto-tuned. The vibration compensation calibration runs automatically during initial setup and can be re-run from the printer's menu.

If you notice ghosting on a Bambu Lab printer:

  1. Run the vibration compensation calibration from the printer menu
  2. Make sure the printer is on a stable, level surface (vibration from an unstable surface interferes with the measurement)
  3. Check that all belts are properly tensioned

The Bambu Lab slicer (Bambu Studio / OrcaSlicer) automatically applies appropriate speed profiles that account for input shaping limits.

Input Shaping on Prusa Printers

Prusa's newer printers (MK4, MK4S, XL) include input shaping support through their PrusaSlicer integration. The setup process involves:

  1. Running a calibration routine from the printer menu
  2. PrusaSlicer applies speed and acceleration limits based on the shaper configuration
  3. No manual configuration of frequencies needed — the printer handles it automatically

For older Prusa printers (MK3S and earlier) running stock Marlin firmware, input shaping is not available. Consider upgrading to Klipper firmware for input shaping support. The Prusa Knowledge Base has resources on this topic.

How Much Faster Can You Actually Print?

This is the question everyone asks, and the answer depends on your printer:

Without input shaping: Most printers produce clean results at 40-80 mm/s. Beyond that, ghosting becomes increasingly visible.

With input shaping: Clean results at 100-200 mm/s are achievable on well-tuned machines. Some printers can go even faster, but other factors (flow rate, pressure advance, cooling) become the limiting factor before ghosting returns.

The practical speed improvement is typically 50-100% for most users. That means a print that took 4 hours might finish in 2-2.5 hours without any quality loss. Over a year of printing, that adds up to a massive time savings.

Input Shaping and Pressure Advance

Input shaping works best when combined with pressure advance (also called linear advance in Marlin). While input shaping handles the vibration artifacts from direction changes, pressure advance handles the extrusion artifacts:

Together, they allow high-speed printing with both clean surfaces and crisp corners. See our pressure advance guide for details on tuning that side of the equation.

Troubleshooting

Input shaping is enabled but ghosting persists:

Corners are too rounded:

Different quality on X vs Y axes:

Resources

Input shaping is one of the biggest quality-of-life improvements in modern 3D printing. If your printer supports it and you have not set it up yet, you are leaving free performance on the table.

Ready to print faster?

BG

Written by Basel Ganaim

Founder of 3DSearch. Passionate about making 3D printing accessible to everyone. When not building tools for makers, you can find me tweaking slicer settings or designing functional prints.

Learn more about 3DSearch →

Search for related models on 3DSearch

Find 3D printable models across Printables, Thingiverse, and Cults3D in one search. Get AI-powered slicer settings for your printer.

Search 3DSearch →