55_PIFACE.pm @ Raspbian Jessie mit wiringPI Paket: anderer Pfad zu gpio

Begonnen von Patrik.S, 01 März 2016, 21:47:23

Vorheriges Thema - Nächstes Thema

Patrik.S

Der RaspberryPI musste mit einem neuen Image komplett neu aufgesetzt werden. Dazu wurde die Raspbian Jessie ISO vom 2016-02-09 genommen.
Darin enthalten ist eine wiringPI Installation über ein Paket.
Somit ist keine Installation aus den Sourcen nötig, der Pfad zu dem Binary ist nun aber anders.

FHEM 5.7 wurde über die agt-get Installationsvariante installiert.

Die 55_PIFACE.pm hat beim Starten dann im 10 Sekunden Takt das Logfile mit Fehler vollgeschrieben.
Hier nur eine Beispielzeile:
PERL WARNING: Can't exec "/usr/local/bin/gpio": Datei oder Verzeichnis nicht gefunden at ./FHEM/55_PIFACE.pm line 236.

Ich habe in der 55_PIFACE.pm nun alle Pfade von /usr/local/bin/gpio auf /usr/bin/gpio geändert.

Da dies bei einem nächsten Fhem Update wieder überschrieben wird der Wunsch, dass das Modul entweder
1. Automatisch überprüft, wo die gpio zu finden ist und diesen Pfad dann nutzt.
So ungefähr nach der Art:

if test -x /usr/local/bin/gpio  --> cmd = /usr/local/bin/gpio
elsif test -x /usr/bin/gpio  --> cmd = /usr/bin/gpio
else --> print "error: install wiringPI first"


2. Pfadangabe zur der gpio Binary über ein Property in der fhem.cfg, das wäre aber nicht die schönste Variante

Bei der Gelegenheit wäre es schön, wenn in das Modul diese Zeile eingebaut wird
no if $] >= 5.017011, warnings => 'experimental::smartmatch';
um die Logfileeinträge bei Start wegzubekommen:
Smartmatch is experimental at ./FHEM/55_PIFACE.pm line 156, <$fh> line 122.

betateilchen

3. der User auf seinem Betriebssystem einfach einen symbolischen Link anlegt, wenn er die Fehlermeldung im Log findet...

ln -s /usr/bin/gpio /usr/local/bin/gpio

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Patrik.S

Ja, der symbolische Link ist zwar auch eine Lösung, aber kein "Plug&Play" für eine einfache Nutzung.
Es gibt auch Leute da draußen, die übertrieben formuliert nicht erst einen Kernel Sourcecode Kurs machen wollen, nur um mal ein Hobbyprojekt zu starten.
Man muss die Menschen abholen...
Einfache Software == zufriedene Nutzer




betateilchen

Zitat von: Patrik.S am 01 März 2016, 22:29:26
aber kein "Plug&Play" für eine einfache Nutzung.

niemand hat behauptet, fhem sei einfach zu nutzen  8)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!