Skip to content

Instantly share code, notes, and snippets.

@Genajoin
Last active November 6, 2023 13:00
Show Gist options
  • Save Genajoin/cb2145c0a9e11bb00fb134517679b7fc to your computer and use it in GitHub Desktop.
Save Genajoin/cb2145c0a9e11bb00fb134517679b7fc to your computer and use it in GitHub Desktop.
Klipper macros
# https://www.klipper3d.org/Command_Templates.html
[gcode_macro CANCEL_PRINT]
rename_existing: BASE_CANCEL_PRINT
gcode:
TURN_OFF_HEATERS
CLEAR_PAUSE
SDCARD_RESET_FILE
SET_FAN_SPEED SPEED=0.25
G91 ; Relative XYZ
G1 Z+5
BASE_CANCEL_PRINT
[gcode_macro PAUSE]
rename_existing: BASE_PAUSE
gcode:
{% set extrude = params.E|default(1.7)|float %}
{% set x_park = printer.toolhead.axis_minimum.x|float + 5.0 %}
{% set y_park = printer.toolhead.axis_maximum.y|float - 15.0 %}
{% set max_z = printer.toolhead.axis_maximum.z|float %}
{% set act_z = printer.toolhead.position.z|float %}
{% if act_z < (max_z - 40) %}
{% set z_safe = 40 %}
{% else %}
{% set z_safe = max_z - act_z %}
{% endif %}
SAVE_GCODE_STATE NAME=PAUSE_state
BASE_PAUSE
G91 ; Relative XYZ
G1 E-{extrude} F2100
G1 Z{z_safe} F900
G90
G0 X{x_park} Y{y_park} F6000
G91 ; Relative XYZ
[gcode_macro RESUME]
rename_existing: BASE_RESUME
gcode:
{% set extrude = params.E|default(1.7)|float %}
G91 ; Relative XYZ
G1 E{extrude} F2100
RESTORE_GCODE_STATE NAME=PAUSE_state
BASE_RESUME
[gcode_macro START_PRINT]
# add to Cura:
# START_PRINT BED_TEMPERATURE={material_bed_temperature_layer_0} EXTRUDER_TEMPERATURE={material_print_temperature_layer_0} EXTRUDER_STANDBY_TEMPERATURE={material_standby_temperature}
gcode:
{% set BED_TEMPERATURE = params.BED_TEMPERATURE|default(60)|float %}
{% set EXTRUDER_STANDBY_TEMPERATURE = params.EXTRUDER_STANDBY_TEMPERATURE|default(170)|float %}
{% set EXTRUDER_TEMPERATURE = params.EXTRUDER_TEMPERATURE|default(200)|float %}
{% set BED_TEMPERATURE_TO_START_EXTRUDER = params.BED_TEMPERATURE|default(60)|float - 2.0 %}
G90 ; use absolute coordinates
M106 S50 ; Fan on approx. 20% to protect cooling ducts (255 - to full)
M140 S{BED_TEMPERATURE_TO_START_EXTRUDER} ; set bed temp
G28 X Y ; home
M104 S{EXTRUDER_STANDBY_TEMPERATURE} ; set standby extruder temp
M190 S{BED_TEMPERATURE_TO_START_EXTRUDER} ; wait for bed temp - 2
;BED_MESH_PROFILE LOAD=default ; load default mesh map
;BED_MESH_CALIBRATE ; calibrate bed mesh levelling
M104 S{EXTRUDER_TEMPERATURE} ; set first layer extruder temp
M140 S{BED_TEMPERATURE} ; set bed temp
G28 Z ; home on hot (bltouch)
G0 X2 Y0 Z0 F400 ; extruder outside of bed
M190 S{BED_TEMPERATURE} ; wait for bed temp
M109 S{EXTRUDER_TEMPERATURE} ; wait for extruder temp
G0 X2 Y15 Z0.1 F400 ; clean
G0 X4 Y0 ; clean
G0 Z5
[gcode_macro END_PRINT]
# add to Cura:
# END_PRINT
gcode:
{% set max_y = printer.toolhead.axis_maximum.y|float %}
# Move nozzle away from print while retracting
M83 ; Relative E
G91 ; Relative XYZ
G1 X-2 Y-2 Z+5 E-3 F300
G90 ; Absolute XYZ
M82 ; Absolute E
M104 S0 ; turn off temperature
M140 S0 ; turn off heatbed
M106 S50 ; Leave fan running to protect cooling ducts.
# Present print
G1 X0 Y210 F3000 ; present print
# Disable steppers
M84
[gcode_macro MENU_Z_ENDSTOP_CALIBRATE]
gcode:
G28 X Y
G0 X72 Y46 Z5
Z_ENDSTOP_CALIBRATE
[gcode_macro MENU_PROBE_CALIBRATE]
gcode:
G28
G0 X72 Y46 Z5
PROBE_CALIBRATE
[gcode_macro MENU_SCREWS_TILT_CALCULATE]
gcode:
G28
SCREWS_TILT_CALCULATE
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment