One of our major focus points over the last two months has been resolving VFA (Vertical Fine Artifacts) on the Prusa CORE One and other printers. I’ve posted several updates throughout the process, and I’m happy to say that with the recent development, we can bring this chapter to a close.

As it sometimes happens, one thing leads to another. Our work on VFAs resulted in major improvements to the surface finish of all prints – it’s a new function in PrusaSlicer, and it’s something almost every 3D printer on the market can benefit from! The solution is completely open-source, and I can’t wait to see the direction someone like @softfever with OrcaSlicer takes it. But that’s only the beginning – there are multiple topics to discuss. VFAs are just a part of all this.

Before we launch a new printer model, we run extensive testing using CT scans and multi-sensor systems, which confirm that our machines are exceptionally accurate. For many users, this is what “top print quality” stands for. What you design is what you print. But it’s not only about how sturdy or precise printed objects are. We also want a nice surface finish. In other words, we can look at print quality from multiple angles – quite literally.

Long article incoming, so here’s a TLDR:

  • 2 new cool PrusaSlicer features
  • Improved print profiles
  • New belt tuning (also check if your print head bangs while homing)
  • The result: consistent surfaces and nerfed VFAs

The Problem: Inconsistent Gloss and Matte Surfaces

I’m sure you’ve seen it before. You’re printing a model, and for some reason, parts of it are glossy while others are matte, creating ugly horizontal stripes. This is especially noticeable on mechanical parts, which are often printed with black PETG that can be VERY glossy.

The cause is the “cooling slowdown” function. On layers with a small cross-section, the printer must slow down to give the hot plastic enough time to cool and solidify before the next layer is printed. Without it, the model would deform. But this is exactly where the material gets different optical properties, leading to inconsistent surface quality. Some materials are more prone to this, and you won’t notice it with others.

The Problem with the Old Method

The way all slicers derived from Slic3r handle this scenario is by forcing the printer to slow down every part of the printing process for that layer. The problem is that printing a glossy filament at varying speeds changes its reflectivity and overall look. Worse, the slowdown can sometimes force the printer to operate at a speed that causes vibrations or resonance in its frame. These vibrations are then transferred to the print, resulting in an inconsistent surface finish and visible artifacts (VFAs!) on the model’s exterior.

All of this can be visualized directly in PrusaSlicer in the G-code preview by switching to the Speed, or better yet, Actual Speed mode.

PrusaSlicer Beta 2.9.3 with new “Consistent Surface” option

The new PrusaSlicer beta comes with a major improvement called “Consistent Surface.” This new cooling strategy is much smarter. It prioritizes slowing down less-visible areas, like infill, first. It will only slow down perimeters when absolutely necessary, and even then, it maintains the original speed for the final segment of the loop. This achieves a much more consistent print speed and surface finish across the whole model.

With black PETG, the improvement is dramatic. With matte filaments, the difference is more subtle but still present if you look closely.

With black PETG, the improvement is most noticeable

 

With matte filaments, like this PLA, you won’t see a difference, unless you look really closely.

You can switch back to the old behaviour in the Filament settings – Cooling – Cooling slowdown logic menu.

By the way, while working on this issue, we noticed that OrcaSlicer has a feature called “Don’t Slow Down Outer Walls” which tried to solve the problem with a different approach. Specifically “igiannakas” did a great work on this. Our implementation is different, but it achieves a similar thing and it is robust enough that we can turn in on by default. The key difference is that our method still factors in external perimeters during the cooling slowdown calculation, among other clever tricks.

Reduced Ringing on External Surfaces With a Short Specific Travel Acceleration

To reduce ringing (or “ghosting”) artifacts, we’ve tackled another source of vibration: the tiny travel move between perimeters. It’s an extremely short movement that takes basically no time, but it can cause a surprising amount of shake.

Here’s why: this travel move is often perpendicular to the perimeter wall. When the printer applies its default high acceleration to this move, it creates a sharp jerk that can vibrate the entire printer. We want to avoid the corner rounding often seen in the industry with aggressive input shaping, but our current settings didn’t play well with these specific short, rapid movements.

The new slicing strategy in PrusaSlicer fixes this. It automatically uses a gentler, lower acceleration only for these very short travel moves on external perimeters, while normal travels remain fast. This targeted slowdown dampens the vibrations right where they matter most, leading to cleaner surfaces near sharp corners without impacting overall print time.

We started with the focus primarily on the CORE One, but we’ve seen that this will also improve print quality on the XL and MK4/S. We’ve even tested the new cooling logic and the short specific travel acceleration on other printers on the market and saw that they also benefit from these new features.

Where it all started – and what are VFAs?

Now, I think it’s the best time to get back to where it all started because I just dumped a massive amount of information on your heads. It all started with our research into VFA – Vertical Fine Artifacts. So, what are those?

VFA are microscopic imperfections in the extrusion that repeat at the same point in each layer, creating vertical lines on the model. These lines are tiny, visible from 10um, and the worst you have seen are around 40um from peak to valley. This is too small to show up reliably on a lot of metrology equipment. You can’t even feel them by hand. But you can see them due to the way a shiny filament reflects light. In other words, it is an optical imperfection.

And it’s one of those things that can’t be unseen. Once you learn to spot VFAs by rotating a glossy 3D-printed object (e.g., made from black PETG) so it catches the light reflection under a specific angle, you will find them on pretty much any 3D print in the world.

VFAs are common with nearly all 3D printers on the market, and there isn’t a single specific thing that causes them. You won’t get rid of them, e.g., by replacing the belts. It’s multiple things stacking up. There are several ways to hide them, from using matte filament to lowering print temperatures. But a proper solution is to track down all the sources of VFAs and minimize them.

Everyone, adjust the belts!

Very early on, we ruled out the motors as the cause. The VFAs we see on the CORE One don’t match the specific pitch that would be caused by our motors. Plus, the motors, drivers, and voltage are well-tuned from the times of MK4, and the CORE One uses the same stack.

While the 3D printing community has identified several potential sources for VFAs, including motor resonance and belt mechanics, our deep analysis of the affected community printers pointed overwhelmingly toward improper belt tension on the CORE One. We designed a new belt-tuning device to find the optimal tension and started testing.

Based on our research, we’re now introducing a reworked belt tuning procedure and enhanced tuner in the Prusa App. I strongly recommend tuning your printer right now – I’m pretty sure you’ll see a noticeable improvement.

We prepared a detailed guide on how to tune the belts. You will need a phone to either open an online belt tuner or download the official Prusa App, where you can find a direct link to the tuner as well. This approach is manual, so it gives you a great deal of control over the process.

Before you start, here are my personal recommendations:

  • Make sure the extruder is parked in the front right position
  • Start by strumming the top belt. When you start adjusting the tension, ALWAYS adjust both screws (left and right) by the same amount (e.g., half-turn). It may seem more logical to turn only the left screw to adjust the top belt and leave the right screw untouched until you start tuning the lower belt, but this will actually result in a skewed gantry. The belts meet in the extruder, so they are “connected” and they affect each other. Even if you’re adjusting one belt at a time, always turn both screws by the same amount. The skewed gantry can be straightened again, but it’s better to avoid the issue in the first place.
  • Some phones might have issues with reading the belt frequency properly – this is because some manufacturers add a built-in noise suppressor for the microphone input. The app will tell you if this is the case. If your phone has trouble reading the right frequency, try either a different mobile browser or a different phone.

As I teased before, an upcoming FW will use a stroboscope effect with clever PWM of the built-in LEDs instead of the belt tuner. But the end result will be the same: new tension on the XY belts, just without having to use the app.

Once your belts are properly tuned, you should also notice that the pre-print process is also much faster with less “banging” during the homing procedure.

You should already see improved print quality at this point, but to hit the real sweet spot, you will also need the new beta of PrusaSlicer.

New and Improved Print Profiles for the CORE One

Let’s briefly talk about print profiles. We generally split our profiles into two categories – profiles focusing on print speed (SPEED, DRAFT) and profiles that prioritize mechanical properties of the print (STRUCTURAL).

We’ve identified the perimeter speeds at which VFAs show up on the CORE One. With most profiles, the fix was relatively straightforward. We’ve adjusted the values to avoid the print artifacts, while keeping very similar print times (some speeds got slightly increased, some decreased). However, with our Structural profiles, the change in perimeter speeds would have to be rather significant, with potential impact on the mechanical properties of the prints. We don’t want to introduce any big, surprising changes to profiles with the same name. We know many of you are using CORE One in production, where the strength of prints takes absolute priority over surface gloss imperfections on a few reflective/material combos. So we only made minor adjustments to the Structural profiles.

This means that Structural profiles will still produce prints, where VFA can show up, especially with PETG. If we want to keep it as the go-to profile for highly durable, strong 3D prints, we need to accept this as a necessary compromise. We want to be as transparent as possible here – obviously, not all profiles can be equal, and some things are limited by physics. If we claimed that every profile delivers top quality, best layer adhesion, world-class durability, etc., it would mean that it’s essentially one and the same profile, and the individual parameters do nothing.

However, we are introducing new print profiles for the CORE One called BALANCED. I think they will become the new user favourite. They combine high speed with a great-looking surface finish and good structural integrity. They are my favorite for the majority of practical prints these days, but it all depends on your use case. Sometimes, you may want to use the DRAFT profile to get something out as quickly as possible, with thick layer lines. Other times, SPEED is perfect for fast and clean prints. In the production of small mechanical parts, you may still want to use STRUCTURAL.

To summarize:

  • SPEED – very fast, great surface quality, average durability
  • BALANCED – fast, great surface quality, good durability
  • STRUCTURAL – fast, ok surface quality, great durability

We’re also adding these profiles to EasyPrint, our cloud-based slicer service.

Synthetic tests and their downsides

Now, before I wrap this all up. I’m pretty certain that this article will also be an opportunity for users to check whether our solution really works – and please do! However, I’d like to give a short mention to synthetic tests or benchmarks. It is 100% certain that if you start looking for a specific object to force-trigger VFAs, you will absolutely eventually find (or design) one. There’s really no way to beat a synthetic test designed to target a specific printer tuning and exploit it. The changes and improvements I’m talking about today are for 3D printer users and their real-world scenarios: basically, for those who want to print better-looking objects. And I’m sure that the bump in quality is substantial – and not just on our printers.

So, just a quick recap:

Well, I think that’s it. 🙂 I realize my articles sometimes turn very long, but when a topic turns this interesting, it’s hard to compress it into a few sentences. Personally, I love deep dives and behind-the-scenes looks, and I bet you love them, too. I hope this also keeps things between us transparent and you know exactly what we’ve been doing and why we chose to do certain things a certain way.

Happy printing!