Ultimaker / Cura

3D printer / slicing GUI built on top of the Uranium framework
GNU Lesser General Public License v3.0
6.12k stars 2.07k forks source link

Discussion and suggestions about changes for the default Creawesome Creality printer profiles. #6106

Closed JohnEdwa closed 4 years ago

JohnEdwa commented 5 years ago

The new Creawesome profiles have some odd choices, some missed Cura features and in my opinion, could be better. After a very small Reddit discussion, I compiled my proposed changes and would like to get some feedback and as a possible result, have updated and better default printer profiles included into Cura.

For reference, these are all changes for the "creality/base/base_global_standard.inst.cfg" using the printer "creality_ender3.def" that itself is based on the "creality_base.def.json" definition.

The comments are mostly mine, and might (will) have factual errors and misunderstood functionality as I'm not a Cura expert. Cura Profile: creawesome_ender3_change_suggestions_v1.zip


Suggested in the discussion but I don't know about them


creality_base.def.json

Shell

Material

Infill

Travel

Support

Build Plate Adhesion

Special Modes

* Relative Extrusion: False -> True // /u/Liger_Phoenix: "Relative extrusion can be enabled and is always recommended on Marlin." Breaks scripts. Should not be used.

Experimental


Printer definitions:


[EDIT] Removed support towers, added support XY distance and interface skip heigth [EDIT2] Support XY distances. [EDIT3] Remove "machine_head_polygon" from printer profiles. [EDIT4] Overhang wall angle, Overhang wall speed, Optimize wall printing order, Enable conical supports. [EDIT5]RElative extrusion breaks scripts and other things as they almost always assume absolute extrusion and will default to them at the end.

JohnEdwa commented 5 years ago

@kazooless

Z Seam Relative: enable NO I would prefer Z Seam: Sharpest Corner

Z Seam Relative just makes the Z seam coordinates be related to each individual model and not the build plate. The current setting is trying to push the seam at the very back of the model, which will simply work better with multiple objects if you use the realative option. Pictures tell thousand words, so 9001 hours in MSpaint.

And the issue with Sharpest Corner is that doesn't work on objects that don't have clear corners and it will just randomly start wherever and cause the seam to be very visible, very likely at the front surface and ruin the visual quality of the print. User Specified combined with Smart Hiding tries to put it in a corner at the back of the object, and if there are no corners, it puts it at the back in a straight line.


[EDIT] I noticed that enabling Relative Extrusion will inevitably result in bad behaviour because so many scripts assume all Gcode is using absolute values. So as an example, "Pause at height" will always stick "M82" at the end, no matter what mode Cura is currently using, which means the print breaks.

Therefore Relative Extrusion should not be used.

Silvatech commented 5 years ago

Then you probably still use the stock crap fire hazard firmware. My cr10s doesn't move.

I have to agree, if firmware and that is setup right gyroid actually works really good.

Silvatech commented 5 years ago

I feel that we have a bit more caution now for changing settings suggested by individual users, partially due to the feedback we've gotten about the recent Creality setting changes. And there are a few suggestions even in this thread that contradict each other. But to make any improvements here we need some more force of action. I understand that making pull requests is complex if you're not used to the workflow, so how about this: If two people tested an actual print with the same setting change and found it improved, we'll make the change. Does that sound okay?

Things that multiple people have confirmed and should already be applied if people agree with this workflow:

Happy to hear you guys are looking into changing it. I suggest first don't override people current profile setups. It really causes alot of problems.

 * Support Type: Everywhere (by JohnEdwa and Liger0) 

Don't really matter, but honestly I feel plate only makes more sense, but really it dont matter its easy to adjust.

Currently open proposed changes that were just intuition, or at least worded like it, and seem to not be tested at all yet:

 * Outer Wall Wipe Distance: 0.2mm

makes sense

* Print Thin Walls: enable

