Jump to content
DaHai8

Cura 2.3 Beta Awesomeness and Some Issues

Recommended Posts

Posted · Cura 2.3 Beta Awesomeness and Some Issues

Thanks for sharing all of your feedback guys! It is really valuable!

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

Note: Cura should be quicker to start after the first time (because it does not need to parse all machine definitions again).

 

It still takes about 20 seconds to parse all the machine profiles on startup.I've restarted at least a dozen times without changing anything.

Also, where are new machine profiles now?

I want to add my custom .stl bed back to my Aurora A3 profile like I had in 2.1.x

Thanks!

Edited by Guest

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

Also, where are new machine profiles now?

I want to add my custom .stl bed back to my Aurora A3 profile like I had in 2.1.x

 

Uuh should be in the same spot. Don't think we changed that.

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

 

@ Issue6: that´s really bad as you have no indication what´s wrong. I used the ShowLayer Plugin all the time but it´s also not compartible any more...

 

I can help with that, now that I'm fully learned in the ways of Cura 2.3 Post Processing Plugerins :)

 

Thank you for the offer :-)

I tried myself to modify the script made from Amedee based on the stuff from Discostu to get it running, but without success...

Maybe you find the mistake... currently, Cura just stops loading the plugin...

 

# ShowLayer script - Show current layer on the controller## This script is a quick migration of the ShowLayer plugin for legacy Cura.# # This script is licensed under the Creative Commons - Attribution - Share Alike (CC BY-SA) terms# Author: Philippe Vanhaesendonckfrom ..Script import Scriptclass ShowLayer(Script):   def __init__(self):       super().__init__()          def getSettingDataString(self):       return """{            "name":"Show Layer",           "key": "ShowLayer""metadata":{},           "version": 2.3,{}       }"""      def execute(self, data):       count = "-"       for index, layer in enumerate(data):           new_layer = ""           lines = layer.split("\n")           for line in lines:               if line:                   new_layer += line + "\n"                   if line.startswith(";LAYER_COUNT:"):                       count = line[13:].rstrip()                   if line.startswith(";LAYER:"):                       this_layer = int(line[7:].rstrip()) + 1                       new_layer += "M117 Layer {0}/{1}...\n".format(this_layer, count)           data[index] = new_layer       return data

 

Edited by Guest

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

Try changing the string to return to:

 

return """{           "name": "Show Layer",           "key": "ShowLayer",           "metadata": {},           "version": 2,           "settings": {}       }"""

 

So now i get: "M117 Layer 1/325..." in the g-code. Is that what you wanted?

Edited by Guest

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

Three things:

1. You need 'Settings:' in the GetSettingDataString(self)

2. Need a comma after ""key": "ShowLayer"

3. This is new: Version is an INT. Can't be a float :(- I just discovered that!

 

def getSettingDataString(self):       return """{           "name":"Show Layer",           "key": "ShowLayer",           "metadata":{},           "version": 3,           "settings":           {           }       }"""

 

That should do it.

Ah, Nallath beat me to it! :)

Edited by Guest

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

The log is quite helpful in this regard, it will tell you what went wrong with parsing the script.

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

 

Also, where are new machine profiles now?

I want to add my custom .stl bed back to my Aurora A3 profile like I had in 2.1.x

 

Uuh should be in the same spot. Don't think we changed that.

 

Well, I'm confused. Cura 2.1.x had:

 

C:\Program Files\Cura 2.1\resources\machines

 

But there is no 'machines' folder in 2.3, instead it is called

 

C:\Program Files\Cura 2.3\resources\definitions

 

And there is nothing in it dated after 8/31/2016, and I've built and rebuilt my Aurora .json profile at least 6 time today.

I've even done a Windows search of my entire system for any file named *.json dated today and nada/nothing/zip/ziltch/zero...

So I'm thinking you guys are doing some sort of supernatural magik or something... :)

Edited by Guest

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

Guys, you're great!

THANKS :-)

 

Tried, but unfortunately Cura stoped loading so it is not only this issue...

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

The log is quite helpful in this regard, it will tell you what went wrong with parsing the script.

 

Actually it doesn't have anything in it regarding a bad .py plugin.

It doesn't even list it as being read.

When it failed on ShowLayer, this is all that was in cura.log at that section:

 

