M558 Feature request....
I struggle with H at M558 since a while. "H" is described as the "Dive height" in the docu. In my understanding the the "dive height" the height the head moves down.
My situation is that I have a homed Z (homed via a probe like Klicky or Euclid. So Z0 is far to high in reality but good enough for gantry leveling etc. Next step: I drop the probe and travel with the nozzle to a z endstop which is behind and lower than the bed to get the real hight.
That requires now that my M558 H parameter covers the gab between the euclid homed Z plus the distance between the top of the bed and the endstop.
I see now that he head travels the H value upwards which is not needed to be honest. It would be enough to travel 1mm upwards to release the endstop.
@dc42 Could you please make the "upwards movement" after the z-trigger configurable please?
dc42 administrators last edited by dc42
@chriss dive height is how far the head is expected to move down. The actual movement will be twice that value or until the probe triggers.
How far below the bed does the nozzle on your printer have to move to trigger the switch?
@dc42 Hi David, ne endstop is only 1.5isch mm below the actual bed. That is not the problem. My problem is that my Z is 12ish mm higher than the real bead after my first probe with the euclid probe. So I need a huge H at M558 which ends up in a high "undive" move when reprobe the endstop (A5).
Btw. H have the same problem when I level Z via the probe. I do the leveling with a high H value to make that the probe does not hit the bead while it moves between the points. But this is not needed for the 2nd run (A).
It would be better to have a 2nd "H" like "H40:2"... 40 for the may dive depth and 2 for the way upwards to "release" the endstop only.
Argo last edited by
You mean like a height for traveling to the next point and first probing attempt and a height that is used with the 2nd probing attempt and following?
That would be nice to have as it would accelerate the probing procedure very much.
For bed.g I’m using a very high height to ensure the probe is not hitting the bed though only the traveling to the probe point + 1st probe attempt would need that height.
dc42 administrators last edited by
@argo why can't you configure the trigger height in the M558 command for the Euclid probe to be 12mm higher, so that the Z0 setting is about right after probing with it?
@dc42 I think we have a understanding problem... I think that I did not explained it correctly.
Lets assume I have a unknown gantry status (after the start of the printer) So I pick up the probe and start at point 1 with a A5 and S0.003.
This run has a very high H value because I do not know the tild of the gantry and I do not want that the probe drives into the bed if point 2 is higher than pint 1.
The +Z after the first contact does not need as high as the dive depth, one or two mm would be enough to free up the probe. (More for a BL-Touch etc)
I do a 2nd level run after the first one with a far lower H value after the first one. The reconfiguration between the executions are a bit suboptimal from my point of view.
Argo last edited by
That is what I do at the moment. Here is my workaround bit in bed.g:
; bed.g M574 Z1 S1 P"io6.in" ; Z endstop switch M558 H10 F250:100 T6000 A20 S0.003 ; Klicky Probe settings ; bed.g script while iterations <=1 ; Perform 2 passes. G30 P0 X0 Y25 Z-99999 F6000 ; probe Z left front G30 P1 X0 Y270 Z-99999 F6000 ; probe Z left rear G30 P2 X275 Y270 Z-99999 F6000 ; probe Z right rear G30 P3 X275 Y25 Z-99999 S4 F6000 ; probe Z right front ;G1 H2 Z5 F2600 ; raise head 4mm to ensure it is above the Z probe trigger height M400 ; finish move, clear buffer M558 H1.5 ; Probe height to 1.5 while move.calibration.initial.deviation >= 0.005 ; Perform additional leveling if previous deviation was over 0.01mm. G30 P0 X0 Y25 Z-99999 F6000 ; probe Z left front G30 P1 X0 Y270 Z-99999 F6000 ; probe Z left rear G30 P2 X275 Y270 Z-99999 F6000 ; probe Z right rear G30 P3 X275 Y25 Z-99999 S4 F6000 ; probe Z right front ;G1 H2 Z5 F2600 ; raise head 4mm to ensure it is above the Z probe trigger height M400 ; finish move, clear buffer echo "Gantry deviation of " ^ move.calibration.initial.deviation ^ "mm obtained." M913 X100 Y100 Z100 ; Z current back default
You see for the first while loop I use a higher probing height so the probe won't drag over the bed.
In M558 we do already have two F values for speed. It would be nice to also have another height which then is used with the second speed set in F. Lowering speed and height does also improve accuracy.
Usage example: M558 F250:100 H10:1.5