Changing Nozzle Size in Lulzbot Cura does absolutely NOTHING to the GCODE!!!

I just put a 0.4 mm nozzle in one of my TAZ 6 extruders to try and get a little better detail in one of my prints. (I have three separate extruders for my TAZ). I resliced my model and reprinted it. I could hear the extruder skipping every once in a while and my first thought was that it was trying too had to push filament through the nozzle. (This is my sixth 3D printer… I started with the venerable Thing-O-Matic so my “gut feeling” has a bit of credence)…

Anyway, to make a long story short, I ended up generating two GCODE files - one with CURA set for a nozzle size of 0.4 and the other with a nozzle size of 0.5 (the default). I wanted to compare the feed rates (G0/G1) with the two different nozzle selections. While visually scanning the files, I could see NO DIFFERENCE. so I ran a “FC” (file compare) on the two files and THERE WAS ABSOLUTELY NO DIFFERENCE WHATSOEVER IN THE GCODE!!! No FLOW RATE difference and no TOOL PATH differences. (There was a change in the time stamp in the comments at the top of the file and a change in the embedded profile at the end of the files - but NO FUNCTIONAL CHANGES)!!!

WTF?

Why do we have a Nozzle size parameter in Cura if it does absolutely nothing? How many people know about this? Does the software developer know about this? Is this going to be FIXED anytime soon?

I’m using Simplify3D to do my prints with non-standard nozzle sizes. Its pretty obvious that Cura only works with a 0.5mm nozzle (despite what the settings capabilities might lead you to believe)!

I don’t fully understand this either… It does seem like changing nozzle size from 0.5 to 0.4 should change paths (lines closer together) and lower the extrusion amounts. But like you, that isn’t what I see happen in the Gcode generated by Cura.

I can tell you there is interaction between “nozzle size” (on advanced tab) and “shell thickness” (on basic tab). I think you will see different results if you set “shell thickness” to be an even multiple of your “nozzle size”. Obviously the actual number of perimeters has to be an integer, and Cura has to round off any partial shell when dividing shell thickness by the nozzle size. But there seems to be more going on than just that calculation. (Probably just one of the million things I don’t understand about the slicing math.)

With a shell thickness of 1.0mm, I sliced the same file with nozzle sizes of 0.4, 0.5, 0.6, 0.7, and 0.8. The gcode for the 0.4, 0.5, and 0.6 nozzles were identical (same tool paths, same extrusion amounts). The 0.7 and 0.8 were the same as each other, but different from the first three: Hitting 0.7 is where Cura decided to go with one perimeter. The really odd thing is that it also changed the position and extrusion amounts at that point as well; i.e., the extrusion amounts in the 0.7 and 0.8 files were exactly half the extrusion amounts in the 0.4, 0.5, and 0.6 files.

Again, that doesn’t seem right to me, so I can’t explain it or defend it. But… Try setting your “shell thickness” to an even multiple of “nozzle size”, and see what happens. For example, try shell thickness of 0.8 or 1.2 with the 0.4 nozzle size.

Please post back with your results!

Nope… Nothing… Compare the GCODE files!

Changing the Nozzle Size in Lulzbot Cura HAS ABSOLUTELY NO EFFECT ON THE PRINT!!!

(Yes, you can manually change the flow rate or the layer height, but changing the nozzle size has absolutely no effect on anything. …and manually changing the extrusion rate or the layer height doesn’t change the tool path. The Nozzle Size field field is simply not used for anything! Take a model, print it to GCODE. Then change only the nozzle size and make another GCODE file. You will see absolutely no difference except in the time stamp in the header and the embedded profile at the end of the GCODE (neither of which has any effect on the model itself))

If you change the nozzle size on your extruder, you simply can’t use Cura anymore as your slicer!

I am not seeing the same results as you. Perhaps you didn’t read my entire suggestion?

I sliced the same 40mm cube twice with only two parameters changed, and have attached the resulting files:

  • File “40mmcube_st100_nz50.gcode” was sliced with shell thickness 1.00mm, and nozzle width 0.5mm.
  • File “40mmcube_st80_nz40.gcode” was sliced with shell thickness 0.80mm, and nozzle width 0.4mm.

Please compare the two files. You will see that both the tool paths and extrusion amounts have changed.

For example, the first skirt movement extrudes 1.99329mm of filament for the 0.5 nozzle, and 1.58218 for the .4 nozzle. That’s basically a 20% difference, as would be expected based on the nozzle size difference.

Another example, the first inner wall movement. With the 0.5 nozzle, it extruded 1.58741mm of filament (17.32664-15.73923). With the 0.4 nozzle, it extruded 1.28238mm of filament (13.80741-12.52503). That’s a difference of 0.30503, which again is basically 20% less.

