Elegoo Neptune 4 / 4 Pro extrusion calibration (rotation_distance)

The stock Elegoo Neptune 4 / 4 Pro rotation_distance is 28.7086 mm per revolution. That is the starting point in its Klipper config — tune it once with the mark-and-measure test and the extruder tracks reality. The rotation distance & e-steps calculator does the correction math and prints the exact line to paste; the full calibration guide explains the test in detail.

28.7086

stock rotation_distance (mm per revolution) — Elegoo Neptune 4 / 4 Pro

PrinterElegoo Neptune 4 / 4 Pro
Stock firmwareKlipper (rotation_distance)
Extruderdual-gear direct drive, 5.2:1 gear ratio
Stock default28.7086 mm per revolution (gear_ratio: 52:10)
Worked example100 mm requested, 97 mm measured → 27.8473

The Neptune 4 family ships with Elegoo’s Klipper fork, and the stock extruder config pairs rotation_distance 28.7086 with a 52:10 gear ratio — the 5.2:1 reduction is why the number sits above 28. This default is a community-verified value consistent with the stock config — manufacturers revise hardware without notice, so treat it as the starting point the calibration test then refines. Source.

How to calibrate on the Elegoo Neptune 4 / 4 Pro

  1. Heat the hotend to normal print temperature and mark the filament exactly 120 mm above the extruder inlet with a ruler and a fine marker or tape flag.
  2. Extrude 100 mm slowly. From a console send G91, then G1 E100 F60 — slow, so back-pressure does not skew the measurement. If Klipper rejects the move, set max_extrude_only_distance to at least 101 under [extruder] and RESTART first.
  3. Measure what actually went through. Measure from the inlet to the mark again — actual extrusion is 120 − remainder (23 mm remaining means 97 mm extruded).
  4. Compute the new value. new rotation_distance = old × actual ÷ requested — with the stock 28.7086 and 97 mm measured: 28.7086 × 97 ÷ 100 = 27.8473. Note the direction: under-extrusion pushes rotation_distance down. The calculator does this arithmetic for you.
  5. Save in printer.cfg. Paste rotation_distance: 27.8473 under [extruder] (leave gear_ratio: 52:10 as it is), then RESTART. Klipper has no M500 — the config file is the save.
  6. Confirm. Repeat the test once; the mark should land 20 mm from the inlet. Within about ±0.5 mm is measurement noise, not a reason to iterate.

Notes for the Elegoo Neptune 4 / 4 Pro

This value is community-verified against the stock Elegoo config. Keep the gear_ratio line untouched when you change rotation_distance — Klipper applies the ratio on top, and editing both doubles the correction.

Frequently asked questions

What is the stock rotation distance on the Elegoo Neptune 4 / 4 Pro?
The stock rotation_distance is 28.7086 mm per motor revolution, paired with gear_ratio: 52:10 in the stock config. This default is a community-verified value consistent with the stock config — manufacturers revise hardware without notice, so treat it as the starting point the calibration test then refines. Run the mark-and-measure test once to tune it for your specific machine.

How do I change rotation distance on the Elegoo Neptune 4 / 4 Pro?
Edit rotation_distance under [extruder] in printer.cfg and send RESTART (or paste the new value and use SAVE_CONFIG if you set it via a console macro). Klipper has no M500 — the value lives in the config file.

What is the formula for the new rotation_distance?
new rotation_distance = old × actual ÷ requested. If you asked for 100 mm and measured 97 mm, the value goes down: 28.7086 × 97 ÷ 100 = 27.8473. This is inverted versus Marlin e-steps, which go up for the same under-extrusion.

Can I use e-steps (M92) on the Elegoo Neptune 4 / 4 Pro?
No — the Elegoo Neptune 4 / 4 Pro runs Klipper, which only understands rotation_distance. M92 has no effect. If a guide gives you e-steps, convert: rotation_distance = (full steps per rotation × microsteps) ÷ steps per mm, accounting for any gear_ratio in the config.

How often should I recalibrate extrusion on the Elegoo Neptune 4 / 4 Pro?
After any change in the drive path — extruder gears, motor, hotend or extruder assembly — and whenever every print shows consistent over- or under-extrusion across filaments. It survives filament swaps; per-filament differences belong in the slicer’s flow setting, not in rotation_distance.