Toolchange gcode identification
It seems as if the actual deploying and stowing of tools is handled by specific gcode.
Drop off a tool:
P0 S1 L2 D0
It is always P0, regardless of which tool is being dropped.
Pick up a tool:
T4 S1 L0 D0
Where the number after T represents the next tool, from 0-4.
I'm looking unsuccessfully for documentation on the other arguments. S1 is covered here: https://github.com/prusa3d/Prusa-Firmware-Buddy/blob/56a40a0f776bb096468b47f52eb158e0afc84e08/lib/Marlin/Marlin/src/gcode/control/T.cpp
S1 seems to be "Don't move the tool in XY after change", but L and D are not covered.
My guess is L is 'lift'. This would mean the bed moves 2mm for clearance when dropping off a tool and returns back to 0mm after picking up the new one. Observations seem to match that.
D I have no idea.
I will do some trial and error but if anyone already knows, please share.
RE: Toolchange gcode identification
After testing, i still think L is related to ift, but my results were inconsistent.
I did find the undocumented M217 Z in the start gcode, which sets the z hop for tool changes. By tweaking this at the start of the print, I can lower the Z hop and cut down dramatically on the vertical bits of filament that later dislodge and ruin multicolour printing.
Hopefully the documentation is improved soon to make this experimentation a bit easier.
RE:
Good work. Appreciate you sharing this information. I don't have the time to investigate much so glad others can. As you say, it would be very helpful if Prusa were able to detail more of this.
Edit to add: So you think the M217 will allow a reduction in z hop when a tool finishes on a layer and wants to move to dock?
RE: Toolchange gcode identification
That is my understanding based on the comment in the start gcode. I overrode the default 2mm to 0.2mm and that worked, but then I tried setting it to zero and it seemed to ignore this and went back to 2mm. Very frustrating.
RE: Toolchange gcode identification
I am wondering if your motiviation for this has been the same issue I see when toolchanging on the wipe tower.
My issue is that when toolchange occurs it leaves a "blop" of filament where the tool does Z-lift before changing tool. When the next extruder continues it will start in this blop making it a little bigger and results in a risk of the nozzle ramming into this blop causing the wipe tower to tilt. I have been searching all over but have not been able to find any forum about this issue and I guess your thread comes closer.
I thought reducing the Z-lift under toolchange would reduce the size of this blop but I have just tested it with no success. This leaves me to think that for some reason there is "extra extruding" just at it does Z-lift. Have you experienced this issue and found any good solution for this?