gelöst: Schalter entprellen für Rollladen

Begonnen von Sauron, 20 Mai 2014, 18:47:55

Vorheriges Thema - Nächstes Thema

Sauron

Hallo liebes Forum,
Ich habe einen TC8 mit dem ich gerne u.a. einen Rollladen ansteuern möchte. Mein Problem: der Schalter schickt oft bei einmal drücken mehrere Signale hintereinander - bei jedem 2. Signal bleibt der Rollladen wieder stehen.
Nun habe ich versucht das direkt am Sender zu beheben, indem ich nur den kurzen oder den langen Tastendruck belege, das hat aber nur mäßig geholfen.
Hat jemand eine Idee, wie ich das das auf der fhem Seite machen könnte, dass er z.B. erst wieder nach einer Sekunde ein neues Signal verarbeitet.
Bisher sieht ein Code so aus:
define NotifyRollladenWohnzimmerOn notify WS_RollladenWohnzimmer:.*dim100% set RollladenWohnzimmer on
define NotifyRollladenWohnzimmerOff notify WS_RollladenWohnzimmer:.*off set RollladenWohnzimmer off

Vielen Dank

fhainz

Hallo!

Schonmal einen blick in die Einsteiger pdf geworfen oder die suche benutzt?

Wurde hier schon unzählige male gefragt und beschrieben.


Grüße

Deudi

Man möchte dich zur Eigeninitiative erziehen. Ist ja grundsätzlich nicht falsch. Ich werfe dir trotzdem mal das Attribut "event-min-interval" vor die Füße  ;)
Gigabyte Brix, Ubuntu 16.04.3 LTS, Homematic, Z-Wave, EnOcean, Shelly@MQTT, SIGNALduino, JeeLink DAVIS-Sketch

Sauron

ja ich habe die Suche benutzt und habe diesen Fall gesehen => das trifft aber das Problem nicht. Ich habe es gerade trozdem extra ausprobiert.
Das Beispiel passt bei einer Klingel recht gut.
Beim Rollladen bedeutet das, dass er nach den angegenen Sekunden stoppt, falls er noch nicht offen ist, bzw. dass er dann automatisch nach Zeit X wieder zugeht.
Das ist glaub auch schon bei einem normalen (nicht Rollladen) Schalter fatal, wenn z.B. das Licht nach 10 Sekunden wieder ausgeht
Oder habe ich da wass falsch verstanden?
define NotifyRollladenWohnzimmerOn notify WS_RollladenWohnzimmer:.*dim100% {if (ReadingsVal("RollladenWohnzimmer","state","") ne "on"){fhem("set RollladenWohnzimmer on");;fhem("define a1 at +00:00:10 set RollladenWohnzimmer off")}}

bin gerade am überlegen mir den status blocked in einer Hilfsvariablen zu merken, leider bin ich mit der Sythax noch nicht so fit um das Umzusetzen
da ist irgendwo noch ein Bug:
define blocked dummy
define NotifyRollladenWohnzimmerOn notify WS_RollladenWohnzimmer:.*dim100% {if blocked ne "on"){fhem("set blocked on")fhem("set RollladenWohnzimmer on")fhem("define a1 at +00:00:03 set d off")}}




Sauron

Hi Deudi,
Dein Hinweis war super. So einfach geht das? Keine Angst ich hatte in Eigeniniative schon gesucht und bin dann nur auf irgndwelche Programmierlösungen gestoßen die meineserachtens nicht passten. Das war das Stichwort, das ich brauchte.... Das hoffte ich mit dem IRP am TC8 direkt einstellen zu können.

So nun findet man den Hinweis auf "event-min-interval" auch, wenn man das Stichwort Schalter prellen oder entprellen eingibt.

Vielen Dank für all Eure Hilfen auch an fhainz, damit hätte es bestimmt auch noch geklappt, wenn ich den Fehler mit der Hilfsvariablen noch gefunden hätte, hast Du Ihn schon gefunden?


Puschel74

Hallo,

zwischen den Anweisungen fehlen die Semikolons und du schaltest ein Device d wieder aus dessen Definition du uns nicht zeigst.
Diese Fehler findest du aber auch im FHEM-Logfile  ;)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.