Skip to content

Instantly share code, notes, and snippets.

@varunmehta
Last active June 14, 2025 17:12
Show Gist options
  • Save varunmehta/c38b7458e9c8ee077fa80464b77e0c46 to your computer and use it in GitHub Desktop.
Save varunmehta/c38b7458e9c8ee077fa80464b77e0c46 to your computer and use it in GitHub Desktop.
Klipper config for a dual z-axis ender3 with skr 1.4 turbo
# 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.
[stepper_x]
step_pin: P2.2
dir_pin: !P2.6
enable_pin: !P2.1
microsteps: 16
rotation_distance: 40
endstop_pin: P1.29
position_endstop: 0
position_max: 235
homing_speed: 50
[tmc2209 stepper_x]
uart_pin: P1.10
run_current: 0.800
stealthchop_threshold: 999999
[stepper_y]
step_pin: P0.19
dir_pin: !P0.20
enable_pin: !P2.8
microsteps: 16
rotation_distance: 40
endstop_pin: P1.28
position_endstop: 0
position_max: 235
homing_speed: 50
[tmc2209 stepper_y]
uart_pin: P1.9
run_current: 0.800
stealthchop_threshold: 999999
[stepper_z]
step_pin: P0.22
dir_pin: P2.11
enable_pin: !P0.21
microsteps: 16
rotation_distance: 8
endstop_pin: probe:z_virtual_endstop
position_min: -5
position_max: 300
[tmc2209 stepper_z]
uart_pin: P1.8
run_current: 0.650
stealthchop_threshold: 999999
[extruder]
step_pin: P2.13
dir_pin: !P0.11
enable_pin: !P2.12
microsteps: 16
rotation_distance: 33.500
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: P2.7
sensor_type: EPCOS 100K B57560G104F
sensor_pin: P0.24
control: pid
pid_Kp: 8.688
pid_Ki: 0.200
pid_Kd: 94.158
min_temp: 0
max_temp: 250
pressure_advance: 0.06
[tmc2209 extruder]
uart_pin: P1.4
run_current: 0.800
stealthchop_threshold: 999999
[heater_bed]
heater_pin: P2.5
sensor_type: EPCOS 100K B57560G104F
sensor_pin: P0.25
control: pid
pid_Kp: 73.021
pid_Ki: 1.764
pid_Kd: 755.771
min_temp: 0
max_temp: 130
[fan]
pin: P2.3
[heater_fan heatbreak_cooling_fan]
pin:P2.4
heater: extruder
heater_temp: 50.0
fan_speed: 1.0
[mcu]
serial: /dev/serial/by-id/usb-Klipper_lpc1769_0800001880A037AFD8E7BF5BC22000F5-if00
[printer]
kinematics: cartesian
max_velocity: 400
max_accel: 3000
max_z_velocity: 10
max_z_accel: 100
[bltouch]
sensor_pin: ^P0.10
control_pin: P2.0
x_offset : -48
y_offset : -5
samples: 1
speed: 2
z_offset: 0.700
[safe_z_home]
home_xy_position: 125, 125 # Change coordinates to the center of your print bed
speed: 50
z_hop: 10 # Move up 10mm
z_hop_speed: 5
[bed_mesh]
speed: 120
horizontal_move_z: 5
mesh_min: 11, 22
mesh_max: 175, 220
probe_count: 5, 5
mesh_pps: 2,2
fade_start: 1
fade_end: 10
fade_target: 0
[gcode_macro G29]
gcode:
BED_MESH_CALIBRATE PROFILE=default
BED_MESH_PROFILE LOAD=default
[endstop_phase]
[include mainsail.cfg]
[virtual_sdcard]
path: /home/vmehta/printer_E3DA_data/gcodes
########################################
# 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"
[display]
lcd_type: st7920
cs_pin: EXP1_7
sclk_pin: EXP1_6
sid_pin: EXP1_8
encoder_pins: ^EXP1_5, ^EXP1_3
click_pin: ^!EXP1_2
[output_pin beeper]
pin: EXP1_1
# See the sample-lcd.cfg file for definitions of common LCD displays.
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*#
#*# [bed_mesh default]
#*# version = 1
#*# points =
#*# -0.740000, -0.935000, -1.035000, -1.057500, -1.322500
#*# -0.032500, -0.352500, -0.640000, -0.802500, -1.045000
#*# 0.677500, 0.290000, -0.020000, -0.285000, -0.737500
#*# 1.530000, 1.022500, 0.542500, 0.110000, -0.345000
#*# 2.272500, 1.710000, 1.142500, 0.647500, -0.015000
#*# x_count = 5
#*# y_count = 5
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = lagrange
#*# tension = 0.2
#*# min_x = 11.0
#*# max_x = 196.0
#*# min_y = 22.0
#*# max_y = 227.0
#*#
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment