Jump to content

CURA 2.4 and Post processing plugins issue


Spilz

Recommended Posts

Posted · CURA 2.4 and Post processing plugins issue

hello,

I wrote a post processing plugin for autolevel.

It works well on CURA 2.1.3, but it's not recognized by CURA 2.4

Is there something to do to add Post processing plugin in CURA 2.4 ?

I just put the .py file in plugin file, as usual, and restart CURA

thanks for your help

  • Link to post
    Share on other sites

    Posted · CURA 2.4 and Post processing plugins issue

    the plugin is to determine the area used by the first layer to optimize auto-leveling

    I never learn python, so I took exemple from other plugins.

    it searches min and max X Y position of G1 command and replace a specific string of the start gcode by the optimized G29 L R F B command

     

    from ..Script import Scriptfrom UM.Logger import Loggerimport reclass G29_PH(Script):   def __init__(self):       super().__init__()   def getSettingData(self):       return {            "label":"G29 by PH",           "key": "G29_PH",           "settings":            {               "AutoLevel":                {                   "label": "G29 by PH",                   "description": "determine Autolevel optimise",                   "type": "boolean",                   "default": False,                   "visible": True               },               "Marge":               {                   "label": "Marge",                   "description": "Marge ajoutee a la zone d'impression pour l'autolevel",                   "unit": "mm",                   "type": "float",                   "default": 2.0,                   "visible": True,                   "enabled": "AutoLevel == True"               },             }           }       }   def getValue(self, line, key, default = None):        if not key in line or (";" in line and line.find(key) > line.find(";") and not ";TweakAtZ" in key and not ";LAYER:" in key):           return default       subPart = line[line.find(key) + len(key):] #allows for string lengths larger than 1       if ";TweakAtZ" in key:           m = re.search("^[0-4]", subPart)       elif ";LAYER:" in key:           m = re.search("^[+-]?[0-9]*", subPart)       else:           #the minus at the beginning allows for negative values, e.g. for delta printers           m = re.search("^[-]?[0-9]+\.?[0-9]*", subPart)       if m == None:           return default       try:           return float(m.group(0))       except:           return default   def execute(self, data):       lines = data[1].split("\n")       data1_temp = ""       bbL = None       bbR = None       bbF = None       bbB = None       layer = -1       marge = self.getSettingValueByKey("Marge")       for line in lines:           if ";LAYER:" in line: #new layer no. found               layer = self.getValue(line, ";LAYER:", layer)           if "G1 " in line and layer == 0 :               x = self.getValue(line, "X", None)               y = self.getValue(line, "Y", None)               if x != None:                   if bbL == None:                       bbL = x                   else :                           if x < bbL:                           bbL = x;                   if bbR == None:                       bbR = x                   else :                       if x > bbR:                           bbR = x;               if y != None:                   if bbB == None:                       bbB = y                   else :                           if y > bbB:                           bbB = y;                   if bbF == None:                       bbF = y                   else :                           if y < bbF:                           bbF = y;       bbL -= marge       bbR += marge       bbF -= marge       bbB += marge       for line in lines:           if "G29 L R F B ;Auto Bed Leveling" in line:               data1_temp += "G29 L" + repr(bbL) +" R" + repr(bbR) +  " F" + repr(bbF) + " B" + repr(bbB) +"; PH Auto Bed Leveling\n"           else:               data1_temp += line + "\n"       data[1] = data1_temp       # "G29 L R F B ;Auto Bed Leveling"       return data

     

    thanks for your help

  • Link to post
    Share on other sites

    Posted (edited) · CURA 2.4 and Post processing plugins issue

    It works well on my MAC with CURA 2.1.3

    but not on my Win10 with CURA 2.4 : the list of post processing plugin show only one plugin when I had the file (normally it shows 4)

    an other issue/question :

    is it normal than even on CURA 2.1.3 the post processing is not saved when I reopen CURA ?

    Edited by Guest
  • Link to post
    Share on other sites

    Posted · CURA 2.4 and Post processing plugins issue

    Hello,

    could you tell me how I could add a python script to cura 2.4 on a Mac.

    I tried to place it in the plugins folder under the cura folder, but won't work.

    It's a python script with works under windows.

    Thank you for your feedback.

    Regards

    Ralf

  • Link to post
    Share on other sites

    Posted · CURA 2.4 and Post processing plugins issue

    It works well on my MAC with CURA 2.1.3

    but not on my Win10 with CURA 2.4

     

    The API has changed between 2.1 and 2.3 - look at existing plugins to see what's changed (getSettingData vs getSettingDataString)

     

    an other issue/question :

    is it normal than even on CURA 2.1.3 the post processing is not saved when I reopen CURA ?

     

    Yes, it is "by design"

  • Link to post
    Share on other sites

    Posted · CURA 2.4 and Post processing plugins issue

    could you tell me how I could add a python script to cura 2.4 on a Mac.

     

    If you are talking about the PostProcessing scripts, on OSX they are in Cura.app/Contents/Resources/plugins/plugins/PostProcessingPlugin/scripts/

  • Link to post
    Share on other sites

    Posted · CURA 2.4 and Post processing plugins issue

     

    could you tell me how I could add a python script to cura 2.4 on a Mac.

     

    If you are talking about the PostProcessing scripts, on OSX they are in Cura.app/Contents/Resources/plugins/plugins/PostProcessingPlugin/scripts/

     

    Where could I find this folder?

    Regards

    Ralf

  • Link to post
    Share on other sites

    Posted · CURA 2.4 and Post processing plugins issue

    Where could I find this folder?

     

    At the place you installed Cura...

    So for most people it would be: /Applications/Cura.app/Contents/Resources/plugins/plugins/PostProcessingPlugin/scripts/ (unless you installed it somewhere else)

  • Link to post
    Share on other sites

    Posted · CURA 2.4 and Post processing plugins issue

     

    Where could I find this folder?

     

    At the place you installed Cura...

    So for most people it would be: /Applications/Cura.app/Contents/Resources/plugins/plugins/PostProcessingPlugin/scripts/ (unless you installed it somewhere else)

     

    ... and where will Cura 2.4 be installed when installed(?) or run from Cura-2.4.0.AppImage-Install (the new Linux installer)?

    Regards, Martin

  • Link to post
    Share on other sites

    Posted (edited) · CURA 2.4 and Post processing plugins issue

    I see no reason why it should be different in 2.4...

    But I can't answer that formally, my personal experience tells me it is not always a good idea to be early adopter of new Cura releases, so I am still with 2.3 for now ;)

    Edited by Guest
  • 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.3 stable released
        In this stable release, Cura 5.3 achieves yet another huge leap forward in 3D printing thanks to material interlocking! As well as introducing an expanded recommended print settings menu and lots of print quality improvements. Not to mention, a whole bunch of new printer profiles for non-UltiMaker printers!
        • 56 replies
      • Here it is. The new UltiMaker S7
        The UltiMaker S7 is built on the success of the UltiMaker S5 and its design decisions were heavily based on feedback from customers.
         
         
        So what’s new?
        The obvious change is the S7’s height. It now includes an integrated Air Manager. This filters the exhaust air of every print and also improves build temperature stability. To further enclose the build chamber the S7 only has one magnetically latched door.
         
        The build stack has also been completely redesigned. A PEI-coated flexible steel build plate makes a big difference to productivity. Not only do you not need tools to pop a printed part off. But we also don’t recommend using or adhesion structures for UltiMaker materials (except PC, because...it’s PC). Along with that, 4 pins and 25 magnets make it easy to replace the flex plate perfectly – even with one hand.
         
        The re-engineered print head has an inductive sensor which reduces noise when probing the build plate. This effectively makes it much harder to not achieve a perfect first layer, improving overall print success. We also reversed the front fan direction (fewer plastic hairs, less maintenance), made the print core door magnets stronger, and add a sensor that helps avoid flooding.
         

         
        The UltiMaker S7 also includes quality of life improvements:
        Reliable bed tilt compensation (no more thumbscrews) 2.4 and 5 GHz Wi-Fi A 1080p camera (mounted higher for a better view) Compatibility with 280+ Marketplace materials Compatibility with S5 project files (no reslicing needed) And a whole lot more  
        Curious to see the S7 in action?
        We’re hosting a free tech demo on February 7.
        It will be live and you can ask any questions to our CTO, Miguel Calvo.
        Register here for the Webinar
        • 18 replies
      • UltiMaker Cura Alpha 🎄 Tree Support Spotlight 🎄
        Are you a fan of tree support, but dislike the removal process and the amount of filament it uses? Then we would like to invite you to try this special release of UltiMaker Cura. Brought to you by our special community contributor @thomasrahm
         
        We generated a special version of Cura 5.2 called 5.3.0 Alpha + Xmas. The only changes we introduced compared to UltiMaker Cura 5.2.1 are those which are needed for the new supports. So keep in mind, this is not a sneak peek for Cura 5.3 (there are some really cool new features coming up) but a spotlight release highlighting this new version of tree supports.  
        • 29 replies
    ×
    ×
    • Create New...