@guywinslow
Ok, 3 of 4 test prints worked ok, Beter then 1 of 2. maybe still and issue. Hear is the scripts i wrote to salve this issue:
Scripts used for Manul filament change.
To Start a Print
a. Select the filament you want to start with.
b. Run the print file.
When the printer sees the M600 command in the Print file it will pause the Print.
a. Deselect the Tool and the filament will automatically move to the Safe position on the print bed and unload the filament.
b. Change the filament with the next filament to print with.
c. Select that tool and the filament will be loaded.
d. Just hit the resume button after that.
===============================================================================
Tool 0
; tfree0.g
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
echo "tfree0.g"
if {state.currentTool != -1}
M83 ; relative extrusion
G91 ; relative movement
G1 Z2.0 E-10 F3600 ; retract 10mm up 2mm
M106 S0 ; turn off our print cooling fan
M400 ; Wait for current moves to finish
M98 P"0:/macros/PETG_Unload.g"
M400 ; Wait for current moves to finish
; tpre0.g
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
echo "tpre0.g"
if {state.currentTool != 0}
M98 P"0:/macros/PETG_Load.g"
M400 ; Wait for current moves to finish
; tpost0.g
;
; called after tool 0 has been selected
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
echo "tpost0.g"
M116 P0 ; wait for tool temperatures to be reached
M400 ; Wait for current moves to finish
===============================================================================
Tool 1
; tfree1.g
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
echo "tfree1.g"
if {state.currentTool != -1}
M83 ; relative extrusion
G91 ; relative movement
G1 Z2.0 E-10 F3600 ; retract 10mm up 2mm
M106 S0 ; turn off our print cooling fan
M400 ; Wait for current moves to finish
M98 P"0:/macros/PETG_Unload.g"
M400 ; Wait for current moves to finish
; tpre1.g
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
echo "tpre1.g"
if {state.currentTool != 0}
M98 P"0:/macros/PETG_Load.g"
M400 ; Wait for current moves to finish
; tpost1.g
;
; called after tool 0 has been selected
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
echo "tpost0.g"
M116 P0 ; wait for tool temperatures to be reached
M400 ; Wait for current moves to finish
===============================================================================
; Name: start.g
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
; The global.flag_FilamentChange vareable is created in the config.g. The
; value key is as falows.
;
; Filament Change / Pause Indicator
; Default: 0
; 0 = Pause Script
; 1 = Filament Change Script
;
set global.flag_FilamentChange = 0
M400 ; Wait for current moves to finish
; filament-change.g
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
echo "filament-change.g"
set global.flag_FilamentChange = 1
M83 ; relative extrusion
G1 E-10 F3600 ; retract 10mm
M400 ; Wait for current moves to finish
G91 ; relative movement
G1 Z2 F3600 ; raise head 2mm
G90 ; set to Absolute Positioning
M400 ; Wait for current moves to finish
; pause.g
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
echo "pause.g"
M83 ; relative extrusion
G1 E-2 F3600 ; retract 2mm
M400 ; Wait for current moves to finish
G91 ; relative movement
G1 Z2 F3600 ; raise head 2mm
G90 ; set to Absolute Positioning
M400 ; Wait for current moves to finish
; resume.g
;
; Notes
; Make sure we wait until motion stops, in RRF 3.5.0 and later with
; multiple motion systems release owned axes and extruders.
;
G90 ; set to Absolute Positioning
G1 R1 X0 Y0 Z1 F5000 ; move to 1mm above the resume location
M400 ; Wait for current moves to finish
G1 R1 X0 Y0 Z0 F500 ; move to the resume location
M400 ; Wait for current moves to finish
if {global.flag_FilamentChange == 1}
echo "Filament Change Pause"
M83 ; relative extrusion
G1 E10 F3600 ; extrude 10mm
M400 ; Wait for current moves to finish
else
echo "Normal Pause"
M83 ; relative extrusion
G1 E2 F3600 ; extrude 2mm
M400 ; Wait for current moves to finish
set global.flag_FilamentChange = 0
M400 ; Wait for current moves to finish
===============================================================================
Macros
; PETG_load.g
;
; Notes
; Loads PETG into the first tool T0
;
var myTool = 0
echo "PETG load.g"
M98 P"0:/macros/Tools/park.g"
T{var.myTool} P0
echo "Nozzle is being heated up"
G10 P{var.myTool} S238 ; Set current tool temperature to 238c
M116 P{var.myTool} ; Wait for the temperatures to be reached
echo "Nozzle temperature is reached"
echo "Feeding filament..."
M98 P"0:/macros/Tools/purge.g"
G4 P1000 ; Wait one second
echo "Filament loaded & Purged"
echo "Seting config for PETG"
M302 S200 R200 ; Allow extrusion starting from 120°C and retractions already from 110°C
M566 E3000 ; jerk settings for PETG
M203 E3600 ; set maximum speeds (mm/min)
M201 E500 ; set accelerations (mm/s^2)
; Set Temperatures
G10 P{var.myTool} R180 S240 ; Set Nozzle Active and Standby Temperature
G1 E-10 F1800 ; Retract 10mm of filament at 1800mm/min
M98 P"0:/macros/Tools/unpark.g"
echo "Finushed"
M400 ; Wait for current moves to finish
; PETG_Unload.g
;
; Notes
; Unloads PETG in tool T0
;
var myTool = 0
echo "PETG_Unload.g"
T{var.myTool}
echo "Nozzle is being heated up"
G10 P{var.myTool} S238 ; Set current tool temperature to 238c
M116 P{var.myTool} ; Wait for the temperatures to be reached
echo "Nozzle temperature is reached"
echo "Retracting filament..."
G1 E-50 F300 ; Retract 20mm of filament at 300mm/min
M98 P"0:/macros/Tools/park.g"
G1 E-200 F3000 ; Retract 480mm of filament at 3000mm/min
G10 P{var.myTool} R180 S0
T{-1} P0 ; Turn off extruder Current tool
echo "Filament Unloaded"
M400 ; Wait for current moves to finish
; PLA load.g
;
; Notes
; Loads PLA into the Secound tool T1
;
var myTool = 1
echo "PLA load.g"
echo "Using ",{var.myTool}
M98 P"0:/macros/Tools/park.g"
T{var.myTool} P0
echo "Nozzle is being heated up"
G10 P{var.myTool} S238 ; Set current tool temperature to 238c
M116 P{var.myTool} ; Wait for the temperatures to be reached
echo "Nozzle temperature is reached"
echo "Feeding filament..."
M98 P"0:/macros/Tools/purge.g"
G4 P1000 ; Wait one second
echo "Filament loaded & Purged"
echo "Seting config for PLA"
M302 S200 R200 ; Allow extrusion starting from 120°C and retractions already from 110°C
M566 E3000 ; jerk settings for PETG
M203 E3600 ; set maximum speeds (mm/min)
M201 E500 ; set accelerations (mm/s^2)
; Set Temperatures
G10 P{var.myTool} R180 S228 ; Set Nozzle Active and Standby Temperature
G1 E-10 F1800 ; Retract 10mm of filament at 1800mm/min
M98 P"0:/macros/Tools/unpark.g"
echo "Finushed"
M400 ; Wait for current moves to finish
; PLA_Unload.g
;
; Notes
; Unloads PLA in tool T1
;
var myTool = 1
echo "PLA_Unload.g"
T{var.myTool}
echo "Nozzle is being heated up"
G10 P{var.myTool} S238 ; Set current tool temperature to 238c
M116 P{var.myTool} ; Wait for the temperatures to be reached
echo "Nozzle temperature is reached"
echo "Retracting filament..."
G1 E-50 F300 ; Retract 20mm of filament at 300mm/min
M98 P"0:/macros/Tools/park.g"
G1 E-200 F3000 ; Retract 480mm of filament at 3000mm/min
G10 P{var.myTool} R180 S0
T{-1} P0 ; Turn off extruder Current tool
echo "Filament Unloaded"
M400 ; Wait for current moves to finish