How to emulate DWC extrusion and mixing hot ends
-
This came up in another thread I started but got a bit lost among the other stuff, so I thought it best to start a new topic.
With mixing hot ends (multiple extruders feeding a single hot end) it is possible to extrude filament using any extruder drive or combination of drives, irrespective of the mixing ratio for the tool that is active. That is to say, DWC shows a number of "boxes" starting with "Mix" and then one for each extruder drive. So one can select a tool, an extrusion amount, a feedrate then either "Mix" or any combination of extruders drives. If "Mix" is selected the mixing ratio for the active tool is respected. But if instead of "Mix", one selects an extruder drive, then any extrusion command will use that drive at 100% regardless of how the active tool has been defined. Furthermore, if two or more drives are selected, then those extruders will be used but the feedrate for each one is reduced so that the overall feedrate (at the nozzle) for the combination is equal to the demand.
I'd like to be able to emulate that behaviour in a macro. That is to say, I'd like to be able to extrude 100% of any single filament, irrespective of the mixing ratio which is configured for the active tool. So for example, if have a tool which uses two of the six available filaments (extruders) and a mixing ratio of 0.9:0.1:0.0:0.0:0.0:0.0, I want to purge 100mm of all six filaments sequentially (because unused filaments will have "hydrolysed") and not just those which are configured for that particular tool.
I could create one or more "dummy" tools dedicated to this purpose but that's not very elegant and additional tools will lead to complications in other macros. Also, I already have about a dozen tools defined and don't really want to increase this number even more. Alternatively, I could alter the mixing ratio for one tool but that's something else to keep track of and I'd need to restore the mixing ratio back to the "preconfigured" value at the end of the process. A third alternative would be to create a single tool with equal mixing ratios for all six filaments (extruders) and then purge all six concurrently but there are reasons why I need to do each one separately.
So I'd like to know how DWC handles this situation because it allows me to extrude using any drive(s), regardless of the active tool and it's assigned mixing ratio, and all without creating any new tools or messing with any mixing ratio configurations (or at least not visibly), and I'd like to emulate that behaviour.
-
@deckingman you can extrude any mix you want by providing multiple E values in the G1 command. For example, if the current tool has 6 extruders then G1 E1:1:1:0:0:0 will extrude 1mm from each of the first three extruders and zero from the remaining three. The mix ratio is ignored when you provide one E value per extruder.
-
@dc42 said in How to emulate DWC extrusion and mixing hot ends:
@deckingman you can extrude any mix you want by providing multiple E values in the G1 command. For example, if the current tool has 6 extruders then G1 E1:1:1:0:0 0 will extrude 1mm from each of the first three extruders and zero from the remaining three. The mix ratio is ignored when you provide one E value per extruder.
That's brilliant - and so simple! Might I suggest that it gets put into the documentation somewhere? I've been through the entire gcode dictionary but didn't see that anywhere. This would be a good place to add it I'd have thought https://duet3d.dozuki.com/Wiki/Gcode#Section_G0_G1_Move
-
@deckingman @dc42 I have updated the documentation. Thanks for pointing this out.
-