4
$\begingroup$

The Ultimaker Cura documentation says

Tip: If you use an unavailable third party nozzle size, set the line width to equal the nozzle size.

I sliced an object with a 0.3 mm line width. When the nozzle size is 0.4 mm, the results are almost the same as when the nozzle is 0.3 mm. The filament usage is slightly different and the gcode files have similar, but different, coordinates throughout.

What does nozzle size really do besides suggest the line width?

$\endgroup$
  • $\begingroup$ Well, it does affect the anticipated extrusion rate and thus the rate at which the raw filament is driven into the hotend. $\endgroup$ – Carl Witthoft Jun 12 '19 at 15:31
  • $\begingroup$ @Carl, that was my first thought, but I don't think it's correct. The amount of filament needed for the line width doesn't depend on nozzle size. The extrusion distance times the filament size gives you the volume, which must equal the layer height times the line width, regardless of nozzle size. $\endgroup$ – Kayvon Jun 12 '19 at 21:27
  • $\begingroup$ true - I was thinking more of the ease with which the combo of extrusion and motion speed could produce a reliable line width. $\endgroup$ – Carl Witthoft Jun 13 '19 at 14:59
5
$\begingroup$

Searching the CuraEngine source, the only places I can find where nozzle size is used directly involve some arcane logic for merging of infill lines, such as:

https://github.com/Ultimaker/CuraEngine/blob/05e93dabce9e863b8742fd69ed87717e1594e7a9/src/MergeInfillLines.cpp#L124

So essentially, yes, nozzle size mainly serves as a default value for the line width settings.

However, in general it's not always possible for line width different from nozzle size to be honored.

  • For line widths smaller than the nozzle, motion along a path where the material being deposited has proper adhesion is required to stretch the material and prevent it from retaining the width extruded from the nozzle, and small lines already printed are likely to be damaged by the nozzle when attempting to print additional small lines in their vicinity. In particular, you won't be able to print small details significantly below the nozzle size just by extruding less material.

  • For line widths larger than the nozzle, compression against an existing surface is required to prevent the extra material from just sagging down rather than expanding horizontally. In particular, line widths wider than the nozzle are unlikely to work right in the presence of overhangs.

Also, as noted by Tim Kuipers in comments, there are places outside the source, but rather in the json-based configuration tree, where nozzle size plays a role in the defaults and warning ranges for other parameters. Those are mostly line widths, but

The nozzle size can affect the values of the following settings besides line width in fdmprinter.def.json: Outer Wall Inset, Outer Wall Wipe Distance and Minimum Support XY Distance. Other than that it only influences the conditions under which setting-values give you a warning.

| improve this answer | |
$\endgroup$
  • $\begingroup$ Does that imply that you can change the "line width" setting when you swap out nozzles and ignore the nozzle size? Cura makes it much easier to access "line width" than "nozzle size" at the moment. $\endgroup$ – Kayvon Jun 12 '19 at 21:30
  • 1
    $\begingroup$ @Kayvon: I would guess that it's safe to do so, but that's probably an accident of the current implementation rather than something you can rely on. $\endgroup$ – R.. GitHub STOP HELPING ICE Jun 12 '19 at 21:41
  • $\begingroup$ This answer is actually wrong. You shouldn't look at the CuraEngine source, but you should look at Cura/resources/definitions/fdmprinter.def.json There are 65 occurrences, so that's quite a lot. $\endgroup$ – Tim Kuipers Aug 8 '19 at 19:59
  • 1
    $\begingroup$ The nozzle size can affect the values of the following settings besides line width in fdmprinter.def.json: Outer Wall Inset, Outer Wall Wipe Distance and Minimum Support XY Distance. Other than that it only influences the conditions under which setting-values give you a warning. $\endgroup$ – Tim Kuipers Aug 9 '19 at 14:49
  • 1
    $\begingroup$ @TimKuipers: Thanks. Added that to my answer with credit to you. $\endgroup$ – R.. GitHub STOP HELPING ICE Aug 9 '19 at 19:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.