Hauptmenü

Relais hält sich nicht

Begonnen von MarcK, 02 Dezember 2015, 17:43:12

Vorheriges Thema - Nächstes Thema

MarcK

Hallo FHEM'er

seit gut 2 Wochen spiele ich jetzt mit FHEM und bis jetzt konnten mir diverse Suchmaschinen, die Wiki und das Forum helfen. Doch jetzt komme ich nicht weiter und muss hier einmal nachfragen.
Zum Aufbau meiner "Test Anlage": RPI2 und Arduino nano via USB. Firmata funktioniert auch wunderbar.

Nun wollte ich ein Relais per Taster oder Software (FHEM) schalten. Der Taster und FHEM schaltet das Relais auch wunderbar jedoch hält sich das Relais nur per Software, wenn ich den Taster benutze fällt es mit loslassen des Tasters immer wieder ab.

Auszug aus der fhem.cfg:

### Lampen
define LichtDecke FRM_OUT 2
attr LichtDecke IODev anano
attr LichtDecke stateFormat value

### TEST Taster
define TasterLichtDecke FRM_IN 3
attr TasterLichtDecke IODev anano
attr TasterLichtDecke stateFormat value

# Notify für Tast
define MyNotify notify TasterLichtDecke:* {if(Value("LichtDecke") eq "off"){fhem "set LichtDecke value on"}else{fhem "set LichtDecke value off"}}


natülich habe ich auch mit dem Notify diverse änderungen getestet. z.B.

define MyNotify notify TasterLichtDecke ...
oder mit

define MyNotify notify TasterLichtDecke:* set LichtDecke $EVENT


wobei das Relais hier nicht mehr auf den Tastendruck Reagiert.

Danke für eure Mühe!

Grüße



fhainz

define MyNotify notify TasterLichtDecke:*

Du reagierst auf JEDES Event das TasterLichtDecke sendet. Das drücken eines Tasters erzeugt immer (mind.) 2 Events. Eins beim drücken (on/hight), eins beim loslassen (off/low). Wenn du den Event Monitor öffnest siehst du das schön.

Du musst dein notify so umbauen das es nur mehr reagiert wenn du den taster drückst, nicht beim loslassen.

MarcK

#2
Hallo fhainz,

ja das kann ich sehen und auch da habe ich alles mögliche versucht...  :-\


TasterLichtDecke.on
TasterLichtDecke:on
TasterLichtDecke:state.on
TasterLichtDecke:state:.on
TasterLichtDecke:state.on.*
TasterLichtDecke:value.on
TasterLichtDecke:value:.on
TasterLichtDecke:value:.on.*


Bin ich zu doof?!

Edit: Ich muss dazu sagen das sich dann durch Tastendruck nichts mehr tut.

fhainz

Du musst das event genau nachbilden und Leerstellen durch einen . ersetzen. Also zB
2015-12-02 18:58:32.061 FS20 wzTasterT8 on wird zu wzTasterT8.on
Außerdem gibt es im detail des notify einen regexp wizard zum zusammenklicken.

MarcK

Vielen Lieben Dank!!!
Nachdem ich einen config Fehler vom Taster beseitigt habe, der sich wohl bei dem ganzen hin und her probieren eingeschlichen hat  ::) und ich dann den Notify auf
TasterLichtDecke:reading:.on
umgestellt habe, Funktioniert es jetzt auch.  ;)
Problem gelöst!

Grüße