-
Notifications
You must be signed in to change notification settings - Fork 4
/
printer.cfg
514 lines (455 loc) · 14.2 KB
/
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
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
## Voron Design VORON2.4 350mm Monster8 TMC2209 UART config
[include keenovo.cfg]
[mcu]
canbus_uuid: 3d6d1a2c7936
[printer]
kinematics: corexy
max_velocity: 500
max_accel: 10000
max_accel_to_decel: 5000
# The printer is capable of 300mm/s at 2000mm/s², but since the max Z
# movement during a print will be around 1mm, 50mm/s is fast enough
# to accelerate halfway then accelerate in the opposite direction the
# other half... ie: it's the fastest that would be reached during
# normal printing. Outside of normal printing, there's no need to
# cause extra wear on the motion system.
#max_z_velocity: 300
max_z_velocity: 50
max_z_accel: 2000
square_corner_velocity: 8.0
#####################################################################
# X/Y Stepper Settings
#####################################################################
[stepper_x]
#! Connected to Driver0:X (B Motor)
step_pin: PC14
dir_pin: PC13
enable_pin: !PC15 # Shared with stepper_y
#! In X- Position (X endstop)
endstop_pin: PA14 # Pullup on board
rotation_distance: 40
microsteps: 16
full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper
position_min: -1
position_endstop: 348
position_max: 350
homing_speed: 50 #Max 100
second_homing_speed: 12
homing_retract_dist: 5
homing_positive_dir: true
[tmc2209 stepper_x]
uart_pin: PE6
interpolate: False
run_current: 1.0 # Max 1.4 (tmc2209 limit)
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_y]
#! Connected to Driver1:Y (A Motor)
step_pin: PE5
dir_pin: !PE4
enable_pin: !PC15 # Shared with stepper_x
#! In Y- Position (Y endstop)
endstop_pin: PA15 # Pullup on board
rotation_distance: 40
microsteps: 16
full_steps_per_rotation:200 #set to 400 for 0.9 degree stepper
position_min: 0
position_endstop: 355
position_max: 357
homing_speed: 50 #Max 100
second_homing_speed: 12
homing_retract_dist: 5
homing_positive_dir: true
[tmc2209 stepper_y]
uart_pin: PE3
interpolate: False
run_current: 1.0 # Max 1.4 (tmc2209 limit)
sense_resistor: 0.110
stealthchop_threshold: 0
#####################################################################
# Z Stepper Settings
#####################################################################
#! In Driver2:Z2 Position (Z0 Stepper - Front Left)
[stepper_z]
step_pin: PE1
dir_pin: PE0
enable_pin: !PE2
endstop_pin: probe:z_virtual_endstop
rotation_distance: 40
gear_ratio: 80:16
microsteps: 4
## Z-position of nozzle (in mm) to z-endstop trigger point relative to print surface (Z0)
## (+) value = endstop above Z0, (-) value = endstop below
## Increasing position_endstop brings nozzle closer to the bed
## After you run Z_ENDSTOP_CALIBRATE, position_endstop will be stored at the very end of the config
position_max: 450
# Needs to be low enough for bed variance and QGL
position_min: -8.0
homing_speed: 15
second_homing_speed: 3
homing_retract_dist: 3
[tmc2209 stepper_z]
uart_pin: PB7
interpolate: False
run_current: 1.0 # Max 1.4 (tmc2209 limit)
sense_resistor: 0.110
stealthchop_threshold: 0
#! In Driver3:E0 Position (Z1 Stepper - Rear Left)
[stepper_z1]
step_pin: PB5
dir_pin: !PB4
enable_pin: !PB6
rotation_distance: 40
gear_ratio: 80:16
microsteps: 4
[tmc2209 stepper_z1]
uart_pin: PB3
interpolate: False
run_current: 1.0 # Max 1.4 (tmc2209 limit)
sense_resistor: 0.110
stealthchop_threshold: 0
#! In Driver4:E1 Position (Z2 Stepper - Rear Right)
[stepper_z2]
step_pin: PD6
dir_pin: PD5
enable_pin: !PD7
rotation_distance: 40
gear_ratio: 80:16
microsteps: 4
[tmc2209 stepper_z2]
uart_pin: PD4
interpolate: False
run_current: 1.0 # Max 1.4 (tmc2209 limit)
sense_resistor: 0.110
stealthchop_threshold: 0
## In Driver5:E2 Position (Z3 Stepper - Front Right)
[stepper_z3]
step_pin: PD2
dir_pin: !PD1
enable_pin: !PD3
rotation_distance: 40
gear_ratio: 80:16
microsteps: 4
[tmc2209 stepper_z3]
uart_pin: PD0
interpolate: False
run_current: 1.0 # Max 1.4 (tmc2209 limit)
sense_resistor: 0.110
stealthchop_threshold: 0
#####################################################################
# Bed Heater
#####################################################################
[heater_bed]
#! In H-BED position (SSR)
heater_pin: PB10
#! In TB position (Bed Thermistor)
sensor_pin: PC0 # Pullup on board
sensor_type: keenovo
max_power: 1.0
min_temp: 15
max_temp: 137
control: pid
pwm_cycle_time: 0.300
# Calibrated at 110° with Nevermore and bedfans at 100%
#pid_kp = 44.449
#pid_ki = 1.058
#pid_kd = 466.714
# Calibrated at 135° with Nevermore and bedfans at 100%
pid_kp = 59.347
pid_ki = 1.774
pid_kd = 496.292
#####################################################################
# Filament Sensor
#####################################################################
[filament_switch_sensor Filament]
##! In X- position (Filament runout switch)
switch_pin: !PA13
#####################################################################
# Bed Mesh
#####################################################################
[bed_mesh]
# Min/max taken from QGL
# This needed to be changed after the magnet was installed
# Inductive probe values
#mesh_min: 50,50
#mesh_max: 300,250
# Klicky values
#mesh_min: 22,22
#mesh_max: 328,328
# 40mm for calicat butt
mesh_min: 40,40
mesh_max: 310,310
# Near the tight screw, which is near where the endstop used to be
zero_reference_position: 250,335
probe_count: 7,7
algorithm: bicubic # Can't use lagrange with over 6 points
speed: 250
# Split on any single-step change
split_delta_z: 0.01
horizontal_move_z: 16
#####################################################################
# Fan Control
#####################################################################
[temperature_fan Chamber]
#! FAN0 Connector (Exhaust fan)
pin: PA2
sensor_type: Generic 3950
#! In TH1 Position (Chamber Temperature)
sensor_pin: PC2
control: watermark
min_temp: 15 # Lowest possible without error
max_temp: 75 # Just above target temperature because we don't want the fan running with a fire
# This is *maximum* so we want it high.
target_temp: 70.0
gcode_id: C
max_delta: 1.0
[fan_generic Electronics]
#! In HE1 Position (Electronics fan)
# You can place both wires into a single ferrule
pin: PB0
shutdown_speed: 1.0
kick_start_time: 1.0
off_below: 0.15
[delayed_gcode CoolElectronics]
initial_duration: 1
gcode:
SET_FAN_SPEED FAN=Electronics SPEED=1.0
[gcode_macro ElectronicsFansFast]
gcode:
SET_FAN_SPEED FAN=Electronics SPEED=1.0
[gcode_macro ElectronicsFansMedium]
gcode:
SET_FAN_SPEED FAN=Electronics SPEED=0.5
[gcode_macro ElectronicsFansSlow]
gcode:
SET_FAN_SPEED FAN=Electronics SPEED=0.26
[gcode_macro ElectronicsFansOff]
gcode:
SET_FAN_SPEED FAN=Electronics SPEED=0.0
[temperature_sensor RPi]
sensor_type: temperature_host
sensor_path: /sys/class/thermal/thermal_zone0/temp
[temperature_sensor Frame]
#! In TH3 Position (Fame Temperature)
sensor_type: Generic 3950
sensor_pin: PC3
min_temp: 15
max_temp: 60
#####################################################################
# LED Control
#####################################################################
[output_pin CaseLight]
pin: PA3
pwm: True
cycle_time: 0.010
[delayed_gcode turnonenclosurelights]
initial_duration: 0.1
gcode:
SET_PIN PIN=CaseLight VALUE=0.3
[menu __main __control __caselightonoff]
type: input
enable: {'output_pin CaseLight' in printer}
name: Lights: {'ON ' if menu.input else 'OFF'}
input: {printer['output_pin CaseLight'].value}
input_min: 0
input_max: 1
input_step: 1
gcode:
SET_PIN PIN=CaseLight VALUE={0.3 if menu.input else 0}
[menu __main __control __caselightpwm]
type: input
enable: {'output_pin CaseLight' in printer}
name: Lights: {'%3d' % (menu.input*100)}%
input: {printer['output_pin CaseLight'].value}
input_min: 0.0
input_max: 1.0
input_step: 0.01
gcode:
SET_PIN PIN=CaseLight VALUE={menu.input}
#####################################################################
# Homing and Gantry Adjustment Routines
#####################################################################
[idle_timeout]
timeout: 7200
[safe_z_home]
# XY Location of the Z Endstop Switch
# With Tap, the position on the bed to probe at...
# This is near the "tight" screw, which is the one by where the endstop used to be.
home_xy_position: 250,335
speed: 250
z_hop: 10
z_hop_speed: 25
[quad_gantry_level]
## Use QUAD_GANTRY_LEVEL to level a gantry.
## Min & Max gantry corners - measure from nozzle at MIN (0,0) and
## MAX (250, 250), (300,300), or (350,350) depending on your printer size
## to respective belt positions
## Gantry Corners for 350mm Build
gantry_corners:
-60,-10
410,420
points:
10,10
10,340
340,340
340,10
horizontal_move_z: 20
retries: 5
retry_tolerance: 0.011
max_adjust: 150
speed: 250
#####################################################################
# Display
#####################################################################
[display]
#! In EXP1/EXP2 (mini12864 LCD Display)
lcd_type: uc1701
cs_pin: PE11
a0_pin: PD10
rst_pin: PD9
encoder_pins: ^PE8,^PE9
click_pin: ^!PE10
contrast: 63
#spi_bus: spi1
spi_software_mosi_pin: PA7
spi_software_miso_pin: PA6
spi_software_sclk_pin: PA5
[neopixel mks_mini12864_v3]
# To control Neopixel RGB in mini12864 display
pin: PD8
chain_count: 3
initial_RED: 0.1
initial_GREEN: 0.5
initial_BLUE: 0.0
color_order: RGB
# Set RGB values on boot up for each Neopixel.
# Index 1 = display, Index 2 and 3 = Knob
[delayed_gcode setdisplayneopixel]
initial_duration: 0.1
gcode:
SET_LED LED=mks_mini12864_v3 RED=1 GREEN=0.12 BLUE=0.12 INDEX=1 TRANSMIT=0
SET_LED LED=mks_mini12864_v3 RED=1 GREEN=0 BLUE=0 INDEX=2 TRANSMIT=0
SET_LED LED=mks_mini12864_v3 RED=1 GREEN=0 BLUE=0 INDEX=3
status_ready
[output_pin beeper]
pin: PB2
#####################################################################
# 3MOS "Driver"
#####################################################################
# Driver6:E3
# EN: PC8 - FAN1
# STEP: PC7 - FAN2
# DIR: PC6 - FAN3
[fan_generic BedFans]
pin: PC6
shutdown_speed: 1.0
kick_start_time: 0.5
off_below: 0.3
[fan_generic Nevermore]
pin: PC7
shutdown_speed: 1.0
kick_start_time: 0.3
off_below: 0.3
[fan_generic Convection]
pin: PC8
shutdown_speed: 1.0
kick_start_time: 0.3
off_below: 0.3
#####################################################################
# On-chip temperature sensor
#####################################################################
[temperature_sensor Monster8]
sensor_type: temperature_mcu
#####################################################################
# Extra Features
#####################################################################
[gcode_arcs]
[exclude_object]
#####################################################################
# External config
#####################################################################
[include ebb36.cfg]
[include bedfans.cfg]
[include fluidd-config.cfg]
[include input-shaper.cfg]
[include wipepurge.cfg]
[include nozzle_wipe.cfg]
[include leds.cfg]
[include print_area_bed_mesh.cfg]
#####################################################################
# Macros
#####################################################################
[include marlin-gcode.cfg]
[include klipper-gcode.cfg]
## Common Temperature Sensors
## "EPCOS 100K B57560G104F"
## "ATC Semitec 104GT-2"
## "Generic 3950"
## "Honeywell 100K 135-104LAG-J01"
## "NTC 100K MGB18-104F39050L32" (Keenovo Heater Pad)
## "AD595"
## "PT100 INA826"
## "PT1000"
#####################################################################
# Probe...
# Word on the street is that probe offsets fail if this isn't in
# printer.cfg...
#####################################################################
[probe]
pin: ebb36:PB6
# Tap
x_offset: 0
y_offset: 0
# Measured using Tap LED...
#z_offset = -0.72
# From measured, baby stepping -0.3 was still too high, going -0.35
#z_offset = -1.07
# Blob, https://discord.com/channels/460117602945990666/897036968335138816/1144500012122906645
# Actually apply the offset correctly...
#z_offset = -0.37 # Which printed 0.07 too low
#z_offset = -0.44 # Was a bit too low, but usable (a bit of elephants foot)
#z_offset = -0.46 # Still a bit of a foot...
#z_offset = -0.48 # obvious dredging with hand-cleaned nozzle...
#z_offset = -0.50 # Still a bit of the wavy stuff...
# z_offset = -0.52 # And still... this one tore the PEI. :(
#z_offset = -0.54 # Rebuild, apparently things moved with XG
#z_offset = -1.25 # Back to dragon, measured, this is at least 0.4mm too high
#z_offset = -0.85 # Micced at 0.34
#z_offset = -0.71 # Perfect for ABS (see V0 tools), 0.22mm too low for PC
#z_offset = -0.93 # Perfect for PC # Baby stepped down 0.08 after file cleaning
#z_offset = -0.85 # Perfect for PC? Actually toolhead wasn't connected!
#z_offset = -1.21 # Babystepped +0.5 from -0.71 # Was a joke sausage
#z_offset = -1.10 # And an extra -0.25
#z_offset = -0.85 # Just a bit too low..
z_offset = -0.83
speed: 15
lift_speed: 40
samples: 3
samples_result: median
sample_retract_dist: 2.0
samples_tolerance: 0.011
samples_tolerance_retries: 5
activate_gcode:
{% set PROBE_TEMP = printer["gcode_macro PROBE_TEMP"].probe_temp %}
{% set MAX_TEMP = PROBE_TEMP + 5 %}
{% set ACTUAL_TEMP = printer.extruder.temperature %}
{% set TARGET_TEMP = printer.extruder.target %}
{% if TARGET_TEMP > PROBE_TEMP %}
{ action_respond_info('Extruder temperature target of %.1fC is too high, lowering to %.1fC' % (TARGET_TEMP, PROBE_TEMP)) }
M109 S{ PROBE_TEMP }
{% else %}
# Temperature target is already low enough, but nozzle may still be too hot.
{% if ACTUAL_TEMP > MAX_TEMP %}
{ action_respond_info('Extruder temperature %.1fC is still too high, waiting until below %.1fC' % (ACTUAL_TEMP, MAX_TEMP)) }
TEMPERATURE_WAIT SENSOR=extruder MAXIMUM={ MAX_TEMP }
{% endif %}
{% endif %}
[gcode_macro PROBE_TEMP]
variable_probe_temp: 150
gcode:
{% set old_probe_temp = probe_temp %}
{% set new_probe_temp = params.MAX_TEMP|default(150) %}
{% set psamples = params.SAMPLES|default(printer.probe.samples) %}
SET_GCODE_VARIABLE MACRO=PROBE_TEMP VARIABLE=probe_temp VALUE={new_probe_temp}
PROBE SAMPLES={psamples}
SET_GCODE_VARIABLE MACRO=PROBE_TEMP VARIABLE=probe_temp VALUE={old_probe_temp}