Probleme mit Avrdude

Gast #657294
Lesenswert?

Guten Tag,

ich versuche mit Avrdude eine Hex Datei auf einen Mega16 zu übertragen.
Das Stk500 hängt an der Seriellen Schnittstelle ist eingeschalten und 
mit dem Rechner verbunden. Die Version des dudes ist 5.0-1. Ich nutzte 
Ubuntu 6.06.
1
/Avr# avrdude -p m16 -c stk500 -e -U flash:w:main.hex
liefert
1
avrdude: stk500_recv(): programmer is not responding
und
1
/Avr# avrdude -p m16 -c stk500v2 -e -U flash:w:main.hex
bringt time out
1
avrdude: stk500_2_ReceiveMessage(): timeout
2
avrdude: stk500_2_ReceiveMessage(): timeout
3
avrdude: stk500_2_ReceiveMessage(): timeout

In der Kurzanleitung für Avrdude im Tutorial steht das ein Hardware-Link 
eingerichtet werden muss. Wie muss ich diese Zeilen
1
mknod /dev/parport0 c 99 0
2
chmod a+rw /dev/parport0
abändern? bzw. was könnte ich sonst noch falsch machen?
Gast #657397
Lesenswert?

Firmware ist jetzt stand 2.04. Es ändert sich aber nicht an dem Fehler

mit -vvvv:
1
ruebe@ruebe-desktop:~$ avrdude -p m16 -c stk500v2 -e -vvvv -U flash:w:main.hex
2

3
avrdude: Version 5.0
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5

6
         System wide configuration file is "/etc/avrdude.conf"
7
         User configuration file is "/home/ruebe/.avrduderc"
8
         User configuration file does not exist or is not a regular file, skipping
9

10
         Using Port            : /dev/ttyS0
11
         Using Programmer      : stk500v2
12
avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14]
13
avrdude: ser_recv(): programmer is not responding
14
avrdude: stk500_2_ReceiveMessage(): timeout
15
avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14]
16
avrdude: ser_recv(): programmer is not responding
17
avrdude: stk500_2_ReceiveMessage(): timeout
Gast #657466
Lesenswert?

Ich hab die Pins Kurzgeschlossen, es ändert sich aber nichts an der 
Ausgabe.
Glaube mittlerweile das es an der seriellen Schnittstelle liegt.
/ttyS0 stimmt meiner Meinung nach da ich nur eine hab. Ich Versuch mal 
mehr über die sS heraus zu finden.

Vielen Dank Jörg, für deine Hilfe und für die vielen Beiträge die du im 
zusammenhang mit avrdude schon geleistet hast!
Persönliche Seite #659130
Lesenswert?

> In der Kurzanleitung für Avrdude im Tutorial steht das ein Hardware-Link
> eingerichtet werden muss.

Der parport hat damit mal garnichts zu tun.
Und was Christian schreibt, ist korrekt. Am besten konfigurierst Du sudo 
so, dass Du kein Passwort benoetigst dann kannst Du es so z.B. in 
Makefiles verwenden, so mache ich es. Du kannst auch die Permission des 
devices aendern aber das empfehle ich eher weniger, das macht man 
eigentlich nicht.

Michael
Moderator Persönliche Seite #659295
Lesenswert?

Michael G. wrote:

> Du kannst auch die Permission des
> devices aendern aber das empfehle ich eher weniger, das macht man
> eigentlich nicht.

Warum ,,macht man das eigentlich nicht''?  Es gab auch eine Welt
vor sudo, und device permissions, insbesondere group permissions,
sind für solche Dinge (u.a.) da.  Für serielle Geräte hat sich die
Gruppe uucp durchgesetzt, deren Mitglied man sein muss, um darauf
zugreifen zu können.  Für parport müsste man halt was Ähnliches
machen oder auch gleich die Gruppe uucp mit benutzen.

Im Gegenteil, das ist sogar der weit sauberere Weg als sudo: sudo
lässt den Prozess (also avrdude) ja mit root-Rechten laufen, damit
kann er viel mehr Unfug anstellen (insbesondere auch im Falle von
Bugs) als mit einem auf den Nutzer gezielt eingerichteten device
node und einem Prozess, der ansonsten mit normalen Nutzerrechten
läuft.
Gast #661575
Lesenswert?

Hast Du an deinen Rechner eine SerielleSchnittstelle oder über 
USB-Adapter?

Versuch einfach mal ein paar Devices durch (ttyS0, ttyS1...), die in 
Frage kommen mit:

avrdude -p m16 -c stk500 -P /dev/tty.PL2303-0000207D

tty.PL2303-0000207D ist mein USB-Adapter, die Bezeichnung wechselt aber 
wenn er an einem anderen USB-Port steckt.

Wenn dein stk500 die Version 2 drauf hat, dann gibt dir avrdude einen 
hinweis, dass Du stk500v2 bitte benützen sollst.

Wenn Du keine schreibrechte auf das Device hast, dann mit chmod ändern, 
sudo benützen oder gleich als root anmelden.

viel erfolg
Gast #1098988
Lesenswert?

Hallo!

Ich habe ein ähnliches Problem mit AVRDude. Versuche momentan den 
AT90CAN64 mit dem STK500 + STK501 zu programmieren.
AVRDude liefert jedoch immer die Meldung:
1
avrdude -p c64 -c avrisp -U flash:w:blink.hex -vvvv -P /dev/ttyUSB0
2

3
avrdude: Version 5.5, compiled on Feb 21 2008 at 14:24:21
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5

6
         System wide configuration file is "/etc/avrdude/avrdude.conf"
7
         User configuration file is "/home/Florian/.avrduderc"
8
         User configuration file does not exist or is not a regular file, skipping
