EnderPlusKlipper/printer.cfg

593 lines
14 KiB
INI

#-------------------------------------
# Ender 5 Plus w/ SKR 1.4
# v. 0.10
#-------------------------------------
[include mainsail.cfg]
#-------------------------------------
# Firmware Retraction
#-------------------------------------
# [firmware_retraction]
# retract_length: 0.8
# retract_speed: 60
# unretract_extra_length: 0
# unretract_speed: 60
#-------------------------------------
# Pressure Advance
#-------------------------------------
# [extruder]
# pressure_advance: 0.0 # Overture PLA
#-------------------------------------
# Input Shaper
#-------------------------------------
#[mcu rpi]
#serial: /tmp/klipper_host_mcu
#[adxl345]
#cs_pin: rpi:None
#[resonance_tester]
#accel_chip: adxl345
#probe_points:
# 180, 180, 20 # an example
#-------------------------------------
# Extruder
#-------------------------------------
[extruder]
step_pin: P2.13
dir_pin: !P0.11
enable_pin: !P2.12
microsteps: 16
rotation_distance: 32.85
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: P2.7
sensor_type: EPCOS 100K B57560G104F
sensor_pin: P0.24
min_temp: 0
max_temp: 300
max_extrude_only_distance: 750
# pressure_advance: 0.0 # Overture PLA
# printer.cfg
[gcode_macro SET_ACTIVE_SPOOL]
gcode:
{% if params.ID %}
{% set id = params.ID|int %}
{action_call_remote_method(
"spoolman_set_active_spool",
spool_id=id
)}
{% else %}
{action_respond_info("Parameter 'ID' is required")}
{% endif %}
[gcode_macro CLEAR_ACTIVE_SPOOL]
gcode:
{action_call_remote_method(
"spoolman_set_active_spool",
spool_id=None
)}
#-------------------------------------
# Printer General
#-------------------------------------
[safe_z_home]
home_xy_position: 180, 180
speed: 100
z_hop: 10
z_hop_speed: 100
[bltouch]
sensor_pin: P0.10 #Probe
control_pin: P2.0 #SERVOS
stow_on_each_sample: False
probe_with_touch_mode: True
pin_up_touch_mode_reports_triggered: False
set_output_mode: 5V
speed: 100
pin_move_time: 0.675
lift_speed: 200
samples: 4
sample_retract_dist: 10
#Mount Offset
x_offset: -45
y_offset: -7
[bed_mesh]
speed: 100
horizontal_move_z: 5
mesh_min: 5, 15
mesh_max: 310,337
probe_count: 5,5
fade_start: 1
fade_end: 10
[heater_bed]
heater_pin: P2.5
sensor_type: EPCOS 100K B57560G104F
sensor_pin: P0.25
max_power: 0.8
min_temp: 0
max_temp: 130
pwm_cycle_time: 0.01666
[fan]
pin: P2.3
[mcu]
serial: /dev/serial/by-id/usb-Klipper_lpc1768_2B4003196520BC9568FEE260C32000F5-if00
[filament_switch_sensor filament_sensor]
switch_pin: P1.26
[printer]
kinematics: cartesian
max_velocity: 170
max_accel: 2500
max_z_velocity: 5
max_z_accel: 100
[temperature_sensor raspberry_pi]
sensor_type: temperature_host
max_temp: 100
#-------------------------------------
# Bed Leveling
#-------------------------------------
[z_tilt]
z_positions: -18.4,180
378.4,180
points: 38,180
360,180
speed: 50
horizontal_move_z: 5
retries: 5
retry_tolerance:0.2
[screws_tilt_adjust]
screw1: 71,60
screw1_name: front left screw
screw2: 332,60
screw2_name: front right screw
screw3: 332,321
screw3_name: rear right screw
screw4: 71,321
screw4_name: rear left screw
horizontal_move_z: 10.
speed: 50.
screw_thread: CW-M4
[bed_screws]
screw1: 27.5, 47
screw2: 327.5, 47
screw3: 327.5, 307
screw4: 27.5, 307
[board_pins]
aliases:
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_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>
[display]
lcd_type: uc1701
cs_pin: EXP1_3
a0_pin: EXP1_4
rst_pin: EXP1_5
encoder_pins: ^EXP2_5, ^EXP2_3
click_pin: ^!EXP1_2
# Prędkość odświeżania wyświetlacza. Zwiększ, jeśli obraz migocze, zmniejsz, jeśli masz problemy z MCU.
# Ustaw na 120, jeśli nie masz problemów.
spi_speed: 2000000
contrast: 63
[neopixel btt_mini12864]
pin: EXP1_6
chain_count: 3 # Ten wyświetlacz ma 3 diody RGB
color_order: RGB # Sprawdź, czy Twój wyświetlacz ma taki porządek kolorów, inaczej kolory mogą być pomieszane
initial_RED: 0.0 # Początkowa jasność czerwonego (0.0 - 1.0)
initial_GREEN: 0.5 # Początkowa jasność zielonego (0.0 - 1.0)
initial_BLUE: 0.0 # Początkowa jasność niebieskiego (0.0 - 1.0)
#-------------------------------------
# Others
#-------------------------------------
[force_move]
enable_force_move: True
[virtual_sdcard]
path: /home/pali112/printer_data/gcodes
[exclude_object]
[display_status]
[pause_resume]
#[respond]
# default_type: echo
[idle_timeout]
timeout: 1800
gcode:
TURN_OFF_HEATERS
#-------------------------------------
# Stepper Drivers
#-------------------------------------
[tmc2208 stepper_x]
uart_pin: P1.10
interpolate: False
sense_resistor: 0.110
run_current: 0.80
#hold_current: 0.500
stealthchop_threshold: 999999
[tmc2208 stepper_y]
uart_pin: P1.9
interpolate: False
sense_resistor: 0.110
run_current: 0.80
stealthchop_threshold: 999999
[tmc2208 stepper_z] #z
uart_pin: P1.8
interpolate: False
sense_resistor: 0.110
run_current: 0.80
stealthchop_threshold: 999999
[tmc2208 stepper_z1] #z1
uart_pin: P1.1
interpolate: False
sense_resistor: 0.110
run_current: 0.80
stealthchop_threshold: 999999
[tmc2208 extruder]
uart_pin: P1.4
run_current: 0.80
interpolate: False
stealthchop_threshold: 999999
# -------------------------------------
# Steppers
# -------------------------------------
[stepper_x]
step_pin: P2.2
dir_pin: !P2.6
enable_pin: !P2.1
microsteps: 16
rotation_distance: 39.88
endstop_pin: P1.29
position_endstop: 360
position_min: 0
position_max: 360
homing_speed: 50
homing_retract_dist: 5
[stepper_y]
step_pin: P0.19
dir_pin: !P0.20
enable_pin: !P2.8
microsteps: 16
rotation_distance: 39.83
endstop_pin: P1.28
position_endstop: 360
position_min: 0
position_max: 360
homing_speed: 50
homing_retract_dist: 5
[stepper_z]
step_pin: P0.22
dir_pin: !P2.11 # Upewnij się co do '!' (próba ruchu i zmiana jeśli trzeba)
enable_pin: !P0.21 # Upewnij się co do '!' (próba ruchu i zmiana jeśli trzeba)
microsteps: 16
rotation_distance: 4
endstop_pin: probe:z_virtual_endstop
position_max: 400
position_min: -5
[stepper_z1]
step_pin: P1.15
dir_pin: !P1.14 # Upewnij się co do '!'
enable_pin: !P1.16 # Upewnij się co do '!'
microsteps: 16
rotation_distance: 4
endstop_pin: probe:z_virtual_endstop # Tak, również dla tego silnika BLTouch jest referencją
# Brak position_max i position_min - to jest poprawne dla dodatkowych silników
#-------------------------------------
# Macros
#-------------------------------------
[gcode_macro START_PRINT]
gcode:
G28
Z_TILT_ADJUST ; Wykonaj regulację Z-Tilt
BED_MESH_PROFILE LOAD=default ; Załaduj domyślny profil siatki stołu
G92 E0 ; Zresetuj ekstruder
G1 Z2.0 F3000 ; Podnieś głowicę na wysokość 2 mm
[gcode_macro _CLIENT_VARIABLE]
variable_use_custom_pos : False ; use custom park coordinates for x,y [True/False]
variable_custom_park_x : 0.0 ; custom x position; value must be within your defined min and max of X
variable_custom_park_y : 0.0 ; custom y position; value must be within your defined min and max of Y
variable_custom_park_dz : 2.0 ; custom dz value; the value in mm to lift the nozzle when move to park position
variable_retract : 1.0 ; the value to retract while PAUSE
variable_cancel_retract : 1 ; the value to retract while CANCEL_PRINT
variable_speed_retract : 35.0 ; retract speed in mm/s
variable_unretract : 1.0 ; the value to unretract while RESUME
variable_speed_unretract : 35.0 ; unretract speed in mm/s
variable_speed_hop : 15.0 ; z move speed in mm/s
variable_speed_move : 100.0 ; move speed in mm/s
variable_park_at_cancel : False ; allow to move the toolhead to park while execute CANCEL_PRINT [True,False]
## !!! Caution [firmware_retraction] must be defined in the printer.cfg if you set use_fw_retract: True !!!
#variable_use_fw_retract : False ; use fw_retraction instead of the manual version [True/False]
gcode:
[gcode_macro BEEP_ALERT]
gcode:
M300 S200 P200
M300 S200 P200
M300 S200 P200
[gcode_macro BEEP_READY]
gcode:
M300 S500 P50
M300 S600 P50
M300 S700 P50
[gcode_macro BEEP_CONFIRM]
gcode:
M300 S1000 P100
M300 S1200 P100
M300 S1400 P100
[gcode_macro G29]
gcode:
G28
M190 S60
BED_MESH_CALIBRATE
BED_MESH_PROFILE SAVE=default
# G1 X0 Y0 Z5 F4000
M140 S0
#####################################################################
# Filament Load/Unload Macros (Ender 5 Plus) - English Version
#####################################################################
[gcode_macro UNLOAD_FILAMENT]
gcode:
# Set default temperature for PLA if not provided
{% set TEMP = params.TEMP|default(210)|float %}
# Save G-Code state
SAVE_GCODE_STATE NAME=UNLOAD_state
M117 Heating nozzle...
# Heat nozzle to target temp and wait
SET_HEATER_TEMPERATURE HEATER=extruder TARGET={TEMP}
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={TEMP}
M117 Unloading filament...
# Set extruder to relative mode
M83
# Small retraction to form a tip
G1 E-5 F1800
# Fast, long retraction from the Bowden tube
# Adjust E-680 if your tube length is different
G1 E-680 F3000
M117 Remove filament!
# Restore previous G-Code state
RESTORE_GCODE_STATE NAME=UNLOAD_state
[gcode_macro LOAD_FILAMENT]
gcode:
# Set default temperature for PLA if not provided
{% set TEMP = params.TEMP|default(210)|float %}
# Save G-Code state
SAVE_GCODE_STATE NAME=LOAD_state
M117 Heating nozzle...
# Heat nozzle to target temp and wait
SET_HEATER_TEMPERATURE HEATER=extruder TARGET={TEMP}
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={TEMP}
M117 Insert filament into extruder.
# Set extruder to relative mode
M83
# Slow load through the Bowden tube
# Adjust E650 if your tube length is different
M117 Loading filament...
G1 E650 F400
# Final purge to clean the nozzle
M117 Purging nozzle...
G1 E40 F150
M117 Filament loaded.
# Restore previous G-Code state
RESTORE_GCODE_STATE NAME=LOAD_state
[gcode_macro CANCEL_PRINT]
description: Safely cancels the current print, parks the print head, and turns off heaters/motors.
gcode:
M117 Cancelling print...
TURN_OFF_HEATERS
M106 S0 ; Wyłącz wentylator hotendu
M107 ; Wyłącz wentylator druku
{% if printer.gcode_move.absolute_coordinates %} ; Sprawdź, czy tryb bezwzględny jest aktywny
G91 ; Ustaw tryb względny
{% endif %}
G0 Z10 F3000 ; Podnieś głowicę o 10mm (lub więcej, jeśli potrzebujesz)
G90 ; Ustaw tryb bezwzględny
G0 X5 Y5 F6000 ; Zaparkuj głowicę w bezpiecznym miejscu (np. lewy dolny róg)
M84 ; Wyłącz wszystkie silniki krokowe
M117 Print cancelled!
CLEAR_PAUSE ; Wyczyść stan pauzy, jeśli druk był wstrzymany
[gcode_macro END_PRINT]
description: Wykonywane po pomyślnym ukończeniu druku.
gcode:
# Zapisz ostatnią pozycję
G90
# Podnieś głowicę, aby nie zahaczyła o wydruk
G91
G1 Z10 F3000
G90
# Zaparkuj głowicę w tylnym prawym rogu, aby odsłonić wydruk
M117 Parkowanie...
G0 X300 Y300 F6000
# Wyłącz grzałki i wentylator
M104 S0
M140 S0
M107
# Wyłącz silniki krokowe
M84
M117 Druk ukonczony!
[gcode_macro PAUSE]
description: Pause the actual running print
rename_existing: PAUSE_BASE
variable_extrude: 1.0
gcode:
{% set E = printer["gcode_macro PAUSE"].extrude|float %}
{% set x_park = printer.toolhead.axis_maximum.x|float - 5.0 %}
{% set y_park = printer.toolhead.axis_maximum.y|float - 5.0 %}
{% set max_z = printer.toolhead.axis_maximum.z|float %}
{% set act_z = printer.toolhead.position.z|float %}
{% if act_z < (max_z - 2.0) %}
{% set z_safe = 2.0 %}
{% else %}
{% set z_safe = max_z - act_z %}
{% endif %}
PAUSE_BASE
G91
{% if printer.extruder.can_extrude|lower == 'true' %}
G1 E-{E} F2100
{% else %}
{action_respond_info("Extruder not hot enough")}
{% endif %}
{% if "xyz" in printer.toolhead.homed_axes %}
G1 Z{z_safe} F900
G90
G1 X{x_park} Y{y_park} F6000
{% else %}
{action_respond_info("Printer not homed")}
{% endif %}
[gcode_macro RESUME]
description: Resume the actual running print
rename_existing: RESUME_BASE
gcode:
{% set E = printer["gcode_macro PAUSE"].extrude|float %}
{% if 'VELOCITY' in params|upper %}
{% set get_params = ('VELOCITY=' + params.VELOCITY) %}
{%else %}
{% set get_params = "" %}
{% endif %}
{% if printer.extruder.can_extrude|lower == 'true' %}
G91
G1 E{E} F2100
{% else %}
{action_respond_info("Extruder not hot enough")}
{% endif %}
RESUME_BASE {get_params}
[gcode_macro load_mesh]
gcode:
BED_MESH_PROFILE load=default
[gcode_macro M300]
gcode:
# Use a default 1kHz tone if S is omitted.
{% set S = params.S|default(1000)|int %}
# Use a 10ms duration is P is omitted.
{% set P = params.P|default(100)|int %}
SET_PIN PIN=BEEPER_pin VALUE=0.5 CYCLE_TIME={ 1.0/S if S > 0 else 1 }
G4 P{P}
SET_PIN PIN=BEEPER_pin VALUE=0
#-------------------------------------
# Printer Save Config
#-------------------------------------
#*# <---------------------- SAVE_CONFIG ---------------------->
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated.
#*#
#*# [extruder]
#*# control = pid
#*# pid_kp = 28.979
#*# pid_ki = 1.558
#*# pid_kd = 134.755
#*#
#*# [heater_bed]
#*# control = pid
#*# pid_kp = 61.999
#*# pid_ki = 0.771
#*# pid_kd = 1246.178
#*#
#*# [bltouch]
#*# z_offset = 1.532
#*#
#*# [bed_mesh default]
#*# version = 1
#*# points =
#*# 0.260937, 0.331250, 0.293750, 0.339375, 0.309062
#*# 0.272812, 0.325312, 0.237187, 0.263750, 0.274062
#*# 0.260625, 0.322187, 0.228437, 0.263750, 0.255000
#*# 0.238437, 0.295312, 0.228437, 0.263750, 0.242187
#*# 0.234062, 0.338125, 0.334375, 0.365625, 0.314687
#*# x_count = 5
#*# y_count = 5
#*# mesh_x_pps = 2
#*# mesh_y_pps = 2
#*# algo = lagrange
#*# tension = 0.2
#*# min_x = 5.0
#*# max_x = 310.0
#*# min_y = 15.0
#*# max_y = 337.0
#*#
#*# [input_shaper]
#*# shaper_type_x = mzv
#*# shaper_freq_x = 70.6
#*# shaper_type_y = mzv
#*# shaper_freq_y = 57.0