notify um mit FS20 Befehl I2C Device zu schalten

Begonnen von SSSleep, 06 August 2013, 13:06:56

Vorheriges Thema - Nächstes Thema

SSSleep

Hallo,

ich habe mir eine I2C Relaiskarte gebaut. Nun möchte ich die Relais über FS20 Befehle schalten. Nun ist mir nicht ganz klar, wie das notify dazu aussehen muss.

Vorweg: Die Relaiskarte funktioniert, und kann mit dem Befehl "i2cset" aus der FHEM-Kommandozeile angesteuert werden.

Ich habe zwar das Einführungs -PDF gelesen, tue mir mit der Fhem Syntax aber mächtig schwer. Fhem hat mir bei Tastendruck an meinem FS20 Sender ein Device mit dem Namen FS20_340103 angelegt. Dieses nutze ich als pattern. Wie muss aber jetzt die Syntax lauten um den Befehl dieses patterns auszuwerten und entsprechend ein shell Kommando abzusetzen? Ist so etwas möglich:

if (befehl == on)ausgang = 0x01     <- Perl Auswertung des Patterns    
else if (befehl == off)ausgang = 0x00

"i2cset -y 3 0x10 0x05 ausgang"     <- Absetzen des shell Befehls mit Variable aus dem notify


Etwas blöd geschrieben, aber ich hoffe ihr versteht was ich meine :-)

Ist es evtl. sinnvoller zunächst für jedes Relais eine dummy notify zu erzeugen?










Dirk

Hallo SSSleep,

So sollte das funktionieren

define Schalter FS20 11111111 2222
attr Schalter webCmd off:on

define notify_Schalter_on  notify Schalter:on "/path/to/i2cset parameterOn"
define notify_Schalter_off notify Schalter:off "/path/to/i2cset parameterOff"


Housecode, Tastercode usw. musst du ggf. noch anpassen.

Gruß
Dirk

SSSleep

Hallo Dirk,

danke...das probiere ich heute Abend gleich aus. Zwischenzeitlich habe ich auch noch dieses HOWTO gefunden:

http://www.fhemwiki.de/wiki/Script_mit_Webschalter_ausl%C3%B6sen

Wozu wird denn dieses 'attr Licht_an dummy 1' gesetzt?

Wie funktioniert es denn mit dimmen? Gibt es eine Art dim_start und dim_end Befehl, die den Beginn und das Ende eines "Dimmer-Vorganges" kennzeichnen. FS20 sendet ja den Dimm Befehl zyklisch und fhem müsste über ein timeout prüfen wann der Dimm Befehl ausbleibt.  

Fragen über Fragen :-)

Viele Grüße

Dirk

Hi SSSleep,

Zitatattr Licht_an dummy 1
Wird gesetzt, damit ein evt. angeschlossener Sender (CUL) nix sendet wenn Licht1_an auslöst.
Den hatte ich in meinem Beispiel vergessen. der müsste dann da noch mit rein.

ZitatSet the device attribute dummy to define devices which should not output any radio signals. Associated notifys will be executed if the signal is received. Used e.g. to react to a code from a sender, but it will not emit radio signal if triggered in the web frontend.

Gruß
Dirk