FHEM Forum

FHEM => Ankündigungen => Thema gestartet von: Dr. Boris Neubert am 10 März 2018, 14:24:26

Titel: 1-Wire mit OWServer: update lib/OWNet.pm
Beitrag von: Dr. Boris Neubert am 10 März 2018, 14:24:26
Hallo,

aufgrund der Meldungen hier:

https://forum.fhem.de/index.php/topic,85211.0.html (https://forum.fhem.de/index.php/topic,85211.0.html)
https://forum.fhem.de/index.php/topic,35726.msg541104.html#msg541104 (https://forum.fhem.de/index.php/topic,35726.msg541104.html#msg541104)
https://forum.fhem.de/index.php/topic,81197.msg749516.html#msg749516 (https://forum.fhem.de/index.php/topic,81197.msg749516.html#msg749516)

habe ich das mit FHEM ausgelieferte Perl-Modul lib/OWNet.pm auf die aktuelle Version gebracht. Damit sollte FHEM mit dem owfs-Paket 3.1 unter Debian Stretch und Derivaten (Ubuntu, Raspbian) funktionieren. Möglicherweise sind auch Inkompatibilitäten bei Verwendung von älteren owfs-Paketen behoben.

Wer nach dem Update Probleme hat, kann lib/OWNet.pm mit

https://svn.fhem.de/fhem/tags/FHEM_5_8/FHEM/lib/OWNet.pm (https://svn.fhem.de/fhem/tags/FHEM_5_8/FHEM/lib/OWNet.pm)

wieder auf den vorherigen Zustand zurücksetzen.

Meldungen zu den Auswirkungen bitte im Board "1-wire".

Viele Grüße
Boris
Titel: Antw:1-Wire mit OWServer: update lib/OWNet.pm
Beitrag von: Dr. Boris Neubert am 18 März 2018, 15:36:53
Weil OWNet.pm aus 3.1p5 mit owserver 2.8pl17 nicht funktioniert, habe ich OWServer so angepasst, dass
automatisch verwendet wird. Eingecheckt am 18.03.2018, verfügbar auf svn.fhem.de (http://svn.fhem.de) sofort und morgen im Update.

Meldungen dazu bitte im Board "1-wire".
Titel: Antw:1-Wire mit OWServer: update lib/OWNet.pm
Beitrag von: Dr. Boris Neubert am 21 März 2018, 20:39:23
Aktualisierung aufgrund Problemen mit der Verteilung der OWNet-Module und der Inkompatibilität gewisser OWNet-Versionen mit owserver-Versionen ab morgen verfügbar. Aus der CommandRef:

Zitatdefine <name> OWServer <protocol> [<version>]

Definiert eine logische OWServer-Instanz, die sich mit einem owserver verbindet. owserver ist die Serverkomponente des 1-Wire Dateisystems. Sie ermöglicht den Zugriff auf alle 1-Wire-Busteilnehmer eines Systems. <protocol> hat das Format <hostname>:<port>. Nähere Informationen dazu gibt es in der owserver Dokumentation.

Die OWServer-Instanz verwendet OWNet.pm von Sourceforge, um sich mit dem owserver zu verbinden. Gegenwärtig werden OWNet-Module für die Versionen 2.8p17 and 3.1p5 mit FHEM verteilt. Man kann manuell weitere Versionen hinzufügen, indem man OWNet.pm aus einer der verfügbaren Versionen extrahiert und als FHEM/lib/OWNet-<version>.pm in der FHEM-Verzeichnisstruktur speichert.

Die erste Verbindung mit dem owserver wird mit der Version 3.1p5 aufgebaut, es sei denn, dass man ausdrücklich eine andere Version mit dem optionalen Parameter <version> vorschlägt. Man sollte eine OWNet-Modulversion vorschlagen, die der tatsächlichen Version von owserver entspricht, falls FHEM nach dem Verbindungsaufbau zum owserver hängt.

Die OWServer-Instanz erkennt die Version von owserver automatisch und wählt das passende OWNet-Modul aus der Liste der verfügbaren OWNet-Module aus. Wenn kein passendes OWNet-Modul gefunden wird, wird die ursprünglich vorgeschlagene Version verwendet. Die alptraumhafte Situation mit zwei OWServer-Instanzen, die sich mit owserver-Instanzen in unterschiedlichen Versionen verbinden, wird nicht korrekt gehandhabt. Die Versionen von Server und Modul werden zum Nachschauen in den Internals der OWServer-Instanz gespeichert.