FHEM Forum

FHEM - Hardware => Server - Linux => Thema gestartet von: Jojo11 am 04 Januar 2014, 17:59:09

Titel: Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Jojo11 am 04 Januar 2014, 17:59:09
Hallo zusammen,

ich habe FHEM bisher auf einem Raspberry unter wheezy betrieben. Da dieser allerdings zur Zeit mit Stabilitätsproblemen zu kämpfen hat, habe ich einen PC mit Ubuntu 13.04 zum FHEM-Server umfunktioniert. Soweit läuft auch alles sehr gut - und besonders schnell im Vergleich. Leider kann ich aber auf keinerlei USB-Geräte zugreifen (JeeLink, RFXtrx). Als normaler user erhalte ich die Fehlermeldung "Can't open /dev/ttyUSB0: Keine Berechtigung", obwohl ich den user der Gruppe dialout hinzugefügt habe. Starte ich FHEM als su, kann das entsprechende device zwar erkannt werden, aber dann erhalte ich folgende Meldung:
"Can't open /dev/ttyUSB0: Unpassender IOCTL (I/O-Control) für das Gerät"
Dies ist unabhängig davon, welches von den beiden Geräten ich anschließe. Unter wheezy funktioniert die selbe Konfiguration einwandfrei  :-\
Gefunden habe ich bisher diesen bug, aber geholfen hat es nicht: https://bugs.launchpad.net/ubuntu/+source/gtkterm/+bug/949597 (https://bugs.launchpad.net/ubuntu/+source/gtkterm/+bug/949597)
Hat evtl. jemand unter Ubuntu ähnliche Schwierigkeiten?

schöne Grüße
Jo
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Rohan am 04 Januar 2014, 18:41:27
Hallo Jo,

bist du dir sicher, die richtigen Gerätenamen zu verwenden ("/dev/ttyUSB0")?

Zieh mal bitte deine USB-Geräte ab, und (bei neueren Linus-Distries heißt das dann wohl jetzt so) in einer Konsole-Sitzung


sudo tail -f /var/log/syslog


und mach mal den Guttenberg (Copy&Paste) aller ab dem Anstöpseln erscheinenden Meldungen im Konsolenfenster.

Ich glaube, die Dev-Namen lauten eher so wie /dev/ttyA....

Gruß
Thomas

Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Jojo11 am 04 Januar 2014, 18:55:46
Hallo Thomas,

das ergibt dann


Jan  4 18:52:00 ServerA kernel: [ 3467.983639] usb 4-2: Number of endpoints 2
Jan  4 18:52:00 ServerA kernel: [ 3467.983647] usb 4-2: Endpoint 1 MaxPacketSize 64
Jan  4 18:52:00 ServerA kernel: [ 3467.983653] usb 4-2: Endpoint 2 MaxPacketSize 64
Jan  4 18:52:00 ServerA kernel: [ 3467.983660] usb 4-2: Setting MaxPacketSize 64
Jan  4 18:52:00 ServerA kernel: [ 3467.986559] usb 4-2: FTDI USB Serial Device converter now attached to ttyUSB0
Jan  4 18:52:00 ServerA kernel: [ 3467.989201] usbcore: registered new interface driver ftdi_sio
Jan  4 18:52:00 ServerA kernel: [ 3467.989213] ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
Jan  4 18:52:00 ServerA gpsd.hotplug: add /dev/ttyUSB0
Jan  4 18:52:00 ServerA gpsdctl: gpsd_control(action=add, arg=/dev/ttyUSB0)
Jan  4 18:52:00 ServerA gpsdctl: launching gpsd  -F /var/run/gpsd.sock


Ein
ls -al /dev|grep ttyUSB
ergibt

crw-rw-rw-   1 root dialout   188,   0 Jan  4 18:52 ttyUSB0
lrwxrwxrwx   1 root root            15 Jan  4 18:51 ttyUSB-FHEM1 -> bus/usb/004/003

In den udev-Rules habe ich das entsprechend so eingerichtet, um dieses Gerät immer unter ttyUSB-FHEM1 erreichen zu können.

schöne Grüße
Jo
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Rohan am 04 Januar 2014, 19:36:24
Hallo Jo,

hmmm... ich bin (erst) bei (k)ubuntu 12.04.3 LTS und werde da auch noch 'ne Weile bleiben. Mein bisheriger Umgang mit udev bestand darin, bei manueller Einflussnahme auf die Devices auch immer gleich die Rechte auf 666 zu setzen. Warum dein symbolischer Link Rechte wieder nur für root/root hat müsstest du wissen.

