====== Print Start Workflows ====== {tag> articles setup} One way ([[slicer machine start print gcode]]), or another ([[PRINT_START macro]]), there's certain steps we need to take to start printing the gcode that's slice from an object. There's reasons and rationale for why you'd place certain actions where. ==== Minimal workflow ==== * heat bed * home and position * heat extruder * prime nozzle * reset extruder * === More Realistic Workflow === * heat bed * home and position * heat extruder * Set the feed speed to 100% * Set the flow rate to 100% * prime nozzle * reset extruder ==== Example Orca Machine Start gcode ====== ; ; Orca Slicer Machine Start G-code by @dshoop v2.1 ; ; PRINT_START ; note the above line is commented out as we may or may not need to call this depending ; on our version of Klipper. If earlier versions of Elegoo's distribution it ; was called automatically. G28; Home, if this fails no point to continue M190 S[bed_temperature_initial_layer_single] ;wait for bed to reach temperature M104 S150 ;pre-warm extruder to 150C below typical extrusion temps so as not to ooze, no wait ; BED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=1 ADAPTIVE_MARGIN=0 ; M104 S[nozzle_temperature_initial_layer] ;Heat extruder to temp, no wait M220 S100 ;Set the feed speed to 100% M221 S100 ;Set the flow rate to 100% G90 G28 ;home G1 Z10 F300 G1 X67.5 Y0 F6000 G1 Z0 F300 M109 S[nozzle_temperature_initial_layer] ; wait for extruder to reach temp G92 E0 ;Reset Extruder G1 X67.5 Y0 Z0.4 F300 ;Move to start position G1 X167.5 E30 F400 ;Draw the first line G0 Y0.6 F120 G1 X67.5 E60 F400 ;Draw the second line G0 Z0.6 F120 G92 E0 ;Reset Extruder ===== Example PRINT_START macro ===== [gcode_macro PRINT_START] gcode: RESPOND PREFIX="" MSG=">> PRINT START <<" M117 Starting Klipper START_PRINT code M400 ; wait for current moves to finish CLEAR_PAUSE M105 ;Request a temperature report to be sent to the host as soon as possible RESPOND PREFIX="" MSG=">> GCODE START <<" M117 Executing gcode