Ender 3 with BL Touch not using Z-Offset and only probing once

What is the problem?

BL touch is only probing once before the print and Z-offset cannot be changed in Octoprint - Nozzle is printing too high and can't be adjusted with Octoprint.

What did you already try to solve it?

  • Running bed visualizer - Bed is level

  • Levelling physical printer

  • Updating Octoprint software & plugins

  • Removing and re-adding printer in slicer (Cura)

Hello @printalien !

What's about safe mode and the systeminfo bundle?

What printer, what OctoPrint version, what system OctoPrint runs on...

octoprint-systeminfo-20230114054936.zip (186.5 KB)

Version 0.17.0, running on Raspberry Pi 3 Model B Rev 1.2

Octoprint 1.8.6

Creality Ender 3 Pro with BL Touch - Stock firmware

Slicing with Cura 4.13

Safe mode does not function as desired either

Do you have an SD card in the printer? It probably needs it to store the offset as the stock Creality firmware doesn't usually use EEPROM.

What mainboard do you have in the Ender3 Pro? mine had a stock Creality version which doesn't have a connector for a BL Touch - so if you've connected it via the display adaptor you will need to blow the firmware in the mainboard so that it knows you have ABL. I replaced the stock board for an SKRminiE3.

Yes there is an SD card in the machine

Honestly not sure what board is in there - Any way to identify without opening it up?

It's previously worked great up until a few weeks ago. Nothing had changed that I know of.

If it has worked before, sounds like a cabling problem to the moving carriage, I've had lots of broken cables in the part cooling fan cabling [never the others oddly], which resulted in me putting a bracket onto the carriage structure which supports the bowden tube and all the cables, keeping them vertical as the reach the carriage, it has a clamp to which the cables attach [with cable ties or velcro] and allows slight rotation as the carriage moves left and right.
Strain relief on the cables helps to stop them breaking - copper wires work harden and eventually they break.

Do you know what your z offset is?
How and when did you last set the z offset?

In the past when you ran a print, you indicate that your printer would run a mesh collection before the print. Since you stated that you removed and added your printer in Cura, could you maybe have made a mistake in your Start Gcode for the BLT. Have you looked at the gcode to see that you are sending a G29 and not a G28. A single probe sounds like a G28 is being sent.

Does Bed Visualizer Plugin work as expected? Meaning if you click on update Mesh Now button does it probe as you would expect ? Sounds like maybe yes but you just say the bed is level.

1 Like

Yes, after manually levelling the bed recently I set the Z-offset to 1.1.

The bed visualiser works as intended through Octo, just not the printing.

Here's the G-Code that Cura has as default for this printer model - Interestingly, changing G28 to G29 starts the print about 4 inches off the bed! (still with no bed collection probing):

; Ender 3 Custom Start G-code

G92 E0 ; Reset Extruder

G28 ; Home all axes

G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed

G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position

G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line

G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little

G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line

G92 E0 ; Reset Extruder

G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed

G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish

I do have the Octoprint BLTouch plugin which does have G29 in the probe bed section

The bltouch Plugin does not cause any automatic probing at start of a print. It simply gives you buttons to send the proper commands to your printer from within the octoprint [control] tab interface. If you want Octoprint to automatically run a Mesh collection before each print, you have to have a G29 in your startup gcode. I am sure there is more to it than that to make it consistently successful but I don't do this myself so I am not sure what exactly you would do. For me if I were to want to probe before every print, I would likely add the same code I have in the "Bed Visualizer" to my start gcode so that I know I covered all the needs of mesh collection.

That aside, I think that if you do a manual mesh collection and you still have your prints starting high above your bed, this is the more interesting issue. To look into that more, I would say maybe feed the printer a M114 when it is trying to run the first layer, this will tell you where it thinks the Z height is. From there you might be able to figure out why it is so high, by knowing just how high it thinks it is.

If it says it is .02(or whatever your layerone height is) than it somehow thinks it is at the right height. Which likely means something is a mis with your z offset or how your probe is triggering when getting that zero.

RESLOVED! Thanks @jcassel all I needed to do was add G29 after the G28 line in my Cura profile and everything fell into place.

Thanks for your help with this - Much appreciated!


This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.