Gærbek Posté(e) Janvier 10 Posté(e) Janvier 10 Il y a 2 heures, BO105cbs a dit : Et avec tout ça, je ne sais toujours pas pourquoi ma bestiole se cogne la tête "It's not a bug, it's a feature." Les miennes aussi se "cognent la tête" et c'est heureux sinon elles ne trouveraient pas la position d'initialisation. Elles le font à chaque fois car elles ne peuvent deviner si tu n'as pas déplacé la tête à la main, par exemple. Il y a, soit un interrupteur "fin de course", soit un contrôle du couple moteur par la CM qui donne le "signal d'arrivée". Toute l'impression se fera à partir de cette coordonnée. Qu'elle "tape" plus ou moins fort dépend certainement de l'accélération qu'elle a pu prendre avant d'arriver à ce buttoir (dont la position, je le répète, ne peut être connue à l'avance par le firmware).
fran6p Posté(e) Janvier 10 Posté(e) Janvier 10 (modifié) Il y a 6 heures, BO105cbs a dit : Et avec tout ça, je ne sais toujours pas pourquoi ma bestiole se cogne la tête Si vraiment ça te gêne, tu peux modifier le paramètre « driver_SGTHRS » comme expliqué dans cette documentation (version traduite en français par quelques membres de ce forum ). [tmc2209 stepper_x] diag_pin: dépend de la carte # Définit pour le MCU, la broche TMC DIAG driver_SGTHRS: 255 # 255 est la valeur la plus sensible, 0 la moins sensible La valeur utilisée par Creality est probablement trop conservatrice (trop peu sensible) afin d'assurer l'arrêt à tous les coups (brusque et bruyant). Tu peux aussi réduire la vitesse de mise à l'origine, voire réduire le courant des pilotes lors de cette procédure (généralement, c'est dans la section [homing_override] et ses macros associées (_home_x, _home_y…) que ça se fait). Exemple de mise à l'origine avec ma Qidi Q2 : Révélation Citation [gcode_macro _HOME_X] gcode: {% set HOME_CUR = 0.9 %} {% set driver_config = printer.configfile.settings['tmc2240 stepper_x'] %} {% set RUN_CUR = driver_config.run_current %} SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CUR} SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CUR} G28 X SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CUR} SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CUR} BEEP I=1 DUR=100 G91 G1 X-10 F3000 G90 [gcode_macro _HOME_Y] gcode: {% set HOME_CUR = 0.9 %} {% set driver_config = printer.configfile.settings['tmc2240 stepper_x'] %} {% set RUN_CUR = driver_config.run_current %} SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CUR} SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CUR} G28 Y SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CUR} SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CUR} BEEP I=1 DUR=100 G91 G1 Y10 F3000 G90 [gcode_macro _HOME_XY] gcode: _HOME_Y _HOME_X _HOME_Y [homing_override] axes:xy gcode: M204 S10000 M220 S100 SET_STEPPER_ENABLE STEPPER=extruder enable=0 {% if 'X' in params and 'Y' not in params %} _HOME_X {% endif %} {% if 'Y' in params and 'X' not in params %} _HOME_Y {% endif %} {% if 'X' in params and 'Y' in params %} _HOME_XY {% endif %} {% if 'X' not in params and 'Y' not in params %} SET_KINEMATIC_POSITION X=100 SET_KINEMATIC_POSITION Y=100 SET_KINEMATIC_POSITION Z={printer.toolhead.axis_maximum.z/2} G91 G1 Z5 F600 # G1 X-5 F2400 # G1 Y2 F2400 G4 P2000 _HOME_XY G90 G1 X{printer['gcode_macro PRINTER_PARAM'].max_x_position/2} Y{printer['gcode_macro PRINTER_PARAM'].max_y_position/2} F7800 G91 M400 G28 Z G1 Z20 F600 {% endif %} M204 S10000 G90 Modifié (le) Janvier 10 par fran6p
BO105cbs Posté(e) Janvier 12 Auteur Posté(e) Janvier 12 Le 10/01/2026 at 14:07, fran6p a dit : Si vraiment ça te gêne, tu peux modifier le paramètre « driver_SGTHRS » Ok, Merci de ta réponse et des liens, je vais tenter l'affaire..
BO105cbs Posté(e) samedi à 09:33 Auteur Posté(e) samedi à 09:33 Le 10/01/2026 at 14:07, fran6p a dit : La valeur utilisée par Creality est probablement trop conservatrice (trop peu sensible) afin d'assurer l'arrêt à tous les coups (brusque et bruyant). Bon, j'ai testé, mais il semble que l'esprit "Quidicien" ne soit pas identique à l'esprit "Crealyticien", en effet correction plus que modeste de la valeur existante fut introduite par mes soins, prudence étant mère de la sureté, mais ça m'a valu un plongeon digne d'un plaquage de rugby pour éteindre la machine, la tête qui pour une raison inconnue, s'est propulsée vivement vers l'arrière de la machine, faisant patiner les petites dents de sa courroie contre les méchantes des poulies d'entrainement. Donc retour à zéro (enfin l'ancienne valeur), puis mise de pansement sur la tête . Bon la machine n'a subi aucun dommage quand même. Le phénomène est étrange, car il n'est pas répétitif, parfois elle vient donner des coups de tête impressionnants, faut que je note dans quelle phase elle le fait. En attendant, c'est peaufinage des profils d'impression en PETG, pour obtenir des impressions pil-poil au niveau du rendu, notamment sur les surfaces supérieures, ou malgré la calibration du débit avec ses deux passes, j'ai de l'excédent transformant les partie supérieur en râpe à bois ou lime bâtarde.. 1 1
BO105cbs Posté(e) lundi à 15:56 Auteur Posté(e) lundi à 15:56 Ca y est j'ai trouvé quand la K1C se cogne la tête. Je lance donc une impression et dans l'ordre la belle fait Un test de valeur X & Y là elle se cogne bien la tête Fait vibrer son petit plateau Fait son contrôle de Z offset Va se laver la buse, se refait un Z offszet Fait à nouveau une vérif des valeurs max X & Y mais cette fois ci lentement, sans se cogner Va vers le bord gauche (vue de face) et débute ensuite son cycle d'impression. C'est donc à la fonction 1 que je dois porter des corrections pour quelle ressemble à sa soeur N° 6. Ouaip mais c'est ou dans le Klipper Créalitesque ? Merci de vos réponses avisés, qui me feront éviter des pansements..
pascal_lb Posté(e) lundi à 15:59 Posté(e) lundi à 15:59 il y a 2 minutes, BO105cbs a dit : Ouaip mais c'est ou dans le Klipper Créalitesque ? Peut être mais regarde quand même dans le GCODE de démarrage dans ton slicer
BO105cbs Posté(e) hier à 05:55 Auteur Posté(e) hier à 05:55 (modifié) Il y a 13 heures, pascal_lb a dit : Peut être mais regarde quand même dans le GCODE de démarrage dans ton slicer Merci de ta réponse, j'ai regardé un Gcode ordinaire tant avec CP 5 que 6 et rien ne transparait, de cette phase, qui en en fait semble être générée par la machine elle même. Dans le Gcode tout commence au "Wipe Start", rien sur la prise de référence. Ce problème de tête qui cogne semble être connu sur le "web", sans que ne soit évoqué une amélioration. Ce qui me gène c'est la différence de vigueur entre mon 3 et 6, ou vitesse de déplacement de la tête à la finale, ne comprenant pas pourquoi le 3 "cogne" et le 6 faisant exactement la même chose ne le fait pas, la tête cogne nettement moins, enfin presque rien. @fran6p m'avais répondu, le "soucis" viendrait de Klipper et son "homing override" ou "homing sans capteur" basé sur l'effort "stepper et TMC associé", ors les précieuses informations que m'a fourni @fran6p que j'ai trouvé, dans le marasme des infos klipérienne avec ma correction se sont mal passée, très mal passées même. Je ne sais pas si ce phénomène est "préjudiciable" m'enfin....., ne me rappelant plus non plus si la K1C le faisait dès la sortie du carton.... Modifié (le) hier à 05:57 par BO105cbs
fran6p Posté(e) hier à 09:02 Posté(e) hier à 09:02 (modifié) Si ça peut te rassurer, toutes les imprimantes CoreXY qui me sont passées par les mains «cognent» toutes plus ou moins fort. Enfin celles qui sous Klipper utilisent les pilotes moteurs pour détecter les fins de course (sensorless homing), rappel => https://www.klipper3d.org/fr/TMC_Drivers.html Le seul moyen, sauf à modifier l'imprimante en lui remettant des détecteurs de fins de course «classiques», et de «jouer» sur : la vitesse de mise à l'origine la tension/intensité envoyée le paramètre qui détecte la perte de pas (printer.cfg => section pilotes moteurs TMC). À noter que sur mes machines, ce n'est pas à proprement parler la tête (sauf avec l'axe X) qui tape, mais les supports de l'axe X qui coulissent sur l'axe Y. But why est-ce que ça le fait uniquement pour le «1» et pas le «6» ? Quelle différence d'état y-a-t'il ? Pour le «1», la machine part d'un état où les moteurs n'étaient pas activés (sous tension), pour le «6» les moteurs sont activés. Conclusion ? Mystère et boule de gomme (ça s'utilise encore cette expression ). Extraits du lien : Citation Il est préférable, dans la macro (qui simule la mise à l'origine), de faire une pause d'au moins 2 secondes avant de commencer la prise d'origine sans capteur (ou de s'assurer qu'il n'y a eu aucun mouvement sur le moteur pas à pas depuis au moins 2 secondes). Sans délai, il est possible que le drapeau de décrochage interne du pilote de moteur pas à pas soit toujours activé suite à un mouvement précédent. Il peut également être utile que cette macro définisse le courant du pilote avant la prise d'origine et définisse un nouveau courant après que le chariot s'est éloigné. La macro pour être pleinement utilisable nécessite au préalable le «parfait» (enfin, plus ou moins) réglage de la sensibilité du décrochage des pas moteur ([stepper_X(ouY)] homing_speed ni trop lent (>rotation_distance / 2), ni trop rapide ET [tmc2209 stepper_X(ou Y)] driver_SGTHRS: abc). C'est dans cette macro qu'on régle (ou pas) le courant du pilote avant G28 ET qu'on ajoute une temporisation (G4 2000) avant toute mise à l'origine. Si Creality utilise une macro pour mettre les axes à l'origine, c'est dans celle-ci que le courant et la pause sont situées. Autre possibilité : Avant toute mise à l'origine, se mettre sur les oreilles un casque anti-bruit => on contourne le problème en ne l'entendant plus Modifié (le) hier à 09:45 par fran6p
BO105cbs Posté(e) hier à 12:51 Auteur Posté(e) hier à 12:51 (modifié) @fran6p T'ain tu m'a donné mal à la tête.... La différence constatable entre le 1 et 6 est la vitesse de déplacement, en 1 elle se précipite fortement, ralentie un poil, alors qu'en 6, elle va lentement d'un pas sûr au casse pipe, se cogne la tête cela se voit aisément, elle fait la même chose mais avec moins de force ou vivacité. Je peux en étant gentil... Concevoir cette façon "klipéridienne", pourquoi pas ? après tout. Là, je met la tête complètement à l'opposée de sa position x=0 y=0, j'allume la bestiole et à partir de son écran je lui demande un "homing XY". La bête est perdue ou est à ma tête ? Prudente qu'elle est, la tête va se déplacer lentement à la recherche du "choc" sur les axes X et Y, mais sans frapper violement la vitre, tordant par la même occasion légèrement la tête. J'exécute la même commande depuis fluide (éteignant les steppers) et elle ne se fracture pas le crâne.... J'ai même poussé le vice à faire le Home que de l'axe Y, puisque c'est le seul concerné, elle va doucement tester ses limites La partie 1 objet de mes troubles ne survient qu'au lancement d'une impression, ou dans la séquence diabolique de début d'impression je peut trouver cet appel au crime ? Telle est la grande question J'ai essayé de trouver le "diabolisme" lançant une impression Fluide en mode console, mais je n'ai rien vu.... Modifié (le) hier à 12:59 par BO105cbs
fran6p Posté(e) hier à 13:59 Posté(e) hier à 13:59 Mets-nous le début d'un Gcode jusqu'à la première couche qu'on y jette un œil et encore mieux ajoutes-y le fichier klippy.log afin d'avoir la configuration et les macros crealityesques. Pour le mal à la tête, rien de mieux qu'une aspirine ou truc du même genre .
BO105cbs Posté(e) il y a 23 heures Auteur Posté(e) il y a 23 heures Qu'à cela ne tienne Messire.. Voila. Fran6p.zip
fran6p Posté(e) il y a 21 heures Posté(e) il y a 21 heures (modifié) Analyse rapide ! Le Gcode utilise la macro START_PRINT pour réaliser la mise à l'origine. Creality, comme d'autres fabricants, utilise des macros «obfusquées» incluses directement dans les fichiers Python, celles nommées CX_quelquechose. Citation [gcode_macro START_PRINT] description = Début de l'impression variable_prepare = 0 gcode = WAIT_TEMP_END CLEAR_PAUSE {% set g28_extruder_temp = printer.custom_macro.g28_ext_temp %} {% set bed_temp = printer.custom_macro.default_bed_temp %} {% set extruder_temp = printer.custom_macro.default_extruder_temp %} {% if 'BED_TEMP' in params|upper and (params.BED_TEMP|float) %} {% set bed_temp = params.BED_TEMP %} {% endif %} {% if 'EXTRUDER_TEMP' in params|upper and (params.EXTRUDER_TEMP|float) %} {% set extruder_temp = params.EXTRUDER_TEMP %} {% endif %} {% if printer['gcode_macro START_PRINT'].prepare|int == 0 %} {action_respond_info("not prepare.\n")} PRINT_PREPARE_CLEAR CX_ROUGH_G28 EXTRUDER_TEMP={extruder_temp} BED_TEMP={bed_temp} CX_NOZZLE_CLEAR ACCURATE_G28 CX_PRINT_LEVELING_CALIBRATION {% else %} PRINT_PREPARE_CLEAR {% endif %} CX_PRINT_DRAW_ONE_LINE Dans la macro de démarrage, je devine deux macros «CX» réalisant un G28. La première CX_ROUGH_G28 est probablement celle qui provoque l'envoi de la tête sur les parois, mais ne sachant pas exactement ce que fait cette macro, ce ne sont que des supputations de ma part. Les macros [tmc2209 stepper_x (stepper_y] utilisent un paramètre non recommandé par la documentation Klipper => hold_current. Les valeurs des driver_sgthrs sont basses (75), mais sans tests, il vaut mieux les laisser à cette valeur. Par exemple, sur la XMax3 (que je n'ai plus), après affinage j'étais passé de 85 à 92 pour X et 100 pour Y sans pertes de pas et mise à l'origine répétable pour des «chocs» moins agressifs. Je m'interroge également pour le courant des moteurs (run_current=1,5), mais cela dépend des caractéristiques des moteurs (avec une marge de sécurité, au départ ça correspond normalement à des moteurs 2 A (valeur haute pour des TMC2209… à vérifier sur la datasheet ). Bref, n'ayant pas ce modèle d'imprimante, si d'autres possesseurs pouvaient venir apporter leur grain à moudre, ça me sortirait une grosse épine du pied. Modifié (le) il y a 20 heures par fran6p
BO105cbs Posté(e) il y a 20 heures Auteur Posté(e) il y a 20 heures il y a 18 minutes, fran6p a dit : mais ne sachant pas exactement ce que fait cette macro Il n'y a qu'à demander, la voilà cmd_CX_ROUGH_G28_help = "rough G28" def cmd_CX_ROUGH_G28(self, gcmd): self.extruder_temp = gcmd.get_float('EXTRUDER_TEMP', default=self.default_extruder_temp, minval=180.0, maxval=320.0) self.g28_ext_temp = self.extruder_temp - 90 if self.g28_ext_temp > 180.0: self.g28_ext_temp = 180.0 try: self.prtouch = self.printer.lookup_object('prtouch_v2') except: self.prtouch = self.printer.lookup_object('prtouch') gcmd.respond_info("self.prtouch = prtouch") self.prtouch.change_hot_min_temp(self.g28_ext_temp) self.bed_temp = gcmd.get_float('BED_TEMP', default=self.default_bed_temp, minval=0.0, maxval=130.0) self.leveling_calibration = gcmd.get_int('LEVELING_CALIBRATION', default=1, minval=0, maxval=1) self.gcode.run_script_from_command('M104 S%d' % (self.g28_ext_temp)) self.gcode.run_script_from_command('M140 S%d' % (self.bed_temp)) self.gcode.run_script_from_command('M204 S500') self.gcode.run_script_from_command('G28') # self.gcode.run_script_from_command('NOZZLE_CLEAR HOT_MIN_TEMP=%d HOT_MAX_TEMP=%d BED_MAX_TEMP=%d' % (self.g28_ext_temp, self.extruder_temp - 20, self.bed_temp)) pass Joint le fichier en question (ouvrable avec MobaXterm ou visual studio Merci pour tes recherches. custom_macro.py
fran6p Posté(e) il y a 20 heures Posté(e) il y a 20 heures Je regarderai demain (Notepad++ ouvre de nombreux fichiers ). Là, c'est Handball (Euro M 2026), tour principal groupe 2 (Croatie / Slovénie en ce moment). En attendant le dernier match des français demain contre l'Allemagne (seule une victoire permettrait d'accéder aux demi finales… ça va être chaud de chez chaud). 1
BO105cbs Posté(e) il y a 8 heures Auteur Posté(e) il y a 8 heures (modifié) Je comprends. Le Hand que de vieux souvenirs, arrière droit pendant 8 ans, arrêt de jeux à 14-15 ans, pour cause de déménagements... En tout cas je te remercie encore de te préoccuper de ce sujet. Modifié (le) il y a 8 heures par BO105cbs
fran6p Posté(e) il y a 1 heure Posté(e) il y a 1 heure Il y a 6 heures, BO105cbs a dit : arrière droit Également plus demi-centre (gaucher)… durant 28 ans (juste une interruption de deux ans pour cause de service militaire civil à Singapour où ce sport était inconnu (j'y ai fait du rugby en lieu et place). J'ai dû arrêter cette pratique «grâce» à une entorse du genou et rupture des ligaments croisés à 40 ans… sinon j'aurais continué probablement. Quelques saisons en N3, quelques matches en N2 dans les années 80… que de bons souvenirs malgré quelques défaites. Dorénavant, comme Churchill, no sport, juste sportif télévisuel . 2
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant