RaspberryPi: Cannot load module LIRC

Begonnen von Megapit, 20 September 2013, 20:09:42

Vorheriges Thema - Nächstes Thema

Megapit

Hallo Forum!

Ich hab gesucht und nix gefunden, deshalb muss ich mal das Forum befragen:

Ich hab einen RaspberryPi Fhem Server in einer Testumgebung am laufen. Lirc ist eingerichtet und IRW gibt mir auch munter die Tastendrücke raus. Aber FHEM will einfach nicht. Beim speichern der fhem.cfg kommt immer Cannot load module LIRC.

Das habe ich in der cfg drinne ("Schalter" ist dabei ein Homematic-Aktor):
#Lirc Init
define Lirc LIRC /etc/lirc/lircrc
define IrOne notify Lirc:IrOne set Schalter toggle


Nun noch ein Auszug aus der LOG:
2013.09.20 19:54:23 1: reload: Error:Modul 00_LIRC deactivated:
 Can't locate Lirc/Client.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/00_LIRC.pm line 8, <$fh> line 44.
BEGIN failed--compilation aborted at ./FHEM/00_LIRC.pm line 8, <$fh> line 44.

2013.09.20 19:54:23 0: Can't locate Lirc/Client.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/00_LIRC.pm line 8, <$fh> line 44.
BEGIN failed--compilation aborted at ./FHEM/00_LIRC.pm line 8, <$fh> line 44.

2013.09.20 19:54:23 2: HMLAN_Parse: HMLAN1 new condition disconnected
2013.09.20 19:54:23 3: Opening HMLAN1 device 192.168.0.45:1000
2013.09.20 19:54:23 3: HMLAN1 device opened
2013.09.20 19:54:23 2: HMLAN_Parse: HMLAN1 new condition init
2013.09.20 19:54:23 1: Including ./log/fhem.save


Da steht zwar "Error:Modul 00_LIRC deactivated", aber wie activiere ich es?

Ich kann zwar gut mit Computern, aber Linux kriege ich nur mit Anleitungen hin.

Ich hoffe es kann mir jemand helfen.

Peter

betateilchen

Zitat von: Megapit schrieb am Fr, 20 September 2013 20:09Da steht zwar "Error:Modul 00_LIRC deactivated", aber wie activiere ich es?

Gar nicht. Das Modul wird deaktiviert, weil die Voraussetzungen für eine Aktivierung nicht gegeben sind.
Die Ursache steht doch klipp und klar in Deinem Log - Du musst nur lesen?

Can't locate Lirc/Client.pm

Da fehlt Deinem Perl das entsprechende Modul, um überhaupt zu wissen, was Lirc ist.
Mit fhem hat das erstmal überhaupt noch nichts zu tun. Und mit "Linux nur mit Anleitung" eigentlich auch nicht.

Lesen der Dokumentation würde da schon völlig ausreichen. In der commandref zu LIRC steht ausdrücklich:

Note: this module needs the Lirc::Client perl module.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Megapit

Danke für die Antwort.

Vielleicht mal ein Hinweis am Rande: Die Deutsche Commandref funktioniert nicht immer (zumindest bei Lirc). Also benutze ich ab jetzt die Englische.

Ich war davon ausgegangen, dass mit der Installation von Lirc und Fhem alles was ich brauche Installiert ist.
Zwar weiß ich immer noch nicht, wo ich dieses Perl Modul her bekomme, aber das finde ich schon noch raus. Hier im Forum meine Fragen zu stellen traue ich mich wegen der Antwort mit erhobenen "RTFM Zeigefinger" schon nicht mehr.  ;)

Gruß
Peter

betateilchen

Zitat von: Megapit schrieb am Sa, 21 September 2013 08:10Hier im Forum meine Fragen zu stellen traue ich mich wegen der Antwort mit erhobenen "RTFM Zeigefinger" schon nicht mehr.  ;)

Quatsch. Aber die commandref ist definitiv die wichtigste Grundlage, die man sich aneignen sollte, wenn man zu einem bestimmten Bereich ein Problem hat. Und solche Grundsatzthemen wie "zusätzlich benötigte Module" stehen dort eigentlich immer drin.

Zitat von: Megapit schrieb am Sa, 21 September 2013 08:10Vielleicht mal ein Hinweis am Rande: Die Deutsche Commandref funktioniert nicht immer (zumindest bei Lirc). Also benutze ich ab jetzt die Englische.
Works as designed. Eine englische Doku MUSS in jedem Modul vorhanden sein, die dann automatisch in der commandref enthalten ist, eine deutsche Doku KANN/darf vorhanden sein, ist aber nicht zwingend notwendig, damit ein Modul fester Bestandteil von fhem wird.

Zitat von: Megapit schrieb am Sa, 21 September 2013 08:10Zwar weiß ich immer noch nicht, wo ich dieses Perl Modul her bekomme, aber das finde ich schon noch raus.
http://search.cpan.org/~mgrimes/Lirc-Client-1.54/lib/Lirc/Client.pm


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

Megapit

Danke! Hatte es schon gefunden. Steht ja auch bei Lirc direkt unter Software. Allerdings hat das pure kopieren  des Moduls nicht geholfen. Hab es dann laut README installiert. Leider muste ich dabei auch erstmal das Build-Modul auf den neuesten Stand heben.

ZitatWorks as designed. Eine englische Doku MUSS in jedem Modul vorhanden sein.
Na ja. Ein Fallback auf Englisch, wenn Deutsch nicht vorhanden ist, wäre ja auch ne passende Erweiterung von Fhem, aber da gibt es sicher andere Baustellen;)


Eins hab ich allerdings noch. Ich würde gerne wie in der Comandref beschrieben
If you want a faster reaction to keypresses you have to change the defaultvalue of readytimeout from 5 seconds to e.g. 1 second in fhem.pl die Reaktionszeit der IR-Befehle verbessern. Ich finde allerdings nur die beiden Zeilen in der fhem.pl die passend wären.use vars qw($readytimeout); # Polling interval. UNIX: device search only
$readytimeout = ($^O eq "MSWin32") ? 0.1 : 5.0;
Wie lautet der korrekte Syntax um die Variable mit 0.5s zu initialisieren?


Gruß
Peter

betateilchen

teste mal

$readytimeout = ($^O eq "MSWin32") ? 0.1 : 0.5;
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Megapit

Hi zusammen

Ist keine Antwort zu obigen Thema, aber ....

Bei meinem Raspberry hat's die SD zerlegt und ich habe alles erneut installiert. Gott sei Dank hatte ich ein aktuelles Backup!
Beim installieren von Lirc bin ich schon wieder hängengeblieben und habe bei der Lösungssuche meinen eigenen Thread gefunden.  ;)

Damit ich beim nächsten Mal nicht nochmal alles austüfteln muss, schreibe ich meinen Weg jetzt mal als Antwort an diesen alten Thread  8)

Das Lirc-Perl Modul 2.00 was unter http://www.lirc.org/software.html zu finden ist bekomme ich nicht zum laufen.  Ich habe deshalb dieses hier genommen: http://search.cpan.org/~mgrimes/Lirc-Client-1.54/lib/Lirc/Client.pm

Nach dem entpacken kann man in der README nachlesen, wie es installiert wird. Vor dem ausführen der Build-Befehle muss man jedoch noch Build installdeps ausführen. Das installiert einen ganzen Haufen Software, die ich zwar nicht deuten kann, wohl aber gebraucht wird.

Dann halt wie in der Readme geschrieben:
perl Build.PL
./Build
./Build test
./Build install


dann läuft auch der Lirc wieder.

so, jetzt kann der Thread bis zum nächsten mal weiterschlafen ;)

Marcy

Habs "zu Fuss" gemacht. Schau mal hier in meinen Fred http://forum.fhem.de/index.php/topic,23646.0.html und da das angehängte HowTo.