BL Touch Question
@Phaedrux - Homeall.g
; called to home all axes
; generated by RepRapFirmware Configuration Tool v2 on Wed May 01 2019 14:56:47 GMT-0500 (CDT)
G91 ; relative positioning
G1 Z5 F6000 S2 ; lift Z relative to current position
G1 S1 X5 F1000 ; move slowly away
M913 X50 Y50 ; Lower motor current to 50% for sensorless homing
G1 S1 X-255 F2800 ; move quickly to X axis endstop and stop there (first pass)
G1 X5 F6000 ; go back a few mm
G1 S1 X-255 F2800 ; move slowly to X axis endstop once more (second pass)
G1 S1 Y5 F1000 ; move slowly away
G1 S1 Y-255 F2400 ; move quickly to Y axis endstop and stop there (first pass)
G1 Y5 F6000 ; go back a few mm
G1 S1 Y-255 F2400 ; move slowly to Y axis endstop once more (second pass)
M913 X100 Y100 ; Return motor current to 100%
G90 ; absolute positioning
G30 ; set z height based on trigger height
; 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
fcwilt last edited by
I checked your homeall.g and note that it was generated for you.
One thing that I don't understand is the G30 command. A G30 by itself probes at the current X,Y position and that appears to be at Xmin,Ymin.
Is that what you desired? I normally probe for Z=0 at the center of the bed.
Yes, you should add a G1 X Y move before the G30 to position your probe at bed center.
Next question is how and when are you running G29 to do the mesh compensation probing?
Are you doing it before every print? Or are you loading a saved heightmap?
What does your slicer start gcode look like?
If you intend to save a heightmap and reload it rather than reprobe the whole bed everytime you can use G29 S1 to load it in your homeall.g after the G30.
@Phaedrux Currently, I am just running the G29 to try to get the bed as level as possible when I start out. I will certainly change my initial probe to be at the center when I get everything squared away.
@Phaedrux thanks so much! I am trying it now. I have aPrisa MK3 that I am upgrading to the Bear frame and using the new board. I want to get things as perfect as possible before compensation. So, I know that the center screw on the bed is tightened to a set point, the rest are adjustable in my scenario, so I have set the Z probe to trigger directly over that fixed point and then I should be able to adjust the edges up and down to get something very flat. What range am I looking for in terms of deviation?
Is this calibration map close enough or would you tweak it more?
That's pretty good. The mesh compensation should have no problem dealing with that surface deviation. And more importantly it appears to be level.
A good way to test the effectiveness of esh compensation is to print a test file like this that covers the entire reach of the bed. Print it twice, once with mesh active, and once disabled. You should be able to see an improvement.
Scale it to fit your bed. Single layer height. There should be two perimeters so that you can see if they mesh nicely or are too loose, or two squished. It's most effective if your extruder is already calibrated.
@Phaedrux for the gcode, what should I have in it?
I am a bit confused as to what triggers the mesh leveling and bed compensation.
G28 calls homeall.g
G29 runs mesh compensation probing, saves the result, and enables the compensation when it's done.
G29 S1 loads a saved heightmap from a previous probing.
Either way you do it the printer should be homed first.
@Phaedrux one last question. I printed what you shared (thank you). But, when printing, I had to baby step down to -.480 to get it to be correct on the bed. Where do I make this adjustment? In my gcode for printing or in my offset in config.g? I expected it to be right on, but it was not.
Well if you've followed these steps the trigger height should be largely correct. It may still be necessary to use a slight amount of baby stepping to get it perfect, but 0.48mm is quite a lot on a first layer.
I'd redo the probe calibration making sure to keep the following in mind
- Get the X Y offset as close as possible
- Measure the Z trigger height with the bed and nozzle at printing temp to account for thermal expansion and warp.
- Make sure that the point you're testing the probe trigger height with G30 S-1 is the same point you're setting G92 Z0 as with the nozzle touching the bed.
- Make sure the extruder e steps is calibrated and your material flow rate in the slicer dialed in with accurately measured filament diameter.