z0 doesn't change height when changing Z-Probe height
Hi
I have done Z probing for a long time but decided to finetune it a bit more after upgrading to 1.0.3.
Something strange I'm noticing is that when I change Z-Probe height before running G32, afterwards it doesn't change the nozzle height at Z0. I've tried finding an answer on the forum but didn't find one that works.
I have Z max end stop, an inductive sensor and this plastic PEI sheet on my bed (which has already been set in EEPROM)
The procedure I follow:
- disable autolevel and distortion correction
- home x, y, z
- move z to z10
- G32 S2
- update new printer height in printer settings
- check z0
I've had my Z-probe height as 2.324mm while following the standard z probing guide in the repetier documentation. After checking z0, I noticed it was off by 1.75mm (too low). So I changed my Z-probe height in EEPROM to 4.074 and repeated the procedure. Distortion correction has been disabled permanently to get the Z0 right, so that shouldn't have an influence.
After doing this again, nothing changed. z0 remains at the same height.
What am I doing wrong?
I have done Z probing for a long time but decided to finetune it a bit more after upgrading to 1.0.3.
Something strange I'm noticing is that when I change Z-Probe height before running G32, afterwards it doesn't change the nozzle height at Z0. I've tried finding an answer on the forum but didn't find one that works.
I have Z max end stop, an inductive sensor and this plastic PEI sheet on my bed (which has already been set in EEPROM)
The procedure I follow:
- disable autolevel and distortion correction
- home x, y, z
- move z to z10
- G32 S2
- update new printer height in printer settings
- check z0
I've had my Z-probe height as 2.324mm while following the standard z probing guide in the repetier documentation. After checking z0, I noticed it was off by 1.75mm (too low). So I changed my Z-probe height in EEPROM to 4.074 and repeated the procedure. Distortion correction has been disabled permanently to get the Z0 right, so that shouldn't have an influence.
After doing this again, nothing changed. z0 remains at the same height.
What am I doing wrong?
Comments
G32 S<0..2> P<0..1> - Autolevel print bed. S = 1 measure zLength, S = 2 Measure and store new zLengthyou have S2 so it should run to z max and update. Did you check zlength in eeprom before and after the command or even better modify it first so it must change.
You have update height as extra steps. What do you do there?
Have you rehomed before testing z=0?
I checked zlength before and after and it is updated, although always around the same value as stated in the OP. Around 367.xx in my case. But it is updated none the less.
The height update I mentioned is only in repetier host in printer settings, don't think this really does anything but update the work space in the host.
I always rehome z before testing the new z0.
You say G32 S2 runs to zmax? I always home everything first, lower z to a position close to bed and let it run G32. It doesn't home to zmax again automatically.
if(s != 0) {
// at origin rotations have no influence so use values there to update
Printer::zLength += currentZ - Printer::currentPosition[Z_AXIS];
//Printer::zLength += /*currentZ*/ plane.z((float)Printer::currentPositionSteps[X_AXIS] * Printer::invAxisStepsPerMM[X_AXIS],(float)Printer::currentPositionSteps[Y_AXIS] * Printer::invAxisStepsPerMM[Y_AXIS]) - zRot;
Com::printFLN(Com::tZProbePrinterHeight, Printer::zLength);
}
it changes z based on difference between measured and theoretical z position. In earlier versions it did physically measure. One of the things driving me crazy - all these mods to make users happy. So not z max homing is ok.Repetier host value is just so host known z position after homing. Not necessary what firmware assumes. But if you use
G1 Z0
it will always send the absolute position and then both are in sync.
Can you suggest a short workflow for me to try to identify a possible mistake I'm making here?
https://pastebin.com/nyqZCedL
Any help is appreciated.
EDIT: after trying myself I believe the answer here is yes.
Also, I think I find the solution. After reading about the zmax homing above, I tried just doing G32 S2 from zhome instead of lowering it myself. I have tried different Z-probe height settings like this and I can actually finetune it now!
So, the proper workflow is:
- Home X,Y
- Home Z
- G32 S2
- G1 Z0
- Check Z0 height
After that it's just a matter of adjusting Z-probe height according to the nozzle position at Z0.
I have reduced the number of measurements to test this so I'll do some more finetuning the next couple of days.
If I don't come back with follow up questions, you can consider this solved
In any case, thanks for the good communication!
looked over your configuration.h and all looks good.
Apart form this you are right. Changing z probe height requires a redo of G32 S2 to adjust z length. In effect it changes z length by the change of z probe height.
Thanks for your assistance!