Go Down

Topic: GELÖST: Arduino Mega - Upload Problem via Bootloader (Read 1 time) previous topic - next topic

erni-berni

Jan 08, 2013, 06:56 pm Last Edit: Mar 10, 2013, 07:28 pm by erni-berni Reason: 1
Hallo,
seit gestern kann ich auf meinen Mega über USB keinen Sketch mehr hochladen. Beim upload meldet die IDE
Code: [Select]
avrdude: stk500v2_ReceiveMessage(): timeout.
Der Mega wird auch an USB erkannt und über den seriellen Monitor empfange ich auch Daten.
Der Upload mit einem Programmer (mySmartUSB) über die ISP Schnittstelle funktioniert. Über den Programmer habe ich dann den Bootloader neu aufgespielt - leider keine Änderung.  Die Fuse Settings entsprechen denen in boards.txt.
Ein UNO am gleichen Kabel lässt sich über USB problemlos flashen.
Am Betriebssystem liegt es auch nicht, gleicher Fehler in Ubuntu und Win7.

Jetzt weiß ich nicht mehr, was ich noch testen könnte.
Wer kann helfen?
Gruß
Reinhard

uwefed

Hast Du an Pins 0 und 1 etwas angeschlossen? Hast Du ein Shield draufgesteckt?
Grüße Uwe

erni-berni

Hallo Uwe,
bei den letzten Tests war alles entfernt, was nicht zum Board gehört.
Leider gleiches Ergebnis.
Vielleicht ist noch zu ergänzen, dass das Board am Anfang des Uploads auch den notwendigen Reset bekommt, der normal den Bootloader aktiviert.
Hier nochmal die Fehlermeldung im Detail, man sieht, dass zumindest ein CR,LF vom Board kommt.
Code: [Select]
reinhard@reinhard-Predator-G3600:~$ avrdude -v -v -v -v -patmega2560 -cstk500v2 -P/dev/ttyACM0

avrdude: Version 5.11.1, compiled on Oct 30 2011 at 10:41:10
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "/etc/avrdude.conf"
         User configuration file is "/home/reinhard/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/ttyACM0
         Using Programmer              : stk500v2
avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14]
avrdude: Recv: * [2a]
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14]
avrdude: Recv: . [0d]
avrdude: Recv: . [0a]
avrdude: Recv: * [2a]
avrdude: stk500v2_ReceiveMessage(): timeout
....

und so gehts dann endlos weiter.
Gruß
Reinhard

erni-berni

Ich hab jetzt nochmal den Bootloader neu aufgespielt und dabei das Debug laufen lassen. Im letzten Schritt wird ja das Flash nochmal ausgelesen und verglichen. Wieder keine Fehlermeldung. Das was da ausgegeben wird, habe ich dann mal versucht mit dem hex-file des Bootloaders zu vergleichen. Das scheint aber so nicht möglich zu sein. Kann man (wenn man das Lock Byte zurücksetzt) den Bootloader als hex-file auslesen und mit dem Orginal vergleichen?

Außerdem ist mir aufgefallen, dass nach dem aufspielen des Bootloaders (das dahinter liegende Programm wird dabei ja auch gelöscht) die LED13 nicht blinkt. Sollte die nicht blinken, oder gilt das nur für den Auslieferzustand, weil da ein Blink Sketch dann drauf ist?

Liegt der Bootloader eigentlich ganz hinten, also am Schluß, im Flash? Am Anfang werden nämlich nur FF gelesen.

erni-berni


Liegt der Bootloader eigentlich ganz hinten, also am Schluß, im Flash? Am Anfang werden nämlich nur FF gelesen.

Ich beantworte mir die Frage mal selber - ja er liegt am Ende des Flashs.

Zusätzliche Erkenntnisse: Der Bootloader sollte die LED an PIN13 einmal blinken lassen - tut er aber nicht.
Das festigt bei mir immer mehr die Vermutung, dass der Bootloader gar nicht angesprungen wird.
Aber warum?

Gibt es eine Möglichkeit mit einem Programm auszulesen, wohin der RESET Vector zeigt? Die Einsprungadresse für den Bootloader müsste E000 sein.
Gibt es eine Möglichkeit mit einem Programm den Speicherbereich ab E000 auszulesen, um zu checken, ob da wirklich ein Bootloader liegt?

erni-berni

Das Problem bestand darin, dass das Lockbit nicht korrekt gesetzt wurde (von der IDE und avrdude ??)
Lösung im Detail -> http://arduino.cc/forum/index.php/topic,153402.msg1150787.html#msg1150787

Chris72622

Es gibt Leute, die auch bei solchen Threads mitlesen. ;)

Danke fürs posten der Lösung.

Gruß Chris
Suche PoE Modul für Ethernet Shield

Go Up