93 lines
No EOL
4.9 KiB
INI
93 lines
No EOL
4.9 KiB
INI
# [gcode_macro PRINT_START]
|
|
# gcode:
|
|
# {% set bedtemp = params.BED|int %}
|
|
# {% set extrudertemp = params.EXTRUDER|int %}
|
|
|
|
# STATUS_HEATING
|
|
# M109 S140
|
|
|
|
# STATUS_HEATING
|
|
# M190 S{bedtemp}
|
|
|
|
# STATUS_HOMING
|
|
# G32 ; home all axes
|
|
# G1 Z20 F3000 ; move nozzle away from bed
|
|
|
|
# STATUS_HEATING
|
|
# M109 S{extrudertemp}
|
|
|
|
[gcode_macro PRINT_START]
|
|
gcode:
|
|
{% set target_bed = params.BED|int %}
|
|
{% set target_extruder = params.EXTRUDER|int %}
|
|
{% set target_chamber = params.CHAMBER|default("45")|int %}
|
|
{% set x_wait = printer.toolhead.axis_maximum.x|float / 2 %}
|
|
{% set y_wait = printer.toolhead.axis_maximum.y|float / 2 %}
|
|
|
|
# Home the printer, set absolute positioning and update the Stealthburner LEDs.
|
|
LED_STATUS_HOMING # Set LEDs to homing-mode
|
|
G28 # Full home (XYZ)
|
|
G90 # Absolute position
|
|
|
|
BED_MESH_CLEAR # Clear old saved bed mesh (if any)
|
|
|
|
# Check if the bed temp is higher than 90c - if so then trigger a heatsoak.
|
|
{% if target_bed > 90 %}
|
|
SET_DISPLAY_TEXT MSG="Bed: {target_bed}c" # Display info on display
|
|
STATUS_HEATING # Set LEDs to heating-mode
|
|
M106 S255 # Turn on the PT-fan
|
|
|
|
## Uncomment if you have a Nevermore.
|
|
#SET_PIN PIN=nevermore VALUE=1 # Turn on the nevermore
|
|
|
|
G1 X{x_wait} Y{y_wait} Z15 F9000 # Go to center of the bed
|
|
M190 S{target_bed} # Set the target temp for the bed
|
|
SET_DISPLAY_TEXT MSG="Heatsoak: {target_chamber}c" # Display info on display
|
|
TEMPERATURE_WAIT SENSOR="temperature_sensor chamber" MINIMUM={target_chamber} # Waits for chamber temp
|
|
|
|
# If the bed temp is not over 90c, then skip the heatsoak and just heat up to set temp with a 5 min soak
|
|
{% else %}
|
|
SET_DISPLAY_TEXT MSG="Bed: {target_bed}c" # Display info on display
|
|
STATUS_HEATING # Set LEDs to heating-mode
|
|
G1 X{x_wait} Y{y_wait} Z15 F9000 # Go to center of the bed
|
|
M190 S{target_bed} # Set the target temp for the bed
|
|
SET_DISPLAY_TEXT MSG="Soak for 5 min" # Display info on display
|
|
G4 P300000 # Wait 5 min for the bedtemp to stabilize
|
|
{% endif %}
|
|
|
|
# Heat hotend to 150c. This helps with getting a correct Z-home.
|
|
SET_DISPLAY_TEXT MSG="Hotend: 150c" # Display info on display
|
|
M109 S150 # Heat hotend to 150c
|
|
|
|
## Uncomment for V2.4 (Quad gantry level AKA QGL)
|
|
#SET_DISPLAY_TEXT MSG="Leveling" # Display info on display
|
|
#STATUS_LEVELING # Set LEDs to leveling-mode
|
|
#QUAD_GANTRY_LEVEL # Level the printer via QGL
|
|
#G28 Z # Home Z again after QGL
|
|
|
|
## Uncomment for bed mesh (2 of 2 for bed mesh)
|
|
#SET_DISPLAY_TEXT MSG="Bed mesh" # Display info on display
|
|
#STATUS_MESHING # Set LEDs to bed mesh-mode
|
|
#BED_MESH_CALIBRATE # Start the bed mesh (add ADAPTIVE=1) for adaptive bed mesh
|
|
|
|
## Uncomment for Beacon Contact (3 of 4 for beacon contact)
|
|
#G28 Z METHOD=CONTACT CALIBRATE=0 # Calibrate z offset only with hot nozzle
|
|
|
|
# Heat up the hotend up to target via data from slicer
|
|
SET_DISPLAY_TEXT MSG="Hotend: {target_extruder}c" # Display info on display
|
|
STATUS_HEATING # Set LEDs to heating-mode
|
|
G1 X{x_wait} Y{y_wait} Z15 F9000 # Go to center of the bed
|
|
M107 # Turn off partcooling fan
|
|
M109 S{target_extruder} # Heat the hotend to set temp
|
|
|
|
## Uncomment for Beacon Contact (4 of 4 for beacon contact)
|
|
#SET_GCODE_OFFSET Z=0.06 # Add a little offset for hotend thermal expansion
|
|
|
|
# Get ready to print by doing a primeline and updating the LEDs
|
|
SET_DISPLAY_TEXT MSG="Printer goes brr" # Display info on display
|
|
STATUS_PRINTING # Set LEDs to printing-mode
|
|
G0 X{x_wait - 50} Y4 F10000 # Go to starting point
|
|
G0 Z0.4 # Raise Z to 0.4
|
|
G91 # Incremental positioning
|
|
G1 X100 E20 F1000 # Primeline
|
|
G90 # Absolute position |