Auto Bed Leveling PINDA
-
M851 is not a supported gcode in reprapfirmware. https://reprap.org/wiki/G-code#M851:_Set_Z-Probe_Offset
You should use the G31 z value to set the offset between probe trigger point and the nozzle touching the bed at Z0. As described here. https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe
Please include your homing files in addition to the bed.g
If you run a G29 on it's own, what does the resulting bed height map image look like?
-
@Phaedrux said in Auto Bed Leveling PINDA:
M851 is not a supported gcode in reprapfirmware. https://reprap.org/wiki/G-code#M851:_Set_Z-Probe_Offset
You should use the G31 z value to set the offset between probe trigger point and the nozzle touching the bed at Z0. As described here. https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe
Please include your homing files in addition to the bed.g
If you run a G29 on it's own, what does the resulting bed height map image look like?
@fcwilt thanks for your answers!
It's not supported? It's working fine I'm using this command on many printers with duet an there is no problem.
I will post the other files later this day. But everything ist working fine, he is compensating at the first layer, but wrong.
My Pinda offset is 38mm in X. Does this mean the Pinda is right from the nozzle or left?
My heightmap looks good too. Will post that later too.
-
Funnily enough, M851 is in the firmware! https://github.com/dc42/RepRapFirmware/blob/590805f79240c2ebee1ff1fed229dee3827f81e5/src/GCodes/GCodes2.cpp#L4154
case 851: // Set Z probe offset, only for Marlin compatibility { ZProbe params = platform.GetCurrentZProbeParameters(); if (gb.Seen('Z')) { params.triggerHeight = -gb.GetFValue(); params.saveToConfigOverride = true; platform.SetZProbeParameters(platform.GetZProbeType(), params); } else { reply.printf("Z probe offset is %.2fmm", (double)(-params.triggerHeight)); } } break;
So it should work.
Ian
-
@droftarts As I said: it does. But this is not the topic. Everything is working fine, at some points I'm getting great results...
-
@WillGIam Sure, but as everyone who had replied to you so far had mentioned it, I thought it would be good to clear that up. So, on to the problem...
First, read this: https://blog.prusaprinters.org/prusa-tech-insider-1-mesh-bed-leveling/
It points out a number of issues with PINDA probes:
- "we found out that it’s necessary to minimize the measurement error with repeated measurements using the P.I.N.D.A. sensor. Therefore, there are repeated distance measurements during MBL process – typically 3 to 5 in one location."
- "Another thing is, the P.I.N.D.A. sensor sensitivity is highly temperature-dependent."
- "And then there was another issue – the magnets in the heatbed. These can throw off the readings"
Could these be effecting the bed mesh? Can you post an image of your bed mesh?
Ian
-
@droftarts Hey, this was no offense! I´m happy you posted the firmware quote.
The first thing is a great hint. But how to probe more than one time at one point? thats only possible with bed.g, so I can´t probe every point I can now isnt it?
I read the same about the temperature, so I heat up the bed before leveling see my homez.g:
M203 Z500
G91 ; relative positioning
G1 Z5 F1000 S2 ; lift Z relative to current position
G90 ; absolute positioning
G1 X5 Y5 F12000 ; go to first probe point
G30 ; home Z by probing the bed
M203 Z1800The heatbed is too far away from the heatbed I think. Compared to Prusa
Thanks for your answer!
-
@WillGIam said in Auto Bed Leveling PINDA:
But how to probe more than one time at one point?
Check the M558 command for these parameters that you are not (it seems) currently using.
From the online docs:
Annn Maximum number of times to probe each point, default 1. Maximum, as of 2.03, is 31. Setting M558 A parameter to anything >31 set it to 0 instead of to 31
Snnn Tolerance when probing multiple times, default 0.03mm
The A and S parameters control multiple probing. Probing is repeated until two consecutive probe attempts produce results that differ by no more than the S parameter; then the average of those two results is used. However, if the number of attempts specified by the A parameter is reached without getting two consecutive results within tolerance of each other, no further probe attempts are made and the average result of all the attempts is used.
Frederick
-
@fcwilt Yes, I did that today. The minimum tolerance is 0.1mm... That sounds a bit too much. Otherwise Im getting the unconsistent Z Probe readings error. I will try with 0.1 tolerance first.
Thanks a lot for your help.
-
@fcwilt okay, tried it out: With S0.05 and A6 (he is only using 3) I get lower tolerance. I´m now trying to print a bigger part. Lets see what happens.
-
@droftarts said in Auto Bed Leveling PINDA:
Funnily enough, M851 is in the firmware!
Well whatdya know.
-
@WillGIam said in Auto Bed Leveling PINDA:
@fcwilt okay, tried it out: With S0.05 and A6 (he is only using 3) I get lower tolerance. I´m now trying to print a bigger part. Lets see what happens.
I think I recall that if you use S-1 that forces the number of readings set by A and then averages them.
Frederick