- Stock: 37
- Modelo: TMC2209-MKS
El MKS TMC2209 V2.0 es un driver StepStick para motores paso a paso bipolares de dos fases, diseñado para reducir el ruido de movimiento y permitir una configuración avanzada desde el firmware. Puede trabajar mediante las señales STEP/DIR habituales o comunicarse por UART de un solo hilo para ajustar corriente, micropasos, modos de funcionamiento y diagnósticos.
Esta ficha corresponde a la revisión física V2.0. Frente a la V1.0, Makerbase reubicó la salida DIAG para facilitar el homing sin final de carrera en placas compatibles. Esta función no es automática: necesita UART, DIAG correctamente encaminado, lógica adecuada, configuración de firmware y calibración sobre la máquina real.

Funciones principales
- StealthChop2: funcionamiento especialmente silencioso a velocidades y cargas apropiadas.
- SpreadCycle: control de corriente orientado a movimientos más dinámicos y con mayor margen de par.
- MicroPlyer: interpolación interna hasta 256 micropasos para suavizar el movimiento sin exigir esa resolución de entrada a la controladora.
- StallGuard4: detección de carga o bloqueo, utilizable para sensorless homing cuando la instalación es compatible y se calibra correctamente.
- CoolStep: adaptación de corriente a la carga disponible mediante una configuración UART compatible.
- UART: ajuste por firmware de corriente RMS, micropasos, modos y diagnósticos.
- STEP/DIR: funcionamiento convencional incluso en placas que no controlen el driver por UART.
Especificaciones verificadas
| Característica | Valor |
|---|---|
| Fabricante y revisión | MKS / Makerbase TMC2209 V2.0 |
| Circuito integrado | Trinamic / Analog Devices TMC2209 |
| Motor compatible | Motor paso a paso bipolar de dos fases |
| Alimentación de motor | 5,5-28 V DC usando el regulador interno; adecuado para sistemas habituales de 12 y 24 V |
| Tensión lógica VIO | 3,3 o 5 V; para sensorless en esta revisión Makerbase exige 3,3 V |
| Interfaces | EN, STEP, DIR y UART de un hilo |
| Resistencias de sensado | 0,11 ohmios, marcadas R110 |
| Micropasos autónomos | 1/2, 1/4, 1/8 o 1/16 mediante MS1/MS2 |
| Resolución por UART | Configurable hasta 1/256 |
| Interpolación | MicroPlyer hasta 256 micropasos |
| Modos de chopper | StealthChop2 y SpreadCycle |
| Detección | StallGuard4 con salida DIAG; uso condicionado a placa, lógica, firmware y calibración |
| Dimensiones de PCB | 15,24 x 20,32 mm, sin contar pines ni accesorios |
| Contenido | 1 driver MKS TMC2209 V2.0 |
Corriente y ajuste de VREF
En modo autónomo, el potenciómetro regula VREF. El esquema oficial MKS V2.0 relaciona sus resistencias de sensado de 0,11 ohmios con estos valores aproximados:
| VREF medido | Corriente RMS indicada por MKS |
|---|---|
| 0,50 V | 0,35 A RMS |
| 1,25 V | 0,88 A RMS |
| 2,50 V | 1,77 A RMS teóricos; no utilizar como ajuste continuo por defecto |
La tensión de 1,25 V no equivale a 1,25 A: según el propio esquema del módulo corresponde aproximadamente a 0,88 A RMS. En UART, lo habitual es configurar la corriente RMS desde el firmware y utilizar el potenciómetro sólo conforme a la documentación de la placa y del driver.
Una corriente insuficiente puede causar pérdida de pasos; una corriente excesiva calienta el motor, el driver y la controladora. El disipador, cuando se utilice, no sustituye un flujo de aire adecuado dentro del compartimento electrónico.
Micropasos en modo STEP/DIR autónomo
| MS2 | MS1 | Micropasos de entrada | Interpolación |
|---|---|---|---|
| GND | GND | 1/8 | Hasta 1/256 |
| GND | VIO | 1/2 | Hasta 1/256 |
| VIO | GND | 1/4 | Hasta 1/256 |
| VIO | VIO | 1/16 | Hasta 1/256 |
En UART pueden elegirse otras resoluciones por firmware. Cuando varios TMC2209 comparten una línea serie, MS1 y MS2 también pueden seleccionar una dirección UART entre 0 y 3; el patrón de jumpers depende de la controladora.
Pinout, orientación y compatibilidad
El módulo utiliza el formato StepStick habitual, pero encajar físicamente no demuestra compatibilidad eléctrica. Antes de alimentar deben coincidir VM, GND, VIO, EN y DIR entre driver y controladora. También hay que comprobar la tensión del motor, la lógica, el pin UART, la posición de DIAG y el espacio disponible.
| Grupo | Pines | Función |
|---|---|---|
| Control | EN, STEP, DIR | Habilitación, pulso de paso y dirección |
| Configuración | MS1, MS2, CLK | Micropasos o dirección UART y reloj opcional |
| Comunicación | UART / PDN_UART | Configuración y diagnóstico por un solo hilo |
| Motor | 1A, 1B, 2A, 2B | Salidas para las dos bobinas del motor |
| Alimentación | VM, VIO y GND | Potencia del motor, lógica y masa |
| Diagnóstico | DIAG e INDEX | Detección de bloqueo/error e índice configurable |

