BLTOUCH Z-Probe and Marlin 2.1.1

Fusion 360 rendering of my new mounting bracket.

BLTOUCH Mounting Bracket

I designed this bracket to replace the one I designed for the inductance Z probe I've used for years. The BLTOUCH will allow me to do bed level probing for any bed material.

This mounts the BLTOUCH Z-probe to the front of the hotend fan (not the parts cooling fan). Remove the M3 screws that mount the fan, place the bracket in front and mount with M3 screws that are 7mm longer. In my installation, the Marlin firmware offsets for the probe are:

#define NOZZLE_TO_PROBE_OFFSET { -39, -36, -3.3 } in Configuration,h.
Your results may vary slightly.

STL file is available at CULTS3d and Thingiverse.

In addition to the BLTOUCH, I also upgraded from Marlin firmware released in 2017 to the latest release, 2.1.1. For my own documentation, here are the differences between the Configuration.h and Configuration_adv.h files in the published release and my modified files. These changes support my mods such as the display, different Z lead screws, the new BLTOUCH probe and PID/offset settings particular to my machine.

Configuration.h

#define BAUDRATE 115200

#define Z2_DRIVER_TYPE A4988

#define TEMP_SENSOR_0 11

#define TEMP_SENSOR_BED 11

#define DEFAULT_Kp_LIST { 28.41, 28.41 }

#define DEFAULT_Ki_LIST { 3.65, 3.65 }

#define DEFAULT_Kd_LIST { 55.28, 55.28 }

#define DEFAULT_Kp 28.41

#define DEFAULT_Ki 3.65

#define DEFAULT_Kd 55.28

#define PIDTEMPBED

#define DEFAULT_bedKp 22.44

#define DEFAULT_bedKi 1.05

#define DEFAULT_bedKd 318.61

#define X_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.

#define Y_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop.

#define ENDSTOP_INTERRUPTS_FEATURE

#define DEFAULT_AXIS_STEPS_PER_UNIT { 100, 100, 400, 165 }

#define DEFAULT_MAX_FEEDRATE { 200, 200, 3, 25 }

#define BLTOUCH

#if ENABLED(BLTOUCH)

//#define BLTOUCH_DELAY 500 // *option

//#define BLTOUCH_FORCE_5V_MODE

#endif

#define NOZZLE_TO_PROBE_OFFSET { -39, -36, -3.3 }

#define PROBING_MARGIN 20

#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow

#define PROBING_HEATERS_OFF // Turn heaters off when probing

#define PROBING_FANS_OFF // Turn fans off when probing

#define AUTO_BED_LEVELING_BILINEAR

#define PREHEAT_BEFORE_LEVELING

// #define LEVELING_NOZZLE_TEMP 120 // (°C) Only applies to E0 at this time

#define LEVELING_BED_TEMP 60

#define LCD_BED_LEVELING

#define Z_SAFE_HOMING

#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER

Configuration_adv.h

#define Z_STEPPER_AUTO_ALIGN

#define THERMAL_PROTECTION_BED_PERIOD 20 // Seconds

#define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius

#define PROBE_OFFSET_WIZARD // Add a Probe Z Offset calibration option to the LCD menu

#define BABYSTEPPING

#define BABYSTEP_ZPROBE_OFFSET // Combine M851 Z and Babystepping