Hallo,
hat hier schonmal jemand erfolgreich avrdude (win32) zum kommunizieren
mit dem USBasp bewegt?
Hab hier eine compilierte Version von avrdude, die allerdings nicht
funktioniert. (usbasp_transmit: error sending control message: .. beim
schreiben)
Vielleicht kann mir ja jemand ein paar Tipps geben, bzw. mal einen
funktionierenden avrdude als Anhang hochladen.
Ich habe mir das Programmiergerät auf Lochrasterplatine aufgebaut.
Mit der neuesten Firmware (usbasp.2006-09-16) und avrdude 5.2 bekam ich
immer eine Fehlermeldung und konnte den AVR nicht beschreiben (genaue
Meldung weiss ich leider nicht mehr).
Löschen, Reset und Terminal-Mode gingen aber.
Unter Linux hatte ich das gleiche Phänomen.
Dann probierte ich die Vorgängerversion (usbasp.2005-11-14) aus, mit der
ging alles einwandfrei. Sowohl mit WinXP als auch Linux.
Ich fragte beim Autor (fischl.de) an, der wußte aber auch nicht weiter.
Hast Du die neueste Version (5.2) von avrdude? Die hab ich vor einiger
Zeit noch nicht als kompilierte Version gefunden, deshalb dann selber
kompiliert.
Wenn ich dran denke, lade ich sie heute Abend hoch. Oder Du gibst mir
Deine eMail-Adresse.
Dann hab ich mir ein zweites Gerät aufgebaut, genau gleiches Verhalten.
Also hab auch die ältere Firmware drauf.
Bei diesem Gerät habe ich aber das Problem, dass das Schreiben des Flash
sehr lange dauert (ca. 1 Minute im Gegensatz einige Sekunden beim
Anderen).
Woran das liegt, hab ich auch noch nicht rausgefunden ...
Ungünstiger Aufbau der Schaltung? Hatten den AVR schon getauscht,
Signale vom Quarz angeschaut, war aber auch nicht die Ursache.
Gruß,
Anton
Danke für deine Antwort!
Also das mit der älteren Version war wirklich ein guter Tipp!
Hab einfach den alten Treiber installiert und die avrdude Version
genommen die mit im tar-file war. Scheint alles zu funktionieren.
Hab testweise mal nen ATmega644 gelesen und wieder beschrieben. Geht
auch ziemlich flott (16s)
Nutzt du direkt die 5V vom USB als Betriebsspannung für usbasp?
Hatte zeitweise auch mal das Problem das dass Gerät manchmal nicht
erkannt wird. Keine Ahnung obs dann an den Quarz liegt der nicht
anschwingen will ..
Jetzt gehts sehr stabil ...
Wie gross hast du die Kondensatoren für den Quarz gewählt?
Ich verwende die 5V vom USB als Betriebsspannung.
Ich habe je einen 22pF Kondensator am Quarz.
Folgende Fehlermeldung kam, wenn ich die neuesten Firmware drauf hatte:
avrdude: Device signature = 0x1e9502
avrdude: safemode: lfuse reads as 3F
avrdude: safemode: hfuse reads as C9
avrdude: erasing chip
avrdude: reading input file "main.hex"
avrdude: input file main.hex auto detected as Intel Hex
avrdude: writing flash (8264 bytes):
Writing | | 0% 0.00s
avrdude: error: usbasp_transmit: error sending control message:
Connection timed out
Wenn Du das gleiche Problem hast, könntest Du dem Thomas Fischl ja mal
schreiben. Adresse findest Du auf seiner Seite.
Er sagte mir nämlich, daß außer mir noch nie jemand dieses Phänomen
hatte.
Das das Gerät nicht erkannt hatte, hatte ich übrigens noch nie.
Im Anhang ist die neueste avrdude-Version.
Hab die neuste avrdude-Version mal ausprobiert. Funktioniert nur mit der
älteren Firmware. Die neue Firmware bringt mir auch den Fehler.In nem
andren Forum scheint auch jemand dasselbe Problem zu haben:
http://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=24318
Werds mal mailen.
Danke nochmal!
Hallo,
ich versuche zur Zeit den USBasp mit der firmware 2006-12-29 und AVRDUDE
5.4 und 5.3.1 - WIN32 zum Laufen zu bekommen. AVRDUDE meckert, daß die
Signatur vom Target (ein ATMEL32) nicht stimmen würde. Ich weiß keinen
Rat mehr.
Hat jemand eine erprobte ARVDUDE.CONF (für Windows) Version 5.4 oder
5.3.1 für mich .... von der man weiß, daß sie funktioniert ? Ich denke
es muß was mit der Konfigurationsdatei zu tun haben.
Ich wäre Euch dankbar.
Einer der Unterschiede zwischen der alten und der neuen Version ist,
dass des Pointer der auf die zu beschreibende Adresse im Flash zeigt
nicht mehr nur 8bit gross ist, dondern 9 oder 10 (weiss nicht genau).
Daher kann man mit der neueren Version auch AVRs mit mehr als 64k Flash
beschreiben (z.B. atmega128).
Das heisst, dass Ihr nicht nur die neue Firmware sondern auch die
neueren Treiber für den PC nemen müsst. Ich empfehle euch alle alten
Dateien zu suchen und zu entfernen, und danach durch neuere ersetzten.
P.S. BurnOMat ist eine super GUI für AVRDude
http://avr8-burn-o-mat.aaabbb.de/
Jörg Wunsch wrote:
> Kannst du nicht mal die Meldungen von avrdude copy&pasten?
Die Meldung sieht dann so aus :
----> schnipp <---------
C:\afu\avrdude_5_4>avrdude -P usb -c usbasp -p m32
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100%
0.02s
avrdude: Device signature = 0x000102
avrdude: Expected signature for ATMEGA32 is 1E 95 02
Double check chip, or use -F to override this check.
avrdude done. Thank you.
------> schnapp <--------
Kann das an der Firmware liegen oder ist es mehr ein AVRDUDE Problem ?
Gibt es Erfahrungen ?
firmware 2006-12-29 und AVRDUDE
5.4 und 5.3.1 - WIN32
TestLib USB :
DLL version: 0.1.12.1
Driver version: 0.1.12.1
Frank Ulbrich wrote:
> avrdude: Device signature = 0x000102
Das ist das Echo, was du da siehst. Kann es sein, dass die ISP-Frequenz
des USBasp zu hoch ist für deinen AVR?
>> Das ist das Echo, was du da siehst. Kann es sein, dass die ISP-Frequenz> des USBasp zu hoch ist für deinen AVR?
Hmm, das Target ist mit einem 12MHz Quarz bestückt und der USBasp
ebenfalls.
Es ist wohl auf dem Brenner keine Brücke zum Runtertakten vorgesehen.
Komischerweise fällt mir nun auf, daß der erste Versuch das Target
anzusprechen (nach dem Spannung angelegt ist) funktioniert, die weiteren
Male kommt dann die Fehlermeldung mit der falschen Signatur.
Wenn ich dann die Spannung am Target abklemme und wieder anklemme,
tritt das gleiche Verhalten auf... zuerst geht es, dann nicht mehr...
falsche Signatur. Testweise habe ich auf dem USBasp mal eine firmware
von 2005 gebrannt.... gleicher Effekt.
> die weiteren> Male kommt dann die Fehlermeldung mit der falschen Signatur.
Hmm, das klingt mir so, als würde der Reset nicht funktionieren.
Würde sich lohnen, da mal einen Oszi dranzuklemmen und sich das
anzusehen.
Vielleicht fragst du ja mal Thomas Fischl selbst?
Jörg Wunsch wrote:
.
> Würde sich lohnen, da mal einen Oszi dranzuklemmen und sich das> anzusehen.>
Danke für den Tip, ich werde die Resetleitung mal untersuchen.
73
Frank / DO2FU
Hallo!
Unter Beitrag "USBasp win32 avrdude" beschreibst du ein
Problem mit einem Atmel AVr, das ich jetzt auch habe.
Wenn ich meinem Atmega8 Spannung gebe, kann ich ihn mit avrdude
ansprechen, aber sobald ich versuche, was auf den AVR zu schreiben (egal
ob Fuses oder Flash) wird er nicht mehr erkannt, bis ich die Spannung
trenne und wieder neu anstecke.
Hast du damals eine Lösung für das Problem gefunden?
Ich habe bereits 2 verschiedene Schaltungen probiert (die beide schon
mal funktioniert haben), 2 verschiedene Programmer (usbasp und stk200)
und 2 verschiedene avrdude versionen.
Kann das am Atmega selbst liegen?
Meine Fuses sind 0xd9 und 0xff, externer Quartz mit 11,0925 MHz.
Gruß und vielen Dank,
Markus
Hallo zusammen,
habe nun das gleiche Problem:
Beim ersten mal kann ich das Target ansprechen, beim nächsten Versuch
nicht mehr. Trenne ich USBasp vom USB-Port gehts wieder - aber nur
einmal.
************************************************************************
***
C:\WinAVR\bin>avrdude -p t84 -c usbasp
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100%
0.02s
avrdude: Device signature = 0x1e930c
avrdude: safemode: Fuses OK
avrdude done. Thank you.
C:\WinAVR\bin>avrdude -p t84 -c usbasp
avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
************************************************************************
***
Kann mir jemand da mal einen Tip geben.
Danke & Gruß
Jürgen
im avrdude Aufruf geholfen, auch wenn es bei dir wahrscheinlich nicht
daran gelegen hat.
Es könnte sein, dass deine Versorgungsspannung einbricht: Größeren Elko,
Stützkondensator.
Beim debugen von avrdude hilft ein
1
-vvv
.
Und ja, ich weiß, dass es Leichenschändung ist ;)
Hallo zusammen
Ich hatte exakt das gleiche Problem.
Ich hatte den Reset "kurzgeschlossen", also permanent auf Masse, dann
hatte ich exakt dieses Verhalten erhalten:
- Beim ersten mal klappt alles
- Beim zweiten Mal habe ich "avrdude: Device signature = 0x000102"
erhalten, oder 0x000000
Also alle die das Problem haben: prüft mal den Pegel am Reset, ggf. habt
ihr ja das gleiche Problem.
mfg Andreas
Andreas B. schrieb:> - Beim zweiten Mal habe ich "avrdude: Device signature = 0x000102"> erhalten, oder 0x000000
Ja, klar. Das /RESET ist eine Art chip select für den ISP-Algorithmus,
es dient der Synchronisation des SPI-Protokolls. Wenn man das
permanent auf low hat, dann kann es sein, dass sich der Algorithmus
"nicht findet".