Better filament Load and Unload handling
-
I'm using ERCF Filament Changer and configured it to utilize filament change macros instead of tool changing. Most of the stuff is handled by the RRF (I try to give control to the Duet rather than the Slicer)
My problem is that when I manually load another filament using DWC, I have to wait for the unload.g to run first before I can select another filament.
I would like this to be changed, so when I manually change filament the popup window appears first, then I select the filament.
Then it checks if I want to load the same filament. Keep in mind there is a possibility of having the same filament in multiple slots in the ERCF in case of runout, so if it just gives a "Filament already loaded" message runout switching might fail.
Just after selecting filament the unload.g macro would run.
This also might need the previous filament stored somewhere so the correct unload.g is used (not the one the next filament has)
To be honest it would be nice to have a graphical interface for multi-material units, where filaments can be assigned to specific slots and their usage could be monitored and saved in a file.
-
@Hernicz Sounds like a similar problem to this thread: https://forum.duet3d.com/topic/36962/filament-change-logic-is-not-making-sense. See the responses there.
Ian
-
@droftarts Not really.
My issue is that the unload.g macro runs instantly when I press "Change Filament". There's no way to cancel and I have to wait until unload.g finishes before I'm able to select another filament. I'm also unable to put any script into unload.g, because as soon as unload.g finishes running I have no filament assigned.
The correct sequence would be:
- I click "Change Filament"
- Popup appears
- I click on a filament / ability to cancel
- (Here can be a checkpoint if I try to load the filament already loaded, but also take into accoult that there might be duplicates in the Multi-Material unit for runuot purposes, so there's a scenario when I want to do that)
- unload.g runs (current/old filament)
- load.g runs (next filament)
- config.g (next filament)
-
@Hernicz Is there any reason why you can't have an empty unload.g file and then perform both the unload and load operations from the load macro?
-
@gloomyandy Because as soon the empty unload.g runs there will be no filament assigned to the tool.
If I cancel filament selection after that I'm left with no filament.
How would I unload the filament if I can't use its unload.g?
Would filament specific configurations of the previous filament still be applied when unloaded?Also I use unload.g for ERCF and there it works well.
This issue only applies to DWC
Imagine if you would want to eat something you would need to unload the entire fridge before you can chose anything, you cannot just open the door and see what you have or just close the fridge and don't take out anything at all if you change your mind. You need to unload it all if you interact with it and only then you can make decision about the next step.