Aller au contenu

GO Print

[Klipper] Dual Hot end : BED_MESH_CALIBRATE & Macro


Messages recommandés

Bonjour à tous,

Je viens de tuner ma tornado avec une MKS SBASE 1.3 et une chimera Watercooled, au final pas mal de bugs sous marlin 2 provoquant de l'instabilité dés le passage en dual color.

Du coup je me lance dans klipper depuis ce week end. Grace au  super tuto trouvé sur le forum les premières étapes sont faites, maintenant je rame un peu sur le tuning "fin", du coup je fais appel à vous !

Il me reste deux problèmes :

M'inspirant du tuto j'ai fais une macro G29,start_Gcode & purge (voir PJ).
1)  après avoir fait le BED_MESH_CALIBRATE je ne peux pas dérouler ma purge car la commande G1 X20 Y3 Z.20 revient en erreur le indiquant que le Z est hors plage, ce que je ne comprend pas. juste avant la commande BED_MESH_CALIBRATE ça fonctionne, juste après ça marche plus. Pourtant cette commande n'est pas censée toucher à l'offset "absolu" il me semble. ?

2) j'ai créé des macros T0 et T1 pour gérer le switch de buse, mais quand l'imprimante switch de buse et que la buse qui entre en phase de travail était en température de veille (175° environ), la montée en température se fait en laissant la buse au contact, ce qui est forcement moche. Je souhaiterai dans ce cas la relever un peu. Mais pas forcement systématiquement pour éviter de trop perdre de temps sur les alternances courtes . Si vous avez une piste je suis preneur

Edit : concernant le point 1) le problème a été réglé en ajoutant :

[stepper_z]
Position_min : -1.5 

 

TEVO_Tornado-Chimera_MKS_SBASE_BLTOUCH_inprogress.cfg

Modifié (le) par malphodo
  • J'aime 1
Lien vers le commentaire
Partager sur d’autres sites

Salut,

J'irais plutôt voir du coté des réglages de ton slicer, par défaut c'est lui qui gère les températures.

Il n'y a rien dans Klipper pour gérer les températures en standby. Mais c'est faisable dans les macros T0 et T1 si, et seulement si, le slicer n'interfère pas. Il faudra donc lui retirer la gestion de la température. A toi de voir si tu choisis de gérer ça dans Klipper ou via le slicer. Avec klipper ce n'est pas forcément plus simple mais je peux t'aider si tu vas dans ce sens.

Joint le fichier GCODE qui te pose problème à imprimer. Je pourrai te dire plus facilement ce qui ne va pas 😉.

Lien vers le commentaire
Partager sur d’autres sites

bonjour,

Je vais sans doute parler bien plus clairement que je ne pense... Je n'ai pas encore utilisé les macros
Peux être rajouter un paramètre à la macro ? et un M109 avant de redescendre le Z
 

[gcode_macro T0]
default_parameter_EXTRUDER_TEMP: 175
gcode:
    {% if not printer.toolhead.extruder == "extruder" %}
    ACTIVATE_EXTRUDER EXTRUDER=extruder
    SET_GCODE_OFFSET Z=1 MOVE=1 MOVE_SPEED=400              # Adjust z-height
    SET_GCODE_OFFSET X=0 MOVE=1 MOVE_SPEED=300              # Clear X offset
    M109 T0 S{EXTRUDER_TEMP}
    SET_GCODE_OFFSET Z=-1 MOVE=1 MOVE_SPEED=400             # Adjust z-height
    {% endif %}
[gcode_macro T1]

puis qque chose avec

SET_GCODE_VARIABLE MACRO=<macro_name> VARIABLE=<name> VALUE=<value>
Modifié (le) par r2d2
Lien vers le commentaire
Partager sur d’autres sites

@r2d2 Écris comme ça, ça t'oblige à paramétrer la température a chaque appel à T0/T1. Soit en modifiant le GCODE soit les script dans le slicer. Dans les deux cas ce sera vite fastidieux. Si tu change de matériaux ou veut extruder un peu plus chaud/froid, il faut tout modifier.

Je ne voulais pas partir trop loin à l'origine, mais maintenant c'est loupé 😛. Je le verrai plutôt comme ça:

  • une macro de déchargement, commune pour tous les extrudeurs.
    1. Elle enregistrer le target_temp de l'extrudeur actif en variable "S" dans sa macro de chargement (T0,T1,etc.)
    2. Puis met l'extrudeur en température de standby définie en paramètre avec une valeur fixe ou un offset p/r à target_temp.
  • une macro de rechargement par extrudeur: T0, T1, etc. Chacune aura en variable "S" la température à atteindre pour l'impression.
    1. Appel optionnel à la macro de déchargement. S'il n'est pas ici il faut le mettre dans le script de déchargement du slicer.
    2. M109 T<index> S{S}
    3. ACTIVATE_EXTRUDER EXTRUDER=extruder, etc. le reste du script est bon.

Tout ça ne marche que si on peut récupérer target_temp et que donc le slicer ne l'a pas changé avant. Au moins ça peut gérer une température différente pour chaque outil et reprend celle définie dans le slicer pour l'impression. Seule la température de standby n'est pas flexible mais je te conseille de plutôt mettre un offset p/r à target_temp et ça le deviendra.

Lien vers le commentaire
Partager sur d’autres sites

Merci à tous les deux, je vais etudier ça de pret. 

Curieusement la température de stand by marche bien par défaut, je pense que ça vient effectivement du slicer. Du coup ce qui me manque c est juste un petit z hop durant la montée en temperature. C est clairement un manque pour les multibuses.... et ça me gonfle flerais de repartir vers marlin.

Je vais voir si éventuellement je peux pas ajouter la fonction dans les scripts de klipper 

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...