Adding support for the enraged rabbit carrot feeder (ERCF)
-
@pfn said in Adding support for the enraged rabbit carrot feeder (ERCF):
@danzaywer said in Adding support for the enraged rabbit carrot feeder (ERCF):
why would you move purge line logic into filament management? I think it continues to be managed by the slicer, I don't use it, I use a skirt line for filament priming but I can verify. The purge tower works for me without problems
because purge has to come after heating, and that depends on the filament being set, which comes after start gcode. and single material prints don't have any purge behavior -- that's one thing I need to figure out how to detect from the print job
Yes, is all correct and is all working well to me!
-
@pfn said in Adding support for the enraged rabbit carrot feeder (ERCF):
because purge has to come after heating
In start gcode I put M703 after Tx then temperature macro
-
@danzaywer said in Adding support for the enraged rabbit carrot feeder (ERCF):
In start gcode I put M703 after Tx then temperature macro
How does the start gcode know which filament is loaded? M703 can only heat with the correct filament loaded (and I actually have M703 in tpost already).
I suppose this isn't an issue outside of the first job with a new tool if the filaments in the tool don't change, but I'm still changing filaments frequently per tool (pla to petg and abs), and that state that rrf keeps is going to be frequently out of sync
-
@pfn first of all https://duet3d.dozuki.com/Wiki/Slicing_recommendations
In prusaslicer or superslicer start gcode put T[current_extruder]
In toolchange gcode put T[next_extruder]
At job end i leave filament in hotend.It is also stored in a file parsed in config.g by tpostx.g macro. When new job start if T[next_extruder] is the extruder already loaded then reprap firmware do nothing, otherwise toolchange macros begins.I also store tool T-1 during unload (tfreex.g) so if powerfailure happens with no tool selected firmware know it at restart.
You have to put M703 into tpostx.g and after T[next_extruder] in start gcode otherwise if tool is already loaded RepRapFirmware not run toolchange macro and m703 inside it is not applied, of course it depend to what m703 do, in my case it Set global variables related to temps of tool selected. -
@danzaywer said in Adding support for the enraged rabbit carrot feeder (ERCF):
In prisaslicer or superslicer start gcode put T[current_extruder]
I'd meant the filament loaded into a particular tool would be out of sync, not the tool number, that aspect is already handled. The problem is that any T0 T1, etc don't know what filament is loaded. There's no way to know it from start gcode. RRF can guess based on previous state (filament M701 gcode during filament changes from the slicer) but it cannot know if filament was swapped out of the tool.
-
@pfn when you change filament in tool you simply click on tool name in DWC interface and select "change filament". At this point firmware know what filament is present into tool until you swap it with a new one, also after reboot... DWC do all the magic... I fear my English is not so good to explain but trust me : Duet do it!
-
@pfn whit my configuration I can slice a file to print with T2 in with I have petg, after print I change T2 filament to pla and reprint same file with pla temps , only issue I have is fan speed, I'm working on it but , I can set max speed in m703 but don't know how tell to firmware to handle bridging situation. My intent is to have gcode independent from filament loaded in tool.
-
@danzaywer said in Adding support for the enraged rabbit carrot feeder (ERCF):
when you change filament in tool you simply click on tool name in DWC interface and select "change filament".
I understand this, but I have always forgotten to do this, I heavily rely on the slicer to set filament for me. Why set it in multiple places, it's not an optimal workflow
-
@pfn I change slicer often, not printer, so I prefer that is the printer to handle things. Another reason is that if I have a file sliced I can print it in any material without reslice it. I name sliced files with tools involved in it.
-
@pfn
Other reason to let the printer manage temps:- slicers put temps command after Tx command so is not possible to manage temps prior to return to print position after change
- prusaslicer/superslicer have bed temps for firstlayer and other layers but put into gcode the instruction relative to actual selected material so if you have, as exemple, ABS and PETG print with ABS fist layer:110, ABS other:90, PETG first layer: 80, PETG other:70, first object of list in ABS (the one with high temps) then slicer set first layer temp to 110, change to second tool , set second layer temp to 70 and ABS detaches...
-
Hi, is there a working solution for ERCF? The GitHub at the start of this thread seems abandoned
It will be great to stick to RRF & DWC, but if it's not supported in future it might be a reason to switch to klipper