Jump to content

unable to slice when: model shell = nozzle size = line thickness


shmishleniy

Recommended Posts

Posted (edited) · unable to slice when: model shell = nozzle size = line thickness

Hi all,

 

I have a problem with slicing this model:

 589247783_Screenshot2020-11-21at18_18_33.thumb.png.502129289d74d4b9bdcc5dd8e2dce8ee.png

 

sketch:

 

979615537_Screenshot2020-11-21at18_19_06.thumb.png.bf1e3f7df36d96c34f8329e36ad62a03.png

 

cura settings:

nozzle:          0.4
line width:      0.4
wall thickness:  0.4
infil:           0 %

 

and result:

1037472083_Screenshot2020-11-21at18_19_34.thumb.png.457ccf5da6b34a02648af370f9d67db7.png

 

project in attachments CE3_q1.3mf

 

seems it's impossible to print model with shell line less than two

CE3_q1.3mf

Edited by shmishleniy
  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    Yes - cura literally slices your model into 2 dimensional slices by intersecting a plane with the triangles in the STL (an STL is a list of unordered triangles in 3 dimensional space).  This gives you a bunch of unordered lines.  Cura next tries to string those lines into loops (but there's tiny floating discrepencies due to rounding/precision errors).  then it creates a "shell" path on the "solid side" of those loops (sometimes just inside, sometimes just outside if the loop describes a hole int hepart).

     

    So it always does 2 paths.  Always.  Hopefully some day Cura will get smarter and only do one path for thin walls.

     

    Meanwhile you have a few options:

     

    check the box for "print thin walls".  This may solve your problem alone.  If not you might have to lower the line width just a little bit - say 0.39mm.

     

    Another option is to use a smaller nozzle.

     

    Another option is to set the line width quite a bit smaller than the nozzle hole.  Usually 75% to 200% is pretty safe - so 0.3mm line widht for a 0.4mm nozzle will have pretty good quality.

     

    Finally, there is a hack.  If you have very simple geometry and you don't need any fill, you can model instead a cube in CAD.  Then uncheck the "infill" and set both "top layers" and "top thickness" to zero.  Voila - a box where the nozzle just does one pass.  Oh and set shell to 0.4mm and line width to 0.4mm.  

     

    This last hack is what you really want but only works for certain geometries (e.g. vases, cups, boxes).

     

    Note that 0.4mm thick might not be strong enough for your needs.

    • Thanks 1
    Link to post
    Share on other sites

    Posted (edited) · unable to slice when: model shell = nozzle size = line thickness

    This is a real pain, I've been fighting this all day in order to do some extrusion calibration. The slicer flat out won't even in vase mode and introduces artifacts that simply shouldn't be there. If it does it here it will do it elsewhere. This behaviour occurs regardless of the extra walls setting, vase mode, print thin walls etc etc.

     

    The image below shows the corners as per Cura, this is a 0.42mm wall with a 0.42mm extrusion width, drawn in Fusion360. I've tried various widths from 0.40 and Cura simply cannot handle it, all corners appear as per the first image below.

     

    There is no join anywhere but Cura is introducing one for every single corner even in vase mode, notice the second image that shows the bottom 3 layers forming the base have no such defect despite the single wall thickness. In my opinion this is a code defect that really needs to be addressed. The only way I can do this is to use Simplify3D which is an application I am trying to get away from, Prusaslicer doesn't generate reprap gcode well and I need to manually edit every gcode file it produces for my coreXY (Duet3).

     

    520741659_BotchedCorners.thumb.png.0971d9864882b76c4619e00b7c8f4685.png163643500_BotchedCorners2.thumb.png.dd6f8cfff71d43d005381b1036027480.png

     

    I'm trying to establish a workflow where I need only one slicer, Prusa have dropped the ball by messing with filament availability in custom printers (even though I own a Prusa MK3S and buy Prusa filament), there slicer, their rules I suppose.

    Edited by JabbaTheHutt
  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    That is... strange.  Well please don't use vase mode.  Print normal mode, disable top and disable infill.  If it still has issues like this in the corner then people might notice.  But vase mode is less likely to draw the attention of cura developers.

     

    Turn off coasting (as a minimum to see if that fixes this issue), turn off hop and retraction on layer change.  If it's still doing it please post another screen shot (but with colors set to "line type" please).  Also save your project ("file" "save...") and post the project file here.  project files contain your stl, your printer settings, and your cura settings.  So anyone can see exactly what you see.  Which is really useful for debuggers to fix things.

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    Again, please set "color scheme" to "line type".  Those weird moves are almost surely coasting and will show up in blue.  but I want to be sure.  This setting is found in the line just below where it says "PREPARE" and "PREVIEW".

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    So I downloaded your attached file but it doesn't seem to be a project file?  Or maybe I need to install a newer Cura to open it.

     

    Anyway it DID show me your model.  The model has 11 surfaces.  I expected 6 surfaces.  You misunderstood me when I said "cube".

     

    Okay...  let's start over.  There is some problem with communication here.  I didn't describe something properly.

     

    There are 2 ways to achieve what you want.  The "normal" way or the "vase" way.  You are combining the two methods to get a disaster.  You can't combine the two methods.  You have to pick one or the other.

     

    1) Vase way: use either spiralize (not recommended as it is buggy) or disable infill and set top layers and top thickness to zero.  This requires a cube like part!!  Nothing like your model.  Imagine your model but fill it with cement.  Your model should have only 6 sides (like a cube but not necessarily equal length sides).  A cuboid.  So to use this method you must create a new CAD model.

     

    You also need to set your line width to exactly what you want the thickness of your walls to be (e.g. 0.4mm or 0.35mm or 0.5mm all can be achieved with a 0.4mm nozzle).  Set shells to 1 so it only makes one pass.

     

    2) Normal way: use your existing model.  Do not select spiralize.  Do not set infill to zero.  Do not set top thickness to zero.  But do use "print thin walls" and set the line width on the small side of things (0.4mm or 0.3mm maybe).  This will give you weird artifacts like in your screenshot above but I think you just have coasting enabled.  I can't tell because you didn't set color scheme to "line type".

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    ?? - coasting is disabled ... but ...1129903885_botchedcorners4.thumb.png.85a5bc78997821d7deb861ed6dbaffb8.png

    CFFFP_fc1013ac-6491-4ffb-b996-a1b6ad76ad2d.3mf

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    Did you read the entire posting that fast and then post another screen shot that fast?  Did you really read the whole post that fast?  I hadn't even finished re-reading the post.  Yikes.

     

    Okay so when you drag the horizontal slider the whole part goes gray so I can't see what's going on.  Please also move the vertical scroll so there is no gray but I recommend you try method 1 above.  You will get much better results with the printer making the walls in ONE PASS instead of two passes.

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    I'm not getting those coasting lines you seem to be getting.  If it's not coasting it's a similar feature.  I'll try loading a newer cura to see if I can load your settings.  This is method 2 (again, I recommend method 1 if you can pull it off and this geometry, a cube, works well with method 1):

     

     

     

     

    Screenshot from 2020-11-23 09-39-55.png

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    This part is drawn exactly as I expect it printed - the slicer is introducing 'complexity' that does not exist, it is not faithful to the original. I've noted that it creates artifacts in other prints too, just haven't looked this close before.

     

    The project is Cura 4.8.01792482341_botchedcorners5.thumb.png.4fa524661d6afcde8a345b58b30a6e4f.png

     

    Taken from Fusion360, I 'could' create this as a solid and remove infill etc but that's kind of a cheat - I expect the slicer to reproduce what I draw - or am I missing something here.

     

    723528091_botchedcorners6.thumb.png.69cf74dbee118a55d6a3b7775d2cc862.png

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    Okay so I managed to open your project in cura 4.7.1 and I get the same results you got.   Those weird corners are because when you select "print thin walls".  Print thin walls is basically doing a kind of infill pattern (versus a shell pattern where it just traces the outer wall).  The corners are a little thicker maybe because of the rounded corners so the slicer is doing a kind of infill pattern there to get the full corner.

     

    I tried lying about your nozzle width and set it to 0.1mm but it still refuses to print the walls with "print thin walls" disabled.  This seems like a bug but unrelated.

     

    Let's take a step up.  The overall problem is you are trying to print very thin walls.  Cura is not so good at that.

     

    I strongly recommend you go with my solution #1.  I know it seems like a hack but you'll get really nice results and you can keep your rounded corners.

     

    Solution #2 - try squaring off the corners.  That *might* help.  Not sure.

     

    Cura thinks it is being true to your model.  The corners have lots of lines there (lots of extra geometry).  Which is normally fine.  But with "print thin walls" it apparently thinks it needs to print a little extra there to fill those corners out.

     

    You are right - it's not coasting. It's a cross-hatch infill pattern.  I know you disabled infill but this is a "print thin walls" feature.

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    Oops - you don't have rounded corners.  So actually I guess you would *want* rounded corners to avoid that extra movements.  Both on the inside and outside maybe?  The corners are technically thicker so it's printing thicker there.  

  • Link to post
    Share on other sites

    Posted (edited) · unable to slice when: model shell = nozzle size = line thickness

    Starting to understand some cura limitations here - if I uncheck print thin walls it only does two layers ...

     

    For the sake of my test I can go with a solid. There is no complexity in the Fusion drawing, it is simply a box with thin walls that Cura clearly can't handle.

     

    I can confirm that if I send as a solid and print single perimeter with no infill and no top layer that it actually gets it right - but the colour of the box becomes red 'Shell' .. in preview903102061_botchedcorners7.thumb.png.024d51a015dd2ddc829786b5a766a24e.png

     

    on the corners front I need it as per above - square - so that I can assess any impact of ringing / jerk etc etc. Remember this is a test piece so it is important that it prints exactly as drawn, it is to test printer calibration and behaviour - I didn't anticipate it showing up a slicer weakness.

     

    Edited by JabbaTheHutt
    added a footnote re corners
    • Like 1
    Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    Excellent.  Thin walls are just going to be hard.  For all slicers I know of.  Some have special code to deal with thin walls and do one pass but I'm not sure how hacky that code is.

     

    If you are just doing a ringing test then get rid of the bottom layers as well.  That's just a waste of time as that will probably take as long as printing the entire rest of the box.

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    Cura has a bunch of features to mess with ringing (altering jerk and acceleration).  There are some good articles about how to get rid of ringing - basically you first measure the frequency in Hz and turn that into a period and then you make sure that all the acceleration and jerk occurs over an entire period.  If the acceleration is too fast and it happens mostly in the first half of the period time then you get strong ringing but if you spread the acceleration over a whole ringing period it self dampens.

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    And that's why it is imperative to ensure the integrity of the item being printed, for a slicer to introduce or omit elements from a drawing is a failing, and is as much a part of the testing process as the ripples or other defects that the mechanical structure and operation of same may impart.

     

    I get that it is difficult, but that doesn't make it excusable.

     

    Every slicer that I've used has for and against points, I've yet to encounter utopia in a slicer.

     

    I'm now aware of this limitation and will act accordingly but I'd really appreciate it if somebody within Ultimaker development felt able to address this because so far Cura is the best of the bunch.

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness
    42 minutes ago, JabbaTheHutt said:

    for a slicer to introduce or omit elements from a drawing is a failing

    From one point of view it did not.  Your corner was thicker so it did more movements in that region to thicken it up.  You may think of the walls as a constant thickness but if you measure the shortest difference from the inner corner to the outer corner, your part is thicker at the corners.

     

    Know that there another version of Cura that does thin walls SO MUCH BETTER.  That's the version I used above in my only post where I posted an screenshot.  See how nice it looks?  That version comes from here.  I know the author and trust him - a great guy:

    https://github.com/smartavionics/Cura/releases

     

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    If the nozzle simply changes direction Pythagoras will look after the rest ...

     

    But I will try the version linked.

  • Link to post
    Share on other sites

    Posted · unable to slice when: model shell = nozzle size = line thickness

    @gr5 thanks a lot for the hack

     

    Finally, there is a hack.  If you have very simple geometry and you don't need any fill, you can model instead a cube in CAD.  Then uncheck the "infill" and set both "top layers" and "top thickness" to zero.  Voila - a box where the nozzle just does one pass. 

     

    • Like 1
    Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
         
          • Like
        • 18 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    ×
    ×
    • Create New...