Why does G29 home Z at x min y min?
-
Using Duet Web Control, I've set "Home All" and "Home Z" to move my BL-Touch probe over my heated bed before homing Z. However, when I try to do Mesh Bed leveling by issuing a G29 code, my printer immediately homes x and y to their minimums but never moves the x carriage or the heated bed so the BL-Touch will actually touch the heated bed.
-
G29 uses the grid dimensions specified in your M577 command. If it's going too far off the side of the bed, then you've set the grid spacing too far to that side.
Please post your config.g or at least the Z probe section.
-
Hi Phaedrux,
I found 2 M577 commands in my config.g file. An oversight by me and will be corrected but I would assume the last one in the config.g file would be the one that was used by G29. I also just noticed I probably should have set the x and y offsets in the M558 command. Anyway here is my config.g file
; Axis Limits
M208 X-41 Y-1 Z0 S1 ; set axis minima
M208 X250 Y227 Z210 S0 ; set axis maxima; Endstops ;Comment below to use BL-Touch
;M574 X1 Y1 Z1 S0 ; set active low and disabled endstops; BLTouch Endstops
M574 X1 Y1 S0 ; set active low and disabled endstops
M574 Z1 S2 ; Define Z to use Probe. Home to Min; Z-Probe
M558 P5 H5 F500 T4000 X0 Y0 Z1 ; Set Z probe type/mode 5. H=Dive Height. F=Speed the X-carriage moves
;M558 P0 H5 F120 T6000 ; disable Z probe but set dive height, probe speed and travel speed
G31 P25 X18 Y29 Z0.588 ; Z probe trigger value, offset in relation to nozzle. And trigger height adjustment
M557 X-12:215 Y22:195 S20 ; define mesh grid; Heaters
M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
M305 P0 T100000 B3950 R4700 ; set thermistor + ADC parameters for heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
M305 P1 X200 ; configure PT100 for heater 1
M143 H1 S280 ; set temperature limit for heater 1 to 280C
M305 P2 X201 ; configure PT100 for heater 2
M143 H2 S300 ; set temperature limit for heater 2 to 300C; BLTouch - Heaters
M307 H7 A-1 C-1 D-1 ; Disable the 7th Heater to free up PWM channel 5; Fans
M106 P0 S0 I0 F500 H-1 ; set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off; Tools
M563 P0 D0 H1 F0 ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
M563 P1 D1 H2 F0 ; define tool 1
G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets
G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C; Custom settings are not defined
;Mesh Bed Comp
M557 X0:200 Y45:175 S20; Miscellaneous
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss -
I just realized the 558 command in config.g. I never set the x and y offsets in that command. Could that be my problem?
-
I also just found out you don't see your comment edits till you reload the current page.
-
@rtuinila said in Why does G29 home Z at x min y min?:
I also just found out you don't see your comment edits till you reload the current page.
Depends on browser, and browser settings, but yeah, refresh (or F5) is a great idea.
-
@rtuinila said in Why does G29 home Z at x min y min?:
I just realized the 558 command in config.g. I never set the x and y offsets in that command. Could that be my problem?
YES, that is the "offset" between nozzle and probe, and those numbers are used by several underlying commands to put the probe over a given point.
AND, even with that offset, there are parts of the bed the probe can't reach (assuming the nozzle can reach all of the bed). Physically. You must not use those points in specifications of a mesh grid, or in bed.g, or similar.
-
@rtuinila No, the X, Y and Z offsets in M558 are deprecated, see https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M558_Set_Z_probe_type. You have them set in G31. But check that you have them set correctly; you have
G31 P25 X18 Y29 Z0.588
which implies the probe is (looking at the machine from the top, where X0 Y0 is front left of the bed) to the right of the nozzle, and closer to the back of the bed than the nozzle. Is that correct? Maybe post a picture of your printer showing nozzle and probe.Ian
-
Good catch on the switch to G31. It is still true that the firmware will put the probe over a spot, and that you must not ask it for spots the probe can't reach.
-
@rtuinila said in Why does G29 home Z at x min y min?:
I would assume the last one in the config.g file would be the one that was used by G29
Yes. The commands are executed sequentially, and whatever comes last is the one that gets used.
I think you've got it figured out now though.
I should have also pointed you towards this: https://duet3d.dozuki.com/Wiki/Using_mesh_bed_compensation
-
@droftarts Hi Ian,
That is almost right. My probe is to the right of the nozzle but the bed would have to travel to Y29 before the probe would be over the bed.