9

10
         Using Port            : /dev/ttyUSB0
11
         Using Programmer      : avrisp
12
avrdude: Send: 0 [30]   [20] 
13
avrdude: Send: 0 [30]   [20] 
14
avrdude: Send: 0 [30]   [20] 
15
avrdude: ser_recv(): programmer is not responding
16
avrdude: stk500_recv(): programmer is not responding
17
avrdude: Send: Q [51]   [20] 
18
avrdude: ser_recv(): programmer is not responding
19
avrdude: stk500_recv(): programmer is not responding
20
make: *** [load] Fehler 1

Das STK500 hängt an einem USB-RS232 Adapter...RW-Zugriff auf die 
Schnittstelle habe ich, und wenn ich die Schnittstelle kurzschließe 
bekomm ich ein Echo.

Kann mir vielleicht jemand weiterhelfen?! Benötige ich ein 
Firmware-Update für diesem uC bzw. das STK501?!
"avrisp" mit "stk500" ersetzen bringt btw auch nix (das war mein erster 
Versuch)

Gruß
Florian
Gast #1099068
Lesenswert?

Hey! Danke für die schnelle Antwort. Wenn ich stk500v2 benutze, sieht es 
nicht viel anders aus:
1
avrdude -p c64 -c stk500v2 -U flash:w:blink.hex -vvvv -P /dev/ttyUSB0
2

3
avrdude: Version 5.5, compiled on Feb 21 2008 at 14:24:21
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5

6
         System wide configuration file is "/etc/avrdude/avrdude.conf"
7
         User configuration file is "/home/Florian/.avrduderc"
8
         User configuration file does not exist or is not a regular file, skipping
9

10
         Using Port            : /dev/ttyUSB0
11
         Using Programmer      : stk500v2
12
avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14] 
13
avrdude: ser_recv(): programmer is not responding
14
avrdude: stk500_2_ReceiveMessage(): timeout
15
avrdude: Send: . [1b] . [01] . [00] . [01] . [0e] . [01] . [14] 
16
avrdude: ser_recv(): programmer is not responding
17
avrdude: stk500_2_ReceiveMessage(): timeout
Gast #1099349
Lesenswert?

ähmmm.....ned wirklich....habe das ganz neu, und das ist auch der erste 
uC, den ich damit versuche zu programmieren....
Hab nur mal mit dem Multimeter gemessen, ob auch Versorgungsspannung 
beim uC ankommt...
Aber ob auch sonstige Leiterbahnen / ICs o.ä. ok sind, weiß i ned...
Moderator Persönliche Seite #1099362
Lesenswert?

Das hat nichts mit der Verbindung zwischen dem Programmierteil des
STKs und dem Controller zu tun.  Bereits die Kommunikation mit dem
Programmierteil selbst funktioniert nicht, diese muss man aber selbst
ganz ohne eingesteckten Controller (bzw. dem STK501) aufbauen können.

Hast du noch irgendwo einen Hardware-RS-232-Port zur Verfügung?  Nicht
dass dein USB-Dongle keine 115200 Bd kann...

Es wäre übrigens sinnvoller gewesen, dafür einen neuen Thread
aufzumachen.  Hat ja mit dem Originalthema kaum noch was gemein.
Gast #1099373
Lesenswert?

Ok...dachte das passt noch zum Originalthema, weil es hier ja auch 
anfangs darum ging, dass man beim versuch mit AVRDude ein timeout 
bekommt....Sorry!

Hab hier im Büro einen Rechner mit einer Hardware-RS232 Schnittstelle.
Allerdings gibt es da keinen Unterschied. Habe auch schon geguckt, ob 
die Schnittstellen (Am STK und der USB-Adapter) die Pegel richtig 
setzen. Zumindest die Rx und Tx Pegel sind bei beiden richtig, die 
Handshakes konnte ich leider noch nicht überprüfen...
Gast #1099473
Lesenswert?

Jops. So schlau war ich ;)
Hab auch schon mehrfach die ganzen Jumper überprüft, ob ich die alle 
richtig gesetzt habe...Kann ja immer mal sein, dass man sich da 
vertut...

Es kommen auch definitiv Daten an, und auch mit der richtigen Bd-Rate. 
Hab das grad nochmal mit nem Scope überprüft. Werde mich jetz mal an 
Reichelt wenden und schauen, ob man es reklamieren kann...
Moderator Persönliche Seite #1099485
Lesenswert?

Florian wrote:

> Es kommen auch definitiv Daten an, und auch mit der richtigen Bd-Rate.

Gemessen wo?

> Hab das grad nochmal mit nem Scope überprüft. Werde mich jetz mal an
> Reichelt wenden und schauen, ob man es reklamieren kann...

Wenn du vor dem Einschalten den PROGRAM-Taster drückst, kannst du
dann den Bootloader ansprechen?  Der hört auf avr910-Protokoll.
Gast #1100054
Lesenswert?

Gemessen am RS232-Port des STK500 mit nem Tastkopf (Lötkontakte auf der 
Unterseite der Platine). An Tx sieht man jede Menge Daten mit 115,2 kBd 
ankommen, während Rx nichts von sich gibt...

Zum Bootloader: Nein, den kann ich nicht ansprechen...selbes Problem: 
"programmer is not responding"...
Gast #1104153
Lesenswert?

Hey!
Die Pins der beiden ICs konnte ich leider nicht mehr testen...als ich 
das gelesen hab, war das Paket schon auf dem Weg zurück zu Reichelt...
Hab jetzt ein neues STK500 und mir ist auch direkt ein Unterschied 
aufgefallen:
Bei meinem alten hat die Status-LED nie geleuchtet...nun tut sies...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren