Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Firmware 3.9.0-RC1 print quality degradation compared to 3.8.1 #2543

Closed
nikkolade opened this issue Mar 16, 2020 · 104 comments
Closed

[BUG] Firmware 3.9.0-RC1 print quality degradation compared to 3.8.1 #2543

nikkolade opened this issue Mar 16, 2020 · 104 comments
Labels

Comments

@nikkolade
Copy link

Printer type - MK3S
Printer firmware version- 3.9.0-RC1
MMU Upgrade - MMU2S
**MMU upgrade firmware version 1.0.6

Describe the bug

Print source: https://www.thingiverse.com/thing:3494496
and explicitly: https://www.thingiverse.com/download:6386081

While printing the above STL sliced with PrusaSlicer 2.20-RC2 and using PETG material works just fine when using the MK3S firmware 3.8.1 (build result on the left), the very same gcode results an awful quality after the printer was upgraded to 3.9.0-RC1 (end result on the right).
Please, see the attached picture.

To Reproduce
Upgrade firmware MK3S firmware to 3.9.0-RC1
and print the above mentioned STL file.

Expected behavior
The print quality should not degrade, compared to previous firmware version.

IMG_20200316_163306

@nikkolade nikkolade added the bug label Mar 16, 2020
@nikkolade nikkolade changed the title [BUG] Frimware 3.9.0-RC1 print quality degration compared to 3.8.1 [BUG] Firmware 3.9.0-RC1 print quality degration compared to 3.8.1 Mar 16, 2020
@wavexx
Copy link
Collaborator

wavexx commented Mar 16, 2020

Could you post the 3mf file saved by PrusaSlicer using the same settings you used to print it? Also posting the gcode itself would help so we can have a look.

@nikkolade
Copy link
Author

Sure, here is the 3mf file.

3mf.zip

@nikkolade
Copy link
Author

And the gcode
gcode.zip

@vintagepc
Copy link
Contributor

Hm... have you tried re-calibrating your linear advance K-value with 3.9.0? I'm not saying the default shouldn't work fine, but I'm curious whether calibrating for the 1.5 K-value makes the issue go away.

@nikkolade
Copy link
Author

nikkolade commented Mar 17, 2020

No, I haven't. What is the proper way to run the linear advance calibration ?
My printer is currently busy for the next 12 hours, but I can certainly try this out after it's idle again.

@leptun
Copy link
Collaborator

leptun commented Mar 17, 2020

You can find instructions on what Linear advance is and how to calibrate it here: https://marlinfw.org/docs/features/lin_advance.html
You are looking for LA 1.5.

@nikkolade nikkolade changed the title [BUG] Firmware 3.9.0-RC1 print quality degration compared to 3.8.1 [BUG] Firmware 3.9.0-RC1 print quality degradation compared to 3.8.1 Mar 17, 2020
@vintagepc
Copy link
Contributor

vintagepc commented Mar 17, 2020

FWIW, I hadn't paid it much mind but since you are also using PETG... I've noticed my PETG prints are also a little sloppier in terms of strings, sags and zits, but nowhere near the picture levels of bad. I initially ascribed it to wet filament but a fresh roll last night didn't show any improvement, so there may be something to this issue. I'll also try running an LA1.5 calibration for PETG next time I load it up.
PLA's been fine so far.

@DRracer
Copy link
Collaborator

DRracer commented Mar 18, 2020

@nikkolade thanks for reporting, this is a serious issue and we must solve it before the 3.9 final goes out.
Could you please do the LA15 calibration test as @leptun proposed? We are especially interested in the "correct" K-factor you get (a photo of the whole print sheet with calibration lines will be great).

@DRracer DRracer added the FW 3.9.0 RC1 firmware 3.9.0 RC1 label Mar 18, 2020
@nikkolade
Copy link
Author

calibration.zip

I don't know what is the problem with this particular calibration, as I only increased the temp to 210C and changed some filenames, but for some reason the included gcode crashes the printer right after the initial bed calibration. Therefore I was unable to print anything with this test.
I tried a few times from octoprint and from SD-card, didn't matter at all.

@vintagepc
Copy link
Contributor

vintagepc commented Mar 18, 2020

I used that code/page recently for flex, so the gcode should be okay.

I see you have an MMU. There's a known bug if you try to extrude with IR=1 and FINDA=0, or a runout detected with a "?" on the screen for the filament. (Fix is pending merge)

Try doing a load to nozzle first if you haven't already done so - the gcode does not have the MMU single mode Tx/Tc commands that prompt filament selection.

@leptun
Copy link
Collaborator

leptun commented Mar 18, 2020

@nikkolade Just tried the gcode on a MK2.5S without MMU and there was no crash. It is as @vintagepc said.

@nikkolade
Copy link
Author

Yes, manually loading to nozzle first allowed the test to be executed.
Of course the PLA-filament I used is clear, so the end result is slightly difficult to see. I can certainly run it again with for example white PLA or some PETG if needed.
IMG_20200318_185357

@leptun
Copy link
Collaborator

leptun commented Mar 18, 2020

The calibration is technically filament specific, so you might want to use the orange PETG for the calibration.

@vintagepc
Copy link
Contributor

vintagepc commented Mar 18, 2020

Also, you're going to want to run a lot narrower range. Your 0.1 line is already showing overextrusion at the start of the fast section, and it just gets worse. Try something like 0 to 0.2 with 0.02 steps instead. (I think the default range of up to 2 is targeted at bowden setups, which require much higher K values)
What you're looking at here are the transitions from slow to fast and back again - ideally you should have some that are too fat at the start of the fast segment, and some that are too fat at the end, to show you've got some values on either side of the correct one.
You want the most uniform line you can get, it should not be possible to see where the fast travel part starts and ends.

Hope that helps clarify what you're looking at. You might need a few cycles to narrow down the right range of values to test.

@nikkolade
Copy link
Author

nikkolade commented Mar 18, 2020

Ok, yet another test result. Any tuning suggestions after this ?
Although, the numbers are somewhat missing, this one is in the range of 0 -> 0.2
as suggested.

IMG_20200318_193359

@DRracer
Copy link
Collaborator

DRracer commented Mar 18, 2020

@nikkolade looking at your calibration print I'd say the best K factor is 0.08. S far we've been using 0.12 AFAIK.
Now please take your g-code and search for:
M900 K45 ; Filament gcode
Change it to:
M900 K0.08

Save and run a few centimeters of your container print to see if there is any difference.
We'll be doing similar tests at Prusa HQ tomorrow.

@vintagepc
Copy link
Contributor

vintagepc commented Mar 18, 2020

.08 looks pretty good to me - Edit your custom filament g-code for the orange PETG and change the K value for the M900 command, e.g. M900 K0.08

