BLTouch set negative value after probe calibration

Basic Information:

Printer Model: TwoTrees Sapphire Plus
MCU / Printerboard: Bigtreetech SKR 1.4 Turbo with Fysetc TMC2209 drivers
Host / SBC: Raspberry Pi 3B+

Describe your issue:

I’m trying to set my z-offset on BLTouch on my printer. I heated up the bed, wait for a while and then do the probe_calibrate and make the ‘paper test’. After that I save the config and restart firmware and the printer is saying: Z-offset must be set on minimum 0.0. Honestly I don’t know what happens and I hope my BLtouch sensor is not broken…

The template asked for the klippy.log. Please attach that file to your next post.

In addition, please also attach the complete printer.cfg as a file.

Here is my klippy.log:

klippy.log (485.8 KB)

and here my printer.cfg :

#52/50# This file contains common pin mappings for the BIGTREETECH SKR V1.4
# board. To use this config, the firmware should be compiled for the
# LPC1768 or LPC1769(Turbo).

# See docs/Config_Reference.md for a description of parameters.


[mcu]
serial: /dev/serial/by-id/usb-Klipper_lpc1768_1210000763A447AFDD1D1B5DC12000F5-if00

######################################################################
## Výměna filamentu                                                  ##
######################################################################
# M600: Výměna filamentu. Toto makro pozastaví tiskárnu, přesune nástroj
# do pozice pro výměnu a zatáhne filament o 130 mm. Upravte nastavení
# retrakce pro vaši extruder.  Po výměně filamentu lze tisk obnovit z
# předchozí pozice pomocí gcode "SWAP_RESUME".
[gcode_macro M600]
########### Gcode ############
gcode:
  {% set X = params.X|default(printer.configfile.config["stepper_x"]["position_endstop"]|string)|int %}
  {% set Y = params.Y|default(printer.configfile.config["stepper_y"]["position_endstop"]|string)|int %}
  {% set Z = params.Z|default(10)|int %}
  {% set E = params.E|default(-20)|int %}
  {% set tool = params.tool|default(0)|int %}

        SAVE_GCODE_STATE NAME=M600_state
        PAUSE
        G91
        G1 E-5 F4000
        G1 Z{Z}
        G90
        G1 X{X} Y{Y} F3000        ;parkovací pozice
        G0 E10 F500                ;extrudovaný filament pro lepší kapku na konci
        G0 E{E} F600             ;zatáhne další filament, aby se dostal z roztavené zóny
        G92 E0
        SET_FILAMENT_SENSOR SENSOR=e{TOOL}_runout ENABLE=0

#    Použijte tento příkaz k obnovení během výměny filamentu za běhu tisku (NEPOUŽÍVEJTE OCTO/MAINSAIL/DWC RESUME)
[gcode_macro SWAP_RESUME] 
gcode:
    RESTORE_GCODE_STATE NAME=M600_state
    SET_FILAMENT_SENSOR SENSOR=e0_runout ENABLE=1
    SET_FILAMENT_SENSOR SENSOR=e1_runout ENABLE=1
    resume


[virtual_sdcard]
path: /home/pi/printer_data/gcodes

[printer]
kinematics: corexy
max_velocity: 400
max_accel: 8000 # X-15400 Y-8500, 100Hz
max_z_velocity: 20
max_z_accel: 100
square_corner_velocity: 5
max_accel_to_decel: 5000 #3400

[mcu rpi]
serial: /tmp/klipper_host_mcu

[adxl345]
cs_pin: rpi:None

[resonance_tester]
accel_chip: adxl345
#max_smoothing: 0.05  #zjistena hodnota
 #accel_per_hz: 50
probe_points:    150, 150, 50


#######################################
# Resonance compensation
#######################################

[input_shaper]
#shaper_type_x: ei
#shaper_freq_x: 58.8
#shaper_type_y: mzv
#shaper_freq_y: 42.4

# for X - max 6400
# for Y - max 5300


#######################################
# Skew correction
#######################################

[skew_correction]

#SET_SKEW XY=141.19,141.24,99.93
#SKEW_PROFILE SAVE=skew_01

#######################################
# Neopixel LED light 
#######################################

[neopixel LED_light]
pin: P1.24
chain_count: 25

color_order: GRB
initial_RED: 1.0
initial_GREEN: 0.9
initial_BLUE: 0.8

#######################################
# Filament sensor
#######################################

[filament_switch_sensor RunoutSensor]
switch_pin: P1.26 # Pin ESTOP-Y for Spider mcu
pause_on_runout: true
#runout_gcode: M600  # Move nozzle to a location thats easy for the user to access