Makerbase cita expresamente MKS SGEN_L, MKS Gen_L V2.1 y MKS Robin E3D como placas preparadas para aprovechar DIAG en esta revisión. Aun así, deben seguirse el manual y los jumpers de la versión concreta, y utilizar lógica de 3,3 V para sensorless tal como exige el fabricante.
Otras controladoras MKS, BIGTREETECH, FYSETC o compatibles con StepStick pueden admitirlo en STEP/DIR o UART, pero no debe asumirse sólo por el nombre de la placa o de la impresora. No es un recambio directo para electrónica con drivers soldados o pinout propietario.
Puede controlar motores NEMA 17, como nuestro motor NEMA 17 de 1,7 A, siempre que la corriente y la mecánica se configuren correctamente. La corriente nominal del motor no debe copiarse sin más como corriente del driver. Si se prefiere otra implementación actual del mismo chip, puede valorarse el BIGTREETECH TMC2209 V1.3, comprobando de nuevo pinout, UART, DIAG y controladora.
Instalación segura
- Apaga la fuente y desconecta también el cable USB.
- Consulta el pinout y el diagrama de jumpers de la revisión exacta de la placa.
- Comprueba orientación mediante VM/GND y EN/DIR antes de insertar el módulo.
- Configura el zócalo para STEP/DIR autónomo o UART siguiendo el manual de la controladora.
- Conecta las dos bobinas del motor según el pinout real; no pruebes combinaciones con la placa encendida.
- Establece una corriente inicial conservadora y proporciona refrigeración al compartimento.
- Prueba movimientos cortos y lentos, y verifica UART, temperatura, ruido, par y pérdida de pasos.
- Activa sensorless sólo después de confirmar el movimiento normal y poder detener la máquina con seguridad.
Configuración en Marlin
Para control UART, declara el driver del eje como TMC2209. Por ejemplo:
#define X_DRIVER_TYPE TMC2209
Cuando se utiliza únicamente como STEP/DIR sin comunicación puede corresponder TMC2209_STANDALONE. La corriente RMS, los micropasos, la interpolación y los pines serie deben proceder de la placa y del motor reales; no existe un bloque universal listo para copiar.
M122: comprueba la comunicación y muestra el estado del driver.M906: consulta o ajusta la corriente cuando UART funciona.M913: ajusta el umbral híbrido siHYBRID_THRESHOLDestá habilitado.M914: ajusta la sensibilidad siSENSORLESS_HOMINGestá habilitado.
En TMC2209, un valor de sensibilidad 255 es el más sensible y 0 el menos sensible. Un ajuste excesivo puede producir falsos disparos; uno demasiado bajo puede no detectar el tope. Marlin recomienda eliminar el segundo golpe de homing configurando a cero el rebote del eje cuando se utiliza sensorless.
Configuración en Klipper
Una sección base tiene esta estructura, sustituyendo los marcadores por los pines y la corriente reales:
[tmc2209 stepper_x]
uart_pin: <pin_UART_de_la_placa>
run_current: <corriente_RMS_adecuada>
sense_resistor: 0.110
interpolate: True
stealthchop_threshold: 0
run_current se expresa en amperios RMS. stealthchop_threshold: 0 mantiene SpreadCycle; un umbral elevado puede utilizarse para StealthChop después de valorar silencio, par y precisión. Klipper recomienda normalmente no declarar hold_current salvo que exista una necesidad justificada.
Si varios TMC2209 comparten una línea UART, uart_address acepta valores de 0 a 3, siempre que la placa permita seleccionar direcciones mediante MS1/MS2. DUMP_TMC STEPPER=stepper_x permite revisar comunicación y registros.
Sensorless homing en Klipper
[tmc2209 stepper_x]
diag_pin: ^<pin_DIAG_de_la_placa>
driver_SGTHRS: <valor_calibrado_0_a_255>
[stepper_x]
endstop_pin: tmc2209_stepper_x:virtual_endstop
homing_retract_dist: 0
Calibra un eje cada vez y comienza con el carro cerca del centro. En TMC2209, 255 es máxima sensibilidad y 0 mínima. El resultado cambia con velocidad, corriente, masa, fricción y temperatura, por lo que no debe copiarse el valor de otra impresora. Después del homing conviene apartar el carro del tope antes de repetirlo.
Sensorless homing: límites reales
StallGuard4 puede evitar un interruptor mecánico en determinados ejes X o Y, pero la detección depende de que el carro alcance un límite firme y repetible. Puede fallar a velocidades muy bajas o muy altas y cambiar si se modifica la corriente, la tensión de correas, la temperatura o la fricción.
No recomendamos presentarlo como solución universal para el eje Z: un husillo puede generar mucha fuerza y la repetibilidad puede no ser suficiente para ajustar la primera capa. En mecanismos críticos, delicados o con riesgo de colisión, un final de carrera físico puede ser la opción más segura.
¿Es para ti?
Es para ti si tu placa tiene zócalos StepStick compatibles, has comprobado orientación y pinout, y buscas movimiento silencioso con posibilidad de ajuste UART y diagnóstico.
No es para ti si tu controladora lleva drivers soldados, no puedes confirmar VM/GND/VIO, necesitas una corriente alta sin refrigeración o buscas sensorless plug-and-play sin configurar la placa y el firmware.
Contenido
- 1 x driver MKS TMC2209 V2.0.
El MKS TMC2209 V2.0 combina funcionamiento silencioso, control UART y StallGuard4 en un módulo compacto. Para obtener un resultado fiable, comprueba siempre la revisión de la placa, la orientación, los jumpers, la corriente del motor, la refrigeración y la configuración del firmware antes de aplicar alimentación.