QIDI Plus 4 - Technical Guide
Última actualización
Última actualización
Os facilitamos el proceso para realizar este proceso de una forma sencilla siguiendo el siguiente video:
Al parecer en algunas unidades de la QIDI Plus 4 podían tener problemas de juego, o wobble en inglés, lo cual puede provocar una calidad de las impresiones deficiente.
En el siguiente video podemos ver una solución al mismo, aunque es aconsejable contactar con el soporte de QIDI.
Conector Wifi
Puerto USB
Puerto de red por cable
Conector serial pantalla
Conectores de alimentación electrónica (a.+ b.-)
Conector calefactor cama (a.+ b.-)
Conector iluminación led
Conector cama
Conector ventilador circulación aire cerramiento
Conector ventilación capa auxiliar
Conector ventilador electrónica
Conector ventilador cerramiento
Conector motor Z (azul)
Conector motor Z secundario (azul)
Conector motor X (verde)
Conector motor Y (amarillo)
Conector USB toolhead
Conector sensor temperatura cerramiento
Conector sensor filamento
Conector sensor nivelación piezo
Conector sensor temperatura cama
EMMC almacenamiento sistema operativo
QIDI, por suerte, deja bastante acceso al sistema Klipper para poder realizar algunas mejoras sobre este. Por suerte en esta QIDI Plus 4 contamos con versiones de Klipper actualizadas recientemente:
QIDI por defecto habilita la interfaz Fluidd para la gestión de Klipper remota, disponemos de pantalla en la impresora pero las opciones y funciones de esta son bastante limitadas comparadas con Fluidd.
Para acceder a el, y una vez conectada la impresora a nuestra red y conociendo la IP asignada, usaremos cualquier dispositivo que se encuentre en la misma red y desde el navegador web que usemos iremos a http://IP_HOST
QIDI también permite acceso al host por SSH para utilizar la linea de comandos, especialmente útil para algunos usuarios y algunos procesos que explicaremos más adelanta.
Desde nuestro cliente SSH favorito usaremos la IP de nuestra impresora y el usuario mks
user (o user2)
mks
makerbase
Kiauh
Disponemos de Kiauh preinstalado que podremos lanzar ejecutando ./kiauh/kiauh.sh
, probablemente nos solicite actualizarlo:
IMPORTANTE!!!
NO ACTUALIZAR NINGÚN COMPONENTE CORE (KLIPPER/MOONRAKER/SYSTEM) DADO QUE PUEDEN ROMPER LA CONFIGURACIÓN Y PERSONALIZACIONES DE QIDI Y DEJAR EL SISTEMA INUSABLE.
LA QIDI Plus 4 viene con muchos cambios con respecto a modelos anteriores, el uso de la v0.12.x de Klipper (vs modelos anteriores con v0.10.x) y cambios en la configuración en gran parte sugeridos por la comunidad, hacen que funcione relativamente bien.
En cualquier caso siempre se tien margen de mejora y es por ello que os vamos a sugerir algunos cambios para mejorar en este aspecto.
Algunas de las fuentes que hemos utilizado para realizar estos mods:
https://github.com/qidi-community/Plus4-Wiki
https://www.printables.com/model/1035564-qidi-plus-4-rear-cover-with-various-fan-sizes
Dado que Klipper usa un proceso secuencial de la configuración y tenemos opciones de poder tener una configuración modular incluyendo otros ficheros de configuración a nuestro printer.cfg os sugerimos que todas las modificaciones, o las que sean posibles, se realicen en un fichero cfg como include.
Dentro de nuestro printer.cfg añadiremos un include para que cargue nuestro/s nuevo/ cfg al final de este, pero recuerda que como siempre por encima de la sección SAVE_CONFIG!!!:
En nuestro caso creamos una carpeta 3dwork/printers y un fichero qidi-plus-4.cfg donde incluiremos todas las modificaciones:
Una vez lo tengamos tan solo tendremos que crear el include en nuestro printer.cfg:
Utilizamos esta forma de configuración aparte de por lo comentado anteriormente, porque en caso de actualizaciones siempre nos va a ser más rápido el poder restaurarlas ante futuras actualizaciones del sistema.
En nuestro caso hemos creado carpetas porque usamos la misma estructura del Bundle Klipper 3Dwork donde en el futuro incluiremos esta máquina.
Dado que la electrónica no dispone de una batería para mantener los ajustes horarios lo ideal es que configuremos el sistema para que lo haga automáticamente.
Es importante porque de esta forma tendremos estimaciones correctas de tiempos de impresión, además de poder realizar actualizaciones software mediante internet.
El proceso es muy sencillo lanzando los siguientes comandos:
Lo primero de todo ajustaremos nuestra zona horaria con los siguientes comandos:
Desactivaremos systemd-timesync
:
Instalaremos chrony
:
Reiniciamos el servicio:
Podemos revisar la configuración en el caso que queramos ajustar algo, no suele ser necesario:
Revisamos el estado de la sincronizacion con estos comandos:
Podemos lanzar un comando date
para verificar que todo este sincronizado.
Ahora al apagar nuestra máquina esta se ajustará la hora al iniciarse.
La QIDI Plus 4 viene configurada por defecto para activar el ventilador de la electrónica como controller_fan, esto significa que el ventilador no se va a poner en marcha si no ponemos en movimiento la máquina.
Aunque esta forma de funcionar es adecuada para mantener la impresora mientras estamos imprimiendo, no nos ayuda a mantener la temperatura bajo control cuando la impresora está encendida y no estamos imprimiendo.
Para mejorar este aspecto vamos a realizar algunos cambios en la configuración por defecto:
Primero desactivaremos la configuración por defecto del ventilador de la electrónica que podemos encontrar en la sección [controller_fan board_fan]
la cual comentaremos añadiendo el símbolo # al inicio de cada línea:
A continuación, os recomendamos hacerlo en el include tal como os sugerimos al inicio, añadiremos la siguiente configuración:
Una vez aplicado el cambio en el propio interfaz ya podremos ver la información, estado y configuración de temperaturas que hemos hecho:
Como podéis ver en la captura anterior la temperatura de nuestra electrónica, sin tener la impresora imprimiendo, se encontraba en más de 50ª. Ahora mantendremos la temperatura controlada para que este dentro de los márgenes que configuramos (45º por defecto):
En la QUIDI Plus 4 contamos con un ventilador de 40mm para el control de temperatura que si bien suele ser suficiente os aconsejamos cambiarlo por uno más grande que normalmente tienen mayor flujo de aire y van a generar menos niveles de ruido durante su funcionamiento. En Printables y gracias al compañero kruegchen contamos con un mod que nos va a permitir instalar ventiladores de diferentes diagonales.
La QIDI Plus 4 monta su sensor de temperatura en una posición que probablemente no sea la más óptima. Podemos encontrarlo en la parte trasera derecha, debajo de la estructura del chasis:
Lo más óptimo siempre es que la temperatura sea del punto más cercano a la impresión, por lo que colocar el sensor en una esquina, junto al metal del chasis y en una zona alta y en el lado opuesto a donde sopla el propio calentador, no va a ayudar a que las temperaturas acaben siendo fiables.
Para mejorar estas lecturas y gestionar mejor el sistema de calefacción vamos a aprovechar el sensor de temperatura que tenemos en el toolhead/cabezal de impresión (GD32) para combinar lecturas de temperatura y así mejorar la precisión.
Gracias a la flexibilidad y potencia de Klipper vamos a crear un sensor de temperatura “virtual” donde combinaremos las lecturas de ambos sensores:
Primero comentaremos la sección [heater_generic chamber]
de nuestro printer.cfg
:
A continuación definiremos de nuevo el sensor de temperatura del cerramiento con otro nombre [temperature_sensor chamber_probe]
y modificaremos [heater_generic chamber]
para que use un sensor virtual utilizando la lectura combinada de ambos sensores (el del toolhead y el del cerramiento) dando más peso 3/1 al del toolhead:
Ahora contaremos con unas lecturas de temperaturas más precisas para la gestión de calentado y seguiremos usando el sensor por defecto para la protección termal, como podéis ver en la siguiente captura, la temperatura varía significativamente en varios grados:
Uno de los aspectos a mejorar es el tiempo de calentado del cerramiento cuando utilizamos filamentos técnicos y que puede durar muchos minutos... y el diseño/terminaciones de algunas partes no ayudan.
Para mejorar esto vamos a realizar un par de modificaciones en la configuración de la macro START_PRINT y verify_heater:
START_PRINT
Otro cambio a realizar para evitar errores durante el proceso de calentado es el relajar los tiempos de check de temperaturas de la cama caliente, ya que usaremos esta para ayudar en el proceso:
En nuestro laminador, dependiendo de este... en nuestro caso usamos OrcaSlicer, es aconsejable revisar que en la configuración de nuestro filamento no tengamos Active temperature control
activado, ya que puede retrasar el proceso de calentado del cerramiento:
A modo de resumen de todos estos cambios:
Utilizamos la cama para ayudar durante el proceso de calentado
Utilizamos los ventiladores de capa para distribuir la temperatura
Relajamos la temperatura objetivo del cerramiento 5º para que el resto del proceso de inicio de impresión sea más rápido, al iniciar la impresión llegará a la temperatura marcada por el laminador
Los procesos de nivelación se realizan en paralelo con el calentado del cerramiento
¡En nuestras pruebas se redujeron los tiempos de inicio de impresión en más de 5 minutos, lo cual no está nada mal!
Prevención de paradas de emergencia por temperatura cuando utilizamos el sistema de calefacción del cerramiento.
Teniendo en cuenta la ubicación del sistema de calefacción cuando tenemos una impresión que llega o sobrepasa los 268mm la propia estructura de la cama bloquea el sistema de calefacción provocando en ocasiones que la protección termal de Klipper pueda detener la impresión en curso y bloquear el sistema.
Dado que es un "problema" de diseño de difícil solución podemos utilizar las funciones avanzadas disponibles en las macros de Klipper para poder minimizar este problema. Para ello y dentro del fichero de configuración gcode-macro.cfg
editaremos la macro SET_PRINT_STATS_INFO
, o si usamos el include sugerimos la incluiremos directamente ahi para que la sobreescriba, para que reduzca la temperatura del cerramiento a partir de esas alturas para que finalice la impresión sin errores:
La QIDI Plus 4, como modelos anteriores, utilizan KAMP para el mallado adaptativa/inteligente a la hora de imprimir. La que por defecto utiliza QIDI en sus perfiles de máquina para laminadores a veces resulta bastante grande y laboriosa de retirar.
Aprovechando esto podemos utilizar también la línea de purgado adaptativa/inteligente. En unos simples pasos podremos utilizarla y disponer de más opciones de ajuste sencillo:
Editaremos el fichero KAMP_Settings.cfg
que encontraremos en la misma ubicación que nuestro printer.cfg:
Simplemente habilitaremos/descomentamos, eliminando el simbolo # del inicio, el [include ./KAMP/Line_Purge.cfg]
de el:
Iremos a nuestro laminador y editaremos el script/gcode de inicio de impresión donde:
Eliminaremos la parte de los gcodes de linea de purga que encontraremos al final de este:
En su lugar pondremos la macro LINE_PURGE
que habremos habilitado con el cambio en KAMP_Settings.cfg
QIDI ha dejado algunas configuraciones realmente extrañas en algunas partes de los motores con valores por ejemplo habilitando el interpolate
o microsteps
asi que si ajustamos estos es aconsejable aumentar un poco el run_current
A continuación os facilitamos una configuración que en nuestro caso ha funcionado muy bien, lo aconsejable es realizar tests:
Si aumentamos los valores de run_current es especialmente aconsejable mejorar la refrigeración de la electrónica que os mostramos en el apartado refrigeración de la electrónica.
La QIDI Plus 4 dispone de varios sistemas de nivelación que facilitan, simplifican y automatizan estos procesos significativamente. Vamos a intentar mejorar algunos de estos para aprovechar al máximo
Klipper puede tener algunas desviaciones en la gestión de ejes que pueden afectar a un proceso critico como el de nivelación:
Ajustar los micropasos de los ejes z a 16 micropasos que va a mejorar la precisión de movimientos en especial a velocidades que normalmente son utilizadas durante el proceso de nivelado. Para ello modificaremos en nuestro printer.cfg, en nuestro caso lo haremos en nuestro include añadiendo la sección y el valor a ajustar, las secciones [stepper_z] y [stepper_z1] su valor microsteps a 16 (originalmente 128, que para nosotros nos parece una barbaridad):
Otra configuración que suele introducir imprecisión de movimientos es el uso de interpolación de micropasos, para deshabilitarlo identificaremos las secciones [tmc2209 stepper_z]
y [tmc2209 stepper_z1]
y las ajustaremos a False:
Uno de los sistemas que utiliza la QIDI Plus 4 para la nivelación son unos sensores de presión en la cama para, entre otras cosas, poder tener un ajuste de z-offset optimo.
Para mejorar esta parte identificaremos la sección [smart_effector]
, donde modificaremos los valores de speed
, samples
, sample_retract_dist
ysamples_tolerance
especialmente útil si realizamos multi probing (varias medidas por punto):
Teniendo en cuenta el tamaño de impresión de la QIDI Plus 4 y para disponer de una malla más definida podemos subir la malla de sondeo (probe_count) a un valor superior. Además ajustaremos bicubic_tension al disponer de más puntos de sondero y horizontal_move para mejorar el proceso como también hicimos en el smart effector anteriormente:
Ya que la QIDI Plus 4 cuenta con doble motor independiente para el eje Z lo que nos va a permitir disponer de nivalación z-tilt (nivelación asistida de ambos ejes por sensor para una plataforma lo más nivelada posible en los ejes) vamos a ver que mejoras pordemos introducir.
De forma similar que hicimos en el smart effector ajustaremos la sección [z_tilt]
los valores de horizontal_move_z
, retries
, y retry_tolerance
Después de realizar estos cambios:
Aunque la QIDI Plus 4 dispone de un asistente de nivelación manual de la pantalla este se hace de forma totalmente manual. Aprovechando que disponemos de un sensor de nivelación habilitaremos este proceso asistido por el sensor añadiendo la siguiente configuración:
Una vez aplicado podremos lanzar la nueva macro, recordar antes hacer un home de todos los ejes:
Al finalizar el proceso nos indicará que correcciones hemos de realizar en cada uno de los tornillos de ajuste de la cama:
QIDI ha implementado un proceso desatendido para el ajuste de Input Shaper, reducción de vibraciones, para que sea más sencillo para los usuarios lo que puede ser una buena idea.
En cualquier caso el ajuste de Input Shaper, si queremos obtener unos resultados óptimos, lo ideal es poder revisar los datos obtenidos del análisis del proceso para tomar la mejor decisión.
En revisiones anteriores de máquinas QIDI ya os sugerimos como realizar el proceso utilizando macros shell-script en este caso os vamos a sugerir una solución más sencilla de implementar y con muchas opciones relacionadas con Input Shaper... y es utilizando Klippain y su módulo ShakeTune. La instalación es muy sencilla:
Clonaremos e instalaremos un repositorio de ShakeTune adaptado para correr en QIDI
Una vez instalado iremos a nuestro interfaz web y habilitaremos la extensión añadiendo lo siguiente a nuestro printer.cfg:
Una vez guardados, aplicados los cambios y reiniciado Klipper tendremos disponibles nuevas macros para lanzar el proceso:
Cuando lancemos estas macros, os aconsejamos COMPARE_BELTS_RESPONSES
primero y ajustar la tensión de correas.
Al finalizar el test nos creará una imagen con el resultado del mismo que podremos acceder desde el interfaz web dentro de la carpeta /ShakeTune_results/belts:
El objetivo es que ambas gráficas sean lo más similares posibles. En la Wiki de QIDI tenéis descrito el proceso de ajuste de correas detalladamente.
La siguiente macro a lanzar es la de AXES_SHAPER_CALIBRATION
que una vez finalizada encontraremos el resultado en la carpeta /ShakeTune_results/input_shaper y dispondremos de una imagen generada por eje:
No vamos a entrar más en detalle de como optimizar o ajustar Input Shaper ya que tenéis información detallada del proceso de analizar resultados en la siguiente guía de Input Shaper, para cuestiones sobre las macros de Klippain ShakeTune tenéis más información aquí.
Solamente unos apuntes específicos para esta QIDI Plus 4:
Al ser una máquina CoreXY es muy importante que la tensión de las correas la Wiki de QIDI tenéis descrito el proceso de ajuste de correas detalladamente
De nuevo relacionado con el tipo de cinemática CoreXY el algoritmo a utilizar es aconsejable que sea el mismo en ambos ejes X e Y ya que comparten sistema de cinemática. Para una máquina CoreXY los más aconsejables son ZV o MZV
También es importante realizar estas mediciones cuando ajustemos la cinemática, como al tensar correas, lubricado, etc
Por defecto la configuración de la QIDI Plus 4 es de 640x480 lo cual para monitorizar no va a dar problemas ni va a consumir excesivos recursos.
En el caso que queramos realizar timelapse es aconsejable cambiar la configuración de esta para obtener la máxima resolución que la cámara soporta. Para ello editaremos el fichero de configuración webcam.txt, en concreto la línea camera_usb_options:
Que cambiaremos por:
En esta sección os vamos a aconsejar algunas modificaciones para mejorar la calidad de nuestras impresiones. Es importante recalcar que lo ideal es que vosotros mismosencontréiss, realizando tests, los valores óptimos para vuestra máquina ya que algunas de estas modificaciones van a depender del ajuste mecánico o uso de vuestra máquina.
El ajuste óptimo de square_corner_velocity
, dentro de la sección [printer]
va a ayudar a mejorar el acabado de los giros en trazadas.
Os aconsejamos realizar pruebas con diferentes valores para ajustar a vuestro caso.
Guardamos los cambios y reiniciamos nuestro sistema Klipper, si revisamos los logs del servicio Klipper (klippy.log) podremos verificar que el cambio se aplicó correctamente: