Disclaimer: This is an independent resource site.
Not affiliated with the Voron project or its development team.
<article class="guide-article">
<header>
<h1>Voron Klipper Probe Calibration Guide</h1>
<p class="lead">Achieve first-layer perfection with properly calibrated Z probes on your Voron printer.</p>
</header>
<section>
<h2>Supported Probes on Voron Builds</h2>
<p>
Voron printers commonly use inductive probes (PL-08N, Omron TL-Q5MC2), the Voron Tap, or Klicky/QuickDraw probe systems. Each has different calibration considerations:
</p>
<ul>
<li><strong>Inductive probes:</strong> Non-contact, reliable on smooth PEI sheets. Affected by bed temperature (metal expands). Requires temperature compensation.</li>
<li><strong>Voron Tap:</strong> Contact probe integrated into the toolhead. Very accurate but requires careful Z-offset setting. No temperature drift.</li>
<li><strong>Klicky/QuickDraw:</strong> Dockable microswitch probes. Highly accurate but need routine dock alignment checks.</li>
</ul>
</section>
<section>
<h2>Step 1: Verify Probe Accuracy</h2>
<p>
Before setting Z-offset, verify that your probe produces consistent readings. Run the Klipper probe accuracy test:
</p>
<pre><code>PROBE_ACCURACY SAMPLES=10
</code></pre>
<p>
The output shows the mean, median, range, and standard deviation of probe readings. Acceptable results:
</p>
<ul>
<li>Inductive probe: range < 0.010mm, standard deviation < 0.003mm</li>
<li>Voron Tap: range < 0.005mm, standard deviation < 0.001mm</li>
<li>Klicky/QuickDraw: range < 0.008mm, standard deviation < 0.002mm</li>
</ul>
<p>
If your probe shows higher variance, check for mechanical issues: loose probe mounting, debris on the bed surface, or electrical interference on the probe signal wires.
</p>
<h3>Improving Probe Accuracy</h3>
<ul>
<li>Reduce `probe_samples` from the default 3 to 2 for speed, but only after confirming good repeatability.</li>
<li>Use a slow `probe_speed` (2-5 mm/s). Higher speeds cause probe bounce.</li>
<li>Set `probe_samples_tolerance` to 0.015 and `probe_samples_tolerance_retries` to 5 for automatic re-probing on bad samples.</li>
</ul>
</section>
<section>
<h2>Step 2: Set Z-Offset</h2>
<p>
The Z-offset is the difference between the probe trigger point and the nozzle tip. This is configured in the `[probe]` section:
</p>
<pre><code>[probe]
pin: PC14
x_offset: 0.0
y_offset: 25.0
z_offset: 0.0
speed: 5.0
samples: 2
samples_tolerance: 0.015
samples_tolerance_retries: 5
</code></pre>
<h3>Manual Z-Offset Calibration</h3>
<p>The paper test method works well on Voron printers:</p>
<ol>
<li>Home all axes.</li>
<li>Move nozzle to the center of the bed: `G1 X125 Y125 F6000`</li>
<li>Lower the nozzle close to the bed: `G1 Z0.1 F300`</li>
<li>Use `TESTZ Z=-0.05` to lower until a piece of paper drags with light friction.</li>
<li>Accept the Z-offset with `ACCEPT`. Klipper saves the value.</li>
<li>Run `SAVE_CONFIG` to persist.</li>
</ol>
</section>
<section>
<h2>Step 3: Temperature Compensation (Inductive Probes)</h2>
<p>
Inductive probes drift as the bed heats. The metal bed surface expands and changes the probe-to-bed gap. Klipper supports automatic temperature compensation:
</p>
<pre><code>[temperature_probe bed_temp_probe]
sensor_type: Generic 3950
sensor_pin: PC5
min_temp: 0
max_temp: 120
</code></pre>
<p>Then calibrate the compensation curve:</p>
<pre><code>PROBE_CALIBRATE_TEMP_COMP
</code></pre>
<p>
Follow the on-screen prompts. Klipper will heat the bed in steps and record probe drift at each temperature. The resulting compensation curve is automatically applied during prints.
</p>
</section>
<section>
<h2>Step 4: Bed Mesh Calibration</h2>
<p>
Run a bed mesh after setting Z-offset and temperature compensation:
</p>
<pre><code>BED_MESH_CALIBRATE
</code></pre>
<p>
For Voron 2.4 and Trident, a 7x7 mesh (or 9x9 on 350mm builds) captures the bed surface accurately. Use `adaptive` meshing on Voron 2.4 if you have Z-tilt:
</p>
<pre><code>QUAD_GANTRY_LEVEL
G28 Z
BED_MESH_CALIBRATE
</code></pre>
<p>
Always run QGL (Quad Gantry Leveling) before bed meshing on Voron 2.4 to ensure the gantry is trammed to the bed.
</p>
</section>
<section>
<h2>Step 5: Verify First Layer</h2>
<p>
After calibration, print a single-layer test square (e.g., 100x100mm, 0.2mm height). Inspect the first layer:
</p>
<ul>
<li>Too high: lines don't squash together, gaps visible between extrusions → lower Z-offset by 0.02-0.05mm</li>
<li>Too low: ridges form, nozzle drags through previous lines, elephant's foot → raise Z-offset by 0.02-0.05mm</li>
</ul>
</section>
<section>
<h2>Per-Probe Reference</h2>
<table>
<thead>
<tr><th>Probe Type</th><th>Typical Z-Offset</th><th>Temp Drift</th><th>Repeatability</th></tr>
</thead>
<tbody>
<tr><td>Omron TL-Q5MC2</td><td>1.2-1.8mm</td><td>0.01-0.03mm (25-110°C)</td><td>±0.005mm</td></tr>
<tr><td>PL-08N</td><td>1.5-2.2mm</td><td>0.02-0.05mm (25-110°C)</td><td>±0.008mm</td></tr>
<tr><td>Voron Tap</td><td>0.0-0.5mm</td><td>None</td><td>±0.002mm</td></tr>
<tr><td>Klicky</td><td>0.5-1.0mm</td><td>None</td><td>±0.003mm</td></tr>
</tbody>
</table>
</section>
<section class="summary">
<h2>Summary</h2>
<p>
Proper probe calibration on Voron printers involves: verifying probe accuracy with PROBE_ACCURACY, setting the Z-offset via paper test or automation, applying temperature compensation for inductive probes, running a bed mesh, and validating with a first-layer print. Aim for probe repeatability under 0.005mm range and Z-offset accuracy within 0.02mm. Save your configuration with SAVE_CONFIG after each calibration step.
</p>
</section>
</article>