Autolevel with NPN NO Inductive sensor problems
-
why do you need a z endstop if you have a probe?
-
@veti Safety i guess. It was installed initially so i did not bother removing it. And i did not see anywhere the need to remove the end stop. It can work along with the probe if i am not mistaken. The homing happens with endstop. Only mesh levelling happens with probe.
-
@gpetropoulos Yes you can use multiple means of homing since it depends on how your homing files are configured which gets used. As long as the trigger heights are accurate and repeatable between them the Z0 point should be equivalent.
I'm not sure what would explain your extreme looking heightmaps though.
Can you post your homing files?
M558 P5 I1 F0 T6000
I notice your probing feedrate is set to 0. I'm not sure if that will cause a problem or if it will just fall back to using the Z axis max feed rate. I'd try setting it to something like F100 just incase it's an issue caused by probing too fast.
-
i would assume that to be the different trigger height from probe and endstop.
-
As i understand now i have been using G32 from the web interface. Still trying to understand what the difference with G29 is.
This is my homeall.g
; homeall.g
; called to home all axes
;
; generated by RepRapFirmware Configuration Tool v2 on Thu Dec 13 2018 23:04:14 GMT+0200 (Eastern European Standard Time)
G91 ; relative positioning
G1 Z5 F6000 S2 ; lift Z relative to current position
G1 S1 X-225 Y-220 F6000 ; move quickly to X and Y axis endstops and stop there (first pass)
G1 X5 Y5 F6000 ; go back a few mm
G1 S1 X-225 Y-220 F360 ; move slowly to X and Y axis endstops once more (second pass)
G1 S1 Z-255 F1800 ; move Z down stopping at the endstop
G90 ; absolute positioning
G92 Z0 ; set Z to axis minimum (you may want to adjust this); Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 S2 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioning -
@veti said in Autolevel with NPN NO Inductive sensor problems:
i would assume that to be the different trigger height from probe and endstop.
Yes, but the probe trigger height would only come into play using G30 and anywhere else that probes. The endstop "trigger height" would be set in the homing files.
@gpetropoulos said in Autolevel with NPN NO Inductive sensor problems:
G92 Z0 ; set Z to axis minimum (you may want to adjust this)
Is the nozzle actually touching the bed at the point the endstop switch is triggered?
Also we should confirm what firmware version you're using.
I also notice you're loading config-override.g at the end of your config.g, can you post the contents of that as well?
@gpetropoulos said in Autolevel with NPN NO Inductive sensor problems:
G1 S1 Z-255 F1800 ; move Z down stopping at the endstop
G90 ; absolute positioning
G92 Z0 ; set Z to axis minimum (you may want to adjust this)As a test, you could replace this section of your homeall with a G1 move to position the probe at center, and then a G30 to probe the bed. Then run a G29. This would eliminate the endstop switch from the equation entirely.
The main difference between G29 and G32 is that G29 uses a mesh of points to compensate for the geometry of the bed, whereas G32 uses bed.g to create a simple plane of a few points. It can also be used to do mechanical bed leveling depending on how you have bed.g setup. If you're just trying to correct for the shape of the bed, G29 is superior.
-
Should i really eliminate my z endstop though? Not even keep it as a backup? What will then give my z=0 value? The probe?
Here is the config override:
; config-override.g file generated in response to M500 at 2018-12-29 18:07
; This is a system-generated file - do not edit
; Heater model parameters
M307 H0 A90.0 C700.0 D10.0 S1.00 V0.0 B1
M307 H1 A340.0 C140.0 D5.5 S1.00 V0.0 B0
M307 H2 A340.0 C140.0 D5.5 S1.00 V0.0 B0
M307 H3 A340.0 C140.0 D5.5 S1.00 V0.0 B0
M307 H4 A340.0 C140.0 D5.5 S1.00 V0.0 B0
M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0
M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0
M307 H7 A340.0 C140.0 D5.5 S1.00 V0.0 B0
G10 L2 P1 X0.00 Y0.00 Z0.00
G10 L2 P2 X0.00 Y0.00 Z0.00
G10 L2 P3 X0.00 Y0.00 Z0.00
G10 L2 P4 X0.00 Y0.00 Z0.00
G10 L2 P5 X0.00 Y0.00 Z0.00
G10 L2 P6 X0.00 Y0.00 Z0.00
G10 L2 P7 X0.00 Y0.00 Z0.00
G10 L2 P8 X0.00 Y0.00 Z0.00
G10 L2 P9 X0.00 Y0.00 Z0.00 -
It's not really a backup. The endstop would only trigger and stop movement while doing a G1 move with an S1 switch as done in the homing files to seek the endstop. Hitting the endstop at any other time would have no effect.
So yes, for testing at least, I would suggest trying to use your probe in the homing file to set Z0
So it would change from this
G1 S1 Z-255 F1800 ; move Z down stopping at the endstop G90 ; absolute positioning G92 Z0 ; set Z to axis minimum (you may want to adjust this)
To this
G90 ; absolute positioning G1 X150 Y150 ; move probe to bed center G30 ; probe the bed G1 X0 Y0 ; return to home position
-
@phaedrux said in Autolevel with NPN NO Inductive sensor problems:
@veti said in Autolevel with NPN NO Inductive sensor problems:
i would assume that to be the different trigger height from probe and endstop.
Yes, but the probe trigger height would only come into play using G30 and anywhere else that probes. The endstop "trigger height" would be set in the homing files.
@gpetropoulos said in Autolevel with NPN NO Inductive sensor problems:
G92 Z0 ; set Z to axis minimum (you may want to adjust this)
Is the nozzle actually touching the bed at the point the endstop switch is triggered?
Yes
Also we should confirm what firmware version you're using.
Firmware version: 2.02RC6(RTOS) (2018-12-15b2)
I also notice you're loading config-override.g at the end of your config.g, can you post the contents of that as well?
@gpetropoulos said in Autolevel with NPN NO Inductive sensor problems:
G1 S1 Z-255 F1800 ; move Z down stopping at the endstop
G90 ; absolute positioning
G92 Z0 ; set Z to axis minimum (you may want to adjust this)As a test, you could replace this section of your homeall with a G1 move to position the probe at center, and then a G30 to probe the bed. Then run a G29. This would eliminate the endstop switch from the equation entirely.
The main difference between G29 and G32 is that G29 uses a mesh of points to compensate for the geometry of the bed, whereas G32 uses bed.g to create a simple plane of a few points. It can also be used to do mechanical bed leveling depending on how you have bed.g setup. If you're just trying to correct for the shape of the bed, G29 is superior.
-
@phaedrux said in Autolevel with NPN NO Inductive sensor problems:
It's not really a backup. The endstop would only trigger and stop movement while doing a G1 move with an S1 switch as done in the homing files to seek the endstop. Hitting the endstop at any other time would have no effect.
So yes, for testing at least, I would suggest trying to use your probe in the homing file to set Z0
So it would change from this
G1 S1 Z-255 F1800 ; move Z down stopping at the endstop G90 ; absolute positioning G92 Z0 ; set Z to axis minimum (you may want to adjust this)
To this
G90 ; absolute positioning G1 X150 Y150 ; move probe to bed center G30 ; probe the bed G1 X0 Y0 ; return to home position
When i probe the bed does it do a g92 as well? How will i tell it where zero is? There is a trigger height value to be used to direct this one but how do i do that?
My trigger value is 0.7mm.
So do i give a G92 Z0.7 after it probes? -
G92 is not necessary when using G30. It will use the configuration provided in M558 and G31 to set the Z height.
The trigger height in G31 Z tells the firmware how far away from the bed the nozzle is when the probe triggers. So when it triggers during G30, it knows it's that high above the bed, and therefore, Z0 is established. The X and Y portion of G31 tells the firmware where the probe is in relation to the nozzle. G29 also uses the information from M558 and G31.
Makes sense?
-
@phaedrux Yes certainly.
Let me try this. I think i understand the problem now. So my homing hits the endstop and gets a zero value from there. So the z trigger height is not used. That is why depending on the z end stop distance we see different heights in the above pictures. So the 0.7 (my z trigger) reflected on the distance from the z end stop 0..
One more thing. When typing the z trigger in G31 should it be negative?
eg G31 P1000 X-55 Y0 Z0.7
OR
G31 P1000 X-55 Y0 Z-0.7 -
It should be the value you get from doing the G30 S-1 procedure you linked above.
It will only be a negative value in cases where the nozzle ends up pressing down into the surface of the bed, like when using a nozzle contact probe like a piezoelectric.
-
@phaedrux I mean it is not really negative but is it written like that? Writing it as a positive in the G31 gave the blue mesh result above which is below the xy plane.
-
@gpetropoulos No you shouldn't flip the sign on it. The probe triggers before the nozzle touches the bed, correct? No after? That would be a positive value.
I'm hoping that after we change your homing file to use G30, and re run G29, we will get a better result.
-
@phaedrux Certainly that solves the mesh problem at least. This looks much more consistent.
I used a negative value on G31. I am pretty sure that is it. I will run a test print and see for sure now. -
Using a negative value for G31 isn't consistent with how it should be working.
https://duet3d.dozuki.com/Wiki/GCode#Section_G31_Set_or_Report_Current_Probe_statusUse this to get the value.
https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe#Section_Calibrate_the_Z_probe_trigger_height -
Updating my new Homeall using the z probe as z endstop.
; homeall.g
; called to home all axes
;
; generated by RepRapFirmware Configuration Tool v2 on Thu Dec 13 2018 23:04:14 GMT+0200 (Eastern European Standard Time)
G91 ; relative positioning
G1 Z5 F6000 S2 ; lift Z relative to current position
G1 S1 X-235 Y-220 F6000 ; move quickly to X and Y axis endstops and stop there (first pass)
G1 X5 Y5 F6000 ; go back a few mm
G1 S1 X-235 Y-220 F360 ; move slowly to X and Y axis endstops once more (second pass)
G90 ; absolute positioning
G1 X160 Y100 F6000 ; move probe to bed center
G30 F1000 ; probe the bed
G1 X0 Y0 Z2 F6000 ; return to home position and 2mm higher than the surface; Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 S2 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioning -
@phaedrux Not clear to me yet. I will try with positive then first and report back.
-
@gpetropoulos Yes that looks good, except that G30 won't take an F parameter. It will use the F value given in M558 in config.g. I suggested a value of 100 earlier.