Guten Morgen zusammen,
nachdem ich nun (reuemütig ;)) von OpenHab wieder zu fhem zurückgekehrt bin, versuche ich meine Rolladensteuerung zu "modernisieren". Ich habe Rolladen von Elero und Rollotron (Fritz!Dect).
Die Rolladen sollen aufgehen, wenn die Tür geöffnet wird (HM-Fenterkontakt), bzw. nicht schließen, wenn die Tür auf ist.
Zur Steuerung der Rolladen habe ich zwei Readings im Rolladen angelet: ZiZu (ZielZustand) und NoCl (NoClose). Auf diese habe ich ein notify erstellt, welches dann die eigentliche Rolladenfahrt ausführt.
Bei den Eleros funktioniert das, bei den Rollotrons nur, wenn event-on-change-reading und event-on-update-reading nicht gesetzt ist. Selbst bei der Angabe von .* bekomme ich kein Event.
Hat jemand eine Idee, was ich falsch mache? Ich komme gerade gar nicht mehr weiter.
Listing Rolladen:
Internals:
DEF FritzDECT:14276_0525808_1 HANFUNUnit,dimmer,alarmSensor
FUUID 61954fd5-f33f-98ff-433b-d2ac8a889d81c091
FritzDECT_MSGCNT 169
FritzDECT_TIME 2021-11-26 07:17:23
IODev FritzDECT
LASTInputDev FritzDECT
MSGCNT 169
NAME RlFbAH
NR 97
STATE 40
TYPE FBDECT
id 14276_0525808_1
props HANFUNUnit,dimmer,alarmSensor
READINGS:
2021-11-26 07:17:23 AIN 14276 0525808-1
2021-11-26 07:17:23 FBNAME RlFbAzH
2021-11-26 07:17:23 FBPROP HANFUNUnit,dimmer,alarmSensor
2021-11-26 07:17:23 FBTYPE Rollotron 1213
2021-11-26 07:17:23 ID 2000
2021-11-25 17:17:05 IODev FritzDECT
2021-11-25 18:03:13 NoCl 0
2021-11-26 07:07:53 ZiZu up
2021-11-26 07:17:23 dim 40
2021-11-26 07:17:23 etsideviceid 406
2021-11-26 07:17:23 fwversion 0.0
2021-11-26 07:17:23 lastalertchgtimestamp 2021-11-12 06:56:02
2021-11-26 07:17:23 level 102
2021-11-26 07:17:23 mode manuell
2021-11-26 07:17:23 present yes
2021-11-26 07:17:23 state off
2021-11-26 07:17:23 unittype BLIND
hmccu:
Attributes:
cmdIcon cmdIcon moveDown:fts_shutter_down moveUp:fts_shutter_up stop:fts_shutter_manual moveIntermediate:weather_sun moveTilt:vent_ventilation
devStateIcon bottom_position:shutter_closed tilt_position:shutter_6 top_position:shutter_open moving_up:control_arrow_up moving_down:control_arrow_down stopped_in_undefined_position:unknown intermediate_position:shutter_3 undefined:unknown
event-on-change-reading .*
eventMap /close:moveDown/stop:stop/open:moveUp/dim 35:moveIntermediate/dim 85:moveTilt/
group Rolladen
icon fts_shutter
room FritzBox
stateFormat dim
userattr RlElWz RlElWz_map structexclude
webCmd moveDown:stop:moveUp:moveIntermediate:moveTilt
notify (Ist nur ein Test, hier fehlt das 2. Reading und die Aktion):
RlFbAH:ZiZu:.* {
{Log 1, "Device: $NAME / Event: $EVENT"};
}
Ich würde dir ASC empfehlen, da ist diese Funktionalität integriert. Wenn du willst kannst du alle anderen Funktionen deaktivieren. ASC ist allerdings komplex wenn man es umfangreicher nutzen möchte.
Gruß Reinhard
Danke für den Hinweis, das kannte ich tatsächlich noch nicht. Sieht auf den ersten Blick gut aus; dann habe ich nun eine Beschäftigung für's Wochenende...
Trotzdem würde mich interessieren, warum kein Event vom Rollotron kommt...
ZitatSelbst bei der Angabe von .* bekomme ich kein Event.
Vmtl. ist das nicht ganz klar: event-on-change-reading .* bedeutet, dass _alle_ Events gefiltert werden.
Die Auswirkung in Kombination mit event-on-update-reading ist nicht intuitiv, selbst fuer mich nicht.
Ich bin seit Jahren gegen die Verwendung dieser Attribute, insb. wenn man die Auswirkung nicht vollstaendig versteht.
Ich hatte mich unklar ausgedückt; mein
Zitat...wenn event-on-change-reading und event-on-update-reading nicht gesetzt ist...
war als "XOR" gemeint - die Erfahrung, dass man die beiden nicht gemeinsam einsetzen sollte, hatte ich auch schon gemacht...
Jetzt muss ich aber nochmal nachfragen:
In der Doku steht:
ZitatInsbesondere sinnvoll ist der reguläre Ausdruck .* , der alle Readings umfasst:
attr <device> event-on-change-reading .*
So formuliert führt das Attribut dazu, dass alle Readings noch Events erzeugen, aber nur wenn diese sich im Wert ändern.
Das interpretiere ich so, dass alle Readings ein Event erzeugen, wenn sich das Reading geändert hat.
Da ich nur dieses Attribut gesetzt habe, sollten also Events aller Readings bei Änderung kommen, richtig?
Zitat von @rudolfkoenig
Zitat...dass _alle_ Events gefiltert werden...
verstehe ich so, dass alle Events "rausgefiltert" werden, also keines mehr ankommt.
Wo ist mein Verständnisproblem?
PS: Ich versuche mich nun an ASC, aber das bekomme ich nicht zum Laufen; da muss ich wohl nochmal einen anderen Thread aufmachen...
ZitatIn der Doku steht:
In welcher Doku?
Der Abschnitt mit "sinnvoll" ist definitiv nicht meine Meinung.
ZitatDa ich nur dieses Attribut gesetzt habe, sollten also Events aller Readings bei Änderung kommen, richtig?
Das ist richtig. Kann aber bedeuten, dass Jahre lang keine Events kommen, obwohl die Daten vom Geraet regelmaessig gesendet werden. Und das fuehrt bei der Anzeige in den Diagrammen erst zu Beschwerden, und dann zu kuenstlich erzeugten Werten.
ZitatIn welcher Doku?
Im Wiki: https://wiki.fhem.de/wiki/Event-on-change-reading#Syntax (https://wiki.fhem.de/wiki/Event-on-change-reading#Syntax)
ZitatDer Abschnitt mit "sinnvoll" ist definitiv nicht meine Meinung.
Ok, darüber denke ich mal nach. Üblicherweise habe ich hier nur einzelne Readings angegeben. Den Filter ".*" hatte ich hier nur für einen schnellen Test verwendet.
ZitatDas ist richtig. Kann aber bedeuten, dass Jahre lang keine Events kommen,...
Ja, dafür habe ich in "event-min-interval" verwendet. Das hatte eigentlich für die Graphen immer ganz gut funktioniert.
Das Problem ist momentan nicht mehr relevant für mich (weil ich ASC einsetzen will), aber ich werde das bei Gelegenheit nochmal testen.