Neptune4.help

FAQs and Facts for the Elegoo Neptune 4 Series 3D Printer

User Tools

Site Tools


print_start_workflows

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
print_start_workflows [2025/11/05 17:52] – [Example Orca Machine Start gcode] dshoopprint_start_workflows [2025/11/19 03:19] (current) – [Example PRINT_START macro] dshoop
Line 1: Line 1:
 +====== Print Start Workflows ======
 +{{tag> articles setup about}}
  
 +One way (slicer side and [[slicer machine start print gcode]]), or another (Klipper side and [[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 ===
 +
 +  * check that bed's level with SCREWS_TILT_CALCULATE max_deviation check
 +  * heat bed
 +  * home and position
 +  * run adaptive bed mesh
 +  * heat extruder
 +  * Set the feed speed to 100%
 +  * Set the flow rate to 100%
 +  * prime nozzle
 +  * reset extruder
 +
 +
 +==== Example Orca Machine Start gcode ======
 +
 +<code>
 +;
 +; Orca Slicer Machine Start G-code by @dshoop v2.2a
 +;
 +
 +; 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; required before BED_MESH_CALIBRATE
 +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
 +</code>
 +
 +==== Example PRINT_START macro ====
 +
 +<code>
 +[gcode_macro PRINT_START]         
 +gcode:
 +
 + RESPOND PREFIX="" MSG=">> Klipper PRINT_START Macro <<"
 +
 + M117 Starting Klipper START_PRINT macro
 +
 + M400 ; wait for current moves to finish
 +
 + CLEAR_PAUSE ; clear any pause conditions
 +
 + G28 ; home before SCREWS_TILT_CALCULATE 
 +
 + SCREWS_TILT_CALCULATE max_deviation=0.02 ; assume bed's z plane is level within given deviation
 +
 +  M105 ;Request temperature reports to be sent to the host as soon as possible
 +
 + RESPOND PREFIX="" MSG=">> PRINT_START Macro complete <<"
 +
 +  M117 PRINT_START Macro complete
 +</code>
/app/data/attic/print_start_workflows.1762383174.txt.gz · Last modified: (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki