Los pasos por unidad indican cuántos pulsos envía el firmware al motor para desplazar un eje una unidad, normalmente un milímetro. Si ese valor no coincide con la mecánica real de la impresora, cada movimiento recorre una distancia distinta a la programada en el laminador y las piezas salen con cotas alteradas. En Marlin se configuran con el comando M92.

Qué son los pasos por mm y por qué importan

En Marlin, M92 fija los pasos por unidad de los ejes X, Y, Z y E. La unidad habitual es el milímetro para los ejes lineales. El firmware usa ese valor para convertir cada coordenada del G-code en pulsos eléctricos, mientras que el motor solo recibe pasos. La relación entre ambos depende de la transmisión mecánica, como la correa, el husillo o el engranaje del extrusor.

Si el valor es demasiado alto, el firmware ordena más pulsos de los necesarios: el eje recorre menos distancia real que la pedida y la pieza sale más pequeña. Si es demasiado bajo, el eje se desplaza de más y la pieza crece. El error es proporcional. Una desviación porcentual en el valor configurado se traduce en una desviación porcentual aproximadamente igual, y de sentido contrario, en la cota impresa.

Los ejes lineales y el extrusor se comportan de forma distinta:

Eje Qué controla el valor de M92 Síntoma de un valor incorrecto
X e Y Desplazamiento horizontal del cabezal o de la cama Ancho o largo de la pieza distintos al modelo; agujeros y círculos deformados
Z Desplazamiento vertical en cada cambio de capa Altura total de la pieza distinta a la del modelo
E Longitud de filamento empujada por el extrusor Paredes más finas o más gruesas, subextrusión o sobreextrusión

Los ejes X, Y y Z miden posición en el espacio, así que su error aparece directamente en las cotas geométricas. El eje E no mide una posición sino una longitud de filamento. Su error afecta a la cantidad de material depositado, por lo que se nota sobre todo en el grosor de las paredes y en la cohesión entre capas, más que en las dimensiones exteriores.

En impresoras con varios extrusores, M92 se aplica a cada uno seleccionándolo con T<índice>. Esto requiere tener activada la opción DISTINCT_E_FACTORS en la configuración del firmware, según la documentación oficial de Marlin Firmware (2025). Sin esa opción no se pueden asignar valores E distintos a cada extrusor.

Qué son los pasos por mm y por qué importan

¿Cuándo hace falta calibrar los pasos por mm?

Hay que repetir la calibración cuando cambia algo que altera la relación entre los pasos del motor y el desplazamiento real del eje o del filamento. Si la transmisión cambia, el valor guardado deja de corresponder a la máquina, aunque el firmware no se haya modificado.

Cambios de hardware que obligan a revisar los valores

Cambio Eje afectado Qué revisar
Correa X o Y Cotas distintas entre ejes con la misma orden
Polea X o Y Desplazamiento que no coincide con el programado
Husillo (varilla roscada) Z Altura de capa total que no coincide con la programada
Extrusor o motor de extrusión E Cantidad de filamento distinta de la ordenada

Síntomas dimensionales que lo confirman

Si una pieza de prueba sale repetidamente fuera de medida en el mismo eje, el error sugiere un problema de escala. Un eje que siempre sale más grande o más pequeño sugiere un problema de pasos por mm, aunque conviene descartar antes otras causas, como la escala del laminador o la tensión de la correa. Medir la misma cota en varias piezas ayuda a comprobar que el error es constante y no puntual.

Cómo proceder tras el cambio

  1. Envía M92 sin parámetros para leer los valores actuales. En versiones antiguas de Marlin se usa M503.
  2. Compara el eje modificado con el valor que tenías antes del cambio.
  3. Si el valor no coincide con la medida real, recalcula el eje afectado.
  4. Tras sustituir el extrusor, el valor E guardado deja de ser fiable. Aplícalo con M92 E[nuevo valor] y guárdalo.