#######################################
# MACRO
#######################################

[include macro.cfg]

#######################################
# TIMELAPS
#######################################

[include timelapse.cfg]

#######################################
# EXCLUDE
#######################################

[exclude_object]

#######################################
# KAMP
#######################################

[include KAMP_Settings.cfg]


#######################################
# Stable Z home
#######################################

[stable_z_home]
gcode:
#  The G-code to run before each probe attempt. The default is none.
#retries:
#  The maximum number of probe attempts allowed. The default is 20.
#window:
#  The number of samples to use in the tolerance window. The default is 4.
retry_tolerance: 0.005
#  The maximum range between the min and max values of the Z offset in the window
#  to consider the offset stable and complete the procedure. The default is
#  0.0025mm.

#######################################
# Raspberry PI temperature
#######################################

[temperature_sensor raspberry_pi]

sensor_type: temperature_host
min_temp: 10
max_temp: 100


########################################
# MKS Closeloop42C
########################################

##############################
# X/Y Stepper Settings
# https://github.com/KevinOConnor/klipper/blob/master/docs/Rotation_Distance.md
##############################

[stepper_x]
step_pin: P2.2
dir_pin: !P2.6
enable_pin: !P2.1
microsteps: 128
rotation_distance: 40
endstop_pin: P1.29
position_endstop: -7
position_min: -7
position_max: 300
homing_speed: 100
second_homing_speed: 5
homing_retract_dist: 0

[tmc2209 stepper_x]
uart_pin: P1.10
#diag_pin: P1.29
interpolate: False
#driver_TBL: 2 #1  #2
#driver_TOFF: 3 #3  #3
#driver_HSTRT: 0 #1  #0
#driver_HEND: 5 #3  #5
run_current: 1.1
hold_current: 0.7
#sense_resistor: 0.110
stealthchop_threshold: 0


[stepper_y]
step_pin: P0.19
dir_pin: !P0.20
enable_pin: !P2.8
microsteps: 128
rotation_distance: 40
endstop_pin: P1.28
position_endstop: 300
position_min: 0
position_max: 300
homing_speed: 100
second_homing_speed: 5
homing_retract_dist: 0


[tmc2209 stepper_y]
uart_pin: P1.9
#diag_pin: P1.28
interpolate: False
#driver_TBL: 2 #1  #2
#driver_TOFF: 3 #3  #3
#driver_HSTRT: 0 #1  #0
#driver_HEND: 5 #3  #5
run_current: 1.1
hold_current: 0.7
#sense_resistor: 0.110
stealthchop_threshold: 0

#####################################################################
# Dual Z Stepper Settings
#####################################################################

[stepper_z]
step_pin: P0.22
dir_pin: P2.11
enable_pin: !P0.21
endstop_pin: probe:z_virtual_endstop
microsteps: 128
rotation_distance: 4
position_min: -6.0
position_max: 300
homing_speed: 15
homing_retract_speed: 15 #2
homing_retract_dist: 3 #1
second_homing_speed: 3 #0.5

[tmc2209 stepper_z]
uart_pin: P1.8
diag_pin: P1.27
interpolate: True
run_current: 0.700
hold_current: 0.700
stealthchop_threshold: 30


[stepper_z1]
step_pin: P1.15
dir_pin: P1.14
enable_pin: !P1.16
microsteps: 32
rotation_distance: 4


[tmc2209 stepper_z1]
uart_pin: P1.1
interpolate: True
run_current: 0.700
hold_current: 0.700
stealthchop_threshold: 30



##############################
# Extruder
# https://voron.dozuki.com/Guide/Extruder+Calibration+(ESTEPS)/1
# https://github.com/KevinOConnor/klipper/blob/master/docs/Pressure_Advance.md
##############################

[extruder]
step_pin: P2.13
dir_pin: !P0.11
enable_pin: !P2.12
heater_pin: P2.7
sensor_pin: P0.24
sensor_type: ATC Semitec 104NT-4-R025H42G
#pullup_resistor: none
microsteps: 32
rotation_distance: 7.78
nozzle_diameter: 0.400
filament_diameter: 1.750
min_extrude_temp: 180.0
max_extrude_only_distance: 1000
max_extrude_cross_section: 50.0
min_temp: 0
max_temp: 280.0
pressure_advance: 0.095 # for Volcano  0.11 (22mm)   #0.0925 #0.105, 0.0825


[tmc2208 extruder]
uart_pin: P1.4
interpolate: false
run_current: 0.350
hold_current: 0.150
stealthchop_threshold: 0

##############################
# Bed Heater
##############################

