Toggle-Befehl kombiniert mit dimupdown für FS20-DI verwenden

Begonnen von MarcS, 19 März 2013, 15:41:40

Vorheriges Thema - Nächstes Thema

Puschel74

Ok.
Ich hab dir deinen geposteten Code mal umgebaut:

define 1_WZ_T2_3_notify notify FS20_a82602 \{
  if (Value("1_WZ_D3") eq "off")  {
    fhem ("set 1_WZ_D3 dim100%%");
  }
  else {
    fhem ("set 1_WZ_D3 off");
  }
}


Sollte soweit, ohne Dim, funktionieren.

Grüße

P.S.: Über den Rest muss ich erst ne Nacht schlafen.
Vllt. hat ja jemand anders ne (schnellere) Lösung, oder eine gute Idee
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Puschel74

Zitat von: MarcS schrieb am Mi, 20 März 2013 21:23Hmmmm, ich hab das mit UntoggleIndirect probiert, aber das hat nicht funktioniert.
Im Wiki steht, dass das für Dimmer nicht funktioniert...

Klar. Weils ganz schön tricky ist.
Du musst den letzten Status auslesen und den letzten Dim-Befehl um zu entscheiden ob du weiter runterdimmen oder wieder hochdimmen sollst.
Dann noch auf welchen Wert zu dimmen ist und das ganze, für den WAF, ohne die Taste loslassen zu müssen ;-)

Grüße

P.S.: Wenn zum dimmen grobe Stufen reichen kann das auch selbst in einige if-abfragen zerlegt werden - viel Spaß^^
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.


Puschel74

#18
Hallo und Guten morgen (Urlaub ist echt was schönes ;-) )

hier mal zu Versuchszwecken ein Code:

define 1_WZ_T2_3_notify notify FS20_a82602 {
  if (Value("FS20_a82602") eq "toggle")  {
    if (Value("1_WZ_D3") eq "off")  {
      fhem ("set 1_WZ_D3 dim100%%");
    }
    else {
      fhem ("set 1_WZ_D3 off");
    }
  }
  if (Value("FS20_a82602") eq "dimupdown")  {
    fhem ("set 1_WZ_D3 %");
  }
}


FS20_a82602 ist der "Schalter" nehm ich mal an.

Erst prüfen wir ob dieser ein "toggle" sendet ... wenn ja wird geprüft ob das Licht an oder aus ist und dementsprechend um-geschaltet.
Aber Achtung! Wenn das Licht NICHT off ist wird IMMER erst ausgeschaltet und beim zweiten toggle eingeschaltet resp. auf 100% hoch gedimmt.
Wenn kein toggle gesendet wurde prüfen wir ob FS20_a82602 ein dimupdown sendet (dies bitte ggf. anpassen je nachdem was gesendet wird)
und schaleifen diesen Befehl dann 1:1 an 1_WZ_D3 durch.

Theoretisch sollte ein kurzer Tastendruck (toggle) das Licht ausschalten / auf 100% dimmen und ein langer Tastendruck (dimm) das Licht dann dimmen.

Bitte mal versuchen und Rückmelden was das Licht macht.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

MarcS

Hallo und danke für den Code. Ich war leider mit Grippe lach gelegen, konnte deswegen nicht schreiben. Ich werde das heute mal ausprobieren und Rückmeldung geben, was da geht...
V G
Marc

MarcS

So - positive Rückmeldung !!!
Das Ganze funktioniert, wie es soll.

Getoggelt an/aus plus Dimmfunktion bei langem Tastendruck.

Vielen Dank für die Hilfe !!!

Puschel74

Hallo,

wunderbar wenn es klappt.

Auf zu neuen Ufern ;-)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schalkan56

Hallo, wie kann ich den obigen Code in fhem integrieren? Muss das in die 99myutil???

Puschel74

Hallo,

wenn ein Code in eine 99_irgendwas.pm kommt findet sich am Anfang das Schlüsselwort "sub".
Das fehlt hier - also nein, der code kommt nicht in dei 99_irgendwas.pm

Weiters findet sich im define das Schlüsselwort "notify".
Das heisst der Code kommt direkt in die FHEM-Konfiguration.

Wie du den Code dort eingibst (FHEM-Befehlszeile) wurde hier schon einige Male erklärt - evtl. mal danach suchen.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schalkan56

Ja sorry habe das etwas blöd geschrieben. also ich habe folgenden befehl an meine stehlampe gekoppelt:

define Schalt notify FS20_015d00 set wz_Stehlampe toggle

Damit kann ich logischerweise nur ON - Off schalten -> Funktioniert auch.

Jetzt wollte ich diesen notify per webfrontend (DEF) mit dem obigen code anpassen um auch dimmen
zu können. SPrich in den notify per copy and paste. WEnn ich das mache geht aber garnichts mehr (weder an -aus noch dimmen).
Ist diese Art der Eingabe komplett falsch? ( Habe auch gerade versucht nach Codeeingabe zu suchen aber mir fehlen
anscheinend die keywords)....

Puschel74

Hallo,

wenn du das per DEF versuchst wären ein paar Screenshots interessant damit wir sehen was du siehst.
Weiters wirft FHEM Fehlermeldungen aus - diese wären auch recht interessant.

Und wenn du den obigen Code 1:1 per copy&paste einträgst wird sich nichst tun - es sei den deine Geräte heissen exakt gleich wie in dem Code.

Grüße

P.S.: Suchbegirffe "Konfiguration bearbeiten" oder "notify anlegen" und in der erweiterten Suche nach Puschel* suchen lassen.
Dann solltest du ein paar Treffer bekommen.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schalkan56

Ok schonmal vielen Dank für die Hilfe...werde mich auf jeden Fall durch das Forum suchen...Screenshots
habe ich im Anhang...wobei notify_alt die lampe toggelt und notify_neu garnicht reagiert.....Fehlermeldung bekomme ich nicht

Puschel74

Hallo,

im DEF sollte das so
FS20_a82602 {
  if (Value("FS20_a82602") eq "toggle")  {
    if (Value("1_WZ_D3") eq "off")  {
      fhem ("set 1_WZ_D3 dim100%%");
    }
    else {
      fhem ("set 1_WZ_D3 off");
    }
  }
  if (Value("FS20_a82602") eq "dimupdown")  {
    fhem ("set 1_WZ_D3 %");
  }
}

aussehen.
Passt aber nicht so ganz zu deinem notify_neu - wirf mal die Leerzeile nach dem Device raus und setz die erste { so wie im Beispiel.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

schalkan56

Bin schon etwas weiter, was die erste Schleife angeht....nun kann ich wieder ein und aus schalten.


FS20_015d00 {
  if (Value("FS20_015d00") eq "toggle")  {
    if (Value("wz_Stehlampe") eq "off")  {
      fhem ("set wz_Stehlampe on");
    }
    else {
      fhem ("set wz_Stehlampe off");
    }
  }
  if (Value("FS20_015d00") eq "dimup")  {
    fhem ("set wz_Stehlampe %");
  }
}


Habe auch die Klippe des dimmens entdeckt - die Fernbedinung ist von F20, der dimmer ist
von Homematic.Mir ist aber nicht klar wie ich den Tastendruck auf die HM-Hardware
abstimme....nur mit press long geht das leider nicht...Gibt es da einen Ansatz?

Puschel74

#29
Hallo,

die HM-Dimmer wollen mit "up" und "down" angesprochen werden zum dimmen  ;)

Was den Dim-Teil in etwa so
if (Value("FS20_015d00") eq "dimup")  {
    fhem ("set wz_Stehlampe up");
  }
if (Value("FS20_015d00") eq "dimdown")  {
    fhem ("set wz_Stehlampe down");
  }
}

erweitern würde.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.