Si la máquina vuelve a la configuración de fábrica, M502 restaura los valores de DEFAULT_AXIS_STEPS_PER_UNIT.

Herramientas necesarias para calibrar

Para calibrar los pasos por milímetro de los motores se necesitan tres elementos: un instrumento para medir el filamento extruido, un programa que envíe G-code a la impresora y una forma de leer los ajustes que la placa tiene cargados. Ninguno requiere hardware especial, pero cada uno cumple una función distinta.

Calibre digital para medir el filamento

El calibre digital sirve para medir la longitud de filamento que realmente sale del extrusor. Esa medida se compara después con la longitud que se pidió extruir, así que es la referencia de todo el proceso. Conviene usar siempre el mismo calibre para que las comparaciones sean coherentes entre pruebas.

Consola o host para enviar G-code

Hace falta un host o consola capaz de enviar comandos G-code directamente a la impresora, sin depender de un archivo laminado. Pronterface y OctoPrint son ejemplos habituales de este tipo de herramienta. Desde ahí se introducen los comandos de lectura y de ajuste de esta fase.

Leer los ajustes actuales

Antes de cambiar cualquier valor, hay que leer los pasos por unidad vigentes. Según la documentación oficial de Marlin Firmware (2025), M92 sin parámetros permite leer los valores actuales, mientras que M92 con parámetros los fija. En versiones antiguas de Marlin, la lectura se hace con M503.

Comando Función Condición
M92 Lee los pasos por unidad de X, Y, Z y E Sin parámetros
M503 Lee los ajustes actuales Versiones antiguas de Marlin

Cómo calibrar el extrusor (E-steps) paso a paso

La calibración del extrusor consiste en comprobar cuántos milímetros de filamento avanza realmente el motor frente a lo que se le ordena, y corregir los E-steps (pasos por milímetro). El procedimiento se resume en cinco fases (precalentar, activar el modo relativo, marcar, extruir y recalcular), que la tabla desglosa en siete pasos. Según Wevolver (2025-01-15), el método completo requiere medir la longitud real extruida y aplicar el nuevo valor con M92.

Paso Acción Detalle
1 Leer el valor actual Envía M92 sin parámetros para ver los pasos por unidad de cada eje. En Marlin antiguo se usa M503.
2 Precalentar Lleva el hotend a la temperatura de trabajo de tu filamento. La fuente no especifica un valor concreto.
3 Activar el modo relativo Envía M83 para que el extrusor interprete las distancias como relativas.
4 Marcar el filamento Marca 120 mm de filamento con un punto de referencia fijo.
5 Extruir Envía G1 E100 F100 para avanzar 100 mm a velocidad F100.
6 Medir el resto Mide la distancia que queda entre la marca y el punto de referencia.
7 Calcular la longitud extruida Longitud extruida = 120 mm − distancia restante.

Fórmula de corrección

La fórmula de corrección es: nuevo valor = (valor actual × 100) ÷ longitud realmente extruida en mm.

Si el filamento avanza menos de 100 mm, el nuevo valor sale mayor que el actual. Si avanza más, sale menor. Una vez calculado, se aplica con M92 E seguido del nuevo valor.

Umbral del 30 %

Compara el nuevo valor con el actual. Si la diferencia supera el 30 %, la fuente indica que puede haber una obstrucción o un problema mecánico.

Cómo calibrar el extrusor (E-steps) paso a paso

¿Cómo calibrar los ejes X, Y y Z?

Para corregir las cotas lineales de cada eje, se compara la dimensión impresa con la cota nominal y se ajusta el número de pasos en proporción a esa diferencia. Cada eje se calibra por separado, así que conviene completar un eje antes de pasar al siguiente.

Medir la pieza de prueba por eje

Imprime una pieza de prueba cuyas dimensiones conozcas exactamente. Con un calibre, mide la distancia entre dos caras paralelas en el eje X, después en Y y después en Z. Anota cada medida junto a la cota nominal del modelo. Mide siempre las mismas caras y con el mismo instrumento, para que las diferencias reflejen el movimiento de la máquina y no errores de medición.

Aplicar el ajuste proporcional

La corrección se calcula con esta relación en texto:

nuevos pasos = pasos actuales × cota nominal ÷ cota medida

Si la pieza sale más grande que la nominal, la cota medida es mayor y el nuevo valor queda por debajo del actual. Si sale más pequeña, el nuevo valor queda por encima. Calcula el valor de cada eje por separado y aplícalo solo a ese eje.

Comandos para leer y escribir los valores

Acción Comando
Leer los valores actuales de todos los ejes M92 (sin parámetros)
Leer los valores en versiones antiguas de Marlin M503
Fijar los pasos del eje X M92 X[nuevo valor]
Fijar los pasos del eje Y M92 Y[nuevo valor]
Fijar los pasos del eje Z M92 Z[nuevo valor]

Repite la impresión de la pieza de prueba tras cada cambio para confirmar que la cota nominal coincide con la medida.

Cómo guardar el valor con M92 y M500

Los pasos por unidad se guardan en la EEPROM de la placa con M500, pero solo si EEPROM_SETTINGS está activado en el firmware. Sin esa opción, el valor se pierde al apagar la impresora.

Comando Función
M92 (sin parámetros) Muestra los valores actuales de X, Y, Z y E
M503 Lectura equivalente en versiones antiguas de Marlin
M500 Guarda los valores en la EEPROM
M501 Carga en memoria los valores guardados
M502 Restaura los valores de DEFAULT_AXIS_STEPS_PER_UNIT

El orden de trabajo recomendado es el siguiente:

  1. Anotar el valor original. Envía M92 sin parámetros y copia los pasos por unidad actuales antes de tocar nada.
  2. Aplicar el nuevo valor. Introduce el ajuste con M92 y el eje correspondiente.
  3. Guardar. Envía M500 para escribir el valor en la EEPROM.
  4. Comprobar. Envía M501 y después M92 para confirmar que el valor cargado es el esperado.

Si la calibración falla, M502 devuelve los valores de fábrica definidos en DEFAULT_AXIS_STEPS_PER_UNIT. Si quieres que el valor restaurado persista, ejecuta M500 después.

Errores habituales y cómo evitarlos

Los fallos más frecuentes al calibrar los pasos del extrusor suelen estar en tres puntos: el guardado del valor, el estado mecánico del extrusor y la forma de medir el filamento extruido.

Olvidar M500 y perder el valor

Enviar M92 E con el nuevo valor cambia la configuración en curso, pero no la almacena. Si la impresora se reinicia sin haber ejecutado M500, el valor calibrado no queda guardado.

Extruir en frío o con el extrusor sin preparar

El método exige precalentar la boquilla y activar modo relativo de extrusión con M83 antes de enviar G1 E100 F100. Extruir sin calentar puede hacer que el motor salte pasos o que el firmware bloquee la extrusión, y la longitud medida deja de representar el movimiento ordenado.

Obstrucción o problema mecánico

Si el filamento realmente extruido es notablemente más corto que los 100 mm ordenados, la causa puede no ser el número de pasos sino una obstrucción o un fallo mecánico. Antes de recalcular, hay que revisar la boquilla, el camino del filamento y el engranaje de arrastre. Recalcular sobre una extrusión defectuosa fija en M92 E un valor incorrecto.

Medir de forma imprecisa el filamento

La fórmula de la fuente es: nuevo E-steps/mm = (E-steps actual × 100) ÷ longitud realmente extruida en mm. Un error de medición se traslada directamente al resultado, por lo que conviene medir la distancia entre la marca de 120 mm y el punto donde queda el filamento, usando el calibre digital o una regla rígida y sin tirar del filamento. Si la marca se desplaza durante la extrusión, la medida no sirve y hay que repetir el ensayo.

Lo esencial

Lecturas relacionadas