Rollosteuerung mit TRX_LIGHT

Begonnen von Future001, 08 Dezember 2017, 22:11:45

Vorheriges Thema - Nächstes Thema

Future001

Hallo,

ich mir einige Smartwave-Geräte (Schalter und Aktoren) angeschafft, da diese so wunderbar flach sind und sich überall an die Wand pappen lassen  :D und zudem auf 433MHz funken. Diese legen sich auch wunderbar per autocreate an.

Beim Rollo ist es so, dass AUF=ON und ZU=OFF beim Schalter bedeutet. Zum stoppen des Rollos einfach ein 2. Mal ON oder OFF drücken. Per Schalter klappt das ohne Probleme!

Zum Problem:
Auf bekomme ich das Rollo perfekt mit einem on-for-timer Befehl.
define SZ_Rollo_auf at *06:50:00 set SZ_Rollo on-for-timer 00:00:25

Aber zu? Denn in der TRX_LIGHT gibt es keinen off-for-timer  :(
Entsprechendes gibt auch das LOG zurück.
SZ_Rollo_zu: Unknown command off-for-timer, choose one of all_level all_off all_on level:slider,0,1,15 off on on-till on-for-timer

Kann ich den off-for-timer irgendwie anders realisieren? Also OFF und dann nach 20 Sekunden erneut ON/OFF senden?

Danke schon mal!
FHEM auf Raspi3, CUL868, RFXTRX433
MAX! mit Cube eingebunden, Temps, und viele weitere Geräte

rubbertail

#1
Wieso brauchst du denn on-for-timer? Reicht nicht ein on? Dann könntest du einfach on; wait 25; off senden?
FHEM auf Raspi, CUL433, CUL868, RFXTRX433e, CULCuBE
FRITZ: Fritzbox7590AX, 6xFritzDECT301, 10xFritzDECT200, FritzRepeater 6000
MAX!: Fensterkontakte
netatmo: Wetterstation & Thermostat
Milights, IT, Withings, HUE

Future001

Hallo rubbertail,

ich habe schon einiges in Fhem gemacht, aber so genau bin ich leider noch nicht in der Materie.
Das klingt sehr gut! Den timer nutzte ich, weil ich das als erstes gefunden habe und es funktionierte  ::)

Wie genau würde denn die Syntax mit dem on; wait 25; off aussehen? Das kann ich ja dann entsprechend drehen also off/on; wait 25; off/on

Ich brauche das, weil sonst das Relais dauernd geschaltet ist und sonst nur der Motor durch einen eingebauten Schalter abgeschaltet ist (ganz offen bzw. ganz zu). Zudem will ich ja nicht total zappenduster haben.

Danke für die Hilfe!
FHEM auf Raspi3, CUL868, RFXTRX433
MAX! mit Cube eingebunden, Temps, und viele weitere Geräte

rubbertail

#3
Ich dachte jetzt einfach so:

define SZ_Rollo_auf at *06:50:00 set SZ_Rollo on;wait 25;set SZ_Rollo off

bzw.

define SZ_Rollo_zu at *08:50:00 set SZ_Rollo off;wait 25;set SZ_Rollo on

wobei ich jetzt nicht weiß, ob du am Ende den jeweils anderen Taster drücken musst oder denselben. Die Beispiele gehen davon aus, dass das der jeweils andere ist, aber das kannst du ja ggf. anpassen, indem du den zweiten set SZ_Rollo-Befehl statt auf den jeweils anderen auf denselben Befehl legst.

Aber vielleicht denk ich jetzt auch einfach zu simpel.
FHEM auf Raspi, CUL433, CUL868, RFXTRX433e, CULCuBE
FRITZ: Fritzbox7590AX, 6xFritzDECT301, 10xFritzDECT200, FritzRepeater 6000
MAX!: Fensterkontakte
netatmo: Wetterstation & Thermostat
Milights, IT, Withings, HUE

Future001

Halli,

Vielen Dank! Probiere ich morgen aus, wenn ich wieder zu Hause bin ;)
Melde mich dann.

