To use our start and end G Code Macro, we are base off LDO voron kit configuration, so some specific fan header may be different.
NOTE: NO WARRANTY Is provided, this provided as guide, please always double check gcode action. If you have purchased a Voron kit from us, feel free email us with your current printer config file, and we can offer setup guidance. If you have further questions, please contact support. We can only offer support to our existing customers via email or service contractors customers can reach out via phone.
Note: Kamp should be installed and working, [Current Below config is tested on https://github.com/kyleisah/Klipper-Adaptive-Meshing-Purging/tree/v0.1.2] You may need adjust KAMP setting to be suitable for your setup.
https://github.com/kyleisah/Klipper-Adaptive-Meshing-Purging
Note: May 2024, if you running latest Klipper above KAMP is built in, you should able to use without installing the module, if you remove the purge line macro, we suggest setting up KAMP without meshing enabling, but have line or voron purge enabled base on your preference.
Super Slicer Start Gcode Passthrough [Add to Start gcode in your slicer]
PRINT_START HOTEND={first_layer_temperature[initial_extruder] + extruder_temperature_offset[initial_extruder]} BED=[first_layer_bed_temperature] CHAMBER=[chamber_temperature]
Prusa Slicer Start Gcode Passthrough [Due to Prusa Slicer 2.6 Limitation, Chamber temperature cannot be pushed]
PRINT_START HOTEND=[first_layer_temperature] BED=[first_layer_bed_temperature]
Bambu/Orca Slicer Start Gcode Passthrough[Add to Start gcode in your slicer]
PRINT_START HOTEND=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single] Chamber=[chamber_temperature]
If you wish to use secondary bed thermeristor to wait for bed to heat soak example
Orca Slicer
TEMPERATURE_WAIT SENSOR="temperature_sensor bed_temp_2" MINIMUM={first_layer_bed_temperature[0]-10}
For 2.4 [Print Start]
[gcode_macro PRINT_START] gcode: {% set BED_TEMP = params.BED|default(0)|float %} {% set CHAMBER_TEMP = params.CHAMBER|default(0)|float %} {% set HOTEND = params.HOTEND|default(220)|float %} CLEAR_PAUSE G32 ;Home G90 M117 Heating bed M190 S{params.BED} M117 Preheating nozzle M109 S160 G1 Z10 F900 G1 Y150 X150 F18000 M117 Wait for Chamber Temperature TEMPERATURE_WAIT SENSOR="temperature_sensor chamber_temp" MINIMUM={CHAMBER_TEMP} ; wait for extruder temp G28 Z M117 Measuring mesh ## BED_MESH_PROFILE LOAD=default BED_MESH_CLEAR BED_MESH_CALIBRATE M117 Complete M117 Preheating nozzle to temperature M109 S{params.HOTEND} G28 Z M117 Purge LINE_PURGE G90 ; Absolute coordinates. M83 ; Relative extruder mode. G92 E0 M117 Print Started
For 2.4 [Print End]
[gcode_macro PRINT_END] # Use PRINT_END for the slicer ending script - please customise for your slicer of choice gcode: # safe anti-stringing move coords {% set th = printer.toolhead %} {% set x_safe = th.position.x + 20 * (1 if th.axis_maximum.x - th.position.x > 20 else -1) %} {% set y_safe = th.position.y + 20 * (1 if th.axis_maximum.y - th.position.y > 20 else -1) %} {% set z_safe = [th.position.z + 2, th.axis_maximum.z]|min %} SAVE_GCODE_STATE NAME=STATE_PRINT_END M400 ; wait for buffer to clear G92 E0 ; zero the extruder G1 E-2 F1800 ; retract filament TURN_OFF_HEATERS G90 ; absolute positioning G0 X{x_safe} Y{y_safe} Z{z_safe} F20000 ; move nozzle to remove stringing G0 X{th.axis_maximum.x//2} Y{th.axis_maximum.y - 2} F3600 ; park nozzle at rear M107 ; turn off fan BED_MESH_CLEAR RESTORE_GCODE_STATE NAME=STATE_PRINT_END
For Trident Voron [Print Start]
[gcode_macro PRINT_START] gcode: {% set BED_TEMP = params.BED|default(0)|float %} {% set CHAMBER_TEMP = params.CHAMBER|default(0)|float %} {% set HOTEND = params.HOTEND|default(220)|float %} CLEAR_PAUSE G28 ;Home G90 Z_TILT_ADJUST M117 Heating bed M190 S{params.BED} M117 Preheating nozzle M109 S160 G1 Z10 F900 G1 Y150 X150 F18000 M117 Wait for Chamber Temperature TEMPERATURE_WAIT SENSOR="temperature_sensor chamber_temp" MINIMUM={CHAMBER_TEMP} ; wait for extruder temp G28 Z M117 Measuring mesh ## BED_MESH_PROFILE LOAD=default BED_MESH_CLEAR BED_MESH_CALIBRATE M117 Complete M117 Preheating nozzle to temperature M109 S{params.HOTEND} G28 Z M117 Purge LINE_PURGE G90 ; Absolute coordinates. M83 ; Relative extruder mode. G92 E0 M117 Print Started
For Trident Voron [Print End]
[gcode_macro PRINT_END] # Use PRINT_END for the slicer ending script - please customise for your slicer of choice gcode: # safe anti-stringing move coords {% set th = printer.toolhead %} {% set x_safe = th.position.x + 20 * (1 if th.axis_maximum.x - th.position.x > 20 else -1) %} {% set y_safe = th.position.y + 20 * (1 if th.axis_maximum.y - th.position.y > 20 else -1) %} {% set z_safe = [th.position.z + 2, th.axis_maximum.z]|min %} SAVE_GCODE_STATE NAME=STATE_PRINT_END M400 ; wait for buffer to clear G92 E0 ; zero the extruder G1 E-2 F1800 ; retract filament TURN_OFF_HEATERS G90 ; absolute positioning G0 X{x_safe} Y{y_safe} Z{z_safe} F20000 ; move nozzle to remove stringing G0 X{th.axis_maximum.x//2} Y{th.axis_maximum.y - 2} F3600 ; park nozzle at rear M107 ; turn off fan BED_MESH_CLEAR RESTORE_GCODE_STATE NAME=STATE_PRINT_END