Factor K ("pressure advance"), slicers and g-code

Is the following correct?

Bambu Studio

Factor K (“pressure advance”) is being stored in the printer, changing Factor K on Device tab doesn’t affect g-code generated by Bambu Studio and Factor K will only be applied by printer during printing using the value stored in the printer (assuming “Flow Dynamics Calibration” was disabled).

g-code always contains

; enable_pressure_advance = 0
; pressure_advance = 0.02

which means that default “pressure advance” value from g-code is disabled and will be ignored by the printer.

Enabling “Flow Dynamics Calibration” forces printer to ignore both filament profile (g-code) and stored in the printer K values. The printer will calibrate the flow rate in the printing preparation stage, and this printing task will use the calibrated K value.

OrcaSlicer

If “pressure advance” disabled in filament properties then - same as with Bambu Studio.

If “pressure advance” enabled in filament properties then g-code will contain

; enable_pressure_advance = 1
; pressure_advance = <value from filament properties>

and the value from g-code will be used by printer instead of whatever is stored in the printer and selected on Device tab.

Enabling “Flow Dynamics Calibration” forces printer to ignore both filament profile (g-code) and stored in the printer K values. The printer will calibrate the flow rate in the printing preparation stage, and this printing task will use the calibrated K value.

===

Does the above also mean, that it doesn’t matter what filament (and Factor K) was selected on Device tab if “Flow Dynamics Calibration” is enabled? In other words: the only purpose of selecting filament on Device tab is to let printer know what Factor K should be used. Is that true as well?

Does min max temperature in the filament selection on Device tab do anything? Temperature is defined in g-code anyway, isn’t it?

Hi @A3DP,

Welcome to the forum.

For BS, yes. I’m not sure what you meant by ignoring filament g-code. If it relates to a k value set in the filament g-code, then yes.

For OS (based on tests done months ago - just in case something changed):
I am not sure what the g-code will contain, but the k-value set in the filament overrides the printer one (unless something changed recently);
For the A1 series printer, the flow dynamics calibration …

Not only. There are different ways to set the k value for a filament, which entails storing it in the device. However, setting the filament in the device is helpful for other features, such as safety prompts, and even more so if you use AMS.
Also, let’s not forget the printing of Maker World.

1 Like

Thank you, @JayZay

Not only. There are different ways to set the k value for a filament, which entails storing it in the device. However, setting the filament in the device is helpful for other features, such as safety prompts, and even more so if you use AMS.

Interesting. Do you know any specific features (safety prompts) that use filament properties from the device? Anything related to the min/max nozzle temperature for the selected filament?

I don’t have AMS and mostly print from BS with "Flow Dynamics Calibration” enabled and select filament on Device property rather to make sure I won’t forget (by the next print) what filament is in the extruder.