Ok I think I found what my problem is with dual printing tool change. I didn't do much yet but here is what I found during my very first tests. I used my scripts and S3D profile, the tool change script was only change so far that it is a bit more fail safe, nothing of the logic changed. My prints always start with T0 then a change top T1 is made. The tool change retraction and extra restart distance are the values from Greg's profile. So what I found is: after switching to T1 on the very first layer T1 is not extruding for several millimeters I have over extrusion after switching tools And now I think I found out why that happens. I closely examined the gcode produced. When starting a print the start script runs. That's ok. Right after the start script S3D inserts a retraction for the current tool with the set retraction distance: Code: G1 E-1.5000 F4200 Ok. Then come the tool change script where nothing happens other than priming the new extruder because an old extruder does not exists yet. That's ok too because I did the purge script for each extruder at the end of the last rpint so this has to be reversed. After priming still in the tool change script I retract for the normal retraction distance: Code: G1 E-1.5 F3000 That's part of Greg's development. I think this is there to prevent dropping/oozing while moving to continue the print. Fine so far. Next is that the tool change script ends and S3D step in again moving to position to continue and then reversing the retraction because S3D thinks it has done one. In reality the retraction did not come from S3D code but from the tool change code. If we get now to the point when we switch tool on the first layers rises a problem: S3D retracts the amount set in tool change retraction. That's ok. Then the tool change script kicks in, purges the old extruder and primes the new one. At the end of the prime the script it retracts to prevent oozing as earlier told. But S3D does not revert that retraction when staring to print because what S3D thinks that tool has not been retracted yet so theres no need to revert it! Now to my second problem, the over extrusion. Somehow this is related. S3D retracts the tool change retract when changing tools so if it gets back to that tool it reverse that amount + the extra restart distance. In my case this is 2 + 0.5. But in the tool change script I only retract 1.5mm. So I have +1mm extra distance which results in that overextrusion. So how to fix? To fix the second problem I just have to set the tool change retraction settings to the same as the normal retraction and the script prime part has to cover that too. Then that should be ok. The steps S3D does are as follows: layer on T0 ends T0 is retracted by tool change retraction values T0 is purged by our script ... (printing with T1) we get back to T0 T0 is primed by our script T0 is retracted by our script T0 retraction is reversed by tool change retraction values So far so good. But I have no idea how to fix the first problem. To solve this I think there has to be some changes in S3D. I would need the ability to check in the tool change script if I am on layer 1 or not. Then I would be able to tell the script to not retract on layer 1 which will result in some oozing while moving over the bed but I would be ok with that. Or S3D would do the same as when starting with tool 0. There it retracts after the start script then the tool change script is run and then the layer startes it reverses that retraction. This is not done for the second tool on layer 1 which is a bug IMHO. It should also retract the second tool when switching to it the very first time, then run the tool change script and then unretract... What do you think?