Settings the bed G28 G29 and G32
-
@sgk In what respect? the order? if that's the case G28 after that it depends on your printer and your preference for example I don`t carry out G29 on my printer just G32, but yours might need or require it to get a good first layer.
-
@jumpedwithbothfeet Hello, I don't know the difference between g29 and g32, and when I do g29 and after g32 the bed is not level with the ladder.
-
@sgk G29 creates a bed mesh depending on your config.g settings, all G32 does is call up bed.g, if your bed.g has nothing in the file it will do nothing, you can put any routine in bed.g using gcode/meta for example this is my bed.g -
; bed.g ; called to perform automatic bed compensation via G32 ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Mon Apr 06 2020 18:55:28 GMT+0100 (British Summer Time) M561 ; clear any bed transform ;G29 ; probe the bed and enable compensation ;G28 ; home G1 Y310 F7000 ; Pick Up Klicky G1 X42 F7000 ; Pick Up Klicky G1 Y358 F7000 ; Pick Up Klicky G1 Y310 F7000 ; Pick Up Klicky M401 ; deploy Z probe (omit if using bltouch) G30 P0 X30 Y0 Z-99999 ; probe near a leadscrew, Front left leadscrew G30 P1 X30 Y300 Z-99999 ; probe near a leadscrew, Rear left leadscrew G30 P2 X330 Y0 Z-99999 ; probe near a leadscrew, Rear Right leadscrew G30 P3 X330 Y300 Z-99999 S4 ; probe near a leadscrew and calibrate 4 motors M402 ; retract probe (omit if using bltouch) G1 Y310 F7000 ; Drop Klicky G1 X42 F7000 ; Drop Klicky G1 Y358 F7000 ; Drop Klicky G1 X89 F7000 ; Drop Klicky
this is to simply tram my bed and level it prior to starting a print, like I said I don`t run G29 but if I did I would add it to bed.g after the G30 entries, this would tram the bed then create a bed mesh.
my routine before starting a print is simply -
- turn printer on
- set bed heater and wait till it reaches temp
- home all
- G32
- start print
-
@jumpedwithbothfeet
I run g 32 and when I adjust the screws it does this to me. -
there I lowered the bed on the left and here is what it gives me
-
@sgk do i have to do g29 and after g32?
-
here is the error that I have when I launch after g32 the print
-
@sgk Make sure you do a G28 AFTER you play with the bed leveling, but before you do G29/G32. ALWAYS do a G28 first, as it denotes the start position for the sensor. That's why your heatmap seems all red/orange.
-
@thalios
actually I always did g29 or g32 after adjusting the screws of the bed -
@thalios g28 and after rolling g32 I roll Checking the trigger heigh?
-
This post is deleted! -
@herve_smith my config bed,
but when I run g32 it makes me point left right point and after all the bed
M561 ; clear any bed transform
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G90 ; absolute positioning
G28 ; home all
G30 P0 X10 Y175 Z-99999 ; probe near a leadscrew, half way along Y axis
G30 P1 X330 Y175 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
G29 S0 ; probe the bed and enable compensation
M291 P"Leveling finished !" R"Probing.." S1 T2 -
please excuse me but i am lost when i run g28 after i adjust the screw of the bed and i run g32 the bed is never straight compared to the ladder as in the photo
I read but I'm really lost
I would like to post a video but I can't
-
here I managed to put the bed at levels but when I launch the print the nozzle remains at 2mm from the bed I don't understand?
-
@sgk you should heat your bed before carrying out Z probes, have you set your trigger height in G31?
https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_testing
-
@jumpedwithbothfeet
after adjusting the level of the bed with g32 I did g31 s-1 but I am 2mm from the bed as I said before -
Maybe restating some stuff, but here's a description of the steps, with less of the Gcode details but maybe more of the "why am I doing this?"
-
After power on... HOME all axes. This is a G28. You should know that when you (or your config.g, or any other macro) sends G28, the RRF (RepRap Firmware) will look in your sys directory homex.g, homey.y, homez.g, or homeall.g. It then runs the appropriate macro. it's good for you to look into these files to see what they are doing. The reason you need to home all is so that the machine learns where the print head is and can send it to a desired location.
1.A- When your printer homes X the code in that homex.g will tell the print head to move in one direction until the endstop switch is triggered (using a G1 H1... gcode). The machine will remember the location where this happens as X="value". The "value" is based on another gcode (M208) that should already have run in either the config.g or the homex.g. That M208 defines the limits the machine will move in the X direction.
1.B - The Y axis is the same, but using homey.g
1.C - The Z axis is different (in most printers) because it does not use a limit switch, but a probe of some kind, so you will not find the G1 H1 command. What your homez.g needs to do is move the print head to an X,Y position that puts the probe over the spot you want to probe to find a Z location the machine can remember. You will usually see a G1 X.. Y.. command, followed by a G30. The G1 command moves the printhead, and G30 says to probe the bed and set the Z to the "probe trigger height". The probe Trigger height is set with the Z parameter of a G31 command in the config.g that also tells the RRF an X and Y offset for the probe location. So that's how the machine learns it's Z coordinates. -
Now that the machine knows how to put the print head in a specific X, Y and Z location, you can "level" the bed. "Level" is not a great term for what's about to happen. "Averaging out the Z lead-screws" is maybe a better description, but too long. This is done by running the macro code in a file called bed.g, and is normally called by sending a G32 command. The code in bed.g will tell your printer to use the z probe to measure the Z-location of the bed at various X.Y locations, then it will move the 2 (or 3) connected Z motors to get a "best fit" for all the points measured.
-
Since step 2 just moved the motors and messed with the bed, it's important to run another homez.g (G28 Z) so the machine will get a Z based on the new location of the bed.
-
At this point, the machine has done the "best it can" to make the z location of every point on the bed equal. Ideally, the distance from the nozzle to the bed is identical everywhere. But we don't live in an ideal world. Things that mess with this - probably not a complete list - A. The bed is not flat because it's bent or has bumps, B. 4 corner leveling has put a bow into the bed by pushing two opposite corners up and the other two down, C. in a two Z-motor config, the bed is tilted on the imaginary line that connects the two lead screws, D. is there are two Y (or X) rails, they are not on the same plane (one up at the rear, one down at the rear).
This is where bed mesh compensation (G29) comes in. It uses the probe to measure the bed at lots of locations and remembers it. Then, during printing, the Z position will be adjusted based on the data captured during the G29. -
Looking at the bed's height map, you can try to determine (guess) why it's not perfect and make adjustments to your machine to reduce the required compensation. But remember that when you adjust something, you should go back to step one on this list.
Hope this was a little helpful.
-
-
@mikeabuilder Thank you very much for your help, I will take a closer look.