<p>We have a <a href="https://www.tronxy3d.com/collections/x5sa-400-series/products/tronxy-new-version-x5sa-400-pro" rel="nofollow noreferrer">Tronxy X5SA 400 Pro</a> which uses a <a href="https://www.tronxy3d.com/products/tronxy-black-tr-auto-leveling-sensor-3d-printer-kit" rel="nofollow noreferrer">TR sensor</a> to &quot;auto-level&quot; the printing bed.  It samples 16 positions across the bed (4 x 4) and provides a +/- level from its initial measurement.  For example, it might produce a grid like this:</p>
<pre><code>+0.280   +0.155   -0.108   +0.127   
-0.267   -0.010   -0.005   -0.218   
-0.114   -0.020   +0.004   +0.000   
-0.143   +0.110   +0.253   -0.270  
</code></pre>
<p>As you can see in this contrived example, measurements toward the center are closer to a Z-offset of 0 because that is what it samples first; toward the edge, it can be off by ~0.3mm.  By turning the sprung leveling screws, I can usually get it to within 0.250mm across the bed.</p>
<p>However, 0.250mm variance is still too much for 0.1mm-layer prints because at the center it is right on, but on the edge it is 2-3x the layer height above the bed...or worse, in the opposite case, the head will crash if the bed curves in the +Z direction; thus, I have to babysit the first layer and manually +/-Z as needed.</p>
<p>Prints in the center of the bed are great, but adhesion can be poor on the first layer when it prints near the edge, and part thickness can be off by ~1-3 layers.</p>
<p><strong>Question:</strong></p>
<p>Is there a way to tell Cura about these 16x calibration points and have it adjust the print head with a linear extrapolation between points?</p>
<p>(I did find the <a href="https://marketplace.ultimaker.com/app/cura/plugins/fieldofview/ZOffsetPlugin" rel="nofollow noreferrer">Z Offset Setting plugin</a>, but that appears to support only a single-valued offset.)</p>
<p><a href="https://i.sstatic.net/ngvbG.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/ngvbG.png" alt="Tronxy TR sensor" /></a></p>

CC BY-SA 4.0
2024-01-02T03:30:56.140Z
As far as I'm aware, this kind of correction is *usually* performed by the printer's firmware, rather than the slicer.
craftxbox
CC BY-SA 4.0
2024-01-02T03:33:14.660Z
@craftxbox, I had hoped that it does too...but the behavior of the printer (ie, high in some spots, or crashing in others) doesn't lead me to believe that it does.  When I run a "auto level" on the printer LCD console, it doesn't save the settings.  It appears to be only informational so I can turn the adjustment screws.
KJ7LNW
CC BY-SA 4.0
2024-01-02T03:35:53.220Z
It may be possible to configure and upload a customized version of Marlin Firmware to do this, but that *would* be a fairly large undertaking if someone hasn't already made configurations for your printer, as it seems TronXY only makes firmware available upon request.
craftxbox
<ultimaker-cura><z-axis><calibration><z-probe><dimensional-accuracy>
Can Cura apply multiple Z-offsets across the bed to "flatten" the print area?
KJ7LNW
# Can Cura apply multiple Z-offsets across the bed to "flatten" the print area?

(Asked by: username_0 on 2024-01-01)

We have a [Tronxy X5SA 400 Pro](https://www.tronxy3d.com/collections/x5sa-400-series/products/tronxy-new-version-x5sa-400-pro) which uses a [TR sensor](https://www.tronxy3d.com/products/tronxy-black-tr-auto-leveling-sensor-3d-printer-kit) to "auto-level" the printing bed. It samples 16 positions across the bed (4 x 4) and provides a +/- level from its initial measurement. For example, it might produce a grid like this:

```
+0.280   +0.155   -0.108   +0.127   
-0.267   -0.010   -0.005   -0.218   
-0.114   -0.020   +0.004   +0.000   
-0.143   +0.110   +0.253   -0.270  

```

As you can see in this contrived example, measurements toward the center are closer to a Z-offset of 0 because that is what it samples first; toward the edge, it can be off by ~0.3mm. By turning the sprung leveling screws, I can usually get it to within 0.250mm across the bed.

However, 0.250mm variance is still too much for 0.1mm-layer prints because at the center it is right on, but on the edge it is 2-3x the layer height above the bed...or worse, in the opposite case, the head will crash if the bed curves in the +Z direction; thus, I have to babysit the first layer and manually +/-Z as needed.

Prints in the center of the bed are great, but adhesion can be poor on the first layer when it prints near the edge, and part thickness can be off by ~1-3 layers.

**Question:**

Is there a way to tell Cura about these 16x calibration points and have it adjust the print head with a linear extrapolation between points?

(I did find the [Z Offset Setting plugin](https://marketplace.ultimaker.com/app/cura/plugins/fieldofview/ZOffsetPlugin), but that appears to support only a single-valued offset.)

[![Tronxy TR sensor](https://i.sstatic.net/ngvbG.png)](https://i.sstatic.net/ngvbG.png)

**Tags:** ultimaker-cura, z-axis, calibration, z-probe, dimensional-accuracy

> **Comments:**
> **username_1**: As far as I'm aware, this kind of correction is *usually* performed by the printer's firmware, rather than the slicer.  
> **username_0**: @username_1, I had hoped that it does too...but the behavior of the printer (ie, high in some spots, or crashing in others) doesn't lead me to believe that it does.  When I run a "auto level" on the printer LCD console, it doesn't save the settings.  It appears to be only informational so I can turn the adjustment screws.  
> **username_1**: It may be possible to configure and upload a customized version of Marlin Firmware to do this, but that *would* be a fairly large undertaking if someone hasn't already made configurations for your printer, as it seems TronXY only makes firmware available upon request.  

---

## 0 answers

