Last active
March 7, 2025 03:57
Klipper configuration for SKR 1.4 PRO + 4x TMC2209 UART
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Specs: | |
# - SKR 1.4 PRO | |
# - TMC2209 UART | |
# - 1.8 stepper on XYZ | |
# - Physical endstops on XYZ | |
# - Fysetc Mini 12864 LCD Display v2.1 RGB | |
# | |
# Link to current version of this config: https://gist.github.com/Qteb/64baab2e57d65697633cc884dc783beb | |
# Klipper config reference: https://www.klipper3d.org/Config_Reference.html | |
# Gcode templates syntax: https://jinja.palletsprojects.com/en/2.10.x/templates/ | |
# Gcode math: https://manual.slic3r.org/advanced/conditional-gcode | |
[mcu] | |
# https://www.raspberrypi.org/documentation/configuration/uart.md | |
# https://github.com/KevinOConnor/klipper/issues/2913 | |
#serial: /dev/ttyS0 | |
#restart_method: command | |
#serial: /dev/serial/by-id/usb-Klipper_lpc1769_0FD0001880A037AF1AE6BF5BC62000F5-if00 | |
serial: /dev/serial/by-path/platform-fd500000.pcie-pci-0000:01:00.0-usb-0:1.2:1.0 | |
[printer] | |
kinematics: cartesian | |
max_velocity: 300 | |
max_accel: 6000 | |
#max_accel_to_decel: 2000 | |
max_z_velocity: 4 | |
max_z_accel: 100 | |
#square_corner_velocity: 5.0 | |
[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> | |
# https://github.com/KevinOConnor/klipper/blob/master/docs/Measuring_Resonances.md#bed-slinger-printers | |
# https://github.com/KevinOConnor/klipper/blob/master/docs/RPi_microcontroller.md | |
[mcu rpi] | |
serial: /tmp/klipper_host_mcu | |
[adxl345] | |
cs_pin: rpi:None | |
[resonance_tester] | |
accel_chip: adxl345 | |
max_smoothing: 0.1 | |
probe_points: 100,100,240 | |
[input_shaper] | |
shaper_type_x: mzv | |
shaper_freq_x: 54.6 | |
shaper_type_y: mzv | |
shaper_freq_y: 68.8 | |
############################## | |
# X/Y Stepper Settings | |
# https://github.com/KevinOConnor/klipper/blob/master/docs/Rotation_Distance.md | |
############################## | |
[stepper_x] | |
step_pin: P2.2 | |
dir_pin: !P2.6 | |
enable_pin: !P2.1 | |
endstop_pin: P1.29 | |
microsteps: 16 | |
rotation_distance: 40 | |
position_endstop: 0 | |
position_min: 0 | |
position_max: 200 | |
homing_speed: 100 | |
second_homing_speed: 8 | |
[tmc2209 stepper_x] | |
uart_pin: P1.10 | |
run_current: 1.500 | |
# hold_current: 0.950 | |
# https://github.com/KevinOConnor/klipper/issues/1363 | |
stealthchop_threshold: 500 | |
[stepper_y] | |
step_pin: P0.19 | |
dir_pin: P0.20 | |
enable_pin: !P2.8 | |
endstop_pin: P1.28 | |
microsteps: 16 | |
rotation_distance: 40 | |
position_endstop: 0 | |
position_min: 0 | |
position_max: 200 | |
homing_speed: 100 | |
second_homing_speed: 8 | |
[tmc2209 stepper_y] | |
uart_pin: P1.9 | |
run_current: 1.500 | |
# hold_current: 0.950 | |
# https://github.com/KevinOConnor/klipper/issues/1363 | |
stealthchop_threshold: 500 | |
##################################################################### | |
# Z Stepper Settings | |
##################################################################### | |
[stepper_z] | |
step_pin: P0.22 | |
dir_pin: P2.11 | |
enable_pin: !P0.21 | |
endstop_pin: P1.27 | |
microsteps: 16 | |
rotation_distance: 2 | |
position_endstop: 0 | |
position_min: 0 | |
position_max: 260 | |
homing_speed: 6 | |
homing_retract_speed: 4 | |
homing_retract_dist: 1 | |
second_homing_speed: 0.5 | |
[tmc2209 stepper_z] | |
uart_pin: P1.8 | |
run_current: 0.650 | |
hold_current: 0.450 | |
# https://github.com/KevinOConnor/klipper/issues/1363 | |
stealthchop_threshold: 500 | |
# https://github.com/KevinOConnor/klipper/blob/master/docs/Endstop_Phase.md | |
[endstop_phase stepper_z] | |
trigger_phase=9/64 | |
############################## | |
# Extruder | |
# https://voron.dozuki.com/Guide/Extruder+Calibration+(ESTEPS)/1 | |
# https://github.com/KevinOConnor/klipper/blob/master/docs/Pressure_Advance.md | |
############################## | |
[extruder] | |
step_pin: P2.13 | |
dir_pin: P0.11 | |
enable_pin: !P2.12 | |
heater_pin: P2.7 | |
sensor_pin: P0.24 | |
sensor_type: PT1000 | |
pullup_resistor: 1000 | |
microsteps: 16 | |
rotation_distance: 4.67 | |
nozzle_diameter: 0.600 | |
filament_diameter: 1.750 | |
min_extrude_temp: 0 | |
max_extrude_only_distance: 1000 | |
max_extrude_cross_section: 50.0 | |
min_temp: 0 | |
max_temp: 999999999999999999999999999999999999999 | |
#control = pid | |
# pid_kp = 23.716 | |
# pid_ki = 1.363 | |
# pid_kd = 103.165 | |
# [tmc2209 extruder] | |
# uart_pin: P1.4 | |
# run_current: 0.900 | |
# hold_current: 0.500 | |
# # https://github.com/KevinOConnor/klipper/issues/1363 | |
# stealthchop_threshold: 5000 | |
[tmc2209 extruder] | |
uart_pin: P1.4 | |
run_current: 0.400 | |
hold_current: 0.200 | |
# https://github.com/KevinOConnor/klipper/issues/1363 | |
stealthchop_threshold: 5000 | |
############################## | |
# Bed Heater | |
############################## | |
[heater_bed] | |
heater_pin: P2.5 | |
sensor_pin: P0.25 | |
sensor_type: EPCOS 100K B57560G104F | |
min_temp: 0 | |
max_temp: 130 | |
#control: pid | |
#pid_Kp=64.240 | |
#pid_Ki=3.858 | |
#pid_Kd=267.397 | |
############################## | |
# Fans | |
# https://github.com/KevinOConnor/klipper/blob/master/docs/Config_Reference.md#fans | |
############################## | |
[fan] | |
pin: P2.3 | |
kick_start_time: 0.500 | |
off_below: 0.25 #for Pengda | |
[heater_fan extruder_fan] | |
pin: P2.4 | |
heater_temp: 50.0 | |
#fan_speed: 1.0 | |
############################## | |
# Probe & Mesh | |
# https://github.com/KevinOConnor/klipper/blob/master/docs/Manual_Level.md#fine-grained-bed-screw-adjustments | |
############################## | |
[bed_screws] | |
screw1_name: front left screw | |
screw1: 20,20 | |
screw2_name: front right screw | |
screw2: 180,20 | |
screw3_name: rear center screw | |
screw3: 100,180 | |
horizontal_move_z: 2 | |
probe_height: 0.05 | |
speed: 150 | |
probe_speed: 2 | |
############################## | |
# Display | |
############################## | |
[display] | |
lcd_type: uc1701 | |
cs_pin: EXP1_3 | |
a0_pin: EXP1_4 | |
rst_pin: EXP1_5 | |
click_pin: ^!EXP1_2 | |
encoder_pins: ^EXP2_5, ^EXP2_3 | |
spi_software_miso_pin: EXP2_1 | |
spi_software_mosi_pin: EXP2_6 | |
spi_software_sclk_pin: EXP2_2 | |
contrast: 63 | |
menu_timeout: 90 | |
[duplicate_pin_override] | |
pins: P0.25, rpi:gpio26 | |
[temperature_fan chamber_fan] | |
pin: rpi:gpio26 | |
sensor_pin: P0.25 | |
sensor_type: EPCOS 100K B57560G104F | |
min_temp: 0 | |
max_temp: 130 | |
control: watermark | |
target_temp: 130 | |
[output_pin chamber_fan] | |
pin: rpi:gpio26 | |
pwm: False | |
value: 0 | |
shutdown_value: 0 | |
[led case_led] | |
white_pin: rpi:pwmchip0/pwm0 | |
hardware_pwm: True | |
cycle_time: 0.000001 | |
initial_WHITE: 1.0 | |
[neopixel fysetc_mini12864] | |
pin: EXP1_6 | |
chain_count: 3 | |
color_order: RGB | |
initial_RED: 1.0 | |
initial_GREEN: 0.3 | |
initial_BLUE: 0.0 | |
[neopixel bottom_neopixel] | |
pin: P1.24 | |
chain_count: 18 | |
color_order: RGB | |
initial_RED: 0 | |
initial_GREEN: 0 | |
initial_BLUE: 0 | |
[output_pin beeper] | |
pin: EXP1_1 | |
pwm: True | |
value: 0 | |
shutdown_value: 0 | |
cycle_time: 0.0024 | |
############################## | |
# Misc | |
############################## | |
[force_move] | |
enable_force_move: True | |
[pause_resume] | |
[respond] | |
[virtual_sdcard] | |
path: ~/gcode_files | |
[include /home/pi/klipper_config/macros/*.cfg] | |
[include moonraker_obico_macros.cfg] | |
#*# <---------------------- SAVE_CONFIG ----------------------> | |
#*# DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. | |
#*# | |
#*# [extruder] | |
#*# control = pid | |
#*# pid_kp = 25.343 | |
#*# pid_ki = 1.579 | |
#*# pid_kd = 101.691 | |
#*# | |
#*# [heater_bed] | |
#*# control = pid | |
#*# pid_kp = 64.240 | |
#*# pid_ki = 3.858 | |
#*# pid_kd = 267.397 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[gcode_macro M141] | |
gcode: | |
{% set s = params.S|default(0)|float %} | |
SET_TEMPERATURE_FAN_TARGET temperature_fan=chamber_fan target={s} | |
[gcode_macro CHAMBER_FAN_ON] | |
description: Turn on the chamber fan. | |
gcode: | |
M118 ** Running CHAMBER_FAN_ON macro | |
SET_PIN PIN=chamber_fan VALUE=1 | |
[gcode_macro CHAMBER_FAN_OFF] | |
description: Turn off the chamber fan. | |
gcode: | |
M118 ** Running CHAMBER_FAN_OFF macro | |
SET_PIN PIN=chamber_fan VALUE=0 | |
[delayed_gcode STOP_FAN] | |
gcode: | |
CHAMBER_FAN_OFF | |
[gcode_macro START_FAN_TIMER] | |
gcode: | |
{% set time = params.TIME|default(1800)|float %} | |
CHAMBER_FAN_ON | |
UPDATE_DELAYED_GCODE ID=STOP_FAN DURATION={time} | |
[gcode_macro CANCEL_FAN_TIMER] | |
gcode: | |
UPDATE_DELAYED_GCODE ID=STOP_FAN DURATION=0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[gcode_macro SET_NEOPIXEL_RGB] | |
gcode: | |
{% set neopixel_R = params.R|default(0.0)|float %} | |
{% set neopixel_G = params.G|default(0.0)|float %} | |
{% set neopixel_B = params.B|default(0.0)|float %} | |
SET_LED LED=bottom_neopixel RED={neopixel_R} GREEN={neopixel_G} BLUE={neopixel_B} | |
[gcode_macro SET_DISPLAY_RGB] | |
gcode: | |
{% set fysetc_mini12864_R = params.R|default(0.0)|float %} | |
{% set fysetc_mini12864_G = params.G|default(0.0)|float %} | |
{% set fysetc_mini12864_B = params.B|default(0.0)|float %} | |
SET_LED LED=fysetc_mini12864 RED={fysetc_mini12864_R} GREEN={fysetc_mini12864_G} BLUE={fysetc_mini12864_B} INDEX=1 TRANSMIT=0 | |
SET_LED LED=fysetc_mini12864 RED={fysetc_mini12864_R} GREEN={fysetc_mini12864_G} BLUE={fysetc_mini12864_B} INDEX=2 TRANSMIT=0 | |
SET_LED LED=fysetc_mini12864 RED={fysetc_mini12864_R} GREEN={fysetc_mini12864_G} BLUE={fysetc_mini12864_B} INDEX=3 | |
[gcode_macro LED_ON] | |
gcode: | |
# RUN_SHELL_COMMAND CMD=led_on | |
SET_LED LED=case_led WHITE=1 | |
[gcode_macro LED_OFF] | |
gcode: | |
#RUN_SHELL_COMMAND CMD=led_off | |
SET_LED LED=case_led WHITE=0 | |
# [gcode_shell_command led_on] | |
# command: gpio pwm 26 2000 | |
# timeout: 2. | |
# verbose: false | |
# [gcode_shell_command led_off] | |
# command: gpio pwm 26 0 | |
# timeout: 2. | |
# verbose: false | |
# [gcode_shell_command led_min] | |
# command: gpio pwm 26 500 | |
# timeout: 2. | |
# verbose: false | |
# [gcode_macro LED_MIN] | |
# gcode: | |
# RUN_SHELL_COMMAND CMD=led_min |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
##################################################################### | |
# Macros | |
##################################################################### | |
[delayed_gcode INIT_STATE] | |
initial_duration: 1 | |
gcode: | |
READY_STATE | |
[gcode_macro READY_STATE] | |
gcode: | |
SET_DISPLAY_RGB R=1.0 G=0.3 B=0.0 | |
SET_NEOPIXEL_RGB R=1.0 G=0.3 B=0.0 | |
M118 READY_STATE: Printer is ready | |
M117 Printer is ready | |
#BEEP_READY | |
[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 COLOR_CHANGE] | |
gcode: | |
{% set variable_extr_temp = 0 %} | |
{% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} | |
PAUSE | |
M118 COLOR_CHANGE: Unloading filament... | |
M117 Unloading filament... | |
UNLOAD_FILAMENT | |
M118 COLOR_CHANGE: Insert new filament and load it with LOAD_FILAMENT command | |
M118 COLOR_CHANGE: After load new filament continue printing using RESUME command | |
M117 Insert new filament | |
{% else %} | |
M118 COLOR_CHANGE: No print started yet... | |
{% endif %} | |
[gcode_macro M300] | |
gcode: | |
{% set S = params.S|default(1000)|int %} | |
{% set P = params.P|default(100)|int %} | |
{% if S|float != 0 %} | |
SET_PIN PIN=beeper VALUE=0.5 CYCLE_TIME={1/S|float} | |
{% endif %} | |
G4 P{P} | |
SET_PIN PIN=beeper VALUE=0 | |
[gcode_macro M900] | |
gcode: | |
{% set K = params.K|default(0.0)|float %} | |
SET_PRESSURE_ADVANCE ADVANCE={K} | |
# [gcode_macro M73] | |
# rename_existing: M773 | |
# variable_p: 0.0 | |
# variable_r: 0.0 | |
# default_parameter_P: 0.0 | |
# default_parameter_R: 0.0 | |
# gcode: | |
# M773 P{P} | |
# SET_GCODE_VARIABLE MACRO=M73 VARIABLE=p VALUE={P} | |
# SET_GCODE_VARIABLE MACRO=M73 VARIABLE=r VALUE={R} | |
######### | |
[gcode_macro MOVE_FILAMENT] | |
gcode: | |
{% set ACTION = params.ACTION|default(RETRACT) %} | |
{% set LENGTH = params.LENGTH|default(2)|float %} | |
{% set SPEED = params.SPEED|default(2100)|float %} | |
{% set MIN_TEMP = (printer.configfile.config["extruder"]["min_extrude_temp"] | min) %} | |
{% if (printer.extruder.temperature >= (MIN_TEMP|int)) %} | |
G91 ; relative positioning | |
{% if ACTION == 'RETRACT' %} | |
M118 FILAMENT: Retracting filament by {LENGTH}mm | |
G1 E-{LENGTH} F{SPEED} ; retract filament | |
{% elif ACTION == 'FEED' %} | |
M118 FILAMENT: Feeding filament by {LENGTH}mm | |
G1 E{LENGTH} F{SPEED} ; detract filament | |
{% else %} | |
M118 FILAMENT: Unknown action: {ACTION} | |
{% endif %} | |
G90 ; absolute positioning | |
{% else %} | |
M118 START_PRINT: Skipped retracting filamant due to min-temp condition {MIN_TEMP}, current extruder temperature is {printer.extruder.temperature} | |
{% endif %} | |
[gcode_macro PARKING_POSITION] | |
gcode: | |
{% set RAISE_Z_POSITION = params.RAISE_Z_POSITION|default(50)|float %} | |
{% set Z_SPEED = params.Z_SPEED|default(600)|float %} | |
{% set XY_SPEED = params.XY_SPEED|default(4500)|float %} | |
{% set PARKING_POSITION_X = params.PARKING_POSITION_X|default(5)|float %} | |
{% set PARKING_POSITION_Y = params.PARKING_POSITION_Y|default(5)|float %} | |
# calculating X and Y | |
{% if ('x' in printer.toolhead.homed_axes) and ('y' in printer.toolhead.homed_axes) %} | |
G90 ; Absolute positioning | |
G1 X{PARKING_POSITION_X} Y{PARKING_POSITION_Y} F{XY_SPEED} | |
M118 PARKING_POSITION: Parking X{PARKING_POSITION_X} Y{PARKING_POSITION_Y} | |
{% else %} | |
M118 PARKING_POSITION: X and/or Y position is unknown, moving not possible | |
{% endif %} | |
# calculating Z | |
{% if 'z' in printer.toolhead.homed_axes %} | |
{% if printer.gcode_move.gcode_position.z < (RAISE_Z_POSITION | float) %} | |
M118 PARKING_POSITION: Z axis is below {RAISE_Z_POSITION}mm | |
G90 ; Absolute positioning | |
G1 Z{RAISE_Z_POSITION} F{Z_SPEED} | |
M118 PARKING_POSITION: Parking Z{RAISE_Z_POSITION} | |
{% endif %} | |
# {% endif %} | |
{% else %} | |
M118 PARKING_POSITION: Z position is unknown, moving not possible | |
{% endif %} | |
######### | |
[gcode_macro START_PRINT] | |
variable_value: 0 | |
gcode: | |
CLEAR_PAUSE | |
SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=value VALUE=1 | |
{% set CHAMBER_FAN_TEMP = params.CHAMBER_FAN_TEMP|default(130)|float %} | |
# turn off chamber fan | |
#CHAMBER_FAN_OFF ; turn chamber fan | |
#CANCEL_FAN_TIMER ; turn chamber fan timer | |
M141 S{CHAMBER_FAN_TEMP} ; turn on chamber fan | |
M117 Preparing... | |
M107 ; turn off part fan | |
G21 ; set units to millimeters | |
G90 ; use absolute coordinates | |
M83 ; use relative distances for extrusion | |
G28 ; home all | |
M117 Printing... | |
[gcode_macro STOP_PRINT] | |
gcode: | |
{% set CHAMBER_FAN_TEMP = params.CHAMBER_FAN_TEMP|default(50)|float %} | |
M400 ; wait for buffer to clear | |
SET_GCODE_VARIABLE MACRO=START_PRINT VARIABLE=value VALUE=0 | |
TURN_OFF_HEATERS | |
M107 ; turn off part fan | |
M141 S{CHAMBER_FAN_TEMP} ; turn on chamber fan | |
;START_FAN_TIMER TIME=600 | |
[gcode_macro READ_STATE] | |
gcode: | |
M118 CANCEL_PRINT: {printer["gcode_macro START_PRINT"].value} | |
M0 You're up, mate ; in your G-code file | |
[gcode_macro CANCEL_PRINT] | |
description = Cancel the actual running print | |
rename_existing = CANCEL_PRINT_BASE | |
gcode: | |
{% set RAISE_Z_POSITION = params.RAISE_Z_POSITION|default(100)|float %} | |
{% set RETRACT_LENGTH = params.RETRACT_LENGTH|default(0)|float %} | |
{% set PARKING_POSITION_X = params.PARKING_POSITION_X|default(5)|float %} | |
{% set PARKING_POSITION_Y = params.PARKING_POSITION_Y|default(5)|float %} | |
M118 CANCEL_PRINT: Canceling print... | |
M117 Canceling print | |
# {% if printer["gcode_macro START_PRINT"].value|default(0, true) == 0 %} | |
# M118 CANCEL_PRINT: Printer is not printing | |
# {% elif printer.pause_resume.is_paused %} | |
# M118 CANCEL_PRINT: Printer is paused, no parking needed | |
# {% else %} | |
M118 CANCEL_PRINT: Canceling print... | |
MOVE_FILAMENT ACTION=RETRACT | |
PARKING_POSITION PARKING_POSITION_X={PARKING_POSITION_X} PARKING_POSITION_Y={PARKING_POSITION_Y} RAISE_Z_POSITION={RAISE_Z_POSITION} | |
# {% endif %} | |
SDCARD_RESET_FILE | |
CANCEL_PRINT_BASE | |
STOP_PRINT | |
READY_STATE | |
[gcode_macro FINISH_PRINT] | |
gcode: | |
STOP_PRINT | |
# PARKING_POSITION PARKING_POSITION_X=195 PARKING_POSITION_Y=195 RAISE_Z_POSITION=100 | |
MOVE_FILAMENT ACTION=RETRACT | |
SET_PRESSURE_ADVANCE ADVANCE=0 | |
BEEP_CONFIRM | |
M117 Done! | |
[gcode_macro PAUSE] | |
description = Pause the actual running print | |
rename_existing: BASE_PAUSE | |
gcode: | |
{% if printer.idle_timeout.state == "Printing" and not printer.pause_resume.is_paused %} | |
M117 Pausing print... | |
M118 PAUSE: Pausing print... | |
M118 PAUSE: Position before BASE_PAUSE: {printer.gcode_move.gcode_position} | |
SAVE_GCODE_STATE NAME=PAUSE_state | |
BASE_PAUSE | |
M118 PAUSE: Position after BASE_PAUSE: {printer.gcode_move.gcode_position} | |
M220 S100 | |
MOVE_FILAMENT ACTION=RETRACT | |
PARKING_POSITION | |
M400 ; finish moves | |
G91 ; relative positioning | |
M118 PAUSE: Position when done: {printer.gcode_move.gcode_position} | |
M118 PAUSE: Print paused... | |
M117 Print paused... | |
{% else %} | |
M118 PAUSE: Printer is not printing | |
{% endif %} | |
[gcode_macro RESUME] | |
rename_existing: BASE_RESUME | |
gcode: | |
{% set FEED_LENGTH = params.FEED_LENGTH|default(10)|float %} | |
{% set FEED_SPEED = params.FEED_SPEED|default(150)|float %} | |
{% if printer.pause_resume.is_paused %} | |
M118 RESUME: Resuming print... | |
M117 Resuming print | |
MOVE_FILAMENT ACTION=FEED LENGTH={FEED_LENGTH} SPEED={FEED_SPEED} | |
M400 ; finish moves | |
M300 S1000 P100 ; beep | |
RESTORE_GCODE_STATE NAME=PAUSE_state MOVE=1 MOVE_SPEED=4800 | |
BASE_RESUME | |
M118 RESUME: Print resumed | |
{% else %} | |
M118 PAUSE: Printer is not paused | |
{% endif %} | |
######### | |
[gcode_macro LOAD_FILAMENT] | |
gcode: | |
M83 | |
MOVE_FILAMENT ACTION=FEED LENGTH=55 SPEED=800 | |
MOVE_FILAMENT ACTION=FEED LENGTH=250 SPEED=400 | |
MOVE_FILAMENT ACTION=RETRACT LENGTH=2 SPEED=2400 | |
# M82 | |
M117 Load Complete! | |
[gcode_macro UNLOAD_FILAMENT] | |
gcode: | |
M83 | |
MOVE_FILAMENT ACTION=FEED LENGTH=10 SPEED=300 | |
MOVE_FILAMENT ACTION=RETRACT LENGTH=80 SPEED=1200 | |
# M82 | |
M117 Unload Complete! | |
# [gcode_macro LOAD_FILAMENT] | |
# gcode: | |
# M83 | |
# G1 E50 F3600 | |
# G1 E100 F4500 | |
# G1 E550 F6000 | |
# G1 E35 F1800 | |
# G1 E50 F300 | |
# # M82 | |
# M117 Load Complete! | |
# [gcode_macro UNLOAD_FILAMENT] | |
# gcode: | |
# M83 | |
# G1 E20 F1500 | |
# G1 E-750 F20000 | |
# # M82 | |
# [display_data _default_16x4 print_progress] | |
# position: 2, 0 | |
# text: | |
# {% if printer["gcode_macro START_PRINT"].value|default(0, true) == 1 %} | |
# { "{:^10.0%}".format(printer.display_status.progress) } | |
# {% else %} | |
# ---------------- | |
# {% endif %} | |
# [display_data _default_16x4 progress_bar] | |
# position: 2, 1 # Draw graphical progress bar after text is written | |
# text: | |
# {% if printer["gcode_macro START_PRINT"].value|default(0, true) == 1 %} | |
# { draw_progress_bar(2, 0, 9, printer.display_status.progress) } | |
# {% endif %} | |
# # Render remaining time taken from M73 | |
# [display_data _default_16x4 printing_time] | |
# position: 2, 10 | |
# text: | |
# {% if printer["gcode_macro START_PRINT"].value|default(0, true) == 1 %} | |
# {% set ptime = printer["gcode_macro M73"].r %} | |
# { "R%02d:%02d" % (ptime // 60, ptime % 60) } | |
# {% endif %} |
Hey my friend, can I use this file with an SKR 1.4 Turbo? Or only for SKR PRO?
Over a year late, but it does seam to have simular pinouts, as i used parts of this for my skr 1.4 turbo
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hey my friend, can I use this file with an SKR 1.4 Turbo? Or only for SKR PRO?