Print quality

Ghosting and ringing — fix vibration echoes

Ghosting is the wavy echo pattern you see following a sharp feature (text, corner, hole) on a vertical wall. It's caused by mechanical vibration: the toolhead changed direction faster than the printer's frame could absorb, and the structure rang like a tuning fork. Modern firmwares solve this with input shaping, but a well-tensioned printer with the right acceleration limits beats input shaping on a loose printer every time.

7 min read Updated May 2026 PrintPal editorial
The 30-second answer

Three things, in order: (1) Tighten the belts — loose belts can't transmit the motion cleanly. (2) Bolt the printer to a heavy, rigid surface (concrete paver, granite slab, or solid IKEA tabletop). (3) Run input shaping calibration on Bambu (auto), Prusa MK4/CORE One (auto), or Klipper (SHAPER_CALIBRATE). Then lower acceleration in your slicer to the printer's tuned value (usually 5,000–10,000 mm/s²).

What causes ringing

When the toolhead changes direction (going around a corner, starting a new perimeter, finishing a hole), the motor instantly accelerates the head in a new direction. The frame — not perfectly rigid — flexes and then rebounds. That rebound prints as a visible wave on the next ~5–20 mm of wall.

The frequency of the wave is the printer's natural resonant frequency on that axis. Typical values:

Printer classX resonanceY resonance
i3 bedslinger (MK3S+, Ender 3)50–65 Hz30–45 Hz
i3 with input shaper (MK4)~60 Hz~40 Hz
CoreXY hobby (Voron 2.4)50–80 Hz50–80 Hz
Bambu X1 / P1 / H2D~70 Hz (factory tuned)~70 Hz

The slower the resonant frequency, the more visible ghosting becomes (Y on a heavy bedslinger is always worst).

Diagnose: is it X, Y, or both?

Print a calibration cube or any small object with sharp corners. Look at:

  • Vertical walls running along the X direction show Y-axis ringing (the head moves in Y to print that wall).
  • Vertical walls running along the Y direction show X-axis ringing.
  • If both look the same, you have a global frame stiffness issue (rare).

For a numerical reading, mount a phone-app-based accelerometer on the toolhead and run the Klipper resonance test. Bambu and Prusa MK4 do this automatically.

Fix 1: Tighten belts and pulleys

Loose belts cause ringing. The same belt also dictates what input shaping can compensate for. Always start here.

  • Pluck the belt — a clean low note (85–110 Hz on most 6 mm GT2 belts) indicates good tension.
  • Tighten any grub screws on pulleys (1.5 mm hex). They walk loose over time.
  • Replace belts that show cracks or stretched teeth (>2 years of daily use).

See Belt tension and calibration for the full procedure.

Fix 2: Improve mechanical rigidity

The frame and what it sits on dictate the resonant frequency. To raise it (which makes ghosting less visible):

  • Put the printer on a 30 kg+ stone slab (concrete paver, granite cutting board). Anti-vibration feet under the slab help further.
  • Tighten all frame screws on assembled-kit printers. The 2020 extrusion joints in Voron/RatRig/Ender 3 builds walk loose.
  • Don't put the printer on a wobbly IKEA Lack alone. Reinforce with diagonal bracing or put a paver on top.
  • Shorten Bowden tubes on Bowden printers — a flopping tube oscillates and adds artifacts.

Fix 3: Input shaping

Input shaping is a motion-control algorithm that anticipates the resonance and shapes the velocity profile to cancel it. It is the difference between 5,000 mm/s² printing with visible ringing and 10,000 mm/s² printing without.

  • Bambu (X1, P1, A1, H2D): auto-calibrated every print. You can re-run from Device → Cal → Vibration calibration.
  • Prusa MK4 / MK3.9 / CORE One: Calibration → Input Shaper from the LCD. Stock firmware auto-tunes.
  • Klipper (Voron, RatRig, custom): install an ADXL345 accelerometer, then SHAPER_CALIBRATE. Pick MZV or EI based on the resulting graph.
  • Marlin 2.1+: has input shaping but no on-printer auto-tune; measure by ear or by accelerometer and set values in Configuration_adv.h.

Fix 4: Lower acceleration in slicer

If input shaping isn't available or you've maxed it out, lower acceleration in the slicer to whatever produces clean walls. Test at:

  • 1,500 → 3,000 → 5,000 → 8,000 mm/s²

The acceleration value that produces clean walls is your real limit. Anything above is just heat in the steppers and noise in the room.

Fix 5: Jerk / square-corner velocity

"Jerk" in Marlin and "square corner velocity" in Klipper is the maximum velocity change the printer takes without decelerating. Set too high and corners ring. Recommended:

  • Marlin XY jerk: 7–10 mm/s.
  • Klipper square_corner_velocity: 5 mm/s default; 7–10 mm/s for tuned printers.

Fix 6: Hardware upgrades that help

  • Lighter toolhead. Every gram of toolhead mass lowers the X-resonance. CNC-machined aluminum extruder mounts and lightweight hotends help on bedslingers.
  • Linear rails replacing wheel-on-extrusion (common Voron/Ender mod) raise both X and Y resonance and reduce backlash.
  • Belt clips with set screws instead of zip-tied loops keep tension constant.

Related articles

Sources & further reading