Questions about Flow Dynamics and Extrusion Multiplier on the A1

So I recently got an A1, and after doing my first few prints I’m still confused about how exactly the A1 handles flow dynamics calibration and extrusion multiplier.

When you go to start a new print, there is a checkbox to enable or disable “Flow Dynamics Calibration” that is off by default.

Now from what I understand “Flow Dynamics” is very similar to Pressure Advance (PA) in Klipper or Linear Advance in Marlin. And when you enable this option, the printer seems to purge filament a second time into the purge wiper after the initial purge, except this time it does so in a pulsing manner (extruding slow then fast in several cycles).
In addition, whether you select flow dynamics calibration or not, the printer always does a purge line on the bed which also does the same action of fast flow/movement followed by slow flow/movement (you can see this in bambu studio by selecting flow view). This is very similar to the linear advance test pattern on Marlin which prints several lines with high and low flow segments.

Therefore, my questions are:

  1. Why does the printer need to do a special purge into the wiper to calibrate PA/flow dynamics, instead of just using the data the nozzle pressure sensor gets from drawing the purge line with the low and high flow segments?

  2. Also, assuming that the special wiper purge is actually doing something useful over and above what the special purge line does, why is the flow dynamics calibration checkbox off by default when you first start using Bambu Studio?

  3. Does the A1 use the nozzle pressure sensor, toolhead odometer, or anything else to automatically calibrate extrusion multiplier for the filament before starting the print, or does it only use the extrusion multiplier in the slicer profile?

  4. If I am doing a multi-material or multi-colour print, does the A1 do automatic flow dynamics calibration or extrusion multiplier calibration for all the filaments (such as when it switches to that filament for the first time during the print)? If so, do I need to enable the flow dynamics calibration checkbox to get it to do this?

3 Likes

I have these exact same questions - except #4 which I believe the wiki states that it can only do the first filament used in a multi-material print. I’m amazed this isn’t clearer considering the extruder sensor is a major marketing point.

1 Like

Hi, I’ve the same questions !
Is it necessary to set the extrusion multiplier on every filament or not?
I’ve the A1 from Christmas, I made some prints and I never do a calibration for any filament. All the prints came out perfect ! I think the printer do a flow calibration for any colour on a multicolor print. When the printer purge the filament after color change, starts to print slowly on the purge tower, then increase the speed… I think this is a kinda “flow calibration”…

I think the flow calibration of the printer, take priority over the flow multiplyer.

What do you think?

Yes I agree, it seems that it only does the flow dynamics for the first filament.

But given that the flow dynamics calibration only requires access to the purge wiper (and is not done on the bed), I don’t know why it couldn’t just run the calibration into the purge wiper for the 2nd, 3rd, etc. filaments the first time it switches to them, since it has to do a purge anyway when changing filaments, so the first swap could just be a normal purge + flow dynamics calibration at the end.

Since it is doing this calibration into the purge wiper, this can be done at any point during the print, so I don’t see a logical reason why it is restricted to only auto-calibrating the 1st filament.

1 Like

For Bambu filaments, in theory it shouldn’t be necessary to set the extrusion multiplier, because Bambu has already calibrated that specific filament with each specific Bambu printer. So for example, the default extrusion multiplier in the Bambu PLA Basic profile for the A1 (0.98 multiplier) should already be correct.

But for 3rd party filaments, yes it may be necessary to calibrate the extrusion multiplier, because the Generic profiles that Bambu provide are a sort of average, so they will not be 100% optimal for every 3rd party filament you could be using.

Regarding “flow calibration”, do you mean automatically calibrating the extrusion multiplier, or do you mean “flow dynamics calibration”?

Flow dynamics calibration is the same as linear advance/pressure advance, which is specifically to do with making sure the nozzle pressure is as constant as possible throughout every extrusion line, which is supposed to get rid of things like bulging corners on the print, and that is calibrated into the purge wiper from what I can tell.

But I don’t think the printer calibrates extrusion multiplier or flow dynamics using the prime tower. To be honest, I’m not sure exactly why it starts slow and then speed up when printing the prime tower immediately after a filament change.

However, my best guess is that when it starts printing that layer of the prime tower, the nozzle is obviously not primed. Therefore, if you were to start printing on the tower at full speed, because molten plastic in 3D printing is sort of a non-Newtonian fluid, then it will resist being pushed into the empty nozzle quickly, and so you will not extrude the first portion of the prime tower (for example the first 10%) which will leave a gap on the tower because the plastic has not been able to come out of the nozzle yet.

