Tageszeitabhängiges Dimmen

Begonnen von Gumma, 27 Dezember 2012, 14:32:55

Vorheriges Thema - Nächstes Thema

Gumma

Hallo zusammen!

Wenn ich mich hier so umsehe, traue ich mich meine Frage kaum zu stellen, da ich das Gefühl habe, dass ich der einzige bin der gar nichts versteht!?!?

Aber trotzdem:

Ich versuche seit Monaten (mit langen Pausen) meinen Dimmer im Flur zu überreden, nachts das Licht nur auf ca. 30% zu dimmen (Notbeleuchtung). Abends soll 100% beleuchtet werden.
Ich betreibe den fhem-Server auf meiner Fritzbox 7390 in der so ne CUL drinsteckt.
In meinem Flur befinden sich 2 Bewegungsmelder, die besagten Dimmer über die Fritzbox aktivieren sollen.

Folgenden Code habe ich aus verschiedenen Code-Schnipseln gebastelt. Ich bin da ziemlich stolz drauf, nachdem ich keine Ahnung von Programmiersprachen habe, aber ich wäre vermutlich nocht zufriedener, wenns auch funktionieren würde.

define EG_Diele_S1_Tag notify 1_2112:on.* {\  
   my $hm = sprintf("%%02d:%%02d", $hour, $min);;\
   if( $hm gt "00:00" && $hm lt "07:00") {\
    fhem "set 1_2111 dim30%%" }\
  else {\
    fhem "set 1_2111 dim100%%" }\
}

Kann mir vielleicht einer einen Tip geben, wo der Fehler liegt?

Viele Grüße,
Gumma

Zrrronggg!

ZitatWenn ich mich hier so umsehe, traue ich mich meine Frage kaum zu stellen, da ich das Gefühl habe, dass ich der einzige bin der gar nichts versteht!?!?

Da kannst du dich aber entspannen, hier versteht keiner was, nur die Basislinie ist leicht abweichend   :d

Zur Sache selbst:
- was geht genau nicht? Gehen die Lampen nicht an oder nur an und dimmen nicht oder...?
- wie heissen die Bewegungsmelder?
- was willst du genau erreichen?  Du schreibst zwar:
"nachts das Licht nur auf ca. 30% zu dimmen (Notbeleuchtung). Abends soll 100% "
Aber WANN ist nachts und abends und was soll am Tag passieren?

Vermutung ist, die Bewegungsmelder sind  1_2112 und die Lampen sind
1_2111, richtig?


Ich verstehe den "my $hm = sprintf" teil nicht so richtig, warum so kompliziert?


Versuch doch mal anstelle dessen irgendwas in diese Richtung:

define EG_Diele_S1_Tag notify 1_2112:on.*  { if($hour < 15 || $hour >= 21) { fhem ("set 1_2111 dim30%%") } else  { fhem ("set 1_2111 dim100%%") }  }

Das würde die Lampe allerdings tagsüber (vor 15 Uhr) auch mit 30% anmachen. Der einfachste Weg wäre hier, das über die Bewegungsmelder zu regeln, die man ja so einstellen kann, dass sie nur bei Dunkelheit das Event überhautp senden, dann kann man sich auch die Abstimmtung mit den abweichenden Helligkeiten im Jahresverlauf sparen. Ich vermute das hast du so gemacht.
Oder man fragt ZUSÄTZLICH in der Bedingung "isday" ab.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Gumma

Vielen Dank für die schnelle Antwort!

Ich hab mal deinen Code in die fhem.cgf kopiert.

Die Bewegungsmelder heißen 1_2112, der Dimmer 1_2111. Deine Vermutung war also richtig.

Das Problem ist, dass die Lampen gar nicht reagieren. Die Bewegungsmelder habe ich so eingestellt, dass sie ab einer gewissen Dunkelheit erst reagieren.

Eigentlich will ich mal dahin, dass in einer definierten Nachtzeit die Lampen für einen gewissen Zeitraum (ca. 2min) mit ca. 30% leuchten. Die restliche Zeit soll mit 100% "ausgeleuchtet werden" (ausgenommen Tageszeit, zu der der Bewegungsmelder gar nicht reagiert).

Das wär der Wunsch, nur leider klappt der erste Schritt (nur gedimmt einschalten) schon nicht.

Wo kann das Problem liegen?

Viele Grüße,
Gumma

Puschel74

Hallo,

ich vermute mal der Bewegungsmelder sendet nicht das worauf das notify wartet ;-)

Was sagt den das Log wenn der Bewegungsmelder auslöst?

Du kannst den Bewegungsmelder auch auf on einstellen (siehe Handbüchlein dazu).
Das erleichtert einiges bei der Auswertung musste ich lernen.

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.

Zrrronggg!

Sieh doch mal ins logfile, ob der Schaltimpuls der IR Sensoren überhaupt kommt.

Gegebenfalls  verbose Level erhöhen

Wenn das kommt, ersetze den DIM Befehl erstmal durch ein schlichtes "on". Nur um zu sehen, ob das simpelste geht.
Überhaupt: dim199% ist genau sohell wie schlicht "on"... oder kommts dir auf das langsam angehen an?

Und dann musst du irgendwann mal genauer aufschreiben, was passieren soll.

ZitatEigentlich will ich mal dahin, dass in einer definierten Nachtzeit die Lampen für einen gewissen Zeitraum (ca. 2min) mit ca. 30% leuchten. Die restliche Zeit soll mit 100% "ausgeleuchtet werden" (ausgenommen Tageszeit, zu der der Bewegungsmelder gar nicht reagiert).


