Forum: Mikrocontroller und Digitale Elektronik avrdude - Probleme unter Mac OS X 10.7 (Lion)


von Vinz V. (vinz)


Lesenswert?

Hallo zusammen,

unter Mac OS X 10.7 (Lion) gibt es offensichtlich Probleme mit avrdude.
Auch google wirft mittlerweile einiges aus. Es scheint mit libusb zu tun 
zu haben.

In meinem Fall (siehe System unten) kann ich kleine hex-Files 
übertragen. Größere Dateien funktionieren nicht. Nebenbei führt das 
dazu, das OS X nicht mehr sauber runter fährt (hängt sich der Treiber 
auf?).

Habe den aktuellen avrdude aus den Quellen erzeugt und mehrere Patches 
ohne Erfolg getestet.

Hat von Euch schon jemand eine Lösung gefunden?
Vinz


System :
OSX 10.7.2
avrdude 5.8cvs und 5.11.1 und 5.11svn-20111019
Programmer mySmartUSB firmware 2.5 mit
OSX-Treiber CP210x silabs.com (v2.9)

Test verschiedene Versionen von avrdude:
1
$ avrdude -pm8 -c avr910 -P /dev/tty.SLAB_USBtoUART -v -e -b 19200 -U flash:w:LCD.hex:i
2
3
avrdude: Version 5.8cvs, compiled on Jan 15 2010 at 17:27:01
4
(... genau gleich mit ...)
5
avrdude: Version 5.11.1, compiled on Dec 31 2011 at 14:59:55
6
7
... ...
8
9
avrdude: reading input file "LCD.hex"
10
avrdude: writing flash (6484 bytes):
11
Writing | ####                                               | 7% 0.55s
12
avrdude: avr910_recv(): programmer is not responding

Die aktuellste Version von avrdude überträgt, aber es gibt content 
mismatch.
1
$ avrdude -pm8 -c avr910 -P /dev/tty.SLAB_USBtoUART -v -e -b 19200 -U flash:w:LCD.hex:i
2
3
avrdude: Version 5.11svn-20111019, compiled on Dec 31 2011 at 15:25:56
4
5
... ...
6
7
avrdude: avr910_devcode selected: 0x76
8
avrdude: AVR device initialized and ready to accept instructions
9
Reading | ################################################## | 100% 0.05s
10
11
avrdude: Device signature = 0x1e9307
12
avrdude: safemode: lfuse reads as F1
13
avrdude: safemode: hfuse reads as D9
14
avrdude: erasing chip
15
avrdude: reading input file "LCD.hex"
16
avrdude: writing flash (6484 bytes):
17
Writing | ################################################## | 100% 7.75s
18
19
avrdude: 6484 bytes of flash written
20
avrdude: verifying flash memory against LCD.hex:
21
avrdude: load data flash data from input file LCD.hex:
22
avrdude: input file LCD.hex contains 6484 bytes
23
avrdude: reading on-chip flash data:
24
Reading | ################################################## | 100% 4.18s
25
26
avrdude: verifying ...
27
avrdude: verification error, first mismatch at byte 0x0001
28
         0x80 != 0xc0
29
avrdude: verification error; content mismatch
30
31
avrdude: safemode: lfuse reads as F1
32
avrdude: safemode: hfuse reads as D9
33
avrdude: safemode: Fuses OK
34
avrdude done.  Thank you.

von Rudof (Gast)


Lesenswert?

Vinz Vinz schrieb:
> Habe den aktuellen avrdude aus den Quellen erzeugt und mehrere Patches
> ohne Erfolg getestet.
Hat libusb und AVRDude denn schon jemals auf deinem MAC funktioniert?

von Vinz V. (vinz)


Lesenswert?

Hallo Rudof,
das ist eine gute Frage:

Auf dem selben Mac war es noch nie installiert. Auf einem anderen mit 
10.6 hat avrdude funktioniert (auf libusb hab ich da nicht geachtet).

Dort war es ganz einfach:
http://www.obdev.at/products/crosspack/index.html

von Rudof (Gast)


Lesenswert?

Vinz Vinz schrieb:
> Dort war es ganz einfach:
Und warum machst du es dann nicht mit der Softwareversion von dem 
System, wo es funktioniert hat? Nicht alles, was neu ist, glänzt - nicht 
mal Jahr, Version 2012 :-)

