Loading a filament profile

  • Like most people I use different filaments and have been a bit lazy and not used the filament function to its full potential.
    This morning I realised I was over extruding, same brand ABS+ just a different colour.
    Calculated my E-Steps, 413 as opposed to 425.
    Created a new filament 'Black ABS+', edited the config.g and added m92 E413, saved.
    M92 in console, E was 425
    In DWC clicked the filament, changed to Black ABS+, M92 in console E was 413, Result!
    Changed back to PETG, M92 = E425

    Lets do this using M701. FAIL!
    My command - m701 s"Black ABS+" did not error BUT my E steps were still 425 as opposed to 413. DWC reported the correct filament.

    So the question is, why when I manually change filament in DWC it loads the customised config.g but when I load it from a command line it ignores my custom config.g.
    Have I missed something or is it something else?


  • Moderator

    Firmware and DWC version?

  • @Phaedrux Sorry, should of known better!
    FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.1.1 ELECTRONICS: Duet Ethernet 1.02 or later + DueX5 FIRMWARE_DATE: 2020-05-19b2

    Duet Web Control 3.1.1

  • Moderator

    Not sure, I'll move this to the DWC forum for @chrishamm to see. I haven't tried the filament function lately.

  • @chrishamm Have you had a chance to look at this issue, please?


  • I think I have found another issue. @chrishamm
    Yesterday when I had finished printing, I unloaded the filament using DWC.
    I did this as I remembered last year when I was new to Duet boards, it would not print as there was no filament loaded, according to DWC. So I was guided how to create and load a filament.
    So this afternoon, I sent a new print to my Railcore and it started printing. Not long after I thought, 'Is DWC reporting it has filament?'
    No, its asking 'Load Filament'

    As you can see it is printing with no filament loaded with the incorrect M92 E steps as it does not load the custom config.g relevant to the filament.

    If you need more info, please do not hesitate to ask.


  • @dc42 and @chrishamm Without being rude or pushy, I have not had an update to this issue.
    I include DC42 just incase it is a firmware issue also.

    Please could you take a minute to respond

    Kind Regards,


  • Just a question: You lowered your E-Steps because of overextrusion? Why not just lower the flowrate for that filament?

  • @Lanovar When I profile a new filament I calculate the E-Steps first, then calibrate the flowrate within the Slicer.
    They are 2 totally separate processes in calibrating a filament.
    Yes I would of thought that E Steps would be fixed and would not need to be changed, but they do.

    Regards, Paul.

  • @dc42 @chrishamm Please could someone respond to the issue I am experiencing please.



  • Moderator

    @PaulHew Just tested this out, and had the same issue as you. However, I then put an M118 message in a filament config.g, and changed filament using DWC. It showed:

    M701 S"PLA" M703
    PLA loaded

    Ah! Looked up M703, and...

    After assigning a filament to a tool, this command may be used to run /filaments/<filament name>/config.g to set parameters like temperatures, extrusion factor, retract distance.

    So, basically, you need to send M701 S"[filament name]" to load the filament, then M703 to actually run the filament config.g. In the gcode dictionary for M701 it doesn't explicitly say it runs filament config.g, just load.g. You also need to send M702 to unload any loaded filament before running M701 S"[filament name]". So I think it's working as expected, and it's just DWC does all this for you.

    It also sort-of documented on the filaments page: https://duet3d.dozuki.com/Wiki/Filaments#Section_G_Codes

    Hope that helps!


  • Ian,

    Thanks for this, I will try it out.
    I was following the GCode bible and using my findings in DWC, did not think about the Wiki

    The only part that needs fixing now is why it can print with no filament loaded.
    As mentioned before, I had this issue and I had to load filament in DWC so it would print otherwise it was giving me an error due to no filament being loaded, even though physically it was.

    Definitely want this back, so the correct profile is loaded for the filament physically loaded.
    GCode macros in Prusa / SuperSlicer are streamlining my work flow.

    Thanks and Regards,


  • Moderator

    @PaulHew said in Loading a filament profile:

    As mentioned before, I had this issue and I had to load filament in DWC so it would print otherwise it was giving me an error due to no filament being loaded, even though physically it was.

    Are you using a filament sensor? The DWC filament load function shouldn't prevent you from printing at all.

  • @Phaedrux Hi, no not using a filament sensor.
    Just remember it clearly someone asking if I had loaded a filament profile as it was erroring.
    Just had a look for the post I made, I think it had a different title.

    At least I have a partial solution to my problem, so I am happier!

    As someone mentioned before, You should be able to set and forget your E-Steps, they should not change and I agree.
    But something is as I have 5 different types of ABS+ filament, 3 like one E step setting and the other 2 need their own.

    Oh well, I have a solution, but pausing a print because no filament is reported in DWC, IMO would be good, especially if you are swapping filaments regularly.

    Kind Regards,


  • Moderator

    Wll esteps and flow rate are modifying the same thing, how much rotation is needed to move the desired amount of plastic, so where ever the modification happens is less relevant. Changing the estep is the less preferred way because it's higher up in the chain. If you treat estep as fixed based on ideal calculation, then you can modify it after either in the slicer or with M221. That way it doesn't have to change the fundamental motor config. That said either way should work, but you can see why changing higher in the chain could be more problematic.

Log in to reply