[gelöst] notify und Funk-Handsender, 4 Tasten

Begonnen von bommel-bs, 27 August 2014, 22:10:51

Vorheriges Thema - Nächstes Thema

bommel-bs

Hallo,

ich möchte eine Lampe via Funk-Handsender, 4 Tasten und den Funk-Schaltaktor 1-fach, Zwischenstecker schalten.

Wenn eine Taste gedrückt wird, soll die Lampe für 15 Minunten leuchten. Wird innerhalb der 15 Minuten wieder eine Taste gedrückt soll die Lampe wieder ausgehen. Da funktionier schon fast. Das notify wertet 3 Impulse aus und schaltet somit ein, aus, ein oder aus, ein, aus

Auszug aus der Config

define KZ_FB_2_1_Btn_01_off notify KZ_Fernbedienung_2_1_Btn_0*.* { \
   my $state_KZ_Steckdose_Fenster_links = ReadingsVal("KZ_Steckdose_Fenster_links","state","");;\
   Log 1,("Status KZ_Steckdose_Fenster_links: $state_KZ_Steckdose_Fenster_links ");;\
   if ( $state_KZ_Steckdose_Fenster_links =~ /off/ ) { \
        Log 1,("ein");;\
        fhem ("set KZ_Steckdose_Fenster_links on") ;; \
        fhem ("define SchalterOff2 at +00:15:00 set Nachtischlampe off");;\
   } \
   else { \
        fhem ("set KZ_Steckdose_Fenster_links off");;\
        Log 1,("aus");;\
   } \
}


Auszug aus dem Eventlog beim schalten

2014-08-27 22:08:30 CUL_HM KZ_Fernbedienung_2_1 battery: ok
2014-08-27 22:08:30 CUL_HM KZ_Fernbedienung_2_1 KZ_Fernbedienung_2_1_Btn_04 Short (to HMLAN1)
2014-08-27 22:08:30 CUL_HM KZ_Fernbedienung_2_1 CMDs_done
2014-08-27 22:08:30 CUL_HM KZ_Steckdose_Fenster_links set_on
2014-08-27 22:08:30 Global global DEFINED SchalterOff2
2014-08-27 22:08:30 CUL_HM KZ_Steckdose_Fenster_links set_off
2014-08-27 22:08:30 CUL_HM KZ_Steckdose_Fenster_links set_on
2014-08-27 22:08:30 CUL_HM KZ_Fernbedienung_2_1_Btn_04 trigDst_AFFE12: noConfig
2014-08-27 22:08:30 CUL_HM KZ_Fernbedienung_2_1_Btn_04 Short (to HMLAN1)
2014-08-27 22:08:30 CUL_HM KZ_Fernbedienung_2_1_Btn_04 trigger: Short_7
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links level: 100
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links pct: 100
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links deviceMsg: on (to HMLAN1)
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links on
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links timedOn: off
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links level: 0
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links pct: 0
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links deviceMsg: off (to HMLAN1)
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links off
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links timedOn: off
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links level: 100
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links pct: 100
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links deviceMsg: on (to HMLAN1)
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links on
2014-08-27 22:08:31 CUL_HM KZ_Steckdose_Fenster_links timedOn: off


Wie muß ich den notify schreiben, so da nur eine Schaltbefehl ausgeführt wird?

Viele Grüße
Stefan

betateilchen

Probiers mal so:


define KZ_FB_2_1_Btn_01_off notify KZ_Fernbedienung_2_1_Btn_0..trigger..Short.* {


Die Homematic Fernbedienungen kennen von Haus aus kein on oder off, die schicken nur trigger.
Bei mir sind die Fernbedienungen deshalb so eingebunden, dass ein "Short" den Aktor einschaltet, ein "Long" den Aktor ausschaltet.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

bommel-bs

Danke betateilchen,

das war die gesuchte Lösung.

Gruß
Stefan

fiedel

Was man in so einer kleinen FB alles unterbringen kann (erst teilweise realisiert):

Taste an der LED:
Short: Durchschalten der Außenbeleuchtung (eine nach der anderen an und wieder aus / zuletzt alle aus) per hochzählender Variable
Long1 (3x Long innerhalb 10 Sek): Bewässerung Ausblasfunktion - Autom. Durchschalten der Bewässerungs- und Steckdosenkreise (einer nach dem anderen im kontinuierl. Durchlauf jeweils ca. 10 Sek. ) per hochzählender Variable ; Pumpe bleibt aus
Long2: Ausblasfunktion Stop

Taste mit 1 Pickel:
Short1: Eine bestimmte Lampe der Außenbeleuchtung an für Zeit
Short2: Eine bestimmte Lampe der Außenbeleuchtung aus
Long1: Alle Lampen der Außenbeleuchtung an (structure)
Long2: Alle Lampen wieder aus

Taste mit 2 Pickeln:
Short: Gießkannenfüllfunktion - Pumpe läuft an -> Ventil "Wassersteckdosen" macht auf für Zeit x (gemessen bis Kanne voll) -> Pumpe verzögert aus.
Long1: Manuelle Bewässerung - Pumpe läuft an -> Ventil "Wassersteckdosen" macht auf für 1h -> Pumpe danach verzögert aus.
Long2: Manuelle Bewässerung aus -  Ventil "Wassersteckdosen" aus -> Pumpe verzögert aus.

Taste an Schlüsselring:
Short: Durchschalten der Bewässerungskreise (einer nach dem anderen an und wieder aus / zuletzt alle aus) per hochzählender Variable ; Pumpe zuerst an / zuletzt aus
Long1): Autom. Bewässerung manuell gestarteter Durchlauf Start  ; Pumpe zuerst an / zuletzt aus
Long2: Autom. Bewässerung manuell gestarteter Durchlauf Stop ; Pumpe zuerst an / zuletzt aus
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423