Forum: Mikrocontroller und Digitale Elektronik AvrDude Problem Atmega32


von Carsten H. (casio)


Lesenswert?

Hallo!

Hab mich hier angemeldet, weil ich trotz Suche keine Lösung für mein 
Problem gefunden habe und hoffe, dass man mir hier vielleicht weiter 
helfen kann.

Hardware ist ein Testboard mit Atmega32 und so ein 
Usb->serial->Isp-Programmer. OS ist WinXP. Kann den uC über WinAvr und 
AvrStudio flashen (mit STK500, Com2).

Wollte jetzt aber mal Eclipse bzw. nur WinAvr ausprobieren, kann aber 
nicht mit AvrDude bespielen. Dann kommt folgende Fehlermeldung:



Launching C:\WinAVR-20100110\bin\avrdude -pm32 -cstk500v2 -Pcom2 
-Uflash:w:Testboard.hex:a
Output:

avrdude: AVR device initialized and ready to accept instructions

Reading | avrdude: stk500v2_command(): command failed
avrdude: stk500v2_cmd(): failed to send command
avrdude: stk500v2_command(): command failed
avrdude: stk500v2_cmd(): failed to send command
################avrdude: stk500v2_command(): command failed
avrdude: stk500v2_cmd(): failed to send command
################################## | 100% 0.05s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

avrdude finished



Da es ja mit AvrStudio geklappt hat, vermute ich mal, dass ich 
irgendwelche Einstellungen nicht richtig gesetzt habe.

Gruß
Carsten

von Johannes K. (johngun) Benutzerseite


Lesenswert?

Sieht nachem Kommunikationsproblem aus.

Avrdude ist kein Windowsprogramm

Also mal nachschauen ob die Parameter wie Baudrate und Bitsystax für die 
Com2 richtig eingestellt sind.

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Kann eine USB Treibergeschichte sein. AVR-Studio hat sog. Jungo USB 
Treiber, AVRDUDE mag die Libusb Treiber.

Bevor du da etwas umstellst, informiere dich im eigenen Interesse über 
Windows Systemsicherung und Wiederherstellungspunkte. Man kann mit USB 
Treiberinstallationen schnell etwas verfummeln.

Never change a running system.

von Jens (Gast)


Lesenswert?

> Launching C:\WinAVR-20100110\bin\avrdude -pm32 -cstk500v2 -Pcom2
> -Uflash:w:Testboard.hex:a

avrdude -p m32 -c stk500v2 -P COM2 -b 115200 -e -U 
flash:w:"C:\Testboard.hex":a

von usuru (Gast)


Lesenswert?

> avrdude -p m32 -c stk500v2 -P COM2 -b 115200 -e -U
> flash:w:"C:\Testboard.hex":a