2016-09-02 22:53:29,133 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (_createView [153]): Creating post processing plugin view.2016-09-02 22:53:29,151 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: BQ_PauseAtHeight2016-09-02 22:53:29,163 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: LayerNumbers2016-09-02 22:53:29,175 - WARNING - D:\2.3\build\inst\lib\python3.4\site-packages\UM\Settings\ContainerRegistry.py (addContainer [218]): Container of type  and id 310609456 already added2016-09-02 22:53:29,175 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: PauseAtHeight2016-09-02 22:53:29,187 - WARNING - D:\2.3\build\inst\lib\python3.4\site-packages\UM\Settings\ContainerRegistry.py (addContainer [218]): Container of type  and id 299400888 already added2016-09-02 22:53:29,188 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: PauseAtLayer2016-09-02 22:53:29,251 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (_createView [153]): Post processing view created.

 

And when it works, the plugin does show up.

 

2016-09-02 22:55:30,078 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (_createView [153]): Creating post processing plugin view.2016-09-02 22:55:30,095 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: BQ_PauseAtHeight2016-09-02 22:55:30,107 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: LayerNumbers2016-09-02 22:55:30,121 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: PauseAtHeight2016-09-02 22:55:30,134 - WARNING - D:\2.3\build\inst\lib\python3.4\site-packages\UM\Settings\ContainerRegistry.py (addContainer [218]): Container of type  and id 319720528 already added2016-09-02 22:55:30,134 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: PauseAtLayer2016-09-02 22:55:30,147 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: ShowLayer2016-09-02 22:55:30,171 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: TweakAtZ2016-09-02 22:55:30,192 - WARNING - D:\2.3\build\inst\lib\python3.4\site-packages\UM\Settings\ContainerRegistry.py (addContainer [218]): Container of type  and id 301187368 already added2016-09-02 22:55:30,192 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (loadAllScripts [103]): Begin loading of script: WoodGrain2016-09-02 22:55:30,254 - DEBUG - C:\Program Files\Cura 2.3\plugins\PostProcessingPlugin\PostProcessingPlugin.py (_createView [153]): Post processing view created.

 

But if it fails on the load, there are no messages or even the plugin name it died on and it doesn't process any further plugin files in that folder.

However, if it does successfully load the plugin, and that plugin crashes later on execution, you do get nice debug info in cura.log on where and why it died.

Edited by Guest

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

I have no info what´s wrong, it just has no been loaded...

DaHai8, How have you managed to get it loaded?

Edited by Guest

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

Found my Aurora A3 printer!

It's in:

 

C:\Users\[username]\AppData\Local\cura\machine_instances\Prusa+i3.stack.cfg

 

And it contains:

 

[general]version = 2name = Aurora A3id = Prusa i3containers = Prusa i3_current_settings,prusa i3_my normal quality,normal,empty_material,Prusa i3_variant,prusa_i3,[metadata]type = machine

 

Which points to the 'variants' folder in that same location as well as the 'quality' folder.

