Forum: Compiler & IDEs avrdude avrisp mkii stk500 (mac)


von Andreas K. (androlos)


Lesenswert?

Hallo kriege folgende Fehlermeldung beim flashen über avrisp mkii:
(Installiert ist nur der crosspack)

avrdude -c avrisp2 -p atmega8 -U flash:w:main.hex:i
avrdude: ser_open(): can't open device "unknown": No such file or 
directory
make: *** [flash] Error 1


habe es auch mal direkt über stk500 board über die serielle 
schnittstelle versucht. Gleiches Problem

avrdude -c stk500v2 -p atmega8 -U flash:w:main.hex:i
avrdude: ser_open(): can't open device "unknown": No such file or 
directory
make: *** [flash] Error 1


Könnt ihr mir helfen? Bin yc Controller neuling

Danke!

von tux85 (Gast)


Lesenswert?

mhm was für einen programmer benutzt du ? und für serielle 
programmierung hast du da einen usb -> seriell adapter Wenn ja des geht 
nicht

von philip Siefke (Gast)


Lesenswert?

Also STK550 + FT232 kompatiblem USB -> RS232 Adapter macht bei mir 
keinerlei Probleme.

Allerdings haben die USB-RS232 Adapter unter OS-X keinen /dev/tty? Pfad, 
sondern sind irgendwo unter  /dev/modem oder so zu finden.

Wenn ich nachher dazu komme, schließ ich meinen Adapter nochmal an und 
schau schnell nach.

von Andreas K. (androlos)


Lesenswert?

philip Siefke schrieb:
> Allerdings haben die USB-RS232 Adapter unter OS-X keinen /dev/tty? Pfad,
> sondern sind irgendwo unter  /dev/modem oder so zu finden.

Halllo Philip
Kannst du mir das mit dem /dev/tty? und /dev/modem näher erklären. Wo 
mus ich evtl. Einstellungen ändern für ein USB Rs232 Adapter. Kenne mich 
da mit den Befehelen noch nicht so aus beim mac avrdude etc.. Hab für 
den Adapter noche keine Treiber installliert bzw. Einstellungen 
vorgenommen. Dachte das wäre nicht nötig.

tux85 schrieb:
> mhm was für einen programmer benutzt du ?

hallo tux85
Ich weiss nicht genau was du jetzt meinst mit Programmer, aber mein 
Aufbau sieht folgendermaßen aus:
1. Software Crosspack avr aktuellste Version
2. mom nur X11 (terminal) avrdude
3. STK500 board mit ATmega8-16PI yc
4. Programmer AVRISP mkII
Habe den mkii direkt an sprog2 (grün) angeschlossen.mkII blinkt ganze 
zeit orange. Schalte ich die Versorgung des stk boards aus leuchtet die 
LED des mkii rot.
oder
Sereille Verbindung über USB Sereill Adapter STK RS232 Spare Anschluss 
und zwei poliges Kabel für die RXD TXD Verbindung zum PortD.
Muss ich irgendein Taster noch drücken oder habe ich irgendwas vergessen 
Hrdwaremäßig?

Meine Makefile sieht folgendermaßen aus:
DEVICE     = atmega8
CLOCK      = 8000000
PROGRAMMER = -c avrispmkII #oder halt avrispmk2
OBJECTS    = main.o
FUSES      = -U hfuse:w:0xd9:m -U lfuse:w:0x24:m

X11 spuckt beim befehl  avrdude -c ? folgendes aus

Valid programmers are:
  c2n232i  = serial port banging, reset=dtr sck=!rts mosi=!txd miso=!cts 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:668]
  dasa3    = serial port banging, reset=!dtr sck=rts mosi=txd miso=cts 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:655]
  dasa     = serial port banging, reset=rts sck=dtr mosi=txd miso=cts 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:642]
  siprog   = Lancos SI-Prog <http://www.lancos.com/siprogsch.html>; 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:629]
  ponyser  = design ponyprog serial, reset=!txd sck=rts mosi=dtr 