Und du meinst natürlich "2 Minuten nach Auslösung des IR Melders" richtig?
Und 100% sollen auch 2 Minuten lang anliegen?
Und 100% muss gedimmt werden oder kann angeschaltet werden?
Dürfen die Lampen einfach ausgehen nach den 2 Minuten oder müssen die runtergedimmt werden?
Nächste Frage: Soll eine IR Auslösung vorherige 2 Minuten VERLÄNGERN?
Wie lange ist der Sendeabstand der IR Melder eingestellt?
(übrigens: Meine Erfahrung sagt, das 2 Minuten zu kurz sind für sowas, 3-4 Minuten sind besser.(//images/smiley_icons/icon_wink.gif)

Was ich damit sagen will: Man kann mehr oder weniger alles machen, aber man muss erstmal wirklich GENAU formulieren was man will und wie sich das System genau verhalten soll.

Aber erstmal wollen wir, dass die Lampe überhaupt angeht, richtig.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Zrrronggg!

Noch mal genauer: Ich vermute letztlich das selbe wie Puschel74.

Du fragst ja in deinem Code ab, ob der IR Melder irgendwas beginnend  mit "on" sendet.

Vielleicht hast du dem IR Sender aber gesagt er soll selber "dim" senden, weil du ja dimmen willst.

Und dann bekommt FHEM nie ein "on.*" und schaltet auch nicht.

In der Benutzung mit FHEM ist es immer eine gute Idee, wenn Sender und Sensoren schlicht "on" senden und nix sonst, und die weitere Mimik machst du mit FHEM.

FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Gumma

Herzlichen Dank für die schnellen und netten Antworten!!!

Hier mal ein Auszug aus dem Log. Die Adresse 1_1112 ist alt und hängt noch irgendwo rum, sollte aber kein Problem sein, oder?

2012-12-27 16:48:00 FS20 1_2112 on
2012-12-27 16:48:00 FS20 1_1112 on
2012-12-27 16:48:11 FS20 1_2112 on
2012-12-27 16:48:12 FS20 1_1112 on

Verstehe ich das richtig, dass das "notify" eigentlich den richtigen Befehl vom Bewegungsmelder bekommt?
Lediglich der Befehl von der Fritzbox an den Dimmer geht nicht raus oder kommmt nicht an.

Zu den weiteren Fragen noch ein paar Antworten:

Zitat: Und dann musst du irgendwann mal genauer aufschreiben, was passieren soll.

Ok. Ich versuchs mal:

Bei ausreichender Helligkeit soll gar nichts passieren. Das regel ich über die Bew.Melder.
Wenns abends dunkel wird soll der Dimmer 100% Licht machen.
Ab 0:00 Uhr bis 05:00 Uhr soll der Dimmer nur 30% Licht machen. (Hintergrund: In diesem Zeitfenster brauche ich nur eine Notbeleuchtung, um in geistiger Umnachtung schadfrei vom Bett auf die Toilette zu wandeln.(//images/smiley_icons/icon_wink.gif)
Ab 05:00 Uhr wieder 100% Licht, bis ausreichend Tageslicht erreicht ist, was ich dann wieder über die Bew.Melder regel.

Deine Fragen und meine Antworten:

Und du meinst natürlich "2 Minuten nach Auslösung des IR Melders" richtig? --> Richtig
Und 100% sollen auch 2 Minuten lang anliegen?  --> richtig, oder auch 3min is Wurscht.
Und 100% muss gedimmt werden oder kann angeschaltet werden? --> kann auch geschaltet werden.
Dürfen die Lampen einfach ausgehen nach den 2 Minuten oder müssen die runtergedimmt werden? --> einfach ausgehen reicht.
Nächste Frage: Soll eine IR Auslösung vorherige 2 Minuten VERLÄNGERN? --> JA!
Wie lange ist der Sendeabstand der IR Melder eingestellt? --> Bin mir grad nicht sicher, denke aber 1:30 min.
(übrigens: Meine Erfahrung sagt, das 2 Minuten zu kurz sind für sowas, 3-4 Minuten sind besser. --> ok! Ich kann auch damit leben ;-)


Aber erstmal wollen wir, dass die Lampe überhaupt angeht, richtig. --> Richtig!


Viele Grüße,
Gumma

Puschel74

Hallo,

dann mal im kleinen ;-)

define EG_Diele_S1_Tag notify 1_2112:on.* { fhem("set 1_2111 on")}

Ich hoff ich hab nix vergessen.

Wenn der Bewegungsmelder ein on sendet muss die Lampe schonmal an gehen.

Sind zwar Basics aber wenn das nicht klappt dann evtl. mal ein
set 1_2111 on
versuchen.
Die Lampe lässt sich per fhem aber schonmal schalten?

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.

Gumma

Oh je ihr Armen.... müsst euch hier mit einem Informatik-Volldeppen rumschlagen .....

Also:

Ich habs gleich mit folgendem Code probiert:

define EG_Diele_S1_Tag notify 1_2112:on.* {\
   if($hour > 15 || $hour <= 21) {\
   fhem ("set 1_2111 on") }\
   else { fhem ("set 1_2111 on") }\
}

... und da geht die Lampe an....

Und nu???  (//images/smiley_icons/icon_rolleyes.gif)

VG
Gumma

Gumma

ein kleiner Schritt weiter:

Auch das funtioniert einwandfrei:

define EG_Diele_S1_Tag notify 1_2112:on.* {\
   if($hour > 15 || $hour <= 21) {\
   fhem ("set 1_2111 on-for-timer 10") }\
   else { fhem ("set 1_2111 on-for-timer 10") }\
}

Log:

2012-12-27 17:37:02 FS20 1_2112 on
2012-12-27 17:37:02 FS20 1_2111 on-for-timer 10


Nur das dimmen geht scheinbar nicht....

VG
Gumma

Zrrronggg!

Und nun ... machst du bitte erstmal das was Pusche74 vorgeschlagen hat.

define EG_Diele_S1_Tag notify 1_2112:on.* { fhem("set 1_2111 on")}

Ich sehe 3 Möglichkeiten:
a) mein Vorschlag / Uhrzeit bedingung ist noch falsch
b) die Uhr deines Host geht falsch
c) das dim-Kommando geht nicht, z.b. weil dein Aktor nicht dimmen kann.


Mit Puschels Vorschlag können wir ggf a) und b) ausschliessen.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Zrrronggg!

Ah, überschneidung.

Okay, kan dein aktor überhaupt dimmen?

Was für ein Aktor wird eingesetzt?
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Gumma

Der kann dimmen.

Ich verwende einen FS20 DU-2.

"Von Hand" funktioniert alles. Die automatische Ausführung mit dem Code funktioniert nicht...

VG
Gumma

Puschel74

Hallo,

wenn das

define EG_Diele_S1_Tag notify 1_2112:on.* {\
if($hour > 15 || $hour <= 21) {\
fhem ("set 1_2111 on-for-timer 10") }\
else { fhem ("set 1_2111 on-for-timer 10") }\
}

klappt mach mal das

define EG_Diele_S1_Tag notify 1_2112:on.* {\
if($hour > 15 || $hour <= 21) {\
fhem ("set 1_2111 dim50%") }\
else { fhem ("set 1_2111 dim50%") }\
}

Ich hoffe das ist so richtig.

Ein einfaches
set 1_2111 dim50%
würde auch reichen ;-)

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.

Gumma

Das...

set 1_2111 dim50%

funktioniert!

Das...

define EG_Diele_S1_Tag notify 1_2112:on.* {\
   if($hour > 15 || $hour <= 21) {\
   fhem ("set 1_2111 dim50%") }\
   else { fhem ("set 1_2111 dim50%") }\
}

funtioniert nicht.

Aber das....


define EG_Diele_S1_Tag notify 1_2112:on.* {\
   if($hour > 15 || $hour <= 21) {\
   fhem ("set 1_2111 dim50%%") }\
   else { fhem ("set 1_2111 dim50%%") }\
}

funktioniert jetzt plötzlich!!! Ich werd wahnsinnig! Das hab ich schon min. 1000 Mal so probiert....

Jetzt habt ihr mich auf einen Fehler gebracht juhu!  dim30% gibts nicht! Es gibt dim25% und dim31% aber kein dim30%.

Danke!!!

Darf ich euch jetzt weiter löchern???

Wie kann ich das nun lösen, dass ich z.B. auf 31% dimme und nach ca. 4min das Licht wieder erlischt??

Danke für euren Support bis hierhin!

VG
Gumma




Puschel74

Hallo,

ich bin mir sicher das das auch eleganter geht ;-)

define EG_Diele_S1_Tag notify 1_2112:on.* {\
if($hour > 15 || $hour <= 21) {\
fhem ("set 1_2111 dim31%%");;
fhem ("define EG_Diele_S1_Aus +00:04:00 set 1_2111 off");;
}\
else {
fhem ("set 1_2111 on") }\
}

Oder so ähnlich.

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.

Zrrronggg!

define EG_Diele_S1_Tag notify 1_2112:on.* {\
if($hour > 15 || $hour <= 21) {\
fhem ("set 1_2111 dim50%% ;; define wieder_aus at +00:04:00 set 1_2111 off") }\
else { fhem ("set 1_2111 dim50%% ;; define wieder_aus at +00:04:00 set 1_2111 off") }\
}
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Puschel74

Wusste doch das sowas auch eleganter geht ;-)
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.

Zrrronggg!

Aber das verlängert noch nicht.  Dazu musst du eventuell alte "wieder_aus" vorher löschen. Geht so:

define EG_Diele_S1_Tag notify 1_2112:on.* {\
if($hour > 15 || $hour <= 21) {\
fhem ("set 1_2111 dim50%% ;; delete wieder_aus ;; define wieder_aus at +00:04:00 set 1_2111 off") }\
else { fhem ("set 1_2111 dim50%% ;; delete wieder_aus ;; define wieder_aus at +00:04:00 set 1_2111 off") }\
}


Hier werden eventuell älterer "wieder_aus" aus vorherigen Auslösungen gelöscht und jedes mal eine neue geschrieben, die den Zeitpunkt immer 4 Minuten nach hinten verschiebt.

Beachte, dass dies im Log Fehlermeldungen bei der ersten Auslösung gibt, wenn die letzte Auslösung mehr als 4 Minuten zurück liegt, da "delete" dann was löschen will, was nicht mehr da ist.

Etwa der Art "please define delete wieder_aus first"