So, with Cura 2.3, its no longer a .json file, its a .cfg file, and its in a couple of pieces in the 'AppData/Cura' folder. On the one had, this is great (seriously) because you're kept out of the 'c:\program files' where users shouldn't be making changes anywhere....but now I gotta figure out how these .cfg files work so I can put my 'Aurora_A3.stl' mesh back in! :(

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

Hi

what file/settings do i need to change so i can set RETRACTION SPEED to 70mm/s currently limited to 25 for a custom machine setup

Using a BigBox printer with titan feeder, 60-70mm/s for these printers is stranded..

Looking through the file (fdmprinter.def.json) maximum is defined as (machine_max_feedrate_e) now i am stuck

Edited by Guest

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

I have no info what´s wrong, it just has no been loaded...

DaHai8, How have you managed to get it loaded?

 

I'm gonna tear my eyes out! I can't find anything wrong with it now, but it just won't load!

I deleted the one that was working, but I luckly handn't emptied my recycle bin.

So here's the working copy, in full:

 

# ShowLayer script - Show current layer on the controller## This script is a quick migration of the ShowLayer plugin for legacy Cura.# # This script is licensed under the Creative Commons - Attribution - Share Alike (CC BY-SA) terms# Author: Philippe Vanhaesendonckfrom ..Script import Scriptclass ShowLayer(Script):   def __init__(self):       super().__init__()   def getSettingDataString(self):       return """{           "name":"Show Layer",           "key": "ShowLayer",           "metadata":{},           "version": 2,           "settings":           {           }       }"""   def execute(self, data):       count = "-"       for index, layer in enumerate(data):           new_layer = ""           lines = layer.split("\n")           for line in lines:               if line:                   new_layer += line + "\n"                   if line.startswith(";LAYER_COUNT:"):                       count = line[13:].rstrip()                   if line.startswith(";LAYER:"):                       this_layer = int(line[7:].rstrip()) + 1                       new_layer += "M117 Layer {0}/{1}...\n".format(this_layer, count)           data[index] = new_layer       return data

 

I'm gonna compare and contrast and try to see what's different. But this one works for me.

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

My Bad: 'version' must be 2

I guess that's the format version of the Setting Data, and NOT the version of your plugin!

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

 

 So, it looks like slicing fails when the "machine center is zero" is checked.

 

I just tried this from source and I couldn't reproduce it. Could mean that someone already fixed it. Could you also give me the logs? That way I can verify if your issue is actually solved.

 

Here is a relevant line from the log:

2016-09-02 22:06:29,601 - DEBUG - UM/Backend/Backend.pyc (_backendLog [88]): [backend] Assertion failed: (false && "We should have returned already before here!"), function insert, file /Users/Ultimaker/build/2.3/build/CuraEngine-prefix/src/CuraEngine/src/utils/SparseLineGrid.h, line 112.

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

My Bad: 'version' must be 2

I guess that's the format version of the Setting Data, and NOT the version of your plugin!

 

Stange - I copied the code and gave it a try but again without luck. it stops loading right after the "pause at heigth" plugin...

@nallath, is there a way to debug plugins?

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

I tried editing fdmprinter.json by adding another extruder_train but after that it just ditches all the definitions upon launching Cura. I also added two files for the extruders folder that corresponded with those defined in the fdmprinter.json. No results.

So, am I missing something or that just isn't an option for now?

I'm also trying to add a custom machine with dual extrusion. Here's what I've tried so far:

https://ultimaker.com/en/community/22409-setup-custom-dual-extrusion-machine-in-cura-23-beta

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

Also regarding "3. Doesn't understand Cura 2.1.3 machine .json files." It seems like 2.3 doesnt understand any custom .json files, even if they are modified versions of the ones in the 2.3 resources folder. Adding new files mades no change in the "add  printer" menu, and modifying the ones in there makes them disappear from "add printer".

It seems like it is set up to only add custom printers using the "Custom FDM Printer" option inside Cura. If this is the case, then it should include a way to setup a custom printer inside of Cura with the full range of features, namely dual extrusion.

For more about what I have tried regarding this see my post above

Edited by Guest

Share this post


Link to post
Share on other sites
Posted (edited) · Cura 2.3 Beta Awesomeness and Some Issues

Also regarding "3. Doesn't understand Cura 2.1.3 machine .json files." It seems like 2.3 doesnt understand any custom .json files, even if they are modified versions of the ones in the 2.3 resources folder. Adding new files mades no change in the "add  printer" menu, and modifying the ones in there makes them disappear from "add printer".

It seems like it is set up to only add custom printers using the "Custom FDM Printer" option inside Cura. If this is the case, then it should include a way to setup a custom printer inside of Cura with the full range of features, namely dual extrusion.

For more about what I have tried regarding this see my post above

Have you also checked the linked extruder .json in "extruders" folder?

They are linked via "machine_extruder_trains" e.g.

"machine_extruder_trains":

       {

           "0": "ultimaker_original_dual_1st_CE",

           "1": "ultimaker_original_dual_2nd_CE"

       },

Those referenced files have to be located in in "extruders" folder and contain all relevant settings for each nozzle/extruder.

you have to modify those setup files according to your printer...

I generated my own version for UMO dual with a different nozzle setup and everythings works as itended.

Edited by Guest

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

Have you also checked the linked extruder .json in "extruders" folder?

They are linked via "machine_extruder_trains" e.g.

"machine_extruder_trains":

       {

           "0": "ultimaker_original_dual_1st_CE",

           "1": "ultimaker_original_dual_2nd_CE"

       },

Yeah, as I explained in the other post that you already found, I did this too. It's good to hear that someone else got it to work though. I'll go back and double check everything to be sure I set it up right. I'll also try using the "ultimaker_original_dual" files as a template rather than the "prusa i3" ones and see if that works. I'll update in the other forum post.

Thanks!

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

It is very easy to miss a comma or have an extraneous comma in JSON files, and that will make the respective machine not show up.

A validator like http://jsonlint.com/ can be helpful

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

A future version of the Machine Settings screen will probably support multiextrusion printers (and the UM2+), but I cannot make any promises for the final version of 2.3.

Share this post


Link to post
Share on other sites
Posted · Cura 2.3 Beta Awesomeness and Some Issues

It is very easy to miss a comma or have an extraneous comma in JSON files, and that will make the respective machine not show up.

A validator like http://jsonlint.com/ can be helpful

Thanks! I double checked my work and got it going. Posted an update in the tread I started specifically addressing setting up a custom machine with dual extrusion.

Share this post


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

×
×
  • Create New...

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!