Bukobot 3D Printer Forum
General Category => 3D Printing Tips & Slicing Settings - Perfecting your objects => Topic started by: benmlee on February 12, 2014, 06:09:39 AM
Started experimenting with dual extruders. The default tool change g-code took too long, and didn't work well as mentioned before. Taking out the tool change g-code was better, but the resting nozzle is oozing, and didn't come back on line well primed.
So far what seem to work well is to build two square objects near the origin of the plate. This primes the resting nozzle before coming back on line, and wipes the ooze off before going to the actual part.
In the Slic3r Printer Setting-> Custom G-code -> Tool change G-code ->delete what is in there and paste the following g-code:
G92 E0 ;Reset current extruder count
G1 E-3 F1260 ;Retract current extruder
G1 E0 ;Set current extruder to zero
T[next_extruder] ;Select next extruder
G92 E0 ;Set the next extruder count to zero
G1 0 Y 0 F36000 ;Go to home position
G1 E1.50000 F1260.000 ;Extrude 1.5mm to prime head
G1 E2 F100 ;Extrude more slowly to finish priming
G1 X54.218 Y18.718 F36000.000 ;Go to start of square
G92 E.98400 ;Set extruder to .98mm
G1 X43.782 Y8.660 E1.06799 F600.000
G1 X50.218 Y8.660 E1.14891
G1 X50.218 Y15.340 E1.23290
G1 X43.852 Y15.340 E1.31294
G1 X44.250 Y14.872 F36000.000
G1 X44.250 Y9.128 E1.38516 F600.000
G1 X49.750 Y9.128 E1.45432
G1 X49.750 Y14.872 E1.52654
G1 X44.320 Y14.872 E1.59482
G1 X43.782 Y14.872 F36000.000
G1 X43.218 Y8.096 F36000.000
G1 X50.782 Y8.096 E1.68994 F600.000
G1 X50.782 Y15.904 E1.78812
G1 X43.218 Y15.904 E1.88324
G1 X43.218 Y8.166 E1.98053
G1 X42.750 Y7.628 F36000.000
G1 X51.250 Y7.628 E2.08742 F600.000
G1 X51.250 Y16.372 E2.19736
G1 X42.750 Y16.372 E2.30425
G1 X42.750 Y7.698 E2.41331
G92 E0 ;Set extruder count to zero
Yeah, building a wiper this way is really what we want to be doing, but the code to do it has always been so machine- and filament-specific that it didn't make a lot of sense to put it in custom gcode I've been working on some Marlin features that will make the firmware smart enough to be able to do this type of thing more easily (E moves in units of volume instead of length and firmware-controlled retraction/recovery).
I've also been meaning to try building wipers to attach to the X ends so that you can wipe each nozzle by moving to that end of the axis (left extruder would wipe at extreme left, right would wipe at extreme right).
Your idea of wiping at the end of the X axis end up being a more practical solution. I wanted to use water soluble PVA for support material. But it is soft, and does not stick well to the base. Makes a huge mess when the wiping tower topples over.
Here is the revised design. .5mm plastic sheet wrapped 3 times with kapton and a small hole drilled in the middle. During tool change, retiring nozzle is retracted couple of mm. New nozzle is positioned over the small hole, and primed for a few mm length. Small hole keeps the filament from sticking to the nozzle as is priming, and creating a big mess again. Once priming is done, nozzle moves away from the hole, and the length of filament is broken off the nozzle. Now the nozzle is ready to build the part.
Had to put the wiping of both nozzle on the right side. Can't do right nozzle wipe on right and left nozzle wipe on left, because that would require an "if" statement in the tool change G-code. Searched all over the net, and can't find if "if" statement that is supported in the tool change G-code. Only placeholder variable was supported, and that was not enough.
Result was pretty good. No blobs or ooze. PVA itself was tricky to use. That is a different topic. Had to build a solid layer of PVA below the ABS plastic for the ABS to stick on top of the PVA. Once that is done, test results looks great. Now on to building some real parts...
Put all the files here for anyone else who wants to experiment:
Thanks for the files Benmlee I'm trying them out now.