miso=cts [/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:616]
  pavr     = Jason Kyle's pAVR Serial Programmer 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:587]
  dragon_pdi = Atmel AVR Dragon in PDI mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:580]
  dragon_dw = Atmel AVR Dragon in debugWire mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:572]
  dragon_hvsp = Atmel AVR Dragon in HVSP mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:564]
  dragon_pp = Atmel AVR Dragon in PP mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:556]
  dragon_isp = Atmel AVR Dragon in ISP mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:548]
  dragon_jtag = Atmel AVR Dragon in JTAG mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:540]
  jtag2pdi = Atmel JTAG ICE mkII PDI mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:532]
  jtag2avr32 = Atmel JTAG ICE mkII im AVR32 mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:524]
  jtagmkII_avr32 = Atmel JTAG ICE mkII im AVR32 mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:516]
  jtag2dw  = Atmel JTAG ICE mkII in debugWire mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:508]
  jtag2isp = Atmel JTAG ICE mkII in ISP mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:500]
  jtag2    = Atmel JTAG ICE mkII 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:492]
  jtag2fast = Atmel JTAG ICE mkII 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:484]
  jtag2slow = Atmel JTAG ICE mkII 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:476]
  jtagmkII = Atmel JTAG ICE mkII 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:468]
  jtag1slow = Atmel JTAG ICE (mkI)           [/usr/
etc/avrdude.conf:461]
  jtag1    = Atmel JTAG ICE (mkI) 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:453]
  jtagmkI  = Atmel JTAG ICE (mkI) 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:445]
  avr911   = Atmel AppNote AVR911 AVROSP 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:439]
  avr109   = Atmel AppNote AVR109 Boot Loader 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:433]
  butterfly = Atmel Butterfly Development Board 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:427]
  usbtiny  = USBtiny simple USB programmer, 
http://www.ladyada.net/make/usbtinyisp/ 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:421]
  usbasp   = USBasp, http://www.fischl.de/usbasp/ 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:415]
  avr910   = Atmel Low Cost Serial Programmer 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:409]
  stk600hvsp = Atmel STK600 in high-voltage serial programming mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:403]
  stk600pp = Atmel STK600 in parallel programming mode 
[/usr/local/CrossPack-AVR
-20100115/etc/avrdude.conf:397]
  stk600   = Atmel STK600 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:391]
  stk500hvsp = Atmel STK500 V2 in high-voltage serial programming mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:385]
  stk500pp = Atmel STK500 V2 in parallel programming mode 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:379]
  stk500v2 = Atmel STK500 Version 2.x firmware 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:373]
  mib510   = Crossbow MIB510 programming board 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:367]
  stk500v1 = Atmel STK500 Version 1.x firmware 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:361]
  stk500   = Atmel STK500 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:355]
  buspirate = The Bus Pirate 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:345]
  avrisp2  = Atmel AVR ISP mkII 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:339]
  avrispmkII = Atmel AVR ISP mkII 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:333]
  avrispv2 = Atmel AVR ISP V2 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:327]
  avrisp   = Atmel AVR ISP 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:321]
  arduino  = Arduino 
[/usr/local/CrossPack-AVR-20100115/etc/avrdude.conf:315]

Was sollte ich bei meiner Hardware auswählen (bei seriell bzw ispmkii 
Programmierung)

Kann ich überhaupt die makefile ohne das Programm danach neu zu 
compilieren verändern? Das dürfte doch nichts ausmachen.

Danke für eure Hilfe bis jetzt!

von Andreas K. (androlos)


Lesenswert?

Sorry hab da noch eine Sache.
Was sagt die Fehelermeldung überhaupt genau aus. Hier nochmal

bash-3.2$ make flash
avrdude -c stk500v2 -p atmega8 -U flash:w:main.hex:i
avrdude: ser_open(): can't open device "unknown": No such file or 
directory
make: *** [flash] Error 1

Wenn ich gar keine Hardware anschließe, dann kommt die gleiche 
Fehlermeldung beim flashen. Deswegen glaube ich das der Fehler erstmal 
nichts mit der Hardware zu tun hat, sonder erstmal ein Softwarefehler 
bzw. Befehlsfehler ist.

