notify wird mehrfach ausgeführt ??

Begonnen von cremofix, 05 Oktober 2015, 20:50:24

Vorheriges Thema - Nächstes Thema

cremofix

Hallöchen,

habe hier erfolgreich  eine Funkfernbedienung und einen Schaltaktor per SCC (CUL) eingebunden und kann über FHEM auch schalten.

Sender: HM RC 4-B
Aktor: HM-LC-SW4-PCB



Nun habe ich einen notify definiert

define Tor1auf notify BTN01:Short.* set S3 on-for-timer 2

der soll beim Drücken von Btn1 der Fernbedienung Kanal 3 des Aktors für 2 Sekunden auf on und dann wieder auf off schalten
Soweit so gut.

Im Log finde ich aber jedesmal 5 Einträge zu diesem Vorgang

2015.10.05 20:31:54 3: CUL_HM set S3 on-for-timer 2
2015.10.05 20:31:54 3: CUL_HM set S3 on-for-timer 2
2015.10.05 20:31:54 3: CUL_HM set S3 on-for-timer 2
2015.10.05 20:31:55 3: CUL_HM set S3 on-for-timer 2
2015.10.05 20:31:55 3: CUL_HM set S3 on-for-timer 2

Die Kontrollleuchte des Aktors zeigt auch, dass Kanal3 mehrfach an und aus geschaltet wird.

Wenn ich in die Definition des BTN01 in FHEM gehe wird beim Drücken der Short-trigger immer nur um eins hochgezählt.

Hat einer ne Idee, wie ich diesen Fehler eliminieren kann?

Danke
Mario

Bennemannc

Hallo,

das mit dem BTN01:Short.* verstehe ich nicht ganz. Eigentlich sollte .Short doch reichen - danach kommt doch nichts mehr. Ich würde mal im EventMonitor nachsehen, was da an Events aufgezeichent werden.
Ich hatte auch schon mal solche Probleme weil ich auf das falsche Event getriggert hatte.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

cremofix

Hallo Bennemanc,

das Short.* habe ich aus dem FHEM Wiki fpr den HM-RC-4-B Sender

Das liegt wohl daran, dass der trigger immer nummer hinten dranhängen hat

aber wie man im EventMonitor sieht, kommt das Signal mehrfach als event

2015-10-05 22:43:53 CUL_HM BTN01 Short (to HM_Sender_1)
2015-10-05 22:43:53 CUL_HM BTN01 trigger: Short_5
2015-10-05 22:43:53 CUL_HM BTN01 trigger_cnt: 5
2015-10-05 22:43:53 CUL_HM HM_Sender_1 battery: low
2015-10-05 22:43:53 CUL_HM HM_Sender_1 BTN01 Short
2015-10-05 22:43:54 CUL_HM BTN01 Short (to HM_Sender_1)
2015-10-05 22:43:54 CUL_HM BTN01 trigger: Short_5
2015-10-05 22:43:54 CUL_HM BTN01 trigger_cnt: 5
2015-10-05 22:43:54 CUL_HM HM_Sender_1 battery: low
2015-10-05 22:43:54 CUL_HM HM_Sender_1 BTN01 Short
2015-10-05 22:43:54 CUL_HM Rolltor_rechts deviceMsg: off (to HM_Sender_1)
2015-10-05 22:43:54 CUL_HM Rolltor_rechts level: 0
2015-10-05 22:43:54 CUL_HM Rolltor_rechts pct: 0
2015-10-05 22:43:54 CUL_HM Rolltor_rechts off
2015-10-05 22:43:54 CUL_HM Rolltor_rechts timedOn: off
2015-10-05 22:43:54 CUL_HM BTN01 Short (to HM_Sender_1)
2015-10-05 22:43:54 CUL_HM BTN01 trigger: Short_5
2015-10-05 22:43:54 CUL_HM BTN01 trigger_cnt: 5
2015-10-05 22:43:54 CUL_HM HM_Sender_1 battery: low
2015-10-05 22:43:54 CUL_HM HM_Sender_1 BTN01 Short


Keine Ahnung, wie man das abstellt, müsste irgend etwas geben, was filter, wenn ein und das selbe event innerhalb von 1 oder 2 sekunden doppelt kommt, dass nur eins ausgewertet wird.

werde morgen noch mal rumprobieren, bin aber für jeden hinweis dankbar.

Meesus

Hi, ich habe zwar den HM-PBI-4-FM, aber ich habe das mit einem "event-on-update-reading state" bei mir gelöst. Werte aber den "Long.*" und nicht den Short aus.

Gruß Micha


Raspberry 4 - FHEM 6.1 - HMLAN, CUL V3 433Mhz & 868Mhz, HM, Intertechno, HUE, Tasmota, Shelly, ESP Devices, Max! und Alexa - Banana PI zum testen

Bennemannc

Hallo,

Du hast aber auch ein Event - 2015-10-05 22:43:54 CUL_HM HM_Sender_1 BTN01 Short - und auf dieses sollte der notify reagieren. Wie Du siehst, kommen diese Befehle mehrfach - also reagiert das notify mehrfach. Soweit ist alles klar.
Der Sender scheint mehrfach zu senden, weil er keine Bestätigung bekommt. Hier gibt es zwei Möglichkeiten.
1) mit einem virtuellen Device / Kanal pairen damit der Sender eine Bestätigung bekommt
2) das nicht über ein notify zu lösen, sonder die beiden Geräte direkt zu peeren und die Register entsprechend zu setzen.
Ich würde zweites machen - allerdings mit dem HM Konfigtool für Windows. Das ist dann einfaches zusammenklicken. Man muss sich nicht um die Register kümmern und wenn die Werte einmal richtig sind, ließt fhem die auch richtig aus. Der zweite Vorteil ist, das es ach funktioniert wenn fhem mal nicht läuft. Der Sender schickt seinen Befehl direkt an den 4 Kanal Switch und d r weiß was zu tun ist. Dann kann man auch short und long auf 2 Sec Impuls setzen.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

cremofix

Hallo Micha,

das werde ich heute Nachmittag mal ausprobieren, danke

Hallo Christoph,

Das mit dem virt. Device werde ich auch mal probieren, danke

Dein Tip mit dem Windows-tool lässt schließen, dass Du eine Homematik Zentrale hast.
so was habe ich nicht :-) hatte den Aktor bisher direkt mit dem Handsender gepairt ohne HM Zentrale
Nun habe ich den FHEM angeschafft, eben, damit ich keine HM-Zentrale kaufen muss.
Mir scheint die Lösung mit dem Raspi wesentlich vielseitiger

Wegen Ausfall mache ich mir keine Sorgen. Der Fhem ist schön brav in einem Hutschienengehäuse. und mit dem Raspi habe ich sehr gute Erfahrungen gemacht, was die Zuverlässigkeit angeht. Wenn der nicht läuft gehen die Garagentore wahrscheinlich auch nicht. :-)

Schönen Gruß

Mario


Bennemannc

Hallo Mario,

-- negativ - keine CCU -
Es gibt von Homematic ein sogenanntes Konfigurationstool. Dieses ist dafür vorgesehen, Geräte zu konfigurieren - mit HM-CFG-USB oder HM-CFG-LAN - ohne eine CCU zu besitzen.
Ich nutze das Tool immer für komplexere Verknüpfungen. Man kann das auch mit fhem machen, aber da muss man sich detailiert um die Register kümmern.
Wie schon gesagt - ich würde peeren und direkt an den Actor senden. Dann das entsprechende Register auf 2 sec setzen.
Das erzeugt weniger Funkverkehr. Bei Deiner jetzigen Konstellation:
Sender sendet Fhem und fhem sendet Verstanden
Fhem sendet an Actor und Actor sendet verstanden.
Direkt:
Sender sendet an Actor und der Bestätigt - fhem hört nur zu.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF