U1: Automatically include all eligible Auto-Refill backup toolheads in Dynamic Flow Calibration

When Dynamic Flow Calibration is enabled before a print, the U1 should calibrate not only the initially used toolhead, but also every loaded toolhead that is eligible as an Auto-Refill/backup source for the active filament.

Alternatively, the display should provide the options:

  • Used toolheads
  • Eligible Auto-Refill backup toolheads
  • All loaded toolheads

The calculated Pressure Advance value should be retained and applied separately for each physical toolhead if Auto-Refill switches tools during the print.

I’ll move this to Feature Requests.

Fully automatic calibration of all toolheads may first cause the pre‑print preparation time to jump from 1 minute to as much as 10–15 minutes.

Another issue concerns how to define “Eligible Auto‑Refill backup toolheads” – should it be the same color of the same filament type? There are still many filament types that cannot be clearly recognized by U1, e.g., SUNLU/eSUN PLA in red – both might be recognized as “Generic”.

An option that allows users to manually select which toolheads they want to calibrate seems like a reasonable compromise solution.

Another possible and potentially more intuitive integration point would be the existing filament-loading screen.

The user already selects the filament material and color when loading a spool. This screen could include an optional submenu or checkbox:

Calibrate Pressure Advance after loading

Pressure Advance would not need to be active during the physical loading process itself. Instead, the calibration should start after:

  1. The filament has been loaded successfully;
  2. The filament has reached the nozzle;
  3. The normal purge/loading extrusion has completed;
  4. The hotend has reached the selected calibration temperature.

Proposed loading workflow

  1. The user selects the toolhead.
  2. The user selects filament manufacturer, material, subtype, and color.
  3. The display shows the recommended calibration temperature.
  4. The user can change the temperature within the hotend’s safe limits.
  5. The user chooses one of the following:
    • Load only;
    • Load and calibrate Pressure Advance;
    • Load now and calibrate later.
  6. The printer loads and purges the filament.
  7. If requested, the printer performs the existing Dynamic Flow Calibration routine.
  8. The measured PA value is stored for that toolhead’s newly loaded-filament session.

After calibration, the filament screen could display:

  • Toolhead: T1
  • Filament: Generic PLA, Red
  • PA status: Calibrated
  • PA value: 0.0184
  • Calibration temperature: 220 °C
  • Nozzle diameter: 0.4 mm (may be still set in preferences)

Calibration lifetime

The measured PA value should remain valid until:

  • The spool is unloaded or replaced;
  • The filament assignment is changed;
  • The nozzle/hotend configuration changes;
  • The user manually clears or repeats the calibration.

Completing a print, switching toolheads, or restarting the printer should not invalidate the value.

The stored PA value should be reapplied whenever the corresponding toolhead is activated, including when it is selected automatically by Auto-Refill.

Benefits for Auto-Refill

This would solve much of the backup-filament problem before the print starts.

If every newly loaded spool can optionally be calibrated during loading, the firmware can determine which Auto-Refill candidates already have a valid PA value. At print start, the display could show:

  • T1 — used by print, PA calibrated
  • T2 — Auto-Refill candidate, PA calibrated
  • T3 — Auto-Refill candidate, not calibrated
  • T4 — unrelated filament

The user could then decide whether to:

  • Start immediately;
  • Calibrate only T3;
  • Recalibrate selected toolheads;
  • Continue using the filament profile/default PA value.

This avoids recalibrating every toolhead before every print and distributes the preparation time to the moment when a spool is loaded.

Backend considerations

The PA record should be associated with a loaded-filament session rather than only with the material name or color. Suggested metadata includes:

  • Physical toolhead ID;
  • PA value;
  • Calibration temperature;
  • Nozzle diameter/hotend ID;
  • Filament manufacturer, material and subtype;
  • Filament-session validity flag;
  • Calibration timestamp.

Generic material metadata should not cause a PA value to be copied between different spools or toolheads.

On an unload event, only the PA record belonging to that toolhead should be invalidated. A new load should create a new filament session, even if the user selects the same material and color again.

Failure handling

A failed PA calibration should not prevent the filament from being loaded.

If calibration fails or produces an out-of-range result, the display should:

  • Report that no valid dynamic PA value was stored;
  • Retain the filament as successfully loaded;
  • Fall back to the configured filament PA/default value;
  • Offer Retry, Change temperature, or Skip.

Relationship to print-start calibration

Print-start Dynamic Flow Calibration should remain available, but it would become a secondary option:

  • Already calibrated toolheads are skipped by default;
  • Uncalibrated toolheads used by the print are selected by default;
  • Uncalibrated Auto-Refill candidates are shown as recommended;
  • The user can still manually select any loaded toolhead.

This would create a consistent lifecycle:

Load spool → optionally calibrate PA → store PA → reuse for prints and Auto-Refill → clear PA when spool is unloaded.

1 Like