-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
NEO_1coderookie_printer.cfg
254 lines (220 loc) · 8.88 KB
/
NEO_1coderookie_printer.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
# This file contains pin mappings for the Anycubic Kobra Go/Neo with HC32F460 (board: TriGorilla V_3.0.6) .
# Most parameter came from the stock Marlin firmware
# Initial config credit: xpeng and cringegnere
# This config is the one from 1coderookie for the Kobra Neo and can be found here: https://github.com/1coderookie/Klipper4KobraGoNeo/blob/main/cfg/NEO_1coderookie_printer.cfg
# Check out my comprehensive infosite about Anycubic's Kobra Neo (and Kobra Go): https://1coderookie.github.io/KobraGoNeoInsights/
# Here you'll find some notes on Klipper at the Kobra Neo (and Kobra Go): https://1coderookie.github.io/KobraGoNeoInsights/firmware/fw_klipper/
# Adjust the settings accordingly! You need to tune specific settings for your individual setup!
# To build the correct firmware, use the following configuration during the setup process for creating the klipper.bin file:
# - Micro Controller: Huada Semiconductor HC32F460
# - Communication Interface: Serial (PA3 & PA2) - Anycubic
# - Application Address: 0x008000
# - Clock Speed: 168MHz (note: the 200MHz option was added in June 2023, see https://github.com/klipper3d/klipper/pull/6291 - however, a user mentioned problems with using the 200MHz setting though, so it might be safer to use the 168MHz.
# See Klipper's Config_Reference.md for a description of parameters.
# Please uncomment or add the belonging [include] entries.
# If [include] entries are active which files aren't existent, an error message will occur and initialisation won't be successful!
#[include gcode.cfg]
#[include adxl345Pico.cfg]
#[include extras.cfg]
#[include mpu6500.cfg]
#[include shell_command.cfg]
#[include mainsail.cfg]
#[include fluidd.cfg]
#[exclude_object] # Allows Klipper to exclude objects while a print is in progress - see official docs for further info.
[idle_timeout]
timeout: 600
[mcu]
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 # adjust to your specific setup
restart_method: command
[printer]
kinematics: cartesian
max_velocity: 500
max_accel: 2000
max_z_velocity: 20
max_z_accel: 20
[stepper_x]
step_pin: PA12
dir_pin: PA11
enable_pin: !PA15
microsteps: 16
rotation_distance: 40
position_endstop: -7
position_min: -7
position_max: 220
homing_speed: 60
endstop_pin: !PH2
homing_retract_dist: 0
[stepper_y]
step_pin: PA9
dir_pin: PA8
enable_pin: !PA15
microsteps: 16
rotation_distance: 40
position_endstop: -17
position_min:-17
position_max: 220
homing_speed: 60
endstop_pin: ^!PC13
homing_retract_dist: 0
[stepper_z]
step_pin: PC7
dir_pin: !PC6
enable_pin: !PA15
microsteps: 16
rotation_distance: 8
endstop_pin: ^PC14 # "probe:z_virtual_endstop" instead of "^PC14" COULD be used for using the probe as a virtual endstop instead of using the regular z endstop, but imho it's not advisable to do so due to the risk of crashing your nozzle if the probe is faulty
position_min: -10
position_max: 245
#position_endstop: 0
homing_speed: 5
second_homing_speed:1
homing_retract_dist: 2.3
[safe_z_home]
home_xy_position: 0, 0
speed: 65
z_hop: 10
z_hop_speed: 10
[extruder]
max_extrude_only_distance: 100.0
step_pin: PB15
dir_pin: !PB14
enable_pin: !PA15
microsteps: 16
rotation_distance: 7.938 # Calibrate the rotation distance for your specific setup!
nozzle_diameter: 0.600 # ATTENTION: mind that I'm using a 0.6mm nozzle here, so you have to set your nozzle diameter accordingly!
filament_diameter: 1.750
heater_pin: PB8
#sensor_type: ATC Semitec 104GT-2 # Stock sensor doesn't seem to be an original ATC type actually and reports lower temps than actually present.
sensor_type: Generic 3950 # Seems to give more precise results than the ATC, further tests needed tho.
sensor_pin: PC3
min_temp: 5
min_extrude_temp: 5
max_temp: 260 #Stock is 250
pressure_advance: 0.032 # Adjust this value to the result of your Pressure Advance tests.
pressure_advance_smooth_time: 0.04 # = default; you can try smaller smooth time together with smaller pressure advance value
[firmware_retraction] # Adjust the settings to your needs.
retract_length: 0.8
retract_speed: 50
unretract_extra_length: 0
unretract_speed: 40
[heater_bed]
heater_pin: PB9
sensor_type: EPCOS 100K B57560G104F # Stock fw config, seems to report the correct temps.
#sensor_type: Generic 3950
sensor_pin: PC1
min_temp: 0
max_temp: 120
[bed_mesh]
speed: 500
horizontal_move_z: 20 # I increased this value to avoid the error "probe triggered prior to movement", you might wanna change it.
mesh_min: 32, 26
mesh_max: 189, 189
probe_count: 5, 5
zero_reference_position: 72.5, 106 # This should be the same location where Z_ENDSTOP_CALIBRATE is performed.
algorithm: lagrange
# Example for a setting which probes more points and reaches out to the corners of the bed a bit more:
#mesh_min: 32, 20
#mesh_max: 190, 200
#probe_count: 7, 7
#zero_reference_position: 72.5, 106 #should be the same location where Z_ENDSTOP_CALIBRATION is performed
#algorithm: bicubic
#[screws_tilt_adjust] # Activate this if you're using adjustable spacers (springs/silicone) for the bedmount instead of the rigid stock ones. From the docs: "Tool to help adjust bed screws tilt using Z probe. One may define a screws_tilt_adjust config section to enable a SCREWS_TILT_CALCULATE g-code command."
#screw1: -6, 24
#screw1_name: front left screw
#screw2: 157, 24
#screw2_name: front right screw
#screw3: 157, 188
#screw3_name: rear right screw
#screw4: -6, 188
#screw4_name: rear left screw
#horizontal_move_z: 10.
#speed: 50.
#screw_thread: CCW-M4 #most likely - not 100% sure yet though
[probe]
pin: PA1
x_offset: 37.5
y_offset: 4
samples: 6
samples_result: average
samples_tolerance: 0.03
samples_tolerance_retries: 6
sample_retract_dist: 5 # I increased this value from 0.5 to 5 to avoid the error "probe triggered prior to movement", you might wanna change it.
speed:1
lift_speed:4
[controller_fan controller_fan]
#max_power: 0.75
pin: PB12
#cycle_time: 0.000050 # = 20kHz as this seems to be the frequency in the stock firmware, not 100% sure yet tho
[heater_fan extruder_fan]
pin: PB13
cycle_time: 0.000050 # = 20kHz as this seems to be the frequency in the stock firmware, not 100% sure yet ho
[fan]
pin: PB5
cycle_time: 0.000050 # = 20kHz as this seems to be the frequency in the stock firmware referring to xpeng's findings
[output_pin enable_pin]
#This is the pin controls bed, hotend, extruder fan, part fan.
pin: PB6
value: 1
#[output_pin beeper]
#pin: PB7
#[output_pin bl_pin]
#pin: PC0
#[output_pin tft_rst]
#pin: PB4
#[filament_switch_sensor filament_sensor] # Activate this and adjust the settings to your needs if using the optional filament runout sensor. Explanations about the settings are taken from the Klipper docs.
#pause_on_runout: True # When set to True, a PAUSE will execute immediately after a runout is detected. Note that if pause_on_runout is False and the runout_gcode is omitted then runout detection is disabled. Default is True.
#runout_gcode: # A list of G-Code commands to execute after a filament runout is detected. See docs/Command_Templates.md for G-Code format. If pause_on_runout is set to True this G-Code will run after the PAUSE is complete. The default is not to run any G-Code commands.
#insert_gcode: # A list of G-Code commands to execute after a filament insert is detected. See docs/Command_Templates.md for G-Code format. The default is not to run any G-Code commands, which disables insert detection.
#event_delay: 3.0 # The minimum amount of time in seconds to delay between events. Events triggered during this time period will be silently ignored. The default is 3 seconds.
#pause_delay: 0.5 # The amount of time to delay, in seconds, between the pause command dispatch and execution of the runout_gcode. It may be useful to increase this delay if OctoPrint exhibits strange pause behavior. Default is 0.5 seconds.
#switch_pin: !PC15
#[input_shaper] # activate this and set the correct values and type according to your findings/measurements
#shaper_freq_x: 43.6
#shaper_freq_y: 58.6
#shaper_type: ei
#shaper_freq_x: 31.8
#shaper_freq_y: 45.6
#shaper_type: mvz
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [extruder]
#*# control = pid
#*# pid_kp = 20.035
#*# pid_ki = 1.020
#*# pid_kd = 98.423
#*#
#*# [heater_bed]
#*# control = pid
#*# pid_kp = 63.239
#*# pid_ki = 0.905
#*# pid_kd = 1105.099
#*#
#*# [stepper_z]
#*# position_endstop = 2.690
#*#
#*# [input_shaper]
#*# shaper_type_x = mzv
#*# shaper_type_y = mzv
#*#
#*# [probe]
#*# z_offset = 1.481
#*#
#*# [bed_mesh default]
#*# version = 1
#*# points =
#*# -0.087500, -0.060000, -0.043333, -0.078750, -0.070833
#*# -0.029583, 0.000000, 0.042500, 0.056250, 0.076667
#*# 0.026667, -0.012083, -0.006667, 0.000000, 0.024583
#*# -0.007083, -0.008333, 0.037917, 0.043333, 0.062500
#*# -0.086667, -0.061667, -0.071250, -0.096250, -0.057500
#*# x_count = 5
#*# y_count = 5
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = lagrange
#*# tension = 0.2
#*# min_x = 32.0
#*# max_x = 189.0
#*# min_y = 26.0
#*# max_y = 189.0