[heater_bed]
heater_pin: P2.5
sensor_pin: P0.25
sensor_type: EPCOS 100K B57560G104F
min_temp: 0
max_temp: 130
max_power: 0.8




##############################
# Fans
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#fans
##############################

[fan]
pin: P2.3
kick_start_time: 0.750
off_below: 0.10

[heater_fan extruder_fan]
pin: P2.4
heater_temp: 50.0
#fan_speed: 1.0



##############################
# BL Touch
##############################
[bltouch]
sensor_pin: ^P0.10 #Probe ^
control_pin: P2.0 #SERVOS
stow_on_each_sample: False
probe_with_touch_mode: True
x_offset: 0
y_offset: -25
speed: 10.0
samples: 4
sample_retract_dist: 5.0
#z_offset: 0.0


##############################
# Inductive probe
##############################
#[probe]
#pin: !P1.27 #Probe ^
#x_offset: 0
#y_offset: 25
#z_offset: 1.5
#speed: 4.0
#samples: 2
#sample_retract_dist: 3.0


##############################
# Home
##############################
[safe_z_home]
home_xy_position: 150,175
speed: 150.0
z_hop: 10.0
z_hop_speed: 10.0


##############################
# Bed Mesh
##############################
[bed_mesh]
speed: 150
horizontal_move_z: 8
mesh_min: 15, 15
mesh_max: 285,275
probe_count: 8,8
fade_start: 1
fade_end: 300
fade_target: 0
mesh_pps: 2, 2
algorithm: bicubic
#bicubic_tension: 0.2

##############################
# Z-tilt
##############################
[z_tilt]
z_positions: 15, 175
            285, 175
points: 15, 175
        285, 175
speed: 150
horizontal_move_z: 10
retries: 5
retry_tolerance: 0.005


##############################
# Screw adjust BLTouch
##############################
[screws_tilt_adjust]
horizontal_move_z: 10
screw1: 30,50
screw1_name: Front L
screw2: 270,50
screw2_name: Front R
screw3: 30,290
screw3_name: Back L
screw4: 270,290
screw4_name: Back R

##############################
# Screw adjust MANUAL
##############################
[bed_screws]
horizontal_move_z: 10
screw1: 30,20
screw1_name: Front L
screw2: 270,20
screw2_name: Front R
screw3: 30,265
screw3_name: Back L
screw4: 270,265
screw4_name: Back R


##############################
# Arc resolution
##############################
[gcode_arcs]
resolution: 0.02

########################################
# EXP1 / EXP2 (display) pins
########################################

[board_pins]
aliases:
    # EXP1 header
    EXP1_1=P1.30, EXP1_3=P1.18, EXP1_5=P1.20, EXP1_7=P1.22, EXP1_9=<GND>,
    EXP1_2=P0.28, EXP1_4=P1.19, EXP1_6=P1.21, EXP1_8=P1.23, EXP1_10=<5V>,
    # EXP2 header
    EXP2_1=P0.17, EXP2_3=P3.26, EXP2_5=P3.25, EXP2_7=P1.31, EXP2_9=<GND>,
    EXP2_2=P0.15, EXP2_4=P0.16, EXP2_6=P0.18, EXP2_8=<RST>, EXP2_10=<NC>
    # Pins EXP2_1, EXP2_6, EXP2_2 are also MISO, MOSI, SCK of bus "ssp0"

# See the sample-lcd.cfg file for definitions of common LCD displays.

#########################################
# Display BTT TFT35 v3.0 ST7920 Emulator
#########################################

#[display]
#lcd_type: st7920 
#cs_pin: EXP1_4
#sclk_pin: EXP1_5
#sid_pin: EXP1_3
#encoder_pins: ^EXP2_3, ^EXP2_5
#click_pin: ^!EXP1_2

#[output_pin beeper]
#pin: EXP1_1

##############################
# Display BTT TFT35 v3.0 SPI
##############################

#[display]
#lcd_type: emulated_st7920
#en_pin: EXP1_4
#spi_software_sclk_pin: EXP1_5
#spi_software_mosi_pin: EXP1_3
#spi_software_miso_pin: EXP1_6
#encoder_pins: ^EXP2_5, ^EXP2_3
#click_pin: ^!EXP1_2

#[output_pin beeper]
#pin: EXP1_1

######################################################################
# "RepRapDiscount 128x64 Full Graphic Smart Controller" type displays
######################################################################

#[display]
#lcd_type: st7920
#cs_pin: EXP1_4
#sclk_pin: EXP1_5
#sid_pin: EXP1_3
#encoder_pins: ^EXP2_3, ^EXP2_5
#click_pin: ^!EXP1_2
   #kill_pin: ^!EXP2_8