However, if you instead start off slow, the plastic can flow more easily, and so the plastic will start flowing out of the previously empty nozzle much earlier in the prime tower, so you will not miss as much of the layer.
Then, once the plastic has started flowing onto the prime tower at the slow speed, you can then speed up to the full volumetric speed in order to finish the prime tower quicker/finish priming the nozzle quicker.

Same as the other calibrations, it is not very clear where is the results being used or stored, so it sounds more magical than it is.

I dont know the answers but I ran all the calibrations and none and the prints look the same. I have ultra cheap pla, bambu and esun, and with some dual color esun I get crappier prints (holes on top.layer) but the calibrations dont do anything.

Solution for bambulabs: add a clear informative tooltip, what is being measured, where it is stored/reloaded from and what does it affect

1 Like

Since A1 doesn’t support “auto calibration” under “Calibration → Flow Dynamics Calibration” (Maybe due to lack of Micro Lidar), I’m wondering if the “Flow Dynamics Calibration” checkbox before each print actually does anything for A1. At least, I don’t see a difference between turning it on / off.

It has a significant impact. Prior to the XY Mech Calibration, the printer goes through an extrusion calibration phase where it purges a certain amount of filament. This process results in a distinct enhancement in print quality. When attempting to print with white E-SUN PLA+ without this calibration, I encountered issues. The problem arose from an overextrusion of filament during printing. As a consequence, the nozzle began to scrape the layers it was supposed to be printing on, causing a deterioration in print quality after a few layers. Eventually, the nozzle even began colliding with the part in the middle of the print, leading to a failed print.

Interesting, so are you saying that the Flow Dynamics Calibration calibrates the Extrusion Multiplier as well as Flow Dynamics (aka Pressure Advance)?
Or do you mean it only overextrudes in the corners if you don’t use the calibration (i.e. a bad default pressure advance value)?

I’m not sure if there has been a modification to the extrusion multiplier value itself, but it is definitely extruding less material based on the mentioned calibration with the filament I used. I hope someone with more knowledge than me will correct me if I have made a false statement here. However, I have tested it multiple times and consistently obtained the same results each time. But I must mention that working with the white PLA+ from E-SUN was always a bit challenging, as it also consistently required a way lower flow rate on my Ender machines, around 92%, whereas other PLA+ filaments from the same brand typically perform well in the 97% range. Perhaps this is affecting my results and findings.

Edit:

From the Docs: Flow Dynamics Calibration | Bambu Lab Wiki

From fluid mechanics, when a newtonian fluid flow through a hole, it needs pressure, and the pressure is proportional to the flow rate.

Exactly what i was seeing with my prints.

Yes, I think in your case it would be less filament due to the correct k factor used in flow dynamics from the flow dynamics calibration step?

From the wiki you linked, it mentions that:

So we implemented the flow dynamic control to solve the problem, similar to the “Pressure advance” in Klipper or the “Linear advance” in Marlin, with some non-linear effect compensation added.

Which is why I’m fairly sure that the Flow Dynamics Calibration (FDC) step in the pre-print process only changes the flow dynamics/pressure advance k factor value to match the exact filament being printed with, rather than using the default value in the filament profile in the slicer.

Personally with Bambu filament I have noticed very little difference between FDC on vs off, with maybe a very small improvement from having it on. But this is probably because Bambu has spent a while calibrating the default values for each of their filaments (which is used when FDC is off) to closely match the optimal value needed.

Whereas with 3rd party filaments, the default value may be very bad for that specific filament, so the difference is large with FDC off (use defaults) vs FDC on.
Also, if you have not calibrated the extrusion multiplier already for the eSun PLA+ you mentioned, it may be that you are also getting some overextrusion with the generic PLA profile due to an extrusion multiplier that is too large?

Yes, I think in your case it would be less filament due to the correct k factor used in flow dynamics from the flow dynamics calibration step?

Exactly what i was thinking. As the pressure is proportional to the flow rate, lowering the pressure is (probably) the same as lowering the flow rate.

Which is why I’m fairly sure that the Flow Dynamics Calibration (FDC) step in the pre-print process only changes the flow dynamics/pressure advance k factor value to match the exact filament being printed with, rather than using the default value in the filament profile in the slicer.

Same here, after reading the linked wiki im pretty sure it will not touch the extrusion multiplier.

Whereas with 3rd party filaments, the default value may be very bad for that specific filament, so the difference is large with FDC off (use defaults) vs FDC on.

This is probably the reason i only noticed it this badly with the white PLA+ i used and always had troubles with in the past.

Also, if you have not calibrated the extrusion multiplier already for the eSun PLA+ you mentioned, it may be that you are also getting some overextrusion with the generic PLA profile due to an extrusion multiplier that is too large?

I used the correct eSun PLA+ profile and never had the need to calibrate my filaments manually with the A1. Been trough 6 rolls of eSun PLA+ and never had any issue with it besides the white one.

This means:

  1. FDC will not modify the extrusion multiplier, but since the pressure changes, the flow rate will also be affected.
  2. Bambu Labs profiles (including the eSun ones) and especially the filaments are pretty darn good.
  3. The white PLA+ from eSun is really bad (3 rolls now with the same results).

Thanks you for this nice conversation! :slight_smile:

My understanding of the flow dynamics calibration (auto) is the use of known factors
based on filament brand, type, nozzle size and the micro lidar tech results previously gathered and stored in the cloud, hence why you are asked if you would like to load said setting when you log into bambu studio , of by default for users manually added/saved results ?

You’re welcome :slight_smile:

One thing I would like to clarify though is that based on what the wiki says, I’m fairly certain that what it is doing is modifying the pressure when the print head is accelerating or decelerating, such as at the start or end of a line, or when entering or exiting a corner, etc.

As the filament is not rigid body, when the extruder starts to extrude, the filament will be compressed to generate the pressure. The compression process will delay the response of the real flow, as the extruder only provides the amount of the filament that needs to extrude, no extra.

So flow dynamics is almost identical to pressure advance, which means that the pressure/flow rate should not be modified at all in the middle of a long line for example, and it should not modify the flow rate/pressure globally like extrusion multiplier does. It only comes into effect in the scenarios I described above and a few others.

The image on the Bambu wiki shows the effect of turning it off/having a bad value vs having a good value, and I also found another helpful image from the prusa wiki which shows a similar thing:


You can see that where there are long lines for example, the middles of those lines are good in both examples, it is really only the corners of the shape and starts and ends of lines that are improved.

You can find further examples of exactly what flow dynamics should be improving by searching for images/videos/articles about pressure advance or linear advance, since as it says in the Bambu wiki, flow dynamics is almost identical to those 2 processes, which have been around for several years now with many tutorials etc.

Hi, you are absolutely right. I did a test today with my A1, with 4 prints:

  1. k factor 0, calibration checkbox off
  2. k factor 0.3, calibration checkbox off
  3. k factor 0, calibration checkbox on
  4. k factor 0.3, calibration checkbox on

The result tells everything:
1 has slightly over-extrusion on the edges.
2 is a complete mess with everything looking like melted.
3 and 4 are identical and perfect.

So, turning on “Flow Dynamics Calibration” checkbox will basically use an optimized k-factor that will override your k-factor that is assigned to the spool.

2 Likes

Would be cool to know exactly what K value it is setting. I’m used to manually configuring linear advance coming from the world of Marlin.

For example, I ran the manual calibration for some Hatchbox PLA and I’d like to know how my selection compares against what this fancy automagic flow compensation thingy is doing.

3 Likes

Thanks for the great info.
Just to add, I noticed that if the plate type is changed to cool plate, the flow dynamics calibration tick box defaults to On instead of Off in the print dialogue. I imagine this makes a difference for the Lidar in the X1 but I don’t know what difference it makes in the A1’s case.

The printer likely uses both methods for different purposes. The purge into the wiper with pulsing extrusion is used to calibrate the pressure response of the extruder system, while the purge line on the bed is used to ensure proper first layer adhesion and flow. The wiper purge might allow for more controlled and precise measurements of pressure changes without the variables introduced by bed adhesion and first layer squish.

Yeah, I’d love to see it, also that way not have to run the calibration every time.

Currently experimenting with thoses… my understanding is that for each filament you need to make manual calibration for “Dynamics Flow” and “Flow Rate”. Then you can use the Dynamics Flow (aka Pressure Advance) profile for specifics slots on the AMS. Then they will use the corresponding slot profile with your customs filament. I am correct?

So lets say i have calibrated a filament “Dynamics Flow” and named it A.

Now i have a custom filament set on slot 1 for the current print. My AMS slot 1 profile is set Generic PETG with PA Profile set to A.

If i check Dynamic Flow Calibration to ON before print. It will print with a calculated K factor for the actual print and ignore my PA Profile?