Das ist aber egal, die kann man ignorieren. Wer's ganz akkurat haben will, könnte vor dem Löschen testen, ob es ein "wieder_aus" gibt. Das hat funktional aber keinen Vorteil, beseitigt eben nur die Fehlermeldungen im Log, rein kosmetisch. Macht die ganze Geschichte wegen der dazu erforderlichen verschachtelter IF-bfragen aber wesentlich komplexer. Ich mach das nie.

Denk jetzt bitte noch daran, den Resendintervall des IR Senosr möglichst hoch zu stellen, 180 Sekunden oder so. Das spart Funkzeit und Batterie. Im Wesentlichen muss der Sendeabstand eben nur deutlich kürzer als die Zeit die bei "wieder_aus" definiert ist.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Zrrronggg!

Uhrzeit und Dimwerte natürlich anpassen. Anstatt dim100% würde ich immer  "set xy on" vorziehen.

Nochwas: Du schreibt oben, das es ab 5 Uhr wieder voll hell werden soll. Daher ist es vermutlich besser, die Sache genau umzudrehen. Also die Zeit, in der es 31% Dimmen soll abzufragen und mit ELSE alles andere volle Helligkeit.  Das ergibt dann:


define EG_Diele_S1_Tag notify 1_2112:on.* {\
if($hour >= 0 || $hour < 5) {\
fhem ("set 1_2111 dim31%% ;; delete wieder_aus ;; define wieder_aus at +00:04:00 set 1_2111 off") }\
else { fhem ("set 1_2111 on ;; delete wieder_aus ;; define wieder_aus at +00:04:00 set 1_2111 off") }\
}

FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Gumma

Jetzt bleibt mir nur noch "herzlichen Dank" zu sagen!

Ihr habt mir sshr schnell und sehr gut weitergeholfen!

Danke!

VG
Gumma

Gumma

Zum Abschluss möchte ich noch meine vorläufige Endversion (durch eure Hilfe) des oben besprochenen Problemes posten. Vielleicht nutzt es ja jemandem (der so wenig Ahnung hat wie ich...):

define EG_Diele_S1_Tag notify 1_2112:on.* {\
my $hm = sprintf("%%02d:%%02d", $hour, $min);;\  
   if($hm >= "00:00" && $hm < "06:45") {\
   fhem ("set 1_2111 dim25%%;; delete wieder_aus ;; define wieder_aus at +00:02:10 set 1_2111 off") }\
   if($hm >= "06:45" && $hm < "21:00") {\
   fhem ("set 1_2111 dim100%%;; delete wieder_aus ;; define wieder_aus at +00:02:10 set 1_2111 off") }\
   if($hm >= "21:00" && $hm <= "23:59") {\
   fhem ("set 1_2111 dim50%%;; delete wieder_aus ;; define wieder_aus at +00:02:10 set 1_2111 off") }\  
}

Zur Erklärung für Newbees (wie ich):

1_2112 ist ein Bewegungsmelder
1_2111 ist die Deckenbeleuchtung im Flur

Funktion:
Zwischen 00:00 Uhr und 06:45 Uhr fungiert die Deckenlampe als Notbeleuchtung (25%)
Zwischen 06:45 Uhr und 21:00 Uhr wird die Diele mit 100% beleuchtet.
Zwischen 21:00 Uhr und 00:00 Uhr gibts eine gemütliche Abendbeleuchtung von 50%
Ist genügend Tageslicht vorhanden, sendet der Bewegungsmelder 1_2112 gar kein Signal (Regelung über Bewegungsmelder)

Achtung: Der Bewegungsmelder FS20 DU-2 kann nicht alle dim-Werte ausführen!