Die Leerzeichen nach -p und -c müssen nicht sein, geht auch, wenn der 
parameter direkt dran hängt. Der Dateiname MUSS in """", wenn da 
Pfadangaben drin sind, nur ohne Pfadangaben - d.h. wenn die hex-Datei im 
gleichen Pfad wie avrdude - kann man die weglassen.

libusb eingespielt???

von Carsten H. (casio)


Lesenswert?

Die Baudrate hatte ich vorher schon mal verändert und jetzt mal die hier 
vorgeschlagenden Einstellungen probiert, alles ohne Erfolg.

usblib habe ich nicht installiert. Ist das notwendig und nicht 
"gefährlich"? Wollt mein WinXP nicht abschießen. Ist gerade erst neu 
installiert.

Hätte zwar gern direkt aus eclipse überspielt, aber werd das dann erst 
mal mit AvrStudio machen. Das funkioniert ja ganz gut.

Trotzdem danke...
Gruß
Carsten

von bingo (Gast)


Lesenswert?

für den Parallelport brauchst Du giveio und für den USB-Port brauchst Du 
libusb, um auf den Programmer zugreifen zu können.

von Carsten H. (casio)


Lesenswert?

Hab es eben auf meinem Firmenlaptop ausprobiert. Da funktioniert es. 
Zumindest mit WinAvr. Auch WinXP S3. Allerdings wird ein älterer FTDI 
Treiber (1.0.2176.0 anstatt 2.8.2.0, sind das libusb-Treiber? Kenn mich 
da nicht mit aus.) verwendet und eine ältere WinAvr-Version (2007 
anstatt 2010) und somit vermutlich andere avrdude-version.

Bei meinem Homelaptop hab ich Port manuell von com5 auf com2 gestellt, 
weil ich dachte das com5 vielleicht das Problem ist. Macht das einen 
Unterschied?

Nachtrag: Allerdings funktioniert com2 ja mit avrstudio

von Carsten H. (casio)


Lesenswert?

So, hab's jetzt auch auf meinem HomeLaptop am laufen indem ich ein -F 
eingefügt habe um den "Yikes!  Invalid device signature" - Test zu 
umgehen. Wie er mir ja auch (siehe oben) vorgeschlagen hat. Jetzt kommen 
zwar noch "command failed" Meldungen aber das hex-File ist drauf...

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Das ist ein Wunder! Ich hätte keine 2 Cent darauf gewettet.

Das Programm läuft auch? Nicht dass dich der Fortschrittsbalken von 
Avrdude gefoppt hat. Der FSB kommt auch, wenn Avrdude nur versucht, 
etwas zu übertragen. Erst ein Funktionstest bzw. ein Verify mit Avrdude 
(=Vergleich AVR Inhalt mit Hexdatei) schaffen Klarheit.

von Martin e. C. (eduardo)


Lesenswert?

hier mein Beitrag zum Libusb!

es gab Probleme mit Libusb ABER unter Windows Vista (USB zerstören 
usw.), ich habe viel damit Probiert ( ich benutze AVRDUDE + Notepad ) 
und seit Libusb 1.1.14.0 - 2010-06-01 nicht mehr. Jetzt gibt in zwischen 
Version 1.2.2.0 - 2010-10-02 die noch viel besser ist.
Ich habe die Version 1.2.1.0 - 2010-07-29 unter Windows 7 64 Bit am 
laufen, funktioniert Fehlerfrei.

WinAVR solltest du auf alle Fälle die letzte Version nehmen da ist 
AVRDUDE in seine letzte Version (V. 5.10).

Gruß
Martin

von Thomas F. (tza)


Lesenswert?

Ich häng mich hier einfach mal mit dran, da das das erste Mal ist dass 
ich jemanden gefunden habe der sagt avrdude läuft bei ihm unter Win7 
_64_bit in Verbindung mit libusb.
 Ich habe es inzwischen hinbekommen dass der Programmer bei mir als 
libusb-win32-device im Gerätemanager ohne Ausrufezeichen etc auftaucht. 
Das geht mit den aktuellen Binaries von libusb-win32 Version 1.2.2.0 mit 
Signatur und unter Verwendung des Inf-Generators. Die mit WinAVR 
mitgelieferte Version ist noch nicht signiert und deswegen unter x64 
unbrauchbar.
 Jedoch schaff ich es nicht dass avrdude den Programmer auch sieht:
1
C:\Users\Thomas>avrdude -c avrisp2 -p t44 -v -P usb:xx
2
3
avrdude: Version 5.10, compiled on Jan 19 2010 at 10:45:23
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5
         Copyright (c) 2007-2009 Joerg Wunsch
6
7
         System wide configuration file is "C:\devtools\WinAVR-20100110\bin\avrd
8
ude.conf"
9
10
         Using Port                    : usb:xx
11
         Using Programmer              : avrisp2
12
avrdude: usbdev_open(): did not find any (matching) USB device "usb:xx"
bzw
1
C:\Users\Thomas>avrdude -c avrisp2 -p t44 -v -P usb
2
3
avrdude: Version 5.10, compiled on Jan 19 2010 at 10:45:23
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5
         Copyright (c) 2007-2009 Joerg Wunsch
6
7
         System wide configuration file is "C:\devtools\WinAVR-20100110\bin\avrd
8
ude.conf"
9
10
         Using Port                    : usb
11
         Using Programmer              : avrisp2
12
avrdude: usbdev_open(): did not find any USB device "usb"

Wie hast du das hinbekommen, welche Parameter übergibst du avrdude?

 Beim Programmer handelt es sich um einen usbprog V3, der (bei passend 
gesetztem Jumper) vom Flashtool auch als solcher erkannt wird, d. h. die 
libusb ansich läuft wohl.

von Martin e. C. (eduardo)


Lesenswert?

Hallo Thomas,

ganz einfach bwz. ich habe im folgende Reihenfolge alles installiert:

WinAVR dann AVRStudio (mit Jungo Treiber) und danach LibUSB-Win32 dann 
Enable filter und das warst.

libusb-win32-device taucht bei mir nicht im Gerätemanager bzw. soll 
nicht erscheinen wenn mann der "Jungo treiber" für den AVRISPmkII wählt.

ÜBRIGENS genau so funktioniert der STK600 und der Dragon (unter Win7 64 
+ AVRDUDE)!

Gruß
Martin

von Thomas F. (tza)


Lesenswert?

Danke für deine Antwort. So komme ich zumindest mal ein bisschen weiter, 
avrdude merkt jetzt schonmal dass der Programmer vorhanden ist:
1
C:\Users\Thomas>avrdude -c avrisp2 -p t44 -P usb:xx -v -t
2
3
avrdude: Version 5.10, compiled on Jan 19 2010 at 10:45:23
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5
         Copyright (c) 2007-2009 Joerg Wunsch
6
7
         System wide configuration file is "C:\devtools\WinAVR-20100110\bin\avrd
8
ude.conf"
9
10
         Using Port                    : usb:xx
11
         Using Programmer              : avrisp2
12
avrdude: usbdev_open(): Found AVRISP mk2 Clone, serno: 0000A00128255
13
avrdude: usbdev_open(): did not find any (matching) USB device "usb:xx"
Wenn ich jetzt allerdings versuche darauf zuzugreifen gibt es eine 
Fehlermeldung
1
C:\Users\Thomas>avrdude -c avrisp2 -p t44 -P usb:82:55 -v -t
2
3
avrdude: Version 5.10, compiled on Jan 19 2010 at 10:45:23
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5
         Copyright (c) 2007-2009 Joerg Wunsch
6
7
         System wide configuration file is "C:\devtools\WinAVR-20100110\bin\avrd
8
ude.conf"
9
10
         Using Port                    : usb:82:55
11
         Using Programmer              : avrisp2
12
avrdude: usbdev_open(): Found AVRISP mk2 Clone, serno: 0000A00128255
13
avrdude: usbdev_open(): error setting configuration 1: libusb0-dll:err [set_conf
14
iguration] could not set config 1: win error: Falscher Parameter.
15
16
avrdude: usbdev_open(): did not find any (matching) USB device "usb:8255"
Damit stürzt dann aber auch der Filter-Treiber anscheinend ab, zumindest 
sieht avrdude den Programmer erst wieder, wenn ich den Filter 
deaktiviere und wieder aktiviere. Das gleiche passiert auch wenn ich 
anstatt von usb:82:55 einfach nur -P usb schreibe (was ja laut 
avrdude-Dokumentation dazu führt dass er einfach den ersten Programmer 
nimmt den er findet). Hat hier jemand eine Idee was da schiefläuft?

Außer wenn der Filtertreiber abgestürzt ist lässt sich der Programmer 
übrigens die ganze Zeit problemlos aus von AVRstudio aus ansteuern, nur 
würde ich wesentlich lieber avrdude verwenden.

von Martin e. C. (eduardo)


Angehängte Dateien:

Lesenswert?

hmm... die Sache ist dass ich AVRDUDE von Notepad aus benutze und die 
Einstellungen sind im Makefile, da brauche ich kein:

> usb:82:55

oder sowas eingeben, im meine Makefile steht:

AVRDUDE_PROGRAMMER = avrispmkII
AVRDUDE_PORT = usb

und wenn ich flashe (über Program im Notepad) dann sieht wie im Bild 
aus.

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
Noch kein Account? Hier anmelden.