Calificación:
  • 1 voto(s) - 5 Media
  • 1
  • 2
  • 3
  • 4
  • 5
APORTE Configuración de driver TMC2208 con UART y Marlin 1.1.8
#1
Hace un par de semanas compre lo que creía que eran 5 drivers TMC2130 en aliexpress. Mi cara era un poema, cuando me llega el paquete y veo que no compre 5 TMC2130, sino 5 TMC2208...
El caso es que revise el pedido y vi que era correcto, me equivoque al comprarlo... el caso es que no queria tener que repetir el pedido y esperar otros 15 dias a que me llegasen y me puse a investigar para ver las posibilidades que ofrecian estos drivers en comparacion con los 2130... Basicamente se diferencian en que los 2130 tienen stallGuard (para que el motor no pierda pasos, poder hacer homming sin finales de carrera etc) y se controlan por SPI y los 2208 NO tienen stallGuard y se controlan a traves de interfaz UART...

En un principio investigando, sobre como configurarlos, vi que la gente normalmente los pone tal cual le llegan y ya esta, pero se pierden muchas de sus capacidades. Otros, le cambian la configuración a trabes de un programador FTDI por USB, el problema es que los cambios solo los puedes hacer una vez, y cuando hayas hecho cambios estos serán permanentes...

El caso es que no me gustaba la idea de tener que modificarlos permanentemente, puesto que al ser mi primer contacto con los drivers, no quería dejarme algo por el camino, y arrepentirme después (que es algo que me suele pasar Lengua) Total, que viendo que con los 2130 puedes hacer el apaño de enchufarlos con SPI a la RAMPS y todo era mucho mas cómodo, pensé que configurarlos por UART, seria similar y me facilitaría mucho la bien.

Pues bien, buscando y buscando encontré 0 documentación sobre como configurar estos drivers para que funcionasen en Marlin con la configuración por software activada. Al final a base de ver vídeos, de darle vueltas al código del Marlin, he conseguido dar con la tecla y hacer que funcionen al 100% de su potencia.

Y visto que es una opción algo mas barata y menos engorrosa que montar que los 2130, pensé que seria el post perfecto para iniciar un blog (Que llevo mucho tiempo queriendo abrir uno), y como no podía ser de otra forma, os lo dejo por aquí también para que si a alguien le viene bien, pueda instalarlos sin problema.

Dejo aqui el link al post del blog: Configuracion de driver TMC2208 con UART y Marlin 1.1.8

Para poder es necesario tener a mano, un soldador, estaño, un poco de cable, y resistencias de 1K:
Los pasos a seguir son los siguientes:
  1. En mi caso, los pines vinieron soldados. Pero depende de la tienda, pueden venir sin soldar (menos trabajo). En cualquier caso, la configuración de los pines debe quedar con todos los pines apuntando hacia abajo. Los pines MS1, MS2, NC y CLK removidos. Y el pin PDN apuntando hacia arriba, alk contrario que el resto. Esto es por que desde ese pin vamos a sacar un cable para comunicar el controlador con un pin auxiliar de la ramps para que Marlin pueda configurarlo. Al final el driver tiene que quedar como en la siguiente imagen (no hace falta soldar 2 pines hacia arriba. Con tener el PDN sobra):
    resim
  2. Lo siguiente es hacer un puente en los puntos que se ven en la siguiente foto. Con esto le decimos al driver que vamos a controlarlo a traves del software.
    resim
  3. Ahora tenemos que hacer 1 cable en y, de manera que conectaremos el pin PDN del driver a 2 pines en concreto del puerto auxiliar 2 de la ramps (se pueden configurar estos pines). En el cable extra tenemos que soldar una resistencia de 1K
    resim
    resim
  4. Lo siguiente es remover todos los jumpers de la ramps referentes al motor donde vayamos a instalar el driver. Para este ejemplo supongamos que es el driver para el motor del eje X.

  5. Para conectarlo, como se ve en el esquema anterior tenemos que poner en el driver el cable en el pin PDN, y en la Ramps el cable que tiene la resistencia en el pin 59 yel otro en el pin 63. En el siguiente esquema os pone el numero de cada pin. Estos pines son los que vienen por defecto en marlin para el motor del eje X. Se puede cambiar por otro si estos ya los tenéis usados.
    resim
  6. Para configurar los drivers en Marlin, abrimos el proyecto en el IDE de arduino y buscamos el archivo Configuration_adv.h. En el, buscamos “HAVE_TMC2208” y descomentamos la linea para activar el módulo de control de estos drivers. Un poco mas abajo encontraremos las lineas donde indicamos en que motores tenemos instalados estos drivers, tenemos que descomentar las lineas relativas a los motores que usaran estos drivers. Y un poco mas abajo indicamos la corriente y los micropasos que tenemos configurados en cada driver.
    resim
  7. En este mismo archivo podemos configurar si queremos tener activado el modo stealthChop. Como queremos que se comporte el driver cuando hay algún problema (ej: Sobrecalentamiento del driver) con la opción MONITOR_DRIVER_STATUS. Y también podemos activar el modo híbrido, que usara el modo stealthCHOP por debajo de la velocidad configurada y spreadCycle por encima de esa velocidad con la opción HYBRID_THRESHOLD.
    resim
  8. También es bueno descomentar la linea TMC_DEBUG, de esa manera podremos ver el estado de los drivers enviando el GCODE M122
    resim
  9. Para finalizar, configuramos los pines que tienen configuración UART. Para ello, vamos al archivo pins_RAMPS.h y buscamos “HAVE_TMC2208”. Un poco mas abajo de donde nos sitúa la búsqueda tenemos la serie de pines que utilizara cada motor. En mi caso, están todos los pines por defecto.
    resim
A partir de aquí, solo falta subir Marlin al arduino y a disfrutar!
Citar
#2
Buenas.

Ante todo muchas gracias por currarte un tutorial. Estaba loco buscando informacion.
Tengo un problema. los TMC2208 no se m configuran en 1/16 pasos.
Con el comando M122 me dicen que estan a 0 no a 16.

Alguna idea del problema??
Citar
#3
sinceramente no tengo ni idea, el resto de informacino si te la saca? has activado todo en marlin como lo he puesto mas arriba??

un saludo
Citar
#4
Pues nada.
Conectando los pines MS1 y MS2 Funciona. Asi se queda jaja.
Estos productos chinos....

Muchas gracias de todos modos.
Citar
#5
Enhorabuena!! PEDAZO Tutorial
Impresoras 3D Open Source
3DCampy.com
Citar
#6
(09-05-2018, 01:17 AM)campy escribió: Enhorabuena!! PEDAZO Tutorial
A ti te ha funcionado todo? Yo sigo peleándome.

Enviado desde mi ONEPLUS A5010 mediante Tapatalk
Citar
#7
(08-05-2018, 05:41 PM)calo_pc escribió: Pues nada.
Conectando los pines MS1 y MS2 Funciona. Asi se queda jaja.
Estos productos chinos....

Muchas gracias de todos modos.

como conectandolos??? en mi caso esos 2 pines no se conectan con nada y desde gcode puedo cambiar la configuracion de los drives sin problema

en esta paginita de marlin comentan unos gcodes con los que puedes interacturar con los drivers... por si te sirve de algo

http://marlinfw.org/docs/features/tmc_drivers.html
Citar
#8
(09-05-2018, 01:12 PM)calo_pc escribió:
(09-05-2018, 01:17 AM)campy escribió: Enhorabuena!! PEDAZO Tutorial
A ti te ha funcionado todo? Yo sigo peleándome.

Enviado desde mi ONEPLUS A5010 mediante Tapatalk


Yo tengo montados los TMC2130 que van directamente por SPI y se configuran desde el marlin, es mas rollo el cablearlos pero van de maravilla
Impresoras 3D Open Source
3DCampy.com
Citar
#9
Ya, solucionado. Estaba usando el Marlin 1.1.8 (la ultiam estable) y parece que habia alguna incidencia con esa version.
Con la "The daily bugfix build (bugfix-1.1.x.zip — Cutting-edge code! Beware!)" todo funciona.
Citar
#10
(12-05-2018, 11:55 AM)calo_pc escribió: Ya, solucionado. Estaba usando el Marlin 1.1.8 (la ultiam estable) y parece que habia alguna incidencia con esa version.
Con la "The daily bugfix build (bugfix-1.1.x.zip — Cutting-edge code! Beware!)" todo funciona.

