[LinkUSB] OWX: 1-Wire bus 1wire: interface not found, answer was

Begonnen von Jojo11, 29 Dezember 2013, 17:16:48

Vorheriges Thema - Nächstes Thema

Jojo11

Hallo zusammen,

ich betreibe einen LinkUSB über einen mit einer eigenen Stromversorgung versehenen USB-Hub an einem Raspberry Pi. An dem Hub hängt zudem noch ein JeeLink. An dem LinkUSB betreibe ich 3 DS18B20 Temperatursensoren. Bisher hat das alles zuverlässig funktioniert. Seitdem ich einen RFXtrx am zweiten Port des Raspberry Pi betreibe (dieser soll/kann nicht über hubs betreiben werden), funktioniert der LinkUSB nach einem Neustart des Raspberries nicht mehr. Stattdessen erhalte ich folgende Fehlermeldung:

2013.12.29 11:37:12.623 3: Opening 1wire device /dev/ttyUSB-FHEM0
2013.12.29 11:37:12.635 3: Setting 1wire baudrate to 9600
2013.12.29 11:37:12.680 3: 1wire device opened
2013.12.29 11:37:12.681 1: OWX: Serial device /dev/ttyUSB-FHEM0 defined
2013.12.29 11:39:45.812 1: OWX: 1-Wire bus 1wire: interface not found, answer was

Das ganze System ist dann ca. 5 Minuten blockiert, bevor es ohne 1-wire weiterläuft.
Die USB-Geräte habe ich über entsprechende udev-Regeln eindeutig zugeordnet.

Abhilfe bringt nur ein entfernen und wieder anschließen des LinkUSB. Nach einem "Shutdown restart" läuft das System bis zum nächsten reboot des Raspberries. Der Raspberry selber hat vor Kurzem ein leistungsfähiges Netzgerät spendiert bekommen, so dass ich die Stromversorgung eigentlich ausschließen kann.
Ein ähnliches Thema wurde hier https://groups.google.com/forum/#!topic/fhem-users/W5NnYUcOc8w schon einmal diskutiert, anscheinend aber ohne Ergebnis.
Gibt es dafür eine andere Lösung als die hardware (LinkUSB) zu tauschen?

schöne Grüße
Jo

Joachim

Moin Jo,
Die Forensuche hätte geholfen, udev ist Dein Freund.

OWX unterhält sich mit Deinem RFXtrx, der gibt allerdings nicht die richtigen Antworten
Die USB-Schnittstelle wurde falsch zugeordnet.

Gruß Joachim

FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Jojo11

Hallo Joachim,

wie geschrieben habe ich entsprechende udev-Regeln definiert, nach denen den drei USB-Geräten die entsprechenden Zuordnungen ttyUSB-FHEM0, ttyUSB-FHEM1, ttyUSB-FHEM2 gegeben werden, über die sie auch angesprochen werden können. Für jedes Gerät habe ich eine solche Definition:
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A702GG8P", SYMLINK+="ttyUSB-FHEM1"

Wie kann ich diese Zuordnung denn berichtigen?

schöne Grüße
Jo

Joachim

ZitatWie kann ich diese Zuordnung denn berichtigen?
Was willst Du berichtigen?
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Jojo11

Zitat von: Joachim am 29 Dezember 2013, 21:30:00
Was willst Du berichtigen?

Du schreibst, die USB-Schnittstelle sei falsch zugeordnet. Das würde ich gerne berichtigen.
Wie kann ich denn verhindern, dass OWX sich mit dem RFXtrx unterhält?

schöne Grüße
Jo

Joachim

Indem du das define von owx entsprechend anpasst.

define Name OWX /dev/ttyUSB-FHEMxx
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Jojo11

Aber genau das habe ich gemacht

define 1wire OWX /dev/ttyUSB-FHEM0
attr 1wire buspower real


Es funktioniert ja auch. Nur leider nicht mehr nach einem Neustart des Raspberry  :-\

schöne Grüße
Jo

Joachim

FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Jojo11

Zitat von: Joachim am 29 Dezember 2013, 22:19:17
Was sagt:
ls -al /dev|grep ttyUSB

crw-rw---T  1 root dialout 188,   0 Dez 29 22:23 ttyUSB0
crw-rw---T  1 root dialout 188,   1 Jan  1  1970 ttyUSB1
crw-rw---T  1 root dialout 188,   2 Dez 29 22:19 ttyUSB2
lrwxrwxrwx  1 root root           7 Dez 29 11:40 ttyUSB-FHEM0 -> ttyUSB2
lrwxrwxrwx  1 root root           7 Jan  1  1970 ttyUSB-FHEM1 -> ttyUSB1
lrwxrwxrwx  1 root root           7 Jan  1  1970 ttyUSB-FHEM2 -> ttyUSB0

schöne Grüße
Jo

Joachim

Also der Symlink funktioniert.
Weshalb es nach einem Reboot nicht geht ist mir schleierhaft.
Gibt es irgendwelche Hinweise in den Logs?
Sowohl FHEM, als auch syslog, messages, dmesg vom Raspberry?
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Jojo11

Ok, danke erstmal. Ich werde mich mal auf die Suche begeben.

schöne Grüße
Jo

Jojo11

Zitat von: Joachim am 29 Dezember 2013, 22:19:17
Was sagt:
ls -al /dev|grep ttyUSB

Ich verstehe es nicht. Wenn ich den RPi mehrmals neustarte und nur diesen Befehl ausführe, bekomme ich mal

crw-rw---T  1 root dialout 188,   0 Dez 30 18:30 ttyUSB0
crw-rw---T  1 root dialout 188,   1 Dez 30 18:33 ttyUSB1
crw-rw---T  1 root dialout 188,   2 Jan  1  1970 ttyUSB2
lrwxrwxrwx  1 root root           7 Jan  1  1970 ttyUSB-FHEM0 -> ttyUSB1
lrwxrwxrwx  1 root root           7 Jan  1  1970 ttyUSB-FHEM1 -> ttyUSB2
lrwxrwxrwx  1 root root           7 Jan  1  1970 ttyUSB-FHEM2 -> ttyUSB0


aber manchmal auch sowas wie


crw-rw---T  1 root dialout 188,   0 Dez 30 18:13 ttyUSB0
crw-rw---T  1 root dialout 188,   1 Jan  1  1970 ttyUSB1
crw-rw---T  1 root dialout 188,   2 Dez 30 18:13 ttyUSB2
lrwxrwxrwx  1 root root           7 Jan  1  1970 ttyUSB-FHEM0 -> ttyUSB2
lrwxrwxrwx  1 root root           7 Jan  1  1970 ttyUSB-FHEM1 -> ttyUSB2
lrwxrwxrwx  1 root root           7 Jan  1  1970 ttyUSB-FHEM2 -> ttyUSB0


Ich dachte eigentlich, dass die udev-rules dafür sorgen, dass z.B. ttyUSB2 nicht doppelt belegt werden kann  :-\
Woran könnte das denn liegen?

schöne Grüße
Jo

Joachim

FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232

Jojo11

Eigentlich schon, wobei sich zwei Geräte nur durch die Seriennummer unterscheiden:

# LinkUSB:
ATTRS{idVendor}=="1d6b", ATTRS{idProduct}=="0002", ATTRS{serial}=="bcm3808_usb", SYMLINK+="ttyUSB-FHEM0"
# JeeLink:
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A702GG8P", SYMLINK+="ttyUSB-FHEM1"
# RFXTRX433:
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="A1WTYAGI", SYMLINK+="ttyUSB-FHEM2"

schöne Grüße
Jo

Joachim

Ui, nun wird es interessant.
Ich hätte eigentlich erwartet, dass sich "ttyUSB-FHEM1" und "ttyUSB-FHEM2" streiten.

Da werden wir jetzt wohl beide mal Onkel google befragen müssen.
Wer zuerst die Lösung hat, hat gewonnen.

Gruß Joachim
FHEM aktuellste Version auf FB 7570 und 7390 mit Zebradem Toolbox Freetz
FHEM auf Raspberry
1-Wire mit LinkUSBi und Rs-Pi ds2482-800  1-Wire-9 Board; Max mit Cube, HMLAN
div. 1-Wire Sensoren; MAX-Thermostaten; Homematic-Komponenten, Zehnder KWL über RS-232