FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: mikenike am 09 Juni 2015, 17:32:28

Titel: HUE über Homematik 6-Tastenschalter schalten +dimmen
Beitrag von: mikenike am 09 Juni 2015, 17:32:28
Hallo, ich bin ein FHEM Neuling hab schon viel hier aus dem Forum den einschlägigen PDFs und dem Wiki gelernt, aber an diesem Punkt komme ich leider nicht alleine weiter:

Ich will meine HUE Devices (1xLED Stripes, 1x HUE LUX, 1XPhillips Smartlink) mit meinem 6-Fach Homematic Schalter schalten und dimmen. Folgendes soll funktionieren:

Taste kurz Drücken: Toggle. Genauer: Wenn Licht gerade an ist, egal welche dimmstufe, dann soll es ausgegehn (schön wäre: dabei sollte es langsam runterdimmen ca 10 sec.) Wenn es gerade aus ist soll es mit 100% Leuchtkraft angehen.

Taste lange drücken: wenn 20%-100%: runterdimmen bis loslassen; nochmal lange drücken: hochdimmen bis loslassen; nochmal lange drücken runterdimmen bis loslassen usw...
wenn 0-20%:  hochdimmen bis loslassen; nochmal lange drücken runterdimmen bis loslassen usw...


Was ich bisher geschafft habe:

Toggle alleine geht. Hier das DEF von meinem notifiy WoziBtn02:

HM_3528EB_Btn_02:Short.* set HUEDevice3 toggle

Alle Versuche irgendwie Dimmen zu können über den Schalter schlugen fehl (Über die App oder den Browser lässt sich aber schonmal alles Dimmen).

Aktuell habe ich bei diesem Versuch aufgegeben, es tut sich einfach nichts:

HM_3528EB_Btn_02 {
  if (Value("HM_3528EB_Btn_02") eq "toggle")  {
    if (Value("HUEDevice3") eq "off")  {
      fhem ("set HUEDevice3 dim100%%");
    }
    else {
      fhem ("set HUEDevice3 off");
    }
  }
  if (Value("HM_3528EB_Btn_02") eq "dimupdown")  {
    fhem ("set HUEDevice3 %");
  }
}


was mach ich falsch?

schonmal Danke im vorraus
mikenike

PS: noch ein anderes "problem" am rande: mein Logfile ist rießengroß, da es minütlich von ner Hue Fehlermeldung vollgespammt wird! wie krieg ich das weg, und das logfile resettet?
Titel: Antw:HUE über Homematik 6-Tastenschalter schalten +dimmen
Beitrag von: Paul am 09 Juni 2015, 19:11:07
Ich habe es so. :
HM_3528EB_Btn_02:Long.* set HUEDevice3 dimDown
Titel: Antw:HUE über Homematik 6-Tastenschalter schalten +dimmen
Beitrag von: mikenike am 09 Juni 2015, 21:05:33
Ok, vielen Dank, ich dachte, das hatte ich schon so probiert und es ging nicht, aber jetzt gehts.

ich hab jetzt neben WoziBtn02 (short/toggle) WoziBtn02dim (long/dimDown) definiert. Kann ich die auch irgendwie zusammenfassen?

leider kann ich jetzt nicht wieder hochdimmen... und wenn ich anschalte, dimme und wieder ausschalte, dann ist beim nächsten mal anschalten keine 100% da, sondern der gedimmte wert. erst nachdem ich komplett runtergedimmt hab kommt beim anschalten beim nächsten mal wieder die Volle leistung

wie kriege ich das in den Griff?
Titel: Antw:HUE über Homematik 6-Tastenschalter schalten +dimmen
Beitrag von: Puschel74 am 09 Juni 2015, 21:14:53
Anstelle von
if (Value("HM_3528EB_Btn_02") eq "toggle")  {
würde ich auf
if ($EVENT eq "toggle")  {
abfragen.
Ist kürzer und mMn einfacher.
Den Rest per if abfragen und gedanklich logisch vorgehen.
Titel: Antw:HUE über Homematik 6-Tastenschalter schalten +dimmen
Beitrag von: mikenike am 10 Juni 2015, 09:43:35
Ok, das Probiere ich heut abend noch aus, aber ich denke nicht dass das mein Problem Löst, dass garnichts geht.

Aktuell geht ja schonmal einiges (Ohne komplizierte If Abfragen), ist aber noch wenig Praktikabel:

Kurzes Drücken schaltet nicht immer EIN (100%) und AUS, sondern manchmal EIN(letzterwertgedimmt%) AUS.
Langes Drücken Dimmt nur runter. Ein Zweites Langes Drücken sollte dann Hochdimmen, ein Nochmaliges dann wieder runter...usw. Bis wieder Kurz gedrückt wird, dann AUS.

Beim nächsten Einschalten dann wieder 100% (kurzgedrückt) oder Hochdimmen, wenn langegedrückt...
Titel: Antw:HUE über Homematik 6-Tastenschalter schalten +dimmen
Beitrag von: mikenike am 10 Juni 2015, 22:35:23
Also, da ich nicht weiterkomm hier nochmal ne ganz blöde Frage, wo muss ich den Code
HM_3528EB_Btn_02 {
  if ($EVENT eq "toggle")  {
    if (Value("HUEDevice3") eq "off")  {
      fhem ("set HUEDevice3 dim100%%");
    }
    else {
      fhem ("set HUEDevice3 off");
    }
  }
  if (Value("HM_3528EB_Btn_02") eq "dimupdown")  {
    fhem ("set HUEDevice3 %");
  }
}


reinschreiben? Ich hab sie zurzeit in der DEF vom Btn_02 stehn... bloß irgendwie schwant mir, dass das totaler humbug ist und in irgend ne config datei reingeschrieben werden muss.  :-X
Titel: Antw:HUE über Homematik 6-Tastenschalter schalten +dimmen
Beitrag von: Paul am 11 Juni 2015, 07:52:01
Du musst ein notify definieren
Titel: Antw:HUE über Homematik 6-Tastenschalter schalten +dimmen
Beitrag von: mikenike am 11 Juni 2015, 15:55:47
ok, notifiy ist definiert, das steht drin:

HM_3528EB_Btn_02:Short.* set HUEDevice3 toggle
HM_3528EB_Btn_02:Long.* set HUEDevice3 dimupdown

HM_3528EB_Btn_02 {
  if ($EVENT eq "toggle")  {
    if (Value("HUEDevice3") eq "off")  {
      fhem ("set HUEDevice3 dim100%%");
    }
    else {
      fhem ("set HUEDevice3 off");
    }
  }
  if (Value("HM_3528EB_Btn_02") eq "dimupdown")  {
    fhem ("set HUEDevice3 %");
  }
}


Was passiert wenn ich kurz drücke: Das Licht geht an, aber nur auf niedrigster dimm-stufe. bei nochmaligem drücken wieder aus. langes drücken der Taste hat keine Wirkung.
Ich komm nicht weiter :-(

Wenn ich zwei unterschiedliche Notifys definiere (eins für kurzes drücken und eins für langes drücken) dann kann ich schonmal ein ausschalten und runterdimmen aber das sit ja nur die halbe miete :-(