As you might have read, I am constructing a FHEM-based solution to switch on my floor heating system. For preparation, I needed to control power plugs via FHEM.
Despite there are many ready-to-use products like FS20 to do that, I was searching for a really cheap solution, which means about 10€/plug instead of 50€. Then i noticed pilight.
After some googling, I found a blog which uses these very cheap power plugs found in nearly every supermarket nowadays:
Intertechno Funksteckdosen 3 fach Set IT-1500
Switching these plugs is usually done via remote control, but I wanted it via my raspberry pi:
Raspberry Pi Model B – Mainboard – 512 MB RAM, RASPBERRY PI TYPE B
With a GPIO port found at the raspberry, we can build a DIY 433Mhz transceiver/receiver, see the blog.
Having the hardware set up ready, we can proceed installing pilight to send messages to the plugs like
pilight-send -p kaku_switch -i 4762303 -u 0 -t
to switch on a plug.
Now, to control these plugs from FHEM an actor device is much more comfortable than a script execution. Therefore, I decided to write a module for pilight.
You can download the code from github.
The installation is pretty easy:
- Install pilight and ensure the service is running
- Copy the 98_pilight.pm into your FHEM folder
- Create a pilight device (example):
define HeizungBuero pilight kaku_switch
attr HeizungBuero housecode 4762303
attr HeizungBuero unitcode 1
- Switch on/off the device using FHEMWEB or the andFHEM app
If you have questions, please use the comment field below. If you need more protocols or found a bug, please go directly to github and file a issue there. Thanks!
Update 10/2014
The currently supported version of pilight is 5.0!
Update 12/2014
I have created a table of supported and tested hardware: . Thanks to all testers!
Lieber Andreas,
zunächst einmal vielen Dank für das module. Hat auf Anhieb geklappt.
Allerdings funktionieren elro Schalter nicht.:
pilight-send -p elro -i 1 -u 1 -t .
Interessanter Weise auch nicht in pilight. Hast Du eine Idee?
Darüberhinaus habe ich noch eine andere Frage. Kann man auch pilight Sensoren z.B. dht22 in FHEM integrieren?
Beste Grüße W
(PS. Zu Deinem Tweet: Die Kosten der Haftpflichtversicherung “meiner” 5 Beleghebammen (alle arbeiten freiberuflich), werden durch die Klinik übernommen! Ein für alle optimales Modell.
Gleich nochmal:
elro funktioniert doch, s statt i für housecode.
Beispiel: pilight-send -p elro -s 1 -u 1 -t
W
Hallo,
ich hatte parallel eine zweite Anfrage, da sich die Parameter anderer Protokolle wohl unterscheiden. Ich schaue mir das und und dann gibt es ein Update.
Bekomme es nicht hin meine Elro Funksteckdose per pilight zu schalten.
Was muss ich anstelle der 1 bei -s und -u eintragen?
Meine DIPs stehen wie folgt: Hauscode: 11010 und dann A, B und C.
Hallo Marcel,
es gibt für andere Protokolle schon einen Bugeintrag, ich werde das sobald wie möglich angehen. Dann sollte auch zB Elro funktionieren https://github.com/andreas-fey/fhem-pilight/issues/1
Hallo Andreas,
dank dir.
Kannst mich / uns ja auf dem laufenden halten.
Ich hoffe mein neuer Empfänger kommt die Tage.
Dann bekomme ich es hoffentlich hin.
Hallo,
teste mal die neuste Version. Elro sollte jetzt funtionieren.
Hallo,
leider kommt beim Laden des Moduls in FHEM
cannot load modul pilight
reload: Error:Modul 98_pilight deactivated:
Unrecognized character \xC2; marked by <– HERE after at master <– HERE near column 53 at ./FHEM/98_pilight.pm line 11, line 77.
2014.01.24 21:33:20 0: Unrecognized character \xC2; marked by <– HERE after at master <– HERE near column 53 at ./FHEM/98_pilight.pm line 11, line 77.
Sorry, funktioniert nach erneutem herunterladen von github
Hello
Thanks for creating this Pilight module. I have problem adding pilight devices. I get this error in Fhem logfile after “Define”-command
“Unrecognized character \xC2; marked by <– HERE after at master <– HERE near column 53 at ./FHEM/98_pilight.pm line 11."
Can you help me?
Hi Tuomas,
please try to re-download the script from GitHub, an other user seems to had the same problem. Maybe the encoding of the file gets broken.
Hello Andreas
Thank you for the quick reply.
I removed the file and re-downloaded it and reboot after that but it’s still not working. It gives me the same error in the log-file.
Are you sure you downloaded the files via https://github.com/andreas-fey/fhem-pilight/archive/master.zip ?
Ok, now it’s working.
Previously I downloaded only the .pm-file from Github and it didn’t work. But now I downloaded the zip-file and extracted it and now it works.
I’m a noobie with Linux and the Raspberry but I’m learning more while doing things.
Thank you for your help.
Hello
I updated pilight to v3.0 and this Fhem module stopped working. Do you know why?
Hi,
can you please send me some logs what is happening when you switch a pilight device?
Hi, gute Arbeit!
Leider hab ich ein Verbindungsproblem bei pilight v3.0:
2014.02.26 19:04:26 3: pilight command: off
2014.02.26 19:04:26 3: pilight: ERROR. Can't open socket to pilight-daemon: Verbindungsaufbau abgelehnt
[Feb 26 19:00:33:727292] pilight-daemon: INFO: new client, ip: 192.168.10.11, port: 36931
[Feb 26 19:00:33:729151] pilight-daemon: INFO: client recognized as sender
[Feb 26 19:00:33:731021] pilight-daemon: INFO: client disconnected, ip 192.168.10.11, port 36931
Irgendein Tip?
Gruß Tim
Hallo,
konnte die 3.0er bisher leider noch nicht testen, aber bei dir scheint es schon Probleme beim Verbindungsaufbau zu geben; bist du sicher, dass dein pilight daemon auf dem selben Gerät und auf Port 5000 läuft?
Hi, ja hab alles auf Standard gelassen.
Bin leider auf die 3.0 angewiesen.
Sieht so aus, als ob er beim socket recieve aussteigt…
Hallo Tim,
ich denke, es liegt daran, dass pilight überhaupt nicht richtig startet weil deine settings noch nicht auf die neue Version angepasst wurden. Stoppe und Starte mal den pilight daemon manuell und schau in die logs und versuche dich ggf. mal mit telnet darauf zu verbinden.
Hallo,
ich habe jetzt das Modul aktualisiert; es funktioniert nun auch mit pilight 3.0
Hi
I opened a thread in the pilight forum about pilight webgui not working.
http://forum.pilight.org/Thread-Invalid-pilight-3-0-doesn-t-work-with-the-old-config
I solved it with updating the config file. So now the pilight Webgui works but not fhem.
Hi Tuomas,
I changed the module to work with pilight 3.0. Please see the lastest commit.
Hi, danke für das update.
Leider geht es immer noch nicht:
pilight-log:
[code]
[Mar 01 11:45:21:597397] pilight-daemon: INFO: new client, ip: 192.168.10.11, port: 51169
[Mar 01 11:45:21:599646] pilight-daemon: INFO: client recognized as sender
[Mar 01 11:45:21:603300] pilight-daemon: INFO: client disconnected, ip 192.168.10.11, port 51169
[Mar 01 11:45:35:997465] pilight-daemon: INFO: new client, ip: 192.168.10.11, port: 51171
[Mar 01 11:45:35:999674] pilight-daemon: INFO: client recognized as sender
[ Mar 01 11:45:36:3740] pilight-daemon: INFO: client disconnected, ip 192.168.10.11, port 51171
[Mar 01 11:45:42:315017] pilight-daemon: INFO: new client, ip: 192.168.10.11, port: 51172
[Mar 01 11:45:42:316030] pilight-daemon: INFO: client recognized as sender
[Mar 01 11:45:42:317124] pilight-daemon: INFO: client disconnected, ip 192.168.10.11, port 51172
[/code]
fhem-log:
[code]
2014.03.01 11:43:48 3: pilight command: on
2014.03.01 11:43:48 3: pilight: ERROR. Can’t open socket to pilight-daemon: Connection refused
[/code]
gruß
tim
Hallo,
ich denke, das liegt zu 99,9% daran, dass pilight selbst nicht korrekt startet.
Stoppe den Daemon mal auf kommandozeile (sudo /etc/init.d/pilight stop) und versuche ihn wieder zu starten (sudo /etc/init.d/pilight start), da wird garanitiert eine Fehlermeldung ausgegeben.
pilight läuft ohne Probleme. Also schalten geht ohne Probleme, pimatic funktioniert, das senden von temperaturdaten per python-script an den pilight-deamon funktioniert auch.
Keine Fehler beim Starten im debugmodus oder im log.
Könnte es nicht am ssdp protocol liegen?
Sehr komisch; hattest du die neuste Version ausprobiert? Sonst schalte vielleicht mal alle Loglevel höher und schick mir die Logs mal. Bei mir funktioniert es jetzt mit pilight3 einwandfrei…
Hallo Andreas,
Brauche für pilight noch das Intertechno_old protokoll.
Beispiel einer Eingabe am PI:
Aus => sudo pilight-send -p intertechno_old -i 1 -u 2 -f
An => sudo pilight-send -p intertechno_old -i 1 -u 2 -t
Das Intertechno protokoll sollte ja mit dem kaku_switch kompatibel sein und funktionieren oder?
Kann man auch Wettersensor Daten aus Pilight auslesen und in fhem darstellen?
Habe da einen Aldi Sensor 433Mhz angebunden und würde diesen gerne in fhem verarbeiten und anzeigen.
Gruß Peter
Hallo,
ja, die Protokolle sollten analog funktionieren. Ersetze in meinen Beispielen einfach mal kaku_switch durch intertechno_old.
Das Auslesen der Werte geht bisher noch nicht, ich habe dazu einen JeeLink Stick (Siehe meine anderen Beiträge). Aber ich schau es mir bei Gelegenheit mal an.
So wie das in 98_pilight.pm steht kann man kaku_switch nicht einfach durch intertechno_old ersetzen.
kaku_switch benutzt attr housecode, das wird bei intertechno_old in der source nicht ausgewertet, da wird $systemcode gesendet. Eine Intertechnodose mit Hauscode A, Kanal 8 musste ich so definieren:
define Drucker pilight intertechno_old
attr Drucker unitcode 0
attr Drucker systemcode 7
Ist das so gewollt, oder gehen da noch Parameter durcheinander? Aus der Dokumentation konnte ich das nicht entnehmen, ich hab musste mir das FHEM-Modul anschauen. Das Ganze müsste man wohl mal für die einzelnen Protokolle mal genauer dokumentieren.
Hi,
ich habe die Doku nochmal verbessert.
Hallo Andreas,
vielen Dank auch von mir für das tolle Modul und deine Arbeit.
Mich würde auch interessieren ob es möglich ist bzw. geplant ist pilight-receive Daten mit deinem Modul in FHEM ein zu binden.
Habe einen Wetterstationaussensensor welcher mit pilight-receive auch die Temperatur und Luftfeuchtigkeit empfängt. Schön wäre es eben die Daten noch in FHEM darstellen zu können.
Gruß
Christian
Hi, zunächst danke für das pilight Modul.
Ich habe heute meine ersten Versuche mit fhem gemacht, und konnte erfolgreich meine bereits laufende pilight instanz in ein frisch installiertes fhem (5.5) integrieren.
Die Einträge im Logfile sehen so aus:
2014.04.01 21:44:53 3: pilight command: off
2014.04.01 21:44:53 3: pilight data: { "message": "send", "code": {"protocol":[ "elro_hc" ],"systemcode":14, "unitcode":23,"off":1}}
Nach einem “update” in der fhem Befehlszeile und anschließendem “shutdown restart” funktioniert das pilight-Modul jedoch nicht mehr:
2014.04.01 22:25:12 3: pilight command: off
2014.04.01 22:25:12 3: pilight data: { "message": "send", "code": {"protocol":[ "elro_hc" ],}}
Scheinbar gibt fhem die Optionen nicht mehr an das pilight Modul weiter. Aber wie behebe ich das?
Hi, das hört sich danach an, als ob du vor dem Reboot die Attribute nicht gespeichert hast (auf der Webseite oben links “Save config” drücken); schau doch mal, ob sie in deinem fhem.cfg File stehen.
Hi, ich würde gerne Dein Modul in FHEM verwenden. Könntest Du das “silvercrest” Protokoll hinzufügen? Wäre super! Danke!
Marcel
Ist integriert. Bitte mal testen!
Ist jetzt integriert. Bitte mal testen!
Hi, super Modul. Leider klappt es bei mir noch nicht richtig.
pilight funktioniert super, ich kann meine Steckdosen mit
pilight-send -p pollin -s 9 -u 8 -f/t
ein und aus schalten.Leider klappt das mit dem Modul noch nicht. Im Log steht folgendes (verbose 0)
Im pilight log wird kein Eintrag gemacht.
Der daemon läuft lokal ohne veränderte Einstellungen, pilight-send und -receive funktionieren einwandfrei. Hier nochmal meine fhem Einstellung
Achja, ich habe die aktuelle Version von Github
Schau mal die anderen Kommentare durch, das Problem hatten schon einige, lag meist daran, dass die GitHub-Datei verkehrt heruntergeladen wurde oder beim Download was anderes schief ging.
So, nachgesehen, in /opt/fhem/fhem.cfg sind meine Einstellungen noch enthalten:
define LeseEcke pilight elro_hc
attr LeseEcke room Wohnzimmer
attr LeseEcke systemcode 14
attr LeseEcke unitcode 23
Woran könnt es noch liegen?
Alles roger, hab nochmal ein git clone gemacht und nun gehts wieder. Was auch immer da los war…
Hallo,
ich hab alles wie beschrieben installiert. Jetzt bekomme ich beim Senden eines Befehls im LogFile immer folgende Meldung angezeigt:
pilight: ERROR. No handshake with pilight-daemon. Received:
Woran kann das liegen?
Hi,
hast du die Datei von GitHub gecloned oder via Copy&Paste heruntergeladen? Notfalls clone wiederholen. Läuft Pilight auf dem Standardport und auf dem gleichen Gerät? Kannst du dich via Telnet auf den Pilight Server verbinden?
Hallo Andreas,
erstmal danke für das super Modul. Leider bekomme ich meine Brennenstuhl Steckdosen damit nicht geschaltet (laut pilight-receiver pollin protocol). Über Pilight-send funktioniert es auch einwandfrei. Aber unter fhem bekomme ich im log folgendes:
pilight: ERROR. Can’t open socket to pilight-daemon: Connection refused
meine definition sieht folgendermaßen aus:
define HIGHBOARD_LICHT pilight pollin
attr HIGHBOARD_LICHT protocol pollin
attr HIGHBOARD_LICHT room Test
attr HIGHBOARD_LICHT systemcode 19
attr HIGHBOARD_LICHT unitcode 1
Sollte das nicht funktionieren?
Gruß
Jens
Hallo, sollte schon. Schau mal hier, ob was für dich dabei ist: https://github.com/andreas-fey/fhem-pilight/issues/3
Hallo Andreas,
also ich habe die 98_pilight.pm nicht per Hand runter geladen, sondern einfach über die offizielle fhem update Funktion geholt. Ist ja soweit ich weiß eingecheckt?
Und pilight läuft auf demselben pi wie fhem (habe nur einen Pi)
Ich habe allerdings pilight nicht selber dompiliert sondern die Anleitung auf pilight.org für die “Stable Version Through Apt” genommen.
Gruß
Jens
… so ich habe jetzt über
https://github.com/andreas-fey/fhem-pilight/archive/master.zip
die aktuelle Version runtergelassen und in FHEM eingebunden..
geht leider immer noch nicht… 🙁
Hallo Andreas,
hast Du das pilight Modul für fhem schon mit der aktuellen pilight Version 4.0 getestet?
Ich habe noch kein Update durchgeführt, und benutze noch die 3.0 .
Es schein bei der Version 4.0 ein paar Änderungen zu geben:
http://www.pilight.org/post/pilight-40-1
Bevor ich ein Update durchführe, würde ich gern Deine Erfahrungen damit wissen.
Gruß
Jens
Hallo,
habe ich noch nicht getestet; die Releasezyklen von pilight sind ja verdammt kurz. Ich schau mir das bei Gelegenheit an.
Hallo Jens,
habe gerade auf pilight 4.0 aktualisiert und es scheint alles wie gewohnt zu laufen.
VG
AF
Hallo Andreas,
Das ist ja super. Ich hab bisher noch 3.0, werde dann aber auch Updaten.
Ich wollte meine aussensteckdose mit der 3.0 schalten das klappte aber nicht. Es ist eine homeeasy hs833 von Elro.
Mal sehn ob es mit der 4.0 geht.
Gruß
Jens
Hallo Andreas,
ich habe folgendes Problem, (meine Systemumgebung: Raspi, pilight 4.0 (version Fhem 5.3),
die Verbindung per Telnet 127.0.0.1 5000 geht, per pilight_send geht auch, und per WEB geht auch, nur per FHEN geht es nicht, hier meine config:
define Schalter2 pilight pollin
attr Schalter2 room Arbeitszimmer
attr Schalter2 housecode 13
attr Schalter2 unitcode 2
Funktioniert
pilight-send -p pollin -P 5000 -s 13 -u 2 –on
meine Fehlermeldung im fhem log:
pilight command: on
pilight: ERROR. No handshake with pilight-daemon. Received: >>><<<
Was mache ich falsch ??
Hallo Olaf,
leider ändert sich gerade jeden Monat bei den neuen pilight Releases das Interface; Version 4.0 scheint so nicht zu funktionieren. Kannst du es mit mit 3.0 testen? Ich weiss noch nicht, wann ich zum Umbau für 4.0 komme.
Ok ich Versuch mal V3 zu testen, dann melde ich mich noch mal.
Dank für die Antwort
Olaf
Hallo Andreas ich habe leider ein kleines Problem ich finde den Download der Version 3 von pilight nicht, kannst du mir da weiter helfen ?
Hallo,
da musst du dir wohl in dem GIT Repository die korrekte Version raussuchen. Ich habe aber zwischenzeitlich mal getestet, Version 4.0 geht bei mir auch.
Hallo,
leider kann ich das Problem bestätigen, wenn ich den Daemon auf Port 5000 laufen lasse, reagiert FHEM eine Zeit lang nicht mehr und ich erhalte
pilight command: on
pilight: ERROR. No handshake with pilight-daemon. Received: >>><<<
sudo pilight-send -p elro_he -s 31 -u 1 -i F10 -t funktioniert.
BTW warum kann ich eigentlich pilight-send nit mit SUID laufen lassen, ich erhalte immer "etc/pilight/settings.json" nicht lesbar.
Das Gleiche tritt bei mir auch auf. Von Version 3 auf Version 4 ist bei pilight wohl etwas an der Message-Länge geändert worden. Ich befürchte, dass das Probleme verursacht.
Inzwischen ist eine Beta von pilight 5 schon abrufbar. Wäre es sinnvoll Version 4 auszulassen und das FHEM-Modul für pilight gleich auf Version 5 zu heben?
Hallo,
sehr komisch, dass das bei mir lokal geht. Ihr benutzt die 98_pilight Version aus dem GitHub, nicht die aus FHEM?
Versucht mal, die Zeile
my $data = ‘{ “message”: “client sender” }’;
durch
my $data = ‘{ “message”: “client sender” }\n\n’;
zu ersetzen, wahlweise auch durch
my $data = ‘{ “message”: “client sender” }\n’;
Wenn sich danach die Fehlermeldung ändert, bitte Bescheid geben!
Zwischendurch freue ich mich, wenn ich mal auf die tolle und nützliche Werbung oben rechts klickt 🙂
Ich habe eben nochmal die aktuellste Version aus dem Git geladen und die Änderungen gemacht, aber leider ändert sich dadurch an den Fehlermeldungen nichts. 🙁
Wie kann ich PIR sensor definieren in Fhem?
Ich bekome signal aus pilight vie:
“code”: {
“id”: 5,
“state”: “on”
},
“origin”: “receiver”,
“protocol”: “selectremote”,
“uuid”: “0000-00-00-cd-b7d56e”,
“repeats”: 13
Hallo,
bisher werden nur Switches in dem pilight Modul unterstützt. Welche, siehst du in der Hilfe.
Auch bei mir leider keine Änderung:
Ich verwende allerdings pilight 5.0 , bei dem Tempo ist es wohl schwierig Schritt zu halten…
Habe jetzt auch auf 5.0 geupdatet und kann das Problem nachvollziehen. Ich melde mich…
Also,
das Modul an sich funktioiniert. Man muss nur darauf achten, dass man den Port von pilight in der Konfiguration fest auf 5000 setzt:
http://www.pilight.org/getting-started/settings/
Also ich habe folgende Änderungen im pilight-Modul gemacht:
my $remote_ip = AttrVal($name, “remote_ip”, ‘10.0.1.228’);
my $remote_port = AttrVal($name, “remote_port”, ‘5001’);
Das ist die IP-Adresse von meinem Raspi und der Port, auf dem bei mir PiLight läuft. Damit läuft’s aber leider nicht bei mir. 🙁
Ich habe das Logins etwas erweitert, vielleicht hast Du noch eine Idee:
2014.06.19 22:51:29 3: pilight command: on
2014.06.19 22:51:29 3: pilight: VERA. Remote_ip:
2014.06.19 22:51:29 3: 10.0.1.228
2014.06.19 22:51:29 3: pilight: VERA. Remote_port:
2014.06.19 22:51:29 3: 5001
2014.06.19 22:51:29 3: pilight: VERA. Socket erfolgreich geöffnet
2014.06.19 22:51:29 3: pilight: VERA. Folgende Daten weden verschickt:
2014.06.19 22:51:29 3: { “message”: “client sender” }
2014.06.19 22:52:00 3: pilight: ERROR. No handshake with pilight-daemon. Received: >>><<<
Schau mal hier: https://github.com/andreas-fey/fhem-pilight/issues/3
Jetzt hab’ ich den Port-Eintrag gefunden (hatte ihn mit dem Webserver-Port verwechselt), aber es will einfach trotzdem nicht bei mir. Telnet funktioniert, aber das FHEM-Modul läuft immer noch auf den gleichen Fehler.
Ich denke ich werde es aufgeben und versuchen irgendwie anders zu integrieren.
Trotzdem Danke für Deine Hilfe! 🙂
Vera
Hi ich bin echt interessiert an deinem Module allerdings hab ich ein Problem damit. Ich hatte pillight schon soweit eingerichtet und das funktioniert auch super, allerdings verwende ich das Protokoll “Mumbi”, und wenn ich das richtig verstanden habe, ist das in deinem Modul nicht integriert. Gibt es die Möglichkeit, diese noch zu implementieren? Vielen Dank schonmal
Ist jetzt integriert!
Hallo! Habe mit großem Interesse diesen Blog gelesen und habe eine Frage!
Mein FHem Server läuft auf einer anderen Maschine.
Kann ich meinen Raspi (+ PCB Module) via Pilight auch als eine Art CUL verwenden?
Also kann ich den Raspi mit meinem Fhem Server ansteuern und über ihn z.B Funksteckdosen steuern? Wenn ich das richtig verstanden habe, setzt Pilight voraus das der Fhem auf dem RPI läuft, was mir allerdings nichts nützen würde.
Vielen Dank für die Tipps!!
Hallo,
mit dem CUL kenne ich mich leider nicht aus, besitze selbst keinen. Dass man pilight als Client/Server auf verschiedenen Rechnern betreiben kann ist auch ein Feature von pilight selbst, nicht von mir.
Viel Erfolg,
Andreas
Hallo,
habe bei FHEM mit pilight / pimatic immer das problem dass der Fehler
pilight: ERROR. No handshake with pilight-daemon. Received: >>><< pilight anzusteuern.
Konfig des Schalters sollte passen, ist in pilight als
“protocol”: [ “kaku_switch” ],
“id”: [{
“id”: 7464450,
“unit”: 0
}],
definiert und in FHEM als
define Tageslicht pilight kaku_switch
attr Tageslicht id 0
attr Tageslicht unitcode 7464450
aufgenommen.
Irgend jemand eine Idee? (Habe überall die neusten Versionen an SW)
Gruess, Marcel
Hi,
schau dir meine Doku mal an:
define Weihnachtsbaum pilight kaku_switch
attr Weihnachtsbaum housecode 12323578
attr Weihnachtsbaum unitcode 0
einen “ID” Parameter gibt es nicht, du müsstest den housecode nehmen. Zusätzlich sieht es noch danach aus, als hättest du housecode und unitcode vertauscht (unitcode bewegt sich meist im einstelligen Bereich).
Hi,
cooles Modul. Geht das auch für receive? Ich habe eine Wetterstation von TFA, die laut pilight unterstützt wird. Zwar habe ich aktuell die Yahoo Wettervorhersage eingebunden, aber die aktuellen Daten meiner Wetterstation in FHEM anzuzeigen wäre super. Könnte dann z.B. im Winter meinen Wecker steuern, je nachdem ob ich Schnee räumen muß, oder auch nicht.
VG
Christian
Hi,
das Modul ist echt spitze. Wirst Du es in Punkto receive weiterentwickeln? Hast Du eine Idee, wie ich die Daten meiner Wetterstation, die in pilight gervorragend funktioniert in FHEM ziehen kann?
VG
Christian
Hallo,
vielen Dank!
Ich denke, das könnte klappen, aber mangels geeigneter Hardware bin ich das Thema noch nicht angegangen. Wenn mir jemand sowas zur Verfügung stellen würde, könnte ich mal prüfen, was sich machen lässt.
VG
Andreas
Das fände ich auch äußerst interessant. Nutze das Plugin momentan für meine Intertechno Steckdose und Intertechno Schaltempfänger (an den ich 3 Lampen angeschlossen habe), für letzteren habe ich noch herkömmliche Funkschalter, die ich benutze. Da wäre es sehr interessant wenn man simultan den Pilight-Receive Service laufen lassen könnte, welcher dann erkennt wenn der entsprechende Befehl von der Fernbedienung oder dem Lichtschalter kam und den Status des angesteuerten Geräts ändert. Vielen Dank für dieses wunderbare Plugin,
Gruß Daniel
Hi,
Echt geniales Plugin für FHEM.
Nutze aktuell REV Steckdosen welche ich in pilight mit dem Befehl
pilight-send -p rev2_switch -i D7 -u 0 -f
schalten kann.
Dieses Protokoll wird aber mit diesem Plugin noch nicht supportet was ich sehe.
Wäre es möglich dies noch zu integrieren ?
LG Martin
Hi,
versuchs mal mit dem kaku_switch protokoll und gib als Housecode D7 und als Unit 0 ein. Wenns passt würde ich das noch ordentlich integrieren.
Hallo Andreas,
sehr gutes Plugin, vielen Dank dafür 🙂
Gibt es eine Möglichkeit Raw-Codes zu senden? Für meine Brennenstuhl 2044 ist leider noch kein Protokoll hinterlegt…
Gruß
Raimund
Wie steuerst du die denn über pilight genau an?
Also die Brennenstuhl funktionieren hier ganz prima mit dem “pollin” Protokoll.
Übrigens auch die Mumbi Steckdosen die ich hier habe nutzen das Gleiche Protokoll. Ich glaube alle Steckdosen, welche diese 5 DIP Schalter für den Systemcode und 5 DIP Schalter (A,B,C,D,E) für den Unitcode haben funktionieren mit dem Polin Protokoll.
Hab hier ebenfalls “Heitech” Aussensteckdosen (mit schwarzer Fernbedienung), welche mit “pollin” einwandfrei klappen.
Man muß nur etwas umrechnen. Von Binär auf Dezimal.
Man nimmt den Systemcode (Hauscode) der hat 5 bits. Von links nach rechts
1=1 2=2 3=4 4=8 5=16
Wenn jetzt 1,2 und 5 gesetzt sind ist der Systemcode 19 (1+2+16)
Beim Unitcode ist A=1 B=2 C=4 D=8 (E=16 liesse sich als “goodie” auch schalten, auch wenns über die Fernbedienung nicht geht ;-))
Hab damit inzwischen unter FHEM mit dem Modul schon 8 Funksteckdosen am Laufen.
Gruß
Jens
Vielen Dank für das Feedback und die vielen pilight Prtotokolltests! Ich füge gleich mal Brennenstuhl und die anderen ein.
Hallo Andreas!
Genau diese Lösung habe ich gesucht!Klasse & vielen Dank.
Ich habe nur ein kleines Detailproblem: ich kriege sie nicht mit meiner Steckdose zum Laufen….
Sie benutzt das Protokoll rev2_switch. Mit
pi@pi3 ~ $ sudo pilight-send -p rev2_switch -i A2 -u 32 -t
pi@pi3 ~ $ sudo pilight-send -p rev2_switch -i A2 -u 32 -f
kann ich die Steckdose problemlos schalten.
Mit FHEM und Deinem Modul kriege ich es leider nicht zum Laufen.
Ich verwende foglende Konfiguration in der fhem.cfg:
define HeizungBuero pilight rev2_switch
attr HeizungBuero housecode A2
attr HeizungBuero unitcode 32
Mit dem Kakuswitch ist nichts passiert, also habe ich Dein Modul etwas erweitert:
112 my $code = “{\”protocol\”:[ \”$protocol\” ],”;
113 if($useOldVersion) {
114 switch( $protocol ) {
115 case ‘rev2_switch’ { $code = $code . “\”id\”:\”$housecode\”, \”unit\”:\”$unit\”,\”$param\”:\”1\””}
116 case ‘kaku_switch’ { $code = $code . “\”id\”:\”$housecode\”, \”unit\”:\”$unit\”,\”$param\”:\”1\””}
117 case ‘quigg_switch’ { $code = $code . “\”id\”:\”$housecode\”, \”unit\”:\”$unit\”,\”$param\”:\”1\””}
118 case ‘elro’ { $code = $code . “\”systemcode\”:\”$systemcode\”, \”unitcode\”:\”$unit\”,\”$param\”:\”1\””}
119 case ‘elro_he’ { $code = $code . “\”systemcode\”:\”$systemcode\”, \”unitcode\”:\”$unit\”,\”$param\”:\”1\””}
120 case ‘elro_hc’ { $code = $code . “\”systemcode\”:\”$systemcode\”, \”unitcode\”:\”$unit\”,\”$param\”:\”1\””}
121 case ‘silvercrest’ { $code = $code . “\”systemcode\”:\”$systemcode\”, \”unitcode\”:\”$unit\”,\”$param\”:\”1\””}
122 case ‘pollin’ { $code = $code . “\”systemcode\”:\”$systemcode\”, \”unitcode\”:\”$unit\”,\”$param\”:\”1\””}
123 case ‘mumbi’ { $code = $code . “\”systemcode\”:\”$systemcode\”, \”unitcode\”:\”$unit\”,\”$param\”:\”1\””}
124 case ‘intertechno_old’ { $code = $code . “\”id\”:\”$systemcode\”, \”unit\”:\”$unit\”,\”$param\”:\”1\””}
125 }
126 }
127 else {
128 switch( $protocol ) {
129 case ‘rev2_switch’ { $code = $code . “\”id\”:$housecode, \”unit\”:$unit,\”$param\”:1″}
130 case ‘kaku_switch’ { $code = $code . “\”id\”:$housecode, \”unit\”:$unit,\”$param\”:1″}
131 case ‘quigg_switch’ { $code = $code . “\”id\”:$housecode, \”unit\”:$unit,\”$param\”:1″}
132 case ‘elro’ { $code = $code . “\”systemcode\”:$systemcode, \”unitcode\”:$unit,\”$param\”:1″}
133 case ‘elro_he’ { $code = $code . “\”systemcode\”:$systemcode, \”unitcode\”:$unit,\”$param\”:1″}
134 case ‘elro_hc’ { $code = $code . “\”systemcode\”:$systemcode, \”unitcode\”:$unit,\”$param\”:1″}
135 case ‘silvercrest’ { $code = $code . “\”systemcode\”:$systemcode, \”unitcode\”:$unit,\”$param\”:1″}
136 case ‘pollin’ { $code = $code . “\”systemcode\”:$systemcode, \”unitcode\”:$unit,\”$param\”:1″}
137 case ‘mumbi’ { $code = $code . “\”systemcode\”:$systemcode, \”unitcode\”:$unit,\”$param\”:1″}
138 case ‘intertechno_old’ { $code = $code . “\”id\”:$systemcode, \”unit\”:$unit,\”$param\”:1″}
139 }
140 }
141 $code = $code . ‘}’;
Die rev2_switch Zeilen habe aus den kaku_switch kopiert.
Die Daten gehen auch aus fhem raus, so sieht das log aus:
2014.10.23 18:57:41 0: Server shutdown
2014.10.23 18:57:45 1: Including fhem.cfg
2014.10.23 18:57:45 3: telnetPort: port 7072 opened
2014.10.23 18:57:46 3: WEB: port 8083 opened
2014.10.23 18:57:46 3: WEBphone: port 8084 opened
2014.10.23 18:57:46 3: WEBtablet: port 8085 opened
2014.10.23 18:57:46 3: No I/O device found for hugo
2014.10.23 18:57:48 1: Including ./log/fhem.save
2014.10.23 18:57:48 1: usb create starting
2014.10.23 18:57:49 3: Opening CUL device /dev/ttyAMA0
2014.10.23 18:57:50 3: Can’t open /dev/ttyAMA0: Permission denied
2014.10.23 18:57:50 1: usb create end
2014.10.23 18:57:50 2: SecurityCheck: WEB has no basicAuth attribute. telnetPort has no password/globalpassword attribute. Restart fhem for a new check if the problem is fixed, or set the global attribute motd to none to supress this message.
2014.10.23 18:57:50 0: Server started with 11 defined entities (version $Id: fhem.pl 3872 2013-09-07 11:58:33Z rudolfkoenig $, os linux, user fhem, pid 2756)
2014.10.23 18:58:04 3: pilight command: on
2014.10.23 18:58:04 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “rev2_switch” ],”id”:A2, “unit”:32,”on”:1}}
2014.10.23 18:58:20 3: pilight command: on
2014.10.23 18:58:20 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “rev2_switch” ],”id”:A2, “unit”:32,”on”:1}}
2014.10.23 18:58:22 3: pilight command: off
2014.10.23 18:58:22 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “rev2_switch” ],”id”:A2, “unit”:32,”off”:1}}
2014.10.23 18:58:27 3: pilight command: on
2014.10.23 18:58:27 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “rev2_switch” ],”id”:A2, “unit”:32,”on”:1}}
2014.10.23 19:01:20 3: pilight command: on
2014.10.23 19:01:20 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “rev2_switch” ],”id”:A2, “unit”:32,”on”:1}}
2014.10.23 19:01:30 3: pilight command: off
2014.10.23 19:01:30 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “rev2_switch” ],”id”:A2, “unit”:32,”off”:1}}
Leider wird nix geschaltet.
Hier ein Auszug der Ausgabe des Daemons (sudo pilight-daemon -D >out 2>&1 ):
Ich habe jeweils zuerst die Streckdose mit pilight-send geschaltet, dann über fhem. Aufgefallen ist mir nur, dass pilight-send über die Ethernet-Adresse reinkommt, fhem über loopback. Die Kommandos sehen ja – bis auf die andere Reihenfolge ganz gut aus:
[Oct 23 19:01:10:419820] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.1911315966833912,”ram”:0.4153046460532662},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:12:479590] pilight-daemon: DEBUG: ssdp sent notify
[Oct 23 19:01:12:578774] pilight-daemon: INFO: new client, ip: 192.168.1.14, port: 35004
[Oct 23 19:01:12:579150] pilight-daemon: DEBUG: client fd: 17
[Oct 23 19:01:12:579414] pilight-daemon: DEBUG: client id: 3
[Oct 23 19:01:12:580163] pilight-daemon: DEBUG: socket recv: {“message”:”client sender”}
[Oct 23 19:01:12:580660] pilight-daemon: DEBUG: socket write succeeded: {“message”:”accept client”}
[Oct 23 19:01:12:580944] pilight-daemon: INFO: client recognized as sender
[Oct 23 19:01:12:581925] pilight-daemon: DEBUG: socket recv: {“message”:”send”,”code”:{“on”:1,”unit”:32,”id”:”A2″,”protocol”:[ “rev2_switch” ]}}
[Oct 23 19:01:12:582394] pilight-daemon: DEBUG: client disconnected, ip 192.168.1.14, port 35004
[Oct 23 19:01:13:385373] pilight-daemon: DEBUG: **** RAW CODE ****
[Oct 23 19:01:13:385983] pilight-daemon: DEBUG: **** RAW CODE ****
[Oct 23 19:01:13:425631] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:0.946747242166036,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:13:426376] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.946747242166036,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:13:624384] pilight-daemon: DEBUG: successfully send rev2_switch code
[Oct 23 19:01:13:626531] pilight-daemon: DEBUG: socket write succeeded: {“origin”:”config”,”type”:1,”devices”:{“Garten”:[ “Brunnen” ]},”values”:{“timestamp”:1414090873,”state”:”on”}}
[Oct 23 19:01:13:627168] pilight-daemon: DEBUG: broadcasted: {“origin”:”config”,”type”:1,”devices”:{“Garten”:[ “Brunnen” ]},”values”:{“timestamp”:1414090873,”state”:”on”}}
[Oct 23 19:01:13:627651] pilight-daemon: DEBUG: broadcasted: {“origin”:”sender”,”protocol”:”rev2_switch”,”code”:{“id”:”A2″,”unit”:32,”state”:”on”},”repeat”:1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:16:431676] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:0.2569309871038635,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:16:432082] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.2569309871038635,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:19:437433] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:0.1910441542114719,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:19:437816] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.1910441542114719,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:20:206987] pilight-daemon: INFO: new client, ip: 127.0.0.1, port: 50373
[Oct 23 19:01:20:207365] pilight-daemon: DEBUG: client fd: 17
[Oct 23 19:01:20:207628] pilight-daemon: DEBUG: client id: 3
[Oct 23 19:01:20:208704] pilight-daemon: DEBUG: socket recv: { “message”: “client sender” }
[Oct 23 19:01:20:209352] pilight-daemon: DEBUG: socket write succeeded: {“message”:”accept client”}
[Oct 23 19:01:20:209654] pilight-daemon: INFO: client recognized as sender
[Oct 23 19:01:20:213231] pilight-daemon: DEBUG: socket recv: { “message”: “send”, “code”: {“protocol”:[ “rev2_switch” ],”id”:A2, “unit”:32,”on”:1}}
[Oct 23 19:01:20:214245] pilight-daemon: DEBUG: client disconnected, ip 127.0.0.1, port 50373
[Oct 23 19:01:22:443358] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:0.1918325332987955,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:22:443759] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.1918325332987955,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:25:449124] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:0.1846502955255,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:25:449510] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.1846502955255,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:26:946974] pilight-daemon: DEBUG: ssdp sent notify
[ Oct 23 19:01:27:48728] pilight-daemon: INFO: new client, ip: 192.168.1.14, port: 35006
[ Oct 23 19:01:27:49108] pilight-daemon: DEBUG: client fd: 14
[ Oct 23 19:01:27:49369] pilight-daemon: DEBUG: client id: 3
[ Oct 23 19:01:27:50214] pilight-daemon: DEBUG: socket recv: {“message”:”client sender”}
[ Oct 23 19:01:27:50720] pilight-daemon: DEBUG: socket write succeeded: {“message”:”accept client”}
[ Oct 23 19:01:27:51000] pilight-daemon: INFO: client recognized as sender
[ Oct 23 19:01:27:51982] pilight-daemon: DEBUG: socket recv: {“message”:”send”,”code”:{“off”:1,”unit”:32,”id”:”A2″,”protocol”:[ “rev2_switch” ]}}
[ Oct 23 19:01:27:52421] pilight-daemon: DEBUG: client disconnected, ip 192.168.1.14, port 35006
[Oct 23 19:01:27:626716] pilight-daemon: DEBUG: **** RAW CODE ****
[Oct 23 19:01:27:627262] pilight-daemon: DEBUG: **** RAW CODE ****
[Oct 23 19:01:27:865906] pilight-daemon: DEBUG: successfully send rev2_switch code
[Oct 23 19:01:27:867712] pilight-daemon: DEBUG: socket write succeeded: {“origin”:”config”,”type”:1,”devices”:{“Garten”:[ “Brunnen” ]},”values”:{“timestamp”:1414090887,”state”:”off”}}
[Oct 23 19:01:27:868453] pilight-daemon: DEBUG: broadcasted: {“origin”:”config”,”type”:1,”devices”:{“Garten”:[ “Brunnen” ]},”values”:{“timestamp”:1414090887,”state”:”off”}}
[Oct 23 19:01:27:868898] pilight-daemon: DEBUG: broadcasted: {“origin”:”sender”,”protocol”:”rev2_switch”,”code”:{“id”:”A2″,”unit”:32,”state”:”off”},”repeat”:1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:28:455093] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:1.808450964003671,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:28:455479] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:1.808450964003671,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:30:456131] pilight-daemon: INFO: new client, ip: 127.0.0.1, port: 50375
[Oct 23 19:01:30:456515] pilight-daemon: DEBUG: client fd: 14
[Oct 23 19:01:30:456777] pilight-daemon: DEBUG: client id: 3
[Oct 23 19:01:30:459422] pilight-daemon: DEBUG: socket recv: { “message”: “client sender” }
[Oct 23 19:01:30:459984] pilight-daemon: DEBUG: socket write succeeded: {“message”:”accept client”}
[Oct 23 19:01:30:460270] pilight-daemon: INFO: client recognized as sender
[Oct 23 19:01:30:463856] pilight-daemon: DEBUG: socket recv: { “message”: “send”, “code”: {“protocol”:[ “rev2_switch” ],”id”:A2, “unit”:32,”off”:1}}
[Oct 23 19:01:30:464841] pilight-daemon: DEBUG: client disconnected, ip 127.0.0.1, port 50375
[Oct 23 19:01:31:460810] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:0.4608712740208382,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:31:461197] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.4608712740208382,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:34:466451] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:0.1865482626041565,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:34:466951] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.1865482626041565,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:37:472410] pilight-daemon: DEBUG: socket write succeeded: {“values”:{“cpu”:0.2558549807141001,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:37:472842] pilight-daemon: DEBUG: broadcasted: {“values”:{“cpu”:0.2558549807141001,”ram”:0.4188771591375953},”origin”:”config”,”type”:-1,”uuid”:”0000-00-00-d4-dae2d9″}
[Oct 23 19:01:39:200870] pilight-daemon: DEBUG: garbage collected config library
[Oct 23 19:01:39:204548] pilight-daemon: DEBUG: removed stale pid_file /var/run/pilight.pid
Hast Du eine Idee was ich noch ändern kann?
Ach ja, fhem ist 5.5, pilight-send ist 5.0.
Liebe Grüße
Michael
Hi,
sorry, da hab ich keine Idee. Die Logs sehen zumindest gut aus. Wenn dir das Thema sehr wichtig ist könnte ich dir anbieten, dass du mir so eine Steckdose bestellst und ich versuch es hier vor Ort hinzubekommen.
VG
Andreas
Moin,
danke für dies geile Modul, es funktioniert wunderbar =) aber ist es möglich eine Option zu bekommen RAW Code zu senden?
Viele Grüße
Oliver
Hi,
schau ich mir mal an.
Hi, leg dazu am besten mal eine issue im github an: https://github.com/andreas-fey/fhem-pilight/issues ich kümmere mich dann bei Zeiten mal drum!
Hallo,
ich habe auch das Problem mit dem Fehler:
“No handshake with pilight-daemon. Received: >>><<<"
Hab eine aktuelle pilight-Version (5.0) und eine aktuelle FHEM Installation.
Verwendet wird die in FHEM integrierte "98_pilight.pm".
Die Kommandos funktionieren in pilight, die Ports sind überall alle auf 5000 eingestellt.
Gruß
Stefan
Hallo,
die aktuellste fhem-pilight version findest du immer hier: https://github.com/andreas-fey/fhem-pilight
Versuchs mal damit.
Hat leider nichts geholfen, der Fehler bleibt. Trotzdem danke.
Hallo,
habe es jetzt hinbekommen, hatte selber nen dummen Fehler gemacht.
Vielen Dank für Deine gute Arbeit 🙂
Hallo,
habe das Modul in FHEM eingebunden.
Bekomme im Log keinen Fehler sondern nur die Meldung :
2014.12.28 13:33:05 3: pilight command: off
2014.12.28 13:33:05 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “impuls” ],}}
es tut sich aber nichts.
Wenn ich das Commando über die Pilight-Website absetze kein Problem, ebenso wenn ich es mit
pilight-send -p impuls -s 31 -u 2 -t / -f schalten möchte
irgendwer ne Idee ?
Kannst du mal testweise in der 98_pilight.pm die Zeile
in
ändern und testen?
Hallo!
Erstmal super Teil das.
Leider funktioniert es bei mir nicht. Habe bereits den Port auf 5000 gesetzt. Danach sagte mir das Fhem Log: alles super. Das pilight Log meinte aber nicht. Laut Pilight Log wird ein anderes Protokoll verwendet als laut Fhem Log. Ich setzte beide Log mal hier drunter.
Wäre nett wenn da mal einer einen Blick drauf wirft.
MFG
Sebastian
— pilight log —
[Dec 30 23:02:01:899546] pilight-daemon: INFO: new client, ip: 127.0.0.1, port: 49752
[Dec 30 23:02:01:901118] pilight-daemon: INFO: client recognized as sender
[Dec 30 23:02:01:904273] pilight-daemon: ERROR: arctech_switch: insufficient number of arguments
— fhem log —
2014.12.30 23:02:01 3: pilight command: off
2014.12.30 23:02:01 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “kaku_switch” ],”id”:”9450486″, “unit”:”14″,”off”:”1″}}
Das sieht merkwürdig aus, weil zudem der arctech_switch nicht implementiert ist; was passiert denn, wenn du ein anderes Protokoll, z.B. quigg_switch nimmst?
Jetzt wird’s ganz merkwürdig…
Es funktionieren für die Steckdose (Voltomat Funkschalter Set) über die Konsole noch das intertechno_switsch, und das coco_switch Protokoll. In Fhem werden bei beiden Protokollen aber nicht die Befehle weitergegeben. Hier das Log:
2014.12.31 09:01:51 3: pilight command: on
2014.12.31 09:01:51 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “intertechno_switch” ],}}
MFG
Sebastian
sorry hab gerade gesehen das die Protokolle noch nicht unterstützt werden…
MFG
Sebastian
Komischerweise wird bei Benutzung vom Quigg_switch die Befehlskette auch nicht weitergegeben, das Log ist identisch wie das vom Intertechno_switch.
Hallo nochmal,
habe jetzt herausgefunden, das ich den Fehler:
ERROR: arctech_switch: insufficient number of arguments
auch in der Konsole produzieren kann, indem ich als letzten Befehl nicht -t oder -f angebe (an/aus) sonndern irgend nen Blödsinn. Kann es evl sein, das der Befehl nicht “richtig” an Pilight weitergegeben wird? Leider hab ich ungefähr 0 Ahnung von Perl ,also bitte nicht lachen, wenn ich hier totalen Schwachfug erzähle… 🙂
Wie dem auch sei, jetzt wird gefeiert! Wünsche allen einen guten Rutsch ins neue Jahr!
Sebastian
Hi,
es liegt wohl daran, dass das arctech_switch protokoll vom FHEM-pilight noch garnicht unterstützt wird. Daher wird tatsächlich Blödsinn zusammengebaut. Ich sehe das Protokoll auch garnicht in meiner Liste der verfügbaren pilight Protokolle (Version 5.0).
Hallo,
habe dein FHEM Modul an die Aktuelle Nightly API angepasst.
Soll ich dir das Modul zukommen lassen ?
viele Grüße
Mark
Hallo,
erst mal ein Danke! für die gute Arbeit.
Ein sehr schönes Modul!
Ich habe aber immer noch das Handshake-Problem.
Neuste VErsion als Zip des .pm
V5 von Pilight aus dem Repo
Port 5000 beidseitig eingestellt und überprüft.
IP eingestellt und überprüft.
Telnet auf Port 5000 geht.
Seit 3 Std versuche ich alles, aber es geht einfach nicht.
Auch habe ich die V3 und V4 von Pilight probiert.
Der einzige Unterschied ist, dass bei V3 der Timeout kürzer ist.
Hast du da noch eine Idee?
Gruß,
Ingo
So, Problem gelöst 🙂
Okay, das war ein Lesefehler meinerseits, weil es durch 2-3 verschiede Tutorials ging.
Sollte einer das Handshakeproblem haben:
In der settings.json des Pilight gibt es einen Punkt: Webserverport.
Der bleibt auf 5001!!!
Es muss manuell ein Eintrag “Port” eingetragen werden.
Nämlich:
“port”: 5000,
Dann klappt es auch mit dem Handshake.
Gruß,
Ingo
Hallo Andreas,
dieses FHEM-modul ist genau das, wo nach ich schon seit geraumer Zeit suchte. Jetzt kann ich endlich meine Billig-Steckdosen ebenfalls verwenden.
Aus Deiner github-Seite https://github.com/andreas-fey/fhem-pilight habe ich entnommen, dass nun auch das raw- Protokoll mit dem Parameter rawCode unterstützt wird. Allerdings erhalte bei all meinen Versuchen die Fehlermeldung ”
TestRAW: unknown attribute rawCode. Type ‘attr TestRAW ?’ for a detailed list.”
Meine Definition:
define TestRAW pilight raw
attr TestRAW rawCode “123 456”
attr TestRAW room HAUS
Kannst Du mir da weiterhelfen?
Danke und weiter so! Lukas
Hi,
ich konnte raw codes leider noch nicht testen; Teste bitte nochmal die aktuelle Version. Feedback wäre super!
Ich teste gerne! Wo finde ich die aktuellste Version? Mit der oben angegebenen Version erhalte ich ja die Fehlermeldung, dass der Parameter “rawCode” nicht akzeptiert wird. Heisst der vielleicht anders? LG Lukas
Tried everything but still getting:
pilight: ERROR. No handshake with pilight-daemon. Received: >>><<<
In FHEM
Regards, Garry
Hi,
common failures are:
* no hardcoded port for pilight daemon was set. Please set to 5000: http://www.pilight.org/getting-started/settings/
* remote_ip /remote_port not correctly set
* Not using pilight 5.0
Hi Andreas,
ich versuche meine Intertechno Funksteckdose über FHEM zu schalten. Über pilight und mit der Illumnia App funktioniert das schon. Jetzt versuche ich mit deinem Plugin das ganze in FHEM zu schalten. Laut log file bekomme ich keinen Fehler sondern folgende Ausgabe:
2015.01.31 10:56:36 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “kaku_switch” ],”id”:”13960242″, “unit”:”0″,”on”:”1″}}
Meine Einstellungen bei den Internals:
CFGFN
DEF kaku_switch 13960242 1
NAME Wohnzimmer
NR 28
STATE on
TYPE pilight
housecode 13960242
protocol kaku_switch
unitcode 1
Die Steckdose wird aber leider nicht geschaltet. Es erscheinen aber keine Fehlermeldungen in FHEM. Weißt du vielleicht wo mein Fehler liegt? Port 5000 ist eingestellt. Was meinst du mit Remote_IP/Port in dem oberen Post?
Gruß
Fabian
Hi,
also laut Log sieht das sehr gut aus – bist du sicher, dass ID und Unitcode stimmen?
Bei mir sehen die Einstellungen so aus:
DEF
kaku_switch 12323578 1
NAME
HeizungBuero
NR
75
STATE
on
TYPE
pilight
housecode
12323578
protocol
kaku_switch
unitcode
1
Hallo Andreas,
erstmal viele Dank für das super Modul. Meine Intertechno Dosen lassen sich aus FHEM prima schalten.
Zwei neue Features wären super – kann dir gern bei der Entwicklung und/oder Testung behilflich sein.
1. Ausbau des Moduls, dass auch Empfangen werden kann. Soll heißen, wenn z.B. mit einer Fernbedienung geschalten wird, soll sich der Status auch in FHEM ändern
2. Erweiterung der unterstützen Protokolle um kaku_dimmer.
Unter pilight funktioniert der Intertechno ITDM-250 prima.
Dazu muss mann aber zwei Protokolle (kaku_dimmer und kaku_switch) pro Gerät definieren.
Was meinst du?
Marco.
1. Ja, das ist in der pipeline; problematisch ist aber die geringe Reichweite des Empfängers, die das Ganze in den meisten Fällen den Flaschenhals bildet.
2. Kannst du mir da mal ein komplettes Beispiel geben?
Hi Andreas,
thank you for your great work! Alas, your module obviously doesn’t send commands to silvercrest devices. It works fine with pilight-send on command line.
I defined my device in FHEM as:
===========
define SilverCrestE pilight silvercrest
attr SilverCrestE usercode 16
attr SilverCrest systemcode 31
===========
Here’s proof from FHEM’s log file (I defined your switch as comparison for the logfile as shown above):
=============
pilight data: { “message”: “send”, “code”: {“protocol”:[ “kaku_switch” ],”id”:”4762303″, “unit”:”1″,”off”:”1″}}
pilight command: off
pilight data: { “message”: “send”, “code”: {“protocol”:[ “silvercrest” ],}}
==============
FHEM version 5.6; pilight v5.0, module from Jan 12, 2015 running on Raspbian Kernel 3.12.9
Hi,
there is no attribute “usercode” – please try again with “unitcode”. Also, you should see a “systemcode” instead of a “id” in the logs; are you using the 98_pilight.pm from my website oder from fhem directly?
Hi Andreas,
I’m trying to get FHEM (5.6) working with pilight (v5.0-256-gf6467d1). I changed the remote_ip in your script to “localhost” and the remote_port to “5001”, otherwise I got “Connection refused”. Pilight is running correctly and connection from your script to pilight is only established when pilight service is started.
When I add now a pilight device to FHEM config and want to switch it, the whole FHEM crashes. The last line in the FHEM log is “pilight command: on”. The FHEM does not react anymore. I have to stop it with the console and start it again. Before I have to chown the fhem.log back to “fhem” from “root”, otherwise I cannot start FHEM.
I tried to debug your script and got that it stops after “$socket->recv($data,1024);”. Probably because it does not receive any data. I do not have any clue about perl so I have no idea what could be the issue. Do you have any idea?
Would be great to get some help!
Best,
Marcel
Hi,
are you using my pilight module fom fhem directly? If so, please try the version from github.
I’m still using the one from the github.
Hallo,
ich habe hier gelesen, das jemand das Pilight Modul für die Pilight nightly Version angepasst hat. Wann wird das wohl verfügbar sein?
Hi,
ich merge das, sobald die nightly Version zur stable wird.
Kannst du evtl den Code für die Nightly irgendwie veröffentlichen oder mir zukommen lassen?
Ich habe mich mal selber dran gesetzt. Die neue JSON-Struktur für Handshake und die Nachricht habe ich eingebaut, aber ich verzweifel an den Socket-Aufrufen in der Commit Funktion 😉
Pilight Stable läuft leider auf meinem Bananapi nicht.
Ich werde bald auf Version 6.0 aktualisieren.
Hallo Andreas!
mit Begeisterung habe ich Deine Erweiterung für FHEM gefunden, aber komme nun nicht mehr weiter-mein Fehler ähnelt dem von “ndscham”, ich versuche ihn Dir hier als Linux-Noob verständlich zu beschreiben 😉
1. Ich betreibe auf einem Raspberry Pi Model B+ mit einer aktuellen Raspbian Version die über “cat /proc/version” sich als 3.18.5+ ausweist.
Pilight benutze ich in Version 5.0, FHEM in der 5.6, Dein Script habe ich von Deiner Github Seite 1x per wget direkt und 1x per zip heruntergelanden.
Meine Steckdosen funktionieren alle über das “elro_he” Protokoll.
Der Pilight Service und das Pilight Webgui laufen 1a und schalten alle Schalter. auch kann ich z.B. mit
“sudo pilight-send -p elro_he -s 28 -u 1 -f” problemlos schalten
Ich habe in FHEM wie folgt ein Device angelegt:
“define Stehlampe pilight elro_he
attr Stehlampe room Arbeitszimmer
attr Stehlampe systemcode 28
attr Stehlampe unitcode 1”
Das Device taucht im Server auf mit on/off Schalter, aber…
Fehlerbild: Es Schaltet nicht :-/
Kann es sein, dass pilight keine Schaltparameter bekommt? Hier die Logdatei:
2015.02.12 18:15:57 3: pilight command: on
2015.02.12 18:15:57 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “elro_he” ],}}
2015.02.12 18:15:58 3: pilight command: off
2015.02.12 18:15:58 3: pilight data: { “message”: “send”, “code”: {“protocol”:[ “elro_he” ],}}
Für eine Hilfe wäre ich echt dankbar!
Beste Grüße
Timo
Hi Andreas,
erstmal ein Riesen-Dankeschön für das Modul! Es funktioniert bei mir prima, und mittlerweile werden 11 Steckdosen (Elro, Heitech, Brennenstuhl) damit gesteuert.
An ein paar Sachen habe ich einige Zeit rumexperimentieren müssen – lag zwar alles nicht am Modul, aber an den Kommentaren zu sehen, haben andere ähnliche Probleme, daher poste ich mal hier meine Erfahrung. Vielleicht kann ja jemand damit was anfangen…
Bei meiner pilight-Installation funktionierte der Befehl “pilight-send” nur mit einem vorangestellten “sudo”. Das war für pilight an sich ok, aber die Einbindung in FHEM hat dann nicht mehr geklappt.
Problem waren da noch fehlende Berechtigungen, die man so korrigiert:
pi@raspberrypi $ cd /etc/pilight
pi@raspberrypi /etc/pilight $ sudo chmod 666 hardware.json
pi@raspberrypi /etc/pilight $ sudo chmod 666 settings.json
Die nächste Sache fällt klar in die Kategorie “eigene Doofheit”. Habe aus Versehen das Modul in /opt/fhem (und nicht /opt/fhem/FHEM) kopiert, daher konnte FHEM nur auf eine alte Version zurückgreifen und ist mit dem elro_HC-Protokoll nicht klargekommen. Die Fehlermedlung war da etwas kryptisch, daher ist mir das nicht so schnell aufgefallen.
Was ich auch festgestellt habe, ist, dass der pilight-Daemon sich hin und wieder verabschiedet und man ihn neu starten muss, damit man überhaupt wieder irgendwas schalten kann. Aus den pilight-Logs habe ich rausgelesen, dass in dem Fall ein watchdog zuschlägt, d.h. wenn die CPU-Load über 10 Sekunden bei über 60% liegt, wird der Daemon gekillt. Bin mir nicht ganz sicher, aber die Indizien deuten darauf hin, dass das Problem ist, dass ich einen Empfaenger habe, der diese Load erzeugt, wenn man doch mal mit der normalen Fernbedienung die Steckdosen schaltet. Den Empfänger, den ich sowieso nicht wirklich brauche, aus dem System zu nehmen, scheint hier zu helfen.
Ach so, und mit neueren Mumbi-Steckdosen hab ich miese Erfahrungen gemacht. Die haben keine Dip-Schalter mehr, sondern lernen selbst von der Fernbedienung. Ist lästig (oder vielleicht sogar nahezu unmöglich), den gesendeten Code auszulesen. Hab da irgendwann aufgegeben und bin zu Brennenstuhl gewechselt.
Nochmals danke fürs Haus-Clever-Machen!
Gerri
Hallo,
kann es sein dass die aktuelle Version die im FHEM Repo ist, noch nicht mit Pilight 6 funktioniert?
Grüße
Ja, die ist für Version 5.0. Update kommt bald
Hallo Andres,
Ich habe eine Motorleinwand mit einem Funkempfänger integriert.
Dazu habe ich einen Wandschalter der per Funk (433Mhz) die Leinwand hoch und runter fahren lässt.
Nun wollte ich die Signale mit Pilight-Raw mitschneiden und dann auch senden. Mitgeschnitten habe ich folgendes:
1142738974 8485915 5204 642 625 331 545 358 490 497 576 350 505 337 532 635 350 504 340 119 639 537 347 600 339 120 619 339 595 559 336 654 144 131 688 380 583 538 445 394 395 106 576 346 510 643 227 629 206 363 506 653 194 219 657 636 208 669 205 197 656 642 207 665 185 657 224 196 661 201 654 203 657 217 641 200 658 200 674 249 594 641 209 263 604 309 553 242 621 323 551 176 662 217 640 199 659 199 677 184 660 199 776 642 157 157 643 342 517 198 676 618 343 517 211 278 593 742 124 629 228 195 674 184 657 651 194 668 188 651 206 650 240 5216 632 630 223 219 642 649 195 272 618 181 659 194 663 632 219 650 207 266 595 207 680 612 214 267 601 312 548 635 210 648 211 261 611 197 675 640 188 671 189 226 665 194 647 633 210 645 233 227 628 634 213 253 635 615 230 627 298 114 680 622 217 642 213 662 206 208 672 185 660 199 657 200 653 226 636 206 651 203 676 720 121 293 562 207 651 278 588 215 637 204 677 179 656 221 811 102 586 202 667 193 655 632 222 208 651 406 452 364 496 895 594 221 206 657 610 263 654 193 217 615 236 636 618 242 669 201 618 242 635 251 5164 640 627 229 238 631 616 230 235 622 237 621 328 537 619 242 615 231 266 593 241 628 626 239 230 609 232 626 729 127 632 227 220 642 205 748 539 251 604 227 328 530 235 622 631 245 614 227 235 640 617 226 218 641 636 220 633 229 234 628 626 246 613 229 628 258 215 620 227 637 288 562 235 623 221 637 233 623 221 638 631 242 224 665 200 616 224 634 311 547 233 626 227 642 224 622 233 672 189 652 216 617 632 223 223 652 225 618 240 620 641 218 626 245 296 549 643 217 629 240 225 621 231 627 631 238 616 228 633 255 614 345 5082 650 627 228 220 640 630 235 236 618 225 631 225 633 687 195 652 219 193 628 295 565 628 310 122 668 316 530 629 227 631 229 220 644 238 616 628 230 627 241 215 633 224 638 696 194 592 228 232 633 626 242 221 627 628 249 614 286 167 631 624 256 602 230 627 232 251 608 223 639 226 709 116 662 232 629 227 705 167 619 685 208 194 647 218 633 234 616 228 627 236 621 229 629 220 653 314 532 236 623 222 637 632 224 234 625 291 568 224 639 623 228 647 218 234 634 615 229 630 229 234 624 224 634 629 233 627 243 613 226 628 10658 5181 649 639 232 223 621 626 232 222 636 294 570 238 613 643 231 612 232 271 588 238 621 630 232 221 634 233 628 634 249 670 185 209 626 233 626 699 184 602 229 222 638 228 647 614 225 701 183 211 627 631 223 225 638 627 237 621 228 234 628 632 223 627 230 723 164 213 620 219 642 236 620 228 630 249 619 224 623 319 541 627 232 233 628 225 642 227 633 229 616 222 640 226 630 235 625 231 633 224 638 224 627 628 229 234 625 226 642 222 626 626 231 629 268 197 628 638 220 724 167 192 632 222 637 709 170 604 229 727 130 719 209 5140 653 626 228 221 669 597 229 248 685 130 656 226 643 615 229 641 284 166 642 223 625 626 229 228 625 218 642 626 232 632 238 219 632 220 635 726 132 628 294 178 616 218 641 626 237 651 231 212 626 709 183 221 602 626 333 526 234 218 639 624 231 635 238 714 130 236 624 219 638 220 642 240 616 227 629 223 646 309 540 627 238 233 620 232 632 225 630 226 644 222 624 235 625 238 617 238 626 242 615 224 641 622 227 235 623 222 722 118 669 615 257 600 233 226 634 631 225 645 228 222 635 222 623 688 198 599 231 633 240 612
1142738974 8485915 5204 642 625 331 545 358 490 497 576 350 505 337 532 635 350 504 340 119 639 537 347 600 339 120 619 339 595 559 336 654 144 131 688 380 583 538 445 394 395 106 576 346 510 643 227 629 206 363 506 653 194 219 657 636 208 669 205 197 656 642 207 665 185 657 224 196 661 201 654 203 657 217 641 200 658 200 674 249 594 641 209 263 604 309 553 242 621 323 551 176 662 217 640 199 659 199 677 184 660 199 776 642 157 157 643 342 517 198 676 618 343 517 211 278 593 742 124 629 228 195 674 184 657 651 194 668 188 651 206 650 240 5216 632 630 223 219 642 649 195 272 618 181 659 194 663 632 219 650 207 266 595 207 680 612 214 267 601 312 548 635 210 648 211 261 611 197 675 640 188 671 189 226 665 194 647 633 210 645 233 227 628 634 213 253 635 615 230 627 298 114 680 622 217 642 213 662 206 208 672 185 660 199 657 200 653 226 636 206 651 203 676 720 121 293 562 207 651 278 588 215 637 204 677 179 656 221 811 102 586 202 667 193 655 632 222 208 651 406 452 364 496 895 594 221 206 657 610 263 654 193 217 615 236 636 618 242 669 201 618 242 635 251 5164 640 627 229 238 631 616 230 235 622 237 621 328 537 619 242 615 231 266 593 241 628 626 239 230 609 232 626 729 127 632 227 220 642 205 748 539 251 604 227 328 530 235 622 631 245 614 227 235 640
Nun passiert aber beim senden garnichts. Wenn ich ihn daraufhin nochmal absende, erscheint folgendes:
pilight-daemon: malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) – 1) * 2])) – __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) – 1)) & ~((2 * (sizeof(size_t))) – 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)’ failed.
— STACKTRACE (3 FRAMES) —
Ich habe gesehen das in dem mit gelogten RAW Befehl sich nach einiger Zeit der Anfang wiederholt. Möglicherweise ist das die Rückmeldung der Leinwand?!
Über eine Hilfe würde ich mich freuen.
Hi, da wendest du dich besser ans pilight forum, zunächst müsstest du ja pilight selbst erstmal dazu bewegen, das raw-command korrekt zu senden.
Das Update für pilight 6 erwarte ich auch sehnsüchtig. Habe hier einen funkelnagelneuen PI2 liegen, den ich gerne für FHEM einsetzen würde. Das Dilemma: Auf dem PI2 läuft nur pilight 6 und das Modul funktioniert nur mit pilight 5.
Aber lass Dich trotzdem nicht stressen.
Hab gerade gepusht, bitte mal die Version von meiner github Seite testen.
Guten Morgen und vielen Dank für das Update.
Ich habe es gerade getestet und leider funktioniert es nicht. Was ich gemacht habe:
– FHEM Update
– apt-get update / upgrade auf dem PI B+
– fhem-pilight-master.zip heruntergeladen
– 98_pililght.pm mit Filezilla auf den PI geschoben
– alte 98_pilight.pm in /FHEM gelöscht und neue reinkopiert
– SD-Karte in den PI 2 gesteckt
– apt-get remove plight
– apt-get install plight (pilight-daemon version 6.0, commit v6.0)
– config.json angepasst (“port”: 5000)
– pilight daemon neu gestartet
– “pilight-send -p elro_400 -s 9 -u 1 -f” funktioniert
– in FHEM Test-Lampe angelegt (elro_400 systemcode: 9, unitcode: 1)
Das devstateicon ändert seinen Zustand beim Schalten, aber die Lampe schaltet nicht.
Logeinträge:
2015.03.09 12:40:42 4: HTTP FHEMWEB:192.168.188.34:62239 GET /fhem?cmd.Lampe_TEST=set%20Lampe_TEST%20off&room=Wohnzimmer&XHR=1
2015.03.09 12:40:42 5: Cmd: >set Lampe_TEST off<
2015.03.09 12:40:42 3: pilight command: off
2015.03.09 12:40:42 3: pilight data: { "action": "send", "code": {"protocol":[ "elro_400" ],}}
2015.03.09 12:40:42 5: Triggering Lampe_TEST (1 changes)
2015.03.09 12:40:42 5: Notify loop for Lampe_TEST off
2015.03.09 12:40:42 5: Batterielevel: not on any display, ignoring notify
2015.03.09 12:40:42 5: Batteriestatus: not on any display, ignoring notify
2015.03.09 12:40:42 4: 2005:FHEMWEB:192.168.188.34:62239: /fhem?cmd.Lampe_TEST=set%20Lampe_TEST%20off&room=Wohnzimmer&XHR=1 / RL:20 / text/plain; charset=UTF-8 / Content-Encoding: gzip
Kann es sein, dass die Parameter für unit- und systemcode nicht übergeben werden?
Falls Du noch Fragen hast, immer her damit.
Gruß
Oli
Ich habe noch eine kleine Entdeckung gemacht. Wenn ich versuche, meine Dosen mit einem alten Protokoll – bsw. “elro_he” – zu schalten, sieht das Log so aus:
2015.03.09 23:25:52 4: HTTP FHEMWEB:192.168.188.34:52113 GET /fhem&detail=Lampe_rechts&dev.setLampe_rechts=Lampe_rechts&cmd.setLampe_rechts=set&arg.setLampe_rechts=off&val.setLampe_rechts=
2015.03.09 23:25:52 3: pilight command: off
2015.03.09 23:25:52 3: pilight data: { “action”: “send”, “code”: {“protocol”:[ “elro_he” ],”systemcode”:9, “unitcode”:1,”off”:1}}
2015.03.09 23:25:52 4: HTTP FHEMWEB:192.168.188.34:52113 GET /fhem?detail=Lampe_rechts
2015.03.09 23:25:52 4: 1995:FHEMWEB:192.168.188.34:52113: /fhem?detail=Lampe_rechts / RL:4761 / text/html; charset=UTF-8 / Content-Encoding: gzip
Das heißt, hier werden die Parameter offenbar übertragen.
Vielleicht hilft das weiter.
Oli
Moin!
Ersteinmal Vielen Dank für die tolle Arbeit!
Ich bin immerhin schon so weit, dass ich meine Quigg-Steckdosen mit
pilight-send -p quigg_gt7000 -i 2816 -u 2 -t
einschalten und mit-f
auf der raspberry-Konsole wieder ausschalten kann. In fhem habe ich auch eine Steckdose mit entsprechenden Attributen angelegt, aber mich irritiert, dass mein Protokoll nicht in der 98_pilight.pm-Datei (gestern runtergeladen) auftaucht. Nur quigg_switch. Daraufhin habe ich im Modul unter ‘case’ nach dem quigg_switch folgende Zeile eingefügt:case 'quigg_gt7000' { $code = $code . "\"housecode\":$housecode, \"unitcode\":$unit,\"$param\":1"}
Was ich jetzt noch nicht verstehe, ist der Ein- und Ausschaltcode. Aus Verzweiflung habe ich die Zeile unter “sub commit”
my $param = $on ? "-t" : "-f";
(vormals “on” : “off”;) geändert. Das fhem-log sieht nun so aus:pilight command: on
2015.03.10 08:51:52 3: pilight data: { “action”: “send”, “code”: {“protocol”:[ “quigg_gt7000″ ],”housecode”:2816, “unitcode”:2,”-t”:1}}
Schalten tut sich aber trotzdem noch nichts… Denke ich falsch?
Hi,
ich habe die quigg-Protokolle mal ergänzt, bitte teste nochmal mit der Version von Github!
Moin!
Ich bin’s noch mal… 🙂 Ich habe mal den pilight-daemon mit –sss gestartet. Sehr gesprächig der Kleine… Aber folgende Zeile weist wohl auf den Fehler hin.
DEBUG: socket recv: { “action”: “identify” }
pilight-daemon: STACK: socket_write(…)
DEBUG: socket write succeeded: {“status”:”success”}
STACK: socket_read(…)
STACK: socket_parse_data(…)
STACK: socket_get_clients(…)
DEBUG: socket recv: { “action”: “send”, “code”: {“protocol”:[ “quigg_gt7000″ ],”housecode”:2816, “unitcode”:2,”-t”:1}}
ERROR: quigg_gt7000: insufficient number of arguments
STACK: socket_write(…)
DEBUG: socket write succeeded: {“status”:”failed”}
Ich habe das Protokoll stark gekürzt, damit es noch Spaß macht es zu lesen 🙂
Wenn mir jetzt jemand verraten kann, wie ich die 98_pilight.pm ändern muss, damit die richtige Anzahl an Argumenten übergeben wird, wäre ich super-glücklich! (siehe auch mein voriges Post) Denn leider reichen meine Programmierkenntnisse nicht dafür aus.
Vielen Dank schon mal!
Hi,
du könntest mal versuchen, die Zeile
case ‘quigg_gt1000’ { $code = $code . “\”id\”:$housecode, \”unit\”:$unit,\”$param\”:1″}
in
case ‘quigg_gt1000’ { $code = $code . “\”id\”:\”$housecode\”, \”unit\”:$unit,\”$param\”:1″}
zu ändern.
Hallo versuche vergeblich meine Funkschalter die ich in pilight schalten kann über FHEM zu schalten.
Ich habe Pilight und FHEM auf dem Raspberry laufen.
Pilight habe ich auf port 1510 Konfiguriert da der default ja geändert werden sollte.
Protokoll ist:
ID ist: 3136
Unit ist: 1
Wie schaffe ich es jetzt das FHEM über Pilight meine Funksteckdosen steuert?
Hi,
benutzt zu pilight Version 6? Bitte auch mal hier schauen: https://github.com/andreas-fey/fhem-pilight/issues/3
Hallo habe pilight Version 5.0
wie muss denn der Aufruf in der fhem.cfg für den quigg_switch aussehen? Vielleicht ist da bei mir ja auch ein fehler. Habe in pilight den Port wieder auf 5000 gesetzt
Hallo,
wenn du die alte pilight Version benutzt und das aktuelle 98_pilight, dann musst du daran denken, das
attr Weihnachtsbaum useOldVersion 1
zu setzen.
Was bedeutet das Weihnachtsbaum?
Hat ja vorher auch ohne das geklappt und wohin muss ich das
attr Weihnachtsbaum useOldVersion 1
in die config.cfg kopieren?
Achso ich muss in der settings.json noch eine Zeile mit:”port”: 5000
einfügen okay.
jetzt klappt es.
Jetzt muss ich es nur noch schaffen bei meinem AVR NET IO die Relais als Taster an zu sprechen und die Digitalen Eingänge ab zu fragen
Moin!
Ja, das quigg_gt7000-Protokoll funktioniert jetzt wunderprächtig. Vielen Dank dafür!!
Soll ich mal Testweise die zur Zeit bei Aldi vertriebenen Funksteckdosen “ausleihen”? Die heißen jetzt 9000’er-Serie und es gibt sie auch als Außen-Steckdosen. Ich kann ja mal schauen, welche “Sprache” die so sprechen… 😉
Gruß, Ralf
Hallo bei mir lief es jetzt ja aber nach einem update von Fhem fumktioniert die Kommunikation mit pilight nicht mehr.
im log steht
pilight: ERROR. No handshake with pilight-daemon. Received: >>>{“message”:”reject client”} <<<
Über telnet kann ich auf pilight mit dem Port 5000 verbinden und pilight selber arbeitet auch ohne Probleme, direkt in pilight kann ich schalten
Was könnte jetzt das Problem sein?
Könnte ein update von pilight helfen? Und wenn ja wie mache ich das?
Kann es sein, dass FHEM mit dem Update die Datei 98_pilight.pm überschrieben hat? Die Fehlermeldung hatte ich in der Kombination “original” 98_pilight.pm und pilight Version 6
Falls ja, gibt es irgendeine Möglichkeit, FHEM Updates für das Modul 98_pilight.pm zu sperren?
Hallo,
ich ziehe das Update in FHEM in den nächsten Tagen nach, dann sollte sich das Problem lösen.
Hallo Holger,
die Version in FHEM wird erst in den nächsten Tagen aktualisiert; du musst nochmal per Hand die Version von meiner Github Seite drüberkopieren.
Habe aktuell dasselbe problem,
pilight: ERROR. No handshake with pilight-daemon. Received: >>>
wobei ich das ins FHEM gerade erst integriert habe, schalte da
normal alles über ein Brennstuhl gateway, aber das einlesen und senden vom PI mittels der 433mhz module war interessant, so kann man auch selbstlernende hardware nutzen, vielleicht hat da jemand eine idee oder einen tip zu warum das nicht geht,
danke
Ok, solved
Hab das modul noch 2 mal heruntergalden und nun geht alles 🙂
Klasse 😛
Hallo habe aus Holland von Vancranebroek Funksteckdosen (Diamant)
über pilight wunderbar zu schalten wie folgt:
“vitrine”: {
“name”: “Vitrine A”,
“protocol”: [ “impuls” ],
“id”: [{
“systemcode”: 10,
“programcode”: 1
}],
“state”: “off”,
“gui-readonly”: 0
},
“stehlampe”: {
“name”: “Stehlampe B”,
“protocol”: [ “impuls” ],
“id”: [{
“systemcode”: 10,
“programcode”: 2
}],
“state”: “off”,
“gui-readonly”: 0
},
“brunnen”: {
“name”: “Brunnen C”,
“protocol”: [ “impuls” ],
“id”: [{
“systemcode”: 10,
“programcode”: 4
}],
“state”: “off”,
“gui-readonly”: 0
Aber in Fhem bekomme ich “programcode” nicht definiert
Sprich das Protocol: impuls
den Systemcode: 10
ist kein problem aber
programcode sagt fhem ist eine ungültige definition
mit unitcode oder id gehts nicht
was kann ich nun machen????
bekomme in Fhem die nachricht:
Cannot load module pilight
Im log steht das:
2015.04.03 20:07:36 2: Error messages while initializing FHEM: configfile: Cannot load module pilight Cannot load module pilight
2015.04.03 20:07:36 0: Server started with 34 defined entities (version $Id: fhem.pl 8320 2015-03-29 10:49:31Z rudolfkoenig $, os linux, user fhem, pid 2093)
2015.04.03 20:08:08 1: PERL WARNING: Bareword found where operator expected at ./FHEM/98_pilight.pm line 5, near “”en” class”
2015.04.03 20:08:08 1: PERL WARNING: (Missing operator before class?)
2015.04.03 20:08:08 1: PERL WARNING: Bareword found where operator expected at ./FHEM/98_pilight.pm line 12, near “fhem”
2015.04.03 20:08:08 1: PERL WARNING: (Missing operator before fhem?)
2015.04.03 20:08:08 1: PERL WARNING: Bareword found where operator expected at ./FHEM/98_pilight.pm line 12, near “98_pilight”
2015.04.03 20:08:08 1: PERL WARNING: (Missing operator before pilight?)
2015.04.03 20:08:08 1: reload: Error:Modul 98_pilight deactivated:
Unrecognized character \xC2; marked by <– HERE after at master <– HERE near column 49 at ./FHEM/98_pilight.pm line 12.
2015.04.03 20:08:08 0: Unrecognized character \xC2; marked by <– HERE after at master <– HERE near column 49 at ./FHEM/98_pilight.pm line 12.
Hallo,
das hört sich stark danach an, dass beim Download etwas schief gegangen ist. Bitte nochmal direkt hier versuchen: https://github.com/andreas-fey/fhem-pilight/archive/master.zip
Hallo,
habe jetzt alles geupdatet und die Version im FHEM-Repo sowie die Master.zip-Version und die direkt aus dem GIT genommen. fhem schickt die Befehle auch ohne weiteres ab (Habe für den Test gleich mehrere Protokolle genommen die mit pilight-receive ausgeworfen hat):
2015.04.09 15:55:01 3: pilight command: on
2015.04.09 15:55:01 3: pilight data: { “action”: “send”, “code”: {“protocol”:[ “elro_400” ],}}
2015.04.09 15:55:07 3: pilight command: on
2015.04.09 15:55:07 3: pilight data: { “action”: “send”, “code”: {“protocol”:[ “elro_800_switch” ],}}
2015.04.09 15:55:11 3: pilight command: on
2015.04.09 15:55:11 3: pilight data: { “action”: “send”, “code”: {“protocol”:[ “elro_hc” ],”systemcode”:19, “unitcode”:1,”on”:1}}
aber das Gerät geht nicht an.
mit einem (in dem Fall):
pilight-send -p elro_400 -s 6 -u 15 -t / -f
funktioniert alles problemlos.
Ne Idee was ich noch machen kann?
Grüße Sebastian
Hallo, bei mir funktioniert das Modul es auch nicht. Via pilight Konsole kann ich schalten über FHEM ist nix zu machen. Aktuelle Version hab ich geladen. Bei mir bleibt der Webserver vom FHEM hängen sobald ich auf “ein” oder “aus” klicke. Stoppen und Starten von FHEM ist dann das einzige was noch geht.
Den Handshake Fehler bekomme ich auch.
Hier mal noch was aus dem LOG:
2015.04.09 19:38:33 1: Including ./log/fhem.save
2015.04.09 19:38:52 3: pilight command: on
2015.04.09 19:40:58 3: pilight: ERROR. No handshake with pilight-daemon. Received: >>><<<
Habe auch Brennenstuhl Dosen.
Hallo, gleiches Problem:
pilight-send -p elro_800_switch -s 3 -u 8 -t
Geht.
2015.04.24 10:21:51 3: pilight command: on
2015.04.24 10:21:51 3: pilight data: { “action”: “send”, “code”: {“protocol”:[ “elro_800_switch” ],}}
Geht nicht 🙂
So, Problem gefunden.
In den Caseanweisungen steht der ELRO_800_Switch nicht drin 🙂
Mit einem :
case ‘elro_800_switch’ { $code = $code . “\”systemcode\”:$systemcode, \”unitcode\”:$unit,\”$param\”:1″}
geht es besser 🙂
Mal eine nette Frage 🙂 :
Ich habe 2 RaspberryPis mit Pilight installiert.
2 feste IPs zugewiesen.
FHEM und Pilight laufen auf derselben Maschine und funktionieren.
Die 2. Rasp schaltet andere Aktoren, die für die 1.Rasp zu weit weg sind.
Kann ich irgendwie dem Modul beibringen, dass ich die Aktoren auf der 2. Rasp schalten möchte?
LG,
Ingo
Hallo Andreas,
super Blog!!
Leider schaffe ich es nicht meinen Pilight Service ins FHEM zu implementieren. Pilight läuft auf dem gleichen Raspberry wie FHEM und funktioniert tadellos. Leider bekomme ich jedoch beim Anlegen eines “Schalters” in FHEM die logfile, dass es probleme mit dem pilight-daemon gibt und die connecion refused. Ich habe bereits die 98_pilight erneut runtergeladen und den Port auf 5000 gesetzt (bei mir heißt die settings datei jedoch wie folgt: settings.json-default, könnte hier schon das Problem liegen?)
Ich würde mich über Deine Hilfe freuen.
Vielen Dank und viele Grüße!
Hi,
kannst du über die pilight-send Kommandozeilentools senden? Das müsste zuerst funktionieren. Die settings.json wird in der aktuellen pilight Version nicht mehr genutzt, du musst die config.json anpassen. Meine sieht so aus:
{
“devices”: {},
“rules”: {},
“gui”: {},
“settings”: {
“port”: 5000,
“send-repeats”: 10,
“receive-repeats”: 1,
“webserver-enable”: 0
},
“hardware”: {
“433gpio”: {
“sender”: 0,
“receiver”: 1
}
},
“registry”: {
“pilight”: {
“version”: {
“current”: “6.0”
}
}
}
}
Die Config muss config.json heißen.
Dein Pilight wird sonst nicht laufen.
Sonst mal mit einem netstat -an|grep LISTEN schauen,
irgendwas auf Port 5000 lauscht.
LG,
Ingo
Hallo,
ich habe eine Elro 877 Steckdose und eine Elro 844 Fernbedienung
Über Receive erhalte ich folgende Daten:
Id: F10
Unit:61
State: off
Original: “Receiver”
Protocol: “clarus_switch”
Uuid: 000-b8-27-eb-a8aacc
Wie mache ich daraus ein pilight send Befehl?
(Pilight-send -p elro_800_switch -s F10 -u 61 -t)-> funktioniert nicht
Hi Andre,
frag dazu am besten mal direkt bei pilight nach.