von Vinz V. (vinz)


Lesenswert?

Weil mein neuer Rechner OS X 10.7 hat und (sorry) es mir zu mühsam ist, 
den "downzugraden".
Du hast schon recht, aber lass mich doch nach einer Lösung für 10.7 
suchen ;-).

Erstmal nen guten Rutsch!

von Frank K. (fchk)


Lesenswert?

Ich tippe eher auf ein Problem mit dem Silabs Treiber. Probiers mal mit 
einem original AVR ISP MKII.

fchk

von Brumbaer (Gast)


Lesenswert?

Ich hatte das selbe Problem und habe eine neue Version kompiliert.
Ich glaube es war über Macports und die lief auf Anhieb.

MfG
SH

von Vinz V. (vinz)


Lesenswert?

Hallo Brumbaer,

kanst Du bitte mal "avrdude" im Terminal eingeben und mir ganz unten die 
Version schicken? Welche OSX Version hast Du? Hast Du auch einen 
mySmartUSB? danke ;-)


Hallo Frank,

Ist der Atmel AVRISP mkII der "absolut basic, standart, must-have" 
Programmer? Ich habe leider keinen Zugriff auf einen zum testen und in 
der Schweiz ist es nicht so einfach mit bestellen wie in DE. Aber danke 
für den Tip - ist die nächste Anschaffung.

Dass es am Silabs Treiber liegt kann ich mir persönlich nicht 
vorstellen:
Stelle ich den Programmer auf UART-Bridge und brücke dort TX und RX, so 
kann ich weit mehr als 512 Byte in beide Richtungen übertragen. Auch 
mehrfaches schliessen und öffnen der Verbindung ist kein Problem.
Für den Treiber ist dieser Fall genau gleich wie Programmieren: 
Serielles Tx-Rx.
Ich denke eher, avrdude hat Probleme.

Eine weitere vielleicht interessante Beobachtung:
1) bis 376 Bytes -- alles OK (Programm läuft)
2) ab 382 Bytes -- schreiben OK (genau wie oben) -- lesen bricht ab 
(Programm läuft)
3) ab 512 Bytes -- schreiben bricht bei 512 Bytes ab (Programm läuft 
nicht)

Interessant deshalb, weil avrdude meldet:
Found programmer: Id = "AVR ISP"; type = S
    Software Version = 2.5; Hardware Version = 2.0
Programmer supports auto addr increment.
Programmer supports buffered memory access with buffersize = 512 bytes

Gruss,
Vinz

bis 376 Bytes -- alles OK
1
avrdude: AVR device initialized and ready to accept instructions
2
3
Reading | ################################################## | 100% 0.05s
4
5
avrdude: Device signature = 0x1e9307
6
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
7
         To disable this feature, specify the -D option.
8
avrdude: erasing chip
9
avrdude: reading input file "blink.hex"
10
avrdude: input file blink.hex auto detected as Intel Hex
11
avrdude: writing flash (376 bytes):
12
13
Writing | ################################################## | 100% 0.41s
14
15
avrdude: 376 bytes of flash written
16
avrdude: verifying flash memory against blink.hex:
17
avrdude: load data flash data from input file blink.hex:
18
avrdude: input file blink.hex auto detected as Intel Hex
19
avrdude: input file blink.hex contains 376 bytes
20
avrdude: reading on-chip flash data:
21
22
Reading | ################################################## | 100% 0.20s
23
24
avrdude: verifying ...
25
avrdude: 376 bytes of flash verified
26
27
avrdude done.  Thank you.

ab 382 Bytes -- schreiben OK (genau wie oben) -- lesen bricht ab
1
... Writing (genau wie oben) ...
2
3
avrdude: 382 bytes of flash written
4
avrdude: verifying flash memory against blink.hex:
5
avrdude: load data flash data from input file blink.hex:
6
avrdude: input file blink.hex auto detected as Intel Hex
7
avrdude: input file blink.hex contains 382 bytes
8
avrdude: reading on-chip flash data:
9
10
Reading | avrdude: avr910_recv(): programmer is not responding
11
avrdude finished

