FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: pointde am 12 April 2015, 11:52:31

Titel: Zu viel Funkverkehr durch mein Programm?
Beitrag von: pointde am 12 April 2015, 11:52:31
Ich steuere mein LED16 Display mit je einem Befehl. Erzeuge ich dadurch unnötig viel Funkverkehr? Könnte ich das auch in eine Zeile bringen?
Beim Einschalten:
define LED16_01_ein_notify notify MWSchalter01:on set LED16_01 led red
Beim Ausschalten:
define LED16_01_aus_notify notify MWSchalter01:off set LED16_01 led off

Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: Dietmar63 am 12 April 2015, 14:22:51
Das kommt darauf an, wie oft der MWSchalter on bzw. off sendet.
Wenn du zu oft sendest, geht das Sendelimit in die Knie und FS20 hängt sich dann auf.

In einer Zeile kann man das nicht unterbringen.
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: frank am 12 April 2015, 14:52:17
ZitatIn einer Zeile kann man das nicht unterbringen.
das geht schon, ändert aber nichts am funkverkehr.
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: martinp876 am 12 April 2015, 16:17:12
ich hätte es in eine Zeile geschrieben um CPU-performance zu sparen. Jedes notify muss gegenjeden trigger geprüft werden.

define LED16_01_ein_notify notify MWSchalter01:(on|off) { fhem "set  LED16_01 ".($EVENT eq "on"?"red":"off" }

Aber den Funkverkehr bekommt man nicht runter. Das ginge, wenn MWSchalter01 ein HM-Sensor ist. den könnte man dann peeren. MWSchalter01 und LED16 machen es dann untereinander aus. Das spart wirklich
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: pointde am 12 April 2015, 18:16:08
MWSchalter ist ein 2fach Unterputz Aktor.
Ich habe jetzt mal alle 16 Befehle, so wie du sie geschrieben hast eingegeben. Der Status wird nicht geändert. LED´s bleiben aus...
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: martinp876 am 12 April 2015, 18:24:42
Das notify kannst du sicher selbst debuggen. Wird es angesprungen, ist $EVENT auch on oder off.
Generell wuerde ich das reading trigger nutzen anstelle von state und ausserdem eventonchangereading setzen. Alles auch wegen der performance.
Aber das solltest du dir ansehen, ist das gleiche in ganz fhem. Deine Frage aber ging in den funkverkehr. Du hast 2 aktoren, das koppeln geht also nicht direkt, du brauchst das notify

Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: pointde am 13 April 2015, 13:34:29
Also, ich kann leider den Fehler nicht finden. Mit meinen zwei Zeilen, funktioniert es .
Dein Code ist sauberer aber funktioniert bei mir nicht.
Kannst du mir bitte nochmal helfen?
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: Wuppi68 am 13 April 2015, 16:00:41
define LED16_01_ein_notify notify MWSchalter01:(on|off) { fhem "set  LED16_01 ".($EVENT eq "on"?"red":"off" }

nimm die Klammer raus ...
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: pointde am 13 April 2015, 16:39:51
Ich habe das jetzt mal mit dem 16er Schalter versucht. Geht leider nicht:
define LED16_16_ein_notify notify MWSchalter16:(on|off) { fhem "set  LED16_16 ".$EVENT eq "on"?"red":"off" }
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: frank am 13 April 2015, 17:29:45
ich würde die klammer schliessen und ggf den doppelpunkt in der regex ändern:

Zitatdefine LED16_16_ein_notify notify MWSchalter16.(on|off) { fhem "set  LED16_16 ".($EVENT eq "on"?"red":"off") }
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: pointde am 13 April 2015, 20:23:47
...leider auch nicht!
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: Dietmar63 am 13 April 2015, 20:29:05
@pointde:
sagte ich doch, dass es fast unmöglich ist.
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: Pfriemler am 13 April 2015, 20:47:14
Ohne dass ich die Regex-Konstruktion jetzt verstanden hätte, aber muss dass WENN dann nicht

define LED16_16_ein_notify notify MWSchalter16.(on|off) { fhem "set  LED16_16 led ".($EVENT eq "on"?"red":"off") }

heißen?
Titel: Antw:Zu viel Funkverkehr durch mein Programm?
Beitrag von: pointde am 13 April 2015, 21:05:37
TOP!!!!! So gehts !!! Dankeschön ;D ;D ;D ;D