Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions macros.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -947,9 +947,9 @@ gcode:
{% set parking_position_t1 = printer["gcode_macro T1"].parking_position|float %}
_SELECT_TOOL T={default_toolhead} X={safe_home_x} Y={safe_home_y} TOOLSHIFT=True
PARK_TOOLHEAD
_CLEANING_MOVE TOOLHEAD={default_toolhead}
_CLEANING_MOVE TOOLHEAD={default_toolhead} AUTOMATED=True
_SELECT_TOOL T={0 if default_toolhead == 1 else 1} X={parking_position_t0 if default_toolhead == 1 else parking_position_t0} Y=0 TOOLSHIFT=false
_CLEANING_MOVE TOOLHEAD={0 if default_toolhead == 1 else 1}
_CLEANING_MOVE TOOLHEAD={0 if default_toolhead == 1 else 1} AUTOMATED=True
_VAOC_CALIBRATE_Z_OFFSET AUTO_Z_OFFSET=True
_SELECT_TOOL T={default_toolhead} X={safe_home_x} Y={safe_home_y} TOOLSHIFT=false
{% endif %}
Expand Down Expand Up @@ -1132,9 +1132,9 @@ gcode:
{% endif %}
{% if idex_mode != "copy" and idex_mode != "mirror" %}
{% if printer["dual_carriage"] is defined and printer["gcode_macro RatOS"].nozzle_priming|lower == 'false' %}
_MOVE_TO_LOADING_POSITION TOOLHEAD={initial_toolhead}
_MOVE_TO_LOADING_POSITION TOOLHEAD={initial_toolhead} AUTOMATED=True
_PURGE_FILAMENT TOOLHEAD={initial_toolhead} E={printer["gcode_macro RatOS"].toolchange_first_purge|default(50)|float}
_CLEANING_MOVE TOOLHEAD={initial_toolhead}
_CLEANING_MOVE TOOLHEAD={initial_toolhead} AUTOMATED=True
{% endif %}
{% if first_x >= 0 and first_y >= 0 %}
G0 X{first_x} Y{first_y} Z{first_z} F{speed}
Expand Down
4 changes: 2 additions & 2 deletions macros/idex/idex.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -535,9 +535,9 @@ gcode:
ACTIVATE_EXTRUDER EXTRUDER=extruder{'' if new_toolhead == 0 else new_toolhead}

# preextrude
_MOVE_TO_LOADING_POSITION TOOLHEAD={new_toolhead}
_MOVE_TO_LOADING_POSITION TOOLHEAD={new_toolhead} AUTOMATED=True
_PURGE_FILAMENT TOOLHEAD={new_toolhead} E={purge_after_load}
_CLEANING_MOVE TOOLHEAD={new_toolhead}
_CLEANING_MOVE TOOLHEAD={new_toolhead} AUTOMATED=True

# reactivate old toolhead to make sure the toolshift in the resume macro works as expected
SET_DUAL_CARRIAGE CARRIAGE={old_toolhead} MODE=PRIMARY
Expand Down
6 changes: 3 additions & 3 deletions macros/idex/toolheads.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ gcode:
PARK_TOOLHEAD

# clean nozzle
_CLEANING_MOVE TOOLHEAD={toolhead}
_CLEANING_MOVE TOOLHEAD={toolhead} AUTOMATED=True

# set toolhead standby temperature
{% if toolchange_standby_temp > -1 %}
Expand Down Expand Up @@ -272,9 +272,9 @@ gcode:

# purge if configured
{% if purge > 0 %}
_MOVE_TO_LOADING_POSITION TOOLHEAD={toolhead}
_MOVE_TO_LOADING_POSITION TOOLHEAD={toolhead} AUTOMATED=True
_PURGE_FILAMENT TOOLHEAD={toolhead} E={purge}
_CLEANING_MOVE TOOLHEAD={toolhead}
_CLEANING_MOVE TOOLHEAD={toolhead} AUTOMATED=True
{% endif %}

