BL Touch Calibration Suggestions

I have a few questions. I installed the BL Touch and everything is working as expected. Here are my “complaints” though.

The 5x5 calibration grid routine seems like it could be done much faster, with faster travel speed, shorter pauses between moves, and raising the print head less between points, etc. Is there a way I can get at the gcode for the calibration motion, or is this compiled in the firmware?

My second complaint, is that it brings the nozzle up to temperature while doing the 5x5 calibration, so the whole time, my nozzle is oozing a little bit of filament so that by the time it finishes, I have a nice big blob of plastic stuck to my extruder, which eventually falls onto the build plate somewhere. It would be nice to be able to start a print, and walk away, instead of having to wait until the calibration finishes, and then try to pluck the blob off the nozzle while it is moving.

I think the calibration routine should be something like this:
Set bed temp to printing temp.
Set nozzle temp to printing temp - 40 deg (or something cool enough that the nozzle doesn’t ooze.
Wait for the bed to reach printing temp.
Run the BL calibration.
Move to the start point of the purge line.
Set nozzle temp to printing temp
Wait for nozzle to reach print temp
Print the purge line
Print the part
What do you think? Is there a way to modify this routine?

The 5x5 grid is set in the firmware.If your using Smith3d firmware they have different versions one being 5x5 fast.

Here’s the gcode I use to heat the bd, hot end, calibrate mesh I put this in the slicer in the startup gcode section

; Start EZABL startup gcode
M104 S150 ; set extruder temp
M140 S60 ; set bed temp
M190 S60 ; wait for bed temp
M117 Print Starting...
M75 ; Start Print Timer and Engage Fil Sensor if USB Printing
M84 E ; Disable E Motor for probe accuracy on direct drive systems
M117 Antiblob retract...
G92 E0 ; Reset Extruder distance to 0
G1 E-2 ; Retracts filament to prevent blobs during probing
G92 E0 ; Reset Extruder distance to 0
M117 Homing All...
G28 ; home all axes
M117 Homing Z Probe...
G28 Z ; home z again
M117 Generating mesh...
G29; auto bed leveling
M117 Heaters Recovering...
G4 S10; wait for heaters to recover
M420 Z0; Z fade
M900 K0; LA

M117 Purging extruder...
G92 E0 ; reset extruder
G1 Z1.0 F3000 ; move z up little to prevent scratching of surface
G1 X0.1 Y20 Z0.3 F5000.0 ; move to start-line position
M109 S200 ; wait for extruder temp
G1 X0.1 Y100.0 Z0.3 F500.0 E15 ; draw 1st line
G1 X0.4 Y100.0 Z0.3 F5000.0 ; move to side a little
G1 X0.4 Y20 Z0.3 F500.0 E30 ; draw 2nd line
G92 E0 ; reset extruder
G1 Z1.0 F3000 ; move z up little to prevent scratching of surface

M117 Printing.....
; End EZABL startup code

Thanks for the info.

It looks like you’re putting hard coded temperatures in the startup gcode
(M104 S150) (M109 S200).
Is there a way to reference the extruder temperature setting from the Cura slicer?
Something like…
(M104 S[slicer_extruder_temp] - 40) - during mesh generation
(M109 S[slicer_extruder_temp] - prior to printing the purge line

I pulled the code from the gcode of a sliced model. There are variables to use in the slicer gcode. I need to look them up and will post later

I found this on a google search. I think it’s what I want. These are the variables that contain the bed and extruder temps from the slicer.

M104 S{material_print_temperature} ;Start heating extruder
M140 S{material_bed_temperature} ;Start heating bed
M109 S{material_print_temperature} ;Wait for extruder to reach temp before proceeding
M190 S{material_bed_temperature} ;Wait for bed to reach temp before proceeding

I found it in this thread Changing Cura generated start code - Ultimaker Cura - Ultimaker Community of 3D Printing Experts

That looks right Here’s what’s in the slicer

M104 S[first_layer_temperature] ; set extruder temp
M140 S[first_layer_bed_temperature] ; set bed temp
M190 S[first_layer_bed_temperature] ; wait for bed temp

M109 S[first_layer_temperature] ; wait for extruder temp

This is quite interesting, I’m going to look at the firmware’s code if it’s reasonably easy to improve the calibration routine as you said.
Currently I’m using a firmware version where the probe is testing just the center and the four corners. Maybe it’s not so precise as it should be. 3x3 would be better.