set blink: am Ende nicht abschalten?

Begonnen von The Grue, 01 Oktober 2018, 15:03:38

Vorheriges Thema - Nächstes Thema

The Grue

Servus!

Gerade habe ich mir ein DOIF gebaut, das mit allen Leuchten blinkt, wenn das Telefon klingelt:

defmod BlinkenBeiAnruf DOIF ([FritzBox.Anrufe:event] eq "ring") (set group=Lichter blink 3 2)


Funktioniert auch prima. Allerdings: bei "blink" hätte ich irgendwie erwartet, daß die Leuchten getoggelt werden, also nach dem Blinken wieder den Zustand haben wie vor dem Blinken. So wie ich es jetzt habe, sitze ich nach dem Blinken evtl. im Dunkeln, obwohl vorher das Licht an war  :P

Ist das bei "blink" so gedacht? Gibt es einfache Alternativen?

The Grue

Ich könnte natürlich auch vier mal blinken...?

The Grue

Nein, hilft nicht. Blinken ist scheinbar als  on - off definiert...

Irgendwie fände ich toggle - sleep - toggle - sleep ... logischer.

rabehd

Es ist wahrscheinlich eine sicherheitsrelevante Info, oder warum verräts Du nicht welche Devices in der Gruppe sind?

Toggle bedeutet jedesmal den Änderungsbefehl an alle Geräte in der Gruppe zu senden. Da kann schnell was zusammenkommen.

Wie schaltest Du denn das Blinken wieder aus?
Was passiert, wenn niemand zu hause ist?

ZitatIrgendwie fände ich toggle - sleep - toggle - sleep ... logischer.
ich nicht
Auch funktionierende Lösungen kann man hinterfragen.

The Grue

Ich hab' jetzt mal ganz naiv versucht, das so zu lösen:


sub blinkToggle($$$){
my ($what, $count, $time) = @_;
for(my $i=0; $i<$count; $i++){
fhem("sleep $time; set $what toggle");
fhem("sleep $time; set $what toggle");
}
}


Klappt aber nicht:

Zitat2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht on
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht off
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht on
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht off
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht on
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht off
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht on
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht off
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht on
2018.10.01 15:37:37 3: ZWave set Kueche.Deckenlicht off
2018.10.01 15:37:38 2: ZWDongle_ProcessSendStack: no ACK, resending message 010a0013140326010025eb18

Sieht so aus, als ob der sleep ignoriert wird...

The Grue

Hallo Rabehd!

Sicher ist das sicherheitsrelevant. Ich lasse meine Aquarienpumpen blinken in dem ich sie so schnell laufen lasse, daß sie rot glühen!   :P

Sorry, nach Deiner freundlichen Antwort konnte ich mir das nicht verkneifen.

