diff --git a/macros.cfg b/macros.cfg index 7637d403..fb987998 100644 --- a/macros.cfg +++ b/macros.cfg @@ -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 %} @@ -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} diff --git a/macros/idex/idex.cfg b/macros/idex/idex.cfg index 0b844bb8..299248f5 100644 --- a/macros/idex/idex.cfg +++ b/macros/idex/idex.cfg @@ -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 diff --git a/macros/idex/toolheads.cfg b/macros/idex/toolheads.cfg index f981cec6..4cadf258 100644 --- a/macros/idex/toolheads.cfg +++ b/macros/idex/toolheads.cfg @@ -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 %} @@ -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 diff --git a/macros/load_filament.cfg b/macros/load_filament.cfg index 4d3c5529..c5439134 100644 --- a/macros/load_filament.cfg +++ b/macros/load_filament.cfg @@ -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 %} @@ -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 %} @@ -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 %} @@ -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 @@ -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 %} @@ -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 != '' %} @@ -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] @@ -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 %} @@ -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 %} diff --git a/macros/unload_filament.cfg b/macros/unload_filament.cfg index 15c6d3d5..e641b23c 100644 --- a/macros/unload_filament.cfg +++ b/macros/unload_filament.cfg @@ -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 %} @@ -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 %} @@ -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... @@ -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." @@ -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 %} @@ -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 @@ -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 %} @@ -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 @@ -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] @@ -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'%} @@ -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"