Me alegro que lo hayas podido solucionar!
Citar
#11
Buenas,
Tengo una tevo tornado con una MKS gen L y 4 TMC2208.
Voy a pasaros el marling para esta maquina.
He modificado algunas cosas con respecto a lo normal:
-los micro pasoso de Z estan a 1/4 esto da una precision de 0,05mm mas que sobrado y alluda a dar fluidez a la impresora.
-Los micropasos de E estan a 1/8 igual que antes mas que suficiente teniendo una reductora en el extrusor.
- EL TMC2208 del extrusor esta configurado en modo fuerza y no se configura por serie(lo uso como un driver normal). Con este tutorial lo poneis asi (https://www.youtube.com/watch?v=FEgirEyE...Dj&index=4) recordar poner los jumper a 1/8.
-Recordar desactivar el Linear Advance o ponerlo a 0. Esta en los parametros de filamento en la lcd y despues le dais a guardar parametros. si no lo haceis no echara el plastico que corresponde y no imprimireis nada.

Aqui teneis mas informacion de los TMC: http://learn.watterott.com/silentstepsti...figurator/

Aqui el Marlin: https://mega.nz/#!4wRV1CaS!qDYp6K5iAKI4t...T5Qvf7s0_U

Para cualquier cosa preguntarme.
Citar
#12
(01-06-2018, 12:07 PM)calo_pc escribió: Buenas,
Tengo una tevo tornado con una MKS gen L y 4 TMC2208.
Voy a pasaros el marling para esta maquina.
He modificado algunas cosas con respecto a lo normal:
-los micro pasoso de Z estan a 1/4 esto da una precision de 0,05mm  mas que sobrado y alluda a dar fluidez a la impresora.
-Los micropasos de E estan a 1/8 igual que antes mas que suficiente teniendo una reductora en el extrusor.
- EL TMC2208 del extrusor esta configurado en modo fuerza y no se configura por serie(lo uso como un driver normal). Con este tutorial lo poneis asi (https://www.youtube.com/watch?v=FEgirEyE...Dj&index=4) recordar poner los jumper a 1/8.
-Recordar desactivar el Linear Advance o ponerlo a 0. Esta en los parametros de filamento en la lcd y despues le dais a guardar parametros. si no lo haceis no echara el plastico que corresponde y no imprimireis nada.

Aqui teneis mas informacion de los TMC: http://learn.watterott.com/silentstepsti...figurator/

Aqui el Marlin: https://mega.nz/#!4wRV1CaS!qDYp6K5iAKI4t...T5Qvf7s0_U

Para cualquier cosa preguntarme.


buenas tardes carlos si funciona ya, ahora cablearlo todo bien a a ver q tal . no se si tendre q modifacar algo los jamper los tengo todos puesto y comentas  unas posturas como seria?  muxas gracias x todo ahhh si cambiandoles los cables a la pantalla perfecto gracias otra vez saludos
Citar
#13
hola buenas soy muy novato en esto...tengo la mks gen l y tmc2208....lo intale todo correctamente en una anet a8 ,,,todo correcto pero al poco me di cuenta que el motor z de la derecha perdia pasos,y queria poner otro driver en E1 pero no se que opciones tengo k poner correctamete en marlin para que me funciones e1 como z1...

otra cosas la cama no se calienta bien,,,tarda muchisimo,,,le ize PID ,,lo configure pero nada,,,tengo un mosfet conectado tambien a la cama,,
al final lo desmonte y volvi a conectar la vieja placa,,y la cama funciona perfecta .....
no se k probar y hacer,,


resim

resim

estos son tmc ,,se que son chinos queria saber tbn como ponerlos UART ya que x detras no tiene soldadura solo resistencias etc....
Citar
#14
Hola a todos, voy a comprar este tipo de drivers. He visto que algunas tiendas lo venden ya con los pines invertidos para UART. En principio yo solo quiero cambiar unos por otros por el tema del ruido, pero con tiempo me gustaría sacarle máximo partido con este tipo de configuraciones. Mi duda es: si me los compró con los pines preparados para UART lo puedo usar de formA normal?? Osea cambio uno por otro, reguló intensidad, la polarización del motor, y a marchar. O por el simple motivo de que están preparados para UART, tengo que usar esta configuración a la fuerza?

Por cierto son los tmc2208 v 3.0

Gracias
Citar
#15
Si pero no. Los pins al revés no son problema, podrías hacer lo que dices. El problema es que esos drivers tienen un puente que les indica si tienen la comunicación UART activada o no. Si vienen con los pines al revés, preparados para UART, lo mas seguro es que el puente venga soldado, tendrías que quitar la soldadura.
Citar
#16
Hola compré recientemente estos driver de l marca bigthreetech v3.0, he visto en los videos de YouTube de la marca conecta solo 1 pin uart del driver a la placa, pero la duda es si lo hago así o hago el cable en Y. Por detrás en la soldadura ya viene soldado una resistencia.


https://youtu.be/k3Uc1F5jgVQ
resim
Citar
#17
(06-03-2019, 07:33 PM)TAO82 escribió: hola buenas soy muy novato en esto...tengo la mks gen l y tmc2208....lo intale todo correctamente  en una anet a8 ,,,todo correcto pero al poco me di cuenta que el motor z de la derecha perdia pasos,y queria poner otro driver en E1 pero no se que opciones tengo k poner correctamete en marlin para que me funciones e1 como z1...

Hola TAO82

Por lo que he podido investigar, estos 2208 de MKS llevan el modo UART activado por defecto, no hace falta soldar nada

Lo que me indica el fabricante:

--------
Funciona perfectamente en Ender 3 con MKS GEN L (conexión uart, 256 micropasos). UART está habilitado de forma predeterminada, no es necesario soldar ningún saltador. Los motores paso a paso son tan silenciosos que no pueden escuchar nada durante el trabajo.
--------

Esta noche miraré de cambiar el puente UART y hacer el cable.. i veremos que tal XD, espero no quemar otra placa  Meparto

Saludos
Citar
#18
Hola

Ya me funciona, ha costado bastante, en la parte del Marlin 2.0 que faltaban defines, pero ya tengo TMC 2208 de MKS en modo UART, hace un poco mas de ruido, pero mas calidad

X Y Z E
Enabled false true false false
Set current 760 760 760 900
RMS current 734 734 734 887
MAX current 1035 1035 1035 1251
Run current 23/31 23/31 23/31 28/31
Hold current 11/31 11/31 11/31 14/31
CS actual 11/31 11/31 11/31 14/31
PWM scale 13 13 13 16
vsense 1=.18 1=.18 1=.18 1=.18
stealthChop false false false false
msteps 16 16 16 16
tstep max max max max
pwm
threshold 98 98 658 62
[mm/s] 100.85 100.85 3.00 30.36
OT prewarn false false false false
OT prewarn has
been triggered false false false false
off time 4 4 4 4
blank time 24 24 24 24
hysteresis
-end 2 2 2 2
-start 1 1 1 1
Stallguard thrs
DRVSTATUS X Y Z E
stst X X X X
olb X X X
ola X X X X
s2gb
s2ga
otpw
ot
157C
150C
143C
120C
s2vsa
s2vsb
Driver registers:
X 0x80:0B:00:C0
Y 0x80:0B:00:C0
Z 0x80:0B:00:C0
E 0x80:0E:00:C0
Testing X connection... OK
Testing Y connection... OK
Testing Z connection... OK
Testing E connection... OK
Citar
#19
Como norma general mejor seguir siempre las instrucciones del vendedor o fabricante. Si te dicen que es conectar y listo pues mejor hacerlo así y si falla algo tienes a quien reclamar.
Si tienen la resistencia soldada lo lógico es que ya hayan hecho la conexión en Y con ella

@Papipapito te hacen más ruido por que has cambiado de modo de funcionamiento. En standalone usan el modo stealthchop, que es el silencioso. Sin embargo cuando los pones por UART tu eliges el modo en marlin, y por lo que dice ese status, stealthchop está false.

No es recomendable activarlo en el extrusor o ejes que tengan que hacer mucha fuerza, reduce el ruido pero también la fuerza. Pero en el resto puedes activarlo sin problema, o al menos el modo híbrido que cambia de modo en función de la velocidad del desplazamiento.
Citar
#20
Hola @Nullz , gracias por la aclaración

El ruido no me molesta, incluso me gusta oirla un poco mas que antes Sonrisa

En tema de soldarura , me referia al puente no a la resitencia, esa la he tenido que poner igualmente.

Salduos
Citar


Temas similares...
Tema Autor Respuestas Vistas Último mensaje
  APORTE Configuración inical de la impresora. Simemart 5 264 18-10-2019, 07:01 PM
Último mensaje: Simemart
  CONSULTA primera configuracion ender 3 Windkaze 17 749 18-07-2019, 10:53 AM
Último mensaje: Windkaze
  Duda en configuración Cura, no imprime bien los interiores PacoMB 5 547 06-03-2019, 01:58 PM
Último mensaje: Nullz
  CONSULTA Tests, calibración y configuración juanma_jp 2 587 26-09-2018, 06:26 PM
Último mensaje: juanma_jp
  APORTE Tutorial Instalación y configuración driver TMC2130 en Ramps campy 42 15,069 01-09-2018, 12:28 AM
Último mensaje: cerutti