FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: Mitch am 19 November 2014, 10:43:28

Titel: Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 10:43:28
Habe gestern (grundsätzlich) erfolgreich auf configDB und DbLog umgestellt.

Jetzt habe ich ein merkwürdiges Verhalten mit einem notify:

Ich habe einen 4-fach FS20 Wandtaster, der triggert einen notify, dieser wiederum schalten einen Dummy, der einen weiteren notify trigger, welcher meine Rollos schaltet.
Es handelt sich um Gurtwickler, an die Kabel gelötet sind, wo wiederum FS20 Empfänger mit Relais hängen.
Um die Relais anzusteuern, wird ein on-for-timer 1 gesendet.

Lange Rede, kurzer Sinn...wenn ich den Wandschalter drücke, wird jetzt immer zwei mal gesendet und somit fahren die Rollos an und bleiben dann wieder stehen.
Dies passiert manchmal sofort, manchmal auch erst nach ein paar Sekunden. Sieht man hier am Log:

2014.11.19 10:20:21 3: CUL_HM set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 on
2014.11.19 10:20:21 3: FS20 set FS22_e1b104 on-for-timer 1
2014.11.19 10:20:21 3: FS20 set FS22_e1b102 on-for-timer 1
2014.11.19 10:20:20 3: FS20 set FS22_e1b100 on-for-timer 1
2014.11.19 10:20:20 3: CUL_HM set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 on
2014.11.19 10:20:20 3: FS20 set FS22_e1b104 on-for-timer 1
2014.11.19 10:20:20 3: FS20 set FS22_e1b102 on-for-timer 1
2014.11.19 10:20:20 3: FS20 set FS22_e1b100 on-for-timer 1


Hier der Code dazu:

define FS21_5b093 FS20 5b09 03
attr FS21_5b093 IODev CUNO
attr FS21_5b093 alias Rollo zu
attr FS21_5b093 group Rollos
attr FS21_5b093 model fs20st
define act_on_FS21_5b093 notify FS21_5b093 {fhem("set Rollo.WZ.Alle Zu")}


define Rollo.WZ.Alle dummy
attr Rollo.WZ.Alle alias Rollo Wohnzimmer
attr Rollo.WZ.Alle devStateIcon Auf:fts_shutter_10 Zu:fts_shutter_100
attr Rollo.WZ.Alle group Rollos
attr Rollo.WZ.Alle icon fts_shutter_updown
attr Rollo.WZ.Alle room Wohnzimmer,Rollos,Favourites
attr Rollo.WZ.Alle webCmd Auf:Zu


define Rollo.WZ.Alle.Notify.Zu notify Rollo.WZ.Alle:Zu {fhem ("set Rollo.Ost Zu ;; set Rollo.Sued.links Zu ;; set Rollo.Sued.rechts Zu ;; set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 Zu")}


define Rollo.Ost dummy
attr Rollo.Ost alias Rollo Ost
attr Rollo.Ost devStateIcon Auf:fts_shutter_10 Zu:fts_shutter_100
attr Rollo.Ost group Rollos
attr Rollo.Ost room Wohnzimmer,Rollos
attr Rollo.Ost setList Auf Zu
attr Rollo.Ost webCmd Auf:Zu

define Rollo.Ost.Notify.Auf notify Rollo.Ost:Auf set FS22_e1b100 on-for-timer 1
define Rollo.Ost.Notify.Zu notify Rollo.Ost:Zu set FS22_e1b101 on-for-timer 1
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: rudolfkoenig am 19 November 2014, 10:51:58
Es wuerde mich wundern, wenn das Problem wirklich an configDB liegt.
Zum besseren Verstaendnis wuerde ich fuer alle Notifies "verbose 5" setzen, und den Schaltvorgang protokollieren.
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 11:00:17
Ich kann mir eigentlich auch nicht vorstellen, dass es an configDB liegt, ist aber die einzige Änderungen.

Werde mal verbose 5 schalten und loggen:

2014.11.19 11:05:47 3: CUL_HM set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 on
2014.11.19 11:05:47 3: FS20 set FS22_e1b104 on-for-timer 1
2014.11.19 11:05:47 3: FS20 set FS22_e1b102 on-for-timer 1
2014.11.19 11:05:47 3: FS20 set FS22_e1b100 on-for-timer 1
2014.11.19 11:05:47 4: Rollo.Ost.Notify.Auf exec set FS22_e1b100 on-for-timer 1
2014.11.19 11:05:47 5: Triggering Rollo.Ost.Notify.Auf
2014.11.19 11:05:47 4: Rollo.WZ.Alle.Notify.Auf exec {fhem ("set Rollo.Ost Auf ;; set Rollo.Sued.links Auf ;; set Rollo.Sued.rechts Auf ;; set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 Auf")}
2014.11.19 11:05:47 5: Triggering Rollo.WZ.Alle.Notify.Auf
2014.11.19 11:05:47 4: dummy set Rollo.WZ.Alle Auf
2014.11.19 11:05:47 4: act_on_FS21_5b092 exec {fhem("set Rollo.WZ.Alle Auf")}
2014.11.19 11:05:47 5: Triggering act_on_FS21_5b092
2014.11.19 11:05:47 4: FS20 FS21_5b092 toggle
2014.11.19 11:05:47 3: CUL_HM set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 on
2014.11.19 11:05:46 3: FS20 set FS22_e1b104 on-for-timer 1
2014.11.19 11:05:46 3: FS20 set FS22_e1b102 on-for-timer 1
2014.11.19 11:05:46 3: FS20 set FS22_e1b100 on-for-timer 1
2014.11.19 11:05:46 4: Rollo.Ost.Notify.Auf exec set FS22_e1b100 on-for-timer 1
2014.11.19 11:05:46 5: Triggering Rollo.Ost.Notify.Auf
2014.11.19 11:05:46 4: Rollo.WZ.Alle.Notify.Auf exec {fhem ("set Rollo.Ost Auf ;; set Rollo.Sued.links Auf ;; set Rollo.Sued.rechts Auf ;; set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 Auf")}
2014.11.19 11:05:46 5: Triggering Rollo.WZ.Alle.Notify.Auf
2014.11.19 11:05:46 4: dummy set Rollo.WZ.Alle Auf
2014.11.19 11:05:46 4: act_on_FS21_5b092 exec {fhem("set Rollo.WZ.Alle Auf")}
2014.11.19 11:05:46 5: Triggering act_on_FS21_5b092
2014.11.19 11:05:46 4: FS20 FS21_5b092 toggle


So wie es aussieht, wird der FS20 FS21_5b092 noch mal getogglet, obwohl er nur einmal gedrückt wurde.
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: betateilchen am 19 November 2014, 11:13:49
Mit configDB hat das nix zu tun, sondern damit, dass Deine regexp im notify nicht spezifisch genug ist.

Ein Homematic Taster sendet bei Betätigung immer mehrere Trigger, die events erzeugen. Und Du reagierst in Deinem notify auf ALLE Events, die vom Taster kommen. Beobachte mal im Event Monitor, was passiert, wenn Du den Taster drückst, dann siehst Du, was ich meine. Du solltest Deine regexp eindeutig gestalten, z.B. auf das "Short" das vom Taster generiert wird.
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 11:26:54
Zum einen handelt es sich nicht um einen HM, sondern FS20 Sender, zum anderen ist die regexp mit Absicht unspezifisch, weil ich alles abfangen muss (kurzer und langer Druck, sprich on und dim).

Komisch ist, dass die oberen zwei Tasten ohne Probleme gehen und nur einmal der notify darauf getriggert wird (damit werden Aussenbeleuchtungen geschalten).
Nur die zwei unteren schalten zweimal??

Ausserdem lief das ganze ja seit mehr als 2 Jahren ohne Probleme mit dieser Konfig??
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 11:33:21
Hab jetzt noch mal getestet, das Problem tritt auch auf, wenn ich in der GUI schalte:

2014.11.19 11:32:27 3: CUL_HM set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 on
2014.11.19 11:32:27 3: FS20 set FS22_e1b104 on-for-timer 1
2014.11.19 11:32:27 3: FS20 set FS22_e1b102 on-for-timer 1
2014.11.19 11:32:27 3: FS20 set FS22_e1b100 on-for-timer 1
2014.11.19 11:32:26 3: CUL_HM set CUL_HM_HM_LC_Bl1PBU_FM_52D2A9 on
2014.11.19 11:32:26 3: FS20 set FS22_e1b104 on-for-timer 1
2014.11.19 11:32:26 3: FS20 set FS22_e1b102 on-for-timer 1
2014.11.19 11:32:26 3: FS20 set FS22_e1b100 on-for-timer 1
2014.11.19 11:32:26 3: FS20 set FS21_5b092 on
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 11:35:40
Ganz blöde Idee dazu, ich habe ja einen CUNO und eine FHZ.
Eigentlich ist mit attr IODev der CUNO zugeteilt, aber bei LASTInputDev steht FHZ.

Kann es sein, dass es dadurch das Problem gibt und CUNO und FHZ senden?
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 11:41:06
SO, komme dem Problem näher.

Wenn ich IODev auf FHZ stelle, geht es ohne Probleme.
Wenn ich IODev auf CUNO stellen, dann wird zweimal geschalten, d.h. der CUNO und die FHZ erhalten beide das Signal und fhem verarbeitet es dann.

Wieso funktioniert IODev nicht mehr?
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: betateilchen am 19 November 2014, 12:15:37
sorry, ich hatte nur den HM-Aktor gesehen und den irrtümlich als den Taster interpretiert.
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 12:18:10
Kein Ding  ;)

Der eine HM ist ein Rolladenaktor, der auch angesteuert wird.

Ich habe das "Problem" ja jetzt gefunden, es liegt am IODev.
Aber wieso auf einmal, keine Ahnung
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: rudolfkoenig am 19 November 2014, 12:27:05
IODev hat nur was mit Senden zu tun, und nicht mit Empfang.
FHZ + CUL* sollten auf doppelte Events geprueft werden, siehe dupTimeout.
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 12:29:23
Ja, aber wenn ich IODev auf FHZ stelle geht es.

Wenn ich auf CUNO einstelle, wird zweimal ausgeführt.
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: rudolfkoenig am 19 November 2014, 12:33:56
Klasse. Um weiter zu kommen solltest du ein Vorgang mit "attr global verbose 5" + "attr global mseclog" beobachten, und die timestamps der empfangenen Events beachten. Und danach dupTimeout passend setzen.
Titel: Antw:Seit Umstieg auf configDB Probleme mit einem notify
Beitrag von: Mitch am 19 November 2014, 17:55:48
Danke, mit dupTimeout 0.9 schaut es im Moment gut aus