Jump to content

Keywords arithmetic in Cura


0scar

Recommended Posts

Posted · Keywords arithmetic in Cura

I'm aware of the availability of keywords that can be used in G-code that are parsed by Ultimaker Cura on compiling the G-code file.

 

I'm missing a good reference how you can do some basic arithmetic to parse a formula to a value rather than an in-place substitution. E.g. in Slic3r you can use some complex arithmetic and conditional statements to define custom values.

 

In defining a certain speed (in mm/min) based on a travel speed (in mm/sec) in end or start G-code one might to use something like:

 

G1 X0 F{speed_travel}*60*0.75

 

How would you implement this in e.g. an Ultimaker Cura "end G-code" to expand to G1 X0 F5400 (for 120 mm/sec travel speed that is)

 

  • Link to post
    Share on other sites

    Posted · Keywords arithmetic in Cura
    19 minutes ago, 0scar said:

    I'm missing a good reference how you can do some basic arithmetic

     

    Here's the best reference I can do:

     

    "It is not possible to do arithmetic in gcode snippets in Cura"

  • Link to post
    Share on other sites

    Posted · Keywords arithmetic in Cura

    That is definitely an answer! And a great reference for those who seek the same.

     

    I guess this should all be done in a post processing script of your own.

  • Link to post
    Share on other sites

    • 2 years later...
    Posted · Keywords arithmetic in Cura

    @ahoeben I was wondering...

    My StartUp G-Code has purge lines and they work well with PLA and PETG but they are too fast for TPU on my printer.  I had a thought to add a Keyword to alter the print speed of the purge lines to match the print speed setting in Cura.  It appears that there is none for "speed_print_layer_0" in mm/minute.

    The alternative would seem to be adding a copy of my printer definition and altering the StartUp G-Code with the purge line speeds adjusted for TPU.

    What I have hard coded is:

    G1 F1500...

    What I was looking for would be something like:

    G1 F{speed_print_layer_0_mm_min} or some conversion from Print Speed in mm/sec to Print Speed in mm/min.

    Just out of curiosity - is there a way (besides adding a second printer definition)?

  • Link to post
    Share on other sites

    Posted · Keywords arithmetic in Cura

    Out of the box, I don't think there is a way to do this.

    You could do this by manually editing a profile cfg file. Or you could create a postprocessing script that does the multiplication.

  • Link to post
    Share on other sites

    Posted · Keywords arithmetic in Cura

    Thanks @ahoeben.  That's what I was thinking.  All-in-all it's easier (for me) to have a second printer installed in Cura just for TPU.

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