So as I suggested before, please try again with “shell thickness” set to an even multiple of "nozzle width." While I agree with you that this isn’t entirely intuitive, it does work as evidenced by the attached gcode files.

If that doesn’t work for you, or you don’t like the way it works… Keep in mind that CURA is free, open source software. Aleph Objects provides a custom release that works with their out-of-the-box printers, but you have modified your printer. You can join Github and open an issue there, or even contribute some modified code that works better. Alternately, you can try another open source option like Slic3r, or you can use the copy of S3D you already own.

Hope some of those suggestions get you printing with your 0.4mm nozzle.
40mmcube_st80_nz40.gcode (391 KB)
40mmcube_st100_nz50.gcode (333 KB)

Thanks, but I did read your posting!

However, you are changing multiple parameters! Certainly changing the shell thickness is going to change the toolpath - and likely the extrusion as well. To be fair, you also need to try changing JUST your shell thickness (keeping the nozzle size the same) and see if the resulting G-CODE isn’t EXACTLY the same as when you changed BOTH parameters…

…and, btw, my layer is is set to 0.20 in any case (even with the 0.5mm default nozzle). So, somewhat coincidentally, my layer height was already set to an even multiple of my extruder diameter. (Not that it should matter…) A 0.5mm extruder should be able to make a 0.20mm layer just as easily as a 0.4mm nozzle…

Actually the cross sectional differences between a 0.5 and 0.4 mm nozzle is about 36% (0.64). The extrusion capabilities of a nozzle is about the AREA of extrusion, not the linear diameter. This is why my extruder was audibly skipping when it was trying to push 10 lbs of “poo” through a 5 lb hole…

Why does it matter if its free, open source software? I’m not bitching about lack of support, I’m trying to make sure anyone who’s interested knows that this parameter is basically useless. If the developer wants to take notice and fix it, great! If it saves someone else a bit of time (as they are trying to do the same thing as me with a smaller nozzle), then also, great! I actually have quite a few open source hardware and software projects that I have authored/distribute/maintain as well. Most good developers take notice and fix issues regardless if their project is motivated purely by money or not…

No, it isn’t exactly the same. Changing shell thickness alone changes the number of perimeters. That changes paths, but does not change flow. And to be fair, I don’t NEED to do ANYTHING at all. I am voluntarily spending my time and effort, trying to help you make cura work with your 0.4 nozzle.

Perhaps your anger may be keeping you from seeing what I wrote? Please read again. Slowly. I did not say “layer thickness”. I said “shell thickness”. Several times.

SHELL THICKNESS. SHELL THICKNESS.

It matters because “the developer” is not here, and CURA is a “team effort” of many people contributing code. Please take the time to understand how Cura is developed and how the process works. It is not the product of a single developer or single company. Go spend some time on GitHub, which is where you can actually submit an Issue or some code you have written that works better.

To be perfectly clear, I am just another Lulzbot owner. I don’t work for the company, and I didn’t write Cura. I am just someone who took the time to read, do a little research, run some tests, and give you an easy solution: CHANGE THE SHELL THICKNESS. If you don’t want a solution, that’s OK – but that’s all I have for you.

I don’t need or want a different shell thickness. I want a finer extrusion using a smaller nozzle diameter for better detail.

It should be possible to simply set a smaller nozzle dia and the program should recalculate the extrusion rates and tool paths.

Its just that simple!

I called Lulzbot tech support about this issue to see if they knew about it. The person I spoke with knew about this but also said he was unaware if it was on any bug fix to be addressed so he suggested I post something about it to make sure folks (inc developer) could be made aware of it.

It seems this frustrates you…

My job here is “done” in any case. Its not working the way it should. I’ve disclosed this fact as I said I would. …and now I’ve moved on.

(unsubscribed)

No, you do need a different shell thickness. Shells are created by extruding perimeters. You can’t make a 1.0mm shell with a 0.4mm extrusion. You can make a 0.8mm shell, or a 1.2mm shell with a 0.4mm extrusion. By telling Cura to make a 1.0 shell with a 0.4 nozzle, you are giving it an impossible task. Should it be smarter, prioritize nozzle width, and automatically override the specified shell thickness? Perhaps, perhaps not. But fact is, it does not work that way. You need to specify compatible parameters.

Thousands of people with a multitude of different printers and nozzle sizes use Cura every single day. It is absolutely, provably, definitely, NOT limited to working with a 0.5 nozzle size.

If you change the shell thickness to an even multiple of your 0.4mm nozzle, you will get correct slicing results from Cura. It’s really THAT simple.

But if you are more interested in yelling and stomping your feet than a simple solution, so be it. :laughing:

Necropost:

Make the shell 2.0 mm. That’s an even multiple of 0.4 and 0.5.