Not sure on this one

  • Filter Out Tiny Gaps: enable makes sense
  • Z Seam Relative: enable make sense
  • Z Hop: disable Big yes
  • Support Interface Resolution: =layer_height Make sense
    • Slicing Tolerance: Middle (personally I doubt that this will have the desired effect though) When ive played with this setting recently middle seem to be best, but not sure if it was because of the other changes or not. I would have to investigate.
Liger0 commented 5 years ago

Let's not forget the first layer height = layer height that I proposed earlier. Sometimes when changing the layer height I forget to change first layer height and it's so bad.

Also, this is what I have with "infill before walls", even with 4 perimeters. I don't suggest to enable this. https://i.imgur.com/upt9nvI.jpg

For the "Overhang wall angle it really depends on the material. For PLA I do 70° overhang at 100% speed with no problem.

JohnEdwa commented 5 years ago

At 5 walls there is absolutely zero possibility that the infill would actually show through as that is 2mm of wall, and that artifact has to be the result of something different.

And reason you should do infill before walls is that it gives overhangs and bridges something to attach themselves into.

Liger0 commented 5 years ago

I have that always with that option On, that is the reason I have it off. The number of walls doen't really matter.

tilllt commented 5 years ago

I understand that this discussion is about proposal for new cura default settings for the ender3... Wouldnt it make sense to have a seperate repo for the refining of the settings and when people agree that the settings are good, just issue a PR and merge them with the then actual cura?

Liger0 commented 5 years ago

this is generic for creality printers. Also let's not forget to add if you people also agree to default zhop height to layer height even having it off by default.

Liger0 commented 5 years ago

Enable Coasting NO!!! A lot of us update our firmware and turn on Linear Advance. Coasting is recommended to be turned off for that.

I agree but Linear Advance is for expert users that are dialing in the printing a lot and know what they do. If you enable linear advance in the firmware and dial it correctly, you will know to disable coasting in the profile. But coasting gives (well, will give since the blob issue will be fixed for 4.3) a huge benefit for all machines with stock and not very advanced functions.

Liger0 commented 5 years ago

Also the stupid line width causing under extrusion, which should be equal instead to nozzle size and then calibrate flow to fix overextrusion.

@Liger0, regarding the default line width, I'm fine either way. I have some profiles using the nozzle size and some using 120%. I tend to use the 120% for parts & 100% for artistic stuff. I have my e-steps and flow dialed in really well and find I can get great walls (close to perfect measurements) with either setting.

For your combing comment, I don't follow what you mean by the mm's.

After proper calibration they both can work well. The point is that using a line width > nozzle you are in a case that will cause udnerextrusion to people and this isn't good for a starting point profile since people, especially the new entries, will first do their first prints to test their hardware with stock profile and learn from it. But I see people are going crazy about it because of underextrusion issues caused by the larger line width, and it's not a good thing. Using line width=nozzle size will always work on the other side, it may just cause a bit of overextrusion that won't affect the success of the print and the quality and can be calibrated later with flow or a user fixed line width easily.

For the combing, I mean that I had better results using a "max combing distance without retraction" of 15mm instead of 30mm.

Ghostkeeper commented 5 years ago

The question first. When CreawesomMod first came out the information about it said it was more than just a custom profile; we were told there were "under the hood" changes made. Looking at one of the original documents it says part of the changes made were " Deeply defined machine & Fixed default feedrate, accel and jerk hidden settings." So the question is, if all the visible settings were made to be identical to the earlier versions settings, would the resulting gcode be the same as the earlier version?

The original CreawsomeMod had some interface elements also overwritten with its own. This broke in Cura 4.1 though because we'd made new interface elements that referred to the overwritten ones. We didn't take these changes into Cura 4.2. CrawsomeMod also changed the printer definitions for default feedrate, acceleration and jerk settings. Those settings were taken along to Cura 4.2. You can still see them if you load fieldOfView's Machine Settings plug-in, but they are normally hidden. They can influence the g-code, but most of them will only do so in a very minor way. For instance, the maximum feedrate influences time estimates which causes a different time estimate to be put in the g-code and may cause pre-heat commands for extruder switches to be placed earlier or later because it estimates the printing to take longer or shorter compared to the pre-heat time.

