Hallo,
ich habe seit 12.04 ein Problem mit dem udev rules. Unter anderem tritt es bei dem AVR ISP MK2 auf.
| avrdude -pt13 -c avrisp2 -P usb
|
meldet permission denied. Nur mit sudo habe ich Zugriff.
in /etc/udev/rules.d/60-avrisp.rules steht
| SUBSYSTEM!="usb_device", ACTION!="add", GOTO="avrisp_end"
# Atmel Corp. JTAG ICE mkII
ATTR{idVendor}=="03eb", SYSFS{idProduct}=="2103", MODE="660", GROUP="dialout"
# Atmel Corp. AVRISP mkII
ATTR{idVendor}=="03eb", SYSFS{idProduct}=="2104", MODE="660", GROUP="dialout"
# Atmel Corp. Dragon
ATTR{idVendor}=="03eb", SYSFS{idProduct}=="2107", MODE="660", GROUP="dialout"
LABEL="avrisp_end"
|
| groups
pioupus adm dialout cdrom sudo dip plugdev users lpadmin sambashare
|
Diese Konfiguration funktionierte ohne Problem auf 10.04.
1
2
3
4
5
6
7
8
9
10
11
12
13 | lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 006: ID 0c45:6426 Microdia
Bus 002 Device 002: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 003 Device 002: ID 03eb:2104 Atmel Corp. AVR ISP mkII
Bus 003 Device 003: ID 413c:8187 Dell Computer Corp. DW375 Bluetooth Module
Bus 004 Device 002: ID 1cb6:6651
Bus 001 Device 008: ID 2457:101e
|
Hat sich etwas wichtiges in udev seit 10.04 geändert, wodurch diese Regel nicht mehr funktioniert?
Viele Gruesse Pioupus
Hat niemand eine Idee? Mir brennt das Problem ein wenig auf den Nägeln.
Viele Grüße,
Pioupus
Ich vermute, dass eins (oder mehrere) der Schlagworte nicht mehr stimmen, d.h. jetzt mit 12.04 anders lauten:
SUBSYSTEM!="usb_device"
ATTR{idVendor}
SYSFS{idProduct}
udev hilft dir, mit lsusb, udevadm den neuen Stand anzuzeigen.
Hast du die bisherige udev Regel selbst erstellt ? Wenn du alle Ausgabe hier postest, sollte es möglich sein, eine neue udev Regel zu finden.
Ich habe die Regel aus http://www.mikrocontroller.net/articles/AVRDUDE
Welche Ausgaben könnten denn interessant sein?
Viele Grüße,
Pioupus
pioupus schrieb:
Welche Ausgaben könnten denn interessant sein?
wie im Artikel udev beschrieben, mit lsusb und udevadm. Hier sind auch einige Beispiele gezeigt, wie man sich rantastet.
Wenn du den schon den genauen Device Namen von deinem USB Gerät kennst, bekommst du mit folgendem Befehl
udevadm info --query=all --attribute-walk --name=/dev/DEIN-GERÄT
die nötigen Infos, um damit dann die neue udev Regel zu schreiben.
Habe ähnliche Probleme gehabt.....
den entscheidenen Tip habe ich hier gefunden
http://www.mikrocontroller.net/topic/226307
habe in der Datei
/lib/udev/rules.d/69-libmtp.rules
die fast letzte Zeile
ENV{ID_MTP_DEVICE}!="1", ENV{MTP_NO_PROBE}!="1", ENV{COLOR_MEASUREMENT_DEVICE}!="1", ENV{libsane_matched}!="yes", ATTR{bDeviceClass}=="00|02|06|ef|ff", PROGRAM="mtp-probe /sys$env{DEVPATH} $attr{busnum} $attr{devnum}", RESULT=="1", SYMLINK+="libmtp-%k", MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
auskommentiert:
dann ein
| sudo service udev restart
|
hinterher gejagt,
den usb stecker raus und rein.
hatte nen AVR-Net-IO mit nem m644 dran hängen
| avrdude -c avrispmkII -p m644 -P usb -vvv
|
Ausgabe (gekürzt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 |
Using Port : usb
Using Programmer : avrispmkII
avrdude: usbdev_open(): Found AVRISP mkII, serno: 0000A0012855
avrdude: usbdev_open(): using read endpoint 0x82
avrdude: stk500v2_getsync(): found AVRISP mkII programmer
Programmer Type : STK500V2
Description : Atmel AVR ISP mkII
Programmer Model: AVRISP mkII
Hardware Version: 0
Firmware Version Master : 1.17
Vtarget : 4.8 V
SCK period : 8.00 us
|
Danach konnte ich auch endlich unter ubuntu programieren...
u1000 schrieb:
Ich vermute, dass eins (oder mehrere) der Schlagworte nicht mehr stimmen, d.h. jetzt mit 12.04 anders lauten:
SUBSYSTEM!="usb_device"
ATTR{idVendor}
SYSFS{idProduct}
Korrekt!
Sollte jetzt klappen.
TausB
Super! Das ist es gewesen. Woher hast du die Info? Damit ich das nächste mal selber nachschlagen kann.
Dann Habe ich noch ein kleines Problem mit udev:
Ich würde gerne der Profilic Serielle Schnittstelle und dem GPS jeweils immer einen eindeutigen Namen geben. Nur leider benutzt auch das GPS den Profilic Chipsatz, sodass ich mit Vendor:Product keinen eindeutigen Namen zuweisen kann.
Ist es möglich, den Namen ttyUSBx an den USB Pfad zu koppeln? Also Port 1 an Hub 2 ist ttyUSB0 und Port 2 an Hub 2 ttyUSB1?
Viele Grüße,
Pioupus
Hab in der google suche "03eb:2104 ubuntu" eingegeben.
Der Link zu Mikrokontroler hat das Problem in einer älteren version beschrieben.
Mußte dann nur noch die Datei finden. Hatte jetzt eine andere Zahl. Und die Zeile stimmte nicht mehr.
Ich denke mal das eine unbekantere Hardware jetzt ignorierd wird....