Me presento, compañeros (y tutorial de como poner cama caliente)



  • Muy buenas amigos, desde el último viernes soy un orgulloso propietario de una Hephestos nuevecita y qué decir, imprime de miedo y se ha adaptado genial a la cama caliente. Solo he impreso en ABS y sale genial.

    Esta es la mía, preciosa:


    A 0,3 mm / capa.

    Por cierto, estamos creando una asociación maker en la Politécnica de Cartagena, si alguien es de allí o cerca le ánimo a pasarse, será muy bien recibido. Ah, y decir que hasta el más experto admira la Hephestos y su desempeño, me huelo más de una en el club!

    A quien le interese el ABS decir que ha sido una chorrada la modificación: una cama de 10 euros, una fuente de 30 euros y termistor y cablecitos 5 euros y hay mil tutoriales y en un hilo de este foro que explica la modificación del software (un solo número de 0 a 1) y si no, aquí estoy yo.

    Ahora, aprovechando el carácter cercano de los chicos de bq me gustaría hacer algún comentario. He encontrado dos "incompatibilidades":

    - Las aletas de refrigeración del hotend estorban a uno de los dos tornillos de montaje del extrusor, concretamente al más cercano al ventilador de capa. La solución ha sido girarlo y sacar el cableado por la derecha, cosa que también me ha ahorrado estrujar los cables entre el extrusor y el soporte del carro. Ahora, algún incauto puede no darse cuenta de que se puede girar, como le ha pasado a un compañero del foro, y hacer un siscar limando la pieza o corriendo la rosca.

    - Hay un conflicto entre la cadeneta recojecables del eje x y el soporte de la bobina. Al subir el eje Z choca la cadeneta con la parte plana del soporte y se encasquilla, hasta casi romper si no te das cuenta. Esto pasa mucho al terminar la impresión, que hay gcode que manda el Z a 200 (y la cama al fondo) aunque se quede en 180 pero me supongo que ya estará corregido en la 1.3.1 que no he instalado aún.

    Por todo lo demás, que es mucho más, buen trabajo. Estaba mucho tiempo esperando una máquina así.

    Saludos, compañeros.

    PD: ¿Alguien conoce el proceso para calibrar el PID de la cama? Me tarda una eternidad en calentar.


  • MVP

    Bienvenido al foro. Aunque yo no comparto con vosotros mi aficción a la impresión 3D, de momento, si que comparto el lugar de residencia.



  • Hola, bienvenido!! la verdad que si es bonita la prusa!!



    puedes mandar tus apuntes directamente a soporte, son cositas a tener en cuenta. Gracias!!!!! ;). 😛


  • MVP

    Ostras con cama caliente y todo, gran trabajo compañero. Gracias por compartirlo.



  • Ostias!

    No jodas que la pieza en el extrusor de las aletas de refrigeracion giran!

    Pensamos que estaba mal puesto.... y de alguna forma soldado.
    Es que parece tan bien encajado que ni probamos a girarlo no fuesemos a romper algo.

    De todas formas solo fue lijar menos de 1mm en las 2 o 3 ultimas aletas 😛


    Ta quedao muy chula con la cama caliente.

    Bienvenido y Gracias!



  • Enhorabuena por esa impresora y bienvenido!.


    La impresora no debe subir por encima de 180 dado que está limitado por firmware. Si quieres calibrar el PID de la cama tienes que enviar el comando M303 E-1. Y luego modificar el firmware para que acepte los valores nuevos de PID que le pongas.

    ¿La cama la tienes conectada a 12V o 24V?




  • Hola chicos. Ramaen, ya estás tardando en acercarte a la ETSII chaval.
    Lo que quería decir, y sigue pasando, es el choque de la cadeneta de x con el soporte de bobina de filamento y empieza cuando le quedan puede que 5 cm para completar todo el recorrido.
    Es fácil cambiar el end.gcode, pero podriais preparar así los perfiles del Cura.
    SGruben, la cama la tengo a 12 y según me dicen está bien el tiempo de calentamiento. Es que yo no tengo paciencia jeje.. Tarda 7 minutos en ponerse a 100°.
    Por cierto, me gustaría mucho y creo que sería útil para todos si nos dijerais como activar todas las funciones de la cama, ya que por ejemplo carece del preheat, o cuando paras una impresión se desconecta el hotend pero no la cama (lo uso para precalentarla).
    Saludos.



  • En principio si el límite en software del Z es de 180 no debe subir tanto. Si que puede llegar a tocar la cadeneta en el soporte de la bobina, pero en las pruebas que hemos hecho suele pasar por delante la cadeneta del soporte.


    Eres muy impaciente, las camas calientes que he visto suelen tardar eso o hasta mas tiempo.

    El Firmware de la Hephestos no está del todo adaptado para la cama caliente, se puede añadir y funciona gracias a las posibilidades de Marlin, pero no está implementado estos campos que nos indica.

    Si que es buena idea lo de que cuando pares una impresión la cama caliente también se enfríe. No puedo probar ya que no tengo ahora mismo una cama caliente en la impresora, pero si quieres puedes hacer una prueba.

    Modifica el firmware de la Hephestos en el archivo ultralcd.cpp, busca la función lcd_sdcard_stop, pues añade la línea siguiente "setTargetBed(0);" sin las comillas. Añade la línea debajo de la del hotend, así cuando hagas un stop debe también enfriarse la cama.



  • Revisando, si añades la misma línea pero cambiando el 0 por el valor de la temperatura que deseas en la función lcd_preheat, se debe calentar la cama cuando lanzas un preheat desde el menú de control.


    Lo dicho esto es para que pruebes, yo no puedo probarlo ya que no tengo base caliente, pero en principio debe funcionar ;).



  • Gracias por el esfuerzo, sgruben, pero me falta algo antes de cargar y es que hay varias funciones lcd_preheat y además ni siquiera pone en ellas el valor que debe tomar el hotend, si me pudieras dar alguna indicación más te lo agradecería.



  • Te pego aquí las dos funciones a las que me refiero exactamente. Te he puesto comentario para ello. El valor del hotend lo coge de la variable PREHEAT_HOTEND_TEMP. Como te digo esto es una prueba, no puedo probarlo ahora mismo, pero en principio debe funcionar.


    static void lcd_sdcard_stop()

    {

        card.sdprinting = false;

        card.closefile();


        setTargetHotend(0,0);

        setTargetBed(0); //Línea añadida por sgruben para que cuando se ejecute el stop la cama también se enfríe.

        

        

    #ifdef WITBOX_DUAL

        setTargetHotend(0,1);

    #endif


        quickStop();

        #if X_MAX_POS < 250

          plan_buffer_line(X_MIN_POS, 150, current_position[Z_AXIS]+20, current_position[E_AXIS], manual_feedrate[X_AXIS]/60, active_extruder);

        #else

          plan_buffer_line(X_MAX_POS-15, Y_MAX_POS-15, Z_MAX_POS-15, current_position[E_AXIS], manual_feedrate[X_AXIS]/60, active_extruder);

        #endif


        if(SD_FINISHED_STEPPERRELEASE)

        {

            enquecommand_P(PSTR(SD_FINISHED_RELEASECOMMAND));

        }

        autotempShutdown();


        cancel_heatup = true;


        LCD_MESSAGEPGM(WELCOME_MSG);

        lcd_update();


        lcd_return_to_status();

    }



    #ifdef WITBOX

    static void lcd_preheat()

    {

    #ifdef WITBOX_DUAL

    setTargetHotend1(plaPreheatHotendTemp);

    #endif

        setTargetHotend0(PREHEAT_HOTEND_TEMP);

        setTargetbed(100); // Línea añadida por sgruben para que caliente la cama cuando mandas un preheat. En este caso se calienta con 100 ºC.

        fanSpeed = PREHEAT_FAN_SPEED;

        setWatch(); // heater sanity check timer

        lcd_return_to_status();

    }

    #endif //WITBOX



  • Valeee, language.h. Ahora me saluda por mi nombre, jaja. La pega es que cuando le doy a "FW info" me vuelve a saludar jeje.

    Pues nada, cuando hagamos lo del preheat ya me pongo con la autonivelación de la cama por servo. 😉



  • Casi perfecto, sgruben. Efectivamente, ahora cuando paro una impresión devuelve a 0 la cama, pero al intentar añadir la línea "setTargetbed(100);", me da este error el compilador:


    "ultralcd.cpp: In function 'void lcd_preheat()':
    ultralcd.cpp:445: error: 'setTargetbed' was not declared in this scope".

    Por cierto, aunque voy a intentar traducirlo a mi estilo (que me salude por mi nombre jeje), ¿dónde tenéis los archivos del Marlin traducido?



  • Maldita sintaxis jeje, es setTargetBed(100);, le falta la mayúscula a la B por eso falla.


    No se a que te refieres traducido, si es que el firmware te aparezca en castellano, tendrías que modificar la variable LANGUAGE_CHOICE al valor 5 en el archivo language.h, vamos que tiene que quedar así:

    #define LANGUAGE_CHOICE 5



  • Perfecto, sgruben, ya funciona todo a la perfección, me hace el preheat y el cooldown cuando paro la impresión. Lo del idioma te lo pregunté e investigando poco después encontré el language.h y empecé a hacer virguerías jeje.


    Nota para todos, siguiendo este hilo y cambiando además el #define TEMP_SENSOR_BED a "1" en lugar de a "0" en configuration.h, tendréis vuestra cama caliente totalmente operativa.

    Saludos.



  • Hola a todos.
    Yo quería haceros una pregunta y a ver si me poseis ayudar.
    Acabo de instalar la cama caliente y he actualizado el firmware nuevo 1.3.1.
    Si yo grabo una tarjeta SD con una pieza para imprimir se me queda la impresora con el mensaje en pantalla de "calentando cama" pero la cama no llega a calentarse nada, si lo hago por USB tampoco consigo que la cama se caliente, no se si hay alguna cosa mas que deba hacer para  que esto funcione.
    Gracias por adelantado



  • Me da que no tienes activada la cama caliente en el firmware. Revisa el firmware y que has realizado la modificación para tener activada la cama. Mira la variable #define TEMP_SENSOR_BED.



  • Hola, gracias sgruben.
    Vale, eso se mira con la aplicacion de arduino??
    Me quede estancado en el Basic de mi commodore64 hace 25 años, no se si podre con esto y me da que voy a tener que meter unas leñas debajo de la cama para calentarla.



  • No se si voy por buen camino, he encontrado un archivo configurationH en Release v1.3.1 for bq Hephestos
    He podido ver la linea define temp_sensor_bed que esta en 0, supongo que hay que cambiar por 1.
    Lo que ya no se es como debo seguir, a ver si me podeis dar alguna pista , no se como hay que hacer para editarlo y supongo que hay que generar el fichero hex y volverlo a grabar en la placa, ¿¿¿no???



  • Si estas usando el programa Arduino IDE, tienes que seleccionar la tarjeta en el programa la Mega 2560 y el puerto serie donde está conectada. Luego ya con el icono de la flecha te carga el programa.