von Jens (Gast)


Lesenswert?

avrdude -c avrisp2 -p atmega8 -U flash:w:main.hex:i

Gib mal das Verzeichnis mit an z.B.:
avrdude -c avrisp2 -p atmega8 -U flash:w:C:\Test\main.hex:i

von Andreas K. (androlos)


Lesenswert?

Jens schrieb:
> Gib mal das Verzeichnis mit an z.B.:
> avrdude -c avrisp2 -p atmega8 -U flash:w:C:\Test\main.hex:i

Habs mal versucht, aber viell gebe ich nur den Pfad auf mac falsch ein. 
Komm von Windows. Heißt es überhaupt bei  mac das Hauptlaufwerk C?
Muss mann net irgendwie Macintosh HD/ usw schreiben bzw. statt "\" "/"


bash-3.2$ make flash
avrdude -c avrisp2 -p atmega8 -U 
flash:w:C:\Users\Andi\Test\firmware\main.hex:i
avrdude: ser_open(): can't open device "unknown": No such file or 
directory
make: *** [flash] Error 1

von g457 (Gast)


Lesenswert?

> avrdude -c avrisp2 -p atmega8 -U
> flash:w:C:\Users\Andi\Test\firmware\main.hex:i
> avrdude: ser_open(): can't open device "unknown": No such file or
> directory

Unknown devices sind immer böse. Gib mal ein '-P usb' mit an.

von Andreas K. (androlos)


Lesenswert?

g457 schrieb:
> Gib mal ein '-P usb' mit an.

Meinst du so:

avrdude -c avrisp2 -p usb -p atmega8 -U flash:w:main.hex:i
avrdude: ser_open(): can't open device "unknown": No such file or 
directory
make: *** [flash] Error 1
bash-3.2$

funktioniert net :-((((((

von Jens (Gast)


Lesenswert?

Großes P

von Andreas K. (androlos)


Lesenswert?

Vielen Dank!

Jetzt bin ich ein Fehler in der Kette weiter ;)

Jetzt schreibt er folgendes:

avrdude -c avrisp2 -P usb -p atmega8 -U flash:w:main.hex:i

avrdude: stk500v2_command(): command failed
avrdude: stk500v2_command(): unknown status 0xc9
avrdude: stk500v2_program_enable(): cannot get connection status
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

wo soll ich den dieses -F setzen, wenn ich diesen check überspringen 
will. Ist das überhaupt ratsam

Sorry
komm von AVRstudio und da gibt es dies irgendwie alles net

von g457 (Gast)


Lesenswert?

> avrdude: stk500v2_command(): unknown status 0xc9

Den gabs bei mir bisher nur, wenn ich die bitclock nicht angegeben hab 
(obwohls eigentlich überflüssig sein sollte..) - probier noch ein '-B 5' 
mit dazu (auch das 'B' ist groß ;-)

Ansonsten bleibt (fast) nur noch die Verkabelung.

von Andreas K. (androlos)


Lesenswert?

Hallo schaut mal bitte

Hab jetzt folgendes probiert

bash-3.2$ make flash
avrdude -c avrisp2 -P usb -B 5 -p atmega8 -U flash:w:main.hex:i

avrdude: stk500v2_command(): command failed
avrdude: stk500v2_command(): unknown status 0xc9
avrdude: stk500v2_program_enable(): cannot get connection status
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

make: *** [flash] Error 1
bash-3.2$ make flash
avrdude -c avrisp2 -P usb -B 5 -F -p atmega8 -U flash:w:main.hex:i

avrdude: stk500v2_command(): command failed
avrdude: stk500v2_command(): unknown status 0xc9
avrdude: stk500v2_program_enable(): cannot get connection status
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for ATMEGA8 is 1E 93 07
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be 
performed
         To disable this feature, specify the -D option.

Ich programmier jetzt mit dem AVRisp das erste mal.

Auf jeden Fall macht er irgendwas.
Muß die Versorgung des STK Boards an oder aus bleiben beim flashen. Hab 
jetzt mal beides probiert.
Bei eingeschalteter Versorgung blinkt der mkII rot
Bei ausgeschalteter bleibt er ganze Zeit grün der mkII

von Andreas K. (androlos)


Lesenswert?

Hallo User

komm hier nicht weiter
Bitte helft mir

letzte Fehlermeldung:
______________________________________________________

bash-3.2$ make flash
avrdude -c avrisp2 -P usb -F -D -p atmega8 -U flash:w:main.hex:i

avrdude: stk500v2_command(): command failed
avrdude: stk500v2_command(): unknown status 0xc9
avrdude: stk500v2_program_enable(): cannot get connection status
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for ATMEGA8 is 1E 93 07

avrdude done.  Thank you.

make: *** [flash] Error 1
_____________________________________________________

Hardware atmega8-16PI im grünen Sockel STK500 Board und AVRISPmkII in 
SProg2. Versorgung STK500 Board ist aus. Habe es aber auch schon mit 
angeschalteter versucht.

von g457 (Gast)


Lesenswert?

-F ist gefährlich solange die Verbindung nicht einwandfrei funktioniert 
(und sollte eh nur im Ausnahmefall verwendet werden!) - und wenn die 
Signatur mit 0x00 gelesen wird, dann ist das nicht einwandfrei..

Prüfe mal die Kabel und sämtliche Verbindungen sowie Spannungen. Welchen 
Sockel du brauchst kann ich Dir in Ermangelung eines STK500 nicht sagen, 
das steht aber sicher in der Doku.

von Tom M. (tomm) Benutzerseite


Lesenswert?

Wenn ich auf meinem Mac (OSX 10.5.8) meinen FTDI Adapter einstecke, hab 
ich im "dmesg" diese Mitteilung:
1
FTDIUSBSerialDriver:        0  4036001 start - ok

Gleichzeitig habe ich zwei neue devices unter /dev (ls /dev/*usb*):
1
crw-rw-rw-  1 root  wheel    9,   7 Apr  4 18:27 /dev/cu.usbserial-A900ad5t
2
crw-rw-rw-  1 root  wheel    9,   6 Apr  4 18:27 /dev/tty.usbserial-A900ad5t

So spreche ich dann meinen FTDI an:
1
tomm@toms-imac$ avrdude -P /dev/tty.usbserial-A900ad5t -p m168 -c arduino -b 57600
2
3
avrdude: AVR device initialized and ready to accept instructions
4
5
Reading | ################################################## | 100% 0.02s

Vielleicht bringt's dich ja weiter... :)

von Andreas K. (androlos)


Lesenswert?

Hallo Leute
Habe den Fehler endlich gefunden. Wenn man mit AVRISP mkII flashen will, 
muss man
1. Die Versorgung am STK500 Board anschalten, weil der mkII selbst keine 
Versorgung für den uq mitbringt
2. Wenn man aber die Versorgung des STK500 Board anschaltet blinkt die 
mkII LED Orange. Das heißt entweder die 6pol Leitung ist verpolt oder es 
besteht ein kurzschluss oder der reset jumper der stk500 steckt 
(Standardmäßig muss er drin sein). Bei mir war es der Reset Jumper.

Ich danke euch trotzdem für eure Hilfe. Am Anfang hatte ich ja auch 
einige Fehler in der Makefile ;).

Tom M. schrieb:
> Wenn ich auf meinem Mac (OSX 10.5.8) meinen FTDI Adapter einstecke, hab
> ich im "dmesg" diese Mitteilung:
> FTDIUSBSerialDriver:        0  4036001 start - ok

Hallo Tom
Übrigens habe ich auch ein seriell USB adapter. Den habe ich auch noch 
nicht am Mac zum Laufen bekommen.
fangen wir mal vorne an :)
Was ist "dmesg"?
....und du hast dein USB Adapter einfach nur reingesteckt und dann hat 
das funktioniert. Ohne Treiber und so weiter? Staun!!

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.