91 lines
4.8 KiB
INI
91 lines
4.8 KiB
INI
#####################################################################
|
|
# print_start macro
|
|
#####################################################################
|
|
|
|
## *** THINGS TO UNCOMMENT: ***
|
|
## Bed mesh (2 lines at 2 locations)
|
|
## Z_TILT_ADJUST if your printer is a Trident
|
|
## Quad gantry level if your printer is a V2
|
|
## Nevermore - if you have one
|
|
|
|
[gcode_macro PRINT_START]
|
|
gcode:
|
|
# This part fetches data from your slicer. Such as bed temp, extruder temp, chamber temp and size of your printer.
|
|
{% set target_bed = params.BED|int %}
|
|
{% set target_extruder = params.EXTRUDER|int %}
|
|
{% set target_chamber = params.CHAMBER|default("40")|int %}
|
|
{% set x_wait = printer.toolhead.axis_maximum.x|float / 2 %}
|
|
{% set y_wait = printer.toolhead.axis_maximum.y|float / 2 %}
|
|
|
|
# Homes the printer, sets absolute positioning and updates the Stealthburner leds.
|
|
# STATUS_HOMING # Sets SB-leds to homing-mode
|
|
G28 # Full home (XYZ)
|
|
G90 # Absolut position
|
|
|
|
## Uncomment for bed mesh (1 of 2)
|
|
BED_MESH_CLEAR # Clears old saved bed mesh (if any)
|
|
|
|
# Checks if the bed temp is higher than 90c - if so then trigger a heatsoak.
|
|
{% if params.BED|int > 90 %}
|
|
SET_DISPLAY_TEXT MSG="Bed: {target_bed}c" # Displays info
|
|
# STATUS_HEATING # Sets SB-leds to heating-mode
|
|
M106 S255 # Turns on the PT-fan
|
|
|
|
## Uncomment if you have a Nevermore.
|
|
#SET_PIN PIN=nevermore VALUE=1 # Turns on the nevermore
|
|
|
|
G1 X{x_wait} Y{y_wait} Z15 F9000 # Goes to center of the bed
|
|
M190 S{target_bed} # Sets the target temp for the bed
|
|
SET_DISPLAY_TEXT MSG="Heatsoak: {target_chamber}c" # Displays info
|
|
TEMPERATURE_WAIT SENSOR="temperature_sensor chamber" MINIMUM={target_chamber} # Waits for chamber to reach desired temp
|
|
|
|
# If the bed temp is not over 90c, then it skips the heatsoak and just heats up to set temp with a 5min soak
|
|
{% else %}
|
|
SET_DISPLAY_TEXT MSG="Bed: {target_bed}c" # Displays info
|
|
# STATUS_HEATING # Sets SB-leds to heating-mode
|
|
G1 X{x_wait} Y{y_wait} Z15 F9000 # Goes to center of the bed
|
|
M190 S{target_bed} # Sets the target temp for the bed
|
|
SET_DISPLAY_TEXT MSG="Soak for 5min" # Displays info
|
|
G4 P300000 # Waits 5 min for the bedtemp to stabilize
|
|
{% endif %}
|
|
|
|
# Heating nozzle to 150 degrees. This helps with getting a correct Z-home
|
|
SET_DISPLAY_TEXT MSG="Hotend: 150c" # Displays info
|
|
M109 S150 # Heats the nozzle to 150c
|
|
|
|
## Uncomment for Trident (Z_TILT_ADJUST)
|
|
#SET_DISPLAY_TEXT MSG="Z-tilt adjust" # Displays info
|
|
#STATUS_LEVELING # Sets SB-leds to leveling-mode
|
|
#Z_TILT_ADJUST # Levels the buildplate via z_tilt_adjust
|
|
#G28 Z # Homes Z again after z_tilt_adjust
|
|
|
|
## Uncomment for V2 (Quad gantry level AKA QGL)
|
|
SET_DISPLAY_TEXT MSG="QGL" # Displays info
|
|
# STATUS_LEVELING # Sets SB-leds to leveling-mode
|
|
quad_gantry_level # Levels the buildplate via QGL
|
|
G28 Z # Homes Z again after QGL
|
|
|
|
## Uncomment for Klicky auto-z
|
|
#CALIBRATE_Z # Calibrates Z-offset with klicky
|
|
#SET_DISPLAY_TEXT MSG="Z-offset" # Displays info
|
|
|
|
## Uncomment for bed mesh (2 of 2)
|
|
SET_DISPLAY_TEXT MSG="Bed mesh" # Displays info
|
|
# STATUS_MESHING # Sets SB-leds to bed mesh-mode
|
|
bed_mesh_calibrate # Starts bed mesh
|
|
|
|
# Heats up the nozzle up to target via data from slicer
|
|
SET_DISPLAY_TEXT MSG="Hotend: {target_extruder}c" # Displays info
|
|
# STATUS_HEATING # Sets SB-leds to heating-mode
|
|
G1 X{x_wait} Y{y_wait} Z15 F9000 # Goes to center of the bed
|
|
M107 # Turns off partcooling fan
|
|
M109 S{target_extruder} # Heats the nozzle to printing temp
|
|
|
|
# Gets ready to print by doing a purge line and updating the SB-leds
|
|
SET_DISPLAY_TEXT MSG="Printer goes brr" # Displays info
|
|
# STATUS_PRINTING # Sets SB-leds to printing-mode
|
|
G0 X{x_wait - 50} Y4 F10000 # Moves to starting point
|
|
G0 Z0.4 # Raises Z to 0.4
|
|
G91 # Incremental positioning
|
|
G1 X100 E20 F1000 # Purge line
|
|
G90 # Absolut position |