Printer Model: Ender 3 Pro with dual belted Z Axis, Klackender and Stealthburner
MCU / Printerboard: Bigtreetech SKR Pro 1.2 with TMC2209
klippy.log
: klippy (2).log (2.2 MB)
Hello everybody,
i switched from Marlin to Klipper when i did some upgrades. I am having now a problem and i hope someone can help me here. Thanks for every suggestion.
The problem is that my X-Endstop (Stock) sometimes doesn’t work. It is most times after i cancelled a print or maybe when it is hot. The light on the printerboard lights everytime up, but klipper doesn’t recognize it. I only have the problem with the x-endstop. I switched the x and y endstop plugs on the board and the pins in Klipper, then the y-axis had the same problem, so it seems to be the x-endstop pins. I tried with ^ symbol for pull-up, but this doesn’t seem to change anything. I hope someone has an idea. Thanks again.
Here is my current configuration:
[include mainsail.cfg]
[include stealthburner_leds.cfg]
[include print_macros.cfg]
[include other_macros.cfg]
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32f407xx_280038001951363436393637-if00
[board_pins]
aliases:
EXP1_1=PG4, EXP1_3=PD11, EXP1_5=PG2, EXP1_7=PG6, EXP1_9=<GND>,
EXP1_2=PA8, EXP1_4=PD10, EXP1_6=PG3, EXP1_8=PG7, EXP1_10=<5V>,
EXP2_1=PB14, EXP2_3=PG10, EXP2_5=PF11, EXP2_7=PF12, EXP2_9=<GND>,
EXP2_2=PB13, EXP2_4=PB12, EXP2_6=PB15, EXP2_8=<RST>, EXP2_10=PF13
[printer]
kinematics: cartesian
max_velocity: 150
max_accel: 500
max_z_velocity: 5
max_z_accel: 20
[stepper_x]
step_pin: PE9
dir_pin: PF1
enable_pin: !PF2
endstop_pin: ^PB10
microsteps: 32
rotation_distance: 40
position_min: -16
position_endstop: -16
position_max: 229
homing_speed: 50.0
[tmc2209 stepper_x]
uart_pin: PC13
run_current: 0.850
hold_current: 0.500
stealthchop_threshold: 200
[stepper_y]
step_pin: PE11
dir_pin: PE8
enable_pin: !PD7
endstop_pin: ^PE12
microsteps: 32
rotation_distance: 40
position_min: -5
position_endstop: -5
position_max: 230
homing_speed: 50.0
[tmc2209 stepper_y]
uart_pin: PE3
run_current: 0.850
hold_current: 0.500
stealthchop_threshold: 200
[stepper_z]
step_pin: PE13
dir_pin: PC2
enable_pin: !PC0
microsteps: 32
rotation_distance: 80
gear_ratio: 80:16
full_steps_per_rotation: 200
position_max: 300
homing_speed: 5.0
endstop_pin: probe:z_virtual_endstop #if you want to use the Prove as z-endstop (You can unsinstall the stock z endstop then. If not, remive the [homing_override])
position_min: -10 # set a negative value (minimum as the probe z_offset)
[tmc2209 stepper_z]
uart_pin: PD1
run_current: 0.850
hold_current: 0.600
stealthchop_threshold: 100
[extruder]
step_pin: PE14
dir_pin: PA0
enable_pin: !PC3
microsteps: 32
rotation_distance: 21.8064062675
full_steps_per_rotation: 200
gear_ratio: 50:10
nozzle_diameter: 0.4
filament_diameter: 1.750
max_extrude_cross_section: 50.0
max_extrude_only_distance: 100.0
max_power: 1.0
heater_pin: PB1
sensor_type: ATC Semitec 104NT-4-R025H42G
sensor_pin: PF4
control = pid
pid_kp = 31.236
pid_ki = 3.653
pid_kd = 66.767
min_extrude_temp: 180
min_temp: 0
max_temp: 280
[tmc2209 extruder]
uart_pin: PD4
run_current: 0.700
hold_current: 0.500
stealthchop_threshold: 50
[heater_bed]
heater_pin: PD12
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PF3
control: pid
pid_Kp: 74.785
pid_Ki: 1.971
pid_Kd: 709.523
min_temp: 0
max_temp: 110
[fan]
pin: PE5
[heater_fan fan]
pin: PC8
[controller_fan controller_fan]
fan_speed: 1.0
idle_speed: 0.1
idle_timeout: 600
pin: PE6
heater: heater_bed
[idle_timeout]
#gcode:
# A list of G-Code commands to execute on an idle timeout. See
# docs/Command_Templates.md for G-Code format. The default is to run
# "TURN_OFF_HEATERS" and "M84".
timeout: 18000
# Idle time (in seconds) to wait before running the above G-Code
# commands. The default is 600 seconds.
## TOOLHEAD SENSOR ---------------------------------------------------------------------------------------------------------
# Uncomment this section to enable toolhead sensor support
## ERCF Toolhead sensor START
[filament_switch_sensor ERCF_toolhead_sensor]
pause_on_runout: False # Must be False
switch_pin: PE10
## ERCF Toolhead sensor END
[filament_switch_sensor filament_runout_sensor]
pause_on_runout: False
switch_pin: PE15
#####################################################################
# KlackEnder- Settings
#####################################################################
[probe]
pin: PG8
#z_offset: 7.3 #Measure per your specific setup
x_offset: 20 # negative = left of the nozzle
y_offset: 39 # negative = in front of of the nozzle
speed: 5.0
lift_speed: 15.0
sample_retract_dist: 1
samples: 2
samples_tolerance_retries: 6
##[(7x7)-1] / 2 = 24
##[(5x5)-1] / 2 = 12
[bed_mesh]
speed: 300
horizontal_move_z: 10
mesh_min: 8,35
mesh_max: 223,201
probe_count: 5,5
relative_reference_index: 12
algorithm: bicubic
fade_start: 1
fade_end: 10
#fade_target:
# The z position in which fade should converge. When this value is set
# to a non-zero value it must be within the range of z-values in the mesh.
# Users that wish to converge to the z homing position should set this to 0.
# Default is the average z value of the mesh.
split_delta_z: 0.015
# The amount of Z difference (in mm) along a move that will
# trigger a split. Default is .025.
move_check_distance: 3
# The distance (in mm) along a move to check for split_delta_z.
# This is also the minimum length that a move can be split. Default
# is 5.0.
mesh_pps: 4,4
# A comma separated pair of integers (X,Y) defining the number of
# points per segment to interpolate in the mesh along each axis. A
# "segment" can be defined as the space between each probed
# point. The user may enter a single value which will be applied
# to both axes. Default is 2,2.
#bicubic_tension: .2
# When using the bicubic algorithm the tension parameter above
# may be applied to change the amount of slope interpolated.
# Larger numbers will increase the amount of slope, which
# results in more curvature in the mesh. Default is .2.
[homing_override]
axes: z
set_position_z:0 # Make printer think Z axis is at zero, so we can force a move upwards away from build plate
gcode:
G90
G1 Z10 F3000 ; move up to prevent accidentally scratching build plate
G28 X
G28 Y
PROBE_OUT
G1 X117 Y117 F6000
G28 Z
PROBE_IN
[screws_tilt_adjust]
screw1: 12, -4
screw1_name: front left screw
screw2: 180, -4
screw2_name: front right screw
screw3: 180, 160
screw3_name: rear right screw
screw4: 12, 160
screw4_name: rear left screw
screw_thread: CW-M4
horizontal_move_z: 10
[gcode_macro SCREWS_TILT_CALCULATE]
rename_existing: _SCREWS_TILT_CALCULATE
gcode:
PROBE_OUT
_SCREWS_TILT_CALCULATE
PROBE_IN
#####################################################################
# KlackEnder- Macros
#####################################################################
[gcode_macro PROBE_OUT]
gcode:
G90
G1 X229 F4000
G4 P300
G1 Z15
G1 X150
[gcode_macro PROBE_IN]
gcode:
G90
G1 Z20
G1 X229 F20000
G1 Y-5 #Check this against your config of [stepper_y] position_min: ...!
G1 Z0
G4 P300
G1 X204 F6000
G1 Z10
G1 X0
[gcode_macro BED_MESH_CALIBRATE]
rename_existing: _BED_MESH_CALIBRATE
gcode:
PROBE_OUT
_BED_MESH_CALIBRATE
PROBE_IN
[gcode_macro G29]
gcode:
PROBE_OUT
BED_MESH_CALIBRATE
#G1 Y0 F20000
PROBE_IN
[gcode_macro PROBE_CALIBRATE]
rename_existing: _PROBE_CALIBRATE
gcode:
{% if not 'xyz' in printer.toolhead.homed_axes %}
G28
{% endif %}
PROBE_OUT
G90
G1 Z20
G1 X115 Y115 F20000
_PROBE_CALIBRATE
TESTZ Z=20
M117 Remove the Klack to continue calibration!
[gcode_macro PROBE_ACCURACY]
rename_existing: _PROBE_ACCURACY
gcode:
{% if not 'xyz' in printer.toolhead.homed_axes %}
G28
{% endif %}
PROBE_OUT
G90
G1 Y115 X115 F20000
_PROBE_ACCURACY
PROBE_IN
#####################################################################
# KlackEnder- Menu - Only if you have a display installed!
#####################################################################
#[menu __main]
#type: list
#name: Main
#[menu __main __KlackEnder]
#type: list
#enable: True
#name: KlackEnder
#[menu __main __KlackEnder __ProbeOut]
#type: command
#name: Probe Out
#gcode:
# PROBE_OUT
#[menu __main __KlackEnder __ProbeIn]
#type: command
#name: Probe In
#gcode:
# PROBE_IN
#[menu __main __KlackEnder __AutoBedMesh]
#type: command
#name: Auto Bed Mesh
#gcode:
# G28
# AUTO_BED_MESH
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [bed_mesh default]
#*# version = 1
#*# points =
#*# 0.037500, 0.023750, 0.012500, 0.035000, 0.051250
#*# 0.053750, 0.031250, 0.027500, 0.031250, 0.021250
#*# 0.040000, 0.015000, 0.000000, 0.025000, 0.016250
#*# 0.102500, 0.037500, 0.021250, 0.025000, -0.006250
#*# 0.193750, 0.100000, 0.047500, 0.091250, 0.046250
#*# x_count = 5
#*# y_count = 5
#*# mesh_x_pps = 4
#*# mesh_y_pps = 4
#*# algo = bicubic
#*# tension = 0.2
#*# min_x = 8.0
#*# max_x = 223.0
#*# min_y = 35.0
#*# max_y = 201.0
#*#
#*# [probe]
#*# z_offset = 7.630