G29 or G32
-
Hi everyone,
Im most new to building printers and Im having a hard time with autobed compensation.I have a Cartesian 500x500 bed... Think of a CR-10S 5.
I have set the 2nd extruder to power the 2nd Z stepper motor so that they can run independently.I have set up G32 to run on a 3 point calibration, but also run G29 on 25 points. I have an issue though, no matter how much I try to level, I cant get the heightmap to show level, even though if I do it manually with a feeler gauge and start a print it goes off without a hitch.
I cant help but feel that using both the G29 and G32 commands are causing a problem. Should or can they even be used together?? Or should you manually square the X gantry and then just use G29? -
What problems are you encountering?
-
Hi,
G29 for probing for mesh compensation.
G30 for setting the Z=0 position, assuming you have a Z probe.
I have two macros using G29 and G30.
One does a 4 point mesh at the corners for doing a quick verification of bed level.
Once manual leveling yields a good height map from the 4 point probing I do a full probing at 20mm spacing.
Frederick
-
@fcwilt please can you show me what your bed.g file looks like and the macro?
-
@GT1Za said in G29 or G32:
@fcwilt please can you show me what your bed.g file looks like and the macro?
I wouldn’t mind seeing it as well. I have switched to independent Zs and am using a g32 before my g29 with mixed results.
-
@RyanP This is exactly my problem...
I manually level the bed.
Run G32 and adjust the z screws if needed and then run G29
But I can never actually get a level bed according to the probe.But I do a manual level and print... perfect print.
This is why I think it must be something Im doing wrong.
-
@GT1Za said in G29 or G32:
@fcwilt please can you show me what your bed.g file looks like and the macro?
I cannot show you my bed.g file because I don't use one.
This is the essence of the macro used for the 4 point probing:
M98 P"configprobe.g" ; configure Z probe
M98 P"probez.g" ; set Z=0 datum
M208 Y-155:145 ; adjust axis min/max values to allow for Z probe offset
M557 X-140:140 Y-130:130 P2:2 ; define 4 point mesh for G29
G29 ; do probing
G29 S3 P"heightmap_FAST.csv" ; save file with unique name
G29 S2 ; cancel mesh bed compensation
M208 X-140:140 Y-145:145 ; reset axis min/max values
G90 ; absolute moves
G1 Z5 F600 ; move nozzle away from bedI don't like to repeat code so I use M98 to call other macros to perform tasks that I use in two or more places, such as the macros for configuring the Z probe and using the Z probe to set the Z=0 datum.
-
@GT1Za in answer to your question: BOTH
I use this on a few of my dual Z machines. here is my G code for one of my Chiron's
M584 X0 Y1 Z2:4 E3 ; Custom drive mapping
M671 X-40:440 Y206:206 S2 ; Lead screw positions at right and left of the X axis
I have that in the "drives" section of my config.g
That works in conjunction with my bed.g file which is executed by G32 Which I set in motion by means of a macro entitled "all in one leveling" it first levels the X gantry ( I do it twice to reduce the amount of error correction) then I have it probe the bed by calling G29 that uses the info from my M557 Command
contents on my bed.g
; bed.g
; called to perform automatic bed compensation via G32M561 ; Clear any bed transform
G28 ; Home All
G30 P0 X15 Y206 Z-99999 ; Probe near a lead screw, half way along the Y axis (1st motor)
G30 P1 X400 Y206 Z-99999 S2 ; Probe near a lead screw and calibrate 2 motors (2nd motor)
G30 P0 X15 Y206 Z-99999 ; Probe near a lead screw, half way along the Y axis (1st motor)
G30 P1 X400 Y206 Z-99999 S2 ; Probe near a lead screw and calibrate 2 motors (2nd motor)
G1 H0 X20 Y61 F7000 ; Move the head to the front left corner
G29 ; Carry out mesh leveling
M557 X12:420 Y10:460 S30 ; define mesh grid