Jump to content

Is there a way to force Cura to print a single inner wall?


AirBronto

Recommended Posts

Posted (edited) · Is there a way to force Cura to print a single inner wall?

I am using Cura 3.3.1.  I've attached my settings export and the STL that I'm trying to print to this post.  The problem I'm noticing starts on layers 3+.

 

I print with a 0.8mm nozzle and a 1mm line width, and for me a wall thickness of 3mm is about perfect.  The issue I'm running into is that Cura 3.3.1 doesn't seem to want to let me print a single inner wall.  I set my outer walls to 1mm and inner walls to 1mm, and it skips the inner wall entirely:

 

5DFrzEF.png

 

 

If I set the inner wall to something slightly less than 1mm (0.999mm), then it will generate two inner walls, but it refuses to print it in a single step.  This is close to what I want but I don't want it to print the second nearly-invisible inner wall:

 

NcbT2wu.png

 

To see the problem I'm seeing, import the attached STL into Cura, slice it, and starting on layer 3 or 4 hit the 'Play' button to watch the extruder path.  I can't figure out how to show this in a picture so I'll just describe it.  What happens is that Cura prints the first inner wall at 0.999mm width, but since the wall in the model is actually 1mm, Cura thinks that it's missing 0.001mm.  Cura then dutifully traces back over the wall and tries to print at 0.001mm width, leading to an extrusion that is almost entirely invisible.  This causes my prints to take much longer than they should because Cura essentially has to trace over each inner wall twice, even though it only extrudes on the first pass.  This is a sample of the GCODE that it generates, you can see how the first perimeter extrudes a normal amount of material, but the second perimeter extrudes essentially nothing:

;TYPE:WALL-INNER FIRST PASS
;This is the first pass, notice how the E-rate is
;is multiple millimeters
G1 E1574.51586 ;Adjusted e by 0.21169mm
G1 F1860 X181.005 Y50.646 E1612.09411
G1 X181.005 Y127.656 E1629.9566
G1 X18.995 Y127.656 E1667.53486
G1 X18.995 Y50.646 E1685.39735

You can see the total amount extruded for the first pass of the inner wall is expected, many millimeters of filament is extruded.  However, this is the GCODE from the second extrusion immediately after this one:

 

;Whereas this is the second extrusion, and over the
;course of the entire perimeter it extrudes less
;than 2mm total
G1 F1860 X19.005 Y127.646 E1685.8477
G1 X180.995 Y127.646 E1686.37676
G1 X180.995 Y50.656 E1686.627
G1 X19.005 Y50.656 E1687.15606

 

Checking and unchecking all the Thin-Wall settings don't appear to have any effect.  Changing the outer wall overlap settings don't either.  It doesn't seem like Cura will let you print an infill without also printing an inner wall, so I can't seem to trick Cura into printing only the outer wall and then setting the rest as infill.

 

Is there a setting that I'm missing here?  I just want to print a single inner wall, but from everything I can see Cura only wants to print out even-numbers of inner walls.  I understand that for smaller nozzles you probably wouldn't want to do this, but for larger ones it saves a lot of time and material if I can configure Cura to print this way.

Cura_1mm_Test_20180526.curaprofile

Accessories_Tray_v3.stl