Am Schalter ist es egal, ob ich zum abschalten den An oder Aus drücke. Also sollte das schon funktionieren.

VG
FHEM auf Raspi3, CUL868, RFXTRX433
MAX! mit Cube eingebunden, Temps, und viele weitere Geräte

rubbertail

FHEM auf Raspi, CUL433, CUL868, RFXTRX433e, CULCuBE
FRITZ: Fritzbox7590AX, 6xFritzDECT301, 10xFritzDECT200, FritzRepeater 6000
MAX!: Fensterkontakte
netatmo: Wetterstation & Thermostat
Milights, IT, Withings, HUE

Future001

Hallo,

naja, nicht wirklich. Ein off-for-timer wäre schon irgendwie einfacher zu händeln.

Ergebnis meiner Tests:
Ich habe das mal mit Lampen probiert, da habe ich einen identischen Schalter dran und weil meine Kinder abends ja da schon in dem Zimmer schlafen, kann ich nicht dauernd das Rollo hoch und runter fahren ;).
Wenn ich einen Restart von Fhem mache, wird das letzte Kommando direkt ausgeführt (hier wäre es "set SZ_Rollo off") - dann geht das Rollo komplett runter.
Zur angegebenen Zeit dann fährt es wieder hoch (entspricht im Beispiel dem ersten Kommando "SZ_Rollo on"). Das letzte Kommando interessiert irgendwie nicht mehr.

Aber habe gerade in Wiki geschaut:
Zitatdefine morgens at *7:00:00 set lampe1 on ; set lampe2 on → schaltet lampe 1 immer um 7 an, aber lampe2 sofort
Das würde das Verhalten erklären - ist aber keine serielle Verarbeitung von Befehlen. Und genau sowas bräuchte ich ja *grübel*

VG
FHEM auf Raspi3, CUL868, RFXTRX433
MAX! mit Cube eingebunden, Temps, und viele weitere Geräte

rubbertail

Auch im Wiki:

define morgens at *7:00:00 set lampe1 on ;; set lampe2 on → schaltet BEIDE Lampen immer um 7 an.

Verdopple mal die Semicolöner im Beispiel.

Alternativ könntest du das Rollo zB als Dummy anlegen und die Befehlssequenzen als notifys hinterlegen... und dann den Dummy über "at" schalten (und dann ggf. auch über irgendwelche FErnbedienungen etc.).

Also zB so:

define d_sz_Rollo dummy
attr d_sz_Rollo setList auf zu
attr d_sz_Rollo webCmd auf:zu


define n_d_sz_Rollo_zu notify d_sz_Rollo:zu.* set sz_Rollo off; wait 25; set sz_Rollo off

define n_d_sz_Rollo_auf notify d_sz_Rollo:auf.* set sz_Rollo on; wait 25; set sz_Rollo on

define morgens at *6:50:00 set d_sz_Rollo auf

define abends at *19:00:00 set d_sz_Rollo zu

Wahrscheinlich rollen viele mit den Augen, weil der dummy zwischengeschaltet ist - ich mach das bei mir deswegen so, dass ich über verschiednste Fernbedienungen die gleichen Effekte erziele, die ich, wenn ich sie ändern will, nur einmal ändern muss.
FHEM auf Raspi, CUL433, CUL868, RFXTRX433e, CULCuBE
FRITZ: Fritzbox7590AX, 6xFritzDECT301, 10xFritzDECT200, FritzRepeater 6000
MAX!: Fensterkontakte
netatmo: Wetterstation & Thermostat
Milights, IT, Withings, HUE

Future001

Hallo da draußen!

was man aus einem fehlenden Kommando so machen kann - ein wahrer define Marathon  ;)

Ich denke, ich warte mal morgen ab und dann probiere mal folgendes, denn die Lampen reagieren doch etwas anders und zweimal OFF gesendet sieht man ja nicht:
define SZ_Rollo_test_zu at *07:45:00 set SZ_Rollo off;; define SZ_Rollo_stopp at +00:00:20 set SZ_Rollo off
Da sind Frau und Kinder aufgestanden  :D

