Intertechno: on-for-timer ?

1,637 views
Skip to first unread message

Markus Hermann

unread,
Dec 18, 2012, 9:09:22 AM12/18/12
to fhem-...@googlegroups.com
Moin, moin.

Meine Intertechno-Steckdosen und Schalter funktionieren jetzt bestens. ich frage mich aber, wie ich ohne großen Umwege
eine "on-for-timer xx"-Funktion für die IT-Dosen erstellen kann.

Jemand eine Idee?

Ich würde sonst einen FS20-Dummy erstellen und per notify abfragen, oder liege ich falsch, geht's einfacher?

Gruß
Markus


Marc

unread,
Dec 18, 2012, 1:05:24 PM12/18/12
to fhem-...@googlegroups.com

Totte1210

unread,
Dec 18, 2012, 1:05:29 PM12/18/12
to fhem-...@googlegroups.com
Hallo Markus,

keine Ahnung ob meine Lösung die beste ist, aber ich habe es wie folgt gelöst:

# Ausschaltimer für TV Schlafzimmer mit Auswahlzeit
define TV_Schlaf_timer dummy
attr TV_Schlaf_timer fp_Plan2 465,325,2,
attr TV_Schlaf_timer icon icoUhr
attr TV_Schlaf_timer room 1_Haus
attr TV_Schlaf_timer setList state:off,00.15,00.30,00.45,01.00,01.15,01.30,01.45,02.00
attr TV_Schlaf_timer webCmd state
define TV_Schlaf_change notify TV_Schlaf_timer { if ( Value("TV_Schlaf_timer") eq "off" ) {fhem ('delete TV_Schlaf_aus')} else {fhem ('define TV_Schlaf_aus at +00:00:00 set Schlafz_TV_J41 off');; fhem('attr TV_Schlaf_aus room 1_Haus');; fhem('attr TV_Schlaf_aus fp_Plan2 450,340,0');; my $TV_Schlaf_aus = Value("@");; $TV_Schlaf_aus =~ s/\./:/;; fhem('modify TV_Schlaf_aus +'.$TV_Schlaf_aus);; fhem("setstate @  ")}}

Damit kannst du die Ausschaltzeit per Auswahlmenü auswählen.

Gruß

Thorsten

WiKa

unread,
Dec 18, 2012, 4:55:29 PM12/18/12
to fhem-...@googlegroups.com
Hallo Totte1210,
Dank für deine Lösung.
Ergänzt um einen Einschaltbefehl (set actor_xxx on) und "universalisiert mit Variablen für den actor" wäre das eine universelle Erweiterung für FHEM.
Die FS20 actoren kennen "set-on-for-timer" ja von Hause aus.
Für die in TRX unterstützten Devices hat es Willi Herzog (Dank an dieser Stelle) kürzlich implementiert.
Für beide actoren wird der Status nach Ablauf des Timers im Gegensatz zu deiner Variante aber nicht in FHEM angezeigt.
Zur Aktualisierung des Schaltzustandes ist also immer zusaetzlicher Code notwendig.

Einen "Schönheitsfehler" weist deine Lösung aber auf:
Bei jedem Start werden im fhem.log folgennde Zeilen eingefügt:
-----------
2012.12.18 22:19:02 3: setstate lueften_timer   : Usage: setstate <name> <state>
where <name> is either:
- a single device name
- a list seperated by komma (,)
- a regexp, if contains one of the following characters: *[]^$
- a range seperated by dash (-)

2012.12.18 22:19:02 3: lueften_change return value: Usage: setstate <name> <state>
where <name> is either:
- a single device name
- a list seperated by komma (,)
- a regexp, if contains one of the following characters: *[]^$
- a range seperated by dash (-)
-----------

Falls nicht nur ich diese Logeintraege habe, könnten eventuell die "Code-Profis"  hier eine Hilfestellung geben.

Ich schalte mit deinem Code z.B. meine Deckenventilatoren für eine auswaehlbare Zeit ein.

----------
Ersetze "TV_Schlaf" durch "TRX_ARC_A1", "fp_Plan2" entfernt, da noch kein Roomplan vorhanden, room "1_Haus" durch "Timers".
Die Doppelnennung des Devices im set-Befehl ist bei mir notwedig, da ich sonst keinen zuverlaessigen Schaltvorgang habe.
----------
define lueften_change notify lueften_timer { if ( Value("lueften_timer") eq "off" ) {fhem ('delete lueften_aus')} else {fhem ('set TRX_ARC_A1,TRX_ARC_A1 on');; fhem ('define lueften_aus at +00:00:00 set TRX_ARC_A1,TRX_ARC_A1 off');; fhem('attr lueften_aus room Timers');; fhem(' ');; my $lueften_aus = Value("@");; $lueften_aus =~ s/\./:/;; fhem('modify lueften_aus +'.$lueften_aus);; fhem("setstate @  ")}}
-----------

Eventuell hat irgendwann Rudolf König Zeit und Lust, das Feature "on-for-timer" in FHEM einzubauen.
IMHO wird die Funktion für verschiedenst Aktoren oft nachgefragt.

LG
WiKa

Willi

unread,
Dec 19, 2012, 12:29:06 AM12/19/12
to fhem-...@googlegroups.com
Für die in TRX unterstützten Devices hat es Willi Herzog (Dank an dieser Stelle) kürzlich implementiert.
Für beide actoren wird der Status nach Ablauf des Timers im Gegensatz zu deiner Variante aber nicht in FHEM angezeigt.
Zur Aktualisierung des Schaltzustandes ist also immer zusaetzlicher Code notwendig.


Kann ich mir erst heute abend oder am Wochenende ansehen.
Verstehe aber nicht warum die Aktualisierung des Status nach Ablauf des Timers bei TRX_LIGHT nicht funktioniert. Es wird einfach ein Timer mit einem "set GERÄT off" generiert. Da sollte der Zustand genauso wie dieser einzel abgesetzte Befehl aktualisiert werden. Nicht mehr und nicht weniger.

MfG Willi 

Willi

unread,
Dec 19, 2012, 2:18:32 PM12/19/12
to fhem-...@googlegroups.com
Ich habe on-till und on-for-timer bei meinem Modul TRX_LIGHT (für RFXtrx433) getestet.

Der State wird bei Aufruf wie erwartet auf on aktualisiert und nach Ablauf der Zeit des Timers auf on.

@WiKa: Wo ist Dein Problem?

>Eventuell hat irgendwann Rudolf König Zeit und Lust, das Feature "on-for-timer" in FHEM einzubauen.
>IMHO wird die Funktion für verschiedenst Aktoren oft nachgefragt.

Der on-for-timer macht nichts anderes als über at einen neuen Timer zu definieren, in dem als Befehl "set GERÄT off" steht. Das ist ein Einzeiler.

Deshalb verstehe ich auch nicht, warum man on-for-timer für Geräte braucht, die dies in der Hawrdware nicht unterstützen. Auch ein Feature "on-for-timer" in FHEM ist eigentlich überflüssig, da es ja schon at gibt.

Oder wo siehst Du einen Vorteil?

Willi

unread,
Dec 19, 2012, 2:20:04 PM12/19/12
to fhem-...@googlegroups.com
Am Mittwoch, 19. Dezember 2012 20:18:32 UTC+1 schrieb Willi:
Ich habe on-till und on-for-timer bei meinem Modul TRX_LIGHT (für RFXtrx433) getestet.

Der State wird bei Aufruf wie erwartet auf on aktualisiert und nach Ablauf der Zeit des Timers auf on.


Blödes Google-Groups (keine Edit-Funktion).

Gemeint war natürlich:

"Der State wird bei Aufruf wie erwartet auf on aktualisiert und nach Ablauf der Zeit des Timers auf off."


fek...@gmail.com

unread,
Dec 19, 2012, 3:42:46 PM12/19/12
to fhem-...@googlegroups.com

Hallo Willi,

 

vielleicht habe ich mich unklar ausgedrueckt.

 

Wenn ich in FHEM eingebe set TRX_ARC_A1 on-for-timer 00:01:00 schaltet das device und TRX_ARC_A1 wird auch in FHEM "on" angezeigt.

Nach Ablauf des Timers wird TRX_ARC_A1 abgeschaltet und in FHEM als "off" angezeigt.

Im Event monitor sieht das so aus:

---

2012-12-19 21:01:37 Global global DEFINED TRX_ARC_A1_timer

2012-12-19 21:01:38 TRX_LIGHT TRX_ARC_A1 on

2012-12-19 21:02:38 TRX_LIGHT TRX_ARC_A1 off

2012-12-19 21:02:38 Global global DELETED TRX_ARC_A1_timer

---

 

Soweit Alaska und Eishockey :-) (alles klar und alles ok)

 

Jetzt hab ich mir ein Knoepfchen in FHEM angelegt:

-- cfg ---

define air_timer_05 dummy

attr air_timer_05 eventMap on:on off:off

attr air_timer_05 icon icoUhr

attr air_timer_05 room Timers

 

define air_timer_05_start notify air_timer_05.on set TRX_ARC_A1 on-for-timer 00:01:00

define air_timer_05_stop notify TRX_ARC_A1.off set timer_05 off

------

Klick ich in FHEM bei air_timer_05 auf "on", startet der Timer und aendert den Status auf "on"

Nach Ablauf der Zeit schaltet  das Device ab, der Status des Devices wechselt auf "off" , aber der gute air_timer_05 zeigt weiterhin "on".

Das zweite notify wird also komplett verschluckt.

Im Event monitor sieht das so aus:

---

2012-12-19 21:33:11 Global global DEFINED TRX_ARC_A1_timer

2012-12-19 21:33:12 TRX_LIGHT TRX_ARC_A1 on

2012-12-19 21:33:12 dummy air_timer_05 on

2012-12-19 21:34:11 TRX_LIGHT TRX_ARC_A1 off

2012-12-19 21:34:11 Global global DELETED TRX_ARC_A1_timer

---

 

Manuell kann ich den air_timer_05 mit set air_timer_05 off erfolgreich auf "off" setzen

 

Wo liegt mein Gedankenfehler?

 

LG

WiKa

 

--
To unsubscribe from this group, send email to
fhem-users+...@googlegroups.com

puschel74

unread,
Dec 19, 2012, 3:47:16 PM12/19/12
to fhem-...@googlegroups.com
Hallo,

der FS20 on-for-timer kennt auch nur "feste" Zeiten (soweit ich das verstanden habe).
Soll heissen: ein on-for-timer 1080 wird auf einen (FS20-internen)-Wert auf-/abgerundet
(genaueres hier in der Gruppe aber im Moment keine Ahnung welcher Beitrag-evtl SuFu).
Mit einem
define <Name>at <Zeitpunkt> set <Gerät> off
lassen sich alle möglichen Zeitpunkte mehr oder weniger sekundengenau einstellen.

Grüße


Am Mittwoch, 19. Dezember 2012 20:18:32 UTC+1 schrieb Willi:

Chris

unread,
Dec 19, 2012, 3:55:18 PM12/19/12
to fhem-...@googlegroups.com
Wie bekommt man das 
on-for-timer Aktiviert ?
Fhem kennt es ja noch nicht.

Willi

unread,
Dec 20, 2012, 1:31:10 AM12/20/12
to fhem-...@googlegroups.com
@WiKa: Du hast Dich einfach vertippt und beim zweiten notify timer_05 statt air_timer_05 getippt....

Johan van der Kolk

unread,
Dec 20, 2012, 5:50:30 AM12/20/12
to fhem-users
Hallo,

Ich benutze eine Rollo steurerung von ELRO. Der geht runter mit einem on command, und stopt auf dem zweiten on command, Hoch geht der mit off, halted wieder auf dem zweiten off command.

Ich hab das TRX_LIGHT module bei mir mit zwei funktionen erweitert, blinds-down-for timer und blinds-up-for-timer.
Das war jetzt sehr einfach, und hab die neue on-for-timer subroutine fuer 99.99% kopiert.

Danke Willi !

