AVR isp MKII mounten in Linux

OP #2235577
Lesenswert?

Hallo!

Ich habe den USB MK2 von Atmel. Dieser funktioniert unter Win 
einwandfrei mit AVRstudio zusammen.

Problem:
Unter Ubuntu versuche ich mit make den AVRDUDE ans laufen zu bekommen. 
Ich muss den 'AVRDUDE_PORT' angeben.

Ich hatte gehofft, dass ich dort sowas wie /dev/ttyUSB1 eintragen 
könnte...
Leider wird mein MK2 nicht als solcher gemountet, sondern ist in der 
var/log/messages nur als folgendes zu finden:

usb2-4: new full speed USB device using ohci_hcd and address 2


damit kann ich nicht viel anfangen und weiß nicht, was ich im make 
angeben muss.

Danke für Antworten!
#2235778
Lesenswert?

Timo P. schrieb:
> usb?
>
>  ....
>
> nein ich suche quasi eine Möglichkeit, meinen Rechner das device
> automatisch als dev.... mounten zu lassen. Denn nur dann kann ich doch
> dieses device auch in der makefile als soches angeben....(für avrdude)

Das ist ein Mißverständnis. Mounten muss man Filesysteme, also z.B. 
sowas wie USB-Sticks. Bei USB-Geräten ist es von der Geräteklasse 
abhängig, ob die einen Eintrag unter /dev bekommen (die 
USB-Seriell-Adapter bekommen sowas), das ist aber nicht zwingend, und 
auch nicht unbedingt notwendig um mit einem USB-Gerät zu 
kommunizieren.

avrdude weiß, wie man ohne sowas klarkommt, man muss ihm nur sagen, dass 
er es via USB versuchen soll. Mit meinem MKII-Clone geht das so:
1
avrdude -c avrisp2 -P usb -p m644 ...

Da ist also keine explizite Angabe einer Device-Datei notwendig.

Viele Grüße,
        Simon
Persönliche Seite #2235786
Lesenswert?

Ich benutzte den MKII auch unter Ubuntu, allerdings in Eclipse.

Dort wird im avrdude-Kommando als Device-Parameter
-P usb:XX:XX
angegeben, wobei XX:XX die letzten beiden Bytes der Seriennummer (HEX) 
sind (siehe Aufkleber).

Bei mir gab es dann noch Probleme mit den Zugriffsrechten als normaler 
User, da half es schließlich, eine udev-Regel anzulegen, die den Zugriff 
auch normalen Usern erlaubt. Bei google findet man einiges dazu.

Gruß,
Vincent
#2235787
Lesenswert?

Timo P. schrieb:
> automatisch als dev.... mounten zu lassen

das macht dein Rechner bestimmt schon.
Stichworte wären "udev", das ein nach /dev gemountetes tmpfs verwaltet,
oder usbfs, üblich automatisch nach /proc/bus/usb gemountet, das alle 
usb-devicenodes enthält.

Und das beste daran: bei echten USB (sprich: nicht USB->RS232) Geräten 
musst du dich nicht darum kümmern. avrdude sucht sich schon selber das 
richtige USB-Device heraus.

lass die "-P" Option mit Parameter ersatzlos weg oder versuch -P usb.
Moderator Persönliche Seite #2235796
Lesenswert?

Timo P. schrieb:
> usb?
>
>  ....
>
> nein ich suche quasi eine Möglichkeit, meinen Rechner das device
> automatisch als dev.... mounten zu lassen. Denn nur dann kann ich doch
> dieses device auch in der makefile als soches angeben....(für avrdude)

Simon hat das ja schon richtig beschrieben. Allerdings kannst Du das, 
was Du möchtest, auch tun (z.B. um ohne avrdude ein USB-Gerät mit 
Bootloader anzusprechen oder zwei AVRISPmkII gleichzeitig zu verwenden).

Der passende Dienst, den Du dafür benötigst ist "udev".

Im Prinzip schaut der in seinen Konfigurationsdateien nach, ob er zum 
gerade angestöpselten USB-Gerät einen passenden Eintrag (Hersteller, ID, 
usw.) findet und verknüpft dann das neue Gerät mit dem angegebenen 
/dev-Eintrag.
Insbesondere kann man dort auch die Gruppe und den Eigentümer und die 
Rechte angeben - man möchte ja nicht immer jedem Zugriff geben :-)

Z.B. habe ich folgenden Eintrag in "meiner" Datei unter
/etc/udev/rules.d/ (dort findet man zumindest unter Debian die 
Konfigurationsdateien):

# AVRISP mkII - Programmiergerät für Mitglieder der Gruppe "avrisp" 
freigeben
ATTR{idVendor}="03eb" ATTR{idProduct}="2104", MODE="0660", 
GROUP="avrisp", SYMLINK+="avrispmkii"

Diese Zeile legt beim Einstecken des avrispmkii das Gerät 
"/dev/avrispmkii" mit den angegebenen Eigenschaften an.

Näheres findet sich - wie immer - unter "man udev" ;-)

Chris D.

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