What's new
VORON Design

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members!

Solved Start Gcode with mods: klicky/auto-z/nozzle scrub

MrMitnick

Active member
Printer Model
Voron 2.4.r2 Rev.C LDO kit
Extruder Type
Clockwork 2
Cooling Type
Stealthburner
Hello,

Looking for an example start gcode to work off. Would someone using: klicky probe / nozzle scubber / auto-z mind sharing their start gcode here?
I am having a hard time figuring out how to build a decent start code with those mods.

I have this now, but i feel this can be improved, as it is making a lot of unnecessary moves. I have also found Auto-z to inconsistent, i think this is because of the temps during z calibrate.

[gcode_macro PRINT_START]
gcode:
G28 xyz ; home all axes
QUAD_GANTRY_LEVEL
G28 z
CLEAN_NOZZLE
CALIBRATE_Z
BED_MESH_CALIBRATE
BED_MESH_PROFILE LOAD=default ; Use the stored mesh.
G90 ; absolute positioning
G1 Z20 F3000 ; move nozzle away from bed

thnx!
 
Last edited:
Mine has evolved as I have done the upgrades, but here it is for you. I like to comment on changes.

Code:
[gcode_macro PRINT_START]
#   Use PRINT_START for the slicer starting script - please customise for your slicer of choice
# Start GCODE should be : print_start EXTRUDER_TEMP=[first_layer_temperature] BED_TEMP=[first_layer_bed_temperature]

gcode:
  ### Get Variables ###
    {% set EXTRUDER_TEMP = params.EXTRUDER|default(10)|int %}
    {% set BED_TEMP = params.BED|default(10)|int %}
    {% set CHAMBER_TEMP = params.CHAMBER|default(35)|int %} ; Added to accommodate Chamber Sensor
   
    #BED_MESH_CLEAR # 19/05/2023 Removed to accommodate Adapative Bed Mesh
    RESPOND MSG="Heating..."
    M117 Heating...
    _display_yellow
    M140 S{BED_TEMP}                         ; set bed final temp
    M190 S{BED_TEMP}                         ; wait for bed final temp
    TEMPERATURE_WAIT SENSOR="temperature_sensor chamber" MINIMUM={CHAMBER_TEMP} ; Added to accommodate Chamber Sensor
    M104 S{EXTRUDER_TEMP}                         ; set extruder final temp
    M109 S{EXTRUDER_TEMP}                         ; wait for extruder final temp
    _display_red
    M900
    G21 ; set units to millimetres
    G90 ; use absolute coordinates
    M83 ; use relative distances for extrusion
    #BED_MESH_PROFILE LOAD="ABS" # 19/05/2023 Removed to accommodate Adapative Bed Mesh
    G28 # Home To prep for clean
    CLEAN_NOZZLE
    G32                            ; home all axes
    G1 Z20 F3000                   ; move nozzle away from bed
    RESPOND MSG="Calibrating Z"
    CALIBRATE_Z
    RESPOND MSG="Bed Mesh"
    BED_MESH_CLEAR      # 19/05/2023 Added for Adaptive bed mesh
    BED_MESH_CALIBRATE  # 19/05/2023 Added for Adaptive bed mesh
    BED_MESH_PROFILE LOAD=default
    RESPOND MSG="Bed Mesh done and loaded."

    #PURGE_LINE # 19/05/2023 Removed to accommodate adaptive line purge macro
    LINE_PURGE # 19/05/2023 Added for Adaptive Purge Line
    M117 Mungral - Printing

G32 does all the QGL, also, I have calibration, and QGL macros set up to pick up the Euclid probe etc.

Its messy, but it works :)
 
Mine has evolved as I have done the upgrades, but here it is for you. I like to comment on changes.

Code:
[gcode_macro PRINT_START]
#   Use PRINT_START for the slicer starting script - please customise for your slicer of choice
# Start GCODE should be : print_start EXTRUDER_TEMP=[first_layer_temperature] BED_TEMP=[first_layer_bed_temperature]

gcode:
  ### Get Variables ###
    {% set EXTRUDER_TEMP = params.EXTRUDER|default(10)|int %}
    {% set BED_TEMP = params.BED|default(10)|int %}
    {% set CHAMBER_TEMP = params.CHAMBER|default(35)|int %} ; Added to accommodate Chamber Sensor
  
    #BED_MESH_CLEAR # 19/05/2023 Removed to accommodate Adapative Bed Mesh
    RESPOND MSG="Heating..."
    M117 Heating...
    _display_yellow
    M140 S{BED_TEMP}                         ; set bed final temp
    M190 S{BED_TEMP}                         ; wait for bed final temp
    TEMPERATURE_WAIT SENSOR="temperature_sensor chamber" MINIMUM={CHAMBER_TEMP} ; Added to accommodate Chamber Sensor
    M104 S{EXTRUDER_TEMP}                         ; set extruder final temp
    M109 S{EXTRUDER_TEMP}                         ; wait for extruder final temp
    _display_red
    M900
    G21 ; set units to millimetres
    G90 ; use absolute coordinates
    M83 ; use relative distances for extrusion
    #BED_MESH_PROFILE LOAD="ABS" # 19/05/2023 Removed to accommodate Adapative Bed Mesh
    G28 # Home To prep for clean
    CLEAN_NOZZLE
    G32                            ; home all axes
    G1 Z20 F3000                   ; move nozzle away from bed
    RESPOND MSG="Calibrating Z"
    CALIBRATE_Z
    RESPOND MSG="Bed Mesh"
    BED_MESH_CLEAR      # 19/05/2023 Added for Adaptive bed mesh
    BED_MESH_CALIBRATE  # 19/05/2023 Added for Adaptive bed mesh
    BED_MESH_PROFILE LOAD=default
    RESPOND MSG="Bed Mesh done and loaded."

    #PURGE_LINE # 19/05/2023 Removed to accommodate adaptive line purge macro
    LINE_PURGE # 19/05/2023 Added for Adaptive Purge Line
    M117 Mungral - Printing

G32 does all the QGL, also, I have calibration, and QGL macros set up to pick up the Euclid probe etc.

Its messy, but it works :)
Thank you!
 
Top