Cama caliente Prusa i3 Hephestos con 2.3.1



  • Hola buenas,


    Abro este debate porque la guía de instalación de la cama caliente que hay en la web está hecha para la versión de firmware 1.4.2 y la última que hay disponible oficial es la 2.3.1 (donde no hay un Marlin.ino y no puede cambiarse desde Arduino IDE), y no sé si soy yo que no he encontrado como hacerlo para esta versión o que no hay nada escrito aún.

    Os remito a esta estupenda guía para que sigáis los pasos, salvo el apartado de Firmware 

    Tendréis que reinstalar el firmware, para ello primero descargaréis la versión 2.3.1, y elegiréis el archivo         " Source Code (zip)" que está abajo del todo. Descomprimimos el archivo y haremos los cambios para que nuestra impresora sepa que ahora tiene una cama caliente. Al igual que con versiones anteriores:
    • Accede a la carpeta \Marlin\config\ModeloDeSuImpresora\ y corta todos los archivos que se encuentran en el interior de la carpeta: “Configuration.h”, “Configuration_adv.h”, “language.h” y “Makefile”.
    • Debes pegar los archivos cortados en la carpeta \Marlin.
    • A continuación, accede a la carpeta \Marlin\libraries\SdFat\ y, al igual que en la anterior ocasión, corta todos los archivos contenidos en ella.
    • Nuevamente, vuelve a la carpeta \Marlin\ para pegar los archivos cortados.

    Como ahora no se puede desde Arduino IDE necesitamos otro editor de texto para poder modificar estos ajustes. Yo tenía instalado Sublime Text, así que fue el que usé. Para abrir los archivos con nuestro editor, dentro de la carpeta \Marlin\ damos click botón derecho a " Configuration.h ", elegimos Propiedades y cambiamos el programa con el que abrir este tipo de archivos. 
    ( Si no os aparece directamente tendréis que ir a la carpeta donde se ha instalado y elegir nombredelprograma.exe . En mi caso la ubicación era C:\Angel\Archivos de Programa\Sublime Text 3, y elegí sublime_text.exe

    Ahora abrimos el archivo Configuration.h "  y realizamos esto antes de compilar nuestro archivo: 
    • Busca la línea “#define TEMP_SENSOR_BED 0″ y cambia el valor de “0″ por “1″ (sin las comillas).
    • Busca la línea “//#define HEATED_BED_SUPPORT” y elimina las barras (//) que aparecen al principio de la línea, para descomentar el código y que quede activo.

    Para compilarlo instalaremos Make. Para descargarlo y hacerlo todo bien, os dejo este repositorio donde viene muy bien explicado.  Es muy importante que respetéis las ubicaciones de instalación que aparecen allí indicadas, sino a la hora de compilar aparecerán errores. 
    Ejecutamos make.cmd, que está en la carpeta donde accedimos a \Marlin, y seguimos los pasos.

    Por último, queda cargar el firmware en la impresora. Yo uso Cura 15.04.02, por que con el nuevo no soy capaz de que me detecte la impresora. El archivo .hex que debemos cargar se llamará " Marlin.hex " y se encuentra dentro de \Marlin, por lo que desde la pestaña de instalación lo elegimos y esperamos a que termine.
     
    Edito: Faltaría también decirle a nuestro programa de laminado (Cura, Slic3r, Simplify3D...) que tenemos la cama caliente



  • Hola @{Canyonazo},


    Primero de todo, muchas gracias por tu comentario, pues tengo los mismos problemas que tu (no soy muy experto con lo de programar en arduino, pero sin el archivo .ino, me es imposible modificar el firmware.

    Así que he seguido tu pasos, he modificado el configuration.h con el programa Sublime, pero me encallo en el programa con lo del programa MAKE.
    Sigo los pasos del link del "repositorio" que has puesto. Pero soy incapaz de compilar el archivo que he modificado, y nose si es porque la he liado con el make y instalar el arduion (aún siguiendo los pasos).

    Me seria de gran ayuda, si no es mucha molestia, que me explicaras los pasos que haces desde que se configura el archivo "configuration.h" (que ese ya lo tengo), para poder actualizar mi prusa.

    Muchas gracias!



  • Añado el esquema del circuito que he hecho añadiéndole el relé :



  • Hola.

    No se si funcionará porqué aún no lo he podido probar.
    Yo también estoy haciendo la instalació de la cama caliente y tengo que modificar el Marlin para activar las filas correspondientes.
    Al igual que vosotros, en todos los tutoriales que he encontrado de instalación siempre hablan del archivo .ino que nunca he visto.
    Viendo esto, lo que hice fué cambiar la extensión del archivo Marlin.h a Marlin.ino y el IDE de arduino la abre sin problemas y reconoce todas las librerias.
    Como he comentado aún no he probado a compilarlo porque estoy esperando la fuente de alimentación pero en breve lo haré.

    Saludos


  • MVP

    Sempre puedes editar con un editor tipo notepad++



  • Buenas!
    De esta página descargo la versión 2.5.1 Lo primero que se echa en falta es el archivo Marlin.ino
    A partir de ahí he visto que hay que crear el archivo .hex instalando make-3.81 y ejecutando make.cmd
    Hecho esto, después de muchos intentos me he encontrado estos errores a los que he encontrado solución.
    Cuando por fin parece que make.cmd funciona, se supone que debería crear un fichero .hex ¡¡¡Pero no sé donde lo guarda!!!!

    Error 1: (He instalado el Arduino 1.6.7 en la c:, el make-3.81 en la carpeta por defecto y uso la versión marlin 2.5.1 master de bq)
    make: *** No hay ninguna regla para construir el objetivo cleanall'.&nbsp; Alto.<br>make: *** No hay ninguna regla para construir el objetivohephestos'.  Alto.
    make: *** No se especificó ningún objetivo y no se encontró ningún makefile.  Alto.
    make: *** No hay ninguna regla para construir el objetivo upload'.&nbsp; Alto.<br>make: *** No hay ninguna regla para construir el objetivocleanall'.  Alto.

    Solución:
    Con Arduino 1.8.5 se cambia el path del make.cmd "C:\Arduino"por "C:\program files (x86)\Arduino" y de este modo no da error.

    Otros intentos y métodos:
    1- Con Arduino 1.0.6 salía el mismo problema.
    2- También he probado cambiando el marlin.h por marlin.ino y no compila bien.
    3- Otra opción sería crearlo desde la página de marlinbuilder o también desde la de repetier firmware pero yo no me aclaro la verdad.
    4- Otro error fue al compilar la versión 1.4.2 con Arduino 1.8.5 (Problema con la librería liquid crystal)

    Si alguien es tan amable de darme una solución porque ya no sé que más probar, tengo cama caliente y sensor inductivo. Con saber donde guarda el fichero .hex me conformo!
    Gracias.


  • MVP

    El make no se lleva muy bien con los path largos y con símbolos. Si puedes cambiar lo mismo que comentas por c:/Arduino/ y prueba



  • Gracias por la resupesta!
    Pero no, mismo error:
    make: *** No hay ninguna regla para construir el objetivo `cleanall'.  Alto. etc...
    (Ya lo había probado y esta vez con arduino 1.8.5 en c:\arduino y marlin en c:\marlin)
    Al final encontré un .hex ya compilado y otro error con el que me encontré al instalarlo es que no lee los archivos cgo. Los gcode sin embargo, si.
    A partir de la versión 1.4.2 cualquier actualización, para mí, es basura.
    No entiendo por qué cambiar el modo de compilar con lo fácil que era con el marlin.ino!!


  • MVP

    En el área de descargas se ha publicado nuevos firmwares ya compilados



  • Oscar3Dr dijo:

    Cuando por fin parece que make.cmd funciona, se supone que debería crear un fichero .hex ¡¡¡Pero no sé donde lo guarda!!!!

    Si alguien es tan amable de darme una solución porque ya no sé que más probar, tengo cama caliente y sensor inductivo. Con saber donde guarda el fichero .hex me conformo!
    Gracias.

    Dentro de la carpeta donde tengas descomprimido todo el software ves a \Marlin\bin y ahí está el .hex 

    Edito: tan solo aparece el fichero mientras estás cargándolo al Arduino, ten la carpeta abierta para copiar y pegar en cualquier otra ruta antes de que termine de compilarlo.