Mega 2560 no carga los sketch grandes... SOLUCIONADO

Buenas, llevo peleando varios dias con dos Arduino mega 2560, si les cargo los sketch de ejemplo o alguno de menos de 20 kb, no hay problema, los carga y funcionan correctamente, pero si intento cargar uno de 39kb ya no me deja y me da el siguiente error...

avrdude: stk500v2_ReceiveMessage(): timeout

He buscado muchas respuestas... Todas en ingles , y realizado todas las comprobaciones que explican y llego an entender, pero nada de nada... Sigue igual,
He probado en diferentes puertos usb, en mac, en windows, en varios pc diferentes, y siempre con el mismo resultado....

He leido que debe ser problema del bootloader, pero se me hace raro que dos arduinos mega, comprados en diferentes sitio, fallen de lo mismo....

Tengo un adaptador ftdi que uso para las arduino mini, se podria usar para intentar cargar las mega? Como?

Y hay algun tutorial en castellano para cargar de nuevo el bootloader, usando otro arduino, para no tener que desenbolsar mas euros?

Gracias de antemano y perdòn por la chapa...

Me gustaria probar algun sketch que ocupe mas de 50kb que alguien haya instalado con la ultima versiòn de arduino 1.0.1, ya que el que tengo yo, tiene librerias modificadas que en el arduino uno funcionan ,pero ya no se que pensar... Si alguien me lo pudiese mandar lo agradeceré eternamente :slight_smile:

si piensas que es por el tamaño, aunque a mi me extraña, porque no creas un programa grande y pruebas? aunque sea con código repetitivo y sin sentido, pero bien escrito.
puedes poner un Serial.println("asañldkfjasdkfjaskdj"); una y otra vez. y mas código de este tipo.
aunqe yo creo que el problema no es el tamaño del sketch sino de las librerias. puedes probar a ir añadiendo librerias a tu sketch hasta que falle.

Esa era la cuestión, pensé en principio que seria por el tamaño, porque cargo un código en un arduino uno y lo carga sin problema, pero en la mega no.
voy a crear algo muy grande y voy comentando el resultado...

gracias...

Bueno, pues acabo de hacer un sketch de 230kb con las librerías que uso en el que falla, y un montón de código repetido y lo carga sin problema, asi que será alguna linea de código que esta en el otro sketch que no es compatible con la MEGA pero si con la UNO...

ire comentando por bloques en el primer código para descartar lineas de código....

gracias.... comentare el resultado...

Ya esta solucionado.......
Por fin.... aunque no lo parezca, ya llevaba bastante tiempo con este problema....

En realidad era una tontería.....
en las siguientes lineas de código:

lcd.clear();
lcd.setCursor(1,0);
lcd.print("PREPARADO!!!!");

Después de ir comentando linea a linea , resulta que la Arduino MEGA no reconoce los símbolos " !!!!! " asi que al quitarlos funciona perfectamente....
Los he cambiado por puntos...

lcd.clear();
lcd.setCursor(1,0);
lcd.print("PREPARADO....");

Sufrifri ese mismo problema hace un añoño ybcasiasi me vuelvovo loco

Muuuuuchas gracias!!!! ke peso me habéis quitado de encima, m estaba volviendo loco :slight_smile:

Sí, la secuencia de bytes que representan "!!!" (no sé si son 2 o 3) tienen un significado especial en el mecanismo de transmisión serie y cuando durante la transferencia del programa intentan pasar esos 3 "!" la otra parte en la linea serie lo interpreta como alguna "secuencia escape" especial.