Die müssen nicht ,,erkannt'' werden: avrdude setzt auf der libusb
auf, und die benötigt nur das USB-Framework des Systems, nicht aber
irgendwelche gerätespezifische Treiber.
Das lsusb-Kommando sollte dir die Teile anzeigen, z. B. (hier für
ein JTAG ICE mkII):
1 | % lsusb
|
2 | Bus 003 Device 001: ID 0000:0000
|
3 | Bus 002 Device 007: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
|
4 | Bus 002 Device 006: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
|
5 | Bus 002 Device 005: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
|
6 | Bus 002 Device 004: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
|
7 | Bus 002 Device 003: ID 05e3:0604 Genesys Logic, Inc.
|
8 | Bus 002 Device 001: ID 0000:0000
|
9 | Bus 001 Device 064: ID 03eb:2103 Atmel Corp.
|
10 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
11 | Bus 001 Device 049: ID ffff:0000
|
12 | Bus 001 Device 043: ID 0409:0059 NEC Corp. HighSpeed Hub
|
13 | Bus 001 Device 001: ID 0000:0000
|
Die Gerätedateien dafür liegen bei Linux leider nicht unter /dev,
sondern sie sind unter /proc/bus/usb/BBB/DDD (BBB - Busnummer, DDD -
Gerätenummer) vergraben. Normalerweise darf da nur root schreibend
zugreifen, und da sie bei jedem Anstecken neu vergeben werden
bzw. nach dem Abmelden der Software vom ICE/Dragon sich diese Geräte
neu am USB anmelden, hat ein chmod/chown keinen Sinn. Falls du die
Eigentümerschaft permanent ändern willst, geht das irgendwie über das
udev-System. Zur Not mal in einer Linux-Gruppe nachfragen, wie man
das macht.
Bei avrdude gibst du als Port nur -P usb bzw. -P usb:<serno> an, mit
letztgenannter Methode kann man mehrere Geräte an Hand ihrer
Seriennummer unterscheiden. Nur die letzten Stellen müssen dabei
angegeben werden. Um zu sehen, welche Seriennummern im System
vorhanden sind, kann man als Trick eine nicht existierende Nummer
(z. B. -P usb:xxx) angeben und noch ein -v dazu, dann werden die
gefundenen Geräte der Reihe nach aufgelistet:
1 | % avrdude -p m2561 -c jtag2 -P usb:xxx -v
|
2 |
|
3 | avrdude: Version 5.3.1, compiled on Apr 18 2007 at 09:39:24
|
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 "/user/jwunsch/.avrduderc"
|
8 | User configuration file does not exist or is not a regular file, skipping
|
9 |
|
10 | Using Port : usb:xxx
|
11 | Using Programmer : jtag2
|
12 | avrdude: usbdev_open(): Found JTAGICE mkII, serno: 00B000000901
|
13 | avrdude: usbdev_open(): did not find any (matching) USB device "usb:xxx"
|