FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: stobor am 14 Januar 2013, 10:54:30

Titel: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: stobor am 14 Januar 2013, 10:54:30
Hallo,
ich habe MAX!-Fensterkontakte installiert und würde nun gern eine Lampe einschalten, sobald ein Fenster geöffnet wird.
Ich dachte da einfach an so etwas:

define ml MAXLAN 192.168.3.23 60 ondemand
...
define doTESTmax notify MAX_006593 set Lampe on


Jetzt wird allerdings die Lampe irgendwie immer wieder eingeschaltet, egal, ob sich der Zustand des Fensters geändert hat oder nicht.
Im Log habe ich keine Events zu den Kontakten gefunden.
Hat jemand einen Tipp?

Danke
Titel: Aw: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: Tobias am 14 Januar 2013, 11:07:55
müsste imho so heißen:
define doTESTmax notify MAX_006593:opened set Lampe on
define doTESTmax notify MAX_006593:closed set Lampe off


oder besser, bittels IF in einem notify abarbeiten
Titel: Aw: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: stobor am 14 Januar 2013, 13:12:42
Das scheint zu funktionieren.
Super, danke.

Mir ist aufgefallen, dass MAX ggf. mehrfach den Status reportet. Dann würde natürlich immer wieder der on-Befehl gesendet, obwohl es nicht notwendig wäre. Idee?

Danke
Titel: Aw: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: Puschel74 am 14 Januar 2013, 13:20:42
Hallo,

define doTESTmax notify MAX_006593:opened{
fhem("set Lampe on") if (value("Lampe") ne "on);
}


Das selbe mit off und die geschwätzigen Fensterkontakte können plaudern wie sie wollen da der Schaltbefehl nur einmal ausgeführt werden
sollte.

Grüße
Titel: Aw: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: Tobias am 14 Januar 2013, 13:20:44
vorher per ReadingsVal den Status von Lampe abfragen und nur dann setzen wenn abweichend
Titel: Aw: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: stobor am 14 Januar 2013, 13:23:13
define doTESTmax notify MAX_006593:opened {\
 if (Value("Aktiviert") eq "on" && !(Value("Lampe") eq "on")) {\
  fhem "set Lampeon";;\
 }\
}


scheint ganz gut zu funktionieren.
Titel: Aw: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: Puschel74 am 14 Januar 2013, 13:23:37
Hallo,

ReadingsVal geht auch ist aber etwas länger als Value ;-)

Um Schaltaktionen zu prüfen benutze ich nur Value - lässt sich schön in den Code integrieren (Ok, ReadingsVal auch).
Für Abfragen bzgl. Temperatur oder Luftfeuchte oder kurz, alles was kein on oder off liefert, benutze ich ReadingsVal.

Grüße
Titel: Aw: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: Puschel74 am 14 Januar 2013, 13:27:04
Hallo

Zitat von: stobor schrieb am Mo, 14 Januar 2013 13:23define doTESTmax notify MAX_006593:opened {\
 if (Value("Aktiviert") eq "on" && !(Value("Lampe") eq "on")) {\
  fhem "set Lampeon";;\
 }\
}


scheint ganz gut zu funktionieren.

Das funktioniert?
Bei fhem "set Lampeon" fehlt ein Leerzeichen zwischen Lampe und on ;-)
du kannst diese Abfrage aber auch in meinen Schnipsel einbauen

define doTESTmax notify MAX_006593:opened{
fhem("set Lampe on") if ((Value("Lampe") ne "on) && (Value("Aktiviert") eq "on"));
}


Aber mit 3 (4) Möglichkeiten innerhalb von 5 Minuten wirst du sicher eine finden die dir gefällt ;-)

Grüße
Titel: Aw: MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: stobor am 14 Januar 2013, 13:39:42
Ups. sorry. Das Leerzeichen hate ih schon bemerkt.
Aber vielen Dank für die tolle Unterstützung.
Titel: Antw:MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: Afterburner am 09 Dezember 2015, 10:35:19
Servus,

ich stehe gerade vor einem ähnlichen Problem, ich überwache bei mir einen MAX Fensterkontakt (an Tür angebaut) um dann wenn diese geöffnet wird meinen Souroundverstärker auf Mute zu stellen

Soweit funktioniert das schon mal
define TuerAufWarnung notify Heizung.Wohnzimmer.Tuerkontakt:opened set Schlafzimmer.Harmony command Yamaha-AV-Receiver Mute
Für den Fall der Fälle wäre das ja auch OK, aber nicht wenn ich nen Film gucke und mein Weibchen auf den Balkon rennt ^^

Das Problem dabei ist das ich vom Yamaha keinen Status abfragen kann, somit geht das hier dann ja nicht

define TuerAufWarnung notify Heizung.Wohnzimmer.Tuerkontakt:opened{
fhem("set Schlafzimmer.Harmony command Yamaha-AV-Receiver Mute") if (Value("WAS HIER REIN") ne "on");
}

Titel: Antw:MAX!-Fensterkontakt zum Schalten von Aktoren nutzen
Beitrag von: Kharim am 10 Dezember 2015, 07:49:51
Zitat von: Afterburner am 09 Dezember 2015, 10:35:19
Servus,

ich stehe gerade vor einem ähnlichen Problem, ich überwache bei mir einen MAX Fensterkontakt (an Tür angebaut) um dann wenn diese geöffnet wird meinen Souroundverstärker auf Mute zu stellen

Soweit funktioniert das schon mal
define TuerAufWarnung notify Heizung.Wohnzimmer.Tuerkontakt:opened set Schlafzimmer.Harmony command Yamaha-AV-Receiver Mute
Für den Fall der Fälle wäre das ja auch OK, aber nicht wenn ich nen Film gucke und mein Weibchen auf den Balkon rennt ^^

Das Problem dabei ist das ich vom Yamaha keinen Status abfragen kann, somit geht das hier dann ja nicht

define TuerAufWarnung notify Heizung.Wohnzimmer.Tuerkontakt:opened{
fhem("set Schlafzimmer.Harmony command Yamaha-AV-Receiver Mute") if (Value("WAS HIER REIN") ne "on");
}


Was willst du denn genau machen?
Verstärker aus wenn Tür offen, aber nicht bei Film? Sprich nur bei Musik?
Wie gibst du denn Musik und Film wieder?
(zb Xbmc/Kodi lässt sich umfangreich in FHEM einbinden und abfragen)

Wenn du "nur" den Status vom Yamaha benötigst, könnte man es mit einem Dummy versuchen.
Immer wenn du den Verstärker über Fhem aus/an schaltest, machst du das gleiche mit dem Dummy.
Solange du den Verstärker nicht per Hand bedienst, hättest du damit seinen Status.

(Und wenn du ihn per Hand bedienen willst dann kleb dir nen Funktaster hin und leite es wieder übers FHEM)

Grüße,
Kharim