Zum define wieder_aus bitte in diesem Thread nachlesen, hab ich auch nur von Zrrronggg! (Danke!(//images/smiley_icons/icon_wink.gif) erhalten.

Viele Grüße
Gumma

PS.: Cooles Forum! Seit einem Jahr bastel ich an dem Problem rum. Heute im Forum angemeldet, seit heute funktionierts!

Puschel74

Hallo,

schön wen dein Code funktioniert.

So müsste es auch klappen:

define EG_Diele_S1_Tag notify 1_2112:on.* {\
my $hm = sprintf("%%02d:%%02d", $hour, $min);;\
if($hm >= "00:00" && $hm < "06:45") {\
fhem ("set 1_2111 dim25%%") }\
if($hm >= "06:45" && $hm < "21:00") {\
fhem ("set 1_2111 dim100%%") }\
if($hm >= "21:00" && $hm <= "23:59") {\
fhem ("set 1_2111 dim50%%") }\
if (DEFINED wieder_aus) {\ #oder so ähnlich, hab nicht nachgeschaut
fhem ("delete wieder_aus");;\
}\
fhem ("define wieder_aus at +00:02:10 set 1_2111 off");;\
}

Bin mir jetzt zwar nicht zu 100% sicher aber ich meine das das so klappen sollte
inkl. Prüfung ob wieder_aus schon existiert.
Dann hättest du dein wieder_aus einmal und kannst so bequemer die Nachlaufzeit
anpassen.
Mit der anderen Variante kannst du auch 3 unterschiedliche Nachlaufzeiten benutzen.

Also bitte nicht hauen wenn das so nicht klappt - ich habs noch nicht versucht ;-)

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.

Gumma

Ist das jetzt was für die Abteilung "Codeschnipsel" oder ist das zu banal oder zu speziell?

VG
Gumma

Puschel74

Hallo,

weder noch.

Das wäre genau ideal für den Bereich Codeschnipsel ;-)
Aussagekräftiger Titel dazu und ab damit.

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.

Zrrronggg!

Okay, glaube auch, dass man das ruhig ins Wiki eintragen kann. Aber dann schlage ich vor:

- nur Versionen die getestet sind, also Puschel74 letzten Vorschlag Stand jetzt nicht
- immer den einfachsten Code, der das Problem löst.

Bei letzterem Punkt habe ich insbesondere die Frage warum du

my $hm = sprintf("%%02d:%%02d", $hour, $min);;
if($hm >= "00:00" && $hm < "06:45")

verwendest anstatt die viel simplere Abfrage nach Stunde (wie bei mir weiter oben). Gehts da nur um die 6:45 anstatt  ">7"?
Wenn das einen echten Mehrwert bringt, denn ich gerade nicht sehe: Dann gut.

Wenn aber nicht würde ich die simplere Variante im Wiki für sinnvoller halten.
Oder ggf mit Erklärung des Unterscheides beides.

Zuletzt: Ein bisschen Kommentar nicht vergessen, in diesem Fall muss mindestens erläutert werden, das die Fehlermeldung im Log auftauchen können und das die ignorierbar sin.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Gumma

Hallo!

Ich hab den Code zwischenzeitlich schon in "Codeschnipsel" eingestellt. Gerne einfach ergänzen oder geänderte Codes einstellen. Ich hab den für mich praktikabelsten Code verwendet und versucht, mit meinem geringen Informatikwissen zu erklären. Da kann sicher der ein oder andere noch was informatives beitragen.

VG
Gumma

Puschel74

Hallo,

woah, gleich ins Wiki.
Ok. Ich dachte schön klein und kompakt --> Codeschnipsel.
Aber gut.
Ich werde heut abend mal meinen Teil testen.
Ich meine irgendwo im Wiki (oder in der Group) den Teil mit DEFINED gelesen zu haben - muss ich mal
heute abend in Ruhe stöbern und testen.
Oder aber Rudi, Boris, Martin oder wer auch immer schlagen hier noch auf und sagen mir
das der Test keinen Wert hat das es DEFINED so nicht gibt.
Das würde mir einiges an "arbeit (Lernerfolg)" ersparen ;-)

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.

stromer-12

Hallo,


...
fhem ("delete wieder_aus") if (Value("wieder_aus") ne "");;\
...

tut so bei mir

Gruß
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

Puschel74

Hallo,

das ist natürlich auch ne gute Idee.

Gleich mal abändern und testen.
Danke.

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.

Zrrronggg!

Zitatfhem ("delete wieder_aus") if (Value("wieder_aus") ne "");;

Wie oben erwähnt bringt das funktional keinen echten Vorteil nur weniger Müll im Log.
Ich hab mir das bisher immer gekniffen.

Sauberer isset natürlich.

FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL