Klipper printer.cfg for Creality Ender 5 2019
This is a klipepr config file for a Creality Ender 5 (2019) configuration:
1# This file contains common pin mappings for the 2019 Creality
2# Ender 5. To use this config, the firmware should be compiled for the
3# AVR atmega1284p.
4
5# Note, a number of Melzi boards are shipped with a bootloader that
6# requires the following command to flash the board:
7# avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex
8# If the above command does not work and "make flash" does not work
9# then one may need to flash a bootloader to the board - see the
10# Klipper docs/Bootloaders.md file for more information.
11
12# See docs/Config_Reference.md for a description of parameters.
13
14[stepper_x]
15step_pin: PD7
16dir_pin: !PC5
17enable_pin: !PD6
18microsteps: 16
19rotation_distance: 40
20endstop_pin: ^PC2
21position_endstop: 225
22position_max: 230
23homing_speed: 30
24
25[stepper_y]
26step_pin: PC6
27dir_pin: !PC7
28enable_pin: !PD6
29microsteps: 16
30rotation_distance: 40
31endstop_pin: ^PC3
32position_endstop: 225
33position_max: 230
34homing_speed: 30
35
36[stepper_z]
37step_pin: PB3
38dir_pin: !PB2
39enable_pin: !PA5
40microsteps: 16
41rotation_distance: 8 # Use 4 for Ender5 versions after late 2019
42endstop_pin: probe:z_virtual_endstop
43#position_endstop: 0.0
44position_max: 300
45
46[extruder]
47max_extrude_only_distance: 100.0
48step_pin: PB1
49dir_pin: !PB0
50enable_pin: !PD6
51microsteps: 16
52rotation_distance: 33.683
53nozzle_diameter: 0.400
54filament_diameter: 1.750
55heater_pin: PD5
56sensor_type: EPCOS 100K B57560G104F
57sensor_pin: PA7
58control: pid
59# tuned for stock hardware with 200 degree Celsius target
60pid_Kp: 21.527
61pid_Ki: 1.063
62pid_Kd: 108.982
63min_temp: 0
64max_temp: 250
65
66[heater_bed]
67heater_pin: PD4
68sensor_type: EPCOS 100K B57560G104F
69sensor_pin: PA6
70control: pid
71# tuned for stock hardware with 50 degree Celsius target
72pid_Kp: 54.027
73pid_Ki: 0.770
74pid_Kd: 948.182
75min_temp: 0
76max_temp: 130
77
78[fan]
79pin: PB4
80
81[mcu]
82serial: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
83# Silent boards tend to have the exact same serial ID, except without USB2.0, using USB instead.
84# e.g. /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
85
86[printer]
87kinematics: cartesian
88max_velocity: 300
89max_accel: 3000
90max_z_velocity: 5
91max_z_accel: 100
92
93[display]
94lcd_type: st7920
95cs_pin: PA3
96sclk_pin: PA1
97sid_pin: PC1
98encoder_pins: ^PD2, ^PD3
99click_pin: ^!PC0
100
101# ------
102
103[bltouch]
104sensor_pin: ^PC4
105control_pin: PA4
106x_offset: -41.0
107y_offset: -13.0
108#z_offset: 4
109samples: 2
110# NOTE: this is dangerous to be used on genuine BL-Touch probes
111#
112# my bltouch reports QUERY_PROBE properly, but it fails
113# see: https://www.klipper3d.org/BLTouch.html#bl-touch-clones
114pin_up_touch_mode_reports_triggered: false
115
116[bed_mesh]
117speed: 180
118horizontal_move_z: 5
119mesh_min: 15,15
120mesh_max: 170,203
121probe_count: 5,5
122# use the first layers to compensate for the inacuracies in the bed
123fade_start: 1.0
124fade_end: 10.0
125
126[safe_z_home]
127home_xy_position: 120, 130 # Change coordinates to the center of your print bed
128speed: 150
129z_hop: 10 # Move up 10mm
130z_hop_speed: 5
131
132#[homing_override]
133#set_position_z:0
134#gcode:
135# G1 Z5 F600
136# G28 X Y
137# G1 X159 Y116 F6000
138# G28 Z
139
140[gcode_macro G29]
141gcode:
142 BED_MESH_CALIBRATE
143
144
145[include mainsail.cfg]
146
147#*# <---------------------- SAVE_CONFIG ---------------------->
148#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
149#*#
150#*# [bltouch]
151#*# z_offset = 2.271
152#*#
153#*# [bed_mesh 100 degree]
154#*# version = 1
155#*# points =
156#*# 0.222500, 0.180000, 0.133750, 0.127500
157#*# 0.178750, 0.041250, 0.007500, 0.021250
158#*# 0.152500, 0.057500, 0.036250, 0.041250
159#*# 0.136250, 0.176250, 0.200000, 0.131250
160#*# x_count = 4
161#*# y_count = 4
162#*# mesh_x_pps = 2
163#*# mesh_y_pps = 2
164#*# algo = lagrange
165#*# tension = 0.2
166#*# min_x = 15.0
167#*# max_x = 169.97
168#*# min_y = 15.0
169#*# max_y = 202.97
170#*#
171#*# [bed_mesh default]
172#*# version = 1
173#*# points =
174#*# 0.140000, 0.128750, 0.127500, 0.068750, 0.067500
175#*# 0.167500, 0.060000, 0.032500, -0.023750, -0.005000
176#*# 0.176250, 0.063750, 0.031250, -0.048750, -0.015000
177#*# 0.210000, 0.120000, 0.082500, 0.023750, 0.030000
178#*# 0.160000, 0.208750, 0.291250, 0.186250, 0.105000
179#*# x_count = 5
180#*# y_count = 5
181#*# mesh_x_pps = 2
182#*# mesh_y_pps = 2
183#*# algo = lagrange
184#*# tension = 0.2
185#*# min_x = 15.0
186#*# max_x = 170.0
187#*# min_y = 15.0
188#*# max_y = 203.0