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

    New installation - consistently overextruding though calibrated

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    9
    27
    4.5k
    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.
    • dintidundefined
      dintid
      last edited by

      @DjDemonD:

      I've had some issues lately. CLone titan extruder calibrated using the 100mm in method, as the OP did. That was on 1.18B3 now using 1.18RC1. I've had to reduce the steps/mm from 470 to 400.

      That previous thread Deckingman linked to lists more examples, in that case all titan extruders. What extruder are you using dintid?

      Working fine now. But still puzzling.

      I'm using my own Belted Extruder: http://www.thingiverse.com/thing:1764551

      I've learned I need to set steps/mm to 50% of the calculated steps/mm. Ie. when I extrude 100mm I need to dial steps down, so it actually only extrudes 50mm…

      It goes for all my filaments.
      I only use quality filaments with quaranteed diameter, and I've previously used the same filaments on same machine with Smoothieware controller without these steps/mm issues.

      I don't know what the error is, but it's definetly a firmware problem related to Extruders, as my XY and Z moves fine.

      RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

      1 Reply Last reply Reply Quote 0
      • dintidundefined
        dintid
        last edited by

        I've tried using Cura profile for UM2+ (as I've just build a 100% clone of such) - I only changed retract to match E3D and filament from 2.85 to 175mm and now the extrusion seems to match.

        I havn't had time to look closely at the startup gcode, as I need to print a bunch of dragons for 5 year old birthday tomorrow, but at a quick look the UM2+ profile contained M82 gcode which sets extruder to absolute mode.

        I've previously removed M83 from config.g which sets extruder to relative as it resulted in massive overextrusions - like 10x at least.

        I would expect it to function at absolute when not defined as relative, but right now it seems to work when defined as absolute in startup gcode.
        I need to look into this more closely when I have time.

        RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

        1 Reply Last reply Reply Quote 0
        • dintidundefined
          dintid
          last edited by

          Here's the UM2+ profile, where the correct steps/mm (2025/mm) works as it should when printing:

          [[language]]
          G21 ;metric values
          G90 ;absolute positioning
          M82 ;set extruder to absolute mode
          M107 ;start with the fan off
          G28 Z0 ;move Z to bottom endstops
          G28 X0 Y0 ;move X/Y to endstops
          G1 X15 Y0 F4000 ;move X/Y to front of printer
          G1 Z15.0 F9000 ;move the platform to 15mm
          G92 E0 ;zero the extruded length
          G1 F300 E10 ;extrude 10 mm of feed stock
          G92 E0 ;zero the extruded length again
          G1 F9000
          ;Put printing message on LCD screen
          M117 Printing...
          
          

          And the "stock" start gcode where I have to use half of the correct steps/mm to get somewhat ok results:

          [[language]]
          G28 ;Home
          G1 Z15.0 F3000 ;Move the platform down 15mm
          G92 E0
          G1 F300 E10
          G92 E0
          
          

          This leaves us with one of 3 Gcodes, that might affect the steps/mm:
          G21 ;metric values
          G90 ;absolute positioning
          M82 ;set extruder to absolute mode

          Notes says G90 shouldn't affect extrusions

          Note: RepRapFirmware uses M82 to set the extruder to absolute mode: extrusion is NOT set to absolute using G90

          That leaves us with one of these - will test when I'm done printing dragons for 5 year olds treasure hunt :):
          G21 ;metric values
          M82 ;set extruder to absolute mode

          RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

          1 Reply Last reply Reply Quote 0
          • dintidundefined
            dintid
            last edited by

            Noticed when I set Machine Type in Cura to Marlin it works but when I change type to RepRapFirmware it overextrudes again, even with the startup that worked above…

            RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

            1 Reply Last reply Reply Quote 0
            • burtoogleundefined
              burtoogle
              last edited by

              Hi, I am currently using Cura 2.5 (beta) and you get the choice of RepRap (Marlin/Sprinter) or RepRap (Volumetric) + others. I am happily using the Marlin variety with my Duet based Kossel XL. As has been mentioned, you just need to set the extruder to absolute mode on print start. Could it be that you are using RepRap (Volumetric)?

              1 Reply Last reply Reply Quote 0
              • dintidundefined
                dintid
                last edited by

                @burtoogle:

                Hi, I am currently using Cura 2.5 (beta) and you get the choice of RepRap (Marlin/Sprinter) or RepRap (Volumetric) + others. I am happily using the Marlin variety with my Duet based Kossel XL. As has been mentioned, you just need to set the extruder to absolute mode on print start. Could it be that you are using RepRap (Volumetric)?

                Well, you sort of just said what I had found as well 🙂

                Had to specify M82 (absolute extruder mode) AND run it as Marlin.
                This especially seems dumb, when the Web Configurator by default inserts an M83 in config.g file, which I have edited away again, after some initial advice.

                But why? Why doesn't it work when running it as RepRapFirmware?
                I know it's Volumetric, but I don't know what it means for us endusers?
                Also, how to make it work when set it as RepRapFirmware? Seems counterintuitive that we are running RepRapFirmware, but have to specify Marlin/Spring in the slizer?…

                RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

                1 Reply Last reply Reply Quote 0
                • burtoogleundefined
                  burtoogle
                  last edited by

                  I think if you ask the Cura devs that they will admit that the gcode flavour configuration and handling is less than perfect. However, they are only really interested in working on stuff that is Ultimaker specific which is fair enough given that Ultimaker pays them.They are interested in contributions from the community and provide help (and criticism!) to contributors. I have provided some code for the 2.5 release and they have been very helpful in getting it integrated.
                  Anyway, that means that any fixes/additions that are related to non-Ultimaker machines have to come from the community. i.e. it needs someone who uses Cura on another machine to put the effort in.

                  1 Reply Last reply Reply Quote 0
                  • Dougal1957undefined
                    Dougal1957
                    last edited by

                    I Believe you may be getting confused here in Cura RepRap (Volumetric) is not the same as RepRapFirmware and I believe it is a variant of Marlin that deals with Volumetric extrusion rates rather then absolute or relative.

                    I can't be certain about this but pretty damned sure of the above and that Ultimaker won't be supporting RRF anytime soon.

                    But it may be worth a support Question to make sure?

                    1 Reply Last reply Reply Quote 0
                    • dintidundefined
                      dintid
                      last edited by

                      @burtoogle:

                      I think if you ask the Cura devs that they will admit that the gcode flavour configuration and handling is less than perfect. However, they are only really interested in working on stuff that is Ultimaker specific which is fair enough given that Ultimaker pays them.They are interested in contributions from the community and provide help (and criticism!) to contributors. I have provided some code for the 2.5 release and they have been very helpful in getting it integrated.
                      Anyway, that means that any fixes/additions that are related to non-Ultimaker machines have to come from the community. i.e. it needs someone who uses Cura on another machine to put the effort in.

                      I've used Cura the past some years and never had any issues.
                      Slic3r is doing the same in any way.

                      Problem is not slizer centric, but Duet WiFi centric, as we MUST have the M82 AND specify it as marlin in the slizer, or it just doesn't work.

                      @Dougal1957:

                      I Believe you may be getting confused here in Cura RepRap (Volumetric) is not the same as RepRapFirmware and I believe it is a variant of Marlin that deals with Volumetric extrusion rates rather then absolute or relative.

                      I can't be certain about this but pretty damned sure of the above and that Ultimaker won't be supporting RRF anytime soon.

                      But it may be worth a support Question to make sure?

                      That is part of the issue. I saw it as RepRapFirmware, so lets tick that one.

                      It's not slizer centric. Slic3r is doing the same. Both normal and the Prusa version.

                      The 2 main issues is that we MUST have M82 in start code AND specifiy firmware as Marlin.

                      Also M83 must not, in any way, be present in config.g or startcode, which is odd, since the Web Configurator puts it there by default (config.g).

                      RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

                      1 Reply Last reply Reply Quote 0
                      • Dougal1957undefined
                        Dougal1957
                        last edited by

                        The Configurator puts M83 there because that is the recommended way to run the Duet the reason you have to change it to M82 is because Cura does not do Relative Extrusion (this mode avoids rounding errors that creep in with absolute).

                        I stopped using Cura quite a while ago once it went to the 2.x.x series due to the buggy nature that I found with it tho I believe the later ones are much better I just prefer S3D for it's control and speed (tho it does have issues with multiple extrusion and mixing hotends but I don't as yet use them).

                        1 Reply Last reply Reply Quote 0
                        • deckingmanundefined
                          deckingman
                          last edited by

                          @dintid:

                          …...................Problem is not slizer centric, but Duet WiFi centric, as we MUST have the M82 AND specify it as marlin in the slizer, or it just doesn't work.

                          ........................It's not slizer centric. Slic3r is doing the same. Both normal and the Prusa version.

                          The 2 main issues is that we MUST have M82 in start code AND specifiy firmware as Marlin.

                          Also M83 must not, in any way, be present in config.g or startcode, which is odd, since the Web Configurator puts it there by default (config.g).

                          As I tried to point out before, you need to configure the slicer and the Duet to use the same extrusion. The configuration tool puts M83 there as a default because most people prefer to use relative extrusion rather than absolute. If you choose to use a slicer that only supports absolute extrusion, or you have the choice of using either relative or absolute in your slicer, but choose to use absolute, then you need to "tell" the Duet firmware that is what you are using. There are a myriad of slicers that users can use but the Duet firmware cannot second guess the choices you have made - you have to tell it.

                          Ian
                          https://somei3deas.wordpress.com/
                          https://www.youtube.com/@deckingman

                          1 Reply Last reply Reply Quote 0
                          • dintidundefined
                            dintid
                            last edited by

                            @deckingman:

                            @dintid:

                            …...................Problem is not slizer centric, but Duet WiFi centric, as we MUST have the M82 AND specify it as marlin in the slizer, or it just doesn't work.

                            ........................It's not slizer centric. Slic3r is doing the same. Both normal and the Prusa version.

                            The 2 main issues is that we MUST have M82 in start code AND specifiy firmware as Marlin.

                            Also M83 must not, in any way, be present in config.g or startcode, which is odd, since the Web Configurator puts it there by default (config.g).

                            As I tried to point out before, you need to configure the slicer and the Duet to use the same extrusion. The configuration tool puts M83 there as a default because most people prefer to use relative extrusion rather than absolute. If you choose to use a slicer that only supports absolute extrusion, or you have the choice of using either relative or absolute in your slicer, but choose to use absolute, then you need to "tell" the Duet firmware that is what you are using. There are a myriad of slicers that users can use but the Duet firmware cannot second guess the choices you have made - you have to tell it.

                            When you say "most people" what kind of group is this? And what slizer is this? Old duet users maybe?

                            I've never, ever, met anyone using relative extrusion.. goes for Sliz3r, Cura and S3D for sure…

                            The M83 should NOT be put into the config.g by default... should be a tick option for the people using this to put in... I take it the people using relative extrusion are doing this on purpose.. meaning they can actively put it in, while all the rest use default standard slizer settings, which means absolute settings and have no idea what's going on.

                            Edit:
                            They don't know, as they have just always used the default settings, which is relative, so when everything goes down the drain because of this M83, they have absolutely no clue as to why it's happening.. the ones using Relative extrusion on purpose knows they need to put the setting into their config.g file.

                            Edit:
                            This is exactly the same issue when Servos wasn't supported initially as it was an old tech... or smoothie not supporting "software endstops" (define axis lenghts) because DEVs didn't use it... Just because DEVs or a select group of people do something, does not mean that "most people" are doing the same.
                            Edit: no, not a flame on smoothieware, they have also nice firmware, just used as an example

                            RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

                            1 Reply Last reply Reply Quote 0
                            • deckingmanundefined
                              deckingman
                              last edited by

                              My my. That's a bit of an unnecessary rant isn't it?

                              Well, the Duet needs to default to either relative or absolute extrusion. Whichever one it is set to will upset people like you who use the opposite, so it's a no win situation as far as the Duet firmware is concerned.

                              For info, the default in Slic3r is relative, not absolute as you state.

                              However, it is such a simple thing to change that I really can't understand why you are so upset about it. Whatever the Duet defaults to, all you have to do is put either M83 or M82 in your slicers start code to tell it what to expect.

                              Take a few deep breaths and calm down - life is too short to get wound up about such a trivial thing IMO.

                              Ian
                              https://somei3deas.wordpress.com/
                              https://www.youtube.com/@deckingman

                              1 Reply Last reply Reply Quote 0
                              • jmjcokeundefined
                                jmjcoke
                                last edited by

                                Maybe slizers are different?

                                Joshua Coke

                                Trick Laser Metal Max with Smart Effector
                                Duet Wifi
                                Zesty Nimble
                                Mosaic Pallette+
                                At work
                                Renishaw AM250/400/ RenAM500M/500Q Powder Bed Fusion (Metal 3D Printers)

                                1 Reply Last reply Reply Quote 0
                                • dintidundefined
                                  dintid
                                  last edited by

                                  @deckingman:

                                  My my. That's a bit of an unnecessary rant isn't it?

                                  Well, the Duet needs to default to either relative or absolute extrusion. Whichever one it is set to will upset people like you who use the opposite, so it's a no win situation as far as the Duet firmware is concerned.

                                  For info, the default in Slic3r is relative, not absolute as you state.

                                  However, it is such a simple thing to change that I really can't understand why you are so upset about it. Whatever the Duet defaults to, all you have to do is put either M83 or M82 in your slicers start code to tell it what to expect.

                                  Take a few deep breaths and calm down - life is too short to get wound up about such a trivial thing IMO.

                                  It wasn't a rant. If you see that as a rant, I think you should take a few deep breaths and calm down - life is too short to get wound up about such trivial thing IMO.

                                  It was constructive input that happened to pick apart the arguments used to defend a bad solution for the majority of the 3D community.

                                  For some reason a lot of people just can't handle valid arguments used in a dicussion.

                                  Edit:
                                  @decingman:

                                  However, it is such a simple thing to change that I really can't understand why you are so upset about it. Whatever the Duet defaults to, all you have to do is put either M83 or M82 in your slicers start code to tell it what to expect.

                                  Problem is, that M83 is not the norm, far from, and it's not documented anywhere either in a way people can figure out what it is. Means -> it's not pointed out as something you must check.

                                  I suggested it be listed as an active choice.. which means the (minority) using this method can actively choose it for their builds, and the rest aren't confounded by a setting which aren't compatible with default settings of all the most normally used slizers.

                                  Nope, not a rant either 🙂

                                  Edit 2: Stop telling people they should calm down.. it's really very derogatory.
                                  It's a multilingual forum and I myself is Danish, so I might be using words that should be substituted with something else, but well… I'm not naitively English speaking, so I might not have the intuitive understanding for the finer nuances.

                                  Telling me, that my arguments are invalid because of the tone is degrading to yourself.. come up with arguments against it instead.

                                  RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

                                  1 Reply Last reply Reply Quote 0
                                  • dintidundefined
                                    dintid
                                    last edited by

                                    @jmjcoke:

                                    Maybe slizers are different?

                                    Yes, they are, but none of the slizers I listed (Cura, S3D, sliz3r) are using relative extrusion by default. It means the argument that "most people use relative extrusion" is plainly not correct.

                                    Which is why I asked who all those people might be 🙂

                                    This is not a rant either, in case anyone mistake it as such.

                                    RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

                                    1 Reply Last reply Reply Quote 0
                                    • deckingmanundefined
                                      deckingman
                                      last edited by

                                      My goodness. Still wound up about such a trivial thing?

                                      Let's put it another way. The default configuration for RepRap firmware has always been to set extrusion to relative. That stems from the very early 0.6 boards that RepRap pro used and when Adrian Bower wrote the original firmware, through the 0.8.5 boards to the latest WiFi and Ethernet versions. So everyone who has bought a Duet board up to this point in time, has got used to it. What you are proposing is that it should now be changed to default to absolute because that is what you want to use.

                                      For info, I believe that by default, if no M83 of M82 parameter is used in the configuration file, the Duet will use absolute extrusion, which is what you want anyway. It's only the default configuration that sets it to relative and what goes into the configuration file is entirely up to the user. Rather than ranting on about developers or small groups of people choosing a particular mode of operation, you should be applauding them for giving you the freedom to select whichever option you prefer to use.

                                      Your comments about slicers are much the same thing. That is to say that by default, many of them are set to use absolute but many can be changed to use relative instead.

                                      That's the beauty of it all. Users can have whatever they want but whichever one they decide on, the Duet needs to "know" - it hasn't yet been fitted with crystal ball to foresee what any particular user may require.

                                      Edit. Regarding the merits of absolute and relative extrusion, they are essentially the same thing. An absolute extrusion move is essentially a relative move. That is to say that it is a move relative to the start of the print whereas relative extrusion is relative to the last move. In fact, absolute extrusion moves must be converted to relative in order to extrude the correct amount of filament for a particular move. With absolute extrusion, it is vitally important that the extruder be zeroed at the start of the print otherwise the entire print will be thrown out. With relative extrusion, it doesn't matter if the extruder was zeroed at the start of a print.

                                      Ian
                                      https://somei3deas.wordpress.com/
                                      https://www.youtube.com/@deckingman

                                      1 Reply Last reply Reply Quote 0
                                      • dintidundefined
                                        dintid
                                        last edited by

                                        Just to round off this thread

                                        I'm not wound up btw - I just put forth valid objective arguments for my points of view. It's hard for a certain kind of people online to be met with real arguments I know, but it doesn't mean I'm wound up or anything. It's rather demeaning starting to attack people's state of mind, just because you don't agree (not directed at any particular person, but just in general).
                                        Making counter arguments to dismiss what I'm saying is just silly… the goal is to find a solution to work for everyone, not phase out one or the other.

                                        [h]How to use Cura in conjunction with RepRapfirmware.[/h]
                                        In Config.g you need to comment out M83 AND in Cura startup.gcode you need to put in M82 to make it work.
                                        The Gcode Flavor to use should also be listed : RepRap (Marlin/Sprinter)

                                        [h]How to use Firmware retract in Cura[/h]
                                        If you need Firmware retract you still need to do the above M83 and M82.
                                        You need to insert M200 + relevant parameters in config.g and change Gcode Flavor in Cura to RepRap (Volumetric)¨
                                        Also need to use firmware 1.19 (or newer)

                                        [h]Real Problem[/h]
                                        The real problem is the lack of documentation on this issue, which is the the core issue I'm trying to point out.
                                        For most people the absolute or relative extrusion is just babble, and is not cause for speculation when encountering this Extrusion problem.
                                        It's a fundamental setup point which must match, and it should be pointed out in wiki, on each machine configuration examples AND in gcode wiki as well.

                                        [h]How to document:[/h]
                                        Not just to tell what Absolute and Relative does an expect people to figure out the combination of M83 an M82, but make real setup examples like I just did above with Cura.

                                        Edits: Added info etc.

                                        RepRapFirmware supported G-codes: https://duet3d.com/wiki/G-code

                                        1 Reply Last reply Reply Quote 0
                                        • dc42undefined
                                          dc42 administrators
                                          last edited by

                                          Actually it's only necessary to put M82 in the slicer start gcode to use absolute extrusion.

                                          Absolute extrusion is a huge pain in the butt from a firmware development perspective. It bears no direct relation to the amount of movement made by the extruder stepper except in the simple case of a machine with only one extruder drive, the extrusion factor set to 1.0, and no G92 E0 received since starting to extrude. So all the calculations have to be done after converting to relative extrusion anyway. OTOH the firmware code for pause/restore, resume after power fail and filament change procedures all needs to have unnecessary complications added to handle incoming gcode with absolute extruder coordinates.

                                          It looks like Cura will support relative extruder coordinates in the near future, at which point the advice and documentation can be just to set your extruder to use relative extruder coordinates.

                                          Duet WiFi hardware designer and firmware engineer
                                          Please do not ask me for Duet support via PM or email, use the forum
                                          http://www.escher3d.com, https://miscsolutions.wordpress.com

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