Jump to content

Cura Engine + Desktop Giving Different Results


RandyRascal57

Recommended Posts

Posted · Cura Engine + Desktop Giving Different Results

Good day, 

Long time "lurker" but new member to the forum. Also a long time CURA user. 

I have come across the need to start using the CURA Engine (Console) version to slice and extract the print time and some other material/dimensional data information from a large list of STL, OBJ, and 3MF files. I am using the output from the CURA Engine as a check against the desktop version to make sure I am getting the same numbers for a few of the files in the list as a check before processing all the files. The process I have used is to get a log file from a sliced part in the desktop version with all the parameters that I need and then pass that log file to the CURA Engine to have the same parameters for the slicing of the rest of the files in the list. 

I have noticed that there are some files that give exactly the same print time, material volume, and support volume results for both CURA Engine and Desktop versions, but then there are other files that do not give any of the same results between CURA Engine and desktop using the same log file and print parameters? Am I missing something or doing something wrong by using this process? 

Any help would be greatly appreciated!

 

Thank you, 

Randy

  • Link to post
    Share on other sites

    Posted · Cura Engine + Desktop Giving Different Results

    If you use the settings as printed in the logs to start the engine than those results should be the same.

     

    Could you provide us with a project file of one of those models where the estimates are different?

  • Link to post
    Share on other sites

    Posted (edited) · Cura Engine + Desktop Giving Different Results

    nallath, thanks for the reply!

     

    22 hours ago, nallath said:

    Could you provide us with a project file of one of those models where the estimates are different?

     

    Sure, I will give you two examples... I am using CURA 4.0.0 Extruder 1: Part material PLA 1.25g/cm^3, Extruder 2: Support material PLA 1.25g/cm^3 for both. curaprofile attached. I have followed the exact same procedure for both of these files. 

    1.) Here is the first example that I did that I got exactly the same results from the CuraEngine and the Desktop Version:

    File: Box Version 2.stl
    Log file: Box Version 2 log file.log

    G code: Box Version 2 gcode.gcode
    Desktop Results: 

    Extruder 1: 66g part material
    Extruder 2: 1g support material
    Print Time: 6 hours 30 mins 
    1586457835_BoxVersion2CURADesktopSlice.thumb.png.b922f68fb564adba4d49c2f0ca13bf1f.png

    CURAEngine Results:
    Extruder 1: 53.09cm^3 * 1.25g/cm^3 = 66.36g part material
    Extruder 2: 0.44cm^3 * 1.25g/cm^3 = 0.55g support material
    Print Time: 6 hours 30 mins 14 sec

    1181651467_BoxVersion2CURAEngineSlice.PNG.975e9c21ebcbac7bd03fe2d1ad66902c.PNG


    From the results above we can see that they are the same! 

     

     

    2.) Here is the second example that I did that I got completely different results from the CuraEngine and the Desktop Version:

    File: Kimatica Mask.stl
    Log file (same as above, or at least it should be according to a compare with notepad++): Kimatica Mask log file.log

    G code: Kimatica Mask gcode.gcode

    Desktop Results: 

    Extruder 1: 94g part material
    Extruder 2: 48g support material
    Print Time: 21 hours 16 mins 

    1709978691_KimaticaMaskCURADesktopSlice.thumb.png.1dbf035b464063b6d9ef2e4a3287dac5.png

    CURAEngine Results:
    Extruder 1: 27.46cm^3 * 1.25g/cm^3 = 34.33g part material
    Extruder 2: 21.31cm^3 * 1.25g/cm^3 = 26.64g support material
    Print Time: 8 hours 36 mins 32 sec

    1654241132_KimaticaMaskCURAEngineSlice.PNG.b388ed5f48225a861cbf5593770f41de.PNG

     

    From the results above we can see that they are not the same using the exact same process for both files.

     

    Thanks for your help,

    Randy
     

    Box Version 2 CURA Desktop Slice.png

    Box Version 2 CURAEngine Slice.PNG

    Kimatica Mask CURA Desktop Slice.png

    Kimatica Mask CURAEngine Slice.PNG

    Box Version 2.stl Box Version 2 log file.log Box Version 2 gcode.gcode Kimatica Mask.stl Kimatica Mask log file.log Kimatica Mask gcode.gcode

    Custom Profile Setup.curaprofile

    Box Version 2 CURA Project File 3mf.3mf Kimatica Mask CURA Project File 3mf.3mf

    Edited by RandyRascal57
  • Link to post
    Share on other sites

    Posted · Cura Engine + Desktop Giving Different Results

    Been doing some more testing....

    It seems to me that the engine is doing exactly what it is told to do, which makes me think there is some kind of pre-processing to the file in the CURA front end before it is sent to the CURAEngine? About 50% of the files I have tested so far give the same results between CURA desktop and CURAEngine. The remaining 50% are split, where 25% give the proper material volume but incorrect support volume while the remaining 25% DO NOT give any correct volumes or print times? 

    Any ideas??

    Thanks, 
    Randy

  • Link to post
    Share on other sites

    Posted · Cura Engine + Desktop Giving Different Results

    The frontend does re-position the model so that all of it is above the build plate. Anything below the buildplate is cut off by Cura.

     

    That would explain why it does work for some models (eg; those models had no vertices below the buildplate).

     

     

    • Like 1
    Link to post
    Share on other sites

    Posted · Cura Engine + Desktop Giving Different Results

    nallath, 

    Thank you for the response! A bit more digging with the right guidance I was able to find the answer:

    https://github.com/Ultimaker/CuraEngine/issues/632

    The only issue I am now having is with models that have been exported in a unit other than mm... for example cm or inches. Is there a command or something for the CURAEngine side of things to scale the model before it is sliced with CURAEngine? 

    Thanks for your help again,

    Randy

    • Like 1
    Link to post
    Share on other sites

    Posted · Cura Engine + Desktop Giving Different Results

    Another thing I noticed is that CURAEngine seems to have a difficult time loading particular models. Using the desktop version the attached model will load and slice just fine, but using the Command line, the CURAEngine just gives the error: 'not able to load model 20 hex3d-hair-unicorn-singleextrusion.stl' There seem to be about a 5% fail rate for the CURAEngine model load?

    Any help wit this would be greatly appreciated as well.

     

    Thanks,

    Randy

    20 hex3d-hairy-unicorn-singleextrusion.stl

  • Link to post
    Share on other sites

    Posted · Cura Engine + Desktop Giving Different Results

    Well, the frontend and the engine have different model loading code. The backend one isn't used that often, so I'm not that suprised that it works less well.

    As for the scaling, it's possible to provide a homogenous transformation matrix with the model which allows for scaling.

  • Link to post
    Share on other sites

    Posted · Cura Engine + Desktop Giving Different Results
    21 hours ago, nallath said:

    Well, the frontend and the engine have different model loading code. The backend one isn't used that often, so I'm not that suprised that it works less well.


    So that would mean that the model that is "passed" to the CURA Engine from the front end of CURA  is technically not the same model that you would load with the command line using the -l command? Is that why OBJ and 3MF files won't load directly from the command line but will load and slice from the CURA front end? If so, this must mean a temporary part file is created after any pre-processing done by the front end of CURA and passed through by the socket? Or would that be an incorrect assumption to make?

     

    21 hours ago, nallath said:

    As for the scaling, it's possible to provide a homogenous transformation matrix with the model which allows for scaling.

     

    Hmm.. This is something that would be new for me, do you have any resources or guidance on where to start with that?

    Thanks,
    Randy.

  • Link to post
    Share on other sites

    Posted · Cura Engine + Desktop Giving Different Results
    On 7/30/2019 at 7:25 AM, RandyRascal57 said:

    So that would mean that the model that is "passed" to the CURA Engine from the front end of CURA  is technically not the same model that you would load with the command line using the -l command?

    Correct. The front-end loads the models and puts them in memory. The data that is in memory is sent to the engine.

     

    On 7/30/2019 at 7:25 AM, RandyRascal57 said:

    Is that why OBJ and 3MF files won't load directly from the command line but will load and slice from the CURA front end?

    Yes

     

    On 7/30/2019 at 7:25 AM, RandyRascal57 said:

    If so, this must mean a temporary part file is created after any pre-processing done by the front end of CURA and passed through by the socket?

    There is a bit more than just that going on, but that's the gist of it yeah.

    There are a few settings that are only used when slicing from the comand line interface (you set them the same way as you set the other ones). You can find them in the fdmprinter.def.json file in the "command_line_settings" category

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