hidius PostĂ©(e) Septembre 11, 2019 PostĂ©(e) Septembre 11, 2019 (modifiĂ©) Nous allons voir ici comment utiliser les TMC2208 en mode UART que j'ai enfin recu  , ça va concerner trĂšs peux de monde mais je partage quand mĂȘme  La communication se fera sur un seul fil pour deux raisons. Principalement parce que je n'ai pas beaucoup de pins supplĂ©mentaires Ă Â disposition sur ma carte mais aussi parce que ce mode est trĂšs bien gĂ©rĂ© par Klipper.  CotĂ© imprimante, il s'agit de la Geeetech A10 et sa carte mĂšre GT2560 v3. Je vais utiliser ici des TMC2208 de la marque FYSETC en version 1.2 (3.1âŹ/piece sur ebay ici ) . avec le radiateur:  Vue de dessus sans radiateur  Vue de dessous:   1 - modification des TMC2208. Deux modifications sont Ă Â prĂ©voir. La premiĂšre est le cĂąblage des pins via une soudure et la seconde est la modification de la pin UART pour pouvoir la brancher ailleurs sur la carte mĂšre. Sur ce model nous avons Ă Â disposition deux pins pour l'UART (UART & PDN).  Que l'on peut "activer" ici grĂące Ă Â une petite soudure. Les lignes rouges reprĂ©sentent le cĂąblage du PCB. On peut activer l'un ou l'autre en soudant le pad central au pad corespondant. Vu la petite taille de la soudure, je vais cĂąbler les deux pins mĂȘme si je ne vais en utiliser qu'un. A savoir que cotĂ© carte mĂšre ses pins ne sont pas cĂąblĂ©s donc aucun risque. Pour cela je soude les trois pads ensemble. Le radiateur est imposant (ce qui est plutĂŽt bien) mais empĂȘche la sortie par le dessus. On va donc sortir par dessous. Je commence par dĂ©couper le plastique autour du pin UART et je le dessoude. Je ressoude un pin que je fais partir Ă Â l'horizontal ou Ă Â la vertical en fonction du futur emplacement sur la carte.  les deux opĂ©rations effectuĂ©es, soudure des pads et pin un autre exemple un TMC2208 finalisĂ© avec sortie vertical 2 - Carte mĂšre gt2560 v3 Je vais devoir rĂ©cupĂ©rer des pins cotĂ© carte mĂšre pour brancher les UARTs. pour les axes X,Y & Z, je rĂ©cupĂšre les pins sur le connecteur 5 broches. Un petit coup de fer a souder, quelques pins 2.54 et on arrive à  ça. Ăa me permet de rĂ©cupĂ©rer les pins 15,14,34 et du 5V au passage si besoin. Axe X >> RX3 >> D15 Axe Y >> TX3 >> D14 Axe Z >> INT >> D34  Le tout, avec Ă©galement un tmc2208 pour l'extruder (pin 45 rĂ©cupĂ©rĂ© sur T0)  3 - Klipper CotĂ© configuration on ajoute la gestion des TMC2208 pour chaque axe, conf Ă Â adapter Ă Â votre materiel ! ######## STEPPER X TMC2208 ####### # Configure a TMC2208 (or TMC2224) stepper motor driver via single # wire UART. To use this feature, define a config section with a # "tmc2208" prefix followed by the name of the corresponding stepper # config section (for example, "[tmc2208 stepper_x]"). This also # creates a "tmc2208_stepper_x:virtual_enable" virtual pin which may # be used as the stepper's enable_pin (for enabling the driver via a # UART message). [tmc2208 stepper_x] uart_pin: ar15 # The pin connected to the TMC2208 PDN_UART line. This parameter # must be provided. #tx_pin: # If using separate receive and transmit lines to communicate with # the driver then set uart_pin to the receive pin and tx_pin to the # transmit pin. The default is to use uart_pin for both reading and # writing. #select_pins: # A comma separated list of pins to set prior to accessing the # tmc2208 UART. This may be useful for configuring an analog mux for # UART communication. The default is to not configure any pins. microsteps: 16 # The number of microsteps to configure the driver to use. Valid # values are 1, 2, 4, 8, 16, 32, 64, 128, 256. This parameter must # be provided. #interpolate: True # If true, enable step interpolation (the driver will internally # step at a rate of 256 micro-steps). The default is True. run_current: 0.8 # The amount of current (in amps) to configure the driver to use # during stepper movement. This parameter must be provided. #hold_current: # The amount of current (in amps) to configure the driver to use # when the stepper is not moving. The default is to use the same # value as run_current. #sense_resistor: 0.110 # The resistance (in ohms) of the motor sense resistor. The default # is 0.110 ohms. stealthchop_threshold: 200 # The velocity (in mm/s) to set the "stealthChop" threshold to. When # set, "stealthChop" mode will be enabled if the stepper motor # velocity is below this value. The default is 0, which disables # "stealthChop" mode. #driver_IHOLDDELAY: 8 #driver_TPOWERDOWN: 20 #driver_TBL: 2 #driver_TOFF: 3 #driver_HEND: 0 #driver_HSTRT: 5 #driver_PWM_AUTOGRAD: True #driver_PWM_AUTOSCALE: True #driver_PWM_LIM: 12 #driver_PWM_REG: 8 #driver_PWM_FREQ: 1 #driver_PWM_GRAD: 14 #driver_PWM_OFS: 36 # Set the given register during the configuration of the TMC2208 # chip. This may be used to set custom motor parameters. The # defaults for each parameter are next to the parameter name in the # ######## STEPPER Y TMC2208 ####### [tmc2208 stepper_y] uart_pin: ar14 microsteps: 16 run_current: 0.8 stealthchop_threshold: 200 ######## STEPPER Z TMC2208 ####### [tmc2208 stepper_z] uart_pin: ar34 microsteps: 16 run_current: 0.8 stealthchop_threshold: 200 ######## STEPPER E0 TMC2208 ####### [tmc2208 extruder] uart_pin: ar45 microsteps: 16 run_current: 0.8 stealthchop_threshold: 200 Sans oublier de modifier le sens des moteurs [stepper_x] #avant #dir_pin: !ar39 #apres dir_pin: ar39 [stepper_y] #avant #dir_pin: !ar33 #apres dir_pin: ar33 [stepper_z] #avant #dir_pin: ar23 #apres dir_pin: !ar23 [extruder] #avant #dir_pin: ar44 #apres dir_pin: !ar44 Validation de la communication UART On relance Klipper et dans un terminal on lance la commande suivante: DUMP_TMC STEPPER=stepper_x en retour nous avons Recv: // ========== Write-only registers ========== Recv: // IHOLD_IRUN: 00081616 IHOLD=22 IRUN=22 IHOLDDELAY=8 Recv: // TPWMTHRS: 0000002f TPWMTHRS=47 Recv: // TPOWERDOWN: 00000014 TPOWERDOWN=20 Recv: // ========== Queried registers ========== Recv: // GCONF: 000001c0 pdn_disable=1 mstep_reg_select=1 multistep_filt=1 Recv: // GSTAT: 00000001 reset=1 Recv: // IFCNT: 00000006 IFCNT=6 Recv: // OTP_READ: 0000000c OTP_FCLKTRIM=12 Recv: // IOIN@TMC220x: 2000014d ENN=1 MS1=1 MS2=1 PDN_UART=1 SEL_A=1(TMC220x) VERSION=0x20 Recv: // FACTORY_CONF: 0000000c FCLKTRIM=12 Recv: // TSTEP: 000fffff TSTEP=1048575 Recv: // MSCNT: 00000008 MSCNT=8 Recv: // MSCURACT: 00f7000c CUR_A=12 CUR_B=247 Recv: // CHOPCONF: 14030053 toff=3 hstrt=5 TBL=2 vsense=1 MRES=4(16usteps) intpol=1 Recv: // DRV_STATUS: c0160000 CS_ACTUAL=22 stealth=1 stst=1 Recv: // PWMCONF: c80d0e24 PWM_OFS=36 PWM_GRAD=14 pwm_freq=1 pwm_autoscale=1 pwm_autograd=1 PWM_REG=8 PWM_LIM=12 Recv: // PWM_SCALE: 00000019 PWM_SCALE_SUM=25 Recv: // PWM_AUTO: 000e0024 PWM_OFS_AUTO=36 PWM_GRAD_AUTO=14 C'est tout bon, recommencer avec les autre axes DUMP_TMC STEPPER=stepper_y DUMP_TMC STEPPER=stepper_z DUMP_TMC STEPPER=extruder Il ne reste plus qu'a valider sur la machine et Ă Â vous la prĂ©cision et le silence !  J'ajoute Ă©galement mon fichier de configuration pour exemple: A10 v3 - TMC2208uart.cfg    ModifiĂ© (le) Septembre 12, 2019 par hidius 2 2
palouf34 PostĂ©(e) Septembre 11, 2019 PostĂ©(e) Septembre 11, 2019 tuto super intĂ©ressant, je vais faire quasiment la mĂȘme chose sur mon anet A8 et une carte ramps 1.4 et bien sur klipper... Par contre j'hĂ©site vraiment en les tmc 2208 et les tmc 2130 spi.
hidius Posté(e) Septembre 11, 2019 Auteur Posté(e) Septembre 11, 2019 en effet le StallGuard peut etre sympa a mettre en oeuvre avec le 2130
palouf34 Posté(e) Septembre 11, 2019 Posté(e) Septembre 11, 2019 Il y a 3 heures, hidius a dit : en effet le StallGuard peut etre sympa a mettre en oeuvre avec le 2130 C'est certe une bonne option mais je préfére l'évitér, je pense que rien de vos un bon end stop des familles.
Tircown PostĂ©(e) Septembre 11, 2019 PostĂ©(e) Septembre 11, 2019 Les TMC2209 ont le stallguard, le silence des 2208 et, comme si ça ne suffisait pas, on peut y mettre des moteurs plus costauds et/ou chauffer moins les drivers. Ce n'est pas beaucoup plus cher que des 2208 ou 2130. ForcĂ©ment avec tous ces avantages ils sont en ruptures de stock et c'est obligatoirement de la prĂ©commande chez nos fournisseur asiatiques prĂ©fĂ©rĂ©s. Pour avoir une idĂ©e des dĂ©lais Fysetc annonce recevoir un batch mi octobre. DĂšs que la date de livraison de la Zatsit se concrĂ©tise, je me mets dans la fil d'attente avec une SKR 1.3. Pour l'instant Klipper ne supporte pas le Stallguard des 2209 mais ce n'est qu'une affaire de temps. Stephan3 l'a fait pour les 5160, a dĂ©jĂ implĂ©mentĂ© les 2209 sans Stallguard avant ses vacances et a prĂ©vu de finaliser le truc. Donc je n'ai aucun doute sur la rĂ©alisation d'autant qu'il y a du monde qui s'y intĂ©resse. Pour l'instant ils rĂ©agissent comme des 2208. @palouf34, si le Stallguard ne t'intĂ©resse pas autant prendre des 2208 plus silencieux que les 2130 ou attendre des 2209 pour leur courant RMS plus Ă©levĂ©. @hidius, je trouve ton cĂąblage trĂšs propre. J'ai montĂ© des TMC2208 avec Klipper il y a 2 week-end mais avec moins de gloire que @hidius, parce que tout est prĂ©cablĂ© sur une SKR 1.3. J'ai eu un petit soucis avec le pont de soudure: j'ai visĂ© le pin marquĂ© UART mais ce n'Ă©tait pas le bon (sĂ©rigraphie erronĂ©e?). Quoiqu'il en soit Klipper via l'extension OctoKlipper signale un dĂ©faut de communication vers stepper_x, stepper_y et ainsi de suite. J'ai repris mes soudures vers l'autre broche, sur certains j'ai ponter les 3 pads ensemble et ça fonctionne aussi. Conclusion: ce n'est pas la peine d'ĂȘtre d'une finesse folle lĂ dessous, un gros pattĂ© d'Ă©tain entre les 3 pads fera l'affaire. 1
palouf34 PostĂ©(e) Septembre 11, 2019 PostĂ©(e) Septembre 11, 2019 (modifiĂ©) effecitvement, je vais m'y repenchĂ© car la diffĂ©rence sur mamazon entre les 2130 spi et les 2208 uart n'est que de 5âŹÂ mais surtout il y en a un de plus pour les 2208... donc le choix est vite vue  [edit] il me reste a trouver le bon tuto pour  les mettrent en places sur une ramps 1.4... ModifiĂ© (le) Septembre 11, 2019 par palouf34 rajout point sur tuto
hidius PostĂ©(e) Septembre 11, 2019 Auteur PostĂ©(e) Septembre 11, 2019 il y a une heure, Tircown a dit : J'ai montĂ© des TMC2208 avec Klipper il y a 2 week-end mais avec moins de gloire que @hidius, parce que tout est prĂ©cablĂ© sur une SKR 1.3. J'ai eu un petit soucis avec le pont de soudure: j'ai visĂ© le pin marquĂ© UART mais ce n'Ă©tait pas le bon (sĂ©rigraphie erronĂ©e?). Quoiqu'il en soit Klipper via l'extension OctoKlipper signale un dĂ©faut de communication vers stepper_x, stepper_y et ainsi de suite. J'ai repris mes soudures vers l'autre broche, sur certains j'ai ponter les 3 pads ensemble et ça fonctionne aussi. Conclusion: ce n'est pas la peine d'ĂȘtre d'une finesse folle lĂ dessous, un gros pattĂ© d'Ă©tain entre les 3 pads fera l'affaire. En effet il y a visiblement beaucoup de variantes dans les TMC2208. Habituellement je fais confiance au marquage mais vu les tĂ©moignages pendant ma phase de recherche d'infos, j'ai sorti le multimĂštre pour vĂ©rifier. Pour la photo de la soudure j'ai choisi une des meilleurs , ça commence Ă faire petit. Comme tu le prĂ©cises, pas besoin de chercher la prĂ©cision.  Depuis concernant l'extruder, je me suis aperçu que je ne pourrais pas utiliser le pin du second dĂ©tecteur de filament. Du coup, je suis en rade de pin et je ne vais pas pouvoir utiliser plus de 3 TMC2208 avec cette carte. A moins d'aller souder direct sur le mega2560 mais ça fait trop petit pour moi. J'ai placĂ© les tmc2208 sur le X,Y et extrudeur, je vais tourner comme ça et si le bruit me dĂ©range vraiment, je changerai de carte, sachant que le connecteur USB est dĂ©jĂ mort.La mĂȘme carte que toi je pense, 32b, bien pensĂ©, pas cher, elle a tout pour elle !
Tircown PostĂ©(e) Septembre 11, 2019 PostĂ©(e) Septembre 11, 2019 (modifiĂ©) Le seul truc qui manque Ă la SKR1.3 c'est un accĂšs Ă l'I2C. Je cherche encore mais Ă priori je dois sacrifier le second extrudeur et utiliser deux de ses pins. J'ai rĂ©cupĂ©rĂ© un PAT9125 (l'ancien capteur de filament laser sur les Prusa Original) et un fork de Klipper l'a intĂ©grĂ©. A part ça, elle est bien foutue, j'aime bien le fait qu'il y ait des fusibles et le LPC1768 de la SKR1.3 est trĂšs bien placĂ© dans le benchmark de Klipper. Je dĂ©rive un peu, ce n'est pas le sujet. Pour en revenir Ă ton soucis de double capteur de filament, t'as une imprimante avec deux extrudeurs? Si non, tu peux les mettre en sĂ©rie/parallĂšle avec le premier capteur selon leur comportement NC/NO. Idem pour faire du bicolore. Ce serais juste en utilisation "fin de bobine" ou ça ne marche pas. Peut-ĂȘtre n'ai je pas compris ton soucis. ModifiĂ© (le) Septembre 11, 2019 par Tircown
hidius PostĂ©(e) Septembre 12, 2019 Auteur PostĂ©(e) Septembre 12, 2019 Il y a 22 heures, Tircown a dit : Pour en revenir Ă ton soucis de double capteur de filament, t'as une imprimante avec deux extrudeurs? Si non, tu peux les mettre en sĂ©rie/parallĂšle avec le premier capteur selon leur comportement NC/NO. Idem pour faire du bicolore. Ce serais juste en utilisation "fin de bobine" ou ça ne marche pas. Peut-ĂȘtre n'ai je pas compris ton soucis. Je ne me sers pas du second dĂ©tecteur de filament, mais ca pin ne me permet pas d'acceder directement au 2560. Mais tu m'a fais penser au sixieme moteur exploitable dont je n'avais pas penser , merci a toi. il y a peu de chance que je l'utilise celui la ! En grattant j'ai aussi trouvĂ© des pins dispo sur le connecteur "UART_LCD" qui n'est pas cĂąblĂ©.  J'ai Ă©ditĂ© le premier post pour l'ajout du quatriĂšme TMC2208 et re-upload de ma config avec quelques ajustements.
dadour13 PostĂ©(e) Janvier 5, 2020 PostĂ©(e) Janvier 5, 2020 Le 11/09/2019 at 20:57, palouf34 a dit : effecitvement, je vais m'y repenchĂ© car la diffĂ©rence sur mamazon entre les 2130 spi et les 2208 uart n'est que de 5âŹÂ mais surtout il y en a un de plus pour les 2208... donc le choix est vite vue  [edit] il me reste a trouver le bon tuto pour  les mettrent en places sur une ramps 1.4... bonjour, as tu trouvĂ© un tuto efficace. moi aussi je suis entrain de paramĂ©trer ma mega2560 wifi et ma ramps 1.4. si tu as des recommendation merci d'avance pour ton aide
palouf34 Posté(e) Janvier 6, 2020 Posté(e) Janvier 6, 2020 Il y a 21 heures, dadour13 a dit : bonjour, as tu trouvé un tuto efficace. moi aussi je suis entrain de paramétrer ma mega2560 wifi et ma ramps 1.4. si tu as des recommendation merci d'avance pour ton aide Non pas vraiment, mais je me suis basé sur les tuto qui parlent des TMC2208 en UART pour l'installation. Aprés en suivant ce fils, cela roule sans trop de soucis...
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