I understand that this discussion is about proposal for new cura default settings for the ender3... Wouldnt it make sense to have a seperate repo for the refining of the settings and when people agree that the settings are good, just issue a PR and merge them with the then actual cura?

We've asked people to submit PRs to change these settings but that seems to be difficult for some people (forking, committing, etc. and people don't monitor the PRs). So I thought that this thread would be simpler for them.

Ghostkeeper commented 5 years ago

I've updated my list here: https://github.com/Ultimaker/Cura/issues/6106#issuecomment-524241165

Tomorrow I'll apply the top entries. I've tried to filter out only comments that were actually tested by people.

Liger0 commented 5 years ago

Nice. Also take note of the zhop to default to layer height if it gets manually enabled. Also Outer Wall Wipe Distance: nozzle/2 not 0.2mm.

Ghostkeeper commented 5 years ago

I applied the changes that were verified by 2 people or more. That doesn't mean that this is now a stop on changes though. Please keep 'em coming and remember to verify each other's findings :+1:

Liger0 commented 5 years ago

Also, apart from the decision on it being enabled or not by default, could there be a button to easily revert the coasting volume to nozzle_diameter^3? Same for other settings, since often there is a value preset but once modded there is no button to turn it back to default.

Ghostkeeper commented 5 years ago

We have a ticket open to change the fx button into a sort of revert button that removes a value from a custom profile.

fieldOfView commented 5 years ago

To all contributing to/following this issue: A beta of Cura 4.3 is available. Now would be a good time for feedback on the changes to the Creality profiles.

Silvatech commented 5 years ago

where is the best place to report issues on the profiles? Your process on all this is a bit confusing. I was originally (long time ago) trying to post on your forum then when found no re ponce I just gave up.

Routout commented 5 years ago

Also profiles for different materials are different. I guess that we are speaking here about PLA profile, which won't work for example with PETG.

Liger0 commented 5 years ago

aside from speed and fan off, profiles for petg and pla should be the same

Routout commented 5 years ago

So thats why it is necessary to have different settings for different materials.

Liger0 commented 5 years ago

this is for various materials. Fans off for petg also is under vote, and I approve. If needed, people can enable it and set material fan speed to 20% or so.

Liger0 commented 5 years ago

To all contributing to/following this issue: A beta of Cura 4.3 is available. Now would be a good time for feedback on the changes to the Creality profiles.

Applied changes are being fine to me. Another change I would suggest is infill wipe distance to half nozzle size.

Silvatech commented 5 years ago

So the speed setting for retraction is to high should be around like 25 or 30 for an ender 3 ender 5. 45 with 5 meters will cause it to jam often with PETG.

nallath commented 5 years ago

where is the best place to report issues on the profiles? Your process on all this is a bit confusing. I was originally (long time ago) trying to post on your forum then when found no re ponce I just gave up.

Github (so here). The forums are just not suited for keeping track of issues.

Silvatech commented 5 years ago

where is the best place to report issues on the profiles? Your process on all this is a bit confusing. I was originally (long time ago) trying to post on your forum then when found no re ponce I just gave up.

Github (so here). The forums are just not suited for keeping track of issues.

their process makes no sense to me either. I agree forums make a logical place for feedback.

JohnEdwa commented 5 years ago

I think it's fairly simple. Community forums are, like the name suggests, for discussing with and between the community members. The Github issue tracker is for reporting issues and suggesting feature requests to the developers.

fieldOfView commented 5 years ago

By all means, if it works better for you, discuss what needs to be changed in community forums and then create a single PR here (showing the backing of the community).

Ghostkeeper commented 5 years ago

Our normal process for changing profiles is for people to make a pull request on Github. We won't normally make any changes at all to profiles for printers other than Ultimaker's. You have to do that yourselves basically. We'll test if the profiles load in Cura but that's it.

