Vos coins d'impression sont légèrement arrondis, ou au contraire vous observez des petites bavures à chaque changement de direction. Ce défaut a un nom : un pressure advance mal calibré. Bonne nouvelle — c'est l'un des réglages Klipper les plus accessibles, et dix minutes suffisent pour l'affiner précisément. Ce guide couvre les deux méthodes pratiques (TUNING_TOWER officielle et calibration OrcaSlicer intégrée), les valeurs de référence par type d'extrudeur, et tout ce qu'il faut savoir sur le smooth time.

Pressure advance : le problème qu'il résout

Le filament n'est pas un fluide parfaitement incompressible. Quand la tête d'impression accélère ou décélère, une quantité variable de filament se trouve comprimée dans le chemin hotend-buse. Résultat : à l'accélération, la pression met un court instant à se rétablir — c'est la sous-extrusion en entrée de coin. À la décélération, la pression résiduelle continue de pousser du filament quand la tête ralentit — c'est l'oozing, ces petits bourrelets ou bavures visibles aux angles.

Le pressure advance anticipe ces variations en jouant sur la vitesse de l'extrudeur quelques millisecondes avant et après chaque changement de vitesse de la tête. Il ne s'agit pas d'un simple multiplicateur de débit : c'est une compensation dynamique en temps réel.

Ce que le pressure advance corrige

  • Bavures et blobs aux angles — signe d'un PA trop bas (oozing par pression résiduelle)
  • Coins arrondis ou sous-extrusion en entrée de virage — signe d'un PA trop haut (l'extrudeur est trop agressif)
  • Stringing sur les déplacements rapides — contribution partielle, en complément de la rétraction

Ce que le pressure advance ne corrige pas

Un point important, souvent source de confusion chez les débutants Klipper : le pressure advance n'a aucun effet sur le ringing (ghosting, ondulations visibles sur les murs plats après un changement de direction). Le ringing est un phénomène mécanique causé par les vibrations de la tête d'impression — il est traité par une fonctionnalité distincte : l'Input Shaping (resonance_compensation dans Klipper). Si vos impressions présentent des ondulations en dehors des angles, c'est l'Input Shaping qu'il faut calibrer, pas le pressure advance.

Prérequis avant de calibrer

La calibration du pressure advance suppose que votre imprimante est déjà opérationnelle sous Klipper. Voici ce dont vous avez besoin :

  • Klipper fonctionnel avec accès à l'interface web (Mainsail ou Fluidd) — si ce n'est pas encore le cas, consultez le guide Installer Klipper sur Raspberry Pi
  • printer.cfg accessible en écriture (via l'éditeur de configuration de Mainsail ou en SSH)
  • Imprimante nivelée et Z-offset correct — un plateau mal réglé faussera la lecture de la tour
  • Buse propre, à température, filament correctement chargé
  • Un fichier STL à télécharger (méthode 1) ou OrcaSlicer 2.3+ installé (méthode 2)

Le pressure advance est dépendant de trois variables : votre extrudeur, votre hotend, et votre filament. Cela signifie qu'il faudra refaire la calibration si vous changez de type de filament (PLA → PETG, par exemple) ou si vous modifiez significativement votre extrudeur. Une valeur calibrée sur du PLA Polymaker ne sera pas optimale pour du PETG Bambu — la différence peut atteindre 15 à 25 % selon les retours communautaires sur r/klippers et r/3Dprinting.

Méthode 1 : TUNING_TOWER (méthode officielle Klipper)

C'est la méthode de référence documentée par Klipper. Elle imprime une tour dont la valeur de pressure advance augmente à chaque couche, permettant d'identifier visuellement la hauteur optimale.

Étape 1 — Préparer le fichier STL

Téléchargez le fichier square_tower.stl depuis la documentation officielle Klipper (section Pressure Advance, dossier docs/prints/ du dépôt GitHub Klipper). Il s'agit d'un simple cube creux aux parois fines.

Paramètres de slicing à appliquer dans OrcaSlicer ou PrusaSlicer :

  • Vitesse d'impression : 100 mm/s minimum (la lenteur masque les défauts PA)
  • Infill : 0 % (vide intérieur)
  • Hauteur de couche : 75 % du diamètre de buse (ex : 0.3 mm pour une buse 0.4 mm)
  • Périmètres : 3 minimum
  • Désactiver les coutures (seam) ou les mettre en coin — éviter le mode aléatoire qui brouille la lecture
  • Désactiver l'option "temps minimum par couche" (minimum layer time) dans les réglages de refroidissement — cette option ralentit automatiquement l'impression et fausse la lecture PA. Le fan cooling doit rester à sa vitesse normale pour calibrer dans des conditions représentatives des impressions réelles

Étape 2 — Lancer la séquence dans la console Klipper

Avant de lancer l'impression, entrez ces commandes dans la console Mainsail/Fluidd (onglet Terminal) :

SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500

Cette commande ralentit volontairement la tête dans les virages pour exacerber l'effet du PA et rendre la lecture plus claire.

Lancez ensuite l'impression, puis immédiatement après le début — dans la console :

Pour un extrudeur direct drive :

TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.005

Pour un extrudeur Bowden (tube PTFE entre moteur et hotend) :

TUNING_TOWER COMMAND=SET_PRESSURE_ADVANCE PARAMETER=ADVANCE START=0 FACTOR=.020

Klipper va automatiquement augmenter la valeur du pressure advance à chaque couche pendant l'impression de la tour.

Étape 3 — Lire la tour et calculer la valeur

Une fois la tour imprimée, examinez-la de près (loupe ou macro photo recommandée) :

  • Couches basses (PA faible) : coins avec bavures ou blobs — trop de pression résiduelle
  • Zone optimale : coins nets, sans bavure ni arrondi — c'est la hauteur à mesurer
  • Couches hautes (PA élevé) : coins arrondis, extrusion insuffisante juste avant les virages

Mesurez la hauteur de la couche idéale avec un pied à coulisse ou une règle. Calculez ensuite :

pressure_advance = START + (hauteur_mesurée × FACTOR)

Exemples concrets :

  • Direct drive, couche optimale à 12 mm : 0 + (12 × 0.005) = 0.060
  • Bowden, couche optimale à 9 mm : 0 + (9 × 0.020) = 0.180

Méthode 2 : calibration intégrée dans OrcaSlicer

OrcaSlicer 2.3 intègre un outil de calibration pressure advance directement dans son interface, sans passer par la console Klipper. C'est la méthode la plus rapide et la moins intimidante pour les utilisateurs qui découvrent Klipper.

Procédure OrcaSlicer

  1. Ouvrez OrcaSlicer, sélectionnez votre profil imprimante Klipper
  2. Allez dans le menu Calibration → Pressure Advance
  3. Choisissez PA Tower
  4. Configurez la plage : Start (0.0), End (0.08 pour direct drive / 0.25 pour Bowden), Step (0.002 pour direct drive — 0.010 à 0.020 pour Bowden)
  5. Slicez et lancez l'impression — vitesse recommandée : 120 mm/s minimum
  6. Lisez la tour comme décrit ci-dessus : identifiez la couche aux coins les plus nets
  7. OrcaSlicer affiche les valeurs correspondant à chaque bande de la tour pour faciliter la lecture

L'avantage de cette méthode : les valeurs de PA sont déjà annotées sur le modèle imprimé, évitant le calcul manuel. Le résultat est identique à la méthode TUNING_TOWER — les deux utilisent le même moteur Klipper sous le capot.

Limite à connaître : la calibration OrcaSlicer nécessite que votre imprimante soit configurée comme profil Klipper dans OrcaSlicer (connexion Bambu Connect non applicable ici — cette méthode est pour les imprimantes tierces sous Klipper, pas pour les Bambu Lab).

Smooth time : faut-il y toucher ?

Le paramètre pressure_advance_smooth_time (valeur par défaut : 0.040 secondes) lisse les corrections de pressure advance pour éviter des mouvements brusques de l'extrudeur. Dans l'immense majorité des cas, la valeur par défaut est parfaitement adaptée et ne nécessite aucun ajustement.

Les seuls cas où une modification peut être pertinente :

  • Vibrations ou sons anormaux de l'extrudeur après calibration PA sur impressions très rapides (> 200 mm/s) → essayer de réduire à 0.020-0.030
  • Sur-corrections visibles de l'extrudeur (stringing paradoxalement augmenté après calibration) → réduire légèrement smooth_time

Si votre tour de calibration donne de bons résultats, ne touchez pas au smooth_time. Modifier les deux paramètres simultanément rend le diagnostic impossible.

Sauvegarder et appliquer dans printer.cfg

Une fois votre valeur calculée, ouvrez printer.cfg (éditeur Mainsail, VS Code en SSH, ou directement via le Raspberry Pi) et localisez la section [extruder]. Ajoutez ou modifiez la ligne :

[extruder]
pressure_advance: 0.060
# pressure_advance_smooth_time: 0.040  # Valeur par défaut — décommenter seulement si nécessaire

Sauvegardez et relancez Klipper (bouton "Save & Restart" dans Mainsail). La valeur est maintenant persistante entre les redémarrages.

Astuce : valeurs par filament via macro PRINT_START

Si vous alternez régulièrement entre PLA et PETG (qui ont des valeurs PA différentes), une approche plus flexible consiste à passer la valeur PA en paramètre de votre macro PRINT_START. Dans votre slicer, ajoutez l'argument dans le G-code de démarrage :

PRINT_START ... PA=0.060

Et dans votre macro Klipper :

[gcode_macro PRINT_START]
gcode:
  {% set pa = params.PA|default(0.060)|float %}
  SET_PRESSURE_ADVANCE ADVANCE={pa}
  # ... reste de la macro

Cette configuration est détaillée dans les guides communautaires Voron et dans la documentation de Klippain (Frix-x), qui va encore plus loin avec des profils PA automatiques par filament.

Valeurs de référence selon votre configuration

Ces plages sont issues de la synthèse des données partagées sur r/klippers, r/3Dprinting et les forums LesImprimantes3D. Elles servent de point de départ pour orienter votre calibration, non de valeurs définitives.

Type d'extrudeur Plage typique Point de départ recommandé
Direct drive compact (Voron, Orbiter, CW2) 0.02–0.06 0.04
Direct drive standard (Creality K1, Sovol SV08) 0.03–0.08 0.05
Prusa Nextruder (builds communautaires Klipper — la MK4S stock utilise le firmware Prusa Buddy) 0.03–0.06 0.04
Bowden court (< 200 mm) 0.05–0.12 0.08
Bowden long (Ender 3 stock, > 400 mm) 0.10–0.25 0.15

Par type de filament (à adapter sur votre imprimante) :

  • PLA : valeur de calibration de référence
  • PETG : généralement 10–20 % supérieur au PLA (plus visqueux, pression résiduelle plus forte)
  • ABS / ASA : proche du PLA ou légèrement supérieur selon la marque
  • TPU souple : souvent 0 ou très proche de 0 — la flexibilité du filament absorbe naturellement une partie de la pression

FAQ

Faut-il recalibrer le pressure advance pour chaque bobine de filament ?

Pas nécessairement pour chaque bobine, mais oui pour chaque type de filament différent (PLA, PETG, ABS) et idéalement pour chaque marque. La viscosité du polymère fondu varie selon la composition — une bobine de PLA Polymaker vs une bobine de PLA Sunlu peut donner des valeurs PA différentes de 10 à 15 %. Pour un résultat optimal, calibrez au moins une fois par type de filament que vous utilisez régulièrement.

Pressure advance vs linear advance (Marlin) : c'est la même chose ?

C'est le même concept, différent nom. Linear advance est l'implémentation dans le firmware Marlin (paramètre K), pressure advance est l'implémentation Klipper. Les deux compensent le retard de pression dans le hotend, avec des algorithmes légèrement différents. Si vous migrez de Marlin vers Klipper, votre valeur K Marlin ne se transfère pas directement — il faut recalibrer avec la méthode Klipper.

Mon imprimante n'est pas sous Klipper — puis-je quand même calibrer le PA ?

Oui, sous une autre forme. Sur Marlin 2.x, le linear advance (K value) est l'équivalent. Bambu Lab intègre une compensation de pression automatique dans son firmware propriétaire — pas de calibration manuelle possible ou nécessaire. Les imprimantes Creality sous firmware stock (Marlin) peuvent activer le linear advance via une modification du firmware si l'option est compilée (variable selon les modèles).

Pourquoi mes coins sont-ils encore arrondis après une calibration PA correcte ?

Si les coins restent arrondis malgré un PA bien calibré, le problème est probablement l'accélération d'impression. Un arrondi systématique sur tous les coins indique que la tête prend les virages trop vite pour maintenir les segments de perimeter à leur vitesse nominale. Réduire max_accel dans printer.cfg, ou baisser la vitesse d'impression dans le slicer, résout généralement ce problème. À ne pas confondre avec le ringing (ondulations sur les murs plats), qui est traité par l'Input Shaping.

Quelle est la différence entre pressure advance et Input Shaping ?

Les deux sont des fonctionnalités Klipper de compensation, mais elles agissent sur des phénomènes distincts. Le pressure advance corrige les défauts liés à la pression dans le système d'extrusion (blobs aux angles, stringing). L'Input Shaping (resonance compensation) corrige les vibrations mécaniques de la structure de l'imprimante lors des changements de direction — ce sont les ondulations ou "fantômes" visibles en dehors des coins. Les deux peuvent être calibrés indépendamment et se complètent : un printer bien réglé bénéficie des deux.