Zu Deinen Fragen:
- Ich schalte Leuchten. In der Gruppe "Lichter" sind alle meine Lichter drin, momentan alles Z-Wave. Leider weiss ich nicht, wie ich fhem dazu bringe, die Mitglieder der Gruppe Lichter aufzulisten :(
- Der blink-Befehl hat die Anzahl der "Blinker" als ersten Parameter, d.h. ich schalte das gar nicht aktiv ab. Blinkt halt dann immer z.B. drei mal. Alternativ könnte ich auch mit "blink 0 0" auf das entsprechende Event der Fritzbox reagieren, aber dann blinkt das vielleicht ewig, bis jemand auflegt...
- Wenn ich nicht zu Hause bin? Macht ein Baum der im Wald umfallt ein Geräusch, wenn keiner da ist um es zu hören? Na gut, es blinkt halt drei mal und keiner sieht es :o

Wie löse ich nun das Problem, daß ich nachts im Dunkeln sitze, wenn ein Anruf kommt? Mein eigener Versuch (siehe oben) klappt leider nicht.



rabehd

https://forum.fhem.de/index.php?topic=62022.0

Ich persönlich würde nicht alle Lampen blinken lassen. Das ist eine komischer Gedanke, dass gegen 22:00 beim Fernsehen oder Zähneputzen da ganze Haus anfängt zu blinken. Bei mir gilt: weniger ist mehr.
Auch funktionierende Lösungen kann man hinterfragen.

Prof. Dr. Peter Henning

ZitatWie löse ich nun das Problem, daß ich nachts im Dunkeln sitze, wenn ein Anruf kommt?
Ordentlichen Code schreiben, der den Zustand vorher abfragt.

Und vielleicht aus etwas Nachdenken: Die Lebensdauer von Leuchtmitteln wird durch die Anzahl der Schaltvorgänge bestimmt, nicht durch die Anschaltdauer...

LG

pah

WireMan

"Die Lebensdauer von Leuchtmitteln wird durch die Anzahl der Schaltvorgänge bestimmt, nicht durch die Anschaltdauer..."

Das ist ja wohl Unsinn!

rischbiter123

Zitat von: WireMan am 02 Oktober 2018, 16:06:54
"Die Lebensdauer von Leuchtmitteln wird durch die Anzahl der Schaltvorgänge bestimmt, nicht durch die Anschaltdauer..."

Das ist ja wohl Unsinn!

Ist es nicht, außer man hat modernste LED. Oder was glaubst Du, warum die Dinger immer beim Einschalten kaputtgehen?

LG

Andreas
4*Raspi, Max Thermostate und Fensterkontakte, FB7590, Mysensors und NanoCUL, IT und Sonoff, zigbee2mqtt2

The Grue

LED-Beleuchtung wird per PWM gedimmt. Also mehrere 1000mal pro Sekunde ein- und ausgeschaltet.
-> Unsinn.

Auch zum "Ordentlichen code" haben wir wohl unterschiedliche Auffassungen. Für jede Leuchte extra den aktuellen Wert abzufragen generiert nochmal mehr Traffic. Eine gerade Anzahl an Toggles ist da IMHO ordentlicher.

Wuppi68

Zitat von: WireMan am 02 Oktober 2018, 16:06:54
"Die Lebensdauer von Leuchtmitteln wird durch die Anzahl der Schaltvorgänge bestimmt, nicht durch die Anschaltdauer..."

Das ist ja wohl Unsinn!
Respekt: 1. Beitrag


Mach Dich mal schlau - https://www.trilux.com/de/beleuchtungspraxis/leuchtmittel/leuchtmittel-eigenschaften/lebensdauer-von-lampen/ als Beispiel
FHEM unter Proxmox als VM

The Grue

Da steht:


"LEBENSDAUER VON LED-LEUCHTEN
Auch bei LED-Leuchten nimmt der Lichtstrom mit steigender Betriebsdauer ab. "
Von Schaltvorgängen steht da gar nichts und mein Argument mit der PWM wird schwer wiederlegbar sein.

Ich muss zugeben, daß ich vorausgesetzt habe, daß ich wohl keine Energiesparlampen blinken lasse. Die Pauschalaussage "Die Lebensdauer von Leuchtmitteln wird durch die Anzahl der Schaltvorgänge bestimmt" (= von allen Leuchtmitteln) ist falsch.

Wunderbar, wie der Ton hier im Forum ist. Als OP bin ich nicht der Meinung, daß mein erster Post in dem Thread mit diesem Ton angefangen hat.
Echt hilfreich war in diesem Thread auch noch keiner :(

Ist wohl klüger in einem neuen Thread zu meinem Codeschnipsel um Hilfe zu flehen bitten.

krikan

Zitat von: The Grue am 01 Oktober 2018, 15:03:38
Allerdings: bei "blink" hätte ich irgendwie erwartet, daß die Leuchten getoggelt werden, also nach dem Blinken wieder den Zustand haben wie vor dem Blinken. So wie ich es jetzt habe, sitze ich nach dem Blinken evtl. im Dunkeln, obwohl vorher das Licht an war  :P

Ist das bei "blink" so gedacht?
Ja, blink ist genauso definiert, siehe in https://fhem.de/commandref.html#setExtensions

ZitatGibt es einfache Alternativen?
Je nach verwendeten ZWave-Geraeten und deren Features (unterstützten Befehlen) gibt es verschiedene Lösungsansaetze. Der Weg über einzelne Befehle an jedes ZWave-Geraet führt aufgrund der Funklast oftmals zu Problemen.

Gruß, Christian