ab 512 Bytes -- schreiben bricht bei 512 Bytes ab
1
avrdude: reading input file "blink.hex"
2
avrdude: input file blink.hex auto detected as Intel Hex
3
avrdude: writing flash (516 bytes):
4
5
Writing | #################################################
6
avrdude: avr910_recv(): programmer is not responding
noch größer
1
avrdude: reading input file "blink.hex"
2
avrdude: input file blink.hex auto detected as Intel Hex
3
avrdude: writing flash (956 bytes):
4
5
Writing | ##########################
6
avrdude: avr910_recv(): programmer is not responding

von Frank K. (fchk)


Lesenswert?

Vinz Vinz schrieb:

> Hallo Frank,
>
> Ist der Atmel AVRISP mkII der "absolut basic, standart, must-have"
> Programmer? Ich habe leider keinen Zugriff auf einen zum testen und in
> der Schweiz ist es nicht so einfach mit bestellen wie in DE. Aber danke
> für den Tip - ist die nächste Anschaffung.

Ja, ist er. Die Referenz sozusagen. Und man müsste ihn auch hinter den 
sieben Bergen bei den sieben Zwergen bekommen. distrelec.ch, farnell.ch, 
conrad.ch existieren zumindest.

Plus: er verwendet natives USB, also ohne internen USB-Seriell-Wandler. 
Meine Erfahrungen mit solchen Chips sind durchwachsen, und auch in 
eigenen Projekten baue ich mein Gerät lieber als HID- oder CDC-Device, 
denn dann läuft das überall sofort ohne Treiber - auch am Mac.

fchk

von Brumbaer (Gast)


Lesenswert?

Das gibt avrdude mit -v aus.

avrdude: Version 5.4-arduino, compiled on Oct  9 2007 at 11:20:31
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

Ich verwende den AVR ISP MKII - ist nicht wirklich teuer, so gut wie 
überall erhältlich und wird eigentlich immer von allem unterstützt. 
Sozusagen der "kleinste gemeinsame Nenner" aller AVR-Programmsoftware.

MfG
SH

von FrankH (Gast)


Lesenswert?

Hi,
ich habe OSX 10.7.2 auf meinem iMac 27" laufen. Crosspack ist 
"CrossPack-AVR-20090415" also nicht das Neuste. Ich habe auch den 
MySmartUSB-Programmer und keinerlei Probleme.
Gruß
Frank

von Brumbaer (Gast)


Lesenswert?

Sorry, vergessen OS X 10.7.2.

Das AVRDude aus Crosspack  20100115 lief bei mir nicht.

MfG
SH

von Vinz V. (vinz)


Lesenswert?

Danke Brumbaer, einen AVR ISP MKII werde ich mir bestellen.

Hallo FrankH,
jetzt wird's interessant. :-) Gleichen Computer und OS habe ich auch.

Ich habe alles vollständig deinstalliert - bis auf den silabs-Treiber.
Und CrossPack-AVR-20090415 installiert. Bringt mit: avrdude: Version 
5.6, compiled on Apr 15 2009 at 17:54:59

Nur leider mit genau den gleichen Problemen wie vorher: Abbruch nach 512 
Byte. :(

1) Welchen silabs Treiber hast Du installiert? Das ist der Treiber um 
einen virtuellen ComPort anzulegen.
2) Hast Du Änderungen gemacht in: 
/usr/local/CrossPack-AVR-20090415/etc/avrdude.conf
3) Mit welcher avrdude Kommandozeile kannst Du übertragen?

Vielen Dank,
Vinz

von Vinz V. (vinz)


Lesenswert?

Hallo Brumbaer,

hoppla, Deinen Post habe ich gar nicht gesehen.

Weisst Du noch, welche Probleme Du bei avrdude 5.8cvs 
(Crosspack_20100115) hattest?

Du bist jetzt zurück auf Version 5.4-arduino. Bei FrankH funktioniert es 
mit avrdude 5.6 (Crosspack_20090415).

Vinz

von FrankH (Gast)


Lesenswert?

Hi Vinz,
zu 1) Silabs Treiber Version ? Über USB-Prober kann ich die Version 
nicht einsehen.
zu 2) Avrdude ist das gleiche und ich habe keine Änderungen vorgenommen.
zu 3) Ich benutze das Makefile von Crosspack, bzw.
PROGRAMMER = -c avr911 -P /dev/cu.SLAB_USBtoUART
ich hatte auch mal vor einigen Jahren ein Tut hierzu geschrieben. Ging 
um das Programmieren von AVR-µC auf einem Mac mit der Konsole und mit 
Xcode.

Ich kann normal flashen und als RS232 funzt das auch wunderbar, habe 
sogar mal ein Programm geschrieben mit dem ich von Programmmodus auf den 
Datenmodus umschalten kann, damit ich nicht immer den DIP-Schalter 
vergewaltigen muss ;-)

Gruß
Frank

von Vinz V. (vinz)


Lesenswert?

Hallo Frank,

ich reduziere mal auf die Kommandozeile - habe diese möglichst nah an 
Deines angepasst.

Um ein "blink.hex" (> 512 Byte) auf einen Mega8 zu übertragen verwende 
ich vergeblich:

Ist in der Zeile irgendwas falsch?

Sorry sorry, aber kannst Du das mal probieren?
Vinz
1
$  /usr/local/CrossPack-AVR-20090415/bin/avrdude -pm8 -c avr911 -P /dev/cu.SLAB_USBtoUART -b 19200 -U flash:w:blink.hex:a -vvv
2
3
avrdude: Version 5.6, compiled on Apr 15 2009 at 17:54:59
4
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
5
6
         System wide configuration file is "/usr/local/CrossPack-AVR-20090415/etc/avrdude.conf"
7
         User configuration file is "/Users/vinz/.avrduderc"
8
         User configuration file does not exist or is not a regular file, skipping
9
10
         Using Port                    : /dev/cu.SLAB_USBtoUART
11
         Using Programmer              : avr911
12
         avr910_devcode (avrdude.conf) : 0x76
13
         Overriding Baud Rate          : 19200
14
         AVR Part                      : ATMEGA8
15
         Chip Erase delay              : 10000 us
16
         PAGEL                         : PD7
17
         BS2                           : PC2
18
         RESET disposition             : dedicated
19
         RETRY pulse                   : SCK
20
         serial program mode           : yes
21
         parallel program mode         : yes
22
         Timeout                       : 200
23
         StabDelay                     : 100
24
         CmdexeDelay                   : 25
25
         SyncLoops                     : 32
26
         ByteDelay                     : 0
27
         PollIndex                     : 3
28
         PollValue                     : 0x53
29
         Memory Detail                 :
30
31
                                  Block Poll               Page                       Polled
32
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
33
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
34
           eeprom         4    20   128    0 no        512    0      0  9000  9000 0xff 0xff
35
                                  Block Poll               Page                       Polled
36
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
37
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
38
           flash         33    10    64    0 yes      8192   64    128  4500  4500 0xff 0x00
39
                                  Block Poll               Page                       Polled
40
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
41
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
42
           lfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
43
                                  Block Poll               Page                       Polled
44
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
45
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
46
           hfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
47
                                  Block Poll               Page                       Polled
48
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
49
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
50
           lock           0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
51
                                  Block Poll               Page                       Polled
52
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
53
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
54
           calibration    0     0     0    0 no          4    0      0     0     0 0x00 0x00
55
                                  Block Poll               Page                       Polled
56
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
57
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
58
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
59
60
         Programmer Type : avr910
61
         Description     : Atmel AppNote AVR911 AVROSP
62
63
Connecting to programmer: .
64
Found programmer: Id = "AVR ISP"; type = S
65
    Software Version = 2.5; Hardware Version = 2.0
66
Programmer supports auto addr increment.
67
Programmer supports buffered memory access with buffersize=512 bytes.
68
69
Programmer supports the following devices:
70
    Device code: 0x01
71
 ... ...
72
    Device code: 0x7f
73
74
avrdude: devcode selected: 0x01
75
avrdude: AVR device initialized and ready to accept instructions
76
77
Reading | ################################################## | 100% 0.05s
78
79
avrdude: Device signature = 0x1e9307
80
avrdude: safemode read 1, lfuse value: 62
81
avrdude: safemode read 2, lfuse value: 62
82
avrdude: safemode read 3, lfuse value: 62
83
avrdude: safemode: lfuse reads as 62
84
avrdude: safemode read 1, hfuse value: df
85
avrdude: safemode read 2, hfuse value: df
86
avrdude: safemode read 3, hfuse value: df
87
avrdude: safemode: hfuse reads as DF
88
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
89
         To disable this feature, specify the -D option.
90
avrdude: erasing chip
91
avrdude: reading input file "blink.hex"
92
avrdude: input file blink.hex auto detected as Intel Hex
93
avrdude: writing flash (1168 bytes):
94
95
Writing | ######################                             | 43% 0.55s
96
avrdude: ser_recv(): programmer is not responding
97
avrdude: butterfly_recv(): programmer is not responding

von FrankH (Gast)


Lesenswert?

So,
ich habe gerade mal mein Kram wieder rausgeholt. Das letzte Projekt 
hatte ich vor knapp 6 Monate kompiliert und erfolgreich auf den µC 
gebracht, weiß nicht ob ich da schon den Lion hatte, zumindest bekomme 
ich jetzt auch Probleme meinen µC zu flashen... Sorry
Gruß
Frank

von Vinz V. (vinz)


Lesenswert?

Nachtrag:

die Version des silabs-Treibers siehst Du durch auflisten der kernel 
extensions:

im Terminal:
1
kextstat | grep com.silabs

bei mir: com.silabs.driver.CP210xVCPDriver64 (2.9.0d1)

von FrankH (Gast)


Lesenswert?

upps, zu spät. Hatte gerade schon den neuen Treiber drübergebügelt.
Das ist ja wie verhext, hatte schon einmal mit dem Programme 
Schwierigkeiten. Die waren aber nach einem Treiberupdate geklärt 
(SILAB). Stehe da jetzt auch ein wenig auf dem Schlauch. Vllt. mal 
ältere Treiber für den Cp2102 ausprobieren.
Gruß
Frank

von Vinz V. (vinz)


Lesenswert?

@ FrankH
Oh shit :-/ und ja, es ist seit OS X 10.7
http://www.google.com/search?q=avrdude+%22os+x%22+%2810.7+OR+Lion%29

Mit dem "Atmel AVR ISP mkII" gibt es seit dem offensichtlich auch 
Probleme ...

By the way :-) :-O
http://cp-siliconlabs.kb.net/display/2/kb/article.aspx?aid=311431

Aber wichtig ist noch:
Im UART-Modus funktioniert es mit dem Treiber beliebig lange - auch mit 
mehrfachem Verbindungsaufbau. -> Der Treiber sieht keinen Unterschied ob 
der Programmer im UART- oder Programmer-Modus ist. -> Der Treiber sollte 
nicht das Problem sein.

Meiner Meinung nach ist es die Kombination avrdude und OS X 10.7.

P.S: ich wollt Dir nicht das neue Jahr versauen.
P.P.S: gut's Neus! ;-)


@ Brumbaer
Ich habe mittlerweile auch die "avrdude: Version 5.4-arduino" getestet.
Leider an meinem Programmer das gleiche Problem wie schon oben 
beschrieben.

Hast Du noch irgendwelche Besonderheiten eingetragen?

Vinz

von Brumbaer (Gast)


Lesenswert?

Ich konnte nicht flashen.
Mit der Version habe ich gepfuscht.
Die 5.4 ist alt, aber funktioniert.
Die Crosspack Version hatte ich ausprobiert, um einen XMega zu 
programmieren. Die 5.4 unterstützt ihn nämlich nicht. Flashen ging mit 
der Crosspackversion nicht,  auch nicht bei einem Mega328.
Die Version, die ich mit dem XMega verwende ist 5.11.1

Tut mir leid wegen der Konfusion.

MfG
SH

von FrankH (Gast)


Lesenswert?

Hi,
nein du hat mir das neue Jahr nicht versaut und dito.
Vllt. könnten wir das Problem eingrenzen wenn jeder mit OSX10.7.x seine 
Programmer mal ausprobiert. Sollte einer funktionieren, müsste avrdude 
aus der Schusslinie sein.
Zumindest könnten wir mal herausfinden, ob irgendein Programmer unter 
10.7.x noch funktioniert.
Gruß
Frank

von FrankH (Gast)


Lesenswert?

Es wäre ja mal hilfreich, wenn wir die Programmer aufzählen die auf den 
Mac überhaupt verwendet wurden.

1. mySmartUSB MK2   ( CP2102 )

Gruß
Frank

von Vinz V. (vinz)


Lesenswert?

bei mir wäre es auch ein

1. mySmartUSB MK2 (CP2102) (Firmware 2.5)

Uups, meinen siliconlabs-Link muss man zwei mal öffnen, wegen einem 
Session-Cookie. Hast Du gehsehen, da steht nur was von 10.6 !


@ Brumbaer
Sorry, ich hab's noch nicht verstanden:
Das bedeutet, Dein originaler Programmer AVR ISP MK2 USB läuft jetzt 
aktuell unter Mac OS X 10.7.2 mit avrdude 5.11.1 - und ohne weitere 
Treiber.

avrdude 5.11.1 überträgt bei mir das Programm zwar komplett - aber das 
Rücklesen meldet Fehler und auf dem Controller läuft nix.

Vinz

von Brumbaer (Gast)


Lesenswert?

Ja, so ist es.

von Vinz V. (vinz)


Lesenswert?

Um den Fehler ein zu grenzen bin ich weg von avrdude und OSX.

Ich habe mal auf dem Mac mit Parallels Windows 7 gestartet.
Jetzt habe ich bein USB anstecken von mySmartUSB-Programmer zwei 
Möglichkeiten:

1) ich gebe den USB Programmer an Windows
   -> OSX gibt nur den USB-Anschluss weiter
   -> der Silabs-Treiber unter OS X läuft nicht, auch kein Com-Port
   -> Windows muss sich selber kümmern, virtueller Com-Port, ...

2) ich gebe den USB Programmer an OS X
   -> der Silabs-Treiber erzeugt einen Com-Port
   -> diesen Com-Port reiche ich an Windows weiter
   -> es muss also der Silabs-Treiber unter OS X laufen
   -> Windows weiss gar nichts von Silabs und USB


Mit dem Programm myAVR ProgTool kan man flashen.

Variante 1, völlig problemlos, mehrmals getestet.
Variante 2, Probleme, übertragung bricht ab.


*avrdude 5.10 Windows*, installiert von WinAVR-20100110
C:\>avrdude -pm8 -c avr910 -P COM3 -v -e -b 19200 -U flash:w:blink.hex:i

Variante 1, völlig problemlos, mehrmals getestet.
Variante 2, Probleme, übertragung bricht ab.

und das schlimmste, avrdude zeigt den gleichen Fehler wie unter OS X
1
avrdude: reading input file "blink.hex"
2
avrdude: writing flash (1168 bytes):
3
4
Writing | ######################                             | 43% 0.58s
5
avrdude:
6
 error: programmer did not respond to command: write block
7
C:\>

von Vinz V. (vinz)


Lesenswert?

Für sich allein ist mein Test natürlich blöd. Er verkompliziert ja nur 
alles.

Aber, zusammen mit dem was wir vorher beobachtet haben, spricht es 
relativ klar für:

* Der Treiber von silabs ist unter OS X 10.7 wohl das Problem.

* Brumbaer braucht den Treiber nicht, mit avrdude und AVR ISP MK2 USB 
klappt es.

* Wäre avrdude das Problem, warum geht dann auch das ProgTool nicht.

* Sobald der Treiber im Spiel ist, gibt es das Übertragungsproblem.

* silabs.com dokumentiert den Treiber nur bis 10.6


Komisch aber, dass er für rein serielle Kommunikation "von Hand" 
einwandfrei funktioniert.

Vinz

von Vinz V. (vinz)


Lesenswert?

Habe eine Anfrage bei silabs gestellt.

http://www.silabs.com/support/forums/Pages/default.aspx
-> MCU User Forum
-> Drivers for Macintosh OSX 10.7 - "CP210x USB to UART Bridge VCP"
http://www.cygnal.org/ubb/Forum1/HTML/003576.html

Wer besser Englisch kann, um das Problem genau zu beschreiben, der möge 
sich bitte noch an den Technical Support wenden.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Vinz Vinz schrieb:
> C:\>avrdude -pm8 -c avr910 -P COM3 -v -e -b 19200 -U flash:w:blink.hex:i

Oben schriebst du aber:

Vinz Vinz schrieb:
> $ …/avrdude -pm8 -c avr911 -P /dev/cu.SLAB_USBtoUART -b 19200 -U 
flash:w:blink.hex:a -vvv

-c avr910 und -c avr911 sind nicht dasselbe.  avr911 ist ein Alias
für `butterfly', und das wiederum ist ein Bootloader.  AVR910 dagegen
beschreibt einen externen standalone programmer.

Beide Protokolle sind zwar sehr ähnlich (das Bootloader-Protokoll des
AVR Butterfly wurde nach dem bereits bekannten AVR910-Protokoll
konzipiert), aber es gibt geringfügige Unterschiede in manchen Details.

p.s.: AVRDUDE ist mittlerweile bei Version 5.11 angekommen.

von Vinz V. (vinz)


Lesenswert?

Hallo Jörg,
danke für die Hinweise.

> -c avr910 und -c avr911 sind nicht dasselbe.
Da hast Du recht, ich habe jeweils beides ausprobiert, da der Programmer 
beides unterstützen soll. avr911 habe ich dann im speziellen von FrankH 
übernommen, weil er von Erfolg berichtet hat. Das war leider ein Irrtum.

Die Probleme bei avr910 und avr911 sind die gleichen.

> p.s.: AVRDUDE ist mittlerweile bei Version 5.11 angekommen.
Ja das stimmt, siehe oben. Getestet habe ich 5.11svn und sogar 5.11.1.
Wenn ich sie nicht über ein Setup gefunden habe, so habe ich die Version 
von den Quelen erzeugt.

Siehe oben:
>> avrdude 5.11.1 überträgt bei mir das Programm zwar komplett - aber das
>> Rücklesen meldet Fehler und auf dem Controller läuft nix.

Im Moment denke ich, es liegt am Silabs Treiber -- so wie Frank K. 
(fchk) das schon am Anfang vermutet hat. Habe ein AVR ISP MKII bestellt 
und warte auf Silabs. Zwischenzeitlich progge ich mit Windows.

Vinz

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Vinz Vinz schrieb:
> Im Moment denke ich, es liegt am Silabs Treiber -- so wie Frank K.
> (fchk) das schon am Anfang vermutet hat.

Kannst du das nochmal mit -vvvv laufen lassen?  Aber am besten dann
die Ausgabedatei hier als Anhang posten, die wird ziemlich groß.

von Vinz V. (vinz)


Angehängte Dateien:

Lesenswert?

Hallo Jörg,
gemein, Du hast ein DL bekommen. Bei mir gab's damals ein DG, weil ich 
nicht morsen konnte... ;-)

Dateien wie gewünscht anbei. Von welcher weiteren Version möchtest Du 
Protokolle?


So - und wie sagt man; ich fress jetzt nen Besen:

"avrdude: Version 5.4-arduino". Diese Version in Kombination mit avr910 
funktioniert jetzt.

Die Versionen 5.6, 5.8cvs, 5.11svn-20111019 und 5.11.1 haben nicht 
funktioniert (siehe oben), von 5.4-arduino hab ich kein Protokoll 
gespeichert.

Hab auch noch mal getestet (andere Progs, auch mit EEPROM), es 
funktioniert nur die 5.4-arduino-Version.

Ratlos,
Vinz

von Vinz V. (vinz)


Lesenswert?

Hat jemand Sourcen von der 5.4-arduino?

Ich habe hier nur eine fertig kompilierte - und finde die Quellen auf 
www.arduino.cc nicht mehr.

beide down
http://www.arduino.cc/files/avrdude-5.4-arduino-src.tgz
http://www.arduino.cc/files/avrdude-5.4-arduino-0010-src.tgz

die kompilierte habe ich von:
http://arduino.cc/en/Main/Software -> arduino-0010-mac.zip

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Vinz Vinz schrieb:

> gemein, Du hast ein DL bekommen. Bei mir gab's damals ein DG, weil ich
> nicht morsen konnte... ;-)

Das wäre damals an der Klubstation DM3PL gar nicht anders interessant
gewesen, denn UKW hat dort zu der Zeit, da ich da angefangen habe
(1978) keiner gemacht.  Allerdings gebe ich zu, dass ich es mit dem
Morsen einfach hatte: das habe ich mir als kleiner Junge mit einer
Spielzeugmorsetaste praktisch selbst beibebracht (ja, so'n billiges
ekliges Teil, mit dem man eigentlich nicht wirklich morsen kann ;-),
im Afu-Lehrgang musste ich das mehr oder weniger nur noch auffrischen.
Etwas schwerer getan habe ich mich damals mit den anderen
Randbedingungen, die man in der DDR formal für die Prüfung vorweisen
musste, vor allem damit, dass man eigentlich hätte als SWL an einem
Contest teilnehmen sollen und ein Diplom erwerben.  Den Contest habe
ich dann als 2-Stunden-Contest (des Bezirks Halle, würde man wohl
heute als Distrikts-Contest bezeichnen) "abgedrückt", ein Diplom habe
ich aber nie erworben.  Irgendwann habe ich mich doch entschlossen,
trotzdem zur Prüfung zu gehen, und siehe da, diese Formalien haben
keinen interessiert.  Allerdings gab's dann 1980 schon keine DM-Calls
mehr, also habe ich Y43TL bekommen …  Das durfte ich aber im
vereinheitlichten Deutschland nicht mehr behalten, obwohl dieses Land
durchaus den Block Y2 … Y9 nach wie vor nicht wieder rausgerückt hat.

> Dateien wie gewünscht anbei. Von welcher weiteren Version möchtest Du
> Protokolle?

Die Arduino-5.4 gegen die aktuelle 5.11, allerdings bitte -vvvv, also
viermal ein 'v'.

von Vinz V. (vinz)


Angehängte Dateien:

Lesenswert?

Hallo Jörg,

hoppla, ich hab den Schein erst 1996 in Nürnberg gemacht. War nicht 
leicht, weil ich überhaupt keinen OM im Bekanntenkreis hatte...
Seit her haben sie das Verfahren ja deutlich vereinfacht.


Anbei wieder wie gewünscht: Arduino-5.4 gegen 5.11.
Jetzt weiss ich auch, was Du mit "viel" meinst.
Die 5.11 habe ich kompiliert.

Habe extra einen 5.11er Test gemacht, in dem ich die Arduino-Config 
lade. Gleiches negatives Ergebnis.

Btw: Es gibt mehrere 5.11 Versionen.
avrdude-5.11.tar.gz  27-Aug-2011 21:22
avrdude-5.11.1.tar.gz  16-Sep-2011 11:12
avrdude-5.11svn-20111019.tar.gz  19-Oct-2011 09:20

Vinz

von Vinz V. (vinz)


Angehängte Dateien:

Lesenswert?

sorry, hier mit -vvvv

Spielt das hier (beim kompilieren) eine Rolle?
1
$ ./configure | grep lusb
2
checking for usb_get_string_simple in -lusb... no
3
checking for libusb_init in -lusb-1.0... no
4
checking for libusb_init in -lusb... no

Sollte ja nicht, weil wir "direkt" auf einen ComPort zugreifen.

Vinz

von FrankH (Gast)


Lesenswert?

Nabend, gibt es eigentlich schon neue Erkenntnisse zu dem Problem?
Gruß
Frank

von Vinz V. (vinz)


Lesenswert?

Hallo Frank,

entschuldige bitte, dass es noch keine Antwort gab.

Bei mir läuft es (wie oben beschrieben) weiterhin mit dem aktuellen 
CrossPack-AVR, bei dem ich den avrdude ersetzt habe durch die Version 
5.4-arduino.

Sonst nichts Neues von mir. Demnächst probiere ich hier noch einen 
AVRDragon aus.

Vinz

von Achim M. (minifloat)


Lesenswert?

Vinz Vinz schrieb:
> Spielt das hier (beim kompilieren) eine Rolle?
> $ ./configure | grep lusb
> checking for usb_get_string_simple in -lusb... no
> checking for libusb_init in -lusb-1.0... no
> checking for libusb_init in -lusb... no

Wenn du einen USB-Programmer wie usbasp oder usbisp oder avrisp mkII 
benutzt, ja. Kann aber auch sein, dass der Build dann eben nicht 
durchläuft oder versehentlich eine verbuggte Version erzeugt wird.

Ich hab mir hier eine astreine 5.11.1er Version mit USB-Unterstützung 
bauen können. Die hab ich mir über MacPorts rein geholt, der erledigt 
mir dann auch die ganze "Dependency Hell". Damit schonmal probiert?
mfg mf

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.