Then try your original print again (be careful you don't revert the K change if you re-open the 3MF file!)

You can probably skip doing the whole print and just cut out a chunk of it or stop a few cm in where the issue would have manifested itself
Edit: Aha, ninja'd by @DRracer :-)

@nikkolade
Copy link
Author

Ok, I'll let the printer try again with the modified gcode. Let's see if the end result is equal to FW 3.8.1 this time. I'll let you know latest in the morning.

@Panayiotis-git
Copy link
Contributor

I would definitely use a smooth PEI sheet to determine the K factor. 😄

@nikkolade
Copy link
Author

Ok, the K0.08 value modification improved the end result a lot!
2020-03-18_222206

@vintagepc
Copy link
Contributor

Interesting, and good to know.
I'm guessing that's Prusament PETG?

I'll spot check my Overture (AKA former Amazon) PETG tonight and see if I get a similar value or if it's closer to 0.12.

@DRracer
Copy link
Collaborator

DRracer commented Mar 18, 2020

@nikkolade interesting result, please let the print finish if possible for detailed comparison with the one printed with FW 3.8.1
Btw. how old is your nozzle - i.e. how much filament did go through (roughly)?
@vintagepc please do a LA15 calibration on your machine too
@wavexx @leptun FYI

@vintagepc
Copy link
Contributor

Will do. Current print is finishing in about 20 minutes. Will post pictures of the plate.

@vintagepc
Copy link
Contributor

Results are in. For me, PLA @ 210C (red) comes in best at 0.04, PETG@235 (black) also at 0.08.

IMG_0009
IMG_0010

I do have a Skelestruder but the gear->nozzle distance isn't as different from stock as it used to be; the 3S revision shortened that a bit; so my values might be a smidgen lower than expected. (FWIW I was running 20 for PLA and 35 for PETG in LA1.0, but those were not calibrated at all and just going off a generic comment that I could drop the Mk3 values by ~10. )

@nikkolade
Copy link
Author

The print is now complete and there seems to be still a big difference with the latest 3.9.0-RC1 and the older 3.8.1 versions. The print looks much better from the front after the K-value change.
However, the lefthand side of the print is still much more worse than the other sides.

The filament is Prusa PETG, not prusament. All my filaments have been dried every once in a while, so they are not wet. The printer itself is originally of MK3 model and it has been delivered on December 2018. It has not been used heavily though as there has been occasionally months between the prints. I quess 3-4 complete rolls and half a dozen non-empty rolls.

IMG_20200319_062549
.
IMG_20200319_062539

@DRracer
Copy link
Collaborator

DRracer commented Mar 19, 2020

@nikkolade oh, this is interesting - it looks like some error is being accumulated after those many retractions.
@wavexx what do you think?

@wavexx
Copy link
Collaborator

wavexx commented Apr 5, 2020

So I ran your gcode on my MK3S with some prusament petg (the orange one) and I'm comparing to some other ones I have.

At least with this material, using the .15/.2 quality and speed profiles (so default params) I see thin strings, but nothing too bad.

Using yours it starts similar (similar amount of thin stringing in general), but then I noticed the pillars start to wobble heavily towards the top, and this is when quality degrades very quickly. In my case it detached on one side, so I'm re-running it again.

Did you notice this effect as well, or something different?

@vintagepc
Copy link
Contributor

vintagepc commented Apr 5, 2020

Yes, that is one of the observations I had made.
Edit: Might be insightful to do the same test I did, that is, cut two pieces of filament slightly over 1m in length, and use that to look at the volume of material being extruded.

@wavexx
Copy link
Collaborator

wavexx commented Apr 8, 2020

So I ran through some different trade-offs, and came to this:

https://github.com/wavexx/Prusa-Firmware/tree/la15_chained_wipes

Before I make a PR, I'd love some feedback.

I see an improvement in both your "bad" test, as well as a re-sliced model with .15 layers. Stringing is reduced and the pillars look very consistent, however at least using PETG there are still tiny whisps which very in quantity just by reprinting the same model twice. I'd say this is consistent with what I would expect - but I've been wrong before ;)

@vintagepc
Copy link
Contributor

Sure, I'll take it for a spin tomorrow!

@vintagepc
Copy link
Contributor

It does look quite good- I don't have any 3.8.1 references, but the surface finish is perfect, and the stringing is about on par with the better results I've gotten for this particular model. It was worse than those for my default K of 0.08 but improved when I tried 0.12 (which makes sense, since this altered the K handling slightly it means a different value might now be optimal).

@3d-gussner
Copy link
Collaborator

Printed on my stock (no hardware changes) Prusa MK3s with Firmware version

commit 02a36c498cfb087fc4d1e470a7490d08a10484a5 (HEAD)
Author: Yuri D'Elia <wavexx@thregr.org>
Date:   Wed Apr 8 22:49:48 2020 +0200

20200410_064035

@wavexx
Copy link
Collaborator

wavexx commented Apr 12, 2020

