I had the BLTouch (3.1) working with stock firmware on an Ender 3 v2 but wanted to get a 5x5 mesh instead of the 3x3 so I installed the TH3D firmware. With the stock firmware my Z-offset was -2.95 mm.
After installing TH3D firmware, my Z-offset has to be in excess of -6 mm to reach the same nozzle-to-bed height. I've tried setting the Z-offset via LCD and through G-code, saving to EEPROM. I'm having 2 problems with this that I assume are connected:
- Z-offset seems to not be applied when setting Z axis position. When I autohome and then set Z axis to 0, even the extended probe from the BLTouch does not touch the bed (it's actually 1-2 mm away from touching). And this is with the Z-offset set to -6 mm.
- I tried running a print, which includes an ABL request (
G29
), the print head crashed into the bed immediately after finishing levelling. My hunch is that when starting to print the -6 mm Z-offset starts being correctly taken into account.
Could this be the result of something I did in the Configuration.h when compiling the firmware?
I made the following changes:
CrealityV42X/Firmware/Marlin/Configuration.h
- Line 24: uncommented
#define ENDER3_V2_V422_BOARD
- Line 43: uncommented
#define CUSTOM_PROBE
- Line 66: changed
#define EZABL_POINTS
from 3 to 5 - Line 124: changed
#define NOZZLE_TO_PROBE_OFFSET
from{ 10, 10, 0}
to{ -44, -6, 0 }
- Line 233: uncommented
#define BLTOUCH
- Line 235: uncommented
#define SERVO0_PIN PB0
- Line 636: commented out
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
- Line 636: added
#define USE_PROBE_FOR_Z_HOMING
In Configuration_backend.h the only change I made was increasing Z_PROBE_OFFSET_RANGE_MIN
from -5 to -20.