Basic Information:
Printer Model: Geeetech A10M, CR-10S
MCU / Printerboard: ATMega2560 (GT2560 4.0), STM32G0B1RET6 (BTT SKR Mini E3 V3.0)
klippy.log
klippy-A10M.log (145.1 KB)
klippy-CR10S.log (120.1 KB
Describe your issue:
After banging my head on why the probed mesh was so far from actual bed profile on two separate printers (following this thread), I gave up and tried a different approach.
Alongised @Arksine and his great work on the [Experimental mesh leveling] topic(Experimental mesh leveling changes) I verified that the printer was actually following the rigth path and was compensating what it assumed being the correct mesh. Everything worked induvidually, yet nothing worked as expected.
While running a probe repeatabilty test on my A10M, I noticed something. Here’s the values
TEST 1
probe accuracy results: maximum 0.011514, minimum -0.000986, range 0.012500, average 0.008264, median 0.009014, standard deviation 0.003717
11:42:28
probe at 220.000,95.000 is z=0.009014
11:42:25
probe at 220.000,95.000 is z=0.011514
11:42:23
probe at 220.000,95.000 is z=0.009014
11:42:20
probe at 220.000,95.000 is z=0.011514
11:42:18
probe at 220.000,95.000 is z=0.011514
11:42:15
probe at 220.000,95.000 is z=0.009014
11:42:12
probe at 220.000,95.000 is z=0.009014
11:42:10
probe at 220.000,95.000 is z=0.009014
11:42:07
probe at 220.000,95.000 is z=0.004014
11:42:05
probe at 220.000,95.000 is z=-0.000986
11:42:02
PROBE_ACCURACY at X:220.000 Y:95.000 Z:5.007 (samples=10 retract=2.000 speed=5.0 lift_speed=5.0)
Notice how it triggers at the same 2 values (z=0.009014 and z=0.011514) every time? It does not output an in-between value, always the two of them - more tests in the attached file.
Probe test result.txt (2.2 KB)
Now, I find this behavior really strange, and utterly different from what Marlin receives during test probing. For instance, getting rounded values is a perfectly normal thing for Klipper, but getting the uncertainty down to 0.001mm? That’s too much for the hardware. I’ve got a well-tuned machine, but this far over the precision it can reach, and the repeatiabilty too.
I verified cross-tested it on my CR-10S, and got a similarly homogeneous result:
14:20:33
probe accuracy results: maximum 1.837500, minimum 1.815000, range 0.022500, average 1.825000, median 1.825000, standard deviation 0.005916
14:20:33
probe at 170.000,140.000 is z=1.825000
14:20:30
probe at 170.000,140.000 is z=1.825000
14:20:27
probe at 170.000,140.000 is z=1.825000
14:20:24
probe at 170.000,140.000 is z=1.825000
14:20:22
probe at 170.000,140.000 is z=1.837500
14:20:19
probe at 170.000,140.000 is z=1.832500
14:20:16
probe at 170.000,140.000 is z=1.822500
14:20:14
probe at 170.000,140.000 is z=1.822500
14:20:11
probe at 170.000,140.000 is z=1.820000
14:20:08
probe at 170.000,140.000 is z=1.815000
14:20:05
PROBE_ACCURACY at X:170.000 Y:140.000 Z:10.000 (samples=10 retract=2.000 speed=5.0 lift_speed=5.0)
14:20:05
probe_test
There are a lot of reapeted values that are exactly the same.
To weed out any possible bias, I tried two different BLtouch sensors on both printers, and even a good 3DTouch clone. All of them yield the same consistency. I will now go down a manual probing spree to check if it actually solvesa nything.
I would probably deem this worth investigating: because there’s absolutely no chance that a BLTouch can reproduce consistently exact values across different probing sessions.
Cheers, and thank you for your time!