This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
CONSULTA Ender 3
#1
Buenas tengo una ender 3 y se ha muerto la placa quiero meterle una mks gen l v1. 0 pero al intentar meterle marlin 2.0 no me deja me han dicho que igual no coge en la memoria.
Esl puede ser?
  Responder
#2
La mks gen l tiene 256k de memoria, comprueba que en el Arduino ide tienes seleccionado mega2560 como placa.
Eso debería de bastar para cualquier tipo de configuración de Marlin
  Responder
#3
Md sale unl de los errores es que hay multitud de librerías u8glib y no entiendo que es y otra pregunta por si me puedes ayudar como ñuedo resetar la eeprom y dejarla a cero?
Gracias y un saludo
  Responder
#4
Buenas tardes Vicente, y Feliz Navidad y prospero Año Nuevo!

Para borrar la EEPROM de la placa Arduino Mega 2560 o cualquier controlador con el chip Mega 2560 como es la MKS Gen L, solo debes abrir el EJEMPLO de "eeprom_clear" en la interfaz de Arduino y programarla. Por si un caso no la encuentras te la dejo aquí:



/*
 * EEPROM Clear
 *
 * Sets all of the bytes of the EEPROM to 0.
 * Please see eeprom_iteration for a more in depth
 * look at how to traverse the EEPROM.
 *
 * This example code is in the public domain.
 */

#include <EEPROM.h>

void setup() {
  // initialize the LED pin as an output.
  pinMode(13, OUTPUT);
  
  /***
    Iterate through each byte of the EEPROM storage.

    Larger AVR processors have larger EEPROM sizes, E.g:
    - Arduno Duemilanove: 512b EEPROM storage.
    - Arduino Uno:        1kb EEPROM storage.
    - Arduino Mega:       4kb EEPROM storage.

    Rather than hard-coding the length, you should use the pre-provided length function.
    This will make your code portable to all AVR processors.
  ***/

  for (int i = 0 ; i < EEPROM.length() ; i++) {
    EEPROM.write(i, 0);
  }

  // turn the LED on when we're done
  digitalWrite(13, HIGH);
}

void loop() {
  /** Empty loop. **/
}


RECUERDA DESPUÉS DE HABERLA SUBIDO CORRECTAMENTE, ESPERA 10 SEGUNDOS COMO MÍNIMO ANTES DE CARGARLE DE NUEVO EL FIRMWARE O CUALQUIER OTRO CÓDIGO

Y respecto al error... Marlin 2.0 Alpha puede ser programado sin ningún tipo de problema en cualquier placa con Chip Mega 2560, quedando la memoria al 98%, todas las placas tienen 256Kb de ROM de los cuales solo puedes utilizar 248Kb. Así que revisa bien la placa seleccionada como dice el compañero "norwix" y asegúrate de no haberte pasado activando características en Marlin
  Responder
#5
Cita:Y respecto al error... Marlin 2.0 Alpha puede ser programado sin ningún tipo de problema en cualquier placa con Chip Mega 2560, quedando la memoria al 98%, todas las placas tienen 256Kb de ROM de los cuales solo puedes utilizar 248Kb. Así que revisa bien la placa seleccionada como dice el compañero "norwix" y asegúrate de no haberte pasado activando características en Marlin

Te funciona bien cargando la memoria al 98%? En teoría esto no se debe hacer según los principios básicos de Arduino. Fíjate bien en el mensaje que te dice lo del 98%, te informa de esto para que sepas cuánta memoria te queda libre para variables locales.

Arduino IDE Al compilar un programa te avisa de la cantidad de memoria que ocupa. Aquí se suman varias cosas como el propio código y el tamaño de las variables globales entre otras. Pero no es capaz de calcular todas las instancias que se van a crear con sus variables locales, y por eso te informa del espacio que queda libre para estas, por si lo quieres calcular tú.

Al cargar la memoria tanto, lo más probable es que al ejecutarse el código y empezar a llamar a funciones y crear instancias, ésta se desborde y pierda información, generando fallos de los que el propio Arduino no se da cuenta. Dependiendo a qué parte de el programa afecten, puede que ni te enteres o puede que se vuelva loca la impresora (no serías el primero que conozco).



Mejor que pongas Marlin 1.1.9, a no ser que necesites alguna función nueva de Marlin 2, y yo al menos no conozco ninguna útil.



En cuanto a la eeprom, dado que tiene un número limitado de escrituras (varios miles), no conviene andar jugando con ella, ni usarla para almacenar valores de prueba, es para lo que es.
  Responder