Introducción.
Que Es?
El monitor de estado Vi3D! esta pensado para mostrar animaciones he información importante durante el proceso de impresión de de una pieza. Con soporte directo para Klipper o servidor nativo de interacciones disparados por medio de webhooks en tiempo real.
Desarrollo.
Todo inicio como una idea para generar interacción de estados de forma atractiva en el cabezal de impresión, debido al a falta de proyectos que cubrieran la necesidad el equipo de ViVe3D comenzó con el desarrollo con la finalidad de integrarlo a la mayor cantidad de modelos de impresoras que existan en el mercado.
En el inicio la idea fue clara y los primeros bocetos así lo demuestran. adaptando el modelo base a los otros Case de cobertura para los cabezales de impresión. dejando un producto muy estético y simple de trabajar.
Hardware
Para garantizar la compatibilidad del sistema con la mayor cantidad de modelos de impresoras, se tomo la decisión de manejar el sistema de forma independiente sin acceso directo a la maquina. todos los datos he interacciones se obtienen de forma independiente y se envían al monitor vía wifi.
El sistema se compone de 2 componentes básicos:
1) Pantalla LCD o TFT
2) ESP32 WROOM
El proyecto es compatible con la mayoría de pantallas si al momento de compilar el firmware ajustamos la resolución y pins de conexión.
Existen algunos modelos de pantallas que tienen todo incluido en un solo hardware (pantalla y esp32) y es muy recomendado su uso para simplificar el proceso. los modelos mas comunes son las denominadas como yellow-screens.
Software
El proyecto original fue desarrollado para generar integración con las transmisiones en vivo del canal de la comunidad. cuenta de 3 piezas de software principalmente que fueron programados de la forma mas sencilla posible sobre NODE.JS y Arduino IDE.
1) Firmware. Sistema que se instala directamente sobre el ESP32, en una primera instancia solo esta pensado para conectarse al flujo de video MJPEG generado por un servidor externo. Próximo cambio y revisión, soporte de animaciones precargadas en la memoria SD.
2) Servidor de transmisión. El servidor de transmisión realiza 2 funciones principales.
Permite administrar las animaciones fijas denominadas como FONDOS los cuales se reproducen de forma aleatoria. el flujo de carga además descompone las animaciones en formato gif o mp4 en frames fijos. organizándolos en carpetas que contienen la secuencia reproducir según la cantidad de fps que el usuario seleccione al cargar.
Administración de webhooks. una de las ventajas es la capacitad de disparar animaciones especificas para diferentes eventos en modalidad json. simplemente enviando el disparador como enlace de petición.
3) Servidor de conexión. El servidor de conexión es el encargado de tomar interaccionen en transmisiones en vivo y convertirlas en llamados a webhook para ejecutar las animaciones especificas para cada interacción en el servidor de transmisión. de momento el soporte esta apuntado a la red social tiktok pero se esta trabajando para integrarlo a twich, Instagram y YouTube.
Instalación
1- Instalación de Firmware.
a) Modificación del código. Se debe ingresar la dirección IP del servidor directo en el código antes de compilar además de los datos de conexión a la red wifi.
b) Instalación de librerías. Para el correcto funcionamiento de la pantalla a la hora de dibujar las imágenes, en Arduino IDE se deben instalar las librerías listadas abajo. además del soporte para el modulo ESP32.
c) Cargar parámetros y pines de conexión. dependiendo de cada pantalla a utilizar los pines de conexión pueden variar se deben buscar los datos en la documentación de tu dispositivo para configurar todo correctamente. en este ejemplo dejamos la configuración estándar para la pantalla TFT Yellow ESP32-2432S028. modifica los valores en el archivo User_Setup.h dentro de la carpeta del plugin TFT_eSPI en el directorio de librerías ubicado en /documentos/arduino.
d) Verificar y cargar el firmware. una vez modificados los archivos procede a verificar y cargar el código a ESP32. puedes descargar el código en el botón descargar.
2- Instalación de Servidor de transmisión.
a) Descarga el código. Descarga el código del servidor completo en el botón de abajo.
b) Primeros pasos. Instala Node.js y NPM. Descomprime el archivo en una carpeta, abre una terminal dentro de la carpeta y ejecuta "npm install" ( si tienes linux npm run install-ffmpeg ) y por ultimo "node index.js" si todo va bien veras algo como esto.
c) Primera prueba. carga un GIF o MP4 en la sección de fondos para verificar su funcionamiento.
Instalación de Servidor de Conexión.
a) Descarga el código. Descarga el código del servidor completo en el botón de abajo.
b) Descomprime el archivo en una carpeta, abre una terminal dentro de la carpeta y ejecuta "npm install"
c) Modifica el archivo "node_modules/tiktok-live-connector/dist/lib/_legacy/data-converter.js" cambiando "if (webcastObject.giftDetails.giftImage) {" por la siguiente linea "if (webcastObject.giftDetails && webcastObject.giftDetails.giftImage) {"
d) Inicia el servidor con "node index.js" si todo esta bien podrás ver lo siguiente.
Si todos los pasos están correctos podrás comenzar a utilizar todos los servicios.
Modelos 3D
Creality Hi.
En el siguiente enlace encontraras los archivos imprimibles con el soporte para la pantalla sobre el cabezal para la impresora Creality HI. Este mod esta optimizado para el cambio de boquilla. requiere de 4 tornillos M6x4mm y 1 M6x5mm con tuerca.
Ender 3 v3 KE
En el siguiente enlace encontraras los archivos imprimibles con el soporte para la pantalla sobre el cabezal para la impresora Ender 3 v3 KE. Este mod esta optimizado para mejorar la ventilación de las piezas.
Ender 3 v3 Series
En el siguiente enlace encontraras los archivos imprimibles con el soporte para la pantalla sobre el cabezal para las impresoras Ender 3 v3 Series. Este mod esta optimizado para mejorar la ventilación delas piezas.
Ender 3 v3 SE
En el siguiente enlace encontraras los archivos imprimibles con el soporte para la pantalla sobre el cabezal para las impresoras Ender 3 v3 Series. Este mod esta optimizado para mejorar la ventilación de las piezas.
Modelos Base
Pantalla base para diseño de mods de cabezal, genérico para todas las impresoras pantalla 2.8plg