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:
- On flat surfaces adjacent to sharp corners
- Along the X and Y axes (because they have different resonant frequencies)
- At higher print speeds (more energy = more vibration)
- On printers with lighter, faster print heads (which are more responsive to vibrations)
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:
- Measure the resonant frequency of your printer's motion system (separately for X and Y axes).
- 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:
- Run the vibration compensation calibration from the printer menu
- Make sure the printer is on a stable, level surface (vibration from an unstable surface interferes with the measurement)
- 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:
- Running a calibration routine from the printer menu
- PrusaSlicer applies speed and acceleration limits based on the shaper configuration
- 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:
- Input shaping: Eliminates ghosting from mechanical vibration
- Pressure advance: Eliminates blobbing and under-extrusion at corners from filament pressure changes
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:
- Re-run the frequency measurement. Resonant frequencies can change if you modify the print head (new hotend, different fan setup).
- Check belt tension. Loose belts shift the resonant frequency away from the calibrated value.
- Make sure the accelerometer was mounted securely during measurement. A loose mount produces inaccurate data.
Corners are too rounded:
- Switch to a less aggressive shaper (ZV or MZV instead of EI).
- Reduce maximum acceleration — the shaper can only compensate so much.
Different quality on X vs Y axes:
- This is normal. Most printers have different resonant frequencies on each axis due to different masses and rigidity. That is why input shaping is configured per-axis.
Resources
- Klipper Input Shaper Documentation — Official documentation with detailed setup instructions
- Teaching Tech's Calibration Guide — Visual guide to tuning including input shaping
- Reddit r/klipperFirmware — Community discussion and troubleshooting
- 3DSearch — Find calibration models and test prints across Printables and other platforms
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?
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 →