Und warum (d)ein gps-Dämon (gpsd.hotplug) die Finger da mit drin hat, kannst auch nur du wissen.

Gruß
Thomas

Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Jojo11 am 04 Januar 2014, 19:58:50
Hallo Thomas,

in den udev-Rules habe ich die Rechte schon auf 666 gesetzt.
Die root/root-Rechte waren auf dem RPi ähnlich: http://forum.fhem.de/index.php/topic,18056.msg120114.html#msg120114 (http://forum.fhem.de/index.php/topic,18056.msg120114.html#msg120114) Deswegen habe ich das (noch) nicht hinterfragt. Ich bin aber auch wirklich kein Linux-Experte  :-[
Das mit dem gps-Dämon kann ich mir nicht erklären. Das werde ich mal genauer unter die Lupe nehmen.

schöne Grüße
Jo
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Rohan am 04 Januar 2014, 23:08:34
Hi Jo,

Zitat von: Jojo11 am 04 Januar 2014, 19:58:50... Das mit dem gps-Dämon kann ich mir nicht erklären. Das werde ich mal genauer unter die Lupe nehmen. ...

tue das, denn ich vermute, dass hier ein Dämon/Dienst die USB-Schnittstelle exclusiv belegt (Link (http://gpsd.berlios.de/troubleshooting.html)).

Gruß
Thomas
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Jojo11 am 05 Januar 2014, 10:05:00
Hallo Thomas,

ein komplettes Entfernen dieses GPS-Dämons hat leider auch keine Besserung gebracht.
sudo chmod o+rw /dev/ttyUSB-FHEM1
hat immerhin schonmal den Fehler mit der permission behoben, wenn gleich ich das eigentlich schon eingegeben hatte  ???
Allerdings kommt nun im FHEM-logfile wieder
Can't open /dev/ttyUSB-FHEM1: Inappropriate ioctl for device
Wieder die gleiche Meldung für beide Geräte.

schöne Grüße
Jo
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Rohan am 05 Januar 2014, 13:26:08
Hallo Jo,

ich würde jetzt erst mal den ganzen Sermon rund um "/dev/ttyUSB-FHEM1" zurücknehmen und den generischen Zugriff bis hin zu Fhem ans laufen bringen. Da sind zu viele Folgefehler-Möglichkeiten und eine Fernwartung gänzlich unmöglich, weil ich deine udev-Aktionen nicht nachvollziehen kann bzw. kenne.

Wenn das dann mit einem USB-Device funktioniert, könnte man die Erstellung eines eindeutigen symbolischen Links wieder angehen, fertig stellen und danach dann das nächste USB-Device konfigurieren.

Welche libusb-Version(en) hast du installiert?
Steckst du die USB-Devices an USB 3 Ports?

Gruß
Thomas
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Jojo11 am 05 Januar 2014, 15:17:43
Hallo Thomas,

ja, das werde ich mal machen.
Folgende Versionen habe ich installiert:

libusb-0.1-4 - Userspace USB-Programmierbibliothek
libusb-1.0-0 - Userspace USB-Programmierbibliothek
libusb-1.0-0-dev - userspace USB programming library development files


USB 3.0 kann ich definitiv ausschließen - dafür ist der Rechner zu alt  :-\

schöne Grüße
Jo
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Wernieman am 06 Januar 2014, 11:22:07
Kleiner Hinweis wegen der Rechte im Link:
Dieses sind die rechte des links, nicht die Zugriffsrechte auf die "Zieldatei". Das der link root-Gehört liegt daran, das udev Ihn anlegt. Aber nur User mit den rechten der "Zieldatei" können Zugreifen.

Nur zur Behebung von "Verständigungsproblemen"
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Jojo11 am 06 Januar 2014, 18:29:35
Kleines update: Ich habe die symbolischen Links deaktiviert und die ursprünglichen Adressen ttyUSB0/1 verwendet. Seitdem funktioniert alles bestens. Jetzt werde ich mal versuchen zu verstehen, warum die symbolischen Links auf dem RPi funktionieren, auf dem Ubuntu-System aber nicht.

schöne Grüße
Jo
Titel: Antw:Ubuntu 13.04 ttyUSBx-Problem
Beitrag von: Wernieman am 06 Januar 2014, 20:07:00
Kleiner Tip:
bei meinem gentoo findet man die "Device" auch unter: /dev/serial/by-id/

Da sie dort mit Seriennummer, sond sie Eindeutig .. und ich brauchte UDEV nicht anpassen. Weiß jetzt aber nicht, ob Ubuntu schon so weit ist ...