However for this particular issue we've seen that lots of people had ideas to change the profiles but weren't making pull requests. And if pull requests are made they aren't usually discussed or contested. So I'm offering to tally up the results of this discussion thread and apply the changes for you. The current tally is still kept up to date in this issue: https://github.com/Ultimaker/Cura/issues/6106#issuecomment-524241165

Liger0 commented 5 years ago

Fan off for PETG (by Tilllt) or 50% (by Silvatech) or 20% (by Liger0)

Nah don't write fan speed, let the material do and just disable by default.

Retraction Retract Speed for PETG: 20 (by Silvatech)

Same here, let the material do what the user wants instead of writing the value in the profile

Ghostkeeper commented 5 years ago

The material profile can specify a fan speed that's different for each printer or nozzle. So yes, if a change needs to happen only for PETG, I'd not put it in the printer definition but in the material profile. And also not in the quality profile either. Ideally the quality profile only contains settings that need to change when you change the quality profile drop-down/slider.

Silvatech commented 5 years ago

retraction speed to clarify should be 20 even with PLA it does a much better job. It just completely jams a stock Ender at 45 with PETG was all I was trying to add. speed of 45 is only fine direct extrusion in my experience. Fan speed on the other hand is for more materiel related.

Liger0 commented 5 years ago

Why is the "adaptive layer" setting enabled by default in all profiles?

Ghostkeeper commented 5 years ago

It's not, as far as I can tell. Here I added a new CR-10 printer and show the Use Adaptive Layers setting:

Screenshot from 2019-10-21 13-22-48

Maybe it's in a profile you're using?

Liger0 commented 5 years ago

No, the stock profiles all have adaptive layer on by default to me. :\

Ghostkeeper commented 5 years ago

Could you share a project file that reproduces the problem?

Ghostkeeper commented 4 years ago

Can we consider these changes complete for now? We haven't had big complaints recently.

kazooless commented 4 years ago

I guess so. Personally, after using the new profile names, I still would prefer to see them renamed back to the old names. When I switch to a printer which doesn’t have a Creality base definition, I can’t share my printer profiles. I find that very annoying.


Jeff Kazules Sent from my iPhone

On Jul 23, 2020, at 5:36 AM, Ghostkeeper notifications@github.com wrote:

 Can we consider these changes complete for now? We haven't had big complaints recently.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

Ghostkeeper commented 4 years ago

If the profiles are not specific to Creality printers you could share custom profiles with other printer types that don't have printer-specific quality profiles. However that would also mean that the Creality profiles would be part of the global profiles. They are specialised to Creality printers though, so I don't think that would be a good idea. Basically, the requirement for using a custom profile is that the profiles that the custom profile was based on need to also be available for the printer that you're using. This requirement is preventing access to custom profiles based on Creality profiles when you're using non-Creality printers.

This thread was about individual setting default values though, not about custom profiles.

kazooless commented 4 years ago

Ahh, you’re right wrong thread. Sorry about that.

For printer profiles, I am not seeing many complaints in the communities I hang out in any longer, so I’d say this can be closed.

On the custom profiles topic, I understand everything you said there and I’m just putting in my 2 cents that after using it this way for all these months, I am definitely of the opinion this is not a good thing. Especially now that I have added other branded printers. If there is still an old thread on that topic open, I can add these comments there.

Thanks Ghostkeeper!

Jeff

On Jul 28, 2020, at 4:07 AM, Ghostkeeper notifications@github.com wrote:

If the profiles are not specific to Creality printers https://github.com/Ultimaker/Cura/blob/56fc5f9706c9d7e7d3f70a7fc166ad91aedbbc0e/resources/quality/creality/base/base_0.4_PLA_standard.inst.cfg#L4 you could share custom profiles with other printer types that don't have printer-specific quality profiles. However that would also mean that the Creality profiles would be part of the global profiles. They are specialised to Creality printers though, so I don't think that would be a good idea. Basically, the requirement for using a custom profile is that the profiles that the custom profile was based on need to also be available for the printer that you're using. This requirement is preventing access to custom profiles based on Creality profiles when you're using non-Creality printers.