Nehme an Ich bin der einzige benuetzer mit Rolladensteurung und ELRO, sonst waehre es schoen um diese Funktionen auch standard in TRX_LIGHT ein zu checken.

Gruss,

Johan



--Johan


2012/12/20 Willi <willi....@googlemail.com>
@WiKa: Du hast Dich einfach vertippt und beim zweiten notify timer_05 statt air_timer_05 getippt....

bsl

unread,
Dec 20, 2012, 8:40:14 AM12/20/12
to fhem-...@googlegroups.com
Hallo,
vermisst habe ich das bei Intertechno schon länger. IT-Schalter sind einfach günstig, daher motte ich sie doch noch nicht ein - wo doch die vielen Aldi-Schalter nicht mit FHEM wollen ;-).


>Deshalb verstehe ich auch nicht, warum man on-for-timer für Geräte braucht, die dies in der Hawrdware nicht unterstützen.
>Auch ein Feature "on-for-timer" in FHEM ist eigentlich überflüssig, da es ja schon at gibt.Oder wo siehst Du einen Vorteil?

Vorteil von "on-for-timer" auch für Intertechno wäre: Schnell und einfach definiert mit nur einem Schalter, Überblick behalten. Spätere zeitliche Verschiebungen des Timers nehmen auch die Aus-Zeit mit.
Beispiele:
- Heizung mittags AN/AUS für 2 Minuten, damit die Anlage nicht ihre Uhrzeit vergisst (ist in der Woche tagsüber AUS)
- Getränkekühlschrank im Sommer nur für einige Stunden (Party incl. Vorlauf)
- Gartenbeleuchtung bei Bedarf für 2h einschalten per Handy

Grüße und freu auf den automatisierten Weihnachtsbaum, 
Stefan



Am Mittwoch, 19. Dezember 2012 20:18:32 UTC+1 schrieb Willi:

Markus Hermann

unread,
Dec 20, 2012, 11:15:13 AM12/20/12
to fhem-...@googlegroups.com
Perfekt, damit klappt es so wie ich es mir vorgestellt habe.
Danke.

Hat sich ja eine anregende Diskussion entwickelt :-)

Gruß Markus

bsl

unread,
Dec 20, 2012, 11:34:21 AM12/20/12
to fhem-...@googlegroups.com
Hallo Markus,

kannst Du mir noch kurz den Hinweis/Link geben, wie Du das konkret umgesetzt hast mit dem on-for-timer?
Ich habe bisher nur eine CUL868 und gerade 3 zusätzliche IT-Steckdosen eingebaut; einfaches schalten klappt soweit.

Danke, Stefan

Willi

unread,
Dec 20, 2012, 12:36:08 PM12/20/12
to fhem-...@googlegroups.com
Am Donnerstag, 20. Dezember 2012 11:50:30 UTC+1 schrieb Johank:
Nehme an Ich bin der einzige benuetzer mit Rolladensteurung und ELRO, sonst waehre es schoen um diese Funktionen auch standard in TRX_LIGHT ein zu checken.

Hallo Johan,

schick mir doch mal Deine Version als PM. Wenn es passt, macht es vermutlich Sinn die Änderungen in die SVN-Version zu integrieren. Wir müssten uns vermutlich überlegen wie wir die Änderungen auf den Einsatzfall Rolladensteuerung beschränken können.
Poste mir daher bitte auch Deine Konfiguration der Steuerung.

MfG Willi

Johan van der Kolk

unread,
Dec 20, 2012, 1:29:48 PM12/20/12
to fhem-...@googlegroups.com
Willi,

das geraet das Ich benuetze fuer die bedienung ist ein alteres geraet. (Mit ARC codes). Das neue geraet ist die klikaan-klikuit ASUN-650 mit AC codes, aber funktioniert gleich. Ich hoffe dass hast du gemeint mit konfiguration.
Moeglich hab ich ach das geraet von klikaan-klikuit, ist leider so tief engebaut das es schwierig ist es raus zu nehmen. Dachte erst es war ELRO, aber jetzt nicht mehr sicher.



Eigentlich is es nicht mehr als ein art wechselschalter, die in eine stelle steht bei on (runterfahren), und in die andere bei off (hochfahren). Die ruhestand, keine der beiden kontakten verbunden, wird nach zwei minuten automatich gemacht, oder durch das senden von ein zweites on oder zweites off vom handsender/FHEM.

 trx_light per PM verschickt

mfg

--Johan


2012/12/20 Willi <willi....@googlemail.com>

--

fek...@gmail.com

unread,
Dec 20, 2012, 2:15:41 PM12/20/12
to fhem-...@googlegroups.com
Hallo Willi,

mea culpa - reichen 3 Vaterunser?
Dank für den Hinweis.

LG
WiKa

> -----Original Message-----
> From: fhem-...@googlegroups.com [mailto:fhem-...@googlegroups.com]
> On Behalf Of Willi

Willi

unread,
Dec 20, 2012, 2:25:22 PM12/20/12
to fhem-...@googlegroups.com
Am Donnerstag, 20. Dezember 2012 20:15:41 UTC+1 schrieb WiKa:
Hallo Willi,

mea culpa - reichen 3 Vaterunser?
Dank für den Hinweis.

Kein Problem. Muss gar keines sein.
Ich bin froh, wenn nicht nur ich Fehler mache ;-)

MfG Willi 

Willi

unread,
Dec 20, 2012, 2:53:35 PM12/20/12
to fhem-...@googlegroups.com
Am Donnerstag, 20. Dezember 2012 19:29:48 UTC+1 schrieb Johank:
 trx_light per PM verschickt

 Hallo Johan,

danke, habe ich bekommen. Die Änderungen sehen sehr gut aus.

Mir würde noch besser gefallen, wenn dies statt "blinds-up-for-timer blinds-down-for-timer"
einfach "up-for-timer down-for-timer" heissen würde.

Ich fände es auch gut, wenn in FHEMWEB nur bei den Usern "up-for-timer down-for-timer", die auch wirklich  Rolladen verwenden.

Wie hast Du die Geräte definiert (define)?

Das Statement ist ja
   define <name> TRX_LIGHT <type> <deviceid> <devicelog> [<deviceid2> <devicelog2>]

Meine bevorzugte Lösung wäre, dass wir einen neuen Namen für <devicelog> verwenden, der nur bei Rolladen verwendet wird, z.B: blinds oder rollershutter oder auch beides.
Ich könnte Dir dann auch statt on/off die up/down spendieren....

Das sähe dann in etwa wie folgt aus:

define Rolladen TRX_LIGHT ARC G2 blinds

Zum Steuern (gibt es dann nur wenn devicelog  blinds oder rollershutter ist):

set Rolladen up
set Rolladen down
set Rolladen up-for-timer
set Rolladen down-for-timer

Was meinst Du? 
Oder gibt es noch andere Meinungen von Usern?

MfG Willi

Markus Hermann

unread,
Dec 21, 2012, 2:00:55 AM12/21/12
to fhem-...@googlegroups.com
Ich habe mir einen notify "gebaut", siehe auch Link ganz oben ( https://groups.google.com/forum/m/?fromgroups#!topic/fhem-users/hX-izoMRS48 ) :


define IT_SCHALTEN notify MEIN_SCHALTER set IT_DOSE on-till {sprintf("%%02d:%%02d:%%02d",($hour+($min+5)/60)%%24,($min+5)%%60,$sec)}


IT_SCHALTEN ist der Name des notify

MEIN_SCHALTER ist ein Button meiner FS20 Fernbedienung, kann aber auch ein dummy-Device sein, dass ist jedenfalls das Device, auf das das notify reagieren soll.

IT_DOSE ist die Steckdose die geschaltet werden soll

und +5 sind die Minuten der Einschaltdauer.

Gruß

Markus

bsl

unread,
Dec 22, 2012, 2:44:13 PM12/22/12
to fhem-...@googlegroups.com
@Markus Herrmann:

Danke für die Zusammenstellung!
Gruß, Stefan
Reply all
Reply to author
Forward
0 new messages