Hallo,
da man durchaus den Durchblick verlieren kann, wollte ich jedem FTDI
Adapter (Chip) in /dev einen eigenen Namen geben,
Also in /etc/udev/rules.d/10-ftdi.rules folgendes eingetragen:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403",ATTRS{idProduct}=="6001",
GROUP="dialout", MODE="0777",
ATTRS{serial}=="A1WV5UVG",SYMLINK+="USBISP-A"
Danach /etc/init.d/udev restart
und ...
wird immer noch unter /dev/ttyUSB0 eingebunden.
Ich habe schon einige Seiten zu diesem Thema durch und auch diverse
Konfigurationen ausprobiert, aber keine funktioniert -> immer ttyUSB0
Die korrekten Daten idVendor usw. sind auch eingetragen.
Hat jemand mal eine Beispielkonfiguration die mit
Debian Buster, Kernel 4.17.0-1-amd64 funktioniert?
PS:
Das seltsame ist, daß es früher (älteres System) mal funktioniert hat.
Dann mal Linux neu aufgespielt und die Regel für FTDI erstmal nicht
eingerichtet.
Nur jetzt funktioniert die Regel nicht mehr.
Jogibär
Überprüfe mit "udevadm monitor -u -p", ob die Werte richtig sind. Michael J. schrieb: > Danach /etc/init.d/udev restart Adapter neu eingestöpselt?
> wird immer noch unter /dev/ttyUSB0 eingebunden
Natürlich. Und wenn die Regel korrekt ist erzeugst Du einen Symlink
namens 'USBISP-A'.
Hallo, der Tipp von Clemens (udevadm monitor -u -p") hat die Ursache geklärt. Ich war es von früher gewohnt, daß in Syslog beim einstöpseln mit der richtigen Regel die Ausgabe /dev/USBISP-A erscheint. Es erscheint aber jetzt anscheinend immer nur die Angabe /dev/ttyUSB0. Wenn die Regel stimmt, dann wir zusätzlich der Link /dev/USBISP-A angelegt. Darüber gibt es keine Meldung. Sonst habe ich immer unter /dev nachgeschaut, ob die Regel funktioniert; mich nachher auf die Ausgabe im Syslog verlassen. Daher war ich fälschlicherweise der Meinung, daß die Regel nicht erkannt wurde. Danke nochmals an Alle! Jogibär
Hallo,
ich muß das Thema noch mal aufmachen.
Ich habe immer sporadisch das Problem, daß mir der Zugriff auf den Link
verweigert wird. Darum habe ich mal gesucht, woran das liegen kann.
udev Regel:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403",ATTRS{idProduct}=="6001",
GROUP="dialout", MODE="0666",
ATTRS{serial}=="ADYHAQ83",SYMLINK+="USBISP-B"
Teil wird eingestöpselt:
(/dev)
ls ttyUSB0 ; ls USBISP-B
crw-rw-rw-+ 1 root plugdev 188, 0 Mai 20 21:27 ttyUSB0
lrwxrwxrwx 1 root root 15 Mai 20 21:27 USBISP-B -> bus/usb/001/028
Link von USBISP-B geht zu bus/usb/001/028
Gerät und Link sind da, Zugriff über ttyUSB0 funktioniert; über den Link
USBISP-B erzeugt z.B. avrdude:
"avrdude: ser_open(): can't set attributes for device "/dev/USBISP-B":
Inappropriate ioctl for device"
Beim Zugriff über QT serialport das selbe (nur zum testen).
Gerät wieder ausgestöpselt, dann
rmmod ftdi_sio
rmmod usbserial,
Gerät wieder eingestöpselt:
ls ttyUSB0 ; ls USBISP-B
crw-rw-rw-+ 1 root plugdev 188, 0 Mai 20 21:36 ttyUSB0
lrwxrwxrwx 1 root root 7 Mai 20 21:36 USBISP-B -> ttyUSB0
Jetzt geht der Link von USBISP-B direkt zu ttyUSB0, und der Zugriff
funktioniert über ttyUSB0 und USBISP-B
Wie bekomme ich dieses Verhalten weg?
Ich will nicht jedesmal die Kernelmodule vor dem anstöpseln händisch
rauswerfen.
Ich vermute, die werden beim einstecken von dem Gerät neu geladen und
dann
funktioniert auch der Link; nur wenn diese vor dem einstöpseln schon
geladen sind, funktioniert der Link nicht (kein Zugriff).
Man kann bestimmt über udev beim anstöpseln ein Script zum rauswerfen
der Kernelmodule ausführen, aber ich möchte erstmal den Grund für dieses
Verhalten finden.
Hat jemand mal eine Idee?
Danke Euch
Jogibär
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.