Newer CuraEngine some day?


#1

Greetings! I understand that there were enormous architectural changes to CuraEngine that froze which build OctoPrint bundles and that tremendous work would be needed to implement the current code base.

Do you anticipate tackling this, or is it something that's beyond the scope of what you're interested in? Whenever I read about little things like vase mode or very interesting things like variable layer thickness, I think about the state of Octoprint and wonder if those might make it into the internal slicer. Like most people here I imagine, I use Octoprint pretty much exclusively for my slicing. I'm super pleased with the functionality as it is, just wondering about the future.

If it is outside of your scope, do you think it's feasible for an external developer to bring that in through a plug-in?


#2

To quote myself from around a year ago:

Cura 2 hasn't been around that long. Attempting to integrate with it before (and when I started trying that i even still had help from my then-employer) started about 1.5 years ago and ended basically with having to scrap everything every other month before the (undocumented) engine parameters and profile structure was changed ever so slightly again. The hierarchical profiles also make an integration/reuse of those extra tricky (you need all files a profile depends on, not just a single file - if they finally introduced a batteries-included format that I don't know of yet though, that would be good news).

In a nutshell, about a year ago I decided to scrap efforts to have support for the new cura engine (now known as cura 2, back then targeted to be cura 15.10) in 1.3.0, simply because it cost too much lost time trying to hit a moving target.

Now that the waters appear to have become a bit more smooth that could be reinvestigated, but by the time that had happened OctoPrint was already in feature freeze mode for 1.3.0

Slicer support is also very rudimentary (for the reasons for that see OctoPrint on Air episode 4 on YouTube) and not the key focus of the software. Which means it will probably stay low priority (I already got complains for even adding it). With that being said, slicer support in OctoPrint is fully based on plugins. If people are actually sorely missing built in support for the new cura engine and don't want to wait for me to add support for that (hint: no timeline yet), the documentation on SlicerPlugins and looking at the source of the existing cura plugin (which I btw never should have bundled in hindsight) should really provide enough information for writing a cura2 compatible plugin and being the hero of everyone waiting for this :slight_smile: At this time, I'm not aware of anyone doing this actively though - a quick message on the mailing list or as a brainstorming ticket on the issue tracker would be nice for coordinating if anyone tackled this.

tldr: first attempts to integrate boiled down to shooting at moving targets, and when stuff finally became stable other things had way way higher priority and this will probably not change in the near future. Everything slicing related is plugin based anyhow, if you need it now, write your own, docs and examples are there.

As written there, I've been hoping someone would take up the reigns on this and just create a plugin for CuraEngine2+. Everything needed for that should be there (and in fact, I recently made things even a bit easier by allowing slicer plugins to fully manage their profiles themselves for 1.3.7). Alas, no one so far has stepped up and I simply can't.

The thing is, slicing integration in OctoPrint will never be able to be a full replacement for using the desktop version of the slicer. No matter how much time is spent on developing this integration, slicers will always be "one step ahead". So I can't really justify dumping endless amounts of work into that considering that it will always lack in functionality compared to something which a lot of slicers now come with: support for pushing a sliced file to OctoPrint.


#3

Excellent, thank you for the State Of The Slicer! :smile: This is good information to have, and I guess it's up to us to figure out if we have the chops to pursue the plugin model then. Thanks again for your efforts and continue to rock. :metal:


#4

VERY late to the party here. A few months back, a couple of Printrbot community members got a plugin working that included slicing w/ Cura 3.x. It is ONLY a Proof of concept.

Shortly after, Printrbot went out of business... so it stalled.

My question is: how much interest is there in the Octoprint Community for a plugin that uses Cura 3.x?

We pursued it because some didn't like the cloud I offered at the time.

I think it has value for schools who don't want to tie up a computer and are happy with simple default settings. We re-worked the UI to greatly simplify things. It was little more than a print button with rendered thumbnails of uploaded STLs to choose from. but I digress.

How many really want Cura 3.x in a plugin?


#5

I would never give up the control that I have in the full version of Cura by trying to slice within OctoPrint. At some point in part complexity, it just becomes impossible if you can't tweak everything about the slicing process.

Given that I also do some interesting things with GCODE file splitting, I require relative extrusion as a feature which only comes with the latest couple of minor releases of Cura. This type of slicing means that if the job fails at some point, it's must easier to create a second job to finish the print.


#6

Hey Brook! :wave:

It's something that keeps coming up, though not by many. I'm in the same boat as @OutsourcedGuru and actually don't use the built-in slicing myself for the stated reasons, but it seems to be something that gets used in certain educational setups where having a separate machine for slicing becomes tricky, and also in some regular user run setups.

So if you were to publish this/hand it over the community I'm sure you'd make quite some people happy. And I also hope that someone would take over long term maintenance.