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!
Die ganze neue geht bei mir auch!! also 29.12.06 oder so..hatte mitlerweiel das andere Forum auch gefunden ;)
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
Hallo Jürgen, bei mir hat ein
1 | -P usb |
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".
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.