Gnah.
Tool change code in Prusa (2.6.0a6):
Code:
;Tool change code
TEST [previous_extruder]
TEST [next_extruder]
T[previous_extruder]
M104 S{(idle_temperature[previous_extruder])} ; set previous extruder to standby temp
;G1 E-1 ; retract before returing to standyby position
T[next_extruder] ; swap tool and set temps
M104 S[temperature]
M109 S[temperature]
G1 E-1 ; retract a bit to stop blob
würde ansich funktionieren.
Nur beim allerersten Tool change is "previous_extruder" -1 und das mag er bei dem Arrayzugriff nicht.
Alle weiteren Toolchanges sind dann korrekt.
In Prusa 2.5.2 gibt die Variable "idle_temperature" noch gar nicht. Da gibts nur nen generellen Offset für den inaktiven Extruder, z.B. -25°. Und das baut Prusa dann automatisch ein. Als "Filament end code"... den man aber auch nicht manuell setzen kann.
Das ist halt doof, weil bei meinem aktuellen Modell Extruder 1 98% jedes Layers druckt. Deswegen würde ich Extruder 2 durchaus gerne eine niedrigere Idle-Temperatur geben, aber Extruder 1 soll durchheizen, weil Extruder 2 druckt meist nur 5-10s pro Layer. In der Zeit kühlt Extruder 1 dann trotzdem um 10-15° ab und braucht dann wieder 15s um wieder auf Drucktemperatur zu kommen.
Also muss ich erstmal wohl doch beide durchheizen lassen. Vermutlich sollte ich die allgemeine Idle-Temperatur sogar besser 1-2° höher setzen, als die Drucktemperatur... weil wenn der Sensor gerade "nur" 209° misst und die Drucktemperatur 210° soll, wartet der halt bei jedem Toolwechsel wirklich, bis der Temperatursensor tatsächlich auf den Strich 210° ausgibt. Und das eine Grad kann dann schonmal 10-15s dauern bis der Sensor das auch wirklich misst.
Bei 400 Layern und jedesmal 10s delay, sind das halt alleine schon über eine Stunde mehr Druckzeit.
Hab nebenbei auch schon bemerkt, das man die Druckzeitberechnung bei IDEX-Druck in die Tonne treten kann. Der Slicer kann ja nicht wissen, wie lange jeder Toolwechsel exakt dauert, weil ja nachgeheizt wird. Der letzte halbwegs erfolgreiche Druck hätte laut Prusa 4,5h dauern sollen. Tatsächliche Druckzeit war etwas um die 7h...
Ach und das Problem warum das PLA heute nicht gehaftet hat, lag wohl doch nicht (nur) an der Temperatur im Keller, sondern mir ist aufgefallen, das dieses Filament durch die Führung vom Filamentsensor deutlich mehr Widerstand hat. Als ich dann im Abstellraum mal zugeguckt habe, ist mir aufgefallen, das er immer unterextrudiert, wenn er Filament durch den Sensor nachziehen muss. Zieht man händisch etwas nach, ist die Unterextrusion sofort wieder weg, bis er halt das "Spielfilament" wieder aufgebraucht hat und wieder nachziehen muss.
Für die nächsten Versuche werden die Sensoren mal umgangen.