Edited by AirBronto
  • Link to post
    Share on other sites

    Posted · Is there a way to force Cura to print a single inner wall?

    Hi, this is a fundamental problem that Cura has. It can only print an even number of walls. The wall overlap compensation (when enabled) tries to reduce the width of walls that can't fit in the space available but the implementation is less than perfect and so the width of the overlap compensated lines can be wrong in places. Furthermore, in the situation where the last wall is thinned down to nothing (as in your example), Cura still tries to output a wall so the nozzle will travel around the wall path extruding very little. Depending on your extruder resolution this can make quite an ugly print.

     

    I currently have a PR (pull request) on the CuraEngine to add an option to replace lines whose flow is below a threshold value (configurable) with travel moves (retraction optional). This provides a "band aid" solution to the problem you are suffering from. The PR has yet to be accepted but if it is (or something similar) then there will be a solution in a future release.

     

    I hope this is helpful.

    • Like 2
    Link to post
    Share on other sites

    Posted · Is there a way to force Cura to print a single inner wall?

     

    31 minutes ago, smartavionics said:

    Hi, this is a fundamental problem that Cura has. It can only print an even number of walls. The wall overlap compensation (when enabled) tries to reduce the width of walls that can't fit in the space available but the implementation is less than perfect and so the width of the overlap compensated lines can be wrong in places. Furthermore, in the situation where the last wall is thinned down to nothing (as in your example), Cura still tries to output a wall so the nozzle will travel around the wall path extruding very little. Depending on your extruder resolution this can make quite an ugly print.

     

    I currently have a PR (pull request) on the CuraEngine to add an option to replace lines whose flow is below a threshold value (configurable) with travel moves (retraction optional). This provides a "band aid" solution to the problem you are suffering from. The PR has yet to be accepted but if it is (or something similar) then there will be a solution in a future release.

     

    I hope this is helpful.

     

    That is extremely helpful, thank you!  I found your PR on GitHub, it looks like it's exactly what I want.  Fingers crossed that it gets implemented soon

    • Like 1
    Link to post
    Share on other sites

    • 3 months later...
    • 2 weeks later...
    Posted · Is there a way to force Cura to print a single inner wall?
    Quote

     

    Hi

     

    I am using the lates BETA 3.5 released 9/18/2018 

     

    I am experiencing still the same issue or a similar issue, I have 2 outer walls and 1 inner wall, but the one inner wall gets a second pass with barely any extrusion at all, it is unnecessary as I can see the total 3 walls perfectly touching each other without gaps, how I noticed the behaviour or how it has created an issue for me is in the transition to the next layer, the nozzle has very little pressure after that unnecessary last pass and the new outer wall ends up starting under extruded. 

     

    I have tried printing inner walls first and outer walls first but either way before the outer wall gets printed there is a barely extruded inner wall. I have also turned off compensation but this only makes the last unnecessary pass still happen with unnecessary extrusion and pressure builds up on the nozzle. 

     

    I have no idea how to tell CURA to skip the unnecessary compensated inner wall with barely any extrusion

     

    Hope there is an update soon.

     

    I can post a video as I don't think images show the issue, 

     

    Thanks,

     

     

  • Link to post
    Share on other sites

    Posted · Is there a way to force Cura to print a single inner wall?

    Hello @YairHH, as mentioned above, Cura always prints walls as pairs. Also, as mentioned above, there is now a setting that will not print walls when their flow has been reduced to below a threshold value that you can set. So the solution to the odd number of walls problem is to enable the overlap compensation and also set the wall min flow threshold to something like 20.

    • Like 1
    Link to post
    Share on other sites

    Posted · Is there a way to force Cura to print a single inner wall?

    Thanks so much, I did not had that setting visible but thanks to your keywords I found it, AMAZING. Solved.

    Posting a photo in case its helpful to anyone else. 

    1535981838_Various3.jpeg.b2662eebb345d54aba878d50bea54db7.jpeg

    • Like 1
    Link to post
    Share on other sites

    • 4 months later...
    Posted · Is there a way to force Cura to print a single inner wall?

    Hi there,

     

    I've been having similar issues with a particular model. It's only 1 wall thick and I've tweaked the line width to the nearest 0.01mm so it's perfectly 1 line. The minimum wall flow has helped reduce the print time by turning the fake wall into a travel but it still feels broken.

     

    image.thumb.png.91821ecb976f6af790e7fa68397b9c03.png

     

    My expectation was that the nozzle would move from A to B on one layer and then move from C to D on the following layer. However, every layer prints as A to B followed by a travel from C to D. How on earth is this the "shortest" z seam alignment? Why does each layer have to start at A?

  • Link to post
    Share on other sites

    • 1 year later...
    Posted · Is there a way to force Cura to print a single inner wall?

    Hi. It's now cura 4.7 and this issue is still ongoing; there's a requirement for minimum wall flow stating you must print outer walls first, and that's terrible. I dont' want that. Is there any reason why it can't just underextrude that inner wall for 3 walls total?

    • Like 1
    Link to post
    Share on other sites

    • 1 year later...

    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...