[gcode_macro START_PRINT] gcode: {% set bed_temp = params.BED_TEMP|default(50)|float %} {% set ext_temp = params.EXTRUDER_TEMP|default(200)|float %} # use absolute coordinates G90 # extruder relative mode M83 # set final bed temp M140 S{bed_temp} # set temporary nozzle temp to prevent oozing during homing M104 S150 # allow partial nozzle warmup G4 S10 # home all axis G28 # load bed mesh profile BED_MESH_PROFILE LOAD=hot G1 Z50 F240 G1 X2 Y10 F3000 # set final nozzle temp M104 S{ext_temp} # wait for bed temp to stabilize M190 S{bed_temp} # wait for nozzle temp to stabilize M109 S{ext_temp} G1 Z0.28 F240 # prime the nozzle G92 E0 G1 Y140 E10 F1500 G1 X2.3 F5000 # prime the nozzle G92 E0 G1 Y10 E10 F1200 G92 E0 [gcode_macro END_PRINT] gcode: {% set print_height = params.MAX_HEIGHT|default(1)|float %} {% set printable_height = printer.toolhead.axis_maximum.z|default(250)|float %} # { action_respond_info( printable_height|string ) } G91 G1 E-3 G90 {% if print_height < printable_height %} {% set height = [print_height+2, printable_height]|min %} G1 Z{height} F600 {% endif %} G1 X0 Y220 M140 S0 ; turn off heatbed M104 S0 ; turn off temperature M107 ; turn off fan M84 ; disable motors