Jump to content

Introducing The Experimental Bridging Settings


burtoogle

Recommended Posts

Posted · Introducing The Experimental Bridging Settings

Is it possible to add intelligent infill direction when bridging?

 

As you can see some areas of this bridge layer will print great where others will struggle!

Capture.thumb.PNG.035d3ccad72bbab25dda25d52e618e85.PNG

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings
    51 minutes ago, Sloppsta said:

    Is it possible to add intelligent infill direction when bridging?

     

    I am still working on handling bridge skins better. There are some changes already done and some I have yet to consider. I will bear your suggestion in mind. Cheers!

  • Link to post
    Share on other sites

    • 1 month later...
    Posted · Introducing The Experimental Bridging Settings

    Hi @SandervG , @Keventurist was the person who started the ball rolling by suggesting that the fan should be able to be increased when printing skin above support - this feature has just made it into the master branch and so should be in the next release. Please credit him when the time comes.

    On 4/21/2018 at 7:25 AM, smartavionics said:

    Hello @Keventurist, thanks for your input. IMHO the skin above support should not be treated like a bridge and I have further Cura mods ready that will stop that happening (along with some other tweaks). But it's an interesting idea (using more fan for the areas above/below support regions and worth trying out. I will look into it.

     

    • Thanks 1
    Link to post
    Share on other sites

    • 9 months later...
    Posted · Introducing The Experimental Bridging Settings
    6 hours ago, phaedrux said:

    Have there been any further improvements or tweaks to the bridging settings? 

     

    No, what would you like to see changed?

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    Acceleration and jerk control over bridging moves would be great. I have some materials that are very springy and pull back on themselves (Polyalchemy Elixir for example) and they tend not to bridge very well when the jerk and acceleration is too high. But reducing the jerk and acceleration for the whole print makes the print take much longer than necessary.

     

    I also have a question about the overhang control. It works very well to slow down on the overhangs, but I thought it would also use the fan speed setting of the bridging parameters, but it doesn't seem to do that. Is that correct?

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    It is straightforward to add accel and jerk settings for bridge walls and skins. Do you really need separate A & J settings for the upper bridge skins or will one pair of A & J values be good for all of the bridge skins?

    I don't mind adding those settings and if you use my releases they could be available soon but the Cura devs seem to have pretty much given up processing contributions so I can't say when (or even if) the new settings would be available in an Ultimaker release.

    • Like 2
    Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    I think one set of values would be fine. It's really just the first bridging layer that needs to be anchored well. If it succeeds the rest will too. 

     

    I've been meaning to try your latest release anyway, so if you do add this, I'll definitely give it a test.

     

    Thanks

    • Like 1
    Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    Hi @phaedrux, I have added A & J settings for bridge walls and skin. Linux build now on Dropbox, Windows build uploading and will be available soon. Please let me know if this works OK for you.

    • Thanks 1
    Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    I'll have to install Cura on my windows machine later to test. I currently use a MacBook for everything except VR.

  • Link to post
    Share on other sites

    Posted (edited) · Introducing The Experimental Bridging Settings

    @smartavionics I haven't tried your build yet, but I just did a print with regular 4.0 sliced on Mac and noticed that the experimental bridging settings don't seem to be applying at all. There didn't appear to be any speed reduction for the bridging layer, nor the 2nd or 3rd. 

     

    There doesn't appear to be any bridging modifications going on at all. It's just using the normal solid infill settings right over top of the infill, which means zero bridging skin actually sticks. At first I just thought it was poor bridging, but then I tried again with a higher solid infill speed and sure enough, that's what it uses.The overhang speed reduction does seem to be working though.

     

    I've attached a .3mf which shows this. You can see that starting on layer 65 where it starts some bridging skins that it's using the same speed as the regular solid infill (90mm/s) instead of the bridging skin setting (35mm/s), this includes the speed of the outline as well. Combined with the lower layer height of 0.15 As you can see in the photo it doesn't work at all.

     

    Disabling the experimental bridging settings has no change on behaviour.

     

    The same settings in Slic3r PE are successful. (35mm/s bridging layer followed by 90mm/s solid infill)

     

    I would have to slow down the solid infill speed dramatically and dramatically increase the infill percentage and increase the number of top layers to get those skins to seal up the top surface.

     

    I'm pretty sure that this is new to 4.0. Bridging seemed to work ok in 3.6 but it's been a while since I've used it and I'm only just now revisiting Cura with 4.0.

     

    I'll see about getting Cura on my windows PC to test if it's the same there.

     

    EDIT: Just tried your build from April 10th on Windows 10 and it appears no bridging parameters are being applied there either.

     

    Also, it's too bad about not being able to build new Mac versions anymore. 😞

     

    IMG_5165.JPG

    CFFFP_ZombieHunterHead_v4_90k3.3mf

    Edited by phaedrux
    new info
  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    @smartavionics first off thanks for an amazing contribution! I've been printing bridge test parts for the last two days just toying around and having some great initial results.

    Where do you maintain your builds you mentioned? I'd like to see what your newest version looks like compared to the Ultimaker build. I checked your git hub, but didn't look like your Cura fork master branch was updated very recently. Are you maintaining these in another branch perhaps?

     

    Also one thing I've been hoping to see is some way to allow Bridge Skin Density above 100% (i.e. allowing overlap). I'm parametrically testing various flow rates, and noticing, at least for my 30mm bridge gap test print, that flow rates well over 100% are working best. By best, I'm trying to achieve as flat and non-stringy bottom to the bridge as possible. With lower flow rates, I can still print flat surfaces, but the bottom of the bridge tends to contain a fair amount of stringy-ness (one or two lines that are detached from the rest of the part). The trouble is that I can only go up to a certain flow rate before my extruder gets backlogged and starts skipping. I'm hoping for an overlap percentage that would bind these detached strings to the rest of the layer via the last line printed.

     

    Maybe this would just end up warping the first layer due to low rigidity and overheating it, but I'd at least like to see how it turns out.

     

    Right now, the 4.0 Ultimaker build is not allowing me to go above 100% overlap, but not sure if your build allows for this, or if implementing something like this would be difficult or not? Is there some other setting in Cura that allows for such overlap that I'm not aware of? Ideally I'd like it to be limited to just the bridge skin, but if I can test the idea out on some small parts it might act as more motivation to implement it in the bridge controls you made. Thoughts?

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    @smartavionics Just as a comparison, here's a picture taken at the same point during the same bridging section done with Slic3r PE. Same speed and layer height settings. Bridging layer at 35mm/s and 98% flow. Subsequent solid infill at 90mm/s

     

     

     

    IMG_5168.JPG

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    Yes, bridging settings are not used for skins over infill or support. I can investigate adding a threshold for the infill density so that when the infill density is lower than the threshold, the skins are printed using the bridge settings. Thanks for the idea.

    • Like 1
    Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings
    5 hours ago, phaedrux said:

    Also, it's too bad about not being able to build new Mac versions anymore. 😞

     

    Yes, that's a shame. The ancient Mac Book I have can build Cura but the releases always crash now. I don't have any other use for the Mac Book so it's not worth me buying a replacement. Mind you, all of my changes are on github so there's nothing stopping anyone else building releases for OS X.

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    Hello @Babaganoosh, thanks for the comment.

     

    3 hours ago, Babaganoosh said:

    Where do you maintain your builds you mentioned? I'd like to see what your newest version looks like compared to the Ultimaker build. I checked your git hub, but didn't look like your Cura fork master branch was updated very recently. Are you maintaining these in another branch perhaps? 

     

    Yes, my Cura, Uranium and CuraEngine forks have mb-master branches which are the latest "released" branches. My builds are always from those branches.

     

    Personally, I have always achieved better results with a reduced skin density for the first bridge layer, having the lines too close together always caused them to get tangled.

     

    Can you achieve a greater flow rate by reducing the speed proportionately so that the extruder rate doesn't increase?

     

    Anyway, I will see if it possible for the bridge skin density to be > 100%.

     

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings
    8 hours ago, smartavionics said:

    Yes, bridging settings are not used for skins over infill or support. I can investigate adding a threshold for the infill density so that when the infill density is lower than the threshold, the skins are printed using the bridge settings. Thanks for the idea.

     

    My mistake, I thought that was already part of the experimental settings. That would be a really great addition. I'm still surprised that's not something that happens with Cura by default.

     

    8 hours ago, smartavionics said:

     

    Yes, that's a shame. The ancient Mac Book I have can build Cura but the releases always crash now. I don't have any other use for the Mac Book so it's not worth me buying a replacement. Mind you, all of my changes are on github so there's nothing stopping anyone else building releases for OS X.

     

    I would love to build an OSX release, but I have no idea how to get started with that. If you can point me in the right direction...

     

    I was able to test the Accel and Jerk for bridging settings and it appears to be working. Now If we can get bridging over infill implemented I'd say it's pretty much perfect.

     

    Thanks for all your hard work on these. Your branch fixes so many of the things that was keeping me from wanting to use Cura.

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    Hi @phaedrux, I have a new Cura build that adds a bridge setting called Bridge Sparse Infill Max Density. When infill has a density less or equal to that, the first skin layer above it will be considered to be unsupported as far as bridging is concerned. Hope this does what you want. Even if multiple bridge skin layers are enabled, only the layer immediately above the infill is affected. I didn't think it would need the layers above to be given the bridge treatment. If you think otherwise, they could be included too.

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    Thanks, I'll try and do some tests tonight and let you know how it goes. If the first bridging layer over the infill is successful I think it should be fine. It has a better chance of working since it's already semi supported unlike true bridges. 

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    @smartavionics So I've done some testing on your latest build with good results. I also have a few issues, questions, and requests.

     

    First, the bridging performance over infill is now very good. I still have some tuning to do, but first few prints were night and day compared to the official cura.

     

    First, here's the .3MF I've been testing with. Test print is an easter bunny chocolate egg dispenser. 0.6 nozzle, 0.3 layer height, 70mm/s ish.

     

    CFFFP_e_egg_dispenser_bunny.3mf

     

    IMG_0660.thumb.JPG.29d2b871d53d51b68e96a11de3232185.JPG

     

    IMG_4972.thumb.JPG.d6173887ac6d843b172bab6430ea7674.JPG

    Bridging over infill is working much better now. That's over 10% gyroid infill. The second layer over the infill was basically 100% sealed up. I did another print with 5% infill and it wasn't quite as good but with some more tuning of the bridging parameters I think I can get it pretty much perfect.

     

    Which leads me to my first question, What is the bridging flow parameter a percentage of? Is it a percentage of the flow rate set in material, or is it a percentage based on 100% flow in the material section?

     

    Next question, The overhang detection and slow down is working well, but it doesn't seem like the bridging fan speed is being applied to these sections? Shouldn't it be?

     

    Next I have a few issues that I'm not sure are related to the bridging over infill or what. 

     

    IMG_5199.thumb.JPG.209ad5a1ebf0934d082538a826d38a41.JPG

    First is that bridging was not being applied over the eye slots here on the bottom of the model. It was just exposed to the internal infil. This did not happen with the official cura 4.0. I tried changing settings to see if I could get it to show up but nothing. Also note the over extrusion. We'll get to that next.

     

    IMG_5197.thumb.JPG.dd15d90e9ec6cdda51b8b2643d8b8cbd.JPG

    Next issue is some excessive over extrusion on these curve sections.The extruder is tuned, and the other parts of the print are not over extruded. This is the base of an internal tube that lets chocolate eggs roll through. It is above the sparse infill. The over extruded sections are made up of very short solid fill zigzag moves and go extremely slowly. The requested speed is 35mm/s and the achieved speed as shown in the Duet Web Control is only 15mm/s or so. So it's not able to get up to speed on the short moves as it seems to be using the slower jerk and accel settings I had set for bridging. Whatever the reason, it just gets all blobbed up and eventually the nozzle catches and causes layer shifts. Perhaps you can tell from the .3mf what settings are being applied here and what would need to change to get the over extrusion under control.

     

    bunnyinfill3.thumb.jpeg.aabb29626cbef2a5a9f6d4fd88827f1d.jpeg

    That appears to be a second layer of bridging being put overtop the first layer.

     

    bunnyinfill2.thumb.jpeg.2226dbd5d3725b8fdabf6773f4180224.jpeg

    bunnyinfill.thumb.jpeg.39e19a97ce33de6af78a60eacb8db2b7.jpeg

    In the preview it seems like it's using the bridging parameters for these solid layers, or at least the speed setting, and maybe the higher flow, even though it applies it to layers that aren't above sparse infill. Maybe my sparse infill threshold values are weird? 

     

    bunnyinfill4.thumb.jpeg.a4d25c1780927a7c9c7cdac6476973ae.jpeg

    By comparison, In the official Cura 4.0 it only bridges on the open section above the bed, and just uses the solid infill speed for the layer bridging over the sparse infill on up until it gets to the top most layer that uses the top infill settings. It still gets broken down into small rows of zig zag and topfill when it gets to those layers.

     

    The issue here is triggered by the geometry of the tube section. It's applied top/bottom layers as well as the perimeter values and additionally some bridging all in tiny sections. It would be great if this situation could be detected and handled a little differently.

     

    bunnyinfill5slicer.thumb.jpeg.d13a6aab9667526f9fe7328ec130b89e.jpeg

    In Slic3r there is the Ensure vertical wall thickness option which replaces the solid layer sections with some gap fill that scrubs along the edge of the perimeter walls to give it a bit more thickness for the vertical section. Also, if there are two sections of solid infill side by side, say top solid fill and top/bottom solid fill, Slic3r will extend the top fill to replace the sectio that would still be internal solid fill. This creates a much larger contiguous area so the zigzags aren't all cramped up and causing over extrusion.

     

    So then, is the bridging over infill setting being applied erroneously in these areas? Is there anything in the existing parameters that can be changed to reduce this over extrusion? Is there any way these situations could be detected and handled in a situation similar to how slic3r handles it?

     

    1340297611_smallholespeed.thumb.jpeg.285c7ff953715e542d4219e42264c2ee.jpeg

    And finally, the small feature speed reduction feature. This circular part is the pin for an print in place hinge that lets the bunny head flip up. It builds up from a cone to a 1mm rod and then back up into another cone that eventually gets bridged over to the rest of the head to capture the hinge. It worked really well up until there was some solid infill in the middle of the small feature. It doesn't seem like the speed reduction is being applied to the solid infill. I've tried increasing the small feature size and it does change what gets affected, but it seems to only apply to perimeters. Needless to say, even though the perimeters print nicely, once it gets to the infill at 70mm/s it breaks the pin instantly. Could the small feature detection be expanded to include the entire island if the whole size fits within the feature size?

     

    I think that's all I had. Sorry for the super long report.

     

    Thanks for all your hard work on these builds. You've managed to make a sizeable dent into my feature wish list.

    IMG_0660.JPG

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings
    On 4/13/2019 at 12:27 AM, phaedrux said:

     

    My mistake, I thought that was already part of the experimental settings. That would be a really great addition. I'm still surprised that's not something that happens with Cura by default.

     

     

    I would love to build an OSX release, but I have no idea how to get started with that. If you can point me in the right direction...

     

    I was able to test the Accel and Jerk for bridging settings and it appears to be working. Now If we can get bridging over infill implemented I'd say it's pretty much perfect.

     

    Thanks for all your hard work on these. Your branch fixes so many of the things that was keeping me from wanting to use Cura.

     

    @phaedrux, you can find the build instructions here. Optionally you could run from source as per here.

  • Link to post
    Share on other sites

    Posted (edited) · Introducing The Experimental Bridging Settings
    On 4/12/2019 at 4:21 PM, smartavionics said:

    Hello @Babaganoosh, thanks for the comment.

     

     

    Yes, my Cura, Uranium and CuraEngine forks have mb-master branches which are the latest "released" branches. My builds are always from those branches.

     

    Personally, I have always achieved better results with a reduced skin density for the first bridge layer, having the lines too close together always caused them to get tangled.

     

    Can you achieve a greater flow rate by reducing the speed proportionately so that the extruder rate doesn't increase?

     

    Anyway, I will see if it possible for the bridge skin density to be > 100%.

     

     

    Got it! I also found your dropbox link to the builds in another thread. I won't build my own for now as the dependencies list for Windows looks monstrous. Though if you can't find a means to make the bridge density >100% I may someday take a peek under the hood and see if I can figure something out.

    I never had much tangling issues regardless of settings, but based on the few numbers I've seen thrown around on the thread, it looks like everyone is trying to print MUCH faster than I am. I'm using 0.1mm thickness, and speeds around 15 mm/s.

    I did a lot of testing on a standard bridging geometry, but after dialing these settings down, I tried on the actual part I'm making, and the settings didn't adapt very well. I'll keep playing around with more specific test parts to try to dial this on in. The troublesome part is kind of like a gear with a flat top, so there are a lot radial patterned bridges. Since the bridging is all linear fill, sometimes lines will take a a very short bridge path and others will take very long paths. You mentioned this earlier, but some control over the pattern might help here. Something like a radial pattern, though I don't see anything similar within the existing bottom/top layer patterns that would achieve this. It may be quite difficult to implement in general as well since it would involve calculating a centroid for each layer. Also it might result in a lot of excess build up material at the centroid if the nozzle passes by there so many times. I'm not sure of an ideal solution yet on this one, but your builds and bridge settings are definitely helping get better results compared to the standard Ultimaker build. Thanks!

    Edit: I found an existing setting that might be useful for this. The "Extra Skin Wall Count" would allow me to bridge all the outer supports first by adjusting the number of wall lines to match the support dimensions, then bridge the skin between. This works well for the first layer bridge, but this has two drawbacks. I don't want those extra walls on my actual top and bottom layers, and I'm noticing that if you print all bridge layers like this, instead of just the first, then it lacks compressional integrity, as you can essentially punch out the skin portion since no lines were printed from outer wall to outer wall. I can update some photos of this if thats not clear, but ideally the bridge settings would allow for a total wall count for each layer (I know, more settings). 

     

    bridge.PNG

    supports.PNG

    Edited by Babaganoosh
  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings
    3 hours ago, Babaganoosh said:

     

    @phaedrux, you can find the build instructions here. Optionally you could run from source as per here.

    Thanks, i'll look into that. @smartavionics Once I have cura-build setup, how do I build your version?

  • Link to post
    Share on other sites

    Posted · Introducing The Experimental Bridging Settings

    Hello @Babaganoosh, here's an object I have used for testing the bridging. To ensure that the skin areas are aligned in the radial direction, they must not meet in the centre so that each skin area remains separate. Obviously, you can't do the same trick with the object you show above.

     

    Note that this is a very old image, the skin in the centre doesn't look right but the other skin areas look OK.

     

    Screenshot_2018-07-03_16-11-06.thumb.png.43fe654e2c86810554e481333ead3d8d.png

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