Page cover

Recuperar impresión fallida en Klipper

No hay nada que duela más que ver una pieza al 80% y que, de repente, se produzca un atasco, se acabe el filamento o un gato decida que el cable de alimentación es un juguete.

Si no has movido la pieza de la cama, respira hondo. Aquí tienes posibles caminos de cómo resucitar tu impresión.

triangle-exclamation

Antes de hacer nada, asegúrate de que:

1

Determinar la altura de fallo (Z)

Necesitamos saber exactamente en qué milímetro se quedó la impresora.

  • Método Pro (calibre): Mide la altura de la pieza impresa con un calibre digital. Si mide 42.4 mm, esa es tu referencia.

  • Método Klipper (Manual): Mueve el cabezal sobre una zona de la pieza que esté terminada. Baja el eje Z poco a poco (de 0.1 en 0.1) hasta que la boquilla casi toque la última capa. Mira el valor de Z en la consola o mide con un calibre esa distancia si la maquina no está posicionada en Z.

circle-info

Tip:

Es mejor quedarse corto por 0.1mm o 0.2mm (que la boquilla imprima un poco en el aire al principio) que pasarse y que el cabezal choque y arranque la pieza de la cama.

2

Engañar a Klipper (SET_KINEMATIC_POSITION)

Como no podemos hacer homing en Z porque la pieza estorba, usaremos un comando para posicionar manualmente Klipper sin realizar un homing. Una vez que hayas hecho Home en X e Y (G28 XY o desde vuestra interfaz Klipper...con cuidado), posiciona el cabezal y ejecuta:

SET_KINEMATIC_POSITION Z=42.4

Sustituye 42.4 por tu altura medida. Ahora Klipper "cree" que está en esa altura y junto con el homing en X e Y ya está completamente posicionada. Ya puedes mover el cabezal con seguridad.

circle-check
3

Editar el G-Code

Aquí es donde ocurre la “magia”. Abre tu archivo .gcode en un editor de texto (Notepad++, VS Code):

  1. Busca la altura: Busca el comando Z42.4 (o la altura donde falló).

  2. Borra el pasado: Elimina todo el G-code desde el final de la zona de "Inicio" (después de las mallas de nivelación y el purgado o la llamada a una macro... revisar el script de inicio que tenéis configurado en el laminador os va a ayudar a encontrar esa parte) hasta encontrar la línea de Z donde se quedó.

  3. Mantén el flujo: Asegúrate de mantener los comandos de temperatura, velocidad y, sobre todo, el G92 E... si tu laminador usa coordenadas de extrusión absolutas.

circle-exclamation

¡IMPORTANTE! El contador de extrusión

  1. Es importante también restaurar el estado del ventilador último antes del fallo; en muchas ocasiones puede ser que esté fijo o esté dinámico en las opciones del laminador, pero que el ajuste no esté cercano cuando retomamos la impresión. Para ellos buscaremos el anterior valor de M106 S... desde el punto de reinicio del gcode y o bien lo insertaremos en el gcode después del G92 anterior o lo ajustaremos manualmente desde la interfaz o desde consola.

  2. También para evitar problemas relacionados con el mallado si se tiene cargada una malla; para ello añadiremos BED_MESH_CLEAR⁣ para limpiar cualquier malla que se pueda usar.

  3. Otro problema que podemos minimizar accidentes al iniciar la impresión, para evitar que el cabezal se mueva en línea recta desde donde está hacia el punto de inicio de la capa y choque lateralmente con la pieza. Para ello añadiremos un pequeño bloque de G-Code de seguridad para poner al principio del archivo editado (y antes de las modificaciones anteriores):

    G91             ; Coordenadas relativas
    G1 Z5 F600      ; Sube 5mm por seguridad
    G90             ; Coordenadas absolutas
    G1 X... Y...    ; Mueve a la posición de inicio de la capa (mira el G-Code)
    G1 Z...         ; Baja a la altura de la capa de rescate

    Esto realizará un movimiento de 5 mm en Z para evitar la pieza; irá a las coordenadas XY de forma segura y después se posicionará en Z.

4

Reinicio de impresión seguro

  • Calienta el nozzle a temperatura de impresión.

  • Limpia la punta.

  • Carga el archivo G-code modificado y... ¡Dale a imprimir!

Última actualización