(gelöst) Enigma2 on off zuverlässig erkennen

Begonnen von ilprincipe, 03 Mai 2015, 20:58:30

Vorheriges Thema - Nächstes Thema

ilprincipe

Hallo zusammen!

Eigentlich möchte ich was recht einfaches: Wenn das Fernsehen (in meinem Fall ein Enigma2-Receiver = Wz.TvReceiver) ausgeschaltet wird, soll ein Dummy (=TVStatus) auf "aus" gesetzt werden. Wenn der Receiver angeschaltet ist, soll der Dummy wieder den Wert "an" erhalten.

Das Problem scheint zu sein, dass das Enigma2-Modul einfach mitten während des Fernsehguckens "power:off" ausspuckt ohne (für mich) erkennbaren Grund, und somit der Dummy auf "aus" und kurze Zeit später wieder auf "an" gesetzt wird.

2015-05-03 17:57:45 ENIGMA2 Wz.TvReceiver power: off

Hier mal der "DEF-Inhalt" vom DOIF mit dem ichs versucht habe:

([Wz.TvReceiver:power] eq "on") (set TVStatus on) DOELSEIF ([Wz.TvReceiver:power] eq "off") (set TVStatus off)

Ich bin über jede Hilfe dankbar :)






Otto123

Hallo,

keine Ahnung mit dem Enigma Modul und warum es das tut.

Ich würde ein watchdog definieren. Wobei das auf die gesendeten Befehle schwierig ist.
Wenn Du den Zustand mit einfach mit presence ping und einem watchdog ermittelst?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Damian

#2
Zitat von: ilprincipe am 03 Mai 2015, 20:58:30
Hallo zusammen!

Eigentlich möchte ich was recht einfaches: Wenn das Fernsehen (in meinem Fall ein Enigma2-Receiver = Wz.TvReceiver) ausgeschaltet wird, soll ein Dummy (=TVStatus) auf "aus" gesetzt werden. Wenn der Receiver angeschaltet ist, soll der Dummy wieder den Wert "an" erhalten.

Das Problem scheint zu sein, dass das Enigma2-Modul einfach mitten während des Fernsehguckens "power:off" ausspuckt ohne (für mich) erkennbaren Grund, und somit der Dummy auf "aus" und kurze Zeit später wieder auf "an" gesetzt wird.

2015-05-03 17:57:45 ENIGMA2 Wz.TvReceiver power: off

Hier mal der "DEF-Inhalt" vom DOIF mit dem ichs versucht habe:

([Wz.TvReceiver:power] eq "on") (set TVStatus on) DOELSEIF ([Wz.TvReceiver:power] eq "off") (set TVStatus off)

Ich bin über jede Hilfe dankbar :)

Du kannst eine Verzögerung für deinen off-Fall definieren. Diese sollte etwas länger dauern, als die Dauer, in der dein Receiver zwischendurch auf aus geht. Hier z. B. mit Verzögerung von 120 Sekunden:

attr <dein_doif_modul> wait 0:120

Damit wird der off-Fall nur geschaltet, wenn innerhalb von 120 Sekunden der Receiver nicht wieder angeht.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Hollo

Zitat von: Otto123 am 03 Mai 2015, 21:36:14...keine Ahnung mit dem Enigma Modul und warum es das tut...
Das ist doch eigentlich die zentrale Frage; alles andere ist doch nur ein "Würgaround".

Tut es das wirklich und wenn ja warum!?   :o

- wie hast Du das Intervall definiert?
- von welchem Receiver sprechen wir überhaupt (Type)?
- reden wir vom normalen Betrieb oder auch Wechsel standby?
- hast Du es alternativ mal mit dem presence-Reading probiert?

Ich habe es noch nicht kontrolliert, aber ein solches Verhalten ist mir bei meiner Dreambox bisher zumindest nicht aufgefallen.

P.S.:  Du könntest den TV evtl. auch per CEC aus-/einschalten
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

cornelius fillmore

Ich hatte das Enigma-Modul auch eine zeitlang für meine Receiver am laufen.

Ich habe dann aber auf das presence-Modul umgesattelt, weil mir die Infos und Funktionalität des Enigma-Moduls zu viel waren.
3 x Fhem 5.9 mit RPI

ilprincipe

Zitat- wie hast Du das Intervall definiert?
intervall ist im define des enigma2-moduls festgelegt auf 30 (Sekunden)

Zitat- von welchem Receiver sprechen wir überhaupt (Type)?
Gigablue HD Quad Plus

Zitat- reden wir vom normalen Betrieb oder auch Wechsel standby?
Während des laufenden TV-Bildes wird gelegentlich Power:off ausgegeben. Sobald ich in Standby wechsle gibt er Power:off korrekt aus.

Zitat- hast Du es alternativ mal mit dem presence-Reading probiert?
Werde ich mal versuchen, Danke für den Tipp

ZitatDu kannst eine Verzögerung für deinen off-Fall definieren.
Gute Idee, danke. Das Problem dann ist natürlich, dass die Dinge, die sonst jetzt mit einer maximalen Verzögerung von 30 Sekunden ausgelöst werden, dann halt erst später ausgelöst werden. Ich werde es mal ausprobieren und berichten :)

Ich habe kürzlich im Presence-Modul die IP meines Smartphones angepasst und lasse das ebenfalls mit einem Intervall von 30 prüfen. Seitdem sind "Fehlalarme" durch das Enigma2-Modul deutlich mehr geworden. Kann das irgendeinen Zusammenhang haben?

Hollo

Zitat von: ilprincipe am 04 Mai 2015, 14:25:01
Ich habe kürzlich im Presence-Modul die IP meines Smartphones angepasst und lasse das ebenfalls mit einem Intervall von 30 prüfen. Seitdem sind "Fehlalarme" durch das Enigma2-Modul deutlich mehr geworden. Kann das irgendeinen Zusammenhang haben?
Das klingt mehr nach Netzwerkproblemen (evtl. 2 Geräte mit identischer IP?) oder da bremst was Dein FHEM.
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

ilprincipe

Netzwerkmäßig habe ich eigentlich nichts außergewöhnliches. Alles (=2 Laptops, 3 Smartphones, 1 NAS, 1 PC, 1 Gigablue) über LAN, POWERLAN oder WLAN mit der Fritzbox verbunden und da bei den "wichtigen" Geräten eine feste IP vergeben. Doppelt ist keine IP vergeben. Der Wechsel der IP vom Smartphone wurde nötig, nachdem ich nach nem Android-Update kein WLAN mehr hatte, was aber bei dem Model ein bekanntes Problem zu sein scheint.

Habe jetzt das WAIT-Attribut im DOIF auf 0:100 gesetzt und seitdem keine Fehlalarme. So darfs gerne bleiben :)