Du hast Recht, mit dem Dummy und den Notifys ist man flexibler - aber so kompliziert wollte ich es eigentlich gar nicht. Ich melde mich dann morgen.
Aber andererseits könnte ich mit deiner Idee auch per einfachem Klick auf Spalt fahren ...
Wie auch immer - ich sag dir Bescheid!

Vielen Dank trotzdem!
FHEM auf Raspi3, CUL868, RFXTRX433
MAX! mit Cube eingebunden, Temps, und viele weitere Geräte

Wzut

Ich habe mich vor langer Zeit auch mal geärgert das es kein off-for-timer gab, insbesondere da es doch eigentlich FHEM Standart ist durch die SetExtensions :(
Meine Lösung : Ich das interne on-for-timer aus dem Modul geworfen und die SetExtensions eingebaut.
ACHTUNG : dadurch ändert sich aber die Aufrufsyntax  (aber wie es bei den anderen Modulen aber längst üblich ist)
alt : set on-for-timer 00:00:25 <- at Format laut command.ref erforderlich
neu : set on-for-timer 25 <- wie bei anderen Modulen auch
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Future001

Hallo,

bin ja ohnehin noch eine Antwort schuldig ;)
Also das Dummy-Konstrukt habe ich genauso wie die vorherigen set mit einem und mehreren ; ausprobiert und gleich wieder raus geschmissen, weil es nicht so reagiert, wie erwartet.
Entweder beim Fhem Restart geht das Rollo gleich zu oder wenn die Timer-Zeit erriecht ist, hält es nicht an.

Alles nicht, was ich brauche :( - einzig on-for-timer funktioniert zuverlässig. Naja ist 'ne 50% Lösung.

@Wzut
Bei Updates der 46_TRX_LIGHT wird die Anpassung aber vmtl. überschrieben, oder?

VG
FHEM auf Raspi3, CUL868, RFXTRX433
MAX! mit Cube eingebunden, Temps, und viele weitere Geräte

Wzut

wenn du nichts sonst machst und update startest : ja
aber dafür gibt es ja das Attribut exclude_from_update unter global ( einfach dort das Modul eintragen)
Die aktuelle Version im svn ist vom 1.6.2016, d.h. die Gefahr da ein wichiges Update zu verpassen ist eher gering :) 
Hast den mal off-for-timer x ausprobiert ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Future001

Hi,

ja hab ich :)
er funktioniert! Schaltet korrekt aus - und wieder an.
Ich musste leider feststellen, dass ich wie folgt schalten muss:

Rollo hochfahren: ON (los) - ON (stopp)
Rollo runterfahren: OFF (los) - OFF (stopp)

Ich habe das gemerkt, weil er mit off-for-timer (also nach 20s) wieder hochfuhr. Darauf hatte ich bislang nicht geachtet.
Hilft alles nix - wenn ich keine Kommandos zeitverzögert absetzen kann.

Nach dem Tausch der File habe ich aber nun im log stehen:
2017.12.16 14:38:32 1: TRX_LIGHT_Define() wrong type: SELECTPLUS
2017.12.16 14:38:32 1: define TRX_SELECTPLUS_03 TRX_LIGHT SELECTPLUS 03 chime: TRX_LIGHT: wrong type: SELECTPLUS


VG
FHEM auf Raspi3, CUL868, RFXTRX433
MAX! mit Cube eingebunden, Temps, und viele weitere Geräte

Wzut

SELECTPLUS Geräte kenne ich nicht , was hast denn damit angelegt ?
meine RSL Rollos waren z.b. so definiert
define Schlaf_Rollo TRX_LIGHT RSL2 b8b50002 rollo
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Future001

Hi,

ich habe gar nichts darüber definiert. Ich dachte, es kam aus der angepassten pm.

Im define von TRX_LIGHT bei dir noch rollo.
Was genau macht das? In der FHEMWiki kann ich dazu keine Angaben finden.

VG
FHEM auf Raspi3, CUL868, RFXTRX433
MAX! mit Cube eingebunden, Temps, und viele weitere Geräte