Extrusion factor in DWC overrides slicer flow rate %



  • Re: Duet Wifi & Extrusion Factor?

    When I set my flow rates in the slicer to 80% and send the Gcode to DWC then sometimes the DWC extrusion factor slider adjusts automatically to 80 and sometimes it stays at 100. And printing results are different for both. It seems like the DWC is reading the extrusion factors from the gcode...only sometimes it doesn't.

    I'm not sure what is causing this but how DWC changes the extrusion factor after every gcode upload seems to be random with each print.

    Is there a way to disable DWC extrusion factor control to just use the slicer ones?


  • Moderator

    What exactly are you setting to 80% and how?



  • My slicer is Ideamaker and I run a double wall test print to check my flow rate. I have a hollow cube with walls measuring 0.80mm and printing with a 0.4mm nozzle gives me exactly double walls.

    With the flow rate set to default 100%, after printing my wall thickness is about 1mm. I then use the formula Desired wall thickness (0.80mm) / actual wall thickness (1mm) x current flow rate(100%). This gives me a new flow rate of ~80%. This I enter into my slicing software as First layer flowrate, infill flowrate, bottom solid fill flowrate, top solid fill flowrate and all the other flowrates that I can find. It even has an option to select "Override primary filament flowrate" which I set to ~80% as well.

    Now, this is basically the same thing as the Extrusion Factor in DWC. Sometimes when I'm lucky the DWC extrusion factor kicks into the correct value after uploading the Gcode but sometimes it doesn't and as I tested the wall thickness for each situation, I got different results. So now I'm setting the extrusion factor of the DWC to 80, but I'd rather have the slicer dictate my print settings because it seems like the DWC is overriding (sometimes) the values I have set in my slicer.



  • As you have figured out, you have is significant over extrusion. The correct thing to do is fix your configuration instead of trying to apply a correction to a bad setup.
    You need to calibrate your extruder.
    Flow rate is used to compensate for things like differences of diameter of different filament or maybe fine control of your base extrusion .... setting 80% is simply wrong.



  • @Mito-Kafander Not sure whether you’re on the right track. From my point of view, you repair something in the slicer which origins from questionable settings in the config.g. So, as @jens55 points out, you really should calibrate your extrusion rate. Maybe the steps/mm of your extruder are 20% off?


  • Moderator


  • Moderator

    @Mito-Kafander said in Extrusion factor in DWC overrides slicer flow rate %:

    Now, this is basically the same thing as the Extrusion Factor in DWC. Sometimes when I'm lucky the DWC extrusion factor kicks into the correct value after uploading the Gcode but sometimes it doesn't and as I tested the wall thickness for each situation, I got different results.

    The dwc extrusion factor is in addition to whatever factor the slicer is using. So if you slice with 80% then 100% on the dwc is actually 80%. They aren’t related in any other way then that.



  • @Phaedrux
    Sounds good, but it doesn't work like that for me. I have printed several test cubes and adjusted my flowrates accordingly. Every time I upload a new gcode file to my printer I keep an eye out if the extrusion factor in DWC changes with it or not. Every time the DWC extrusion factor stays at 100(even if I have it set to 80 or whatever number in the slicer) the part comes out as if the flowrate is 100.

    I even printed multiple test cubes all the time lowering my flowrate but got the same end result each time until the extrusion factor in DWC somehow recognised that it needs to get its butt off the couch and move according to what is specified in the gcode.



  • This post is deleted!


  • @Phaedrux said in Extrusion factor in DWC overrides slicer flow rate %:

    Try this method: https://duet3d.dozuki.com/Guide/Ender+3+Pro+and+Duet+Maestro+Guide+Part+4:+Calibration/40#s165

    This is another weird thing I discovered. The extruded amount varies depending on the extrusion speed.

    So, for example, 5mm/s vs 1mm/s for a length of 100mm, in the end, extrude about 10mm differently.
    So I calibrated my e-steps with 1mm/s as that seems to be closest to the speeds the printer actually uses. And that was way before I discovered the DWC extrusion factor thing.


  • Moderator

    But the slicer percentage will never change the dwc slider. That's just not how it works. The slicer percentage changes the values used in the extrusion moves of the gcode itself. The DWC slider adjustment happens after the fact.

    80% in the slicer and 100% in DWC is still 80%.

    80% in the slicer and 110% in DWC is now 88%



  • @jens55 said in Extrusion factor in DWC overrides slicer flow rate %:

    As you have figured out, you have is significant over extrusion. The correct thing to do is fix your configuration instead of trying to apply a correction to a bad setup.
    You need to calibrate your extruder.
    Flow rate is used to compensate for things like differences of the diameter of different filament or maybe fine control of your base extrusion .... setting 80% is simply wrong.

    My extruder is calibrated to the best of my knowledge. Extruded 100mm of filament and did the whole math behind it.
    Now the 80.2% is what I calculated by doing "The wall needs to be 0.8mm" divided by "what I measured the wall to be" and multiplied by "what my flow rate is" and that gives me the new accurate flowrate that produces 0.8mm wall thickness if 0.8mm is what I set out to print. If DWC doesn't sabotage the flow rate with its inability to read gcode then all my prints turn out perfect. And when DWC decides to override my set flow rate than all the parts that need to fit together come out about 0.2mm thicker.

    Maybe I'm doing this wrong. I'm hoping for some guidance.



  • @Phaedrux said in Extrusion factor in DWC overrides slicer flow rate %:

    But the slicer percentage will never change the DWC slider. That's just not how it works. The slicer percentage changes the values used in the extrusion moves of the gcode itself. The DWC slider adjustment happens after the fact.

    80% in the slicer and 100% in DWC is still 80%.

    80% in the slicer and 110% in DWC is now 88%

    Seems to me that something in my DWC defies logic then.

    I reset the DWC slider(goes to default 100) then upload the gcode(with 80%) and after it is finished uploading, confirmed and jumps to the status page the DWC slider moves to a rounded value that I had set in the slicer. Slicer has 80.2% so the DWC slider moves to 80... And sometimes it doesn't. It can be the same gcode and uploaded several times over and the extrusion factor slider just does its thing. Sometimes goes to 80 and sometimes stays at 100. And the results are reflected on what the DWC slider value is at the time of the printing.

    I can even set my flowrate to 0% and if the DWC slider doesn't move with it then it'll still print like it's 100%



  • @Mito-Kafander said in Extrusion factor in DWC overrides slicer flow rate %:

    So, for example, 5mm/s vs 1mm/s for a length of 100mm, in the end, extrude about 10mm differently.

    That’s quite a difference. I think it’s time to tell us what extruder you use, whether it’s a bowden oder direct drive, power of the heater, the diameter of your filament (1.75 or 2.85), and a copy of your config.g on top. Forget the #*@% DWC slider for a moment, first thing to achieve is a proper calibration of the extruder.



  • Ok. I set my flowrate to 10% and started printing. The DWC stayed at 100 but it barely extruded anything. So I pumped the DWC up and it started flowing.

    So I'm probably doing something wrong here and previous suggestions were correct in terms of how the DWC and flowrate in the slicer are linked(or not linked). It still changes the slider automatically sometimes but this time when I set the slicer to 10% it seemed to really be 10% even tho the DWC slider stayed at 100.
    But I'm still having problems with the calibration cubes coming out thinner and fatter randomly. And now I'm totally lost.


  • Moderator

    the only thing that changes the firmware extrusion factor is M221, which the DWC slider uses.

    https://duet3d.dozuki.com/Wiki/Gcode#Section_M221_Set_extrude_factor_override_percentage

    The slicer extrusion values are baked into the gcode itself

    G1 X150 Y120 E0.12912

    The E values are what the slicer outputs based on your filament diameter, the extrusion multiplier, and it's internal calculation on what the extruded wet noodle behaves like.

    The firmware then scales that E value with the DWC slider or M221 directly. That's it.

    There's a couple of red flag with your extruder calibration that would indicate something is wrong there and the DWC slider is just a red herring.

    First is that 80% extrusion factor is very low. If the steps per mm for the extruder is dialed in, the slicer extrusion multiplier should be very close to 1.

    The other is the reported large difference between 1mm/s and 5mm/s extrusion speeds. There should be some, but 10mm would indicate maybe an issue with the extruder teeth slipping from the pinch roller being loose, or maybe a temperature being much lower than the display would indicate.

    Calibrating at 1mm/s is normal to reduce the impact speed has, but it shouldn't have that much of an impact.

    I would suggest you provide us with some more information on your setup, config.g, extruder type, etc. And then go through that link I posted above for calibrating the extruder. It goes through a few steps that I think you're missing and uses a couple different techniques to fine tune the extrusion multiplier for the slicer.

    https://duet3d.dozuki.com/Guide/Ender+3+Pro+and+Duet+Maestro+Guide+Part+4:+Calibration/40#s165


  • administrators

    @Mito-Kafander said in Extrusion factor in DWC overrides slicer flow rate %:

    When I set my flow rates in the slicer to 80% and send the Gcode to DWC then sometimes the DWC extrusion factor slider adjusts automatically to 80 and sometimes it stays at 100. And printing results are different for both. It seems like the DWC is reading the extrusion factors from the gcode...only sometimes it doesn't.

    Normally, slicers apply the extrusion factor you ask for by adjusting the extrusion amounts that they request in the E parameters of G1 commands. In which case, RRF and DWC won't know about that extrusion factor. However, it's conceivable that a slicer could adjust it by inserting M221 commands into the GCode.

    Do your GCode files have any M221 commands in them?



  • @Mito-Kafander said in Extrusion factor in DWC overrides slicer flow rate %:

    Ok. I set my flowrate to 10% and started printing. The DWC stayed at 100 but it barely extruded anything. So I pumped the DWC up and it started flowing.

    So I'm probably doing something wrong here and previous suggestions were correct in terms of how the DWC and flowrate in the slicer are linked(or not linked). It still changes the slider automatically sometimes but this time when I set the slicer to 10% it seemed to really be 10% even tho the DWC slider stayed at 100.
    But I'm still having problems with the calibration cubes coming out thinner and fatter randomly. And now I'm totally lost.

    I stand corrected.

    I followed the calibration guide that you provided and this time I used the gcode to extrude filament instead the DWC button. Turns out it extruded way more filament then I had previously calibrated it to extrude. After several measurements, my E steps went from 111.1 to 93.4. After this, I calibrated my flowrate and this now stands at 91.95%.

    It seems to me that the outcome is now consistent and my problem solved for now. Or should I calibrate further?

    I also switched my slicer of choice from Ideamaker to Cura 4.5.

    Thank you, everyone. Altho the solution was simple I would have never thought about doing an extrusion calibration again since I thought it was already dialled in.

    Since extrusion speeds are a factor when calibrating the extruder then maybe DWC could have a "Calibration" tab in some future updates. This could include the correct extrusion speed at which we should check the extruded filament length.

    All the best!


  • Moderator

    In DWC you can right click on the feed rate buttons for jogging and you'll get a popup to specify a custom speed for that button. That way you can get more fine grained speed control over the extruder. The default speeds are there to give a useful range for things as small is calibrating to loading a long bowden tube quickly.

    Glad you got it sorted out though, it was clear something was off with the extruder calibration.


  • administrators

    @Mito-Kafander said in Extrusion factor in DWC overrides slicer flow rate %:

    Since extrusion speeds are a factor when calibrating the extruder...

    That's why RRF support nonlinear extrusion.


Log in to reply