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

    Determine real nozzle diameter

    Scheduled Pinned Locked Moved
    General Discussion
    5
    16
    2.4k
    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.
    • wilrikerundefined
      wilriker
      last edited by

      I am using an Anet A8 (except for the Duet Wifi part) and this supposedly comes with a MK8 0.4mm nozzle. I did not yet question this but I went through the extruder calibration described at https://mattshub.com/2017/04/19/extruder-calibration/. (I know there is a much more detailed calibration somewhere in the RepRap forums (at least I think it was there) but for this... cheap... extruder it does not make too much sense IMHO.)

      Now, I calibrated my steps/mm - and I found out that RRF supports up to three decimal places, that's cool!

      Next I printed the cube as described. I use Cura as a slicer and from what I can tell, Cura uses the configured nozzle diameter as wall thickness base value, hence 0.4mm.

      When I measured the cube, though, it had walls with a thickness of 0.54mm. I can't believe that a nozzle could be that much off. I would need to reduce the extrusion multiplier to 74% to get to 0.4mm (I tried and it works). I also measured my filament and it is 1.78-1.8mm around the part that I used to print. This is only about 2.5% above the expected 1.75mm and also cannot explain why my wall thickness would be that much off.

      So I rather believe that Anet either put a 0.5mm nozzle in the package or the quality of the nozzle is so bad that about 1kg of regular PLA already was abrasive enough to widen the nozzle to 0.5mm - none of both would strike me as a surprise though. 😄

      Now to my question: can I derive my real nozzle diameter the way I described above or is there an easy way to determine the real diameter that would be more reliable?

      Manuel
      Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
      with probably always latest firmware/DWC (incl. betas or self-compiled)
      My Tool Collection

      1 Reply Last reply Reply Quote 0
      • Bravojulundefined
        Bravojul
        last edited by

        I was puzzled to find that Slic3r was dead on horizontal dimensions and Cura was off by several tenth of millimeter. I compared gcode from both and found out that Cura needs a line width of 0.45mm and an extrusion factor of 87.84% to match Slic3r

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

          You should be aware that one of Cura's limitations is that it doesn't do thin walls at all well. This is because all walls are printed with two lines (the outside perimeter and the hole inside it. It does have what is known as "overlap compensation" which tries to reduce the flow for wall lines that don't actually fit in the space that is available. So, in theory, when you have a wall that is only as wide as the line width (note, not the same as the nozzle width), one of the lines will be printed using the normal line width and the second wall should be flow reduced down to nothing. Unfortunately, the overlap compensation part of Cura is very flawed and so the result is a bit hit and miss.

          wilrikerundefined 1 Reply Last reply Reply Quote 1
          • wilrikerundefined
            wilriker @burtoogle
            last edited by

            @burtoogle I did set Cura explicitly to Wall Count 1 and looking at the Gcode output by it I can confirm it just did one single perimeter. I tried also with Spiralize Outer Contour. Actually the results reported above are done with such a test cube slice with Spiralize Outer Contour enabled. When I disable it (as mentioned still get one wall only) extrusion with is reduced to 0.5mm but that is still 25% larger than the configured 0.4mm.

            I will attach both GCode files here

            • extruder_multiplier_test.gcode
            • extruder_multiplier_test_spiralize_outer_contour.gcode

            Also when I just extrude filament into thin air with 100mm/min the strand coming out of the nozzle also measures 0.5mm.

            Btw: I am the one reporting the issue with FW Retract + Relative Extrusion + Coasting - I patched CuraEngine with your fix and it is working flawlessly since. Still waiting on your Pull Request being merged. 😉

            Manuel
            Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
            with probably always latest firmware/DWC (incl. betas or self-compiled)
            My Tool Collection

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

              If you have a 0.4mm nozzle then you won't be able to print line widths less than about 0.5mm reliably.

              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

              wilrikerundefined 1 Reply Last reply Reply Quote 0
              • wilrikerundefined
                wilriker @dc42
                last edited by

                @dc42 Can you explain a little bit why that is?

                Manuel
                Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                with probably always latest firmware/DWC (incl. betas or self-compiled)
                My Tool Collection

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

                  Ah, I should have paid more attention - the cube was solid, it didn't have a hole in it so there would only be one wall, not the two I was rambling on about earlier.

                  I sliced that test cube using 0.2mm layers and a wall line width of 0.5mm and the extrusion rate in the gcode was such that the amount extruded per mm would fill a rectangle 0.2mm x 0.505mm.

                  For a line width of 0.4mm the result was 0.2mm x 0.397mm.

                  Yeah, Cura PRs hang around for months. I'm afraid the Cura devs are all far too busy to pay much attention to contributions.

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

                    @wilriker said in Determine real nozzle diameter:

                    @dc42 Can you explain a little bit why that is?

                    Two reasons:

                    1. Die swell.

                    2. If you printed lines with a circular cross section, there would be no inter-layer adhesion. So you want the extrusion to be squashed vertically - which is why you always print with a layer height below the nozzle diameter. This squashing inevitably means that the extruded filament will expand widthways.

                    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
                    • burtoogleundefined
                      burtoogle
                      last edited by

                      When the layer height is 0.2mm and the line width is 0.5mm. Cura extrudes an amount that corresponds to a rectangle 0.2 x 0.5. The height of the extrusion is constrained but the width isn't and so the runny plastic prefers to expand sideways rather than "fill the corners" of the cross section rectangle.

                      Compare these cross sections that are intended to have the same area:

                       ----------------
                       |              |
                       |              |
                       |              |
                       ----------------
                      
                       /--------------\
                      /                \
                      |                |
                      \                /
                       \ -------------/
                      

                      I'm sure you get the idea.

                      wilrikerundefined 1 Reply Last reply Reply Quote 0
                      • wilrikerundefined
                        wilriker @burtoogle
                        last edited by

                        @burtoogle Now I get it. Thanks for making this visual, that helped a lot. Also thanks @dc42 for mentioning "die swell" that explained the part why it is also wider when simply extruding into thin air.

                        Now, maybe you could answer one last question: my Cura is set to a line width of 0.4mm (which simply is the default when configuring a 0.4mm nozzle). Obviously 0.5mm is much wider than this. When I do the extruder calibration like described on the page that I linked in the first post, what width would I aim for then? If I go for 0.4mm I would have to reduce flow rate to 74% which seems ridiculous to me. Do you have any advise? (It may even be something like "ignore that nonsense as long as you are happy with your prints" 😉 )

                        Manuel
                        Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                        with probably always latest firmware/DWC (incl. betas or self-compiled)
                        My Tool Collection

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

                          I use a 0.4mm nozzle and almost always use a line width of 0.5mm for walls and maybe 0.6mm for infill. That's for 0.2mm layers. Sometimes, when I really have to fit a wall in a small gap I will reduce the wall line width but I really try to avoid using less than 0.5mm.

                          At the end of the day, what numbers you use are completely irrelevant as long as the print quality is acceptable. I am getting very nice quality prints using either PLA or PETG.

                          wilrikerundefined 1 Reply Last reply Reply Quote 0
                          • wilrikerundefined
                            wilriker @burtoogle
                            last edited by

                            @burtoogle OK, that makes sense to me. But currently Cura is configured to 0.4mm line width and what actually comes out of my nozzle is 0.5mm - which means on two perimeters the wall already is 0.2mm wider than what Cura was planning to produce.

                            If I set Cura to 0.5mm line width now, it will probably extrude even more plastic that would make the walls thicker again.

                            I am basically very happy with my prints and so far I only had issues when printing holes where screws are supposed to tap in (this might be related to printer creating wider walls and thereby smaller holes than what Cura is planning).
                            But I am also very pedantic and would have my workflow configured consistently so that when I change something I know it will do what I expect. 😄
                            Do you know any way how I can get this discrepancy fixed?

                            Manuel
                            Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                            with probably always latest firmware/DWC (incl. betas or self-compiled)
                            My Tool Collection

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

                              Small holes are particularly problematic because the inside and outside radii of the wall differ so much. It effectively overextrudes inside of the wall's centre line and underextrudes outside of that centre line. I can't remember who did the work now but years ago someone came up with a scheme whereby the number of points used for the wall of a circular hole would reduce as the hole diameter got smaller. For really small holes, the wall ends up having just 3 points (i.e. it's a triangle). Holes a little larger have 4 points, and so on. It actually worked pretty well.

                              Here's the scad that does this:

                              module polyhole(h, d, taper = 1) {
                                  n = max(round(2 * d),3);
                                  r = (d / 2) / cos (180 / n);
                                  rotate([0,0,180])
                                      cylinder(h = h, r1 = r, r2 = r * taper, $fn = n);
                              }
                              
                              wilrikerundefined Phaedruxundefined 2 Replies Last reply Reply Quote 1
                              • wilrikerundefined
                                wilriker @burtoogle
                                last edited by

                                @burtoogle I will try this SCAD module in my next print with holes (there will be a box for the Duet soon). 🙂

                                Manuel
                                Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
                                with probably always latest firmware/DWC (incl. betas or self-compiled)
                                My Tool Collection

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

                                  @burtoogle I think that might have been nophead

                                  http://hydraraptor.blogspot.ca/2011/02/polyholes.html?m=1

                                  http://hydraraptor.blogspot.ca/2014/06/why-slicers-get-dimensions-wrong.html?m=1

                                  Z-Bot CoreXY Build | Thingiverse Profile

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

                                    @phaedrux said in Determine real nozzle diameter:

                                    @burtoogle I think that might have been nophead

                                    Yes, I think you're right. I couldn't remember, sorry nophead.

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