Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    M203 and default *minimum* feed speed

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    m203 volumetric flow rate minimum feed rate m203 i parameter
    2
    8
    881
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • PeterH1500undefined
      PeterH1500
      last edited by

      I've recently been struggling to determine the maximum volumetric flow capability of my hotend using the spreadsheet produced by Stefan of CNC Kitchen. Firstly, Stefan's spreadsheet doesn't work with delta printers (or any other type that has X=0, Y=0 in the centre of the build plate). Secondly, having written my own spreadsheet based on Stefan's, my next problem has been that all the printed "nuggets" were the same size and almost half the weight that they should be with a range of volumetric flows from 6mm³/s to 20mm³/s. Visually, the extruder was spinning at the same rate for each setting.

      Looking further, I discovered that, for RRF2.03 and later (I'm on 3.4.0), M203 used to set maximum feed rates, has a default minimum feed rate of 30mm/min. This can be changed with the I parameter (that's capital i) once one knows of its existence (it's clearly shown in the Duet3D GCode dictionary!) At the default feed rate, with Stefan's method, all volumetric flows will be constrained to a minimum of about 24mm³/s, which is optimistic for a V5/V6 hotend (hence my 50% extrusions)! This will apply to all printer types running RRF2.03 and later, not just deltas.

      I've now set M203 I6 and the gcode runs my extruder at much more sensible speeds, producing printed nuggets with weights that are where I would expect them to be (and I now know how bad my hotend is!)

      Hopefully, this note will help others.

      1 Reply Last reply Reply Quote 1
      • Phaedruxundefined
        Phaedrux Moderator
        last edited by

        30mm/min is quite slow. I'm surprised there is such an interaction. What commands does his spreadsheet as you to send?

        Z-Bot CoreXY Build | Thingiverse Profile

        PeterH1500undefined 1 Reply Last reply Reply Quote 0
        • PeterH1500undefined
          PeterH1500 @Phaedrux
          last edited by

          @phaedrux
          Thanks for responding.
          I agree, it's slow, but Stefan's gcode generating spreadsheet, to extrude a nugget at 4mm³/s, generates the following segment:

          ;####### 4mm3/s
          M117 240°C // 4mm3/s
          G0 X5 Y5 Z15.5 F6000
          G4 S30; Stabalize
          G0 Z0.3 ; Drop down
          G1 X30 E20 F300 ;Prime
          G1 E-3.5 F7500; Retract
          G0 X45 F6000 ; Wipe
          G0 Z0.5 ; Lift
          G1 E3.5 F7500 ; De-Retract
          G1 Z10.5 E200 F4.99 ; Extrude
          G1 E-3.5 F7500 ; Retract
          G0 Z15.5; Lift
          G0 X5 Y5 F6000
          G92 E0 ; Reset Extruder

          It only seems to be a problem for RRF2.03 and later, and not for Marlin, which is what I think he's using.

          Phaedruxundefined 1 Reply Last reply Reply Quote 0
          • Phaedruxundefined
            Phaedrux Moderator @PeterH1500
            last edited by Phaedrux

            @peterh1500 said in M203 and default *minimum* feed speed:

            G1 Z10.5 E200 F4.99 ; Extrude

            Does Marlin use mm/s or mm/min for the feed rate?

            At 5mm/min it would take 40 minutes to complete that move to extrude 200mm. Is this really what is intended? I think you'd likely cook the filament at that speed.

            Z-Bot CoreXY Build | Thingiverse Profile

            PeterH1500undefined 1 Reply Last reply Reply Quote 1
            • PeterH1500undefined
              PeterH1500 @Phaedrux
              last edited by

              @phaedrux
              Now I'm puzzled...
              According to their respective gcode dictionaries, both Marlin & RRF use feed values in mm/min for G1 commands.
              In the extrude command generated by Stefan's spreadsheet, there is no specified X or Y move only a Z move from 0.5mm to 10.5mm. My understanding is that the feed rate applies to this Z move and not to the extruder move. The 200mm extrusion takes place over the time taken for the 10mm Z move, which would take 2 minutes at 5mm/min. Extruding the 481mm³ of filament (200mm of 1.75mm diameter) over 2 minutes would therefore take place at 4mm³/s.

              I've now uncovered another problem because I'm now trying to calibrate for A and B in M592 for non-linear extrusion. In RRF, non-linear extrusion seems to be only applied in conjunction with an extruding X or Y move, so I now can't measure what effect it has with Stefan's method, which only has a Z move during extrusion! The forum has a method with a gcode attributed to DC42, whereby one measures the length of filament entering the extruder, but this doesn't have the extrusion back pressure that Stefan's method has & the factors generated seem to be unhelpful. This is now off the topic that I started, but I'd be grateful of any suggestions?

              1 Reply Last reply Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator
                last edited by

                Ah yes of course you're correct. The extrusion will complete at the same time the Z move finishes. I assume he's doing the Z move to give the coil some space as it builds?

                And yes you are correct that non-linear extrusion is only in effect during XYE moves, ie, during a print move. Typically we're not printing during Z moves, ie, during a layer change.

                @peterh1500 said in M203 and default *minimum* feed speed:

                but this doesn't have the extrusion back pressure that Stefan's method

                Why do you say that?

                Z-Bot CoreXY Build | Thingiverse Profile

                PeterH1500undefined 1 Reply Last reply Reply Quote 0
                • PeterH1500undefined
                  PeterH1500 @Phaedrux
                  last edited by PeterH1500

                  @phaedrux
                  Stefan's method has the nozzle in close proximity to the extruded material throughout the extrusion, by tracking upwards, which I've interpreted as maintaining a reasonably constant back pressure on the extruder. DC42's code (as far as I've found it in various posts on the forum) doesn't set the Z height and can be used extruding into mid air without any back pressure from printed material. I suppose that, in DC42's gcode I could set the Z height and allow the X movement to spread the filament on the build plate at a constant back pressure. However, I was about to declare that the extrusion lengths from DC42's method, and the weight of the nuggets (they're more blobs than coils!) from Stefan's method yield results that differ from each other in respect of the required A and B coefficients in M592, but now that I've looked at my data again, they're almost identical when expressed in percentage fall off of extrusion length / volume with speed of extrusion. I may be closer to a solution (for PLA at least) than I thought!
                  As an aside, I tried using G2 in place of the G1 in my gcode based on Stefan's method, to extrude a circle, so that there was an X and Y movement as well as a Z (it gave me helical nuggets!). This seemed to work OK but when I looked more closely, the duration of the extrusion was not what I anticipated for the circle circumference or for the length of the Z move, so I couldn't work out a feed rate to set an accurate volumetric extrusion rate! Have you any idea how RRF handles a simultaneous XY&Z move with extrusion?!
                  I'm grateful that you've made me think about it again, and more carefully, & re-examine my data.

                  Phaedruxundefined 1 Reply Last reply Reply Quote 0
                  • Phaedruxundefined
                    Phaedrux Moderator @PeterH1500
                    last edited by

                    @peterh1500 said in M203 and default *minimum* feed speed:

                    Have you any idea how RRF handles a simultaneous XY&Z move with extrusion?!

                    Sounds like vase mode.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post
                    Unless otherwise noted, all forum content is licensed under CC-BY-SA