avrdude und usbasp: error: wrong reading bytes b8

OP #761598
Hallo,

nachdem ich meine ersten Erfahrungen mit dem Atmega mit einem 
Evaluations-Board von Pollin gemacht habe, habe ich mir nun einen
USBasp-Programmer und ein Atmega128-Modul besorgt. Ich habe damit aber
ein paar Probleme.
Ich benutze avrdude unter Linux. Der USBasp ist USB-Powered, das
Atmega-Modul auch, es wird nur über den ISP versorgt. Es ist sonst 
nichts
angeschlossen.
Das erste Problem ist, dass der Atmega manchmal nicht richtig erkannt 
wird:
1
avrdude: Device signature = 0x000102
2
avrdude: Expected signature for ATMEGA128 is 1E 97 02
Wenn ich am Programmer den Dip-Switch auf "Slow SCK" setze, dann tritt
das Problem nicht mehr auf.
Ich habe bis jetzt nur die Fuses für den externen Quarz gesetzt und
Atmega103 Kompatibilitäts-Modus ausgeschaltet. Ich habe noch nichts ins
Flash geschrieben.
Ich habe testweise versucht das Flash auszulesen, auch wenn noch nichts
vernünftiges drinsteht. Dabei bekomme ich die Fehlermeldung im Betreff:
1
avrdude: error: wrong reading bytes b8
und zwar ohne "Slow SCK" sehr früh und mit der Einstellung sehr spät, 
danach bleibt dann auch die rote LED an.
Man dauert das immer lange.
Ich habe herausgefunden, dass die Fehlermeldung von avrdude in der 
Funktion usbasp_paged_load ausgegeben wird, wenn der Aufruf von 
usbasp_transmit nicht die richtige Anzahl von Bytes übertragen hat.
Interessant ist, dass die Zahl immer 0xb8 also 184 ist.
Das Problem tritt sowohl mit avrdude 5.4 als auch mit der Version 5.5 
auf.
Die Version der Firmware des USBasp kenne ich leider nicht, kann man die 
irgendwie abfragen. Ich wollte Geld sparen und habe mir den USBasp in 
Thailand bestellt, bitte nicht gleich hauen.
Die Geschichte ist zwar schon irre lang geworden, aber ich fasse 
trotzdem
noch mal zusammen. Es scheint grundsätzlich alles zu funktionieren, aber
es ist sehr instabil.
Wie kann ich das Problem eingrenzen? Was kann ich tun?

Gerald
OP #761825
Danke für die schnelle Antwort.

Jörg Wunsch wrote:
> Die falschen signature bytes sind eindeutig Übertaktung.

Was wird übertaktet, vermutlich das Target, doch nicht der Programmer,
oder? Der Atmega128 läuft auf 16MHz und CKOPT habe ich gesetzt.

> Ansonsten würde ich dir empfehlen, dich auf die avrdude-dev Liste
> (at nongnu.org) einzutragen, dort liest auch Thomas Fischl mit und
> repariert für gewöhnlich die aufgetretenen Bugs mit seinen Teilen
> auch.

Gut, ich werde meine Frage dort nochmal posten.

Gerald
Moderator Persönliche Seite #761844
Gerald Dachs wrote:

> Was wird übertaktet, vermutlich das Target, doch nicht der Programmer,
> oder? Der Atmega128 läuft auf 16MHz und CKOPT habe ich gesetzt.

Ja, das Target.  Für 16 MHz allerdings verwunderlich, da ich nicht
annehme, dass das USBasp wirklich 4 MHz SPI-Takt erreicht.
OP #763843
Nur für den Fall das mal jemand über diesen Thread stolpert.
Ich konnte mein Problem lösen mit einer älteren Firmware vom
29.12.2006. Alle jüngeren Versionen waren instabil, je jünger
desto schlimmer.

Gerald

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.