This thread was about individual setting default values though, not about custom profiles.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Ultimaker/Cura/issues/6106#issuecomment-664977387, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACJIUPM3CJ5ZUM3GFFKOPKLR52WONANCNFSM4IIK3LSA.

Ghostkeeper commented 4 years ago

https://github.com/Ultimaker/Cura/issues/6124 is the closest bug report that I could find. If you want to open a new discussion about how/which profiles are matched to each printer, that's fine too. It's a complex topic and there will not be an answer that works for everyone, but if there are ideas out there on how to improve I'd certainly like to hear them.

Liger0 commented 4 years ago

I think that removing "adaptive layers" from 0.16mm layer height on the cr10s would be good.

Liger0 commented 4 years ago

@Ghostkeeper I'm not sure it's present in other settings depending on the nozzle size, but removing adaptive layers in all the profiles where it's enabled would be useful.

Ghostkeeper commented 4 years ago

I thought Adaptive Layers was kind of the point of the "Dynamic Quality" profile. What would make it "dynamic".

Liger0 commented 4 years ago

Well, I only consider the basic layer height when using a profile, and I think that having a basic 0.16mm one would be useful. Since none of the other layer heights has adaptive layers, only using it on a profile would be confusing as you may not notice it and just select it because of its layer height.

kazooless commented 4 years ago

@Ghostkeeper So, to pick up or start or restart the topic about "how/which profiles are matched to each printer," you would prefer we go to #6124 and discuss? Or would you just like a new discussion dedicated to the idea started?

Regarding "Adaptive Layers," here are my two cents: If "Dynamic" has that name because of adaptive layers, then to make that clear, move the option to the Quality section so it stands out. I realize it is in experimental now and I don't know how you decide it is ready to be moved to a permanent section, but that is my first suggestion. If that isn't possible, code a flag that turns on in that section which calls attention to the fact it is turned on.

Ghostkeeper commented 4 years ago

I'd prefer keeping that discussion in its dedicated issue at #6124 indeed, Kazooless.

We can't move Adaptive Layers to the "Quality" setting category since its implementation is experimental. The problem is not that the settings haven't been properly tuned or anything, but that the setting breaks the following settings:

Basically everything that needs a certain measurement of height across different layers is not calculated correctly any more.

Just because one profile wants to use the setting is not a reason to consider this bug any less serious.

I know that the standard response from some developers to being unsure of something is to put warning messages in the user's face, but 99.9% of the time that's not what the user wants to see and just annoys them. We try to prevent having warning messages that always trigger upon doing something normal (like switching to a certain profile). The better solution is to make sure that the user needs to explicitly enable experimental things (which is why this setting is in a category called "experimental") or to accept that they might get a less-than-optimal print result sometimes. Since these profiles have been optimized by users of this third-party printer, we trust on them that they've accepted the results as they are. Maybe the printer deals with wrong overhang angles or thin skins particularly well, or maybe the settings have been tuned to accommodate for such discrepancies when they occur.

Liger0 commented 4 years ago

@Ghostkeeper wouldn't it be better to make the line width parametric by default, so to set it as "nozzle_size" rather than a fixed value? You can easily use the same profile for multiple usages when swapping nozzle in this case.

Ghostkeeper commented 4 years ago

Indeed the default in fdmprinter sets the line width to be equal to the nozzle size. The creality_base definition overrides it with the same formula, I see. Unnecessary, but harmless.

andrew-benjamin commented 4 years ago

@Ghostkeeper @Liger0 , thanks for merging the thread, having read the above I understand why 'adaptive layers' still experimental but perhaps this is just a title issue. The default profiles in Cura are Super 0.12, Dynamic 0.16, Standard 0.2 and Low 0.28. Can the '0.16mm' text be removed from the 'Dynamic' description as by the settings it will often not be anywhere like 0.16mm?