#[output_pin beeper]
#pin: EXP1_1

######################################################################
# Fysetc Mini 12864Panel v2.1 (with neopixel backlight leds)
######################################################################

[display]
lcd_type: uc1701
cs_pin: P1.18
a0_pin: P1.19
encoder_pins: ^P3.26, ^P3.25
click_pin: ^!P0.28
contrast: 63


[output_pin beeper]
pin: EXP1_1

[neopixel fysetc_mini12864]
pin: P1.21
chain_count: 3
initial_RED: 0.0
initial_GREEN: 1.0
initial_BLUE: 1.0
color_order: RGB

#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [extruder]
#*# control = pid
#*# pid_kp = 19.771
#*# pid_ki = 1.627
#*# pid_kd = 60.055
#*#
#*# [heater_bed]
#*# control = pid
#*# pid_kp = 55.074
#*# pid_ki = 2.384
#*# pid_kd = 160
#*#
#*# [input_shaper]
#*# shaper_type_x = ei
#*# shaper_freq_x = 91.0
#*# shaper_type_y = mzv
#*# shaper_freq_y = 53.6
#*#
#*# [skew_correction skew_01]
#*# xy_skew = -0.0003540704557558152
#*# xz_skew = 0.0
#*# yz_skew = 0.0
#*#
#*# [bed_mesh 01_60]
#*# version = 1
#*# points =
#*# 	0.112657, 0.118321, 0.166055, 0.241407, 0.290274, 0.241524, 0.168047, 0.050860
#*# 	0.050391, 0.065118, 0.113126, 0.184844, 0.230040, 0.189102, 0.114727, -0.003046
#*# 	-0.003867, 0.025860, 0.067618, 0.141602, 0.182657, 0.139063, 0.079415, -0.021367
#*# 	0.003477, 0.025118, 0.067813, 0.148555, 0.190938, 0.142266, 0.080352, -0.012460
#*# 	0.018790, 0.044258, 0.077618, 0.165626, 0.205274, 0.159376, 0.092735, 0.006680
#*# 	0.065821, 0.085040, 0.111954, 0.191602, 0.229063, 0.184883, 0.121211, 0.038438
#*# 	0.098477, 0.116719, 0.145196, 0.220235, 0.265157, 0.220899, 0.149063, 0.063008
#*# 	0.129180, 0.148868, 0.182540, 0.255079, 0.291993, 0.250860, 0.185235, 0.093555
#*# min_x = 15.0
#*# max_x = 284.99
#*# min_y = 15.0
#*# max_y = 274.98
#*# x_count = 8
#*# y_count = 8
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = bicubic
#*# tension = 0.2
#*#
#*# [bed_mesh 01_100]
#*# version = 1
#*# points =
#*# 	0.138986, 0.148712, 0.197033, 0.275079, 0.324025, 0.288556, 0.219728, 0.103986
#*# 	0.080197, 0.095822, 0.143868, 0.218087, 0.266603, 0.228751, 0.159103, 0.043009
#*# 	0.028868, 0.052462, 0.095314, 0.170900, 0.210079, 0.169415, 0.104454, 0.008165
#*# 	0.034923, 0.054298, 0.097033, 0.184572, 0.216993, 0.172072, 0.104923, 0.011212
#*# 	0.051017, 0.070783, 0.105001, 0.190040, 0.225900, 0.179533, 0.111993, 0.021759
#*# 	0.085548, 0.112228, 0.132540, 0.205704, 0.244845, 0.199376, 0.132189, 0.047501
#*# 	0.119572, 0.134025, 0.159220, 0.230509, 0.267775, 0.224806, 0.150861, 0.061447
#*# 	0.138361, 0.151017, 0.179493, 0.253595, 0.288478, 0.247931, 0.178087, 0.088751
#*# x_count = 8
#*# y_count = 8
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = bicubic
#*# tension = 0.2
#*# min_x = 15.0
#*# max_x = 284.99
#*# min_y = 15.0
#*# max_y = 274.98
#*#
#*# [bed_mesh default]
#*# version = 1
#*# points =
#*# 	-0.013125, 0.014453, 0.022070
#*# 	-0.003750, 0.001289, 0.010859
#*# 	0.012109, 0.020742, 0.019336
#*# x_count = 3
#*# y_count = 3
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = lagrange
#*# tension = 0.2
#*# min_x = 141.24
#*# max_x = 158.74
#*# min_y = 141.24
#*# max_y = 158.74
#*#
#*# [bltouch]
#*# z_offset = -0.600