# set part cooling fan speed
Expand Down
126 changes: 55 additions & 71 deletions macros/load_filament.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,10 @@ gcode:
{% set filament_name = 'unknown' %}
{% set filament_type = 'unknown' %}
{% endif %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

{% if printer["dual_carriage"] is not defined %}
_DEFAULT_LOAD_FILAMENT TEMP={temp} NAME={filament_name} TYPE={filament_type}
_DEFAULT_LOAD_FILAMENT TEMP={temp} NAME={filament_name} TYPE={filament_type} AUTOMATED={automated}
{% else %}
{% if not printer.pause_resume.is_paused %}
{% set toolhead = params.TOOLHEAD|default(-1)|int %}
Expand All @@ -40,7 +41,7 @@ gcode:
{% endif %}
{% endif %}
{% if toolhead==0 or toolhead==1 %}
_IDEX_LOAD_FILAMENT TEMP={temp} TOOLHEAD={toolhead} NAME={filament_name} TYPE={filament_type}
_IDEX_LOAD_FILAMENT TEMP={temp} TOOLHEAD={toolhead} NAME={filament_name} TYPE={filament_type} AUTOMATED={automated}
{% else %}
RATOS_ECHO MSG="Please select toolhead! 0 = left, 1 = right toolhead"
{% endif %}
Expand All @@ -54,6 +55,7 @@ gcode:
{% set temp = params.TEMP|int %}
{% set filament_name = params.NAME|default('')|string %}
{% set filament_type = params.TYPE|default('')|string %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

# config
{% set color_ok = printer["gcode_macro RatOS"].status_color_ok|string %}
Expand All @@ -79,7 +81,7 @@ gcode:
TEMPERATURE_WAIT SENSOR=extruder MINIMUM={temp}

# load filament
_LOAD_FILAMENT TOOLHEAD=0
_LOAD_FILAMENT TOOLHEAD=0 AUTOMATED={automated}

# restore gcode state
RESTORE_GCODE_STATE NAME=load_state
Expand Down Expand Up @@ -109,6 +111,7 @@ gcode:
{% set toolhead = params.TOOLHEAD|int %}
{% set filament_name = params.NAME|default('')|string %}
{% set filament_type = params.TYPE|default('')|string %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

# config
{% set color_ok = printer["gcode_macro RatOS"].status_color_ok|string %}
Expand Down Expand Up @@ -144,7 +147,7 @@ gcode:
{% endif %}

# load filament
_LOAD_FILAMENT TOOLHEAD={toolhead} TEMP={temp}
_LOAD_FILAMENT TOOLHEAD={toolhead} TEMP={temp} AUTOMATED={automated}

# set filament data
{% if filament_name != '' and filament_type != '' %}
Expand All @@ -170,14 +173,15 @@ gcode:
gcode:
# parameter
{% set toolhead = params.TOOLHEAD|int %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

DEBUG_ECHO PREFIX="_LOAD_FILAMENT" MSG="TOOLHEAD: {toolhead}"

# load filament
_MOVE_TO_LOADING_POSITION TOOLHEAD={toolhead}
_MOVE_TO_LOADING_POSITION TOOLHEAD={toolhead} AUTOMATED={automated}
_LOAD_FILAMENT_FROM_EXTRUDER_TO_COOLING_ZONE TOOLHEAD={toolhead}
_LOAD_FILAMENT_FROM_COOLING_ZONE_TO_NOZZLE TOOLHEAD={toolhead}
_CLEANING_MOVE TOOLHEAD={toolhead}
_CLEANING_MOVE TOOLHEAD={toolhead} AUTOMATED={automated}


[gcode_macro _LOAD_FILAMENT_FROM_EXTRUDER_TO_COOLING_ZONE]
Expand Down Expand Up @@ -354,56 +358,31 @@ gcode:
{% endif %}


[gcode_macro _MOVE_TO_PARKING_POSITION]
gcode:
# parameter
{% set toolhead = params.TOOLHEAD|int %}

DEBUG_ECHO PREFIX="_MOVE_TO_PARKING_POSITION" MSG="TOOLHEAD: {toolhead}"

{% if printer["dual_carriage"] is defined or printer["rmmu_hub"] is defined %}
{% if "xyz" in printer.toolhead.homed_axes %}
{% if printer["gcode_macro T%s" % toolhead].has_oozeguard|default(false)|lower == 'true' %}
{% if printer["gcode_macro T%s" % toolhead].parking_position is defined %}

# config
{% set parking_position = printer["gcode_macro T%s" % toolhead].parking_position|float %}
{% set speed = printer["gcode_macro RatOS"].toolchange_travel_speed|float * 60 %}

# move to parking position
G1 X{parking_position} F{speed}

# wait for moves to finish
M400

{% endif %}
{% endif %}
{% endif %}
{% endif %}


[gcode_macro _MOVE_TO_LOADING_POSITION]
gcode:
# parameter
{% set toolhead = params.TOOLHEAD|int %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

DEBUG_ECHO PREFIX="_MOVE_TO_LOADING_POSITION" MSG="TOOLHEAD: {toolhead}"

{% if printer["dual_carriage"] is defined or printer["rmmu_hub"] is defined %}
{% if "xyz" in printer.toolhead.homed_axes %}
{% if printer["gcode_macro T%s" % toolhead].has_oozeguard|default(false)|lower == 'true' %}
{% if printer["gcode_macro T%s" % toolhead].loading_position is defined %}
{% if automated %}
{% if printer["dual_carriage"] is defined or printer["rmmu_hub"] is defined %}
{% if "xyz" in printer.toolhead.homed_axes %}
{% if printer["gcode_macro T%s" % toolhead].has_oozeguard|default(false)|lower == 'true' %}
{% if printer["gcode_macro T%s" % toolhead].loading_position is defined %}

# config
{% set loading_position = printer["gcode_macro T%s" % toolhead].loading_position|float %}
{% set speed = printer["gcode_macro RatOS"].toolchange_travel_speed|float * 60 %}
# config
{% set loading_position = printer["gcode_macro T%s" % toolhead].loading_position|float %}
{% set speed = printer["gcode_macro RatOS"].toolchange_travel_speed|float * 60 %}

# move to loading position outside the oozegaurd
G1 X{loading_position} F{speed}
# move to loading position outside the oozegaurd
G1 X{loading_position} F{speed}

# wait for moves to finish
M400
# wait for moves to finish
M400

{% endif %}
{% endif %}
{% endif %}
{% endif %}
Expand All @@ -414,36 +393,41 @@ gcode:
gcode:
# parameter
{% set toolhead = params.TOOLHEAD|int %}

{% if printer["dual_carriage"] is defined or printer["rmmu_hub"] is defined %}
{% if "xyz" in printer.toolhead.homed_axes %}
{% if printer["gcode_macro T%s" % toolhead].has_oozeguard|default(false)|lower == 'true' %}
{% if printer["gcode_macro T%s" % toolhead].parking_position is defined and printer["gcode_macro T%s" % toolhead].loading_position is defined %}

# config
{% set loading_position = printer["gcode_macro T%s" % toolhead].loading_position|float %}
{% set parking_position = printer["gcode_macro T%s" % toolhead].parking_position|float %}
{% set speed = printer["gcode_macro RatOS"].toolchange_travel_speed|float * 60 %}

{% set cleaning_position = loading_position %}
{% if loading_position == parking_position %}
{% if loading_position > 0 %}
{% set cleaning_position = loading_position - 30 %}
{% else %}
{% set cleaning_position = loading_position + 30 %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

DEBUG_ECHO PREFIX="_CLEANING_MOVE" MSG="TOOLHEAD: {toolhead}"

{% if automated %}
{% if printer["dual_carriage"] is defined or printer["rmmu_hub"] is defined %}
{% if "xyz" in printer.toolhead.homed_axes %}
{% if printer["gcode_macro T%s" % toolhead].has_oozeguard|default(false)|lower == 'true' %}
{% if printer["gcode_macro T%s" % toolhead].parking_position is defined and printer["gcode_macro T%s" % toolhead].loading_position is defined %}

# config
{% set loading_position = printer["gcode_macro T%s" % toolhead].loading_position|float %}
{% set parking_position = printer["gcode_macro T%s" % toolhead].parking_position|float %}
{% set speed = printer["gcode_macro RatOS"].toolchange_travel_speed|float * 60 %}

{% set cleaning_position = loading_position %}
{% if loading_position == parking_position %}
{% if loading_position > 0 %}
{% set cleaning_position = loading_position - 30 %}
{% else %}
{% set cleaning_position = loading_position + 30 %}
{% endif %}
{% endif %}
{% endif %}

# nozzle cleaning
G1 X{parking_position} F{speed}
G1 X{cleaning_position} F{speed}
G1 X{parking_position} F{speed}
G1 X{cleaning_position} F{speed}
G1 X{parking_position} F{speed}
# nozzle cleaning
G1 X{parking_position} F{speed}
G1 X{cleaning_position} F{speed}
G1 X{parking_position} F{speed}
G1 X{cleaning_position} F{speed}
G1 X{parking_position} F{speed}

# wait for moves to finish
M400
# wait for moves to finish
M400

{% endif %}
{% endif %}
{% endif %}
{% endif %}
Expand Down
28 changes: 17 additions & 11 deletions macros/unload_filament.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,11 @@ gcode:
{% set toolhead = params.TOOLHEAD|default(-1)|int %}
{% set filament_name = params._NAME|default('')|string %}
{% set filament_type = params._TYPE|default('')|string %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

{% set temp = params.TEMP|default(220)|int %}
{% if printer["dual_carriage"] is not defined %}
_DEFAULT_UNLOAD_FILAMENT TEMP={temp} NAME='{filament_name}' TYPE='{filament_type}'
_DEFAULT_UNLOAD_FILAMENT TEMP={temp} NAME='{filament_name}' TYPE='{filament_type}' AUTOMATED={automated}
{% else %}
{% if not printer.pause_resume.is_paused %}
{% set toolhead = params.TOOLHEAD|default(-1)|int %}
Expand All @@ -43,7 +44,7 @@ gcode:
{% endif %}
{% endif %}
{% if toolhead==0 or toolhead==1 %}
_IDEX_UNLOAD_FILAMENT TEMP={temp} TOOLHEAD={toolhead} NAME='{filament_name}' TYPE='{filament_type}'
_IDEX_UNLOAD_FILAMENT TEMP={temp} TOOLHEAD={toolhead} NAME='{filament_name}' TYPE='{filament_type}' AUTOMATED={automated}
{% else %}
RATOS_ECHO MSG="Please select toolhead! 0 = left, 1 = right toolhead"
{% endif %}
Expand All @@ -56,6 +57,8 @@ gcode:
description: Unloads the filament. Note: be careful with PETG, make sure you inspect the tip of your filament before reloading to avoid jams.
gcode:
{% set toolhead = params.TOOLHEAD|default(-1)|int %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

{% set unload_speed = 5 * 60 %}
{% set unload_length = printer["gcode_macro RatOS"].filament_unload_length|float %}
M117 Unloading filament...
Expand All @@ -71,7 +74,7 @@ gcode:
G0 E-15 F6000
# Continue extraction slowly, allow the filament time to cool solid before it reaches the gears
G0 E-{unload_length} F{unload_speed}
_CLEANING_MOVE TOOLHEAD={toolhead}
_CLEANING_MOVE TOOLHEAD={toolhead} AUTOMATED={automated}
M117 Filament unloaded!
RESPOND MSG="Filament unloaded! Please inspect the tip of the filament before reloading."

Expand All @@ -87,6 +90,7 @@ gcode:
{% set filament_name = params.NAME|default('')|string %}
{% set filament_type = params.TYPE|default('')|string %}
{% set enable_unload_tip_forming = true if printer["gcode_macro RatOS"].enable_unload_tip_forming|default(false)|lower == 'true' else false %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

# config
{% set color_unknown = printer["gcode_macro RatOS"].status_color_unknown|string %}
Expand All @@ -113,9 +117,9 @@ gcode:
# unload filament

{% if enable_unload_tip_forming %}
_UNLOAD_FILAMENT TOOLHEAD=0 NAME='{filament_name}' TYPE='{filament_type}'
_UNLOAD_FILAMENT TOOLHEAD=0 NAME='{filament_name}' TYPE='{filament_type}' AUTOMATED={automated}
{% else %}
_LEGACY_UNLOAD_FILAMENT TOOLHEAD=0
_LEGACY_UNLOAD_FILAMENT TOOLHEAD=0 AUTOMATED={automated}
{% endif %}

# restore gcode state
Expand Down Expand Up @@ -145,6 +149,7 @@ gcode:
{% set filament_name = params.NAME|default('')|string %}
{% set filament_type = params.TYPE|default('')|string %}
{% set enable_unload_tip_forming = true if printer["gcode_macro RatOS"].enable_unload_tip_forming|default(false)|lower == 'true' else false %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

# config
{% set color_unknown = printer["gcode_macro RatOS"].status_color_unknown|string %}
Expand Down Expand Up @@ -180,9 +185,9 @@ gcode:

# unload filament
{% if enable_unload_tip_forming %}
_UNLOAD_FILAMENT TOOLHEAD={toolhead} NAME='{filament_name}' TYPE='{filament_type}'
_UNLOAD_FILAMENT TOOLHEAD={toolhead} NAME='{filament_name}' TYPE='{filament_type}' AUTOMATED={automated}
{% else %}
_LEGACY_UNLOAD_FILAMENT TEMP={temp} TOOLHEAD={toolhead}
_LEGACY_UNLOAD_FILAMENT TEMP={temp} TOOLHEAD={toolhead} AUTOMATED={automated}
{% endif %}

# set filament data
Expand All @@ -209,14 +214,15 @@ gcode:
{% set toolhead = params.TOOLHEAD|int %}
{% set filament_name = params.NAME|default('')|string %}
{% set filament_type = params.TYPE|default('')|string %}
{% set automated = params.AUTOMATED|default('false')|lower == 'true' %}

DEBUG_ECHO PREFIX="_UNLOAD_FILAMENT" MSG="TOOLHEAD: {toolhead}"

# unload filament
_MOVE_TO_LOADING_POSITION TOOLHEAD={toolhead}
_MOVE_TO_LOADING_POSITION TOOLHEAD={toolhead} AUTOMATED={automated}
_UNLOAD_FILAMENT_FROM_NOZZLE_TO_COOLING_ZONE TOOLHEAD={toolhead} NAME='{filament_name}' TYPE='{filament_type}'
_UNLOAD_FILAMENT_FROM_COOLING_ZONE_TO_EXTRUDER TOOLHEAD={toolhead}
_CLEANING_MOVE TOOLHEAD={toolhead}
_CLEANING_MOVE TOOLHEAD={toolhead} AUTOMATED={automated}


[gcode_macro _UNLOAD_FILAMENT_FROM_NOZZLE_TO_COOLING_ZONE]
Expand Down Expand Up @@ -462,7 +468,7 @@ gcode:
PAUSE RUNOUT=True
{% endif %}
{% if not clogged and unload_after_runout %}
UNLOAD_FILAMENT TOOLHEAD={toolhead}
UNLOAD_FILAMENT TOOLHEAD={toolhead} AUTOMATED=True
{% endif %}
{% if not clogged and printer["dual_carriage"] is defined %}
{% if printer["gcode_macro _IDEX_JOIN_SPOOLS"].enabled|default(false)|lower == 'true'%}
Expand All @@ -479,7 +485,7 @@ gcode:
description: Executes a color change by pausing the printer an unloading the filament.
gcode:
PAUSE
UNLOAD_FILAMENT
UNLOAD_FILAMENT AUTOMATED=True
RATOS_ECHO MSG="Please load new filament and resume"


Expand Down
Loading