@vintagepc I pushed one last change which again covers some even rarer corner cases. I re-checked this model and I get consistent results with the previous version. I was only able to see a minor difference in a synthetic test that starts extrusion mid-flight (something at least prusa-slicer and slic3r never does).

But if you have filament to spare, I'd love an extra test :P
Mostly to see if you see any difference at all with random models.

@vintagepc
Copy link
Contributor

I have a number of items on the to-print list; I'll merge your changes to my local build and use it during the coming week 👍

@3d-gussner
Copy link
Collaborator

Solved by #2591

@Makhaira
Copy link

Been waiting for this to be resolved to try LA1.5. To be clear, do I need to change anything in the slicer to make use of this or will my existing slicer profiles be recognised as legacy and translated by the LA1.5 firmware?

@leptun
Copy link
Collaborator

leptun commented Apr 29, 2020

Old gcodes are converted automatically. You don’t have to change anything. Slicer profiles will be updated after the final release (hopefully 2 weeks from now)

@Googliola
Copy link

My 2 cents: I dialed in the K-factor for PETG (with marlin LA 1.5 pattern) and observed a decrease in quality compared to LA 1.0 as well. Most notably, corners were sometimes massively underextruded. To the extent that there were holes in them.
Also, I noticed that the k-factor sensibility has shifted by a factor of 5 or more. What used to be 60 (in LA 1.0) now is around 0.1-0.15.
On another note: Why dont you use a different parameter for LA1.5, like M900 L0.12? Less confusion and error-prone

@leptun
Copy link
Collaborator

leptun commented Apr 29, 2020

We can't switch to another letter since the Marlin test pattern only uses K as the K factor :(

@vintagepc
Copy link
Contributor

Also, the two ranges don't overlap. Anything over ~15 has to be LA1.0, anything under ~2 (unless you have a bowden system) is 1.5

@leptun
Copy link
Collaborator

leptun commented Apr 29, 2020

LA1.5 is < 10
LA1.0 is >= 10

@vintagepc
Copy link
Contributor

I stand corrected. I was going from memory and the thresholds I saw in earlier code. (I do know that it was <15 but in reality values over 2 don't make a lot of sense for most cases, especially stock MK3s)

@DRracer
Copy link
Collaborator

DRracer commented May 27, 2020

@nikkolade please contact me via email, we'd like to reward you for helping us fixing this issue.

@scuba840
Copy link

Ok, yet another test result. Any tuning suggestions after this ?
Although, the numbers are somewhat missing, this one is in the range of 0 -> 0.2
as suggested.

IMG_20200318_193359

I haven't seen this calibration method yet. Can someone point me to a URL where I can read more about it? THX!

@vintagepc
Copy link
Contributor

https://marlinfw.org/docs/features/lin_advance.html

It was linked in the first few posts.

@mmuellerphoto
Copy link

mmuellerphoto commented May 29, 2020

Hello!
Maybe interesting: with the great help of @3d-gussner, I created a little document where in PrusaSlicer to find the values for the linear advance calibration website and a little example how to use it ...

LA15_PrusaSlicer_Values_HO_V01.pdf

@DRracer
Copy link
Collaborator

DRracer commented May 29, 2020

@mmuellerphoto very helpfull. I saw a preliminary version of this PDF a couple of days ago. This would be a nice addition directly to prusa help.

@mmuellerphoto
Copy link

@mmuellerphoto very helpfull. I saw a preliminary version of this PDF a couple of days ago. This would be a nice addition directly to prusa help.

Thank you for the kind words - what can I say ... I'm here ... ;o)

@3d-gussner
Copy link
Collaborator

@nikkolade I think we sorted out and fixed this issue. Can we close it and continue on other things in #2693 ?
[stale][fixed]

BTW: Thanks again to everyone helping testing and improving the firmware. Awesome community we have here.

@JohnnyDeer
Copy link

I'm closing this issue as stale, thanks for understanding.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests