Atmel ATm32U4DFU ohne tty unter Ubuntu 13.10

Gast #3497777
Hallo zusammen!

Mein breakout (Atmel Mega32u4) bereitet mir seit einigen Tagen 
Kopfzerbrechen.

Unter Windows mit den Treibern und nem brauchbaren Terminalemulator ist 
alles wie es sein soll, unter Ubuntu verweigert es mir allerdings die 
Kooperation.

Nach dem ich das Board über USB (usb-serial converter) an den Rechner 
angeschlossen habe und mit "dmesg|tail" nach dem rechten schaue, zeigt 
sich schonmal der Ansatz:

usb 3-1: new full-speed USB device number 7 using uhci_hcd
usb 3-1: New USB device found, idVendor=03eb, idProduct=2ff4
usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 3-1: Product: ATm32u4DFU
usb 3-1: Manufacturer: ATMEL
usb 3-1: SerialNumber: 1.0.0

Erkennung ja, aber keine tty zugewiesen

"dmesg|grep tty" fördert folgendes zu Tage:

console [tty0] enabled
00:0b: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
cdc_acm 1-4:1.1: ttyACM0: USB ACM device
cdc_acm 1-4:1.3: ttyACM1: USB ACM device
cdc_acm 1-4:1.9: ttyACM2: USB ACM device

auch hier kein Hinweis auf irgendeine Zuweisung

"modprobe usbserial vendor=0x03eb product=0x2ff4" bleibt auch 
Ergebnislos



Vielleicht kann mir jemand hier den entscheidenden Tipp geben ;)
Moderator Persönliche Seite #3498086
Der DFU ist eine "vendor specific class", da bekommst du kein Terminal
dafür.

Kannst du AVRDUDE aus dem SVN bauen?  Ich habe gerade vor ein paar Tagen
den Code für FLIPv2 (hatte jemand anders beigesteuert, der ist für die
Xmegas) eingecheckt und davon dann FLIPv1 abgeleitet (AT90USB*, 
ATmega*U*).

Allerdings ist FLIPv1 ein teilweise sehr eigenwilliges Protokoll, 
weshalb
ich in der Doku auch ein paar Sätze dazu hinterlassen habe.  Wenn der
Bootloader aktiviert wird, klebt er erst einmal in einem "security 
mode".
In diesem Modus kannst du nichts machen außer die Konfiguration zu lesen
(die bei den AVRs dafür benutzt wird, dass man das Äquivalent der
Signature ermitteln kann).  Danach musst du erst einmal unbedingt einen
"chip erase" anwerfen, erst danach kommst du an die Speicherbereiche
heran (Flash und EEPROM).  Witzigerweise wurde der EPROM aber bei meinem
AT90USB1287 nicht gelöscht.

Um das Übel komplett zu machen, lässt sich nach dem chip erase dann
oftmals die Signatur nicht mehr korrekt lesen, sondern ergibt 3 x 0xff.
(Manchmal klappt es aber, keine Ahnung, wovon das abhängt.)  Musst du
dann avrdude ... -F nehmen, um den Signaturcheck abzuschalten.

Solange du normal nur avrdude -c flip1 -p atmega32u4 -U filename.elf
anwirfst, wirst du von alldem übrigens gar nicht so viel merken, denn
ein -U zum Beschreiben des Flashs impliziert ohnehin ein vorheriges
chip erase.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.