FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: Dietmar63 am 04 Januar 2013, 19:42:26

Titel: Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 04 Januar 2013, 19:42:26
Hallo FHEMler,,

ich nutze FHEM seit Mitte 2012 für meine Haussteuerung auf einer fritzbox 7270 und bin begeistert was man damit so alles machen kann - klasse!

Ich habe soeben auf die neue Version gewechselt, ein bißchen herumprobiert und auf Basis des Modules Twilight ein neues Modul erstellt, das meine Version einer Heizungsteuerung realisiert.

Eintrag in fhem.cfg:
define <name> Heating_Control <device> <switching times> <condition>
Bspiel für Wohnzimmer:
define HCW Heating_Control HeizungWohnen 12:00:25_12:30:22_17:00:22.5 $we && !isVerreist()

in diesem Fall würde das Gerät HeizungWohnen um
um 12:00 Uhr auf 25°,
um 12:30 Uhr auf 22°,
um 17:00 Uhr auf 22.5°
gestellt. HeizungWohnen muss als FHT definiert sein.

Die Schaltzeit-punkte und Temperaturen werden einfach im Format HH:MM:temp und durch Underscore getrennt aufgezählt.
Als letztes folgt eine Bedingung, die für alle Schaltvorgänge erfüllt sein muss. Im obigen Beispiel sollen die drei Schaltungen am Wochenende erfolgen, wenn ich nicht verreist(99_Utils) bin.

Mit diesem Modul ist es bei mir möglich die endlosen at-Einträge durch einen Eintrag abzulösen!

Wenn Interesse daran besteht, stelle ich das Modul der Allgemeinheit zur Verfügung. Ich muss mir nur noch eine Sourceforge-Id besorgen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 04 Januar 2013, 19:54:50
Kleine Designanmerkung: anstatt underscore würde ich Pipe "|" nehmen. Macht alles ein wenig lesbarer und intuitiver
Ansonsten find ich es erstmal nicht schlecht.....
Die condition kann man auch in {} setzen?

Und warum nimmst du überhaupt Underscore und kein Leerzeichen, und liest einfach bis zum letzten Param -1 aus?

Zumindest in contrib sollte es rein, besser aber in Absprache mit Rudi in den FHEM-Ordner, Vorausetzung: Supportwille und Dokumentation am Ende des Moduls
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dlehmann69 am 04 Januar 2013, 20:47:39
Hallo Zusammen,

ich habe großes Interesse an diesem Modul. Ich plane zur Zeit den Umstieg auf FHEM (von Contronics), da jetzt alle PC mit Linux laufen. Ich habe einige FHT und andere FS20 Komponenten im Einsatz. Aktuell läuft FHEM bereits und lauscht schon mal mit. Und ich belese mich erst einmal hier, besonders da Perl für mich neu ist. Und da kommt dieses Modul gerade recht.

Beste Grüße
Dirk
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 04 Januar 2013, 23:36:35
ZitatKleine Designanmerkung: anstatt underscore würde ich Pipe "|" nehmen. Macht alles ein wenig lesbarer und intuitiver
Und warum nimmst du überhaupt Underscore und kein Leerzeichen, und liest einfach bis zum letzten Param -1 aus?

Ich hatte ursprünglich natürlich Leerzeichen vorgesehen - intuitiver ja - leider stellte sich aber aber nach der Definition von Steuerungen in der fhem.cfg heraus, dass im Modul die Parameter nur bis zum ersten Leerzeichen ankamen. Direkt in die Oberfläche eingegeben funktionierte alles. Den Grund dafür habe ich nicht weiter analysiert, weil es mir zunächst nur darauf ankam, dass Modul zum Funktinieren zu bringen.

ZitatDie condition kann man auch in {} setzen?

in einer älteren Version hatte ich einen kompletten <Command>(Command bei at> angehängt. Das habe ich später wieder gegen die <condition> condition - damit eine Zeile in fhem.cfg nicht zu lang wird. {} habe ich noch nicht ausprobiert - im Moment muss man sie fortlassen. Die komplette Codezeile inclusive der {} werden im Modul ergänzt. Wie auch immer die fertige Version aussieht - ich bin für Vorschläge offen.

ZitatZumindest in contrib sollte es rein, besser aber in Absprache mit Rudi in den FHEM-Ordner, Vorausetzung: Supportwille und Dokumentation am Ende des Moduls

Ich hatte Rudi schon eine Mail geschickt. Neue Module seien Willkommen. Er meinte ich solle mir nur eine Sourceforge-id besorgen, er würde mich für SVN zulassn, dann könnte ich das Modul einchecken. Was ist contib? Dokumentation und Support sind jedenfalls kein Problem. Es ist ja nicht kompliziert zu benutzen.

Freut mich, wenn ich etwas beisteuern kann.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Puschel74 am 05 Januar 2013, 00:26:26
Hallo

nicht schwer zu verstehen - wenn man Modulschreiber ist ;-)
Du hast noch keine Ahnung was an "Arbeit" auf dich noch zukommt - zukommen wird.
Aber anyway -
danke erstmal für dein Engagement und für deine Erweiterung (Modul)

Grüsse
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: UliM am 05 Januar 2013, 14:05:31
Hi,
ist das an das Modul HCS angelehnt oder etwas ganz anderes?
Was ist der Unterscied?
Gruß, Uli
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 05 Januar 2013, 16:21:07
Hallo,

nein - Heating_Control funktioniert nicht gleich!

HCS verändert mit Verzögeruungslogiken und abhängig von der Stellung der Ventilantriebe den An- Auszustand der Zentralheizung. Dazu muss ein Schaltaktor an der Heizung angebracht werden - Arbeit für einen ausgebildeten Elektriker.

Ich überlasse diese Aufgabe meiner Zentralheizung selbst. Sie merkt meiner Meinung nach selbst, ob das Wasser im Kreislauf zusätzliche Wärme benötigt.

Mein Modul ist aus der Tatsache heraus entstanden, dass ich im Verlaufe eines Tages unterschiedliche Temperaturen in den jeweiligen Räumen benötige.

Beispiel:

Morgens um 6:20 Uhr soll es in der Küche schön warm sein. FHT-Kueche bekommt den Befehl um 5:40 auf 23° zu heizen.

Um 8:00 ist die ganze Familie aus dem Haus. Dann stellt Heating_Control die Temperatur für FHT-Küche wieder auf 18°. Die Temperatur bleibt dann den ganzen Morgen angenehm warm. Es wird aber kein zusätzliche Wärme von den Heizkörpern der Küche abgegeben.
 
Um 13:00 Uhr kommen die Familienmitglieder langsam nach Hause, so dass um 12:30 wieder 23° von Heating_Control an FHT-Kueche gesendet wird.

Nach dem Mittagessen so gegen 14:00 verlagert sich das Geschehen von der Küche in andere Räume, wo dann eine ähnliche Steuerung existiert. In der Küche wird von FHT-Kueche wieder 18° eingestellt, was dann abends zum Abendbrot nochmals auf 23° verändert wird.

HCS geht ganz andere Wege.
Ich gehe einfach davon aus, dass wenn meine Heizkörper keine Wärme anfordern, die Heizung von selbst bemerkt, dass sie nicht heizen muss. Ich hoffe ich liege nicht ganz falsch.

Gruß Dietmar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Puschel74 am 05 Januar 2013, 16:30:07
Hallo,

Frage am Rande:
Wie schaltet deine Heizung die Heizwasserpumpe ein und aus?
Bei mir läuft das auch über fhem - als einen gelernten Elektriker voraussetzt da ich
einen Schaltaktor für die Wasserpumpe angebracht habe.
Oder hast du eine Diff.Druck Pumpe die erkennt das ein Heizventil geöffnet ist?

Grüße
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 05 Januar 2013, 17:01:48
Hallo,

ZitatWie schaltet deine Heizung die Heizwasserpumpe ein und aus?
 Bei mir läuft das auch über fhem - als einen gelernten Elektriker voraussetzt da ich
 einen Schaltaktor für die Wasserpumpe angebracht habe.
 Oder hast du eine Diff.Druck Pumpe die erkennt das ein Heizventil geöffnet ist?

Die Heizwasserpumpe wird bei mir gar nicht geschaltet. Ob meine Heizung selbst an- oder abschaltet, kann ich nicht sagen. Vielleicht rüste ich diese Funktion nach, gehört nicht zu meinen vorrangigen Projekten, zumal ich kein Elektriker bin.

Ich will nur abhängig von der Tageszeit automatisch unterschiedliche Temperaturen in den Räumen einstellen können.

Gruß Dietmar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: MarkusN am 05 Januar 2013, 18:34:06
Interessante Geschichte. Könnte man das auch mit geringem Aufwand auf max portieren?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 05 Januar 2013, 18:36:54
mit MAX kenne ich mich nicht aus.

Gruß Dietmar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Martin Fischer am 05 Januar 2013, 19:13:59
Zitat von: orti-otto schrieb am Sa, 05 Januar 2013 16:21HCS verändert mit Verzögeruungslogiken und abhängig von der Stellung der Ventilantriebe den An- Auszustand der Zentralheizung. Dazu muss ein Schaltaktor an der Heizung angebracht werden - Arbeit für einen ausgebildeten Elektriker.

mal ein vergleich aus sicht des autors von HCS:

beide module verfolgen einen anderen zweck, können aber (ohne es getestet zu haben) zusammen wirken.

mit HCS verfolge ich den weg der energieeinsparung bei gleichzeitigem erhalt des komforts (= "wohlfühltemperatur"). dazu greife ich direkt in die steuerung der heizungsanlage ein. siehe dazu: FHEM Modul zur (erweiterten) Heizungssteuerung. dabei bin ich weder "heizungsbauer" noch "ausgebildeter elektriker". nach studium der betriebsanleitung oder besser der installationsanleitung meiner vaillant therme bin ich auf die brücke für einen raumthermostat gestossen. und genau hier setze ich an: ist der raumthermostat offen, dann geht die heizungsanlage davon aus, das kein heizbedarf anliegt. und das hat auch einfluss auf die pumpe, die dann ebenfalls ausgeschaltet wird. lediglich der warmwasserkreis bleibt davon unberührt. HCS richtet sich dabei nicht ausschliesslich nach ventilstellungen, sondern bei bedarf an temperaturen. man kann also entweder nach temperatur oder ventilstellung regeln. das ganze dann auch noch mit weiteren funktionen wie overdrive, eco-mode, etc. unter- bzw. übersteuern. HCS berücksichtigt dabei die sog. hysterese. weitere funktionen, wie burst-mode, gäste oder partymodus sind schon in der queue. durch die vorbereitungen für den aufbau des forums, sowie andere projekte (fhem update, fhem statistics, fheminfo,...) musste ich aber eine pause in der weiterentwicklung von HCS einschieben. ich hoffe, dass ich die weiterentwicklung in den nächsten wochen wieder aufnehmen kann.

das modul heating_control verfolgt einen anderen weg: hier geht es aus meinem verständnis nach um frei definierbare zeiträume, wann welche temperatur vorgehalten wird. die steuerung der heizungsanlage bleibt dabei sich selber überlassen.

aus meiner gesammelten erfahrung führt dies jedoch nur bedingt zu einsparpotentialen, da ja die heizungsanlage (je nach betriebsart) weiterhin "ihr" programm fährt.

beispiel aus meiner anlage:
die vaillant therme läuft bei mir zeitgesteuert. d.h. das direkt an der anlage zeiten eingestellt werden, wann sie auf leistung gehen soll oder in welcher zeit eine absenktemperatur gilt. ich weiss es im moment nicht genau und bin auch gerade zu faul zum nachsehen aber man kann davon ausgehen, das ich meine therme so programmiert habe, das sie von mo-fr 06:30 bis 22:30 und sa-so von 07:30 bis 23:30 auf heizbetrieb gehen soll. in allen anderen zeiten, geht sie auf die absenktemperatur von 17°.

da ich seit jahren mittels 1-wire (die ursprüngliche 1-wire anbindung an FHEM stammt von mir) das verhalten meiner heizungsanlage studieren konnte (siehe Heiz- und Warmwasserkreis überwachen, haben diese werte mir viele rückschlüsse liefern können.

so z.b. das (m)eine heizung bei nicht vorhandenem wärmebedarf (also kein ventil offen) in regelmässigen abständen (ich glaub so alle 10-20 min.) temperatur auf den vorlauf gibt um am rücklauf zu erkennen ob irgendwo wärme angefordert wird. und genau hier kann man mit HCS gegenwirken: "wenn kein wärmebedarf anliegt, dann schalte das "virtuelle raumthermostat" in form eines HM-aktors einfach auf aus!".

daher ist das modul heating_control eine gute ergänzung zu HCS oder umgekehrt. je nachdem aus welcher sicht man es sehen will ;-)

bei mir sieht das im moment z.b. so aus:

im folgenden graph sieht man sehr gut, wann die heizung in betrieb ist und den anliegenden wärmebedarf über vor- / rücklauf in bezug auf die aussentemperatur regelt. hier ist die heizungsanlage also seiner eigenen steuerung überlassen, die man dann zusätzlich mit dem modul von dietmar regeln kann. die orangen / gelben blöcke zeigen, wann HCS über den HM-aktor "eingegriffen hat", also wann die heizungsanlage auf heizbetrieb geschaltet wurde.


(siehe Anhang / see attachement)


dazu der abhängige stromverbrauch der heizungsanlage. durch die schaltung des simulierten raumthermostats wird eben auch die heizkreispumpe ausgeschaltet:


(siehe Anhang / see attachement)


und dazu der gasverbauch:


(siehe Anhang / see attachement)


anhand der graphen sieht man sehr schön das zusammenspiel und die auswirkungen von HCS.

irgendwo habe ich auch noch einen graph von "vor HCS" zeiten bzgl. des gasverbrauchs, wo man sehr schön sehen kann, wie die heizungsanlage ihre messung des anliegenden wärmebedarfs über die vor- / rücklauftemperatur ermittelt, was letztlich wieder zu einem höherem verbrauch führt.

wie man an dieser (vielleicht sehr ausführlichen) darstellung sieht, verfolgen beide module einen anderen weg bzw. haben einen anderen zweck. ich glaube uli fragte u.a. danach.

wer es noch ausführlicher haben will, der besuche die zwei obigen links. dort habe ich den aufbau und die steuerung über HCS mit einem HM-aktor näher beschrieben.

gruss martin
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 05 Januar 2013, 19:26:42
Hallo,

vielen Dank für die ausführliche Erklärung.
Hast du eine Vorstellung davon, was Du an Gas mit der Steuerung sparst?

Ich besitze auch eine Vailant. Ich glaube sie funktioniert ähnlich.
Vielleicht ergänze ich HCS. Nächste Woche kommt der Heizungsbauer - ich werde ihn fragen.

Gruß Dietmar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Martin Fischer am 05 Januar 2013, 19:54:19
hiya dietmar,

werte habe ich leider noch nicht, da ich HCS erst im 4. quartal 2012 veröffentlicht habe. ich gehe aber mal vorsichtig mit einer schätzung von bis zu 10% (vielleicht sogar mehr) aus (ich werde wahrscheinlich auch keine genaueren werte bekommen, da ich im vorjahr noch im haus eine wohnung vermietet hatte und da das gesamte heizverhalten ja noch ganz anders war).

es entfallen ja a) die ganzen intervalle die die heizung von sich aus auf den heizkreislauf gibt und b) ist es ja nicht nur so, wie in den graphen zuvor zu sehen, dass die heizung von 07 - 22 uhr durchläuft. sobald es draussen wieder etwas wärmer wird, greift HCS auch tagsüber häufiger ein:


(siehe Anhang / see attachement)


hier sieht man z.b. das zwischen ca. 0:00 bis 06:00 uhr heizbedarf anlag (wahrscheinlich weil ich da mal wieder eine nacht programmiert habe ;-)), dann aber bis ca. 15:15 uhr alle räume so warm waren, das die heizung halt auch ausbleiben konnte und erst wieder ab ca. 15:15 bis 20:00 uhr laufen musste. und wie bereits geschrieben: man hat ja nicht nur die einsparung am gasverbrauch sondern in meinem aufbau auch am stromverbrauch, da eben dann auch die pumpe nicht läuft.

wenn du tatsächlich eine gleiche oder ähnliche therme einsetzt, dann solltest du dir mal meinen aufbau näher ansehen. da brauch man wirklich kein elektriker sein: heizung vom stromkreis trennen, kabel an "Klemme 3-4-5" und mit z.b. HM-LC-Sw1-SM verbinden. der muss natürlich mit 230v eingespeisst werden. aber dafür gibts ja sicherungen. ;-)

ABER:
man hantiert hier dennoch mit 230 volt und sollte sich im klaren sein, was man tut!

daher lieber einen "fachmann" dran lassen, wenn man sich das nicht zutraut. auch sollte man darauf achten, das die schaltzeiten nicht zu kurz gewählt werden. deshalb habe ich in HCS auch die "idleperiod" eingebaut. siehe auch: FHEM Modul HCS überarbeitet
 (//www.fischer-net.de/hausautomation/fhem/54-fhem-modul-hcs-ueberarbeitet.html).

gruss martin
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: gagga am 05 Januar 2013, 22:30:33
Mein Heizungsbauer hat mir empfohlen für meine Gas-Brennwerttherme zur täglichen Regelung nicht permanent den ganzen Heizkessel in Standby zu schicken und wieder zu starten, da der Regelkreis versucht diese Pausen mitauszugleichen und damit in den Zeiten, in denen er heizt, zuviel heizt (d.h. zu hohe Schwankungen nach oben). Er meinte, daß eine moderne Pumpe der entscheidende Faktor ist: extrem wenig Stromverbrauch und eine recht intelligente Regelung mit Daten vom Vorlauf (Druck, Temperatur), Rücklauf, Außen und Heizkesseltemperatur und hat empfohlen lieber die Heizkörperthermostate mit Intelligenz auszustatten. Daher habe ich mir für den Alltag etwas ähnliches wie Heating_Control mit MAX Thermostaten gebastelt (d.h. nur bei Anwesenheit abhängig vom jeweiligen Tagesplan werden die jeweiligen Heizkörpertemperaturen erhöht, z.B. "Flieger um 6 Uhr morgens -> Temperatur im Bad unten auf 20 Grad ab 4.30 Uhr"). Für die Ausnahmesituationen wie Urlaub habe ich dann zusätzlich mit einem FS20 WS1 Aktor (muß dringend durch HM ersetzt werden) eine Möglichkeit dennoch den Heizkessel komplett in Standby (Standby = nur Frostschutz) zu schalten. Empfehlung hier vom Heizungsbauer ist übrigens den Heizkessel trotzdem jede Woche mal kurz für 1 Stunde anzuschalten, damit die Pumpe nicht festrostet (mache ich mit einem "at").

Ciao,
gagga
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Martin Fischer am 06 Januar 2013, 00:54:14
hiya gagga,

so ist das mit den heizungsbauern. der eine so, der andere so. ich möchte hier auf keinen fall eine berufsgruppe verunglimpfen aber ich habe da so meine erfahrungen gesammelt und komme zu dem schluss: viele heizen auch nur mit wasser ;-)

wie ich zu dieser meinung komme?

ich habe vor 2-3 jahren einen hydraulischen abgleich meiner anlage durchführen wollen. dazu habe ich ca. 15 fachbetriebe angerufen, ihnen mein vorhaben geschildert. einige hatten überhaupt kein interesse, andere waren der meinung das es sich für mich nicht richtig lohnen würde und andere kamen mir vor, als ob sie das wort noch nie gehört haben. bei enigen hatte ich als laie das gefühl mehr darüber zu wissen als die gesprächspartner (und nein, es waren keine azubis, sondern zum grösstenteil die inhaber).

nach vielen, vielen telefonaten wurde ich letztlich fündig. ein heizungsbauer (vater, sohn) die total engagiert waren, sich auch nach einem langen telefonat wo ich alle meine fragen beantwortet bekam auch noch die mühe machten, meine anlage gut eine woche vor weihnachten komplett(!) zu vermessen und berechnet haben und dann auch noch rechtzeitig vor weihnachten das ganze umzusetzen.

ich habe ein mehrere seiten langes protokoll mit allen werte und berechnungen erhalten, viele, viele gute tips und ratschläge, besonders auch zu meiner temperaturerfassung mittels 1-wire. ich glaube in einem artikel auf meiner homepage habe ich das auch erwähnt.

so konnte ich in meinem fall den gasverbrauch um ca. 900 m^3 senken (vorher ~2900 - 3100 m^3). nach dem hydraulischem abgleich ~2000 m^3. das was andere heizungsbauer als uninteressant oder für mich "nicht lohnend" abgetan hatten, ist für mich schon eine "hausnummer". nächste abrechnung (11/2013) wird für mich interessant, denn dann kann habe ich den vergleich, was mir HCS tatsächlich an einsparung gebracht hat (unter berücksichtigung des momentan sehr warmen winters).

das entscheidene bei meiner umsetzung ist jedoch, das ich die anlage nicht auf irgendeine weise manipuliere, sondern genau den weg gehe, den der hersteller vorgesehen hat: über einen raumthermostat. nur das dieser bei mir halt keiner ist, sondern ein HM-aktor. d.h. es kommt im ergebnis das gleiche heraus. ob ich nun die anlage über den vorgesehen raumthermostat regele oder über den "virtuellen thermostat" ala HM-aktor. entscheidend dabei ist aus meiner sicht die hysterese zu berücksichtigen. also ein ständiges schalten zu vermeiden.

da ich seit mehr als 4 jahren (vielleicht auch mehr) meine temperaturen (vorlauf, rücklauf, etc.) erfasse, habe ich auch den vergleich, das es bei mir eben nicht zu dem verhalten geführt hat (also höherer verbrauch).

ich zitiere meinen bezirksschornsteinfegermeister (gutes wort für z.b. galgenraten ;-)), der mal sagte: "die meisten kennen nur: mach das es warm wird. und sie machen es dann.". sicherlich ändern sich die zeiten und gesetze und das kann man bestimmt auch nicht verallgemeinern, zumal da auch einiges an weiterbildung gefordert und geboten wird.

bitte nicht falsch verstehen:
a) will ich hier keinesfalls der berufsgruppe unfähigkeit unterstellen, noch
b) den "besserwisser" geben.

das sind lediglich erfahrungswerte, die ich in mehreren jahren gesammelt habe und damit bisher sehr gut gefahren bin. letzlich muss aber jeder für sich entscheiden welchen weg er geht. DAS genau ist ja das geniale an der umsetzung mit FHEM. getreu dem eigentlichem perl-gedanken: timtowtdi - there is more than one way to do it.

ich könnte fast wetten:

dietmar schrieb, das nächste woche sein heizungsbauer kommt. wenn dietmar ihn nun mal vollkommen unvoreingenommen und ohne das hier diskutierte befragen würde, dann würden wir eine weitere meinung erhalten.

in diesem sinne...

gruss martin
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 08 Januar 2013, 19:30:22
Hallo,

auf Wunsch per PM stelle ich den aktuellen Stand des  Moduls Heating_Control zum Testen für alle bereit.
Ich würde sagen, dass es den gefühlten Versionsstand 0.9 hat.

Eintrag in fhem.cfg:
define <name> Heating_Control <device> <switchingtimes> (<condition>)|commmand>

Ich habe noch einige Erweiterungen vorgenommen:
Die Parameter werden jetzt formal mit regulären Ausdrücken geprüft.
Bei den <switchingtimes> gibt es keine Begrenzung der Anzahl bei der times. Sie müssen nicht sortiert sein(ist aber besser). Zu einem Zeipunkt ist nur ein Schaltbefehl möglich. Es kann nach den <switchingtimes>  entweder eine Bedigung(muss in Klammern gesetzt werden) oder ein <command> folgen. Der <command> entspricht vollständig dem, was nach einem "at" als <command> folgen kann. Die Sonderzeichen @ und % werden durch das <device> und die Temperatur ersetzt. Es sind deshalb die folgenden Varianten möglich:

Beispiel für Wohnzimmer:

#condition
define HCW1 Heating_Control HeizungWohnen 12:00:25_12:30:22_17:00:22.5     ($we && !isVerreist())                  

# Aufzählung
define HCW2 Heating_Control HeizungWohnen 12:00:25_12:30:22_17:00:22.5     set @ desired-temp %;; set Licht an      

# perl-call
define HCW3 Heating_Control HeizungWohnen 12:00:25_12:30:22_17:00:22.5     { schalteHeizung(@,%) }                  

# perl
define HCW4 Heating_Control HeizungWohnen 12:00:25_12:30:22_17:00:22.5     { fhem("set @ desired-temp %") if($we) }

# shell(so nicht sinnvoll)
define HCW5 Heating_Control HeizungWohnen 12:00:25_12:30:22_17:00:22.5     "/bin/echo "Teatime" > /dev/console      


Das sollte jeden Bedarf abdecken.
Ich hoffe der Rest ist selbsterklärend.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 13 Januar 2013, 22:54:01
Hallo,

ich bin gerade dabei meine gewöhnlichen Wandthermostate, die pro Zimmer die entsprechenden 230V Stellantriebe einer Fußbodenheizung bisher bedienen, auszutauschen.

Dazu entnehme ich Zimmertemperaturen mit 1-wire-DS18B20 und möchte über ein HM-SW1PBU-FM-Schalter anstelle der Wandthermostate die Stellantriebe schalten. Der Schalter hat den Vorteil im Gegensatz zu einem 230V Zwischenschaltaktor, dass man ihn bis zum nächsten Schaltvorgang manuell schalten kann und damit das aktuelle Programm übersteuern kann.

Nun möchte ich ein Wochenprogramme definierten, dass den Schalter über die entnommene Temperatur über den DS18B20 ansteuert.

Da hier keine gewöhnlichen Thermostate FHT bzw. HM zum Einsatz kommen, stelle ich mir die Frage, ob ich mit euren Modulen hier weiter komme, oder doch selbst etwas programmieren muss.

Auf die Frage, warum ich nicht FHT- oder HM-Thermostate genommen habe - es ist einfach eine Preisfrage bei 22-Stellventilen und nur 6 Thermostaten (ein Thermostat schaltet mehrere Stellantriebe pro Zimmer), vor allem, wenn man schon so viele 230V Stellantriebe im Einsatz hat.

Gruß

Damian
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 14 Januar 2013, 15:26:29
ich habe das Modul in meinen FHEM Ordner kopiert und bekomme beim "reload 98_Heating_Control.pm" folgende Fehlermeldung:
Type of arg 1 to keys must be hash (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 14 Januar 2013, 19:25:17
@ Damian:

ich denke, du mußt Dir so etwas wie ein Software-FHT selbst bauen:

So nach dem Motto: wenn die Temperatur zu niedrig ist, dann öffne die Stellantriebe eines Raumes auf 50%.
Wenn die Temperatur erreicht ist, dann schließe  die Ventiele des Raumes usw.

Ohne FHT mußt du hat selbst steuern. Ein solches Modul gibt es wohl noch nicht. Mir ist jedenfalls keines bekannt.

Diese SoftwareFHT kannst Du dann durch HCS oder Heating_Control steuern.

Dietmar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 14 Januar 2013, 19:40:12
Hallo,

nutzt Du vielleicht eine ältere Perlversion?
Bei mir funktioniert folgender Code:


  foreach my $st (sort (keys $hash->{SWITCHINGTIME}))
...

Ich habe die FM im Netz gefunden. Das Problem tritt wohl mit älteren Perlversionen auf.
Im Anhang eine Version bei der ich folgendes geändert habe. Ich hoffe die Änderung löst das Problem. Bei mir läuft jedenfalls alles:

  foreach my $st (sort (keys %{$hash->{SWITCHINGTIME}}))
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 14 Januar 2013, 19:40:52
Zitat von: orti-otto schrieb am Mo, 14 Januar 2013 19:25@ Damian:

ich denke, du mußt Dir so etwas wie ein Software-FHT selbst bauen:

So nach dem Motto: wenn die Temperatur zu niedrig ist, dann öffne die Stellantriebe eines Raumes auf 50%.
Wenn die Temperatur erreicht ist, dann schließe  die Ventiele des Raumes usw.

Ohne FHT mußt du hat selbst steuern. Ein solches Modul gibt es wohl noch nicht. Mir ist jedenfalls keines bekannt.

Diese SoftwareFHT kannst Du dann durch HCS oder Heating_Control steuern.

Dietmar

Ja, habe ich mir schon gedacht.

Werde aber erstmal meine HM-Schalter mit Notifys abhängig von den Zimmertemparaturen schalten und damit die vorhandenen 230V Stellantriebe steuern. Das bekomme ich schneller hin;)

Gruß

Damian

PS: Es soll laut elv dieses Jahr ein MAX-System für Fußbodenheizung rauskommen. FHT, HM, MAX sind bisher alle nicht fußbodenheizungtauglich.

 



Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Puschel74 am 14 Januar 2013, 19:48:36
[quote title=Damian schrieb am Mo, 14 Januar 2013 19:40]
Zitat von: orti-otto schrieb am Mo, 14 Januar 2013 19:25@ Damian:

Gruß

Damian

PS: Es soll laut elv dieses Jahr ein MAX-System für Fußbodenheizung rauskommen. FHT, HM, MAX sind bisher alle nicht fußbodenheizungtauglich.


Sorry aber ich verwende unsere FHT80B in Verbindung mit den zugehörigen Stellantrieben für die Regelung von 3 Fussbodenheizkreisen im Dachgeschoss und es funktioniert, bei uns,
einwandfrei.
Warum sollen die FHT nicht für Fussbodenheizung tauglich sein?
Nur weil Fussbodenheizungen i.d.R. mit einem Rücklauftemperaturbegrenzer betrieben werden?
Ich hab bei uns die Vorlauftemperatur so weit gedrosselt das dem Estrich und den Fliesen nichts passieren kann und das Dachgeschoss wird wunderbar warm.
Als Raumtemperatur habe ich 19 °C vorgegeben und das ist, für uns, perfekt.
Und auch das Wohnzimmer wird über den Heizkörper noch angenehm auf 22 °C temperiert.

Also nicht gleich alles so pauschal abtun ;-)

Grüße
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 14 Januar 2013, 20:14:41
Zitat von: orti-otto schrieb am Mo, 14 Januar 2013 19:25@ Damian:

Also nicht gleich alles so pauschal abtun ;-)

Grüße

Ich denke allein wegen der Größe, wird das bei den meisten konventionellen Fußbodenheizung-Verteilern (bei uns sind es 5 cm Abstand nebeneinander) nicht funktionieren. Zumindest sind die laut Doku alle für konventionelle Heizkörper ausgelegt. Dass es mal funktionieren kann, habe ich nicht ausgeschlossen.

Und zum Thema Kennlinie gibt´s hier etwas von elv:

http://www.elv.de/topic/max-thermostat-fuer-fussbodenheizung.html

Gruß

Damian
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 14 Januar 2013, 20:16:10
Ich habe jetzt auch noch dazugelernt.

Du bist nicht der Einzige der Stellantriebe direkt ansprechen will
Für FS20 gibt es mit PID wohl so etwas wie ein Software-FHT.
Vielleicht kann man PID für HM anpassen. Die Schaltcodes sind sicherlich etwas anders.
Aber eine Möglichkeit ist bestimmt vorhanden.

http://www.fhemwiki.de/wiki/FHT_8v_direkt_ansprechen (//www.fhemwiki.de/wiki/FHT_8v_direkt_ansprechen)

PID ist genau das was ich mit Software-FHT gemeint habe. Ich kannte das Modul bisher nicht.

Und das Beste, Heating_Control lässt sich meiner Meinung nach damit sogar einfach verbinden.
Ich habe die attr-Zeilen alle fort gelassen, damit Du das Wesentliche erkennst:



   define stellantrieb.01         FHT8V 1234
   define heizung.01              PID CUL_WS_1 stellantrieb.01

   define Heating_Control 15:00:25_15:30:21_17:30:22.5       set heizung.01 desired %

oder

   define Heating_Control 15:00:25_15:30:21_17:30:22.5       { fhem ("set heizung.01 desired %") }



% wird dann jeweils durch die Temperatur ersetzt.

Heating_Control ist im Grude nur ein Iterator, der zu den angegebenen Zeitpunkten den Code ausführt.
Ich habe ein veränderte Version von Heating_Control eingestellt, weil es ein kleines Problem mit dem Laden gab.

Viel Glück!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 14 Januar 2013, 20:24:46
Zitat von: orti-otto schrieb am Mo, 14 Januar 2013 20:16Ich habe jetzt auch noch dazugelernt.

Du bist nicht der Einzige der Stellantriebe direkt ansprechen will
Für FS20 gibt es mit PID wohl so etwas wie ein Software-FHT.

Hallo Dietmar,

das ist tatsächlich ein interessanter Ansatz, vor allem in Kombination mit deinem Modul - kannte ich auch noch nicht.
Ich werde es mir genauer anschauen.

Gruß

Damian
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 14 Januar 2013, 20:46:33
ich war vorhin etwas zu schnell

richtig ist:

   define stellantrieb.01         FHT8V           1234
   define heizung.01              PID             CUL_WS_1 stellantrieb.01

   define HC1                     Heating_Control heizung.01     15:00:25_15:30:21_17:30:22.5       set @ desired %

oder

   define HC1                     Heating_Control heizung.01     15:00:25_15:30:21_17:30:22.5       { fhem ("set @ desired %") }


% wird dann jeweils durch die Temperatur ersetzt.
@ wird durch das <device> ersetzt.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 14 Januar 2013, 20:48:14
ein Problem könnten die Codes sein, die in Homematic verwendet werden.
Ich meine mal gelesen zu haben, dass HM sich mit der Offenlegung der Protokolle sehr zurückhält.

Dietmar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 14 Januar 2013, 20:56:42
Zitat von: orti-otto schrieb am Mo, 14 Januar 2013 20:48ein Problem könnten die Codes sein, die in Homematic verwendet werden.
Ich meine mal gelesen zu haben, dass HM sich mit der Offenlegung der Protokolle sehr zurückhält.

Dietmar

wieso, es geht doch hier um einen einfachen an/aus Schalter, der in FHEM über CUL gepairt wird oder habe ich hier etwas nicht verstanden?

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 15 Januar 2013, 14:56:10
Ich habe mir mal erlaubt das Modul zu verändern.
Folgende Änderungen:


Bitte um Tests und Rückmeldungen

Wenn der Author nicht dagegen hat würde ich auch die Doku schreiben (gibt es da ggf schon etwas??) und nach ausführlichen Tests und Rückmeldungen bei Buggy-free ins FHEM-svn schieben. ggf kann ich auch dem author anbieten ihm bei support unter die arme zu greifen
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 15 Januar 2013, 19:13:38
 Ich habe mir mal erlaubt das Modul zu verändern.
 Folgende Änderungen:

 Liste der Schaltzeiten mit Leerzeichen getrennt
 Die Temperatur ist von der Uhrzeit mit Pipe (|) getrennt. Dieses erhöht IMHO mit dem vorherigen Punkt die Lesbarkeit immens

So ähnich hatte ich es auch vor - es funktionierte nur nicht. Die Ursache habe ich zunächst nicht gesucht. Es war mir wichtig das Modul zu Laufen zu bringen. Ich meine mich erinnern zu können, dass das Problem darin bestand, dass ich in der Funktion Heating_Control_Define in der Variablen $def immer nur die erste Schlatzeit bekommen habe. Somit war ich zunächst gezwungen dafür zu sorgen, dass der Parameter switchingtimes als ein Parameter erkannt wurde. Wie Du es gemacht hast, habe ich nicht herausgefunden. Ich hoffe es funktioniert.


 Als STATE Initialzustand wird die aktuelle Temperatur des Thermostates ausgelesen
 Es werden nun auch MAX Thermostate unterstützt
 neues Reading: nextValue, zeigt die nächste zu wechselnde Temperatur an
 an den aktuellen Entwicklungsstand von fhem.pl angepasst, insbesondere ReadingsBulkUpdate
 Codeoptimierung: einige interne Variablen in den {helper} Bereich verlagert
 kleinere Codeoptimierungen

Ich bin mit den Änderungen natürlich einverstanden, kann sie aber im Moment nicht testen. Ich werde das vermutlich morgen machen. Wie oben schon beschrieben, es ist mein erstes Modul, somit kenne ich nocht nicht alle Feinheiten, um korrekte Module zu schreiben.

 Bitte um Tests und Rückmeldungen

 Wenn der Author nicht dagegen hat würde ich auch die Doku schreiben (gibt es da ggf schon etwas??) und nach ausführlichen Tests und Rückmeldungen bei Buggy-free ins FHEM-svn schieben. ggf kann ich auch dem author anbieten ihm bei support unter die arme zu greifen

Wenn Du willst kannst du gern eine Doku schreiben. Es gibt nichts als das Modul und diesen Thread. Ich habe noch keine Sourceforge-id, somit kann ich eh noch nicht einchecken. Im Übrigen: Du warst ja richtig fleißig!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 15 Januar 2013, 19:25:18
Wenn wir schon bei Änderungen sind:

Wie wäre es mit einem Wochenprogramm, also Schaltzeiten abhängig von den Wochentagen, wie es jedes Wandthermostat unterstützt.

Ich denke, dass es ein sehr wichtiges Feature ist, um die Sache praxistauglich zu sein.

Gruß

Damian
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 15 Januar 2013, 19:39:17
kann man mit dem vorhandenem Modul ja machen:

Einträge in fhem.cfg:


define HC-So  Heating_Control heizung.01     15:00:25_15:30:21_17:30:22.5       { fhem ("set @ desired %")  if($wday == 0) }
define HC-Mo  Heating_Control heizung.01     15:00:25_15:30:21_17:30:22.5       { fhem ("set @ desired %")  if($wday == 1) }
define HC-Di  Heating_Control heizung.01     15:00:25_15:30:21_17:30:22.5       { fhem ("set @ desired %")  if($wday == 2) }
define HC-Mi  Heating_Control heizung.01     15:00:25_15:30:21_17:30:22.5       { fhem ("set @ desired %")  if($wday == 4) }
...


wobei ich nicht glaube, dass man jeden Tag andere Zeiten schalten möchte. Aber wer will kann, und es ist trotzdem übersichtlich!

wer es nicht so detailiert möchte macht es so:


define HC-Sa-So  Heating_Control heizung.01     15:00:25_15:30:21_17:30:22.5       { fhem ("set @ desired %")  if($we) }
define HC-Mo-Sa  Heating_Control heizung.01     15:00:25_15:30:21_17:30:22.5       { fhem ("set @ desired %")  if(!we) }
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 15 Januar 2013, 19:58:40
Zitat von: orti-otto schrieb am Di, 15 Januar 2013 19:39kann man mit dem vorhandenem Modul ja machen:

In der Tat:)

Gruß

Damian
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 16 Januar 2013, 08:15:24
Ich bin ab prüfen, ggf umsetzen, wie man das machen kann. Ich finde es schon userFriendly wenn man pro Thermostat nur eine(!) Definition angeben kann.
define HCW1  Heating_Control heizung.01     15:00|25 12345|15:30|21 24|17:30|22.5
Bedeutung der Schaltzeiten: <Nr der Tage>|<Uhrzeit>|<Temperatur>

Die Schaltzeit 15Uhr gilt jeden Tag da keine Tage angegeben wurden.
Die Schaltzeit 15:30 gilt nur werktags, Mo-Fr
Die Schaltzeit 17:30 gilt nur Die und Do

Mo = 1, ..... So = 7

Die Angabe Condition|Command bleibt wie gehabt
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 16 Januar 2013, 12:36:37
Zitat von: Tobias schrieb am Mi, 16 Januar 2013 08:15Ich bin ab prüfen, ggf umsetzen, wie man das machen kann. Ich finde es schon userFriendly wenn man pro Thermostat nur eine(!) Definition angeben kann.
define HCW1  Heating_Control heizung.01     15:00|25 12345|15:30|21 24|17:30|22.5
Bedeutung der Schaltzeiten: <Nr der Tage>|<Uhrzeit>|<Temperatur>

Die Schaltzeit 15Uhr gilt jeden Tag da keine Tage angegeben wurden.
Die Schaltzeit 15:30 gilt nur werktags, Mo-Fr
Die Schaltzeit 17:30 gilt nur Die und Do

Mo = 1, ..... So = 7

Die Angabe Condition|Command bleibt wie gehabt

Könntest du bitte diese Version zum Testen bereitstellen.

Gruß

Damian


Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 16 Januar 2013, 12:44:58
Hallo miteinander,

falls es jemanden interessiert, ich habe das PID-Modul für Fußbodenheizung modifiziert.

Ich kann jetzt mit dem Modul 1-Wire Temperatursensoren auslesen und beliebige ON/OFF-Aktoren schalten, die dann wiederum konventionelle 230V Stellantriebe schalten. Lässt sich nun wunderbar mit dem Heating_Control-Modul kombinieren.

Gruß

Damian
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 16 Januar 2013, 20:20:48

define HCW1  Heating_Control heizung.01     15:00|25 12345|15:30|21 24|17:30|22.5


ich finde nicht dass die Erweiterungen mit den Wochentagen wirklich übersichtlicher ist.

besser wäre:

define HCW1  Heating_Control heizung.01     15:00|25 Mo-Fr|15:30|21 Mo,Di,Sa|24|17:30|22.5


Bei komplizierten Verteilungen der Heizzeiten, ist das aus meiner Sicht nicht gut zu pflegen .
die gesamten Heizzeiten in einer Zeile unterzubringen halte ich für nicht möglich.

ich müßte folgende Zeilen zusammen erfassen.


define HeizungKueche_wt       Heating_Control HeizungKueche 05:35:25_06:30:22_07:00:18___12:00:25_12:30:22_14:00:19_15:30:20_17:45:22_18:30:18  (!$we &&      !isVerreist())
define HeizungKueche_we       Heating_Control HeizungKueche 06:45:25_07:30:22_09:00:19___12:00:22__________14:00:20___________________18:30:20  ( $we &&      !isVerreist())
#
define HeizungWohnen_wt       Heating_Control HeizungWohnen 15:00:25_15:30:21_17:30:22.5_20:00:22_22:00:18                                      (!$we &&      !isVerreist())
define HeizungWohnen_we       Heating_Control HeizungWohnen 12:00:25_12:30:22_14:00:21____________22:00:18                                      ( $we &&      !isVerreist())
 


Bei mir gibt es zurZeit nur die Unterscheidung zwischen Werktags und Wochenende.
ich habe mal Percode gesucht wie man mehre Tage in Perl abfragen kann:


if( $wday ~~ [ 1, 2, 3 ] )   ; Mo, Di, Mi


Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 16 Januar 2013, 20:47:22
wenn ich deine Version des Moduls lade bekomme ich einen Fehler:


2013.01.16 20:43:59 3: BefehlHC return value: Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_Heating_Control.pm line 42.

2013.01.16 20:43:59 3: reload 98_Heating_Control : Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_Heating_Control.pm line 42.

 Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_Heating_Control.pm line 42.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 16 Januar 2013, 22:21:03
jetzt funzt es auch bei mir - ich habe nicht die neueste Version von fhem ...
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Stefan 69 am 17 Januar 2013, 16:17:32
Hallo,

ist sicher ne blöde Frage, aber wie komme ich an das modifizierte PID-Modul von Damian?

Danke, Gruß Stefan
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 17 Januar 2013, 17:26:03
Zitat von: Stefan 69 schrieb am Do, 17 Januar 2013 16:17Hallo,

ist sicher ne blöde Frage, aber wie komme ich an das modifizierte PID-Modul von Damian?

Danke, Gruß Stefan

Es ist keine blöde Frage, denn die Anpassungen habe ich bisher nur auf meinem Rechner gemacht und nicht veröffentlicht. Die Lösung ist nicht allgemein gültig, da ich das PID-Modul für mich so umgebaut habe, dass es nicht mehr zum alten PID kompatibel ist.

Da es nur ein einfaches Thermostat nachbildet ohne PID-Regelung, hat es mit dem ursprünglichen PID-Modul nicht mehr viel zu tun.

Wenn natürlich Interesse besteht würde ich mein Modul entsprechend anders benennen und hier zum Download bereitstellen, da ich bisher, wie die anderen Autoren hier, kein offizieller Entwickler von FHEM-Modulen bin.

Gruß

Damian

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Stefan 69 am 17 Januar 2013, 20:42:40
DANKE!

Lasse mir das mal durch den Kopf gehen.

Gruß Stefan
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: teggi am 18 Januar 2013, 09:51:58
Hi Damian,

Zitatfalls es jemanden interessiert, ich habe das PID-Modul für fußbodenheizung modifiziert.

ja, das interessiert mich in der Tat brennend.

Kannst Du dein angepasstes Modul mal hier posten?

Teggi
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 18 Januar 2013, 23:53:51
Zitat von: teggi schrieb am Fr, 18 Januar 2013 09:51Hi Damian,

Zitatfalls es jemanden interessiert, ich habe das PID-Modul für fußbodenheizung modifiziert.

ja, das interessiert mich in der Tat brennend.

Kannst Du dein angepasstes Modul mal hier posten?

Teggi

siehe hier:

Link

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 21 Januar 2013, 15:17:13
Habe mal eine neue Version hier die jetzt auch Wochenprofile kann, siehe screenshot.
Beispiel:define HCW Heating_Control WZ_Heizung 07:00|15 67|10:00|19 12345|15:30|18.0 16:00|19.0 67|19:00|18 12345|20:00|10 67|21:00|10

Bitte testen und Rückmeldung ;)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 21 Januar 2013, 15:20:25
jetzt auch mit Modul:
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 22 Januar 2013, 21:33:53
Also bei mir funktioniert die Erweiterung mit den Tagessteuerung - bisher keine Probleme.

Ich überlege, ob ich eine Erweiterung vornehme, bei der die Tage in der Form   "Mo,Di,Fr" angeben werden können.
Das scheint mir nicht so schwer zu sein. Es würde die Sache noch etwas lesbarer machen.

Dietmar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 23 Januar 2013, 08:24:21
Hi Dietmar,
macht aber auch das Define noch länger...
Falls du das trotzdem so umsetzen solltest, würde ich nur im Heating_ControlDefine ansetzen und dort gleich die Tage in die entsprechenden Nummern umsetzen.
Die Updatefunktion auf Tagesnamen umzubauen halte ich für extrem schwierig.

Ich bin g erade dabei die Doku zu schreiben, würde dann alles ins SVN schubsen.
Falls alles funktioniert, kannst du hier das Diff einstellen? ( diff -Nu <heating_Control_alt.pm> <heating_Control_neu.pm> )
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 23 Januar 2013, 21:03:51
ja wird länger - ist aber auch besser lesbar und es funzt. Es war mir irgendwie eine Herausforderung auch dies zu schaffen:

Jetzt ist beides möglich:


define hc       Heating_Control HeizungKueche       123|05:35|25 ($we)
define hc       Heating_Control HeizungKueche  Sa,So,Mi|05:35|25 ($we)


Dietmar

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 24 Januar 2013, 01:59:23
Muss ich einfach die Datei in den FHEM-Ordner kopieren?
Leider sehe ich diese in der FHEM Oberfläche auch nach einem Reboot der FB nicht...
Gibt es da noch einen Kniff?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 24 Januar 2013, 04:51:09
hab mal drüber geschaut, sieht gut aus ;)
Hast du noch etwas anderes als das define geändert? Bei mir habe ich zwischenzeitlich nur die Doku geschrieben, bzw bin noch dabei. Bei soviel Einstellmöglichkeiten kommt viel TExt raus, und dann gleich 2x, DE + EN

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 24 Januar 2013, 11:34:20
Ich glaube ich habe nur in def geändert, bin aber nicht ganz sicher
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 24 Januar 2013, 11:40:34
Verständnisfrage zu
define hc       Heating_Control HeizungKueche  Sa,So,Mi|05:35|25 ($we)

würde das nicht bedeuten: Schalte Sa, So und Mi um 5:35 auf 25° aber nur wenn Wochenende ist?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 24 Januar 2013, 13:10:25
stimmt ist in sich nicht schlüssig - aber du hast es richtig verstanden.


define hc       Heating_Control HeizungKueche  Sa,So,Mi|05:35|25 ($we)


Bei dieser Definition wird nur Sa, So geschaltet.

Im Prinzip hat man durch die Angabe der einzelnen Tage vor den Schaltzeiten und der Bedingung bzw. eines Kommandos oder eines Perlausrucks extrem viele Möglichkeiten, die sich natürlich auch widersprechen können.

Dietmar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 24 Januar 2013, 13:26:13
ZitatMuss ich einfach die Datei in den FHEM-Ordner kopieren?

ja - bald wird es per update verfügbar sein.

ZitatLeider sehe ich diese in der FHEM Oberfläche auch nach einem Reboot der FB nicht...
Gibt es da noch einen Kniff?

Ich bin nicht sicher was Du sehen willst.
Das Modul sieht man nicht.

Du must in fhem.cfg eine Zeile folgender Art einfügen:



define HCW1  Heating_Control heizung.01     15:00|25 Mo,Di|15:30|21  34|15:30|21
oder
define HCW1  Heating_Control heizung.01     15:00|25       15:30|21  ($we)
oder
define HCW1  Heating_Control heizung.01     15:00|25       15:30|21  (!$we)
oder
define HCW1  Heating_Control heizung.01     15:00|25       15:30|21  { fhem("set @ desired-temp %")}
oder
define HCW1  Heating_Control heizung.01     15:00|25       15:30|21  { perlUpro(@,%,undnocheinParameter)}
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 24 Januar 2013, 19:47:44
Danke für die Antwort.

Leider bekomme ich beim Speichern der fhem.cfg folgende Fehlermeldung:
invalid Device, given Device  not found

Hinzugefügt habe ich zum Test
# Heizungsplan
define HCW1 Heating_Control eg_az_Heizung Mo,Di,Mi,Do,Fr|19:46|26


Das Modul habe ich in den FHEM-Ordner kopiert und neu gestartet. Was mache ich falsch?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 24 Januar 2013, 19:49:13
achja: eg_az_Heizung ist mein Device.

Oder muss ich HCW1 oder Heating_Control anpassen?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 24 Januar 2013, 20:35:52
Es muss daran liegen, dass das device eg_az_Heizung nicht oder noch nicht defniert ist.
ich bekomme den gleichen Fehler, sieht aber so aus:

invalid Device, given Device <eg_az_Heizung> not found

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 24 Januar 2013, 20:45:34
doch das ist definiert. Zumindest arbeite ich damit und kann die FHT-Steuerung anpassen und sehe die Grafen dazu...
gibt es weitere Ideen?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 24 Januar 2013, 20:49:15
die Änderung konnte ich auf  Heating_Control_Define($$) beschränken
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 24 Januar 2013, 21:00:14
Zitat von: orti-otto schrieb am Do, 24 Januar 2013 20:49die Änderung konnte ich auf  Heating_Control_Define($$) beschränken


ich glaub, jetzt stehe ich auf der Leitung. Muss ich hier etwas ändern oder ist das eine Änderung im Modul. Sorry für mein DAU-Verhalten...
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 24 Januar 2013, 22:41:42

die Änderung konnte ich auf Heating_Control_Define($$) beschränken


war eine Antwort für Tobias, der auch Änderungen am Modul vorgenommen hat.
Wir müssen den Code nochmals mischen, und er wollte wissen wo ich die letzen Änderungen vorgenommen habe.

Modul bitte nicht ändern.

Die Beispiele für Dich waren in
Link (http://forum.fhem.de/index.php?topic=10011.msg59844#msg59844)


hast Du genau diese Fm bekommen?
invalid Device, given Device <eg_az_Heizung> not found




Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 24 Januar 2013, 22:51:11
ne da stand nur das was ich vorher gepostet habe.
Habe nochmal gebootet und nun gehts... :-) Danke!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 24 Januar 2013, 22:56:21
genial wäre nun natürlich noch ein Raster das man nicht über die cfg sondern ähnlich der Soll-Temperatur mit einem set setzen kann.

Wie bekomme ich in der Übersicht des Devices zumindest die Werte angezeigt wie oben in einem Screeenshot gezeigt?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 24 Januar 2013, 23:18:34
Click mal in der Übersicht auf HCW1. Wenn du Übersteuern willst kennst du direkt das Gerät schalten!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 24 Januar 2013, 23:25:25
Zitat von: Gunther schrieb am Do, 24 Januar 2013 22:56Wie bekomme ich in der Übersicht des Devices zumindest die Werte angezeigt wie oben in einem Screeenshot gezeigt?

ok den Heizungsplan habe ich nun unter Heating_Control gefunden. Klasse, danke!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: gagga am 24 Januar 2013, 23:29:40
Das Modul ist spitze. Vielen Dank dafür!
Eine Frage: Schon eine Idee für die "berühmte Ausnahme"? D.h. man hat seinen Wochenplan definiert, möchte aber möglichst einfach eine Ausnahme definieren, d.h. einen anderen Tagesplan z.B. "Muß früh zum Flieger also Bad früher warm" oder "Party! Wohnzimmer warm bis morgens um 5".
Google Calendar Verknüpfung? (damit auch einfach in die Zukunft eine Ausnahme planbar) Sonst eine Idee?

Ciao,
gagga
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 25 Januar 2013, 02:11:40
viele schöne Ideen.
sind aber auch aufwendig in der Umsetzung und vielleicht auch kompliziert in der Bedienung.

Du kannst Dir mehrere Heating_Control  definieren.
Wir könnten dem Modul noch eine disable-Funktion spendieren(wie bei at oder notify) dann könnte man über die Oberfläche temporär an- und abschalten.  

Dir ist vielleicht bekannt, dass man in der Detailansicht der Geräte  die "DEF" per modify temorär ändern kann.

hier ist alles bestens beschrieben:
http://fhem.de/Heimautomatisierung-mit-fhem.pdf (//fhem.de/Heimautomatisierung-mit-fhem.pdf)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 25 Januar 2013, 02:26:36
Zitat von: Martin Fischer schrieb am Sa, 05 Januar 2013 19:54hiya dietmar,

werte habe ich leider noch nicht, da ich HCS erst im 4. quartal 2012 veröffentlicht habe. ich gehe aber mal vorsichtig mit einer schätzung von bis zu 10% (vielleicht sogar mehr) aus (ich werde wahrscheinlich auch keine genaueren werte bekommen, da ich im vorjahr noch im haus eine wohnung vermietet hatte und da das gesamte heizverhalten ja noch ganz anders war).

es entfallen ja a) die ganzen intervalle die die heizung von sich aus auf den heizkreislauf gibt und b) ist es ja nicht nur so, wie in den graphen zuvor zu sehen, dass die heizung von 07 - 22 uhr durchläuft. sobald es draussen wieder etwas wärmer wird, greift HCS auch tagsüber häufiger ein:


(siehe Anhang / see attachement)


hier sieht man z.b. das zwischen ca. 0:00 bis 06:00 uhr heizbedarf anlag (wahrscheinlich weil ich da mal wieder eine nacht programmiert habe ;-)), dann aber bis ca. 15:15 uhr alle räume so warm waren, das die heizung halt auch ausbleiben konnte und erst wieder ab ca. 15:15 bis 20:00 uhr laufen musste. und wie bereits geschrieben: man hat ja nicht nur die einsparung am gasverbrauch sondern in meinem aufbau auch am stromverbrauch, da eben dann auch die pumpe nicht läuft.

wenn du tatsächlich eine gleiche oder ähnliche therme einsetzt, dann solltest du dir mal meinen aufbau näher ansehen. da brauch man wirklich kein elektriker sein: heizung vom stromkreis trennen, kabel an "Klemme 3-4-5" und mit z.b. HM-LC-Sw1-SM verbinden. der muss natürlich mit 230v eingespeisst werden. aber dafür gibts ja sicherungen. ;-)

ABER:
man hantiert hier dennoch mit 230 volt und sollte sich im klaren sein, was man tut!

daher lieber einen "fachmann" dran lassen, wenn man sich das nicht zutraut. auch sollte man darauf achten, das die schaltzeiten nicht zu kurz gewählt werden. deshalb habe ich in HCS auch die "idleperiod" eingebaut. siehe auch: FHEM Modul HCS überarbeitet
.

gruss martin

Wie bekommst Du die schönen Bilder in den Text hinein. Manchmal sagt ein Bild mehr aus als tausend Worte. Wie kann man von der FHEM-Oberfläche hardcopys machen und dann als Bild einfügen ohne große Bildprogramme zu starten? Ich habe mir das übrigens mit den Klemmen 3-4-5 meiner Vailant angesehen. Sieht einfach aus -  werde hcs bald ausprobieren. Was meinst Du? Kann man nicht einfach eine schaltbare Steckdose von fs20 nehmen und ein Kabel an die Klemmen führen?


Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 25 Januar 2013, 07:21:43
Hi Dietmar,
bitte am MOdul erstmal nichts ändern da ich auf deiner Version weiter aufbaue. Insb. die Doku und Code aufräumen
gruss
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 25 Januar 2013, 08:58:43
Hier mal die deutsche Doku, würdeich jetzt so lassen falls bis heute mittag keine Änderungswünsche reinkommen
######################################

Heating Control


    Define
        define <name> Heating_Control <device> <profile> <command>|<condition>

        Bildet ein Wochenprofil für ein <device>, zb. Heizkörper, ab. Es können für jeden Tag unterschiedliche Schaltzeiten angegeben werden. Ist das <device> ein Heizkörperthermostat (zb. FHT8b, MAX) so wird die zu setzende Temperatur im <profile> automatisch mittels set <device> desired-temp <temp> dem Device mitgeteilt. Ist eine <condition> angegeben und ist zum Schaltpunkt der Ausdruck unwahr, so wird dieser Schaltpunkt nicht ausgeführt.
        Alternativ zur Automatik kann stattdessen eigener Perl-Code im <command> ausgeführt werden.

        Folgende Parameter sind im Define definiert:
            device
            Das an den Schaltpunkten zu schaltende Device.

            profile
            Angabe des Wochenprofils. Die einzelnen Schaltzeiten sind durch Leerzeichen getrennt Die Angabe der Schaltzeiten ist nach folgendem Muster definiert:
                [<Wochentage>|]<Uhrzeit>|<Temperatur>
            Wochentage: optionale Angabe, falls nicht gesetzt wird der Schaltpunkt jeden Tag ausgeführt. Für die Tage an denen dieser Schaltpunkt aktiv sein soll, ist jeder Tag mit seiner Tagesnummer (Mo=1, ..., So=7) oder Name des Tages (Mo, Die, ..., So) einzusetzen.
            Uhrzeit:Angabe der Uhrzeit an dem geschaltet werden soll, Format: HH24:MI
            Temperatur:Angabe der zu setzenden Temperatur als Zahl

            command
            Falls keine Condition in () angegeben wurde, so wird alles weitere als Command interpretiert. Perl-Code ist in {} zu setzen. Wichtig: Falls ein Command definiert ist, so wird zu den definierten Schaltzeiten nur(!) das Command ausgeführt. Falls ein desired-temp Befehl abgesetzt werde soll, so muss dies explizit angegeben werden.
            Folgende Parameter werden ersetzt:
                @ => das zu schaltende Device
                % => die zu setzende Temperatur

            condition
            Bei Angabe einer Condition ist diese in () zu setzen und mit validem Perl-Code zu versehen.
            Der Rückgabedatentyp der condition muss boolean sein.
            Die Parameter @ und % werden interpretiert.

        Beispiel:
            define HCB Heating_Control Bad_Heizung 12345|05:20|21 12345|05:25|12 17:20|21 17:25|12
            Mo-Fr wird die Temperatur um 05:20Uhr auf 21°C, und um 05:25Uhr auf 12°C gesetzt. Jeden Tag wird die Temperatur um 17:20Uhr auf 21°C und 17:25Uhr auf 12°C gesetzt.

            define HCW Heating_Control WZ_Heizung 07:00|16 Mo,Die,Mi|16:00|18.5 20:00|12 {fhem("set dummy on"); fhem("set @ desired-temp %");}
            Zu den definierten Schaltzeiten wird nur(!) der in {} angegebene Perl-Code ausgeführt.

            define HCK Heating_Control KZ_Heizung 07:00|16 16:00|18.5 20:00|12 ($sunshine=0))
            Die zu setzendeTemperatur wird nur gesetzt, falls die globale Variable $sunhine=0 ist.


    Set
        N/A

    Get
        N/A

    Attributes
        disable
        loglevel
        event-on-update-reading
        event-on-change-reading
        stateFormat
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 25 Januar 2013, 09:21:25
Mir sind nur zwei Kleinigkeiten aufgefallen:

oder Name des Tages (Mo, Die, ..., So) -> Abkürzungen mit 2 oder mit 3 Buchstaben oder egal?
HH24:MI -> würde ich als "HH:MM (HH im 24 Stunden Format)" schreiben
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Uli am 25 Januar 2013, 09:45:11
Ich habe mir das Modul aus dem Post vom 23.1. geladen und in mein FHEM Verzeichnis auf einer FritzBox 7390 kopiert. FHEM ist per update auf den letzten Stand gebracht.

Wenn Heating_Control geladen werden soll, kommt folgende Meldung:

Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_Heating_Control.pm line 43.

Habe ich was übersehen?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 25 Januar 2013, 14:36:11
Zitat von: Uli schrieb am Fr, 25 Januar 2013 09:45Ich habe mir das Modul aus dem Post vom 23.1. geladen und in mein FHEM Verzeichnis auf einer FritzBox 7390 kopiert. FHEM ist per update auf den letzten Stand gebracht.

Wenn Heating_Control geladen werden soll, kommt folgende Meldung:

Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_Heating_Control.pm line 43.

Habe ich was übersehen?

Kommt dann, wenn dein fhem.pl veraltet ist. Mach mal ein "shutdown restart"
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 25 Januar 2013, 14:51:34
Zitat von: Tobias schrieb am Fr, 25 Januar 2013 07:21Hi Dietmar,
bitte am MOdul erstmal nichts ändern da ich auf deiner Version weiter aufbaue. Insb. die Doku und Code aufräumen
gruss


ok - hatte ich auch erst einmal nicht vor.
disable einbauen wäre vielleicht einfach möglich!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Uli am 25 Januar 2013, 16:59:56
Asche auf mein Haupt! Ich hätte wetten können, dass ich FHEM mindestens 1x nach dem Update neu gestartet habe. Anscheinend lag ich da falsch...

Jetzt läuft es aber. Tolles Modul! Vielen Dank für die Arbeit!!!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Martin Fischer am 25 Januar 2013, 18:24:44
> Wie bekommst Du die schönen Bilder in den Text hinein. Manchmal sagt ein Bild mehr aus als tausend Worte.

unter kde (linux) reicht ein druck auf die "Druck" taste der tastatur. dann öffnet sich KSnapshot und ich kann dann auswählen ob ich einen kompletten screenshot, einen rechteckigen bereich oder den inhalt eines fenster speichern will.

ein ähnliches tool gibt es auch (kostenlos) für windows. musst du mal googlen.

> Ich habe mir das übrigens mit den Klemmen 3-4-5 meiner Vailant angesehen. Sieht einfach aus

ist es auch ;-)

> -  werde hcs bald ausprobieren. Was meinst Du? Kann man nicht einfach eine schaltbare Steckdose
> von fs20 nehmen und ein Kabel an die Klemmen führen?

sicherlich kannst du auch eine FS20 ST-3 o.ä. nehmen. mir war die bidirektionale rückmeldung wichtig. deshalb habe ich dort HomeMatic eingesetzt.

gruss martin
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 25 Januar 2013, 20:05:03
Danke für die Antworten. Aber wie bekommt man die Bilder jetzt am einfachsten in die Texte hinein?
Alle Beispiele die ich in der Hilfe gefunden habe nutzen Links wie z. Bsp.: http://fudforum.org/forum/images/fudlogo.gif (//fudforum.org/forum/images/fudlogo.gif)

Muss ich die Bilder erst hochladen?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Martin Fischer am 25 Januar 2013, 21:16:55
> Danke für die Antworten. Aber wie bekommt man die Bilder jetzt am einfachsten in die Texte hinein?

achso.. das meinst du ;-)

unter der texteingabebox kannst du dateien hochladen. wenn du eine datei hochgeladen hast, dann kannst du den das bild in die nachricht einfügen. dazu steht dann neben der hochgeladenen datei in link, den du klicken musst.


(siehe Anhang / see attachement)


gruss martin
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 25 Januar 2013, 23:14:52
So, die ersten Thermostate laufen mit Heating_Control. Feine Sache. Vielen Dank dafür.

Einen kleinen Erweiterungs-/Änderungswunsch hätte ich.

Wäre es Möglich sowas wie Mo-Fr für Mo,Di,Mi,Do,Fr einzubauen, also das mann die Tage als Bereich eingeben kann. Ich denke das würde die Übersichtlichkeit nochmal erhöhen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 26 Januar 2013, 10:32:22
Ich denke darüber nach. Es sollte möglich sein.
Aber erst will Tobias die doku fertigstellen, es in SVN einchecken - dann können wir über sinnvolle Veränderungen nachdenken.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 26 Januar 2013, 16:10:51
solltet Ihr mal bei nextValue 0°C und bei nextUpdate 01.01.1970 00:00:00 stehen haben, habt Ihr vermutlich irgendwo einen : anstatt der | als Trenner genutzt. Das hatte ich eben irgendwo zwischen Uhrzeit und Temperatur. Das wurde erst mal übernommen aber die oben genannten Fehler traten dann auf.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 26 Januar 2013, 16:21:50
Nun ist ja mit dem Modul eine ganze Menge möglich, leider wird offenbar die Temperatur auf Zahl geprüft, sonst könnte man damit eine Wochenzeitschaltuhr realisieren:

z. B.

define HCW2 Heating_Control HeizungWohnen 12:00|on 12:30|off 17:00|on     set @ %


Gruß

Damian
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 26 Januar 2013, 16:22:08
wenn Du dies etwas genauer beschreiben könntest - könnte ich danach suchen.
die Prüfung auf reuläre ausdrücke sollte nicht viele falsche Definitionen zulassen.

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 26 Januar 2013, 16:32:57
ist ganz einfach möglich - man muss die Zahlen nur in der Definition zulassen.
Wenn Tobias mit der Doku fertig ist, und eingcheckt hat, können wir die Erweiterung vornehmen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 27 Januar 2013, 12:58:11
bist Du mit der Doku schon weitergekommen?
Wann stellst Du den Stand zur Verfügung?

Ich würde gern weiterentwickelen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 27 Januar 2013, 13:35:29
nimm mal dieses... nur die Doku ändert sich erstmal noch...
Ich komme immer nur unter der Woche dazu, eher weniger am WE
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 28 Januar 2013, 19:50:43
aktuelle version eingecheckt.
Ab morgen per update verteilt.
Bitte um ausführliche Test bevor weiter entwickelt wird

insbesondere ob ein Schalten am Sonntag funktioniert
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 28 Januar 2013, 20:54:05
Ich habe noch einmal eine Frage zu hcs und meiner Vailant 196(ca. 13 Jahre alt).

Die Brücke 3-4-5 habe ich gefunden - nur ein einfache Kabel.

Meine Vailant hat aber auch ein Centralgerät VRC-VC mit Außenfühlersteuerung.
Sie ist über die Platine angeschlossen und moduliert die Vorlauftemperatur.

Ich habe bei den Artikeln zur Calorimatik(ähnlich) ... gelesen, dass wenn etwas an 789 angeschlossen ist, dass dann die Brücke bei 345 geschlossen sein muss. Macht es dann denn Sinn, wenn ich zusätzlich zum Centralgerät VRC-VC mit Außenfühlersteuerung noch per FHEM über 34 die Heizung  an- bzw. abschalte. Ich habe jetz eine zeitlang hcs mitlaufen lassen ohne wirklich etwas zu schalten- funktioniert gut!!

Was meinst Du dazu?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: UliM am 28 Januar 2013, 21:02:53
Hi,
über 34 könntest Du mittels fhem die Heizung "abwürgen".
Bei mir läuft das so, dafür habe ich keine Ventilstelltriebe.
Aus meiner Sicht sollte man entweder Ventilstelltriebe oder "Heizung abwürgen". Im doppelten Ansatz erkenne ich keinen Mehrwert.
Gruß, Uli
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 29 Januar 2013, 23:59:00
Nach dem heutigen Update bekome ich für Definitionen mit z.B Mo,Di,Mi|16:00|24 immer
invalid daylist in hc.og.bad <mo,di,mi,do,fr> 123... | Sa,So,...

Und dann habe ich beim Umschalten zur nächsten Solltemperatur (um 23:55 soll auf 16° gestellt werden) sowas:
2013.01.29 23:54:30 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:00 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:01 2: CUL_HM set og_bad_thermostat desired-temp 20 rxt:12
2013.01.29 23:55:01 2: CUL_HM set og_bad_thermostat desired-temp 16 rxt:12


Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 30 Januar 2013, 09:52:05
sorry, nutz mal bitte folgendes.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 30 Januar 2013, 10:23:10
das Sonntagsproblem ist damit aber noch nicht gelöst oder?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 30 Januar 2013, 12:58:46
Sonntagsproblem gelöst, Tests aber noch nicht abgeschlossen. Probierts mal bitte aus
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 30 Januar 2013, 13:07:31
wo ist es denn?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 30 Januar 2013, 13:08:38
Danke, werde ich ausprobieren
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 30 Januar 2013, 13:20:40
na hier... Link (http://forum.fhem.de/index.php?topic=10011.msg61148#msg61148)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 30 Januar 2013, 13:43:11
Ich hatte es mir angesehen und nicht entdeckt was du geändert hast um das Sonntagsproblem zu lösen.
Ich werde es ausprobieren - leider aber erst am Sonntag.

Bin dann mal weg.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 30 Januar 2013, 14:21:43
Zeile 207:
$wday=7 if($wday==0);
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 30 Januar 2013, 19:43:29
Das funktioniert aber nach einem update geht es wieder nicht.
Mit 1234| ... funktionierts

Zitat von: Tobias schrieb am Mi, 30 Januar 2013 09:52sorry, nutz mal bitte folgendes.

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 30 Januar 2013, 19:52:01
ich wollt auch nur wissen obs nun geht.
Fix ist eingecheckt. Morgen per Update verfügbar
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 30 Januar 2013, 20:05:18
Vielen Dank
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 31 Januar 2013, 15:01:03
Hallo,
zuallererst, dass Modul ist super. Endlich kann man einfach einen Schaltplan bestimmen.

Ich habe aber ein Problem mit der condition. Ich würde gerne die Schaltzeiten ausführen nur wenn ein Dummyschalter "Off" ist. Wenn der Schalter "On" ist soll eine Standarttemperatur eingestellt werden.

Ich habe den den Schalter und eine Dummy Variable HomeStatus definiert. Mit HomeStatus soll dann endschieden werden ob der Schaltplan der Heating_Control ausgeführt wird oder nicht.

Eintrag in fhem.cfg
### Dummy Schalter LEAVE HOME #####
define Leave_Home FS20 1034 1a
attr Leave_Home dummy 1
attr Leave_Home room HAUS
define HomeStatus dummy
set HomeStatus 0

define act_on_Leave_Home notify Leave_Home {\
 if ("%" ne "off") {\
   fhem("set Heizung_AZS desired-temp 17;;set HomeStatus 1")\
 }\
   else {\
   fhem("set HomeStatus 0")\
 }\
}

##### Heating Control Unit########
define HCU Heating_Control Heizung_AZS 07:00|18 14:40|8 (!$HomeStatus)


Problem Log-File meldet mir die Fehlermeldung:
Global symbol "$HomeStatus" requires explicit package name at (eval 17) line 1.

Welchen Fehler mache ich hier?
Wäre nett wenn ihr mit weiterhelfen könntet.

Grüße
Stefan
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 31 Januar 2013, 15:44:54
so kann das natürlich nicht funktionieren....
so sollte es richtig sein:
##### Heating Control Unit########
define HCU Heating_Control Heizung_AZS 07:00|18 14:40|8 ($ReadingsVal('HomeStatus', 'state',0)==1)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 31 Januar 2013, 18:23:25
Hallo Super! Ohne $ hat es geklappt.

define HCU Heating_Control Heizung_AZS 07:00|18 17:35|9 17:45|10 17:55|11 18:05|12 (ReadingsVal("HomeStatus", "state",0)==0)

Jetz habe ich aber das Problem, dass die Werte zu den Schaltzeiten anscheinend öfter übertragen werden.

2013.01.31 17:35:01 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:00 2: FHT set Heizung_AZS desired-temp 9.0
2013.01.31 17:45:01 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: CUL_0: unknown message EOB
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: CUL_0: unknown message EOB
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: CUL_0: unknown message EOB
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: CUL_0: unknown message EOB
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: CUL_0: unknown message EOB
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: CUL_0: unknown message EOB
2013.01.31 17:55:00 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:00 2: CUL_0: unknown message EOB
2013.01.31 17:55:01 2: FHT set Heizung_AZS desired-temp 10.0
2013.01.31 17:55:01 2: CUL_0: unknown message EOB
2013.01.31 17:55:01 2: FHT set Heizung_AZS desired-temp 11.0
2013.01.31 17:55:01 2: CUL_0: unknown message EOB
2013.01.31 18:05:00 2: FHT set Heizung_AZS desired-temp 11.0
2013.01.31 18:05:00 2: FHT set Heizung_AZS desired-temp 11.0
2013.01.31 18:05:00 2: FHT set Heizung_AZS desired-temp 11.0
2013.01.31 18:05:00 2: FHT set Heizung_AZS desired-temp 11.0
2013.01.31 18:05:00 2: FHT set Heizung_AZS desired-temp 11.0


Irgend eine Idee?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dlehmann69 am 01 Februar 2013, 21:24:57
Hallo,

ich habe zu dem Modul mal eine Anfänger Frage. Kann ich in einer Definition im Teil command eine Abfrage für $we unterbringen? Ich möchte so eine Ausnahme im Zeitplan für Ferien und Feiertage definieren. Eine holiday Datei erstelle ich entsprechend dafür. Wenn ja, wie sollte die Definition dann aussehen?


Beste Grüße

Dirk
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 Februar 2013, 03:32:50


define HCW1  Heating_Control heizung.01     15:00|25 Mo,Di|15:30|21  34|15:30|21
oder
define HCW1  Heating_Control heizung.01     15:00|25       15:30|21  ($we)
oder
define HCW1  Heating_Control heizung.01     15:00|25       15:30|21  (!$we)
oder
define HCW1  Heating_Control heizung.01     15:00|25       15:30|21  { fhem("set @ desired-temp %")}
oder
define HCW1  Heating_Control heizung.01     15:00|25       15:30|21  { perlUpro(@,%,undnocheinParameter)}




Ja, das ist problemlos möglich: siehe obige Beispiele

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: jhohn am 04 Februar 2013, 19:33:42
Ich habe immer noch das Ding mit dem mehrfachen setzen der desired-temp.
2013.02.04 14:00:00 2: CUL_HM set eg_ez_thermostat desired-temp 20 rxt:12
2013.02.04 14:00:00 2: CUL_HM set eg_ez_thermostat desired-temp 20 rxt:12
2013.02.04 14:00:00 2: CUL_HM set eg_ez_thermostat desired-temp 20 rxt:12
2013.02.04 14:00:00 2: CUL_HM set eg_ez_thermostat desired-temp 20 rxt:12
2013.02.04 14:00:00 2: CUL_HM set eg_ez_thermostat desired-temp 20 rxt:12
2013.02.04 14:00:00 2: CUL_HM set eg_ez_thermostat desired-temp 20 rxt:12
2013.02.04 14:00:00 2: CUL_HM set eg_ez_thermostat desired-temp 20 rxt:12
2013.02.04 14:00:01 2: CUL_HM set eg_ez_thermostat desired-temp 16 rxt:12

Das tritt nicht immer auf, aber schon mehrmals am Tag. Es wird dann immer mehrmals die alte desired-temp gesetzt und zum Schluß dann die Neue.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 04 Februar 2013, 19:59:34
Das gleiche Problem habe ich auch. Bei meinem Arbeitskollegen trat dieser Fehler heute ebenfalls auf. Irgendwie noch ein bisschen buggy.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: tetzlav am 05 Februar 2013, 16:19:15
Weil das leidige Sonntagsproblem bestand, hab ich auf die svn-Version aktualisiert.
Bei meiner bisher funktionierenden Definitiondefine BAD_TIMER Heating_Control VFHT_BAD_desired_temp Mo,Di,Mi,Do,Fr|06:00|22.0 Mo,Di,Mi,Do,Fr|08:00|18.0 Mo,Di,Mi,Do,Fr|17:00|20.5 Mo,Di,Mi,Do,Fr|22:00|18.0 Sa,So|09:00|20.5 Sa,So|23:00|18.0 set @ %°C
wird der state nun statt 20.5°C
auf05.02.2013 17:00:00: 20.5°C
also nextUpdate + nextValue gesetzt.

Auch eine Definition mit{fhem("set @ %°C")} ändert daran leider nichts.

Generelle Anmerkung:
Tolles Modul, Vielen Dank für die Arbeit! Ich würde es noch toller finden, wenn das Modul Heating_Control nicht nur für eine Heizung gedacht wäre, sondern ein generisches Zeitschalt-Modul mit dem man beliebig schalten & walten kann. Ich weiß, das kann man mehr oder weniger jetzt schon, aber es wird zB. immer in den state ein °C angepappt und so...
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 05 Februar 2013, 21:12:30
der "state" ist nur de Vorschlag des Entwicklers.
Das Attribut "stateformat" ist dein Freund um das anzuzeigen was du möchtest
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 14:23:38
was willst Du mit diesem Komando erreichen?

set @ %°C

damit wird dann keine Heizung mehr gesteuert. Es fehlt desired-temp oder so!

aus set @ %°C wird dann in Heating_Control set VFHT_BAD_desired_temp 21°C.
Dieses Kommando wird dann als FHEM-Kommando ausgeführt und bewirkt nichts bzw. nichts sinvolles - oder habe ich die Absicht nicht richtig verstanden?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 06 Februar 2013, 15:44:36
Haben die anderen Nutzer des Moduls nicht daselbe Problem mit dem merfachen Setzen der vorherigen Temperatur?

Kann es sein, dass wenn man zwischen den Schaltpunkten die Temperatur manuell verstellt, dieses Problem auftritt??
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: tetzlav am 06 Februar 2013, 16:05:14
Zitat von: orti-otto schrieb am Mi, 06 Februar 2013 14:23was willst Du mit diesem Komando erreichen?

set @ %°C

damit wird dann keine Heizung mehr gesteuert. Es fehlt desired-temp oder so!

aus set @ %°C wird dann in Heating_Control set VFHT_BAD_desired_temp 21°C.
Dieses Kommando wird dann als FHEM-Kommando ausgeführt und bewirkt nichts bzw. nichts sinvolles - oder habe ich die Absicht nicht richtig verstanden?

In verbindung mit einem FHT8V-Heizkörperventil (ohne einen FHT zum pairen und regeln), einem CUL_WS-Temperatursensor und dem PID-Modul ist der besagte VFHT_BAD_desired_temp zwar nur ein dummy, über dessen state bzw. notify ich das das "desired $temp" des PID und eben weitere Aktionen auslöse... ;)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: sengelking am 06 Februar 2013, 20:18:37
Doch, ich habe das gleiche Problem. Bin mir nicht mal sicher ob mein Heating Control aber überhaupt was setzt. Mein Log sieht bspw. so aus:
2013-02-06 20:00:00 Heating_Control office_prof nextUpdate: 06.02.2013 20:00:00
2013-02-06 20:00:00 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:00 Heating_Control office_prof 06.02.2013 20:00:00: 13°C
2013-02-06 20:00:00 Heating_Control office_prof nextUpdate: 06.02.2013 20:00:00
2013-02-06 20:00:00 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:00 Heating_Control office_prof 06.02.2013 20:00:00: 13°C
2013-02-06 20:00:01 Heating_Control office_prof nextUpdate: 06.02.2013 20:00:00
2013-02-06 20:00:01 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:01 Heating_Control office_prof 06.02.2013 20:00:00: 13°C
2013-02-06 20:00:01 FHT fht_office desired-temp 13
2013-02-06 20:00:01 Heating_Control office_prof nextUpdate: 07.02.2013 02:00:00
2013-02-06 20:00:01 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:01 Heating_Control office_prof 07.02.2013 02:00:00: 13°C


Und der entsprechende Config:
define office_prof Heating_Control fht_office 12345|08:00|21 20:00|13 02:00|13 06:00|13 6|09:00|21 7|10:00|21 (ReadingsVal("@", "mode", "auto" ) eq ("auto" || "manual"))

Ich habe das Gefühl, ich habe es falsch definiert.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 21:29:05
Zitat von: dr_laplace schrieb am Mi, 06 Februar 2013 15:44Haben die anderen Nutzer des Moduls nicht daselbe Problem mit dem merfachen Setzen der vorherigen Temperatur?

Kann es sein, dass wenn man zwischen den Schaltpunkten die Temperatur manuell verstellt, dieses Problem auftritt??

nein eigentlich nicht - ich nutze HC mit fs20 und habe folgenden output:

2013.02.06 18:30:01 2: FHT set HeizungKueche desired-temp 18.0
2013.02.06 17:45:01 2: FHT set HeizungKueche desired-temp 22.0
2013.02.06 17:30:01 2: FHT set HeizungWohnen desired-temp 22.5
2013.02.06 15:30:01 2: FHT set HeizungKueche desired-temp 20.0
2013.02.06 15:30:01 2: FHT set HeizungWohnen desired-temp 21.0
2013.02.06 15:00:01 2: FHT set HeizungWohnen desired-temp 25.0
2013.02.06 14:00:01 2: FHT set HeizungKueche desired-temp 19.0
2013.02.06 12:30:01 2: FHT set HeizungKueche desired-temp 22.0
2013.02.06 12:00:01 2: FHT set HeizungKueche desired-temp 25.0
2013.02.06 12:00:00 2: FHT set HeizungKueche desired-temp 18.0
2013.02.06 12:00:00 2: FHT set HeizungKueche desired-temp 18.0
2013.02.06 06:50:01 2: FHT set HeizungKueche desired-temp 18.0
2013.02.06 06:15:01 2: FHT set HeizungKueche desired-temp 22.0
2013.02.06 05:35:01 2: FHT set HeizungKueche desired-temp 25.0


nichts ist doppelt.

meine def sieht so aus:

define HeizungKueche_we       Heating_Control HeizungKueche 06:45|25 07:30|22 09:00|19   12:00|22          14:00|20                   18:30|18           ( $we &&      !isVerreist())

Zitat2013-02-06 20:00:00 Heating_Control office_prof nextUpdate: 06.02.2013 20:00:00
2013-02-06 20:00:00 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:00 Heating_Control office_prof 06.02.2013 20:00:00: 13°C

sieht aus als wenn du eine Version mit Log-Einträgen nutzt, die in der aktuellsten Version nicht enthalten sind.

prüft mal, ob in der Detaiansicht die Zeiten stimmen:

(siehe Anhang / see attachement)


ich hänge eine Erweiterung des Moduls an diesen Beitrag, die die Angabe der Tage in der Form Sa,Mo-Di|18:30|22.5 ermöglicht.
Das Modul läuft bei mir seit letzter Woche stabil. Die Doku habe ich auch ein wenig verändert.

@Tobias:
bitte auf dieser Version weiterarbeiten.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 21:51:32
Zitat von: sengelking schrieb am Mi, 06 Februar 2013 20:18Doch, ich habe das gleiche Problem. Bin mir nicht mal sicher ob mein Heating Control aber überhaupt was setzt. Mein Log sieht bspw. so aus:
2013-02-06 20:00:00 Heating_Control office_prof nextUpdate: 06.02.2013 20:00:00
2013-02-06 20:00:00 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:00 Heating_Control office_prof 06.02.2013 20:00:00: 13°C
2013-02-06 20:00:00 Heating_Control office_prof nextUpdate: 06.02.2013 20:00:00
2013-02-06 20:00:00 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:00 Heating_Control office_prof 06.02.2013 20:00:00: 13°C
2013-02-06 20:00:01 Heating_Control office_prof nextUpdate: 06.02.2013 20:00:00
2013-02-06 20:00:01 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:01 Heating_Control office_prof 06.02.2013 20:00:00: 13°C
2013-02-06 20:00:01 FHT fht_office desired-temp 13
2013-02-06 20:00:01 Heating_Control office_prof nextUpdate: 07.02.2013 02:00:00
2013-02-06 20:00:01 Heating_Control office_prof nextValue: 13°C
2013-02-06 20:00:01 Heating_Control office_prof 07.02.2013 02:00:00: 13°C


Und der entsprechende Config:
define office_prof Heating_Control fht_office 12345|08:00|21 20:00|13 02:00|13 06:00|13 6|09:00|21 7|10:00|21 (ReadingsVal("@", "mode", "auto" ) eq ("auto" || "manual"))

Ich habe das Gefühl, ich habe es falsch definiert.


(siehe Anhang / see attachement)


sieht richtig aus, ist leider nicht sortiert.
define yy at +00:00:03 { Log 3, ReadingsVal("HeizungKueche", "mode", "auto" ) }
liefert in meinem Log manual.

Die Heizung FHT muss jedenfalls auf manual stehen!

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 22:04:48
folgender Befehl wird vermutlich nicht true:

HC erzeugt:
fhem("set HeizungKueche desired-temp 13") if(ReadingsVal("HeizungKueche", "mode", "auto" ) eq ("auto" || "manual"))
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 22:10:07
so

define office_prof Heating_Control HeizungKueche    12345|08:00|21 20:00|13 02:00|13 06:00|13 6|09:00|21 7|10:00|21 (ReadingsVal("@", "mode", "auto" ) eq "manual")

funktioniert es:

Log:

2013.02.06 22:07:30 3: nextSwitch=07.02.2013 02:04:01
2013.02.06 22:07:30 3: Ende------------>office_prof
2013.02.06 22:07:30 2: FHT set HeizungKueche desired-temp 13.0
2013.02.06 22:07:30 3: command------------>{ fhem("set HeizungKueche desired-temp 13") if(ReadingsVal("HeizungKueche", "mode", "auto" ) eq "manual")}
2013.02.06 22:07:30 3: NowSwitch: 06.02.2013 22:07:29 ; AktDesiredTemp: 18.0 ; newDesTemperature: 13
2013.02.06 22:07:30 3: d------------>2
2013.02.06 22:07:30 3: nextSwitch------------>1360199041--->07.02.2013 02:04:01
2013.02.06 22:07:30 3: Jetzt:06.02.2013 22:07:29 -> Next: 07.02.2013 02:04:01 -> Temp: 13
2013.02.06 22:07:30 3: wday-days[d]----------->3 4
2013.02.06 22:07:30 3: secondsToSwitch------------>-72209
2013.02.06 22:07:30 3: st------------>02:04
2013.02.06 22:07:30 3: days[1]------------>4
2013.02.06 22:07:30 3: d------------>1
2013.02.06 22:07:30 3: nowSwitch------------>1360184849--->06.02.2013 22:07:29
2013.02.06 22:07:30 3: Jetzt:06.02.2013 22:07:29 -> Next: 06.02.2013 20:03:01 -> Temp: 13
2013.02.06 22:07:30 3: wday-days[d]----------->3 3
2013.02.06 22:07:30 3: secondsToSwitch------------>-7469
2013.02.06 22:07:30 3: st------------>20:03
2013.02.06 22:07:30 3: nowSwitch------------>1360184849--->06.02.2013 22:07:29
2013.02.06 22:07:30 3: Jetzt:06.02.2013 22:07:29 -> Next: 06.02.2013 08:03:01 -> Temp: 21
2013.02.06 22:07:30 3: wday-days[d]----------->3 3
2013.02.06 22:07:30 3: secondsToSwitch------------>-50669
2013.02.06 22:07:30 3: st------------>08:03
2013.02.06 22:07:30 3: nowSwitch------------>1360184849--->06.02.2013 22:07:29
2013.02.06 22:07:30 3: Jetzt:06.02.2013 22:07:29 -> Next: 06.02.2013 06:03:01 -> Temp: 13
2013.02.06 22:07:30 3: wday-days[d]----------->3 3
2013.02.06 22:07:30 3: secondsToSwitch------------>-57869
2013.02.06 22:07:30 3: st------------>06:03
2013.02.06 22:07:30 3: nowSwitch------------>1360184849--->06.02.2013 22:07:29
2013.02.06 22:07:30 3: Jetzt:06.02.2013 22:07:29 -> Next: 06.02.2013 02:03:01 -> Temp: 13
2013.02.06 22:07:30 3: wday-days[d]----------->3 3
2013.02.06 22:07:30 3: secondsToSwitch------------>-72269
2013.02.06 22:07:30 3: st------------>02:03
2013.02.06 22:07:30 3: days[0]------------>3
2013.02.06 22:07:30 3: d------------>0
2013.02.06 22:07:30 3: wday------------>3
2013.02.06 22:07:29 3: Begin------------>office_prof


Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 06 Februar 2013, 22:14:45
Meine Detailansicht sieht ein bischen anders aus. Ich habe jetzt mal definiert wie "orti-otto ".

define HeizungKueche_we       Heating_Control Heizung_AZS 06:45|25 07:30|22 09:00|19 12:00|22 14:00|20 18:30|18

Im Feld state steht bei mir aber die gleiche Temperatur wie im Feld "next value". Außerdem steht bei mir noch das Datum drin. Müsste da nicht die aktuelle Temperatur stehen?


(http://s12.postimage.org/wqmucxaa5/img_heizung.png)

Was meinst du mit der Version der Log-Einträge? Habe ich vielleicht eine andere Version?

Danke für die Hilfe
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 22:32:57
 readingsBulkUpdate ($hash,  "nextUpdate", strftime("%d.%m.%Y %H:%M:%S",localtime($nextSwitch)));
  readingsBulkUpdate ($hash,  "nextValue",  $nextDesTemperature . "°C");
  readingsBulkUpdate ($hash,  "state",      $newDesTemperature."°C");


state ist der aktuell eingestellte Temperaturwert.
nextValue ist die Temperatur für die nächste Schaltung zum Zeitpunkt nextUpdate
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 06 Februar 2013, 22:44:13
Warum steht dann bei mir 25°. Es üsste doch 18° dort stehen.

Hab ich irgendwie eine andere Version des Moduls. Ich habe fhem eingentlich auf aktuellen Stand.
Heute erst "update" ausgeführt.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 22:53:17

(siehe Anhang / see attachement)


Diese Anzeige kann lt. Programmcode wie er mir vorliegt nicht auftreten.

mein Standard-HC sagt im Moment ist 18 Grad eingestellt. Morgen um 12 Uhr wird 25 Grad geschaltet:


(siehe Anhang / see attachement)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 06 Februar 2013, 22:59:39
Ich habe das Modul nur über die update Funktion von fhem erhalten. Liegt hier mein Fehler? Das sollte doch eigentlich der richtige Weg sein oder?

Werde es morgen mal manuel reinkopieren und testen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 23:27:18
vom Prinzip her ist das richtig.

Das Modul gibt es aber erst seit Anfang des Jahres.
Ich habe in den letzten zwei Monaten gelernt Module zu schreiben, habe noch keine Möglichkeit die Sourcen per SVN hochzuladen.

Tobias hat das Hochladen übernomen.

Die Idee für HC stammt von mir. Tobias hat geholfen die Angabe von Tagen vor den Schlatzeiten und noch einiges mehr einzubauen, so dass es im Moment eine Co-Produkton ist.

ich habe noch eine neue Version angehängt. Bei dieser Version werden die Schaltzeiten in den Profilen sortiert angezeit, egal wie sie definiert werden.

(siehe Anhang / see attachement)


man kann die Tage mit dieser Version übrigens auch so angeben. Die Lesbarkeit steigt dadurch nochmals:

define hc       Heating_Control HeizungWohnen  Mo-Di,Mi-Sa|05:35|17
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 06 Februar 2013, 23:39:37

267  InternalTimer($nextSwitch, "Heating_Control_Update", $hash, 0);
268  readingsBeginUpdate($hash);
269  readingsBulkUpdate($hash, "nextUpdate", strftime("%d.%m.%Y %H:%M:%S",localtime($nextSwitch)));
270  readingsBulkUpdate($hash, "nextValue", $nextDesTemperature . "°C");
271  readingsBulkUpdate($hash, "state", strftime("%d.%m.%Y %H:%M:%S",localtime($nextSwitch)). ": " . $nextDesTemperature."°C");
272  readingsEndUpdate($hash, defined($hash->{LOCAL} ? 0 : 1));


der über update gelieferte code sieht anders aus und enthält einen Fehler:
readingsBulkUpdate($hash, "state", strftime("%d.%m.%Y %H:%M:%S",localtime($nextSwitch)). ": " . $nextDesTemperature."°C");

Nimm mal das von mir zuletzt eingestellte Modul. Dann sieht die Welt wieder besser aus.
Wenn es in Ordnung ist werden wir(Tobias) es wieder hochladen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 07 Februar 2013, 08:03:32
ZitatreadingsBulkUpdate($hash, "state", strftime("%d.%m.%Y %H:%M:%S",localtime($nextSwitch)). ": " . $nextDesTemperature."°C");

war übrigens gewollt. Die aktuelle Temperatur sieht man auch im State des Thermostates.  vielmehr interessiert die nächste schaltzeit. Wem das nicht gefällt kanns ja über stateformat ändern....

ich bin auch gerade am Suchen warum die Schaltzeit mehrmals übertragen wird....

Wenn du mit deiner fertige Version ein Diff gegenüber die aktuelle svn-version machst, kann ich wieder syncronisieren und hochladen
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 07 Februar 2013, 08:22:27
readingsBulkUpdate ($hash,  "state",      $newDesTemperature."°C");

Ich würde diesen State für sinnvoller halten. Den Temperatur state des Thermostats kann ja auch per Hand verändert werden.
An der Heating_Control würde mann aber den Wunschwert sehen und könnte unter Umständen auf diesen zurücksetzen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: tetzlav am 07 Februar 2013, 12:10:47
Einigen wir uns doch aufreadingsBulkUpdate ($hash,  "currentValue",      $newDesTemperature."°C"); ;)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: sengelking am 10 Februar 2013, 12:25:56
Also bei mir gehts jetzt so:
define office_prof Heating_Control HeizungKueche    12345|08:00|21 20:00|13 02:00|13 06:00|13 6|09:00|21 7|10:00|21 (ReadingsVal("@", "mode", "auto" ) ne "holiday")
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 10 Februar 2013, 12:51:18
ja das sieht gut aus - der ursprüngliche Perlausdruch wurde nie wahr.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 11 Februar 2013, 09:56:56
Also ich habe jetzt über das Wochenende das eingestellte Modul aus dem Forum getestet. Es ist leider das gleiche Verhalten. Ich habe um 12:06 die Temeratur manuel auf 22 Grad gestellt.
2013.02.10 12:06:58 2: FHT set Heizung_AZS desired-temp 22.0


Zum Schazeitpunkt um 21 Uhr kam es dann wieder zu den Mehrfachausgabe.


2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:00 2: FHT set Heizung_AZS desired-temp 18.0
2013.02.09 21:00:01 2: FHT set Heizung_AZS desired-temp 17.0
2013.02.09 22:08:33 2: FHT set Heizung_EZ desired-temp 17.0


Irgend eine neue Idee?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Tobias am 11 Februar 2013, 11:20:02
ich bin dran, habe auch schon etwas gefunden. Muss aber noch weiter testen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 11 Februar 2013, 11:23:20
Ja - ich melde mich heute Abend dazu!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: molli123 am 11 Februar 2013, 16:25:22
Hallo,
bei mir ist die gleiche Fehlfunktion vorhanden, dabei ist es egal ob ich am Thermostat verstelle oder per Fhem. Es übernimmt die manuelle Einstellung nicht (etliche mal der vorherige Wert, dann der neue) und zum Schaltzeitpunkt dann das selbe Spiel. Hoffe Ihr findet das Problem.

Grüsse Molli
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dlehmann69 am 11 Februar 2013, 21:04:37
Hallo,


ich habe das Problem der Mehrfacheinträge im Log auch. Ich habe heute früh meinen ersten Heating_Control definiert. Er hat auch gleich allein die Temperatur entsprechend Zeitplan eingestellt. Und heute Abend zum nächsten Schaltpunkt waren dann drei Einträge im Log. Das einzige was ich habe, sind zwei HC für diesen FHT. Und zwar einen mit der Bedingung Wochenende und einen mit der Bedingung nicht Wochenende. Ich habe aber keine Temperatur per Hand eingestellt.


Beste Grüße
Dirk
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 11 Februar 2013, 21:36:08
ich denke wir haben das Problem lokalisiert.

wer selbst Hand anlegen will und nicht warten kann bis Tobias das Modul online gestellt hat kann folgendes ändern:

(siehe Anhang / see attachement)


in Zeile 227 folgende Änderung eintragen. Es reicht die Ergänzung des '=':

if ($now >= $next) {

Dann sollte da Problem nur noch selten auftreten!

Erklärung:
ZitatIn der produktiven Version wird bei einem Treffer auf der exakten Schaltzeit erst bei der "Schaltzeit + eine Sekunde" geschaltet.
 kann man hier: Link (http://forum.fhem.de/index.php?topic=10011.msg63372#msg63372) schön sehen.

 Wenn dann vorher wie im Thread beschrieben die Temperatur verstellt wurde, erfolgt bei mir ca. 10 mal ein Verstellen der Temperatur, weil desired-temp noch nicht mit der neuen desired-temp übereinstimmt. Auf schnelleren Rechnern wird das entsprechend häufiger passieren. Mit der Änderung wird exakt zur Schaltzeit die neue Temperatur eingestellt.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: dr_laplace am 13 Februar 2013, 09:53:41
Hallo Dietmar,

also bei funktioniert es.
Herzlichen Dank.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: molli123 am 13 Februar 2013, 11:09:12
Bei mir auch, Dankeschön!!!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 13 Februar 2013, 12:38:17
Hallo,

ich habe mal eine andere Frage uzu diesem Modul. Ich möchte für verschiedene Situationen verschieden Zeiten und Temperaturen nutzen. Dafür bietet sich ja die Condition in diesem Modul an. Dazu habe ich mir DummySchalter gebaut. Nun möchte ich das HeatingControlModul in Abhängingkeit dieser DummySchalter ausführen. Das sieht dann in etwa so aus:

define HCU Heating_Control Heizung_AZS 07:00|18 17:35|9 17:45|10 17:55|11 18:05|12 ($WirSindDa eq "on")

Ohne die Condition funktioniert es. Mit ihr nicht. Was mache ich da falsch?

Viele Grüße

Steffen
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 13 Februar 2013, 13:33:13
Dummys sind FHEM-Variablen und Perl nur über Funktionen zugänglich.
Du musst die Funktion ReadingsVal nutzen.

In diesem Thread findest du ein Beispiel:
Link (http://forum.fhem.de/index.php?topic=10011.msg63150#msg63150)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 13 Februar 2013, 21:06:27
genau genommen mußt Du es so machen:

define HCW Heating_Control WZ_Heizung     08:00|21    (ReadingsVal("WeAreThere", "state", "no") eq "yes")
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 13 Februar 2013, 21:35:19
Also es scheint mit:

define hc_Wohnzimmer_Normal Heating_Control hz_Wohnzimmer 3|21:35|25 (ReadingsVal("WirSindDa", "state", "on" ) eq "on")

zu gehen.

Danke für die Hilfe!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 13 Februar 2013, 21:41:13
Wie verhält sich das Modul eigentlich mit einem Fensterkontakt. Muß ich das über die Condition abfangen oder hat das Modul da was im Bauch.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 13 Februar 2013, 21:54:52
Da gibt es nichts extra - muss auch nicht sein.

Wenn beim Gerät, das gesteuert werden soll (FHT) einen Fensterkontakt angemeldet ist, wird sein Signal automatisch berücksichtigt.

Bei FHTs von fs20 ist das jedenfalls so.
Ich kann mir nicht vorstellen, dass es bei MAX oder HM anders ist.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 13 Februar 2013, 22:19:46
Dann wird also beim Fenster-auf-Signal die dafür vorgesehene Temperatur vom FHT selber eingestellt und wenn das Fenster wieder zu ist auf die Wunschtemperatur des Heizungsmodul?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 13 Februar 2013, 22:25:05
Da muss ich nochmal was zum Grundverständnis des Moduls fragen. Es setzt die Wunschtemperatur einmal wenn der vorgegebene Zeitpunkt erreicht ist und die Bedingung erfüllt ist. Dazwischen macht es nichts oder?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 13 Februar 2013, 22:28:54
Ich glaube schon. Ich habe es aber noch nicht ausprobiert. Ich habe hier zwar so ein Ding herumliegen, habe aber nocht nicht
die Notwendigkeit gesehen es anzuschließen - war halt mehr damit beschäftigt HC zu bauen.

Der FHT muss jedenfalls auf manuell stehen, damit die Schlatbefehle ausgeführt werden.
Am besten mal ins Handbuch des FHT schauen - MAX und HM könnten anders funktionieren.

Heating_Control hat keine Fuktion für Fensterkontakte.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 13 Februar 2013, 22:32:50
ja  - genau.

Es wird immer nur zu den definierten Schaltzeitpunkten aktiv und verändert ggf. die Temperatur.
Danach legt es sich schlafen bis zum nächsten Schaltzeitpunkt.

Wie eine Menge von at-Kommandos.
Bei mir sind dadurch ca. 25 "at" ersetzt worden.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dennis D. am 14 Februar 2013, 11:49:46
Also das Modul ist ja echt mal klasse! Kann man es eigentlich vom "Heating-Control-Modul" in ein allgemeines "Schaltzeit-Modul" erweitern?
Ich finde es dahingehend halt sehr klasse, weil man damit ja die ganzen at-Strings deutlich reduzieren kann.
Super wäre, wenn man nicht nur Temperaturen setzen kann, sondern auch schaltzustände "on"/"off" sowie vielleicht noch "lock"/"unlock" (für die Keymatic).

Ist das möglich?

Gruß,
Dennis
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 14 Februar 2013, 13:19:36
...und mit mehreren Bedingungen sieht es dann so aus?

define hc_Wohnzimmer_Normal Heating_Control hz_Wohnzimmer 3|21:35|25 ((ReadingsVal("WirSindDa", "state", "on" ) eq "on") && !(ReadingsVal("WirSindWeg", "state", "on" ) eq "on"))

Würde das ausgeführt werden wenn WirSindDa und nicht WirSindWeg gesetzt ist?

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 14 Februar 2013, 17:52:27
Die Idee ein allgemeines Schaltmodul mit Wochenprogramm zu erstellen ist mir bei der Erstellung von hc auch gekommen - habe sie aber dann nicht gleich verwirklicht. Aufbauend auf HC ist der Aufwand gering.

Wir müssen dann aber auch darüber nachdenken ob HC dann weiter bestehen soll. Das neue Modul kann dann nämlich auch die Funktion von HC übernehmen. Das würde dann die Flut von Modulen eindämmen.

Im Moment haben wir noch mit einigen kleinen Bugs zu kämpfen, danach werden wir sehen was wir machen.

Ich werde heute Abend eine neue Version einchecken. Bei der ist dann die Angabe der Wochentage in der Form Sa-Mo,Do möglich - sehr übersichtlich.

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 14 Februar 2013, 20:04:32
sieht auf dem ersten Blick ok aus - aber bei den vielen Klammern und Sonderzeichen kann man nie wissen.

Ich prüfe solche Ausdrücke immer mit
define yy at +00:00:03 { Log 3, ReadingsVal("WirSindDa", "state", "on" ) eq "on" && !ReadingsVal("WirSindWeg", "state", "on" ) eq "on"}

und gebe sie in der fhem-Oberfläche vor save ein(nicht auf save clicken sondern nur return-Taste drücken), dann im log nachsehen was passiert. Am besten die Einzelzeile einzeln prüfen dann zusammenbauen.

mir sind zu lange Ausdrücke in der fhem.cfg ein Graus. Deshalb lagere ich soche Sache in die 99_utils aus.

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 14 Februar 2013, 20:59:01
ich habe das Modul in mit dem bugfixing hochgeladen - es kann jetzt über die updatefunktion eingespielt werden.
Bitte die Doku beachten - es sind neue Sachen möglich.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 16 Februar 2013, 14:35:57
Sorry für die Frage, aber wo finde ich die Doku?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 16 Februar 2013, 14:43:00
Ich benutze das Modul seit einer Woche. Funktioniert soweit ganz gut. Leider scheinen die normalen Schaltzeiten des FHT dazwischen zu funken. Ich habe nicht immer die Temperatur die ich erwarte. Im Schaltplan sieht alles ganz gut aus.  Wie macht ihr das mit den normalen Schaltzeiten im FHT?

Ich lade jetzt einmal in der Woche die verschiedenen Temperaturen (Tag, Nacht, Fenster auf) runter.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 16 Februar 2013, 15:17:13
ich habe fs20 FHT im Einsatz. Diese muss ich auf manuell umstellen, so dass nur noch HC schaltet.
Manuelle Steuerungen werden zur jeweils nächsten Schaltzeit durch HC übersteuert.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 16 Februar 2013, 15:21:28
Ich lade jetzt einmal in der Woche die verschiedenen Temperaturen (Tag, Nacht, Fenster auf) runter.

Was meinst du damit? Wenn du HC nutzt werden sie nicht gebraucht.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 17 Februar 2013, 14:55:36
Ich habe hier nochmal eine Frage zum Thema heating_control in Zusammenhang mit dem Zuhausestatus gemäß Wiki:

Wie bekomme ich es hin, das beim Verstellen des Status sich etwas ändert gemäß Plan in hc und ich diese Werte nicht im Homestatus eingeben muss.
Kann ich hc beim Setzen eines Status auffordern zur gegebenen Zeit die Einstellungen nochmal aktiv zu setzen und gemäß Homestatus den richtigen Eintrag zu wählen?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 17 Februar 2013, 17:34:56
Wenn du wie im Beispiel beschrieben HC so
define HCW Heating_Control WZ_Heizung Sa-So,Mi|08:00|21 (ReadingsVal("WeAreThere", "state", "no") eq "yes")
definierst, erfolgt keine weitere Schaltung seitens HC, wenn WeAreThere nicht auf yes steht.

Ein notify erledigt den Rest: Ich habe mit
define Befehl5a               notify WeAreThere:no        {fhem ("set HeizungKueche desired-temp 18;; set HeizungWohnen desired-temp 18") }
erreicht, dass beim Setzen des Dummys die Temperaturen korrigiert werden. So bleiben sie bis ich WeAreThere wieder auf yes setze.

Zur Zeit gibt es keine Möglichkeit automatisch die Pläne zu ändern. Ich habe mir so geholfen, dass ich zwei HC angelegt habe. Über die Bedingungvariable kannst du steuern wann welcher HC schalten soll.




Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 17 Februar 2013, 17:39:38
Ich weiss. Gebraucht wird nur die Fenster-Auf-Temperatur. Die andren beiden lade ich mit runter um zu sehen ob wirklich immer das Modul Heating_Control schaltet oder das FHT selber. Deswegen nehme ich für Tag- und Nachttemperatur eine die sonst nicht im Heating_Control vorkommt.
Außerdem habe ich jetzt bei allen FHT's die Schaltzeiten --:-- eingestellt. Jetzt sollten sie nie mehr selber schalten. Als Modus "Auto". Das ist mir sympatischer als "Manu". ...und es scheint zu funktionieren.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 17 Februar 2013, 17:51:03
soweit habe ich das noch nicht ausprobiert - schön dass es funzt.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: sengelking am 17 Februar 2013, 17:54:27
Also ich habe bei mir dir FHT auf auto stehen und die haben auch ihr schaltprogramm. Funktioniert einwandfrei bei mir mit HC zusammen. Ist auch gut so. Benutze HC mehr oder weniger als failsafe. So wird in der Nacht auch mehrmals die Absenktemperatur gestellt, falls jemand spät abends im Wohnzimmer nochmal einheizt.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: czech am 19 Februar 2013, 02:12:34
Leider bekomme ich nach aktuellem 'fhem update force' immernoch folgende Fehlermeldung:

fhem> reload 98_Heating_Control
syntax error at /usr/local/FHEM/share/fhem/FHEM/98_Heating_Control.pm line 101, near "$anzahl ~"
syntax error at /usr/local/FHEM/share/fhem/FHEM/98_Heating_Control.pm line 103, near "} else"


Woran kann das liegen?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 19 Februar 2013, 08:59:09
ist mir ehrlich gesagt ein Rätsel:

Hier hat sich lt. SVN Repositoriy nichts, außer die Umlaute im Kommentar geändert:
Syntaktisch ist das aber alles korrekt. Wenn ich bei mir den reload ausführe funktioniert er.

Bist Du in der Lage die Programmstelle bei deiner Installation in Augenschein zu nehmen?
Dann poste die Stelle bitte einmal. Vielleicht ist bei Dir nicht alles angekommen.

Es müßte jedenfalls etwa so aussehen:

97   for(my $i=0; $i<@a; $i++) {
98     #prüfen auf Angabe eines Schaltpunktes
99     my @t = split(/\|/, $a[$i]);
100     my $anzahl = @t;
101     if ( $anzahl ~~ [2,3]) {
102       push(@switchingtimes, $a[$i]);
103     } else {
104       #der Rest ist das auzuführende Kommando/condition
105       $conditionOrCommand = trim(join(" ", @a[$i..@a-1]));
106       last;
107     }
108   }


Teilweise habe ich mit dem Upload von Umlauten ins SVN Probleme.
Da sie aber in Kommentaren sind dürfte das keine Auswirkungen haben.
Es ist aber möglich, dass verschiedene Plattformen anders reagieren.

Hat sonst noch jemand Probleme? Vielleicht hilft es das Problem zu umschiffen zunächst das Modul aus dem Forum zu laden:
http://fhem.svn.sourceforge.net/viewvc/fhem/trunk/fhem/FHEM/98_Heating_Control.pm?revision=2753 (//fhem.svn.sourceforge.net/viewvc/fhem/trunk/fhem/FHEM/98_Heating_Control.pm?revision=2753)


Welche Hardware/Betriebsystem nutzt Du?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: czech am 19 Februar 2013, 14:16:19
Danke für die schnelle Antwort.

Meine lokale 98_Heating_Control.pm ist absolut identisch mit dem Link. Ich habe auch schon eine vorher gepostete Variante probiert: dabei bekomme ich die gleichen Fehler (gleiche Codestelle, andere Zeilenzahl entsprechend).

Auf "reload" bin ich gekommen, nachdem ich ein "cannot load module Heating Control" bekommen habe. Das war mein erster Versuch mit dem Modul.

Das FHEM läuft auf einer Synology 1512+ (x86 Atom CPU). Die 98_He...pm liegt unter /usr/local/FHEM/share/fhem/FHEM. Vielleicht ist das eine seltene Basis, verwendet evtl. andere Perl Bibliothek?

Übrigens eine tolle Idee mit dem Modul, freue mich schon auf den Testeinsatz.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 19 Februar 2013, 15:09:03
Prüf mal welche Perlversion du einsetzt. Ich habe hier:
http://de.wikipedia.org/wiki/Perl_ (//de.wikipedia.org/wiki/Perl_)(Programmiersprache)

folgendes gefunden:

ZitatPerl 5.10 [Bearbeiten]Neben verringertem Speicherverbrauch und einer erneuerten und nun auch austauschbaren Regex-Maschine brachte diese Version am 18. Dezember 2007 unter der Führung von Rafaël Garcia-Suarez vor allem Neuerungen, die dem Entwurf von Perl 6 entstammen und deren Gebrauch entweder einzeln oder kollektiv mit use feature ':5.10'; angemeldet werden muss oder kürzer use v5.10;. Dies gilt ab dieser Version für alle Funktionen, welche die Kompatibilität brechen könnten. Hierzu zählen say, given und when (analog zur switch-Anweisung in C), der smartmatch-Operator (~~), der defined or-Operator (//) und state-Variablen, welche die Erzeugung von Closures vereinfachen. Weitere nennenswerte Neuheiten umfassen den verlagerbaren Installationspfad, stapelbare Dateitestoperatoren, definierbare lexikalische Pragmas, optionale C3-Serialisierung der Objektvererbung und field hashes (für ,,inside out"-Objekte). Die Regex-Engine arbeitet nun iterativ statt rekursiv, was nun rekursive Ausdrücke ermöglicht. Komplexe Suchanfragen können nun auch verständlicher und weniger fehleranfällig durch named captures formuliert werden. Die Spezialvariablen $# und $* sowie die Interpreterschnittstellen perlcc und JPL wurden entfernt.

Im folgenden Jahr wurden die Quelle von Perforce auf Git umgestellt, was die Entwicklung und Herausgabe neuer Versionen wesentlich vereinfachte.

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: czech am 19 Februar 2013, 22:50:39
Eine gute Idee, leider habe ich wohl schon 5.10:

synology> perl -v

This is perl, v5.10.0 built for i686-linux-gnu


Ich werde aber auch das Gefühl nicht los, dass er mit der if-clause ein Problem hat. Bin nicht so perl-erfahren, kann man die Bedingung evtl. anders formulieren?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: czech am 19 Februar 2013, 23:16:28
Nachtrag: es wird bei mir doch kein perl 5.10 verwendet!

Wenn ich das Skript um "use 5.010;" ergänze, dann bekomme ich folgenden Fehler:

fhem> reload 98_Heating_Control
Perl v5.10.0 required--this is only v5.8.6, stopped at /usr/local/FHEM/share/fhem/FHEM/98_Heating_Control.pm line 30.
BEGIN failed--compilation aborted at /usr/local/FHEM/share/fhem/FHEM/98_Heating_Control.pm line 30.


Also entweder bekomme ich das richtige perl 5.10, das Voraussetzung für das Skript ist, zum Laufen. Oder jemand hat einen Vorschlag, wie man die Bedingung ohne 5.10-Spezialität formuliert ;-)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 20 Februar 2013, 07:13:29
Man kann die Stelle leicht anders formulieren. Mache ich heute abend.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 20 Februar 2013, 08:24:50
habe es soeben geändert und schon eingeckeckt  - nach einem update sollte es auch auf der 5.8er Version von Perl laufen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: czech am 20 Februar 2013, 13:58:34
Vielen Dank, Problem gelöst!

Zur Info: Synology hat ein Perl 5.8.6 mitgeliefert. Mittels "ipkg install perl" bekommt man zwar perl 5.10, aber dieses liegt unter /opt/bin/perl. Es wird auch normalerweise verwendet. Nur dass fhem direkt auf /usr/bin/perl verweist und von daher immer perl 5.8.6 verwendet werden wird. Was natürlich für alle Modulle ebenso gilt.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 20 Februar 2013, 19:37:16
In meinem fhem-2013-02.log habe ich gefunden das die Einträge mehrfach vorkommen. Das bedeutet das die auch mehrfach gesendet werden. Aber warum? Mache ich was falsch.

Das Log-File sieht so aus:

8x------------------------------------------
2013.02.20 09:45:00 2: FS20 set TerrariumHauptspot on
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:00 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:00:01 2: FHT set hz_Wohnzimmer desired-temp 17.0
2013.02.20 16:30:01 2: FHT set hz_Olymp desired-temp 21.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:00:00 2: FHT set hz_Ines desired-temp 17.0
2013.02.20 17:47:39 2: FS20 set ExtraSchalter on
8x------------------------------------------
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 20 Februar 2013, 21:29:00
Hast Du Dir die neueste Version per update gezogen?
Es war ein Fehler enthalten, der aber eigentlich korrigiert sein sollte.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 20 Februar 2013, 21:33:34
Im Verzeichnis \fhem\usr\share\fhem\FHEM\ ist die Datei 98_Heating_Control.pm vom 7.2.13. Klingt ziemlich aktuell.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 20 Februar 2013, 21:43:08
nein, das ist nicht sehr aktuell - gerade in der letzen Woche habe ich es mehrmals freigegeben:
http://fhem.svn.sourceforge.net/viewvc/fhem/trunk/fhem/FHEM/98_Heating_Control.pm?view=log (//fhem.svn.sourceforge.net/viewvc/fhem/trunk/fhem/FHEM/98_Heating_Control.pm?view=log)

Selbst die Dokumentation habe ich mehrfach verändert.
Entweder einen Komplettupdate von fhem durchführen oder das einzelne Modul ersetzen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Setis am 20 Februar 2013, 22:23:43
Mein update geht nicht mehr. Egal was ich eingebe. "update stable full force" zum Beispiel geht nicht. Das Modul ändert sich nicht. Was kann ich tun?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 21 Februar 2013, 00:08:09
ich meine man muss nur "update" eingeben - ich hatte auch mal ein solches Problem mit dem update.
wenn das nicht klappt folgenden Link aufrufen:
http://fhem.svn.sourceforge.net/viewvc/fhem/trunk/fhem/FHEM/98_Heating_Control.pm?view=log (//fhem.svn.sourceforge.net/viewvc/fhem/trunk/fhem/FHEM/98_Heating_Control.pm?view=log)
und das Programm direkt über den Downloadlink herunterladen, ins fhem-Verzeichnis kopieren, reload 98_Heating_Control ausführen und im fhem-log prüfen ob alles ok ist.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Michael N. am 01 März 2013, 22:43:35
Ich finde das Modul super. Es kann mir eine Menge "at" Regeln ersparen. Es gibt nur noch eins, was mich davon abhält, in meiner Konfiguration alle Regeln umzustellen. Für mich als MAX-Benutzer ist es unheimlich praktisch, für desired temperature die Werte "comfort" und "eco" benutzen zu können. Diese "symbolischen Werte" sind in den Ventilen gespeichert und auch für manuelles Umschalten direkt abrufbar. Manchmal justiere ich diese Werte nach. Wenn ich in den Regeln die Temperaturwerte verwenden muss, müsste ich dann auch alle Regeln wieder neu eingeben.

Wäre es nicht möglich, auch diese "Werte" zuzulassen?

- Michael
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 März 2013, 10:13:17
Ich werde deinen Wunsch heute prüfen.
Auf dem ersten Blick, scheint es mir aber möglich zu sein, so eitwas umzusetzen.

Es muss dann wahrscheinlich etwas mehr umgebaut werden.
Kann ich dich dann als Tester einsetzen - ich habe kein MAX?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Michael N. am 02 März 2013, 11:36:19
Ja klar, ich teste das gerne.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Damian am 02 März 2013, 15:24:12
Hallo,

es wurde hier mehrfach der Erweiterungswunsch für eine Wochenzeitschaltuhr geäußert.
Nun wollte ich nicht mehr länger auf eine Umsetzung warten und habe für mich gerade das Modul erweitert.


(siehe Anhang / see attachement)


Bei Interesse kann ich hier die paar Änderungen für die Entwickler posten.

Gruß

Damian


Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 März 2013, 16:52:40
schick mir bitte deine Version des Moduls per PM, dann arbeite ich sie ein und stelle das Modul online.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 07 März 2013, 23:30:36
Ich habe Deine Änderungen 1:1 übernommen und inzwischen eingecheckt.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: John am 29 März 2013, 22:19:58
Ich nutze das Heating-Control gerne und finde es sehr gelungen.

Ein zeitlicher Offset als zusätzliches Attribut wäre hilfreich.

Meine Zielvorstellung:
  Der Schaltzeitpunkt des Heating_Controls bedeutet nicht mehr wie bisher:


    "Setze den Sollwert des Thermostats xy"

  sondern

      " zu diesem Zeitpunkt soll der Raum die Solltemperatur erreicht haben"


Wenn ich etwa weiss, dass es ca. 1,5 Std. dauert, bis der Raum von 16 auf 19 Grad geheizt ist,
wäre das neue Attribut wie folgt zu realisieren.

attr myHeatingControl time_offset 01:30
 
Vielleicht findet der Vorschlag ja Anhänger


John

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 29 März 2013, 22:50:05
Ich habe es bisher immer so gehalten, dass ich bei der Definition der Schaltzeitpunkte selbst das offset immer so gut es ging eingerechnet habe.

Also wenn ich morgens um 6:30 in der Küche frühstücken will muss ich um 5:45 die Heizung anschalten.

Machbar wäre es sicherlich eine solche Erweiterung einzubauen.
Ich habe allerdings noch keine Vorstellung wie ich es machen könnte, es dürfte aber in jedem Fall einiges an Aufwand bedeuten und auch nicht ganz unkompliziert sein.

In den Sommermonaten werde ich bestimmt nicht dazu kommen.
Ich hoffe, der Sommer noch kommt!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 31 März 2013, 12:37:01
Probleme mit der Sommerzeitumstellung:

Link (http://forum.fhem.de/index.php?topic=12012.msg71089#msg71089)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 31 März 2013, 20:26:59
Ich glaube ich habe einen Weg gefunden HC gegen Sommerzeitumstellungen immun zum machen.
War gar nicht so schwer!

Ich werde es einbauen testen und bei Gelegenheit in SVN einchecken.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 01 April 2013, 03:15:38
Zitat von: Dietmar63 schrieb am So, 17 Februar 2013 17:34Wenn du wie im Beispiel beschrieben HC so
define HCW Heating_Control WZ_Heizung Sa-So,Mi|08:00|21 (ReadingsVal("WeAreThere", "state", "no") eq "yes")
definierst, erfolgt keine weitere Schaltung seitens HC, wenn WeAreThere nicht auf yes steht.

Ein notify erledigt den Rest: Ich habe mit
define Befehl5a               notify WeAreThere:no        {fhem ("set HeizungKueche desired-temp 18;; set HeizungWohnen desired-temp 18") }
erreicht, dass beim Setzen des Dummys die Temperaturen korrigiert werden. So bleiben sie bis ich WeAreThere wieder auf yes setze.

Zur Zeit gibt es keine Möglichkeit automatisch die Pläne zu ändern. Ich habe mir so geholfen, dass ich zwei HC angelegt habe. Über die Bedingungvariable kannst du steuern wann welcher HC schalten soll.

Ich hatte vor einiger Zeit nach der Umsetzung von HC mit dem Homestatus gefragt.

Bei mir kann der Dummy "HomeStatus" die Werte 1-4 übernehmen (http://www.fhemwiki.de/wiki/Zuhause-Status)
Nun habe ich folgendes geschrieben:
define eg_bz_Heizung_Heizungsplan_zuhause Heating_Control eg_bz_Heizung Mo,Di,Mi,Do|03:08|23 Mo,Di,Mi,Do|23:00|18 Fr,Sa,So|06:00|23 Fr,Sa,So|12:00|21 Fr,Sa,So|23:00|18 (ReadingsVal("HomeStatus" < 3 )
define eg_bz_Heizung_Heizungsplan_weg Heating_Control eg_bz_Heizung Mo,Di,Mi,Do,Fr,Sa,So|03:08|10 Mo,Di,Mi,Do,Fr,Sa,So|17:00|10 Mo,Di,Mi,Do,Fr,Sa,So|01:00|10 (ReadingsVal(Value("HomeStatus") > 2 )


Leider bekomme ich dabei eine Fehlermeldung:
2013.04.01 03:07:58 3: Not enough arguments for main::ReadingsVal at (eval 130) line 1, near "2 )"
syntax error at (eval 130) line 1, at EOF

2013.04.01 03:08:00 3: Not enough arguments for main::ReadingsVal at (eval 131) line 1, near "2 )"
syntax error at (eval 131) line 1, at EOF

2013.04.01 03:08:01 3: Not enough arguments for main::ReadingsVal at (eval 132) line 1, near "3 )"
syntax error at (eval 132) line 1, at EOF

2013.04.01 03:08:01 3: Not enough arguments for main::ReadingsVal at (eval 133) line 1, near "2 )"
syntax error at (eval 133) line 1, at EOF


Fehlt mir etwas?
Die Bedingung aus dem Zitat oben verstehe ich leider nicht voillständig: (ReadingsVal("WeAreThere", "state", "no") eq "yes")
Was bedeutet das "state"?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 01 April 2013, 10:18:05
Die Bedingungen sind syntaktisch noch nicht korrekt. Versuch es mal mit folgende Änderungen:


define HCW  Heating_Control WZ_Heizung    Sa-So,Mi|08:00|21    (ReadingsVal("WeAreThere", "state", "no") eq "yes")

define eg_1 Heating_Control eg_bz_Heizung Sa-So,Mi|08:00|21    (ReadingsVal("HomeStatus", "state",    1)  <  3)
define eg_2 Heating_Control eg_bz_Heizung Sa-So,Mi|08:00|21    (ReadingsVal("HomeStatus", "state",    1)  >  2)


bei "state" handelt es sich um ein Reading eines dummys. Geräte haben oft viele verschiedene Readings - man könnte auch Statusvariable dazu sagen. Einfach mal in der Oberfläche von fhem auf ein Gerät clicken - dann kann man sich Details ansehen.

Ich habe die Texte deiner beiden Zeilen ein wenig gekürzt, damit Du erkennst wie die Readings ausgelesen werden können.
Unterhalb von "no" habe ich "1" angegeben. Das mußt Du deinen Verhältnissen anpassen. Es handelt sich um den Wert, der "ausgelesen" wird, wenn das Reading "state" nicht gefunden wird.

Also den hinteren Teil der beiden letzen Zeilen ins cfg dann solltest du weiterkommen. Ich habe nicht getestet, sollte aber trotzdem funktionieren.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 01 April 2013, 15:07:15
Lieben Dank für die schnelle Antwort!

Ich habe nun das Coding angepasst, bekomme aber leider gar nichts mehr im Log. Habe um 15:03 versucht mit zwei Heizungs-Controll-Devices entsprechend des Komestatus zu schalten:
define eg_bz_Heizung_Heizungsplan_zuhause Heating_Control eg_bz_Heizung Mo,Di,Mi,Do|15:03|23 Mo,Di,Mi,Do|23:00|18 Fr,Sa,So|06:00|23 Fr,Sa,So|12:00|21 Fr,Sa,So|23:00|18 (ReadingsVal("HomeStatus", "state",    1)  <  3)

define eg_bz_Heizung_Heizungsplan_weg Heating_Control eg_bz_Heizung Mo,Di,Mi,Do,Fr,Sa,So|15:03|10 Mo,Di,Mi,Do,Fr,Sa,So|17:00|10 Mo,Di,Mi,Do,Fr,Sa,So|01:00|10 (ReadingsVal ("HomeStatus", "state",    1)  >  2)


Habe ich einen Denkfehler? Wenigstens bekomme ich keine Error-Meldung mehr.

EDIT: scheint nun zu gehen. Hatte wohl keine Änderung im Log, da ich keinen Temperaturwechsel hatte.

Ein Fehler noch:
Im Log erscheint nun (HomeStatus = 4) statt einmal mehrmals:
2013.04.01 15:19:46 2: FHT set eg_bz_Heizung desired-temp 10.0
2013.04.01 15:20:00 2: FHT set eg_bz_Heizung desired-temp 10.0
2013.04.01 15:20:00 2: FHT set eg_bz_Heizung desired-temp 10.0
2013.04.01 15:20:00 2: FHT set eg_bz_Heizung desired-temp 10.0
2013.04.01 15:20:00 2: FHT set eg_bz_Heizung desired-temp 10.0
2013.04.01 15:20:00 2: FHT set eg_bz_Heizung desired-temp 10.0
2013.04.01 15:20:01 2: FHT set eg_bz_Heizung desired-temp 10.0

Woand liegt das?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 01 April 2013, 15:29:33
{Log 3, ReadingsVal ("HomeStatus", "state",    1) }
Gib mal obigen Code in die Kommandozeile von fhem ein und kontrolliere das Log.

Dort müsstest du den aktuellen HomeStatus finden.

Achtung HC verändert die Temperatur nur wenn es etwas zu Ändern gibt.

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 01 April 2013, 15:32:15
Könnte daran liegen, dass du nicht die neueste Version hast. Update ausfuhren und alles ist gut.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: LudgerR am 01 April 2013, 19:53:45
Hallo,

eine Verständnisfrage / Anmerkung:

Was ist die eigentliche Intention die gesamte Steuerung der Schaltzeitpunkte (incl. Wochenplan) der einzelnen Temperaturreglern (FHTs) durch die Zentrale (sprich Fhem) zu machen, wo doch die einzelnen FHTs Wochenschaltpläne mit bis zu zwei Tageszeitperioden pro Tag erlauben und somit autark die Regelung für die einzelnen Räume vornehmen können?

Für die wenigen Räume, in denen mehr als zwei Perioden benötigt werden, lässt sich das einfach mit Bordmitteln (sprich Party-Funktion) der FHT realisieren. Pro zusätzliche Tageszeitintervall per ,,at" ein Aufruf der FHT Partyfunktion z.B. als Subroutine in der Form  
         
{fht_party("<FHT-dev-name>","<Zeit-Interval>","<desired-temp>")}


Die gesamten Parameter (für den impliziten holiday-short Befehl, der von fht_party erzeugt werden muss) werden in einem Funkbefehl an das FHT Gerät übertragen. Ein weiteres (Funk-)Kommando am Ende des zusätzlichen Tagestemperaturintervalls ist nicht erforderlich.  Auch bei einer großen Anzahl von FHT-Geräten  wird somit  allein konzeptionsbedingt , die häufig auftretenen Kommunikationsprobleme bei einer  großen Anzahl von FHT Geräten weitestgehend verhindert.      
           
Insbesondere wenn man (später) weitere Komfortfunktionen realisieren möchte, wie z.B. das temporäre ad hoc Aufheizen eines Fitnessraumes, Bügelzimmers oder Hobbyraumes per Mausklick oder per (IR-) Fernbedienung ist es von Vorteil, wenn die entsprechende FHTs im auto mode der FHT Geräte laufen .  Per Party-Funktion, diesmal per Mausklick getriggert, wird  der Schaltplan für die angegeben Zeit im FHT Gerät außer Kraft gesetzt (und lässt sich ggf. per Mausklick bzw. durch einfaches Drücken der ,,FUNKTION" Taste am FHT Gerät vorzeitig wieder aufheben).  

Wegen den Kommunikationproblemen bei einer großen Anzahl von FHT Geräten bin ich  von einen ,,zentralistischen" Ansatz bei der Steuerung der FHTs völlig abgekommen und nutze die dezentrale Funktionen der FHTs, wo immer möglich. Mit dieser Lösung bin ich sehr zufrieden und plane nun sogar meine letzten Räume (13. und 14.) mit FHT auszurüsten (ursprünglich hatte ich hierfür schon HM im Visier) .


Viele Grüße,
Ludger

  P.s.   Wechsel auf Sommerzeit wird von den FHTs automatisch durchgeführt. Lediglich wenn man, wie ich, um Mitternacht  die Aufstehzeit noch ad hoc variiert und den Schaltzeitpunkt für den Wechsel von Nacht auf Tag für alle FHT Geräte  per Party-Funktion am Wochenende individuell anpasst und dies ausgerechnet zwischen 1:30 und 3:00 Uhr scheduled  erzielt man nicht bei allen Geräten das gewünschte Ergebnis :).  
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: stromer-12 am 01 April 2013, 20:07:30
Die FHTs bieten nur eine Heiz- und eine Absenktemperatur für den gesamten Tag.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Michael N. am 01 April 2013, 20:08:07
Zitat von: LudgerR schrieb am Mo, 01 April 2013 19:53Hallo,

Was ist die eigentliche Intention die gesamte Steuerung der Schaltzeitpunkte (incl. Wochenplan) der einzelnen Temperaturreglern (FHTs) durch die Zentrale (sprich Fhem) zu machen, wo doch die einzelnen FHTs Wochenschaltpläne mit bis zu zwei Tageszeitperioden pro Tag erlauben und somit autark die Regelung für die einzelnen Räume vornehmen können?

Persönlich bin ich von dem Heating_Control-Modul begeistert, weil es für meine MAX! Ventile in FHEM keine Möglichkeit gibt, Wochenpläne zu erstellen, die auf das Ventil übertragen werden. (Wenn es das für FHTs gibt, habe ich es in FHEM nicht gefunden.) Natürlich hätten "autonome" Wochenpläne auch etwas (werden grundsätzlich auch von MAX! unterstützt).

Unabhängig davon sehe ich aber einen Vorteil von Heating_Control darin, in den Plänen Bedingungen unterzubringen. Ich benutzte das zwar nicht in allen Räumen, aber in einigen ist es ganz sinnvoll in den Schulferien anders zu regeln.

Gruß

    Michael
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 01 April 2013, 22:56:51
Zitat von: Dietmar63 schrieb am Mo, 01 April 2013 15:32Könnte daran liegen, dass du nicht die neueste Version hast. Update ausfuhren und alles ist gut.


Danke für Deine Hilfe, Dietmar!
Das Update habe ich durchgeführt. Nun kann ich auch Mo-Fr nutzen.

Ich möchte nun in Abhängigkeit von genau einem Status die Temperaturen setzen, bekomme aber bei folgendem Coding:
define eg_bz_Heizung_Heizungsplan_weg Heating_Control eg_bz_Heizung Mo-So|08:30|16 Mo-So|16:30|20 Mo-So|22:00|16 (ReadingsVal ("HomeStatus", "state", 1) = 3)
attr eg_bz_Heizung_Heizungsplan_weg room Badezimmer



diese Fehlermeldung:
2013.04.01 22:42:11 3: Can't modify non-lvalue subroutine call in scalar assignment at (eval 376) line 1, near "3)"

Hast Du dazu eine Idee.

Eine weitere Frage: Ich bekomme leider manchmal ein volles Log mit 20-30 folgender Meldungen:
2013.04.01 22:39:50 2: CUL_0: unknown message LOVF
2013.04.01 22:39:51 2: CUL_0: unknown message LOVF
2013.04.01 22:39:51 2: CUL_0: unknown message LOVF
2013.04.01 22:39:51 2: CUL_0: unknown message LOVF
...
...

Nachdem ich FHEM neu starte, den Cul resette oder etwas anderes (?) mache, setzt mir irgendwas im Log verschiedene FHTs:
2013.04.01 22:53:44 2: FHT set eg_bz_Heizung desired-temp 18.0
2013.04.01 22:53:44 2: FHT set eg_az_Heizung desired-temp 15.0
2013.04.01 22:53:45 2: FHT set eg_ku_Heizung desired-temp 19.0
2013.04.01 22:53:45 2: FHT set eg_ki_Heizung desired-temp 15.0
2013.04.01 22:53:45 2: FHT set og_sz_Heizung desired-temp 15.0

Warum passiert das? Können dadurch die Funktprobleme und die LOVF-Meldungen auftreten?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 April 2013, 00:53:58
define eg_bz_Heizung_Heizungsplan_weg Heating_Control eg_bz_Heizung Mo-So|08:30|16 Mo-So|16:30|20 Mo-So|22:00|16 (ReadingsVal ("HomeStatus", "state", 1) == 3)
attr eg_bz_Heizung_Heizungsplan_weg room Badezimmer


Kleiner Fehler bei =. Verwende ==

LOVF bekommst du wenn du zu viele Kommandos in fhem versendet. Ein Google und du bekommst viele Tipps dazu .

Beim Start jedes HC wird die Temperatur auf den passenden aktuellen Wert gesetzt





Titel: Aw: Neues Modul - Heating_Control / Wochenschaltmodul
Beitrag von: LudgerR am 02 April 2013, 11:25:18
Hallo Dietmar,

warum nicht die Anzahl der Parameter von 1 (desired-temp)  auf (zumindest) 2 erweitern ?

Damit würde aus deinem ursprünglichen Heating-Control Modul ein ziemlich flexibles  ,,Wochenschaltplan" Modul, das auch für andere Zwecke verwendet werden könnte.

In meinem Fall  als intensiver Nutzer der Party/Urlaubs Funktion der FHT Geräte könnte ich die Funktion


{fht_party("<FHT-dev-name>","<Zeit-Interval>","<desired-temp>")}

 
 als Komando  

{fht_party("@","$","%")}
 
in Heating-Control  spezifizieren, vorausgesetzt ein zusätzlicher (optionaler) Parameter (zu desired-temp) ließe sich vorgeben und würde im command ausgewertet.

 Anstelle von  

define HCW1  Heating_Control heizung.01     15:00|19.1 Mo-Fr|17:30|21

sehe die Defintion möglicherweise so

define HCW1  Heating_Control heizung.01     15:00|19.1_120 Mo-Fr|17:30|21_300

bzw. folgendermaßen aus

define HCW1  Heating_Control heizung.01     15:00|19.1:120 Mo-Fr|17:30|21:300

Gruß,

Ludger
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: LudgerR am 02 April 2013, 12:40:56
In meinem Haushalt spielen feste Wochenschaltpläne nur eine untergeordnete Rolle, feste Ferienzeiten mit planbarer Anwesenheit von Familienmitgliedern gibt es nicht. Das kurzeitige Aufheizen von Räumen auf Komfort-Temperatur außerhalb der Regelzeiten steht im Vordergrund.
Ich finde  es halt praktisch,  wenn der Sohnemann sein Studierzimmer per Fernbedienung (oder Smartphone) in einen oder mehrstündigen Partymodus setzen kann und spätestens beim Verlassen des Hauses durch kurze Betätigung der FUNKTION sTaste auf dem FHT Gerät bequem wieder in den Absenkmodus wechseln kann.

Abgesehen von wenigen Ausnahmen, wo ich mehr als zwei Komforttemperaturintervalle benötige, hinterlege ich keine Schaltzeiten für FHT Geräte in Fhem.  Ich habe auch kein Problem damit bei umfangreichen Änderung des Schaltprogrammes dies am FHT Gerät selbst zu tun. Die Schaltzeiten der einzelnen FHTs sehe ich ja in den Readings bzw. im zugehörigen Plot der Geräte, wenn ich ,,desired-temp" zusätzlich zu ,,measured-temp" und Actuator % auswerte.

Der Ansatz komplette Wochenschaltprogramme für alle FHT Geräte kompakt zentral in Fhem zu haben und flexibel zu verwalten ist halt sehr verführerisch. Bei einer großen Anzahl von FHT Geräten stößt man jedoch schnell an die (Funk-) Grenzen.

Mir ging es primär darum aufzuzeigen (um anderen leidvolle Erfahrungen zu ersparen), dass man mit den Grundfunktionen der FHT Geräte einiges flexibel realisieren kann und man nicht für jedes FHT Gerät die Steuerung
komplett über die  Zentrale (Fhem) realisieren muss.    

Gruß,
Ludger
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 April 2013, 16:15:56
Ich habe im Moment nur zwei FHT im Einsatz.
Mehr ist bei mir im Moment auch nicht geplant, da ich noch Standalone-thermostate habe, die auch ganz gut funktionieren.

ZitatDer Ansatz komplette Wochenschaltprogramme für alle FHT Geräte kompakt zentral in Fhem zu haben und flexibel zu verwalten ist halt sehr verführerisch. Bei einer großen Anzahl von FHT Geräten stößt man jedoch schnell an die (Funk-) Grenzen.
Warum sollte das so sein? Pro FHT wird vielleict 6-10 mal am Tag geschaltet. In Räumen, in denen nicht viele verschiedene Schaltzeiten notwendig sind entsprechend seltener. Bisher habe ich noch kein Problem mit den (Funk-) Grenzen gehabt - habe aber auch nur zwei FHT an der Zentrale angeschlossen.

Praktisch ist es jedenfalls in der Lage zu sein aus der Ferne die Heizung einschalten zu können.
Titel: Aw: Neues Modul - Heating_Control / Wochenschaltmodul
Beitrag von: Dietmar63 am 02 April 2013, 16:28:15
@Ludger:
Dieser Wunsch ist heute schon realisert. Der Parameter hinter der Zeit ist einfach nur Text, der anstelle von % weitergegeben wird:

Versuch mal folgendes:
define HCW1 Heating_Control heizung.01 15:00|19.1:120 Mo-Fr|17:30|21:300 {fht_party("@","%")}

Als zweiten Parameter bekommst Du dann in fht_party 19.1:120 bzw. 21:300 geliefert.
Du musst den Parameter nur selbst auseinander nehmen und verwerten.  
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: LudgerR am 02 April 2013, 18:35:51
Hallo Dietmar,

wenn die Schaltbefehle für die einzelnen FHT Geräte insgesamt schön über die Zeitachse verteilt sind, funktioniert das ganz gut. Wenn aber für 6 bis 10 Thermostate gleichzeitig für 6:30 der Wechsel auf die Tagestemperatur über ein CUL/CUNO device geschickt wird, kann dies schnell zu Kommunikationsproblemen führen, abgesehen davon, dass es erhebliche Zeitverzögerungen gibt, bis endlich die neuen Temperaturwünsche an allen Geräten angekommen sind. Das ist der Grund, warum ich morgens und abends die Steuerung per FHT Wochenschaltplan mache (--> alle Geräte im auto modus) und während des Tages zusätzliche Zeitintervalle mit (z.T. erhöhter) Komforttemperatur per Party-Funktion steuere, entweder geplant per "at" oder ad hoc per IR-FB bzw. Handy. Zusätzlich schalte ich hin- und wieder für einige Räume, die an diesem Tag nicht mehr benutzt werden, die "desired-temp" vor Erreichen des Schaltpunktes am Abend per IR-FB vorzeitig auf Absenktemperatur. Seitdem ich so verfahre ist LOVL trotz 12 FHTs glücklicherweise ein Fremdwort geworden.

Mit diesem Verfahren ist auch sichergestellt, das ein Raum nicht den ganzen Tag bis zur Nachtabschaltung der Heizung wegen eines nicht empfangenen Absenktemperatur unnötigerweise aufgeheizt bleibt.

Die Steuerung per Party-Funktion hat m.E.ein schönes Goodie. Die geplanten Schaltzeitpunkte lassen sich mit dieser Funktion sehr schön aus dem Stehgreif "temporär überschreiben". Der letzte Party-/Urlaubs-Befehl zählt für die gesamt angegebene Dauer, ganz gleich, ob er per Mausklick/touch oder am FHT Gerät selbst ausgeführt wurde.  
 
Das der Wochenschaltplan der FHTs nicht zentral in einer schönen Übersicht vorliegt, mag zwar ein Manko sein. Zumindestens die Readings der FHT Geräte halte ich aktuell indem ich jede Nacht ab 22:30 die Schaltzeitpunkte für den kommenden Tag plus Tages- und Absenktemperatur per "report1/2" von den FHTs anfordere und somit auf den aktuellen Stand halte. Übrigens, alle routinemäßigen Funk-Kommandos an die FHTs schedule ich (automatisch generiert) mit einem Zeitintervall von rund 15 Minuten. Nur so konnte ich bei mehr als 10 FHTs die Limitierung im Funkbereich aufgrund der 1% Regel und durch Befehlswiederholung in den Griff bekommen. Da der meiste Funkverkehr in der Nacht läuft (Update der Schaltpunkte ab 22:30 Uhr, ad hoc Überschreibung des morgendlichen "Tagesbeginns" einzelner bzw. aller FHTs ab 1:30 Uhr (am), habe ich bis auf die zuätzlichen Komforttemperatur-Intervalle im Tagesverlauf kaum Funkbelastung durch Steuerung der FHT Geräte.

Bei wenigen FHT Geräten sehe ich wenig Probleme dies auschließlich von der Zentralen per Heating-Control zu machen und die FHTs u.U. sogar im "manu" Betrieb zu fahren. Wer jedoch plant mit 10 oder mehr FHT Geräten die Temeratur komfortabel (und mit wenig Fehlern zu steuern), sollte das zeitgleiche Schalten von mehreren FHTs per Funk möglichst (konzeptionell) vermeiden / minimieren. In dem Fall kann Heating-Control sicherlich die Steuerung während des Tages erleichtern und insbesondere Bedingungen wie Anwesenheit während der Ferienzeiten etc. gut abbilden.    

Gruß,
Ludger
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 02 April 2013, 18:46:58
Ich verfolge die Diskussion hier gespannt, da mich leider die Thematik mit den Funktüberschreitungen auch trifft. Ich habe 8 FHTs im Einsatz. Dazu noch 3 von den Hygrostaten.

Hier mal das aktuelle Log nachdem ich per Heizungsplan nur 3 FHTs umgestellt habe :-( :


2013.04.02 17:42:16 2: FHT set eg_bz_Heizung desired-temp 18.0
2013.04.02 17:42:17 2: FHT set eg_ki_Heizung desired-temp 20.0
2013.04.02 17:42:17 2: FHT set eg_ku_Heizung desired-temp 19.0
2013.04.02 17:42:52 2: CUL_0: unknown message LOVF
2013.04.02 17:42:52 2: CUL_0: unknown message LOVF
2013.04.02 17:42:52 2: CUL_0: unknown message LOVF
2013.04.02 17:42:52 2: CUL_0: unknown message LOVF
2013.04.02 17:42:53 2: CUL_0: unknown message LOVF
2013.04.02 17:42:53 2: CUL_0: unknown message LOVF
2013.04.02 17:43:28 2: CUL_0: unknown message LOVF
2013.04.02 17:43:28 2: CUL_0: unknown message LOVF
2013.04.02 17:43:29 2: CUL_0: unknown message LOVF
2013.04.02 17:43:29 2: CUL_0: unknown message LOVF
2013.04.02 17:43:56 2: CUL_0: unknown message LOVF
2013.04.02 17:44:49 2: CUL_0: unknown message LOVF
2013.04.02 17:44:50 2: CUL_0: unknown message LOVF
2013.04.02 17:44:50 2: CUL_0: unknown message LOVF
2013.04.02 17:45:24 2: CUL_0: unknown message LOVF
2013.04.02 17:45:24 2: CUL_0: unknown message LOVF
2013.04.02 17:45:24 2: CUL_0: unknown message LOVF
2013.04.02 17:45:25 2: CUL_0: unknown message LOVF
2013.04.02 17:46:47 2: CUL_0: unknown message F2A2CE2
2013.04.02 17:49:03 2: CUL_0: unknown message LOVF
2013.04.02 17:49:03 2: CUL_0: unknown message LOVF
2013.04.02 17:49:04 2: CUL_0: unknown message LOVF
2013.04.02 17:49:04 2: CUL_0: unknown message LOVF
2013.04.02 17:49:16 2: CUL_0: unknown message LOVF
2013.04.02 17:49:18 2: CUL_0: unknown message LOVF
2013.04.02 17:49:18 2: CUL_0: unknown message LOVF
2013.04.02 17:49:19 2: CUL_0: unknown message LOVF
2013.04.02 17:49:19 2: CUL_0: unknown message LOVF
2013.04.02 17:50:52 2: CUL_0: unknown message LOVF
2013.04.02 17:50:52 2: CUL_0: unknown message LOVF
2013.04.02 17:50:52 2: CUL_0: unknown message LOVF
2013.04.02 17:50:52 2: CUL_0: unknown message LOVF
2013.04.02 17:51:14 2: CUL_0: unknown message LOVF
2013.04.02 17:51:14 2: CUL_0: unknown message LOVF
2013.04.02 17:52:40 2: CUL_0: unknown message LOVF
2013.04.02 17:52:57 2: CUL_0: unknown message LOVF
2013.04.02 17:52:57 2: CUL_0: unknown message LOVF
2013.04.02 17:52:57 2: CUL_0: unknown message LOVF
2013.04.02 17:53:12 2: CUL_0: unknown message LOVF
2013.04.02 17:53:12 2: CUL_0: unknown message LOVF
2013.04.02 17:54:08 2: CUL_0: unknown message LOVF
2013.04.02 17:54:08 2: CUL_0: unknown message LOVF
2013.04.02 17:54:09 2: CUL_0: unknown message LOVF
2013.04.02 17:54:09 2: CUL_0: unknown message LOVF
2013.04.02 17:54:35 2: CUL_0: unknown message LOVF
2013.04.02 17:54:35 2: CUL_0: unknown message LOVF
2013.04.02 17:54:35 2: CUL_0: unknown message LOVF
2013.04.02 17:54:36 2: CUL_0: unknown message LOVF
2013.04.02 17:55:14 2: CUL_0: unknown message LOVF
2013.04.02 17:55:14 2: CUL_0: unknown message LOVF
2013.04.02 17:57:06 2: CUL_0: unknown message LOVF
2013.04.02 17:58:38 2: CUL_0: unknown message LOVF
2013.04.02 17:58:38 2: CUL_0: unknown message LOVF
2013.04.02 17:58:38 2: CUL_0: unknown message LOVF
2013.04.02 17:58:39 2: CUL_0: unknown message LOVF
2013.04.02 17:59:04 2: CUL_0: unknown message LOVF
2013.04.02 17:59:05 2: CUL_0: unknown message LOVF
2013.04.02 18:00:37 2: CUL_0: unknown message LOVF
2013.04.02 18:00:37 2: CUL_0: unknown message LOVF
2013.04.02 18:00:37 2: CUL_0: unknown message LOVF
2013.04.02 18:00:38 2: CUL_0: unknown message LOVF
2013.04.02 18:01:02 2: CUL_0: unknown message LOVF
2013.04.02 18:01:03 2: CUL_0: unknown message LOVF
2013.04.02 18:01:19 2: CUL_0: unknown message LOVF
2013.04.02 18:01:20 2: CUL_0: unknown message LOVF
2013.04.02 18:01:20 2: CUL_0: unknown message LOVF
2013.04.02 18:01:20 2: CUL_0: unknown message LOVF
2013.04.02 18:02:43 2: CUL_0: unknown message LOVF
2013.04.02 18:02:44 2: CUL_0: unknown message LOVF
2013.04.02 18:02:44 2: CUL_0: unknown message LOVF
2013.04.02 18:02:59 2: CUL_0: unknown message LOVF
2013.04.02 18:03:00 2: CUL_0: unknown message LOVF
2013.04.02 18:03:16 2: CUL_0: unknown message LOVF
2013.04.02 18:03:16 2: CUL_0: unknown message LOVF
2013.04.02 18:03:16 2: CUL_0: unknown message LOVF
2013.04.02 18:05:12 2: CUL_0: unknown message LOVF
2013.04.02 18:05:12 2: CUL_0: unknown message LOVF
2013.04.02 18:05:12 2: CUL_0: unknown message LOVF
2013.04.02 18:05:45 2: CUL_0: unknown message LOVF
2013.04.02 18:05:45 2: CUL_0: unknown message LOVF
2013.04.02 18:05:45 2: CUL_0: unknown message LOVF
2013.04.02 18:05:46 2: CUL_0: unknown message LOVF
2013.04.02 18:05:47 2: CUL_0: unknown message LOVF
2013.04.02 18:05:47 2: CUL_0: unknown message LOVF
2013.04.02 18:05:47 2: CUL_0: unknown message LOVF
2013.04.02 18:05:48 2: CUL_0: unknown message LOVF
2013.04.02 18:06:55 2: CUL_0: unknown message LOVF
2013.04.02 18:06:55 2: CUL_0: unknown message LOVF
2013.04.02 18:07:44 2: CUL_0: unknown message LOVF
2013.04.02 18:07:44 2: CUL_0: unknown message LOVF
2013.04.02 18:07:45 2: CUL_0: unknown message LOVF
2013.04.02 18:08:14 2: CUL_0: unknown message LOVF
2013.04.02 18:08:14 2: CUL_0: unknown message LOVF
2013.04.02 18:09:03 2: CUL_0: unknown message LOVF
2013.04.02 18:09:03 2: CUL_0: unknown message LOVF
2013.04.02 18:09:03 2: CUL_0: unknown message LOVF
2013.04.02 18:09:04 2: CUL_0: unknown message LOVF
2013.04.02 18:09:04 2: CUL_0: unknown message LOVF
2013.04.02 18:09:04 2: CUL_0: unknown message LOVF
2013.04.02 18:09:05 2: CUL_0: unknown message LOVF
2013.04.02 18:09:42 2: CUL_0: unknown message LOVF
2013.04.02 18:09:42 2: CUL_0: unknown message LOVF
2013.04.02 18:09:42 2: CUL_0: unknown message LOVF
2013.04.02 18:09:43 2: CUL_0: unknown message LOVF
2013.04.02 18:10:30 2: CUL_0: unknown message LOVF
2013.04.02 18:10:30 2: CUL_0: unknown message LOVF
2013.04.02 18:10:49 2: CUL_0: unknown message LOVF
2013.04.02 18:10:50 2: CUL_0: unknown message LOVF
2013.04.02 18:11:02 2: CUL_0: unknown message LOVF
2013.04.02 18:11:02 2: CUL_0: unknown message LOVF
2013.04.02 18:11:03 2: CUL_0: unknown message LOVF
2013.04.02 18:11:03 2: CUL_0: unknown message LOVF
2013.04.02 18:25:18 2: CUL_0: unknown message LOVF
2013.04.02 18:25:18 2: CUL_0: unknown message LOVF
2013.04.02 18:26:29 2: CUL_0: unknown message LOVF
2013.04.02 18:26:30 2: CUL_0: unknown message LOVF
2013.04.02 18:26:30 2: CUL_0: unknown message LOVF
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Michael N. am 02 April 2013, 18:53:28
Der Autor des CULMAX-Moduls hat genialer Weise irgendwann ein Queuing beim Senden der Befehle implementiert. Seitdem habe ich keine Probleme mehr mit LOVF. Vielleicht braucht FHT das auch.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 April 2013, 19:38:28
@gunter, Ludger

Die LOVF scheinen tatsächlich das zu bestätigen, was du, Ludger vorher gesagt hast.

Dass das Problem aber schon nach 3 fht auftritt, könnte an zusätzlichen Funkproblemen liegen - kann ich aber nicht genau sagen.

Wie gesagt, beim Start bekommen alle fht ihre Start temp, deshalb die drei desired-temp.

Ehrlich gesagt bin ich ratlos - in der Dokumentation liest man, daß Probleme ab so ca. 10 fht zu erwarten sind. Bei zwei fht habe ich noch kein Problem.

Kannst du Tests durchführen, ob bei dir zusätzliche Probleme vorliegen?
gib mal folgende in der Oberfläche oder dem fhem.cfg ein:

define yy at *+00:01:00 get CUL_0 raw T02
dann bekommst du infos über deinen fht-Puffer und kannst prüfen ob sich etwas tut:
http://www.fhemwiki.de/wiki/Kommunikationsprobleme_mit_FHT (//www.fhemwiki.de/wiki/Kommunikationsprobleme_mit_FHT)

mit
get CUL raw X
bekommst die freien Zeiten des cul angezeigt. Mal sehen, ob wir es für dich nutzbar machen können.
FS20 und FHT scheit bei vielen FHT wirklich ein Problem zu sein.

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: John am 02 April 2013, 20:07:48
Matthias Gehre hat wie unter folgenden Link nachzulesen ist

Link (http://forum.fhem.de/index.php?topic=10222.msg64146#msg64146)

für 14_CUL_MAX.pm Queueing eingeführt.

Es merkt sich die Kommandos und sendet erst dann wieder, wenn genug "Credit" vorhanden ist.

Aus meiner Sicht eine absolute Notwendigkeit für einen sicheren Betrieb, wenn zu einem bestimmten
Zeitpunkt gehäuft Sende-Kommandos auftauchen.

Wenn kein Acknowledge kommt wird bis zu 3x ein erneuter Sendeversuch gestartet.
Damit ist die Zustellung SEHR sicher.

Die MAX-User haben seit dieser Zeit mit dem Heating_control kein Problem mehr.

Als Workaround bietet sich folgendes an:
Die Sende-Befehle nicht alle zum gleichen Zeitpunkt senden, sondern z.B. um 5 Minuten versetzt. (Damit wird Credit gesammelt)
So hab ich das Problem vor der Einführung des Queueings gelöst.


John
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 April 2013, 20:10:20
ZitatDie MAX-User haben seit dieser Zeit mit dem Heating_control kein Problem mehr.

Hatten sie denn ein Problem?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Michael N. am 02 April 2013, 20:12:36
Vorher ja. Allerdings trat das Problem unabhängig von Heating_Control bei mir auf, weil ich zu viele "at" Kommandos zur gleichen Zeit hatte. Jetzt ist alles gut.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 April 2013, 20:15:47
ich habe mal einige Tests durchgeführt und noch mehrere HC eingebaut um Last zu simulieren:
Folgender output:


CUL_0 raw => 21  900
2013.04.02 20:10:47 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.02 20:09:47 3: CUL_0 raw => N/A
CUL_0 raw => 21  852
2013.04.02 20:08:47 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.02 20:07:47 3: CUL_0 raw => N/A
CUL_0 raw => 21  882
2013.04.02 20:06:47 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.02 20:05:47 3: CUL_0 raw => 0938:412E
CUL_0 raw => 21  886
2013.04.02 20:04:47 3: CUL_0 raw => 0938:412E
2013.04.02 20:03:37 1: define: Wrong timespec +00:01:00: either HH:MM:SS or {perlcode}
2013.04.02 20:02:44 3: CUL_0 raw => 0938:412C 0938:412E
2013.04.02 20:01:44 3: CUL_0 raw => 0938:412D 0938:412C 0938:412E
2013.04.02 20:01:00 2: FHT set HeizungWohnen desired-temp 23.0
2013.04.02 20:00:44 3: CUL_0 raw => 0938:412D 0938:412C
2013.04.02 20:00:00 2: FHT set HeizungWohnen desired-temp 22.0
2013.04.02 19:59:44 3: CUL_0 raw => 4C60:411E 0938:412D
2013.04.02 19:58:44 3: CUL_0 raw => 4C60:4120 4C60:411E 0938:412D
2013.04.02 19:57:37 2: FHT set HeizungWohnen desired-temp 22.5
2013.04.02 19:57:37 2: FHT set HeizungKueche desired-temp 15.0
2013.04.02 19:57:37 2: FHT set HeizungWohnen desired-temp 23.0
2013.04.02 19:57:37 2: FHT set HeizungKueche desired-temp 16.0


Die Pufferung funktioniert im CUL. Alles wird nach und nach abgebaut.
Bei mir stören aber auch keine zusätzichen FHT.

ich protokolliere mit:
define yy at +*00:01:00 get CUL_0 raw T02;; get CUL_0 raw X
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 April 2013, 20:16:42
@ Michael ...
ob Probleme mit at oder mit HC, ist bestimmt egal.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 02 April 2013, 20:19:31
@ Gunter.
die LOVF bekommst du wegen des fehlenden credits(Sendelimit).

protokoliere mal mit:
define yy at +*00:01:00 get CUL_0 raw T02;; get CUL_0 raw X
dann verstehen wir vielleicht besser was passiert.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: John am 02 April 2013, 20:39:38
Auf der WEb-Site des CULS findet sich das unscheinbare Reading credit10ms.

Es behinhaltet die verfügbaren 10ms Slots des CULS zum Zeitpunkt des letzten Sendebefehls (siehe zugeordneter Zeitstempel)

Den aktuellen Credit kann man berechnen, indem man die Differenz dieses Zeitstempels zur aktuellen Zeit in Sekunden hinzu addiert.

Vielleicht hilft das für besseres Verständnis.

John

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 02 April 2013, 20:39:40
Bisher:

2013.04.02 20:37:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  195
2013.04.02 20:38:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  199
2013.04.02 20:39:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  152
2013.04.02 20:40:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  180
2013.04.02 20:41:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  102

Ich schaue später nochmal.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 02 April 2013, 21:08:09
Zitat von: John schrieb am Di, 02 April 2013 20:39Auf der WEb-Site des CULS findet sich das unscheinbare Reading credit10ms.

Es behinhaltet die verfügbaren 10ms Slots des CULS zum Zeitpunkt des letzten Sendebefehls (siehe zugeordneter Zeitstempel)

Den aktuellen Credit kann man berechnen, indem man die Differenz dieses Zeitstempels zur aktuellen Zeit in Sekunden hinzu addiert.

Vielleicht hilft das für besseres Verständnis.

John


Danke für die Erläuterung. Ehlicherweise habe ich aber gar nichts verstanden... ;-)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: John am 02 April 2013, 21:58:05
Vielleicht ist mir die Erklärung zu Credit hier besser gelungen:
Link (http://forum.fhem.de/index.php?topic=11769.msg69387#msg69387)

auch dieser Link erklärt das 868 MHz Band (siehe Bereich 1 Allgemein duty cycle= < 1%)
http://www.rn-wissen.de/index.php/Funkmodule#Das_neue_868_MHz_Band (//www.rn-wissen.de/index.php/Funkmodule#Das_neue_868_MHz_Band)


John
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 03 April 2013, 00:52:03
@ Gunter:

 CUL_0 raw => 21 195
 CUL_0 raw => 21 199
 CUL_0 raw => 21 152
 CUL_0 raw => 21 180
 CUL_0 raw => 21 102

sieht für mich erst mal so aus als wenn du wenig credit hast - und dass du gleich Probleme bekommst, 102 ist nicht viel.
Ich hatte immer so um die 900
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 03 April 2013, 08:26:09
@John: Danke für die Links!

@Dietmar: Habe ich eine Chance die Credits zu erhöhen?
Was ist, wenn ich den Cul zwischendurch resette?

Über Nacht gehen die Credits bis auf 900 hoch.
Hier ein kleiner Auszug aus dem Log. Dazwishen sind immer komische Meldungen.

CUL_0 raw => 21  707
2013.04.03 02:35:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  735
2013.04.03 02:36:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  698
2013.04.03 02:37:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  742
2013.04.03 02:38:38 2: CUL_0: unknown message F5208A5
2013.04.03 02:38:39 2: CUL_0: unknown message F5208A5
2013.04.03 02:38:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  729
2013.04.03 02:39:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  699
2013.04.03 02:40:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  630
2013.04.03 02:41:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  674
2013.04.03 02:42:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  734
2013.04.03 02:43:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  770
2013.04.03 02:44:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  765
2013.04.03 02:45:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  727
2013.04.03 02:46:57 3: CUL_0 raw => N/A
...
...
...
CUL_0 raw => 21  576
2013.04.03 03:27:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  507
2013.04.03 03:28:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  526K019291293D
2013.04.03 03:29:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  586
2013.04.03 03:30:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  646
2013.04.03 03:31:57 3: CUL_0 raw => N/A

Um 5 Uhr schalten die FHTs vom Bad und der Küche das erste mal per HC:
2013.04.03 04:58:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  708
2013.04.03 04:59:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  662
2013.04.03 05:00:00 2: FHT set eg_bz_Heizung desired-temp 23.0
2013.04.03 05:00:00 2: FHT set eg_ku_Heizung desired-temp 22.0
2013.04.03 05:00:57 3: CUL_0 raw => 1A04:412C
CUL_0 raw => 21  682
2013.04.03 05:01:57 3: CUL_0 raw => 1A04:412C
CUL_0 raw => 21  669
2013.04.03 05:02:57 3: CUL_0 raw => 1A04:412C
CUL_0 raw => 21  697
2013.04.03 05:03:57 3: CUL_0 raw => 1A04:412C
CUL_0 raw => 21  668
2013.04.03 05:04:57 3: CUL_0 raw => 1A04:412C
CUL_0 raw => 21  704
2013.04.03 05:05:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  641
2013.04.03 05:06:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  554
2013.04.03 05:07:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  548
2013.04.03 05:08:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  477
2013.04.03 05:09:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  520
2013.04.03 05:10:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  516
2013.04.03 05:11:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  536
2013.04.03 05:12:57 3: CUL_0 raw => N/A
CUL_0 raw => 21  595


Kann ich das Logging auch wieder ausstellen?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 03 April 2013, 10:25:57
delete yy

Auf die Credits hast du keinen Einfluss. Sie fest in der Firmware des CUL eingebaut, damit die 1% Regel nicht verletzt wird.

Prüf mal wie es sich mit den Credits verhält wenn die drei HC starten und dann die LOVF kommen bzw. prüf mal wie sich Dein System ohne die drei HC bezüglich der Credits verhält.
Titel: Aw: Neues Modul - Heating_Control / Wochenschaltmodul
Beitrag von: LudgerR am 03 April 2013, 10:28:15
Dietmar,

hatte ich mir schon gedacht, das es so funktioniert.  War halt nur eine Anregung dein Modul zu einer allgemeinen komfortablen Wochen-Zeitschaltuhr (ZSU) auszubauen. Ist halt bequemer wenn man die Parameterliste nicht selbst splitten muß und sie sofort z.B. als Parameter $1,$2,... in fhem "set" Befehlen bzw. eigenen Funktionen als Wert verwenden kann. (Als Delimeter in der Definitionzeile würde ich nun ein Komma , anstatt : oder _ nun präferieren). Für meine Rolladen, die ich demnächst per Funksteuerung aufrüste, oder zur Schaltung der vielen Fensterbank-Lampen meiner Frau könnte dies eine kompakte Steuerung sein.  Einzige Voraussetzung hiefür wäre jedoch noch den Schaltzeitpunkt als ausführbarer Perlcode angeben zu können, damit sunrise() und ähnliche Funktionen auch zur Verfügung stehen.( Der Appettit kommt beim Essen :) )

Gruß,
Ludger
Titel: Aw: Neues Modul - Heating_Control / Wochenschaltmodul
Beitrag von: Dietmar63 am 03 April 2013, 11:07:19
HC ist eigentlich schon eine ZSU - müßte nur umbenannt werden, ich traue mich nur nicht weil es schon recht weit verbreitet ist.

In den Sommermonaten werde ich wahrscheinlich nicht dazu kommen grundlegende Sachen an HC zu verändern.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 05 April 2013, 19:35:56
@ Gunther

Hast Du schon einmal weiter probiert woran es liegen könnte, dass du soviele LOVFs bekommst.

Ich habe mich ein wenig schlau gemacht, und geprüft, ob man irgendwie das verfügbare credit lesen kann, um dann die Temperatur nur dann zu setzen, wenn der credit auf einen bestimmten Wert wieder angewachsen ist.

Ich meine, man könnte es schon machen(im FHT): Softbuffer wäre das Stichwort, aber ich  weiß nicht genau, ob es in deinem Fall(bei 11 FHT) dann ausreicht. Das ganze wäre aufwendig, weil das FHT-Modul ganz anders fuktionieren würde.

Wenn ich es richtig gesehen habe, hattest Du die Probleme beim Start - weil gleich 3 Temperaturen gesetzt wurden.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 11 April 2013, 01:41:26
@Dietmar: Leider scheinen die LOVFs weiter zu kommen.

Hier mein Log:
2013.04.10 21:54:02 3: necessaryCredit------------>150
2013.04.10 21:54:02 3: key------------>1:1365623642.0966:0
2013.04.10 21:54:02 3: name------------>eg_ku_Heizung: desired-temp 19.0
2013.04.10 21:54:02 3: buffer------------>N/A
2013.04.10 21:54:02 3: credit10ms------------>497
2013.04.10 21:54:02 3: waitTime------------>0
2013.04.10 21:54:02 2: FHT set eg_ku_Heizung desired-temp 19.0
2013.04.10 21:54:02 3: waitTime------------>120
2013.04.10 21:54:02 3: Puffergroesse: 0
2013.04.10 21:54:02 3: necessaryCredit------------>150
2013.04.10 21:54:02 3: key------------>1:1365623642.30009:1
2013.04.10 21:54:02 3: name------------>eg_bz_Heizung: desired-temp 23.0
2013.04.10 21:54:02 3: buffer------------>1A04:4126
2013.04.10 21:54:02 3: Puffergroesse: 1
2013.04.10 21:54:02 3: SOFTBUFFERTIMER------------>30
2013.04.10 21:54:02 3: necessaryCredit------------>150
2013.04.10 21:54:02 3: key------------>1:1365623642.46482:2
2013.04.10 21:54:02 3: name------------>eg_ki_Heizung: desired-temp 15.0
2013.04.10 21:54:02 3: key------------>1:1365623642.30009:1
2013.04.10 21:54:02 3: name------------>eg_bz_Heizung: desired-temp 23.0
2013.04.10 21:54:02 3: buffer------------>1A04:4126
2013.04.10 21:54:02 3: Puffergroesse: 2
2013.04.10 21:54:32 3: necessaryCredit------------>150
2013.04.10 21:54:32 3: key------------>1:1365623642.46482:2
2013.04.10 21:54:32 3: name------------>eg_ki_Heizung: desired-temp 15.0
2013.04.10 21:54:32 3: key------------>1:1365623642.30009:1
2013.04.10 21:54:32 3: name------------>eg_bz_Heizung: desired-temp 23.0
2013.04.10 21:54:32 3: buffer------------>1A04:4126
2013.04.10 21:54:32 3: Puffergroesse: 2
2013.04.10 21:54:32 3: SOFTBUFFERTIMER------------>30
2013.04.10 21:55:02 3: necessaryCredit------------>150
2013.04.10 21:55:02 3: key------------>1:1365623642.46482:2
2013.04.10 21:55:02 3: name------------>eg_ki_Heizung: desired-temp 15.0
2013.04.10 21:55:02 3: key------------>1:1365623642.30009:1
2013.04.10 21:55:02 3: name------------>eg_bz_Heizung: desired-temp 23.0
2013.04.10 21:55:02 3: buffer------------>1A04:4126
2013.04.10 21:55:02 3: Puffergroesse: 2
2013.04.10 21:55:02 3: SOFTBUFFERTIMER------------>30
2013.04.10 21:55:32 3: necessaryCredit------------>150
2013.04.10 21:55:32 3: key------------>1:1365623642.46482:2
2013.04.10 21:55:32 3: name------------>eg_ki_Heizung: desired-temp 15.0
2013.04.10 21:55:32 3: key------------>1:1365623642.30009:1
2013.04.10 21:55:32 3: name------------>eg_bz_Heizung: desired-temp 23.0
2013.04.10 21:55:32 3: buffer------------>N/A
2013.04.10 21:55:32 3: credit10ms------------>506
2013.04.10 21:55:32 3: waitTime------------>0
2013.04.10 21:55:32 2: FHT set eg_bz_Heizung desired-temp 23.0
2013.04.10 21:55:32 3: waitTime------------>120
2013.04.10 21:55:32 3: Puffergroesse: 1
2013.04.10 21:55:32 3: SOFTBUFFERTIMER------------>120
2013.04.10 21:57:32 3: necessaryCredit------------>150
2013.04.10 21:57:32 3: key------------>1:1365623642.46482:2
2013.04.10 21:57:32 3: name------------>eg_ki_Heizung: desired-temp 15.0
2013.04.10 21:57:32 3: buffer------------>N/A
2013.04.10 21:57:32 3: credit10ms------------>504
2013.04.10 21:57:32 3: waitTime------------>0
2013.04.10 21:57:32 2: FHT set eg_ki_Heizung desired-temp 15.0
2013.04.10 21:57:32 3: waitTime------------>120
2013.04.10 21:57:32 3: Puffergroesse: 0
2013.04.10 22:00:00 3: necessaryCredit------------>150
2013.04.10 22:00:00 3: key------------>1:1365624000.02021:3
2013.04.10 22:00:00 3: name------------>eg_bz_Heizung: desired-temp 18.0
2013.04.10 22:00:00 3: buffer------------>1635:411E
2013.04.10 22:00:00 3: Puffergroesse: 1
2013.04.10 22:00:00 3: SOFTBUFFERTIMER------------>30
2013.04.10 22:00:00 3: FS20 set eg_ku_JalousieLinks off
2013.04.10 22:00:30 3: necessaryCredit------------>150
2013.04.10 22:00:30 3: key------------>1:1365624000.02021:3
2013.04.10 22:00:30 3: name------------>eg_bz_Heizung: desired-temp 18.0
2013.04.10 22:00:30 3: buffer------------>1635:411E
2013.04.10 22:00:30 3: Puffergroesse: 1
2013.04.10 22:00:30 3: SOFTBUFFERTIMER------------>30
2013.04.10 22:01:00 3: FS20 set eg_ku_JalousieRechts off
2013.04.10 22:01:00 3: necessaryCredit------------>150
2013.04.10 22:01:00 3: key------------>1:1365624000.02021:3
2013.04.10 22:01:00 3: name------------>eg_bz_Heizung: desired-temp 18.0
2013.04.10 22:01:00 3: buffer------------>N/A
2013.04.10 22:01:00 3: credit10ms------------>255
2013.04.10 22:01:00 3: waitTime------------>0
2013.04.10 22:01:00 2: FHT set eg_bz_Heizung desired-temp 18.0
2013.04.10 22:01:00 3: waitTime------------>120
2013.04.10 22:01:00 3: Puffergroesse: 0
2013.04.10 22:18:21 2: CUL_0: unknown message LOVF
2013.04.10 22:22:30 2: CUL_0: unknown message LOVF
2013.04.10 22:22:30 2: CUL_0: unknown message LOVF
2013.04.10 22:22:31 2: CUL_0: unknown message LOVF
2013.04.10 22:24:28 2: CUL_0: unknown message LOVF
2013.04.10 22:24:29 2: CUL_0: unknown message LOVF
2013.04.10 22:24:29 2: CUL_0: unknown message LOVF
2013.04.10 22:24:29 2: CUL_0: unknown message LOVF
2013.04.10 22:24:30 2: CUL_0: unknown message LOVF
2013.04.10 22:26:25 2: CUL_0: unknown message LOVF
2013.04.10 22:26:26 2: CUL_0: unknown message LOVF
2013.04.10 22:26:26 2: CUL_0: unknown message LOVF
2013.04.10 22:27:03 2: CUL_0: unknown message LOVF
2013.04.10 22:27:03 2: CUL_0: unknown message LOVF
2013.04.10 22:27:03 2: CUL_0: unknown message LOVF
2013.04.10 22:27:04 2: CUL_0: unknown message LOVF
2013.04.10 22:28:08 2: CUL_0: unknown message LOVF
2013.04.10 22:29:38 2: CUL_0: unknown message LOVF
2013.04.10 22:41:58 2: CUL_0: unknown message LOVF
2013.04.10 22:43:05 2: CUL_0: unknown message LOVF
2013.04.10 22:43:05 2: CUL_0: unknown message LOVF
2013.04.10 22:43:05 2: CUL_0: unknown message LOVF
2013.04.10 22:43:06 2: CUL_0: unknown message LOVF
2013.04.10 22:47:04 2: CUL_0: unknown message LOVF
2013.04.10 22:47:04 2: CUL_0: unknown message LOVF
2013.04.10 22:47:04 2: CUL_0: unknown message LOVF
2013.04.10 23:05:22 2: CUL_0: unknown message LOVF
2013.04.10 23:05:22 2: CUL_0: unknown message LOVF
2013.04.10 23:06:16 2: CUL_0: unknown message LOVF
2013.04.10 23:06:16 2: CUL_0: unknown message LOVF
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 11 April 2013, 03:25:07
@Gunther:


 2013.04.10 22:01:00 3: waitTime------------>0
 2013.04.10 22:01:00 2: FHT set eg_bz_Heizung desired-temp 18.0
 2013.04.10 22:01:00 3: waitTime------------>120
 2013.04.10 22:01:00 3: Puffergroesse: 0
 2013.04.10 22:18:21 2: CUL_0: unknown message LOVF
 2013.04.10 22:22:30 2: CUL_0: unknown message LOVF
 2013.04.10 22:22:30 2: CUL_0: unknown message LOVF
 2013.04.10 22:22:31 2: CUL_0: unknown message LOVF


ist das Protokoll vollständig?
zwischen 22:01 und 22:18 ist nichts passiert dann die LOVF.
HC ist jedenfalls nicht beteiligt, sonst würden wir passende Einträge im Log finden.

Gegen 22:01 Uhr hattest Du jedenfall noch ein credit in Höhe von 255
2013.04.10 22:01:00 3: credit10ms------------>255  

Sehr merkwürdig. Die LOVF kommen ab 22:18 alle zwei Minunten  - dann ist eine Lücke von ca. 15 Minuten.
Was verbraucht bei dir ab 22:15 Uhr die credits???

Bau mal bei Gelegenheit(morgen Abend) folgenden Befehl wieder ein:
define yy at +*00:01:00 get CUL_0 raw T02;; get CUL_0 raw X

Die Pufferung der FHT-Befehle hat jedenfalls funktioniert.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 11 April 2013, 03:39:16
in fhem.cfg?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 11 April 2013, 03:42:29
Habe es per Commandozeile wieder eingegeben...
Berichte nach den nächsten LOVFs...
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 11 April 2013, 06:20:39
Das Protokoll wird dadurch recht groß werden.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 11 April 2013, 14:16:44
Ich hoffe, es ist ok, wenn ich das Protokoll hier poste. Vielleicht hilft es ja.

2013.04.11 03:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  622
2013.04.11 03:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  682
2013.04.11 03:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  661
2013.04.11 03:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  681
2013.04.11 03:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  709
2013.04.11 03:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  581
2013.04.11 03:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  641
2013.04.11 03:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  619
2013.04.11 03:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  631
2013.04.11 03:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  691
2013.04.11 03:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  751
2013.04.11 03:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  745
2013.04.11 03:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  764
2013.04.11 03:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  784
2013.04.11 03:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  779
2013.04.11 03:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  691
2013.04.11 03:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  751
2013.04.11 03:55:54 2: CUL_0: unknown message F40
2013.04.11 03:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  681
2013.04.11 03:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  708
2013.04.11 03:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  727
2013.04.11 03:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  722
2013.04.11 04:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  636
2013.04.11 04:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  680
2013.04.11 04:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  578
2013.04.11 04:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  573
2013.04.11 04:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  633
2013.04.11 04:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  693
2013.04.11 04:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  576
2013.04.11 04:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  636
2013.04.11 04:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  622
2013.04.11 04:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  666
2013.04.11 04:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  694
2013.04.11 04:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  688
2013.04.11 04:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  723
2013.04.11 04:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  733
2013.04.11 04:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  736
2013.04.11 04:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  732
2013.04.11 04:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  759
2013.04.11 04:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  723
2013.04.11 04:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  783
2013.04.11 04:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  778
2013.04.11 04:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  781
2013.04.11 04:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  776
2013.04.11 04:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  755
2013.04.11 04:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  727
2013.04.11 04:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  770
2013.04.11 04:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  765
2013.04.11 04:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  791
2013.04.11 04:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  770
2013.04.11 04:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  772
2013.04.11 04:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  832
2013.04.11 04:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  892
2013.04.11 04:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 04:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  857
2013.04.11 04:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  892
2013.04.11 04:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  845
2013.04.11 04:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  855
2013.04.11 04:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  881
2013.04.11 04:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  859
2013.04.11 04:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 04:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  793
2013.04.11 04:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  837
2013.04.11 04:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  775
2013.04.11 04:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  818
2013.04.11 04:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  707
2013.04.11 04:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  743
2013.04.11 04:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  762
2013.04.11 04:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  789
2013.04.11 04:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  776
2013.04.11 04:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  836
2013.04.11 04:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  872
2013.04.11 04:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  827
2013.04.11 04:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  805
2013.04.11 04:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  865
2013.04.11 04:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 04:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  846
2013.04.11 04:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  800
2013.04.11 04:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  796
2013.04.11 04:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  792
2013.04.11 04:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  835
2013.04.11 04:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  846
2013.04.11 05:00:00 3: necessaryCredit------------>150
2013.04.11 05:00:00 3: key------------>1:1365649200.02382:4
2013.04.11 05:00:00 3: name------------>eg_ku_Heizung: desired-temp 22.0
2013.04.11 05:00:00 3: buffer------------>N/A
2013.04.11 05:00:00 3: credit10ms------------>832
2013.04.11 05:00:00 3: waitTime------------>0
2013.04.11 05:00:00 2: FHT set eg_ku_Heizung desired-temp 22.0
2013.04.11 05:00:00 3: waitTime------------>120
2013.04.11 05:00:00 3: Puffergroesse: 0
2013.04.11 05:00:00 3: necessaryCredit------------>150
2013.04.11 05:00:00 3: key------------>1:1365649200.21549:5
2013.04.11 05:00:00 3: name------------>eg_bz_Heizung: desired-temp 23.0
2013.04.11 05:00:00 3: buffer------------>1A04:412C
2013.04.11 05:00:00 3: Puffergroesse: 1
2013.04.11 05:00:00 3: SOFTBUFFERTIMER------------>30
2013.04.11 05:00:08 3: CUL_0 raw => 1A04:412C
CUL_0 raw => 21  841
2013.04.11 05:00:30 3: necessaryCredit------------>150
2013.04.11 05:00:30 3: key------------>1:1365649200.21549:5
2013.04.11 05:00:30 3: name------------>eg_bz_Heizung: desired-temp 23.0
2013.04.11 05:00:30 3: buffer------------>N/A
2013.04.11 05:00:30 3: credit10ms------------>756
2013.04.11 05:00:30 3: waitTime------------>0
2013.04.11 05:00:30 2: FHT set eg_bz_Heizung desired-temp 23.0
2013.04.11 05:00:30 3: waitTime------------>120
2013.04.11 05:00:30 3: Puffergroesse: 0
2013.04.11 05:01:08 3: CUL_0 raw => 3157:412E
CUL_0 raw => 21  706
2013.04.11 05:02:08 3: CUL_0 raw => 3157:412E
CUL_0 raw => 21  742
2013.04.11 05:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  688
2013.04.11 05:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  691
2013.04.11 05:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  702
2013.04.11 05:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  622
2013.04.11 05:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  585
2013.04.11 05:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  496
2013.04.11 05:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  450
2013.04.11 05:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  510
2013.04.11 05:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  521
2013.04.11 05:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  556
2013.04.11 05:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  583
2013.04.11 05:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  643
2013.04.11 05:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  703
2013.04.11 05:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  657
2013.04.11 05:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  626
2013.04.11 05:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  581
2013.04.11 05:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  641
2013.04.11 05:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  636
2013.04.11 05:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  696
2013.04.11 05:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  585
2013.04.11 05:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  645
2013.04.11 05:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  607
2013.04.11 05:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  578
2013.04.11 05:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  574
2013.04.11 05:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  534
2013.04.11 05:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  529
2013.04.11 05:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  589
2013.04.11 05:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  649
2013.04.11 05:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  677
2013.04.11 05:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  721
2013.04.11 05:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  781
2013.04.11 05:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  825
2013.04.11 05:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  853
2013.04.11 05:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  839
2013.04.11 05:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  835
2013.04.11 05:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  764
2013.04.11 05:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  727
2013.04.11 05:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  721
2013.04.11 05:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  668
2013.04.11 05:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  679
2013.04.11 05:43:09 3: CUL_0 raw => N/A
CUL_0 raw => 21  674
2013.04.11 05:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  661
2013.04.11 05:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  656
2013.04.11 05:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  700
2013.04.11 05:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  663
2013.04.11 05:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  649
2013.04.11 05:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  643
2013.04.11 05:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  703
2013.04.11 05:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  747
2013.04.11 05:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  807
2013.04.11 05:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  811
2013.04.11 05:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  741
2013.04.11 05:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  735
2013.04.11 05:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  755
2013.04.11 05:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  733
2013.04.11 05:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  736
2013.04.11 05:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  731
2013.04.11 06:00:11 3: CUL_0 raw => N/A
CUL_0 raw => 21  670
2013.04.11 06:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  597
2013.04.11 06:02:08 3: CUL_0 raw => N/AT156000A65EEB
CUL_0 raw => 21  575
2013.04.11 06:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  635
2013.04.11 06:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  695
2013.04.11 06:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  698
2013.04.11 06:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  643
2013.04.11 06:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  630
2013.04.11 06:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  648
2013.04.11 06:08:10 3: FS20 set eg_ku_JalousieRechts on
2013.04.11 06:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  558
2013.04.11 06:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  562
2013.04.11 06:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  574
2013.04.11 06:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  617
2013.04.11 06:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  555
2013.04.11 06:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  615
2013.04.11 06:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  675
2013.04.11 06:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  628
2013.04.11 06:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  616
2013.04.11 06:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  569
2013.04.11 06:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  629
2013.04.11 06:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  673
2013.04.11 06:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  733
2013.04.11 06:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  662
2013.04.11 06:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  682
2013.04.11 06:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  678
2013.04.11 06:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  690
2013.04.11 06:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  586
2013.04.11 06:26:10 3: FS20 set eg_ku_JalousieLinks on
2013.04.11 06:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  561
2013.04.11 06:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  540
2013.04.11 06:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  486
2013.04.11 06:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  546
2013.04.11 06:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  590
2013.04.11 06:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  551
2013.04.11 06:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  504
2013.04.11 06:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  564
2013.04.11 06:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  591
2013.04.11 06:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  603
2013.04.11 06:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  597
2013.04.11 06:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  477
2013.04.11 06:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  488
2013.04.11 06:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  500
2013.04.11 06:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  501
2013.04.11 06:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  415
2013.04.11 06:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  345
2013.04.11 06:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  372
2013.04.11 06:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  432
2013.04.11 06:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  361
2013.04.11 06:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  372
2013.04.11 06:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  416
2013.04.11 06:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  476
2013.04.11 06:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  496
2013.04.11 06:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  475
2013.04.11 06:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  495
2013.04.11 06:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  490
2013.04.11 06:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  478
2013.04.11 06:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  538
2013.04.11 06:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  436
2013.04.11 06:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  479
2013.04.11 06:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  523
2013.04.11 06:58:46 3: FS20 set k_WW_Zirkulationspumpe on
2013.04.11 06:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  496
2013.04.11 07:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  361
2013.04.11 07:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  421
2013.04.11 07:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  407
2013.04.11 07:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  467
2013.04.11 07:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  487
2013.04.11 07:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  467
2013.04.11 07:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  404
2013.04.11 07:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  416
2013.04.11 07:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  307
2013.04.11 07:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  286
2013.04.11 07:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  346
2013.04.11 07:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  325
2013.04.11 07:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  369
2013.04.11 07:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  388
2013.04.11 07:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  448
2013.04.11 07:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  426
2013.04.11 07:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  404
2013.04.11 07:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  382
2013.04.11 07:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  442
2013.04.11 07:18:46 3: FS20 set k_WW_Zirkulationspumpe off
2013.04.11 07:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  456
2013.04.11 07:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  450
2013.04.11 07:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  364
2013.04.11 07:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  333
2013.04.11 07:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  377
2013.04.11 07:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  437
2013.04.11 07:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  367
2013.04.11 07:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  379
2013.04.11 07:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  349
2013.04.11 07:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  376
2013.04.11 07:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  337
2013.04.11 07:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  397
2013.04.11 07:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  441
2013.04.11 07:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  501
2013.04.11 07:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  496
2013.04.11 07:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  491
2013.04.11 07:35:01 3: FS20 set k_WW_Zirkulationspumpe on
2013.04.11 07:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  498
2013.04.11 07:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  493
2013.04.11 07:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  487
2013.04.11 07:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  515
2013.04.11 07:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  452
2013.04.11 07:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  422
2013.04.11 07:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  343
2013.04.11 07:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  403
2013.04.11 07:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  389
2013.04.11 07:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  359
2013.04.11 07:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  419
2013.04.11 07:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  414
2013.04.11 07:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  408
2013.04.11 07:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  403
2013.04.11 07:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  463
2013.04.11 07:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  459
2013.04.11 07:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  495
2013.04.11 07:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  457
2013.04.11 07:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  509
2013.04.11 07:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  431
2013.04.11 07:55:01 3: FS20 set k_WW_Zirkulationspumpe off
2013.04.11 07:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  346
2013.04.11 07:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  300
2013.04.11 07:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  262
2013.04.11 07:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  322
2013.04.11 07:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  317
2013.04.11 08:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  288
2013.04.11 08:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  300
2013.04.11 08:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  213
2013.04.11 08:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  249
2013.04.11 08:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  284
2013.04.11 08:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  278
2013.04.11 08:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  183
2013.04.11 08:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  194
2013.04.11 08:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  164
2013.04.11 08:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   77
2013.04.11 08:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   31
2013.04.11 08:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   59
2013.04.11 08:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  119
2013.04.11 08:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  106
2013.04.11 08:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  149
2013.04.11 08:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  144
2013.04.11 08:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  171
2013.04.11 08:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  167
2013.04.11 08:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  211
2013.04.11 08:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  230
2013.04.11 08:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  265
2013.04.11 08:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  235
2013.04.11 08:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  157
2013.04.11 08:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  185
2013.04.11 08:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  188
2013.04.11 08:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  117
2013.04.11 08:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  103
2013.04.11 08:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   34
2013.04.11 08:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   94
2013.04.11 08:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   97
2013.04.11 08:30:00 3: necessaryCredit------------>150
2013.04.11 08:30:00 3: key------------>1:1365661800.09996:6
2013.04.11 08:30:00 3: name------------>eg_bz_Heizung: desired-temp 18.0
2013.04.11 08:30:00 3: buffer------------>N/A
2013.04.11 08:30:00 3: credit10ms------------>148
2013.04.11 08:30:00 2: FHT_CUL_SendQueueHandler: Not enough credit! credit10ms is 148, but we need 150. Waiting 7 seconds.
2013.04.11 08:30:00 3: waitTime------------>7
2013.04.11 08:30:00 3: Puffergroesse: 1
2013.04.11 08:30:00 3: SOFTBUFFERTIMER------------>7
2013.04.11 08:30:00 3: necessaryCredit------------>150
2013.04.11 08:30:00 3: key------------>1:1365661800.28178:7
2013.04.11 08:30:00 3: name------------>eg_ku_Heizung: desired-temp 15.0
2013.04.11 08:30:00 3: key------------>1:1365661800.09996:6
2013.04.11 08:30:00 3: name------------>eg_bz_Heizung: desired-temp 18.0
2013.04.11 08:30:00 3: buffer------------>N/A
2013.04.11 08:30:00 3: credit10ms------------>149
2013.04.11 08:30:00 2: FHT_CUL_SendQueueHandler: Not enough credit! credit10ms is 149, but we need 150. Waiting 6 seconds.
2013.04.11 08:30:00 3: waitTime------------>6
2013.04.11 08:30:00 3: Puffergroesse: 2
2013.04.11 08:30:07 3: necessaryCredit------------>150
2013.04.11 08:30:07 3: key------------>1:1365661800.28178:7
2013.04.11 08:30:07 3: name------------>eg_ku_Heizung: desired-temp 15.0
2013.04.11 08:30:07 3: key------------>1:1365661800.09996:6
2013.04.11 08:30:07 3: name------------>eg_bz_Heizung: desired-temp 18.0
2013.04.11 08:30:07 3: buffer------------>N/A
2013.04.11 08:30:07 3: credit10ms------------>155
2013.04.11 08:30:07 3: waitTime------------>0
2013.04.11 08:30:07 2: FHT set eg_bz_Heizung desired-temp 18.0
2013.04.11 08:30:07 3: waitTime------------>120
2013.04.11 08:30:07 3: Puffergroesse: 1
2013.04.11 08:30:07 3: SOFTBUFFERTIMER------------>120
2013.04.11 08:30:08 3: CUL_0 raw => 3157:4124
CUL_0 raw => 21  157
2013.04.11 08:31:08 3: CUL_0 raw => 3157:4124
CUL_0 raw => 21  134
2013.04.11 08:32:07 3: necessaryCredit------------>150
2013.04.11 08:32:07 3: key------------>1:1365661800.28178:7
2013.04.11 08:32:07 3: name------------>eg_ku_Heizung: desired-temp 15.0
2013.04.11 08:32:07 3: buffer------------>3157:4124
2013.04.11 08:32:07 3: Puffergroesse: 1
2013.04.11 08:32:07 3: SOFTBUFFERTIMER------------>30
2013.04.11 08:32:08 3: CUL_0 raw => 3157:4124
CUL_0 raw => 21  145
2013.04.11 08:32:37 3: necessaryCredit------------>150
2013.04.11 08:32:37 3: key------------>1:1365661800.28178:7
2013.04.11 08:32:37 3: name------------>eg_ku_Heizung: desired-temp 15.0
2013.04.11 08:32:37 3: buffer------------>3157:4124
2013.04.11 08:32:37 3: Puffergroesse: 1
2013.04.11 08:32:37 3: SOFTBUFFERTIMER------------>30
2013.04.11 08:33:07 3: necessaryCredit------------>150
2013.04.11 08:33:07 3: key------------>1:1365661800.28178:7
2013.04.11 08:33:07 3: name------------>eg_ku_Heizung: desired-temp 15.0
2013.04.11 08:33:07 3: buffer------------>3157:4124
2013.04.11 08:33:07 3: Puffergroesse: 1
2013.04.11 08:33:07 3: SOFTBUFFERTIMER------------>30
2013.04.11 08:33:08 3: CUL_0 raw => 3157:4124
CUL_0 raw => 21  205
2013.04.11 08:33:37 3: necessaryCredit------------>150
2013.04.11 08:33:37 3: key------------>1:1365661800.28178:7
2013.04.11 08:33:37 3: name------------>eg_ku_Heizung: desired-temp 15.0
2013.04.11 08:33:37 3: buffer------------>3157:4124
2013.04.11 08:33:37 3: Puffergroesse: 1
2013.04.11 08:33:37 3: SOFTBUFFERTIMER------------>30
2013.04.11 08:34:07 3: necessaryCredit------------>150
2013.04.11 08:34:07 3: key------------>1:1365661800.28178:7
2013.04.11 08:34:07 3: name------------>eg_ku_Heizung: desired-temp 15.0
2013.04.11 08:34:07 3: buffer------------>N/A
2013.04.11 08:34:07 3: credit10ms------------>149
2013.04.11 08:34:07 2: FHT_CUL_SendQueueHandler: Not enough credit! credit10ms is 149, but we need 150. Waiting 6 seconds.
2013.04.11 08:34:07 3: waitTime------------>6
2013.04.11 08:34:07 3: Puffergroesse: 1
2013.04.11 08:34:07 3: SOFTBUFFERTIMER------------>6
2013.04.11 08:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  151
2013.04.11 08:34:13 3: necessaryCredit------------>150
2013.04.11 08:34:13 3: key------------>1:1365661800.28178:7
2013.04.11 08:34:13 3: name------------>eg_ku_Heizung: desired-temp 15.0
2013.04.11 08:34:13 3: buffer------------>N/A
2013.04.11 08:34:13 3: credit10ms------------>155
2013.04.11 08:34:13 3: waitTime------------>0
2013.04.11 08:34:13 2: FHT set eg_ku_Heizung desired-temp 15.0
2013.04.11 08:34:13 3: waitTime------------>120
2013.04.11 08:34:13 3: Puffergroesse: 0
2013.04.11 08:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  171
2013.04.11 08:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  167
2013.04.11 08:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  179
2013.04.11 08:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  132
2013.04.11 08:38:40 2: CUL_0: unknown message LOVF
2013.04.11 08:38:40 2: CUL_0: unknown message LOVF
2013.04.11 08:38:40 2: CUL_0: unknown message LOVF
2013.04.11 08:38:41 2: CUL_0: unknown message LOVF
2013.04.11 08:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   29
2013.04.11 08:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   89
2013.04.11 08:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   44
2013.04.11 08:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   63
2013.04.11 08:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  107
2013.04.11 08:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   78
2013.04.11 08:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  138
2013.04.11 08:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  100
2013.04.11 08:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  128
2013.04.11 08:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  188
2013.04.11 08:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  183
2013.04.11 08:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  226
2013.04.11 08:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  286
2013.04.11 08:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  330
2013.04.11 08:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  390
2013.04.11 08:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  393
2013.04.11 08:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  289
2013.04.11 08:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  243
2013.04.11 08:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  255
2013.04.11 08:58:09 3: CUL_0 raw => N/A
CUL_0 raw => 21  307
2013.04.11 08:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  292
2013.04.11 09:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  269
2013.04.11 09:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  133
2013.04.11 09:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  193
2013.04.11 09:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  253
2013.04.11 09:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  313
2013.04.11 09:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  373
2013.04.11 09:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  157
2013.04.11 09:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  185
2013.04.11 09:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  229
2013.04.11 09:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  249
2013.04.11 09:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  276
2013.04.11 09:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  239
2013.04.11 09:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  179
2013.04.11 09:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  239
2013.04.11 09:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  299
2013.04.11 09:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  293
2013.04.11 09:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  305
2013.04.11 09:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  316
2013.04.11 09:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  294
2013.04.11 09:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  354
2013.04.11 09:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  414
2013.04.11 09:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  408
2013.04.11 09:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  402
2013.04.11 09:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  339
2013.04.11 09:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  334
2013.04.11 09:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  370
2013.04.11 09:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  332
2013.04.11 09:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  328
2013.04.11 09:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  314
2013.04.11 09:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  284
2013.04.11 09:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  344
2013.04.11 09:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  380
2013.04.11 09:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  424
2013.04.11 09:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  468
2013.04.11 09:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  528
2013.04.11 09:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  538
2013.04.11 09:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  565
2013.04.11 09:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  569
2013.04.11 09:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  604
2013.04.11 09:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  526
2013.04.11 09:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  562
2013.04.11 09:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  474
2013.04.11 09:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  451
2013.04.11 09:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  511
2013.04.11 09:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  530
2013.04.11 09:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  590
2013.04.11 09:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  536
2013.04.11 09:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  516
2013.04.11 09:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  576
2013.04.11 09:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  636
2013.04.11 09:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  696
2013.04.11 09:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  715
2013.04.11 09:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  653
2013.04.11 09:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  713
2013.04.11 09:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  690
2013.04.11 09:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  685
2013.04.11 09:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  613
2013.04.11 09:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  624
2013.04.11 09:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  667
2013.04.11 09:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  620
2013.04.11 10:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  591
2013.04.11 10:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  538
2013.04.11 10:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  598
2013.04.11 10:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  642
2013.04.11 10:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  637
2013.04.11 10:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  697
2013.04.11 10:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  568
2013.04.11 10:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  595
2013.04.11 10:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  573
2013.04.11 10:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  542
2013.04.11 10:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  537
2013.04.11 10:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  427
2013.04.11 10:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  487
2013.04.11 10:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  515
2013.04.11 10:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  575
2013.04.11 10:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  571
2013.04.11 10:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  524
2013.04.11 10:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  534
2013.04.11 10:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  594
2013.04.11 10:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  549
2013.04.11 10:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  609
2013.04.11 10:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  571
2013.04.11 10:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  458
2013.04.11 10:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  502
2013.04.11 10:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  546
2013.04.11 10:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  500
2013.04.11 10:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  478
2013.04.11 10:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  449
2013.04.11 10:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  444
2013.04.11 10:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  414
2013.04.11 10:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  458
2013.04.11 10:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  518
2013.04.11 10:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  546
2013.04.11 10:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  542
2013.04.11 10:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  602
2013.04.11 10:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  630
2013.04.11 10:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  642
2013.04.11 10:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  638
2013.04.11 10:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  549
2013.04.11 10:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  446
2013.04.11 10:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  441
2013.04.11 10:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  419
2013.04.11 10:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  479
2013.04.11 10:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  474
2013.04.11 10:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  501
2013.04.11 10:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  496
2013.04.11 10:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  499
2013.04.11 10:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  495
2013.04.11 10:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  489
2013.04.11 10:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  550
2013.04.11 10:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  586
2013.04.11 10:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  606
2013.04.11 10:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  626
2013.04.11 10:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  621
2013.04.11 10:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  517
2013.04.11 10:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  511
2013.04.11 10:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  522
2013.04.11 10:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  501
2013.04.11 10:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  496
2013.04.11 10:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  458
2013.04.11 11:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  485
2013.04.11 11:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  480
2013.04.11 11:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  474
2013.04.11 11:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  534
2013.04.11 11:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  594
2013.04.11 11:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  589
2013.04.11 11:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  543
2013.04.11 11:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  505
2013.04.11 11:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  565
2013.04.11 11:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  495
2013.04.11 11:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  555
2013.04.11 11:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  558
2013.04.11 11:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  602
2013.04.11 11:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  630
2013.04.11 11:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  690
2013.04.11 11:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  734
2013.04.11 11:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  705
2013.04.11 11:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  692
2013.04.11 11:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  752
2013.04.11 11:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  763
2013.04.11 11:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  823
2013.04.11 11:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  776
2013.04.11 11:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  665
2013.04.11 11:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  725
2013.04.11 11:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  736
2013.04.11 11:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  707
2013.04.11 11:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  693
2013.04.11 11:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  704
2013.04.11 11:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  681
2013.04.11 11:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  741
2013.04.11 11:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  736
2013.04.11 11:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  796
2013.04.11 11:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  840
2013.04.11 11:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 11:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  861
2013.04.11 11:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 11:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  846
2013.04.11 11:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  873
2013.04.11 11:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  835
2013.04.11 11:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  847
2013.04.11 11:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  792
2013.04.11 11:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  804
2013.04.11 11:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  757
2013.04.11 11:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  753
2013.04.11 11:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  747
2013.04.11 11:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  807
2013.04.11 11:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  801
2013.04.11 11:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  844
2013.04.11 11:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  888
2013.04.11 11:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  871
2013.04.11 11:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 11:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  828
2013.04.11 11:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  839
2013.04.11 11:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  899
2013.04.11 11:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  818
2013.04.11 11:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  878
2013.04.11 11:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  824
2013.04.11 11:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  826
2013.04.11 11:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  828
2013.04.11 11:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  839
2013.04.11 12:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  793
2013.04.11 12:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  714
2013.04.11 12:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  757
2013.04.11 12:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  792
2013.04.11 12:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  852
2013.04.11 12:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  867
2013.04.11 12:06:47 2: CUL_0: unknown message F40
2013.04.11 12:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  814
2013.04.11 12:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  874
2013.04.11 12:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  821
2013.04.11 12:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  832
2013.04.11 12:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  827
2013.04.11 12:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  871
2013.04.11 12:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  888
2013.04.11 12:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  874
2013.04.11 12:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  820
2013.04.11 12:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  815
2013.04.11 12:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  875
2013.04.11 12:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  874
2013.04.11 12:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  851
2013.04.11 12:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  837
2013.04.11 12:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  897
2013.04.11 12:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  837
2013.04.11 12:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  864
2013.04.11 12:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  809
2013.04.11 12:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  804
2013.04.11 12:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  823
2013.04.11 12:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  842
2013.04.11 12:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  822
2013.04.11 12:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  882
2013.04.11 12:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  831
2013.04.11 12:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  858
2013.04.11 12:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  853
2013.04.11 12:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  840
2013.04.11 12:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  785
2013.04.11 12:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  845
2013.04.11 12:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  849
2013.04.11 12:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  840
2013.04.11 12:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  851
2013.04.11 12:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  887
2013.04.11 12:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  810
2013.04.11 12:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  837
2013.04.11 12:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  857
2013.04.11 12:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  839
2013.04.11 12:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  899
2013.04.11 12:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  892
2013.04.11 12:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 12:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  767
2013.04.11 12:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  827
2013.04.11 12:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  815
2013.04.11 12:57:09 3: CUL_0 raw => N/A
CUL_0 raw => 21  775
2013.04.11 12:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  770
2013.04.11 12:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  798
2013.04.11 13:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  793
2013.04.11 13:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  796
2013.04.11 13:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  775
2013.04.11 13:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  835
2013.04.11 13:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  879
2013.04.11 13:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 13:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  862
2013.04.11 13:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  840
2013.04.11 13:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  747
2013.04.11 13:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  742
2013.04.11 13:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  632
2013.04.11 13:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  627
2013.04.11 13:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  671
2013.04.11 13:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  731
2013.04.11 13:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  791
2013.04.11 13:15:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  818
2013.04.11 13:16:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  813
2013.04.11 13:17:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  757
2013.04.11 13:18:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  752
2013.04.11 13:19:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  812
2013.04.11 13:20:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  872
2013.04.11 13:21:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  832
2013.04.11 13:22:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  803
2013.04.11 13:23:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  822
2013.04.11 13:24:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  752
2013.04.11 13:25:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  764
2013.04.11 13:26:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  726
2013.04.11 13:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  688
2013.04.11 13:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  682
2013.04.11 13:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  700
2013.04.11 13:30:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  760
2013.04.11 13:31:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  763
2013.04.11 13:32:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  823
2013.04.11 13:33:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  851
2013.04.11 13:34:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 13:35:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  874
2013.04.11 13:36:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  885
2013.04.11 13:37:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  880
2013.04.11 13:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  856
2013.04.11 13:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  875
2013.04.11 13:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 13:41:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  676
2013.04.11 13:42:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  736
2013.04.11 13:43:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  796
2013.04.11 13:44:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  724
2013.04.11 13:45:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  784
2013.04.11 13:46:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  796
2013.04.11 13:47:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  791
2013.04.11 13:48:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  851
2013.04.11 13:49:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 13:50:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  854
2013.04.11 13:51:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 13:52:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  900
2013.04.11 13:53:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  842
2013.04.11 13:54:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  837
2013.04.11 13:55:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  864
2013.04.11 13:56:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  810
2013.04.11 13:57:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  804
2013.04.11 13:58:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  799
2013.04.11 13:59:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  696
2013.04.11 14:00:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  740
2013.04.11 14:01:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  783
2013.04.11 14:02:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  762
2013.04.11 14:03:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  822
2013.04.11 14:04:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  752
2013.04.11 14:05:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  812
2013.04.11 14:06:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  758
2013.04.11 14:07:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  734
2013.04.11 14:08:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  754
2013.04.11 14:09:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  684
2013.04.11 14:10:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  704
2013.04.11 14:11:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  681
2013.04.11 14:12:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  741
2013.04.11 14:13:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  776
2013.04.11 14:14:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  836
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Michael N. am 11 April 2013, 18:17:30
Das Seltsame in Deinem Log ist, dass der Credit manchmal sinkt, obwohl (laut Log) überhaupt keine Befehle gesendet werden. Was macht(e) Deine Steuerung Deines Wissens nach denn z.B. "2013.04.11 08:20:08"? Hier sinkt der Credit, also wurde irgendetwas gesendet...
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 11 April 2013, 18:41:06
Hmm, ich weiß es nicht genau.

Meine Ideen:
1.) Ein FHT-Regler piept seit ein paar Tagen (Batterie).

2.) Ich habe 3 FS S300TH im Einsatz. Die sollen ja ähnlich wie die FHTs zu Funkproblemen führen.

3.) Also ich habe im Forum mal eine Art "Wecker" gefunden.
Den habe ich jetzt mal ausgebaut, da ich ihn nicht nutze:
# Wecker
# Weckzeit
#define Weckzeit dummy
#attr Weckzeit alias Stelle Weckzeit
#attr Weckzeit group Uhr wecken
#attr Weckzeit room Wecker
#attr Weckzeit setList #state:02:00:00,02:15:00,02:30:00,02:45:00,03:00:00,03:15:00,03:30:00,03:45:00,04:00:00,04:15:00,04:30:00,04:45:00,05:00:00,05:15:00,05:30:00,05:45:00,06:00:00,06:15:00,06:30:00,06:45:00,07:00:00,07:15.00,07:30:00,07:45:00,08:00:00,13:24:00
#attr Weckzeit webCmd state
#define Weckzimmer dummy
#attr Weckzimmer alias Stelle Weckzimmer
#attr Weckzimmer group Uhr wecken
#attr Weckzimmer room Wecker
#attr Weckzimmer setList state:eg_bz_Heizung,eg_ku_Heizung
#attr Weckzimmer webCmd state
#define Wecktemp dummy
#attr Wecktemp alias Stelle Temperatur
#attr Wecktemp group Uhr wecken
#attr Wecktemp room Wecker
#attr Wecktemp setList #state:15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0
#attr Wecktemp webCmd state
#define HeizWecker notify Weckzeit {\
#my $Weckz1 = ReadingsVal("Weckzeit", "state", undef);;\
#my $Weckzi1 = ReadingsVal("Weckzimmer", "state", undef);;\
#my $Wecktemp1 = ReadingsVal("Wecktemp", "state", undef);;\
#fhem ("define haus_heizungswecker at $Weckz1 set $Weckzi1 desired-temp $Wecktemp1");;\
Log 3 ,"eingestellte Weckzeit: $Weckz1 Zimmer: $Weckzi1 Temperatur: $Wecktemp1";;\
}
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 11 April 2013, 19:15:39
zwischen 8 und 9 Uhr hast du richtig viel Traffic wobei unklar ist wodurch er zustande kommt.
Befehle ans FHT sind es jedenfalls nicht.

Hier wird es eng - die Steuerung, die ich eingebaut habe funktioniert jedenfalls.
siehe Meldung: "2013.04.11 08:30:00 2: FHT_CUL_SendQueueHandler: Not enough credit! credit10ms is 148, but we need 150. Waiting 7 seconds."


CUL_0 raw => 21  103
2013.04.11 08:27:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   34
2013.04.11 08:28:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   94
2013.04.11 08:29:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   97
2013.04.11 08:30:00 3: necessaryCredit------------>150
2013.04.11 08:30:00 3: key------------>1:1365661800.09996:6
2013.04.11 08:30:00 3: name------------>eg_bz_Heizung: desired-temp 18.0
2013.04.11 08:30:00 3: buffer------------>N/A
2013.04.11 08:30:00 3: credit10ms------------>148
2013.04.11 08:30:00 2: FHT_CUL_SendQueueHandler: Not enough credit! credit10ms is 148, but we need 150. Waiting 7 seconds.


bzw. ... und dann sogar mit LOVF, die nicht durch FHT verursacht werden. Eventuell ist es incoming traffic:


CUL_0 raw => 21  179
2013.04.11 08:38:08 3: CUL_0 raw => N/A
CUL_0 raw => 21  132
2013.04.11 08:38:40 2: CUL_0: unknown message LOVF
2013.04.11 08:38:40 2: CUL_0: unknown message LOVF
2013.04.11 08:38:40 2: CUL_0: unknown message LOVF
2013.04.11 08:38:41 2: CUL_0: unknown message LOVF
2013.04.11 08:39:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   29
2013.04.11 08:40:08 3: CUL_0 raw => N/A
CUL_0 raw => 21   89


Ich versuche mal herauszubekommen ob man den Verkehr des CUL Log bekommen kann.
Wenn ich etwas habe melde ich mich.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 11 April 2013, 19:33:13
ZitatMeine Ideen:
 1.) Ein FHT-Regler piept seit ein paar Tagen (Batterie).

könnte bei Empfangsproblemen zu Wiederholungen und LOVF führen!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 11 April 2013, 19:45:26
Setze man den loglevel des cul_0 auf 3 dann bekommst du den native traffic ins Log geschrieben:

Sieht dann etwa so aus:


2013.04.11 19:42:00 3: CUL_0: T4C6000A600 -61.5
2013.04.11 19:41:32 3: CUL_0: T093841692B -38.5
2013.04.11 19:41:31 3: CUL_0: T093800A616 -38
2013.04.11 19:40:05 3: CUL_0: T4C6000A600 -61
2013.04.11 19:39:50 2: FHT set HeizungWohnen desired-temp 21.5
2013.04.11 19:39:50 3: SW: T0938412b
2013.04.11 19:39:50 3: SW: X
2013.04.11 19:39:50 3: SW: T02
2013.04.11 19:39:36 3: CUL_0: T093800A616 -38
2013.04.11 19:38:54 3: SW: Fe4e41100
2013.04.11 19:38:54 2: FS20 set Zirkulation off
2013.04.11 19:38:51 3: SW: Fe4e41111


Wenn dann LOVF kommen, müssen wir prüfen was den credit vorher heruntergezogen hat.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 11 April 2013, 19:59:22
Prüf mal die RSSI-Werte deiner FHT:


(siehe Anhang / see attachement)


Bei Werten unter -85 soll es eng werden.
Der Wert steht für die Empfangsqualität - vermutlich in db.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: rudolfkoenig am 12 April 2013, 09:49:45
>  Der Wert steht für die Empfangsqualität - vermutlich in db.

Nein, es steht fuer die Signalstaerke (Received Signal Strength Idicator) in dB.
Starke Signale koennen zwar haeufig besser empfangen werden, aber nicht immer.
Vgl. "normale" Lautstaerke in einem stillen Raum vs. Disco.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 12 April 2013, 22:21:08
Zitat von: Dietmar63 schrieb am Do, 11 April 2013 19:45Setze man den loglevel des cul_0 auf 3 dann bekommst du den native traffic ins Log geschrieben:

...

Wenn dann LOVF kommen, müssen wir prüfen was den credit vorher heruntergezogen hat.

Wie mache ich das? (loglevel auf 3 setzen)
Muss ich sonst noch etwas aktivieren?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 12 April 2013, 22:31:17
attr CUL_0 loglevel 3
im Eingabefeld eingeben

oder in der Oberfläche fhem->unsorted->CUL_0  
In der Detailansicht des CUL_0  unten hinter attr loglevel auswählen und im Feld dahinter 3 auswählen dann attr clicken.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 12 April 2013, 22:33:37
Zitat von: Dietmar63 schrieb am Do, 11 April 2013 19:59Prüf mal die RSSI-Werte deiner FHT:


(siehe Anhang / see attachement)


Bei Werten unter -85 soll es eng werden.
Der Wert steht für die Empfangsqualität - vermutlich in db.

Hier die Werte der FHTs (Sind teilweise recht weit enfernt vom Cul.)
CUL_0_RSSI   -89.5
CUL_0_RSSI   -81
CUL_0_RSSI   -84.5
CUL_0_RSSI   -76.5
CUL_0_RSSI   -86
CUL_0_RSSI   -74
CUL_0_RSSI   -61.5
CUL_0_RSSI   -81
CUL_0_RSSI   -56
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 12 April 2013, 22:42:06
-89 ist ziemlich schlecht:
http://www.fhemwiki.de/wiki/Kommunikationsprobleme_mit_FHT#Funklage_beobachten (//www.fhemwiki.de/wiki/Kommunikationsprobleme_mit_FHT#Funklage_beobachten)
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Gunther am 12 April 2013, 23:48:41
so hier mal detaillierter:

2013.04.12 22:00:00 3: necessaryCredit------------>150
2013.04.12 22:00:00 3: key------------>1:1365796800.0191:4
2013.04.12 22:00:00 3: name------------>eg_bz_Heizung: desired-temp 18.0
2013.04.12 22:00:00 3: buffer------------>N/A
2013.04.12 22:00:00 3: credit10ms------------>460
2013.04.12 22:00:00 3: waitTime------------>0
2013.04.12 22:00:00 2: FHT set eg_bz_Heizung desired-temp 18.0
2013.04.12 22:00:00 3: waitTime------------>120
2013.04.12 22:00:00 3: Puffergroesse: 0
2013.04.12 22:00:00 3: FS20 set eg_ku_JalousieLinks off
2013.04.12 22:01:00 3: FS20 set eg_ku_JalousieRechts off
2013.04.12 22:35:26 3: CUL_0: T0A0A00A6C1 -91
2013.04.12 22:35:35 3: CUL_0: T105700A600 -86.5
2013.04.12 22:35:45 3: CUL_0: T8CD71A02 -77.5
2013.04.12 22:35:45 3: CUL_0: T8CD71A82 -77
2013.04.12 22:35:50 3: CUL_0: T245400A600 -78
2013.04.12 22:36:01 3: CUL_0: T0C2200A600 -75
2013.04.12 22:36:15 3: CUL_0: T1A0400A600 -81
2013.04.12 22:36:21 3: CUL_0: T1560002636 -84.5
2013.04.12 22:36:52 3: CUL_0: TA805F102 -73
2013.04.12 22:36:52 3: CUL_0: TA805F182 -74
2013.04.12 22:36:55 3: CUL_0: T315700A601 -78.5
2013.04.12 22:36:56 3: CUL_0: T163500A600 -61.5
2013.04.12 22:37:03 3: CUL_0: T6AB18F02 -80.5
2013.04.12 22:37:03 3: CUL_0: T6AB18F82 -80
2013.04.12 22:37:07 3: CUL_0: T41FCD302 -86.5
2013.04.12 22:37:07 3: CUL_0: T031100B600 -56
2013.04.12 22:37:08 3: CUL_0: T987CB182 -89.5
2013.04.12 22:37:22 3: CUL_0: T0A0A00A6C1 -91.5
2013.04.12 22:37:34 3: CUL_0: T105700A600 -86
2013.04.12 22:37:47 3: CUL_0: T245400A600 -77.5
2013.04.12 22:37:47 3: CUL_0: T24544269A2 -77.5
2013.04.12 22:37:47 3: CUL_0: T2454436900 -77.5
2013.04.12 22:37:57 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:38:12 3: CUL_0: T1A0400A600 -81
2013.04.12 22:38:16 3: CUL_0: T156000A636 -84.5
2013.04.12 22:38:41 3: CUL_0: TF8E8B802 -86.5
2013.04.12 22:38:42 3: CUL_0: TF8E8B882 -86
2013.04.12 22:38:51 3: CUL_0: K21994089 -69.5
2013.04.12 22:38:54 3: CUL_0: T315700A601 -78.5
2013.04.12 22:38:54 3: CUL_0: T163500A600 -61.5
2013.04.12 22:38:55 3: CUL_0: T16354269CB -61.5
2013.04.12 22:38:55 3: CUL_0: T1635436900 -61
2013.04.12 22:38:55 3: CUL_0: T1635446900 -61.5
2013.04.12 22:39:02 3: CUL_0: T031100B600 -56
2013.04.12 22:39:10 3: CUL_0: T711C9402 -76.5
2013.04.12 22:39:11 3: CUL_0: T711C9482 -77
2013.04.12 22:39:18 3: CUL_0: T0A0A00A6C1 -91.5
2013.04.12 22:39:35 3: CUL_0: T10574269A5 -86
2013.04.12 22:39:35 3: CUL_0: T1057436900 -86
2013.04.12 22:39:43 3: CUL_0: T245400A600 -77
2013.04.12 22:39:44 3: CUL_0: T2454446900 -77
2013.04.12 22:39:53 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:39:53 3: CUL_0: T0C224269A5 -74.5
2013.04.12 22:39:54 3: CUL_0: T0C22436900 -74.5
2013.04.12 22:39:57 3: CUL_0: T8CD71A02 -77.5
2013.04.12 22:39:57 3: CUL_0: T8CD71A82 -77
2013.04.12 22:40:09 3: CUL_0: T1A0400A600 -81
2013.04.12 22:40:11 3: CUL_0: T156000A636 -85
2013.04.12 22:40:51 3: CUL_0: T1635002608 -61.5
2013.04.12 22:40:52 3: CUL_0: T315700A601 -78.5
2013.04.12 22:40:53 3: CUL_0: T31574269C4 -78
2013.04.12 22:40:53 3: CUL_0: T3157436900 -78
2013.04.12 22:40:53 3: CUL_0: T3157446900 -78
2013.04.12 22:40:58 3: CUL_0: T031100B600 -56
2013.04.12 22:41:05 3: CUL_0: T6AB18F82 -80.5
2013.04.12 22:41:06 3: CUL_0: TA805F102 -72
2013.04.12 22:41:06 3: CUL_0: TA805F182 -71.5
2013.04.12 22:41:14 3: CUL_0: T0A0A00A6C1 -92
2013.04.12 22:41:17 3: CUL_0: T41FCD302 -86.5
2013.04.12 22:41:17 3: CUL_0: T41FCD382 -86.5
2013.04.12 22:41:21 3: CUL_0: T987CB102 -88.5
2013.04.12 22:41:22 3: CUL_0: T987CB182 -88.5
2013.04.12 22:41:31 3: CUL_0: T105700A600 -85.5
2013.04.12 22:41:40 3: CUL_0: T245400A600 -77
2013.04.12 22:41:49 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:42:06 3: CUL_0: T156000A636 -84.5
2013.04.12 22:42:06 3: CUL_0: T1A0400A600 -81
2013.04.12 22:42:29 3: CUL_0: K01184238 -50
2013.04.12 22:42:49 3: CUL_0: T163500A608 -61.5
2013.04.12 22:42:53 3: CUL_0: T031100B600 -56
2013.04.12 22:42:58 3: CUL_0: TF8E8B882 -87
2013.04.12 22:43:02 3: CUL_0: T03114269AE -56
2013.04.12 22:43:03 3: CUL_0: T0311436900 -56.5
2013.04.12 22:43:03 3: CUL_0: T0311446900 -56
2013.04.12 22:43:10 3: CUL_0: T0A0A00A6C1 -92.5
2013.04.12 22:43:18 3: CUL_0: T711C9402 -76.5
2013.04.12 22:43:19 3: CUL_0: T711C9482 -77
2013.04.12 22:43:29 3: CUL_0: T105700A600 -86.5
2013.04.12 22:43:30 3: CUL_0: T10574269A5 -87
2013.04.12 22:43:30 3: CUL_0: T1057436900 -86.5
2013.04.12 22:43:31 3: CUL_0: T1057446900 -86.5
2013.04.12 22:43:37 3: CUL_0: T245400A600 -77
2013.04.12 22:43:45 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:44:01 3: CUL_0: T156000A636 -84.5
2013.04.12 22:44:03 3: CUL_0: T1A0400A600 -81
2013.04.12 22:44:09 3: CUL_0: T8CD71A02 -77.5
2013.04.12 22:44:09 3: CUL_0: T8CD71A82 -77
2013.04.12 22:44:46 3: CUL_0: T163500A608 -61.5
2013.04.12 22:44:49 3: CUL_0: T031100B600 -56
2013.04.12 22:45:07 3: CUL_0: T0A0A0026D7 -92.5
2013.04.12 22:45:07 3: CUL_0: T6AB18F02 -81
2013.04.12 22:45:08 3: CUL_0: T0A0A4269D4 -92.5
2013.04.12 22:45:20 3: CUL_0: TA805F102 -72.5
2013.04.12 22:45:20 3: CUL_0: TA805F182 -72
2013.04.12 22:45:26 3: CUL_0: K01189237 -50
2013.04.12 22:45:27 3: CUL_0: T41FCD382 -86.5
2013.04.12 22:45:28 3: CUL_0: T105700A600 -86.5
2013.04.12 22:45:34 3: CUL_0: T245400A600 -77
2013.04.12 22:45:36 3: CUL_0: T987CB182 -88.5
2013.04.12 22:45:41 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:45:41 3: CUL_0: T0C224269A5 -74.5
2013.04.12 22:45:42 3: CUL_0: T0C22436900 -74.5
2013.04.12 22:45:42 3: CUL_0: T0C22446900 -74.5
2013.04.12 22:45:56 3: CUL_0: T156000A636 -85
2013.04.12 22:46:00 3: CUL_0: T1A0400A600 -81
2013.04.12 22:46:44 3: CUL_0: T163500A608 -61.5
2013.04.12 22:46:48 3: CUL_0: T315700A601 -78
2013.04.12 22:47:02 3: CUL_0: T0A0A00A6D7 -91.5
2013.04.12 22:47:13 3: CUL_0: TF8E8B802 -86.5
2013.04.12 22:47:26 3: CUL_0: T105700A600 -86.5
2013.04.12 22:47:26 3: CUL_0: T711C9402 -76.5
2013.04.12 22:47:27 3: CUL_0: T711C9482 -76.5
2013.04.12 22:47:31 3: CUL_0: T245400A600 -77
2013.04.12 22:47:37 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:47:51 3: CUL_0: T156000A636 -84
2013.04.12 22:47:57 3: CUL_0: T1A0400A600 -81
2013.04.12 22:48:21 3: CUL_0: T8CD71A02 -77.5
2013.04.12 22:48:21 3: CUL_0: T8CD71A82 -77.5
2013.04.12 22:48:23 3: CUL_0: K01189237 -50
2013.04.12 22:48:40 3: CUL_0: T031100B600 -56
2013.04.12 22:48:41 3: CUL_0: T163500A608 -61.5
2013.04.12 22:48:46 3: CUL_0: T315700A601 -78
2013.04.12 22:48:58 3: CUL_0: T0A0A00A6D7 -91.5
2013.04.12 22:49:09 3: CUL_0: T6AB18F02 -81
2013.04.12 22:49:09 3: CUL_0: T6AB18F82 -81
2013.04.12 22:49:25 3: CUL_0: T105700A600 -86.5
2013.04.12 22:49:28 3: CUL_0: T245400A600 -77
2013.04.12 22:49:33 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:49:34 3: CUL_0: TA805F102 -73
2013.04.12 22:49:34 3: CUL_0: TA805F182 -73
2013.04.12 22:49:37 3: CUL_0: T41FCD302 -86.5
2013.04.12 22:49:46 3: CUL_0: T156000A636 -84.5
2013.04.12 22:49:46 3: CUL_0: T15604269A0 -85
2013.04.12 22:49:46 3: CUL_0: T1560436900 -85
2013.04.12 22:49:47 3: CUL_0: T1560446900 -85
2013.04.12 22:49:49 3: CUL_0: T987CB102 -89
2013.04.12 22:49:50 3: CUL_0: T987CB182 -88.5
2013.04.12 22:49:54 3: CUL_0: T1A0400A600 -81.5
2013.04.12 22:50:35 3: CUL_0: K21974089 -68.5
2013.04.12 22:50:35 3: CUL_0: T031100B600 -56
2013.04.12 22:50:39 3: CUL_0: T163500A608 -61.5
2013.04.12 22:50:45 3: CUL_0: T315700A601 -78
2013.04.12 22:50:54 3: CUL_0: T0A0A00A6D7 -92.5
2013.04.12 22:51:23 3: CUL_0: T105700A600 -86.5
2013.04.12 22:51:25 3: CUL_0: T245400A600 -77
2013.04.12 22:51:29 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:51:29 3: CUL_0: T0C224269A5 -74.5
2013.04.12 22:51:30 3: CUL_0: T0C22436900 -74.5
2013.04.12 22:51:30 3: CUL_0: T0C22446900 -74.5
2013.04.12 22:51:34 3: CUL_0: T711C9402 -76.5
2013.04.12 22:51:35 3: CUL_0: T711C9482 -76.5
2013.04.12 22:51:41 3: CUL_0: T156000A636 -84.5
2013.04.12 22:51:51 3: CUL_0: T1A0400A600 -81
2013.04.12 22:52:31 3: CUL_0: T031100B600 -56
2013.04.12 22:52:33 3: CUL_0: T8CD71A02 -77.5
2013.04.12 22:52:33 3: CUL_0: T8CD71A82 -77
2013.04.12 22:52:36 3: CUL_0: T1635002607 -61.5
2013.04.12 22:52:43 3: CUL_0: T315700A601 -78
2013.04.12 22:52:51 3: CUL_0: T0A0A00A6D7 -92
2013.04.12 22:53:11 3: CUL_0: T6AB18F02 -81
2013.04.12 22:53:11 3: CUL_0: T6AB18F82 -81
2013.04.12 22:53:22 3: CUL_0: T105700A600 -86.5
2013.04.12 22:53:22 3: CUL_0: T245400A600 -77
2013.04.12 22:53:23 3: CUL_0: T24544269A1 -77
2013.04.12 22:53:23 3: CUL_0: T2454436900 -77.5
2013.04.12 22:53:24 3: CUL_0: T2454446900 -77
2013.04.12 22:53:31 3: CUL_0: K21964089 -69
2013.04.12 22:53:36 3: CUL_0: T156000A636 -84.5
2013.04.12 22:53:47 3: CUL_0: T41FCD302 -86.5
2013.04.12 22:53:48 3: CUL_0: TA805F102 -73
2013.04.12 22:53:48 3: CUL_0: TA805F182 -73
2013.04.12 22:54:03 3: CUL_0: T987CB102 -88.5
2013.04.12 22:54:04 3: CUL_0: T987CB182 -89
2013.04.12 22:54:17 3: CUL_0: K01179237 -50
2013.04.12 22:54:26 3: CUL_0: T031100B600 -56
2013.04.12 22:54:34 3: CUL_0: T163500A607 -61.5
2013.04.12 22:54:35 3: CUL_0: T16354269CA -61
2013.04.12 22:54:35 3: CUL_0: T1635436900 -61.5
2013.04.12 22:54:35 3: CUL_0: T1635446900 -61.5
2013.04.12 22:54:42 3: CUL_0: T315700A601 -78
2013.04.12 22:54:46 3: CUL_0: T0A0A00A6D7 -92
2013.04.12 22:55:19 3: CUL_0: T245400A600 -77
2013.04.12 22:55:20 3: CUL_0: T105700A600 -86
2013.04.12 22:55:21 3: CUL_0: T0C2200A600 -74.5
2013.04.12 22:55:31 3: CUL_0: T156000A636 -84.5
2013.04.12 22:55:42 3: CUL_0: T711C9402 -76.5
2013.04.12 22:55:43 3: CUL_0: T711C9482 -76.5
2013.04.12 22:55:45 3: CUL_0: T1A0400A600 -81
2013.04.12 22:56:22 3: CUL_0: T031100B600 -56
2013.04.12 22:56:31 3: CUL_0: T163500A607 -61.5
2013.04.12 22:56:40 3: CUL_0: T315700A601 -78.5
2013.04.12 22:56:43 3: CUL_0: T0A0A00A6D7 -93
2013.04.12 22:56:45 3: CUL_0: T8CD71A02 -77.5
2013.04.12 22:56:45 3: CUL_0: T8CD71A82 -77
2013.04.12 22:57:13 3: CUL_0: T6AB18F02 -80
2013.04.12 22:57:13 3: CUL_0: T6AB18F82 -80
2013.04.12 22:57:14 3: CUL_0: K01174238 -50
2013.04.12 22:57:16 3: CUL_0: FD14B4200 -64
2013.04.12 22:57:17 2: IT set a2_eg_ez_Lampe on
2013.04.12 22:57:17 3: SW: is0000F0000F11
2013.04.12 22:57:17 3: CUL_0: FD14B4200 -66.5
2013.04.12 22:57:17 2: IT set a2_eg_ez_Lampe on
2013.04.12 22:57:17 3: SW: is0000F0000F11
2013.04.12 22:57:18 3: CUL_0: FD14B4000 -66.5
2013.04.12 22:57:18 2: IT set a1_eg_ki_Lampe off
2013.04.12 22:57:18 3: SW: is000000000F10
2013.04.12 22:57:19 3: CUL_0: T10574269A5 -85
2013.04.12 22:57:20 3: CUL_0: T1057436900 -85.5
2013.04.12 22:57:23 3: CUL_0: FD14B4200 -61
2013.04.12 22:57:23 2: IT set a2_eg_ez_Lampe on
2013.04.12 22:57:23 3: SW: is0000F0000F11
2013.04.12 22:57:42 3: CUL_0: T1A0400A600 -81
2013.04.12 22:57:57 3: CUL_0: T41FCD302 -86.5
2013.04.12 22:57:57 3: CUL_0: T41FCD382 -86.5
2013.04.12 22:58:02 3: CUL_0: TA805F102 -72
2013.04.12 22:58:02 3: CUL_0: TA805F182 -71.5
2013.04.12 22:58:17 3: CUL_0: T987CB102 -90.5
2013.04.12 22:58:17 3: CUL_0: T031100B600 -56
2013.04.12 22:58:29 3: CUL_0: T163500A607 -62
2013.04.12 22:58:39 3: CUL_0: T315700A601 -77.5
2013.04.12 22:58:39 3: CUL_0: T31574269C3 -77.5
2013.04.12 22:58:39 3: CUL_0: T3157436900 -77.5
2013.04.12 22:58:40 3: CUL_0: T3157446900 -77.5
2013.04.12 22:59:02 3: CUL_0: T03114269AE -56
2013.04.12 22:59:03 3: CUL_0: T0311436900 -56
2013.04.12 22:59:03 3: CUL_0: T0311446900 -56
2013.04.12 22:59:13 3: CUL_0: T0C2200A600 -72.5
2013.04.12 22:59:13 3: CUL_0: T245400A600 -76.5
2013.04.12 22:59:17 3: CUL_0: T105700A600 -86.5
2013.04.12 22:59:18 3: CUL_0: T10574269A5 -87.5
2013.04.12 22:59:18 3: CUL_0: T1057436900 -87.5
2013.04.12 22:59:19 3: CUL_0: T1057446900 -88
2013.04.12 22:59:21 3: CUL_0: T156000A636 -85.5
2013.04.12 22:59:39 3: CUL_0: T1A0400A600 -81.5
2013.04.12 22:59:50 3: CUL_0: T711C9402 -76
2013.04.12 22:59:51 3: CUL_0: T711C9482 -76
2013.04.12 23:00:00 3: necessaryCredit------------>150
2013.04.12 23:00:00 3: key------------>1:1365800400.01578:5
2013.04.12 23:00:00 3: name------------>eg_ki_Heizung: desired-temp 15.0
2013.04.12 23:00:00 3: SW: T02
2013.04.12 23:00:00 3: buffer------------>N/A
2013.04.12 23:00:00 3: SW: X
2013.04.12 23:00:00 3: credit10ms------------>559
2013.04.12 23:00:00 3: waitTime------------>0
2013.04.12 23:00:00 3: SW: T1635411e
2013.04.12 23:00:00 2: FHT set eg_ki_Heizung desired-temp 15.0
2013.04.12 23:00:00 3: waitTime------------>120
2013.04.12 23:00:00 3: Puffergroesse: 0
2013.04.12 23:00:01 3: CUL_0: TF8E8B802 -88.5
2013.04.12 23:00:02 3: CUL_0: TF8E8B882 -88
2013.04.12 23:00:11 3: CUL_0: K01174238 -50.5
2013.04.12 23:00:13 3: CUL_0: T031100B600 -55.5
2013.04.12 23:00:26 3: CUL_0: T163500A607 -62
2013.04.12 23:00:27 3: CUL_0: T163541691E -62
2013.04.12 23:00:37 3: CUL_0: T315700A601 -77.5
2013.04.12 23:00:57 3: CUL_0: T8CD71A02 -77
2013.04.12 23:01:09 3: CUL_0: T0C2200A600 -73
2013.04.12 23:01:10 3: CUL_0: T245400A600 -76
2013.04.12 23:01:15 3: CUL_0: T6AB18F02 -80.5
2013.04.12 23:01:15 3: CUL_0: T6AB18F82 -80
2013.04.12 23:01:16 3: CUL_0: T156000A636 -85.5
2013.04.12 23:01:16 3: CUL_0: T105700A600 -87.5
2013.04.12 23:01:16 3: CUL_0: T15604269A0 -85.5
2013.04.12 23:01:16 3: CUL_0: T1560436900 -85.5
2013.04.12 23:01:36 3: CUL_0: T1A0400A600 -81.5
2013.04.12 23:02:07 3: CUL_0: T41FCD302 -86
2013.04.12 23:02:07 3: CUL_0: T41FCD382 -86
2013.04.12 23:02:08 3: CUL_0: T031100B600 -56
2013.04.12 23:02:16 3: CUL_0: TA805F102 -71.5
2013.04.12 23:02:16 3: CUL_0: TA805F182 -71
2013.04.12 23:02:24 3: CUL_0: T1635002600 -62
2013.04.12 23:02:31 3: CUL_0: T987CB102 -89.5
2013.04.12 23:02:32 3: CUL_0: T987CB182 -90
2013.04.12 23:02:36 3: CUL_0: T315700A601 -77.5
2013.04.12 23:03:05 3: CUL_0: T0C2200A600 -74
2013.04.12 23:03:05 3: CUL_0: T0C224269A4 -74
2013.04.12 23:03:06 3: CUL_0: T0C22436900 -74
2013.04.12 23:03:06 3: CUL_0: T0C22446900 -74
2013.04.12 23:03:07 3: CUL_0: T245400A600 -74.5
2013.04.12 23:03:08 3: CUL_0: K01174238 -50
2013.04.12 23:03:11 3: CUL_0: T156000A636 -85.5
2013.04.12 23:03:11 3: CUL_0: T1560446900 -85.5
2013.04.12 23:03:14 3: CUL_0: T105700A600 -90
2013.04.12 23:03:26 3: CUL_0: K11618156 -74.5
2013.04.12 23:03:33 3: CUL_0: T1A0400A600 -81
2013.04.12 23:03:58 3: CUL_0: T711C9402 -75.5
2013.04.12 23:03:59 3: CUL_0: T711C9482 -75.5
2013.04.12 23:04:04 3: CUL_0: T031100B600 -56
2013.04.12 23:04:17 3: CUL_0: TF8E8B802 -91.5
2013.04.12 23:04:18 3: CUL_0: TF8E8B882 -91.5
2013.04.12 23:04:21 3: CUL_0: T163500A600 -62
2013.04.12 23:04:22 3: CUL_0: T163541691E -62
2013.04.12 23:04:34 3: CUL_0: T315700A601 -77.5
2013.04.12 23:05:01 3: CUL_0: T0C2200A600 -74
2013.04.12 23:05:01 3: CUL_0: T0C22446900 -74
2013.04.12 23:05:04 3: CUL_0: T245400A600 -74.5
2013.04.12 23:05:05 3: CUL_0: T24544269A0 -74.5
2013.04.12 23:05:05 3: CUL_0: T2454436900 -74.5
2013.04.12 23:05:06 3: CUL_0: T2454446900 -74.5
2013.04.12 23:05:09 3: CUL_0: T8CD71A02 -77.5
2013.04.12 23:05:09 3: CUL_0: T8CD71A82 -77
2013.04.12 23:05:13 3: CUL_0: T105700A600 -90
2013.04.12 23:05:17 3: CUL_0: T6AB18F02 -81
2013.04.12 23:05:17 3: CUL_0: T6AB18F82 -80.5
2013.04.12 23:05:30 3: CUL_0: T1A0400A600 -81.5
2013.04.12 23:05:31 3: CUL_0: T1A044269C4 -81.5
2013.04.12 23:05:31 3: CUL_0: T1A04436900 -81.5
2013.04.12 23:05:32 3: CUL_0: T1A04446900 -81.5
2013.04.12 23:05:59 3: CUL_0: T031100B600 -56
2013.04.12 23:06:05 3: CUL_0: K01164238 -50.5
2013.04.12 23:06:17 3: CUL_0: T41FCD302 -85
2013.04.12 23:06:17 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:06:19 3: CUL_0: T163500A600 -62
2013.04.12 23:06:23 3: CUL_0: K11618156 -75.5
2013.04.12 23:06:30 3: CUL_0: TA805F102 -72
2013.04.12 23:06:30 3: CUL_0: TA805F182 -71.5
2013.04.12 23:06:33 3: CUL_0: T315700A601 -77.5
2013.04.12 23:06:45 3: CUL_0: T987CB102 -91.5
2013.04.12 23:06:46 3: CUL_0: T987CB182 -92
2013.04.12 23:06:57 3: CUL_0: T0C2200A600 -74
2013.04.12 23:07:01 3: CUL_0: T156000A636 -85.5
2013.04.12 23:07:01 3: CUL_0: T245400A600 -74
2013.04.12 23:07:11 3: CUL_0: T105700A600 -90
2013.04.12 23:07:12 3: CUL_0: T1057446900 -89.5
2013.04.12 23:07:27 3: CUL_0: T1A0400A600 -81
2013.04.12 23:07:55 3: CUL_0: T031100B600 -56
2013.04.12 23:08:06 3: CUL_0: T711C9402 -75
2013.04.12 23:08:07 3: CUL_0: T711C9482 -75.5
2013.04.12 23:08:16 3: CUL_0: T163500A600 -62
2013.04.12 23:08:17 3: CUL_0: T16354269CA -61
2013.04.12 23:08:17 3: CUL_0: T1635436900 -62
2013.04.12 23:08:18 3: CUL_0: T1635446900 -62
2013.04.12 23:08:31 3: CUL_0: T315700A601 -77.5
2013.04.12 23:08:56 3: CUL_0: T156000A636 -85
2013.04.12 23:08:58 3: CUL_0: T245400A600 -75
2013.04.12 23:08:59 3: CUL_0: T2454446900 -75
2013.04.12 23:09:02 3: CUL_0: K01164238 -50
2013.04.12 23:09:10 3: CUL_0: T105700A600 -89.5
2013.04.12 23:09:10 3: CUL_0: T10574269A5 -88.5
2013.04.12 23:09:11 3: CUL_0: T1057436900 -88.5
2013.04.12 23:09:11 3: CUL_0: T1057446900 -88.5
2013.04.12 23:09:19 3: CUL_0: T6AB18F02 -80.5
2013.04.12 23:09:21 3: CUL_0: T8CD71A02 -77.5
2013.04.12 23:09:21 3: CUL_0: T8CD71A82 -77
2013.04.12 23:09:24 3: CUL_0: T1A0400A600 -80.5
2013.04.12 23:09:50 3: CUL_0: T031100B600 -56
2013.04.12 23:10:14 3: CUL_0: T163500A600 -62
2013.04.12 23:10:27 3: CUL_0: T41FCD302 -85.5
2013.04.12 23:10:27 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:10:30 3: CUL_0: T315700A601 -77.5
2013.04.12 23:10:30 3: CUL_0: T31574269C3 -77.5
2013.04.12 23:10:30 3: CUL_0: T3157436900 -77.5
2013.04.12 23:10:31 3: CUL_0: T3157446900 -77.5
2013.04.12 23:10:44 3: CUL_0: TA805F102 -71
2013.04.12 23:10:44 3: CUL_0: TA805F182 -70.5
2013.04.12 23:10:49 3: CUL_0: T0C2200A600 -74.5
2013.04.12 23:10:51 3: CUL_0: T156000A636 -84.5
2013.04.12 23:10:56 3: CUL_0: T245400A600 -75
2013.04.12 23:10:59 3: CUL_0: T987CB102 -92.5
2013.04.12 23:11:00 3: CUL_0: T987CB182 -92.5
2013.04.12 23:11:08 3: CUL_0: T105700A600 -88.5
2013.04.12 23:11:21 3: CUL_0: T1A0400A600 -81
2013.04.12 23:11:46 3: CUL_0: T031100B600 -55.5
2013.04.12 23:11:59 3: CUL_0: K01164238 -50
2013.04.12 23:12:12 3: CUL_0: T163500A600 -62
2013.04.12 23:12:15 3: CUL_0: T711C9482 -75.5
2013.04.12 23:12:28 3: CUL_0: T315700A601 -77.5
2013.04.12 23:12:45 3: CUL_0: T0C2200A600 -75
2013.04.12 23:12:46 3: CUL_0: T156000A636 -84.5
2013.04.12 23:12:49 3: CUL_0: TF8E8B802 -92.5
2013.04.12 23:12:50 3: CUL_0: TF8E8B882 -92
2013.04.12 23:12:52 3: CUL_0: T245400A600 -75.5
2013.04.12 23:13:07 3: CUL_0: T105700A600 -86.5
2013.04.12 23:13:18 3: CUL_0: T1A0400A600 -81
2013.04.12 23:13:21 3: CUL_0: T6AB18F02 -81
2013.04.12 23:13:33 3: CUL_0: T8CD71A02 -77.5
2013.04.12 23:13:33 3: CUL_0: T8CD71A82 -77
2013.04.12 23:13:41 3: CUL_0: T031100B600 -56
2013.04.12 23:14:09 3: CUL_0: T163500A600 -62
2013.04.12 23:14:27 3: CUL_0: T315700A601 -77.5
2013.04.12 23:14:37 3: CUL_0: T41FCD302 -85.5
2013.04.12 23:14:37 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:14:41 3: CUL_0: T156000A636 -84.5
2013.04.12 23:14:41 3: CUL_0: T0C2200A600 -75
2013.04.12 23:14:49 3: CUL_0: T245400A600 -75
2013.04.12 23:14:58 3: CUL_0: TA805F102 -70.5
2013.04.12 23:14:58 3: CUL_0: TA805F182 -70.5
2013.04.12 23:15:05 3: CUL_0: T105700A600 -89
2013.04.12 23:15:15 3: CUL_0: T1A0400A600 -81
2013.04.12 23:15:37 3: CUL_0: T031100B600 -56
2013.04.12 23:15:38 3: CUL_0: T03114269AE -56
2013.04.12 23:15:38 3: CUL_0: T0311436900 -56.5
2013.04.12 23:15:38 3: CUL_0: T0311446900 -56
2013.04.12 23:16:07 3: CUL_0: T163500A600 -61.5
2013.04.12 23:16:22 3: CUL_0: T711C9402 -75
2013.04.12 23:16:23 3: CUL_0: T711C9482 -75.5
2013.04.12 23:16:25 3: CUL_0: T315700A601 -77.5
2013.04.12 23:16:36 3: CUL_0: T156000A636 -85
2013.04.12 23:16:37 3: CUL_0: T0C2200A600 -75
2013.04.12 23:16:46 3: CUL_0: T245400A600 -75
2013.04.12 23:17:04 3: CUL_0: T105700A600 -90.5
2013.04.12 23:17:12 3: CUL_0: T1A0400A600 -81
2013.04.12 23:17:23 3: CUL_0: T6AB18F02 -81
2013.04.12 23:17:23 3: CUL_0: T6AB18F82 -80
2013.04.12 23:17:32 3: CUL_0: T031100B600 -56
2013.04.12 23:17:45 3: CUL_0: T8CD71A02 -77
2013.04.12 23:17:45 3: CUL_0: T8CD71A82 -77
2013.04.12 23:18:04 3: CUL_0: T163500A600 -62
2013.04.12 23:18:24 3: CUL_0: T315700A601 -77.5
2013.04.12 23:18:31 3: CUL_0: T156000A636 -84.5
2013.04.12 23:18:31 3: CUL_0: T15604269A0 -85.5
2013.04.12 23:18:31 3: CUL_0: T1560436900 -85
2013.04.12 23:18:32 3: CUL_0: T1560446900 -85
2013.04.12 23:18:33 3: CUL_0: T0C2200A600 -74.5
2013.04.12 23:18:43 3: CUL_0: T245400A600 -74.5
2013.04.12 23:18:47 3: CUL_0: T41FCD302 -85.5
2013.04.12 23:18:47 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:18:56 3: CUL_0: T0C224269A4 -74.5
2013.04.12 23:18:56 3: CUL_0: T0C22436900 -74.5
2013.04.12 23:18:57 3: CUL_0: T0C22446900 -74.5
2013.04.12 23:19:02 3: CUL_0: T105700A600 -90
2013.04.12 23:19:09 3: CUL_0: T1A0400A600 -81
2013.04.12 23:19:12 3: CUL_0: TA805F102 -71
2013.04.12 23:19:12 3: CUL_0: TA805F182 -70.5
2013.04.12 23:19:27 3: CUL_0: T987CB102 -90
2013.04.12 23:19:28 3: CUL_0: T987CB182 -90.5
2013.04.12 23:19:28 3: CUL_0: T031100B600 -56
2013.04.12 23:19:55 3: CUL_0: K21943089 -69
2013.04.12 23:20:02 3: CUL_0: T163500A600 -62
2013.04.12 23:20:22 3: CUL_0: T315700A601 -77.5
2013.04.12 23:20:26 3: CUL_0: T156000A636 -84.5
2013.04.12 23:20:26 3: CUL_0: T1560446900 -84.5
2013.04.12 23:20:29 3: CUL_0: T0C2200A600 -74.5
2013.04.12 23:20:30 3: CUL_0: T711C9402 -75.5
2013.04.12 23:20:31 3: CUL_0: T711C9482 -75.5
2013.04.12 23:20:40 3: CUL_0: T245400A600 -74.5
2013.04.12 23:20:50 3: CUL_0: K01154238 -50
2013.04.12 23:21:01 3: CUL_0: T105700A600 -89.5
2013.04.12 23:21:03 3: CUL_0: T24544269A1 -75
2013.04.12 23:21:04 3: CUL_0: T2454436900 -75
2013.04.12 23:21:06 3: CUL_0: T1A0400A600 -80.5
2013.04.12 23:21:14 3: CUL_0: T1A044269C4 -80.5
2013.04.12 23:21:14 3: CUL_0: T1A04436900 -81
2013.04.12 23:21:15 3: CUL_0: T1A04446900 -81
2013.04.12 23:21:23 3: CUL_0: T031100B600 -56
2013.04.12 23:21:25 3: CUL_0: T6AB18F02 -80.5
2013.04.12 23:21:25 3: CUL_0: T6AB18F82 -80
2013.04.12 23:21:57 3: CUL_0: T8CD71A02 -77.5
2013.04.12 23:21:57 3: CUL_0: T8CD71A82 -77
2013.04.12 23:21:59 3: CUL_0: T163500A600 -62
2013.04.12 23:22:00 3: CUL_0: T16354269C9 -61.5
2013.04.12 23:22:00 3: CUL_0: T1635436900 -62
2013.04.12 23:22:01 3: CUL_0: T1635446900 -62
2013.04.12 23:22:25 3: CUL_0: T0C2200A600 -74.5
2013.04.12 23:22:37 3: CUL_0: T245400A600 -74.5
2013.04.12 23:22:38 3: CUL_0: T24544269A1 -74.5
2013.04.12 23:22:38 3: CUL_0: T2454436900 -75
2013.04.12 23:22:39 3: CUL_0: T2454446900 -74.5
2013.04.12 23:22:57 3: CUL_0: T41FCD302 -85.5
2013.04.12 23:22:59 3: CUL_0: T105700A600 -90.5
2013.04.12 23:23:03 3: CUL_0: T1A0400A600 -81
2013.04.12 23:23:19 3: CUL_0: T031100B600 -56
2013.04.12 23:23:26 3: CUL_0: TA805F102 -68.5
2013.04.12 23:23:26 3: CUL_0: TA805F182 -68.5
2013.04.12 23:23:35 3: CUL_0: T10574269A5 -90
2013.04.12 23:23:35 3: CUL_0: T1057436900 -90
2013.04.12 23:23:36 3: CUL_0: T1057446900 -90.5
2013.04.12 23:23:41 3: CUL_0: T987CB102 -89.5
2013.04.12 23:23:47 3: CUL_0: K01154238 -50.5
2013.04.12 23:23:57 3: CUL_0: T163500A600 -62
2013.04.12 23:24:16 3: CUL_0: T156000A636 -85
2013.04.12 23:24:19 3: CUL_0: T315700A601 -77.5
2013.04.12 23:24:21 3: CUL_0: T0C2200A600 -74.5
2013.04.12 23:24:26 3: CUL_0: T31574269C2 -77.5
2013.04.12 23:24:26 3: CUL_0: T3157436900 -77.5
2013.04.12 23:24:35 3: CUL_0: T245400A600 -74.5
2013.04.12 23:24:38 3: CUL_0: T711C9402 -75.5
2013.04.12 23:24:39 3: CUL_0: T711C9482 -75
2013.04.12 23:24:58 3: CUL_0: T105700A600 -90
2013.04.12 23:25:00 3: CUL_0: T1A0400A600 -81
2013.04.12 23:25:14 3: CUL_0: T031100B600 -56
2013.04.12 23:25:27 3: CUL_0: T6AB18F02 -80.5
2013.04.12 23:25:27 3: CUL_0: T6AB18F82 -80
2013.04.12 23:25:37 3: CUL_0: TF8E8B802 -91.5
2013.04.12 23:25:38 3: CUL_0: TF8E8B882 -91
2013.04.12 23:25:54 3: CUL_0: T163500A600 -62
2013.04.12 23:26:09 3: CUL_0: T8CD71A02 -77
2013.04.12 23:26:09 3: CUL_0: T8CD71A82 -77
2013.04.12 23:26:11 3: CUL_0: T156000A636 -84.5
2013.04.12 23:26:17 3: CUL_0: T0C2200A600 -74
2013.04.12 23:26:19 3: CUL_0: T31574269C2 -77.5
2013.04.12 23:26:19 3: CUL_0: T3157436900 -77.5
2013.04.12 23:26:20 3: CUL_0: T3157446900 -77.5
2013.04.12 23:26:31 3: CUL_0: T245400A600 -75
2013.04.12 23:26:44 3: CUL_0: K01144238 -50
2013.04.12 23:26:56 3: CUL_0: T105700A600 -89
2013.04.12 23:26:57 3: CUL_0: T1A0400A600 -80.5
2013.04.12 23:27:07 3: CUL_0: T41FCD302 -85.5
2013.04.12 23:27:07 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:27:10 3: CUL_0: T031100A600 -56
2013.04.12 23:27:11 3: CUL_0: T03114269AF -56
2013.04.12 23:27:11 3: CUL_0: T0311436900 -56
2013.04.12 23:27:11 3: CUL_0: T0311446900 -56
2013.04.12 23:27:40 3: CUL_0: TA805F102 -68.5
2013.04.12 23:27:40 3: CUL_0: TA805F182 -68.5
2013.04.12 23:27:52 3: CUL_0: T163500A600 -61.5
2013.04.12 23:27:55 3: CUL_0: T987CB102 -90.5
2013.04.12 23:27:56 3: CUL_0: T987CB182 -91
2013.04.12 23:28:06 3: CUL_0: T156000A636 -85
2013.04.12 23:28:13 3: CUL_0: T0C2200A600 -74
2013.04.12 23:28:16 3: CUL_0: T315700A601 -77.5
2013.04.12 23:28:29 3: CUL_0: T245400A600 -75
2013.04.12 23:28:46 3: CUL_0: T711C9402 -75.5
2013.04.12 23:28:47 3: CUL_0: T711C9482 -75.5
2013.04.12 23:28:54 3: CUL_0: T1A0400A600 -81
2013.04.12 23:28:55 3: CUL_0: T105700A600 -89.5
2013.04.12 23:29:05 3: CUL_0: T031100A600 -56
2013.04.12 23:29:06 3: CUL_0: T0311446900 -56
2013.04.12 23:29:29 3: CUL_0: T6AB18F02 -80.5
2013.04.12 23:29:29 3: CUL_0: T6AB18F82 -80
2013.04.12 23:29:41 3: CUL_0: K01144238 -50
2013.04.12 23:29:49 3: CUL_0: T163500A600 -62
2013.04.12 23:30:01 3: CUL_0: T156000A636 -85
2013.04.12 23:30:09 3: CUL_0: T0C2200A600 -74
2013.04.12 23:30:15 3: CUL_0: T315700A601 -78
2013.04.12 23:30:21 3: CUL_0: T8CD71A02 -77
2013.04.12 23:30:21 3: CUL_0: T8CD71A82 -77
2013.04.12 23:30:25 3: CUL_0: T245400A600 -74.5
2013.04.12 23:30:51 3: CUL_0: T1A0400A600 -81
2013.04.12 23:30:53 3: CUL_0: T105700A600 -90
2013.04.12 23:31:01 3: CUL_0: T031100A600 -56.5
2013.04.12 23:31:17 3: CUL_0: T41FCD302 -85.5
2013.04.12 23:31:17 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:31:47 3: CUL_0: T163500A600 -62
2013.04.12 23:31:54 3: CUL_0: TA805F102 -69
2013.04.12 23:31:54 3: CUL_0: TA805F182 -69
2013.04.12 23:31:56 3: CUL_0: T156000A636 -85
2013.04.12 23:32:05 3: CUL_0: T0C2200A600 -74.5
2013.04.12 23:32:09 3: CUL_0: T987CB102 -91.5
2013.04.12 23:32:10 3: CUL_0: T987CB182 -91.5
2013.04.12 23:32:13 3: CUL_0: T315700A601 -77.5
2013.04.12 23:32:22 3: CUL_0: T245400A600 -74.5
2013.04.12 23:32:38 3: CUL_0: K01144238 -50
2013.04.12 23:32:48 3: CUL_0: T1A0400A600 -81
2013.04.12 23:32:51 3: CUL_0: K11608156 -74.5
2013.04.12 23:32:52 3: CUL_0: T105700A600 -90
2013.04.12 23:32:54 3: CUL_0: T711C9402 -75.5
2013.04.12 23:32:55 3: CUL_0: T711C9482 -75
2013.04.12 23:32:56 3: CUL_0: T031100A600 -56
2013.04.12 23:33:31 3: CUL_0: T6AB18F02 -80.5
2013.04.12 23:33:31 3: CUL_0: T6AB18F82 -80
2013.04.12 23:33:44 3: CUL_0: T163500A600 -62
2013.04.12 23:33:51 3: CUL_0: T156000A636 -85
2013.04.12 23:33:51 3: CUL_0: T15604269A0 -85.5
2013.04.12 23:33:51 3: CUL_0: T1560436900 -85
2013.04.12 23:33:52 3: CUL_0: T1560446900 -85
2013.04.12 23:34:01 3: CUL_0: T0C2200A600 -74
2013.04.12 23:34:09 3: CUL_0: TF8E8B802 -92
2013.04.12 23:34:10 3: CUL_0: TF8E8B882 -91.5
2013.04.12 23:34:12 3: CUL_0: T315700A601 -77.5
2013.04.12 23:34:19 3: CUL_0: T245400A600 -74.5
2013.04.12 23:34:33 3: CUL_0: T8CD71A02 -77.5
2013.04.12 23:34:33 3: CUL_0: T8CD71A82 -77
2013.04.12 23:34:45 3: CUL_0: T1A0400A600 -80.5
2013.04.12 23:34:50 3: CUL_0: T105700A600 -90.5
2013.04.12 23:34:52 3: CUL_0: T031100A600 -56
2013.04.12 23:34:56 3: CUL_0: T0C224269A4 -74
2013.04.12 23:35:27 3: CUL_0: T41FCD302 -85.5
2013.04.12 23:35:27 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:35:35 3: CUL_0: K01144238 -50
2013.04.12 23:35:42 3: CUL_0: T163500A600 -62
2013.04.12 23:35:46 3: CUL_0: T156000A636 -85.5
2013.04.12 23:35:48 3: CUL_0: K11608156 -74.5
2013.04.12 23:35:57 3: CUL_0: T0C2200A600 -74
2013.04.12 23:36:08 3: CUL_0: TA805F102 -71.5
2013.04.12 23:36:08 3: CUL_0: TA805F182 -71
2013.04.12 23:36:10 3: CUL_0: T315700A601 -78
2013.04.12 23:36:17 3: CUL_0: T245400A600 -75
2013.04.12 23:36:23 3: CUL_0: T987CB102 -91
2013.04.12 23:36:42 3: CUL_0: T1A0400A600 -81
2013.04.12 23:36:47 3: CUL_0: T031100A600 -56
2013.04.12 23:36:49 3: CUL_0: T105700A600 -90.5
2013.04.12 23:37:02 3: CUL_0: T711C9402 -75
2013.04.12 23:37:03 3: CUL_0: T711C9482 -75.5
2013.04.12 23:37:33 3: CUL_0: T6AB18F02 -80.5
2013.04.12 23:37:33 3: CUL_0: T6AB18F82 -80
2013.04.12 23:37:39 3: CUL_0: T163500A600 -62
2013.04.12 23:37:41 3: CUL_0: T156000A636 -85.5
2013.04.12 23:37:49 3: CUL_0: T16354269C8 -62
2013.04.12 23:37:49 3: CUL_0: T1635436900 -62
2013.04.12 23:37:50 3: CUL_0: T1635446900 -62
2013.04.12 23:37:53 3: CUL_0: T0C2200A600 -74
2013.04.12 23:38:09 3: CUL_0: T3157002600 -78
2013.04.12 23:38:13 3: CUL_0: T245400A600 -75
2013.04.12 23:38:14 3: CUL_0: T24544269A0 -75
2013.04.12 23:38:14 3: CUL_0: T2454436900 -75
2013.04.12 23:38:15 3: CUL_0: T2454446900 -75
2013.04.12 23:38:26 3: CUL_0: TF8E8B882 -92
2013.04.12 23:38:32 3: CUL_0: K01134238 -50
2013.04.12 23:38:39 3: CUL_0: T1A0400A600 -81
2013.04.12 23:38:40 3: CUL_0: T1A044269C4 -80.5
2013.04.12 23:38:40 3: CUL_0: T1A04436900 -81
2013.04.12 23:38:43 3: CUL_0: T031100A600 -56.5
2013.04.12 23:38:45 3: CUL_0: T8CD71A02 -77
2013.04.12 23:38:45 3: CUL_0: T8CD71A82 -77
2013.04.12 23:38:47 3: CUL_0: T105700A600 -91
2013.04.12 23:39:36 3: CUL_0: T156000A636 -85
2013.04.12 23:39:37 3: CUL_0: T163500A600 -62
2013.04.12 23:39:37 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:40:07 3: CUL_0: T315700A600 -78
2013.04.12 23:40:10 3: CUL_0: T245400A600 -75
2013.04.12 23:40:22 3: CUL_0: TA805F102 -71.5
2013.04.12 23:40:22 3: CUL_0: TA805F182 -71
2013.04.12 23:40:25 3: CUL_0: T31574269C2 -77.5
2013.04.12 23:40:26 3: CUL_0: T3157436900 -77.5
2013.04.12 23:40:26 3: CUL_0: T3157446900 -77.5
2013.04.12 23:40:36 3: CUL_0: T1A04002610 -81
2013.04.12 23:40:37 3: CUL_0: T1A04446900 -81
2013.04.12 23:40:38 3: CUL_0: T031100A600 -56.5
2013.04.12 23:40:46 3: CUL_0: T105700A600 -90.5
2013.04.12 23:40:46 3: CUL_0: T10574269A5 -91
2013.04.12 23:40:47 3: CUL_0: T1057436900 -90.5
2013.04.12 23:40:47 3: CUL_0: T1057446900 -91
2013.04.12 23:41:10 3: CUL_0: T711C9402 -75
2013.04.12 23:41:11 3: CUL_0: T711C9482 -75.5
2013.04.12 23:41:29 3: CUL_0: K01134238 -50
2013.04.12 23:41:31 3: CUL_0: T156000A636 -85.5
2013.04.12 23:41:34 3: CUL_0: T163500A600 -62
2013.04.12 23:41:35 3: CUL_0: T6AB18F02 -80.5
2013.04.12 23:41:35 3: CUL_0: T6AB18F82 -80
2013.04.12 23:41:45 3: CUL_0: T0C2200A600 -74
2013.04.12 23:41:46 3: CUL_0: T0C224269A4 -74.5
2013.04.12 23:41:46 3: CUL_0: T0C22436900 -74.5
2013.04.12 23:42:06 3: CUL_0: T315700A600 -78
2013.04.12 23:42:07 3: CUL_0: T245400A600 -75
2013.04.12 23:42:33 3: CUL_0: T1A0400A610 -81
2013.04.12 23:42:34 3: CUL_0: T031100A600 -56.5
2013.04.12 23:42:41 3: CUL_0: TF8E8B802 -91
2013.04.12 23:42:42 3: CUL_0: TF8E8B882 -90.5
2013.04.12 23:42:44 3: CUL_0: T105700A600 -90.5
2013.04.12 23:42:57 3: CUL_0: T8CD71A02 -77
2013.04.12 23:42:57 3: CUL_0: T8CD71A82 -77
2013.04.12 23:43:02 3: CUL_0: T03114269AF -56.5
2013.04.12 23:43:03 3: CUL_0: T0311436900 -56.5
2013.04.12 23:43:03 3: CUL_0: T0311446900 -56
2013.04.12 23:43:23 3: CUL_0: K21923089 -69
2013.04.12 23:43:32 3: CUL_0: T163500A600 -62
2013.04.12 23:43:41 3: CUL_0: T0C2200A600 -74
2013.04.12 23:43:47 3: CUL_0: T41FCD302 -85.5
2013.04.12 23:43:47 3: CUL_0: T41FCD382 -85.5
2013.04.12 23:44:04 3: CUL_0: T315700A600 -78
2013.04.12 23:44:04 3: CUL_0: T245400A600 -75
2013.04.12 23:44:26 3: CUL_0: K01134238 -50
2013.04.12 23:44:30 3: CUL_0: T031100A600 -56.5
2013.04.12 23:44:30 3: CUL_0: T1A0400A610 -81
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 13 April 2013, 03:32:55
Bitte parallel das
Define yy... Angeben
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 13 April 2013, 09:07:01
kannst du für die folgenden fht
41FC
6AB1
711C
8CD7
987C
A805
F8E8

das loglevel auch auf 3 setzen. Sie schicken merkwürdige Nachrichten.
Kannst du lange Protokolle als Datei anhängen. Der Thread wird sonst so unübersichtlich.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: John am 19 April 2013, 00:25:41
Hallo Dietmar,

folgende Erweiterung wäre für mich noch sinnvoll,
damit man einfach über die definierten Heating-controls iterieren kann.


(siehe Anhang / see attachement)


John
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 19 April 2013, 20:13:01
@john:

ich habe es so(116) gemacht: (etwas später, weil hash->{NAME} in Zeile 89 noch nicht versorgt war).


(siehe Anhang / see attachement)


und habe noch herausgefunden, dass man in undef auch noch etwas(245) machen sollte:


(siehe Anhang / see attachement)


Siehst du das genauso.
Wie kann ich das testen.
Hast du einen Vorschlag.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: John am 19 April 2013, 23:57:12
wie wärs damit :

...
    foreach my $aaa ( sort keys %{$modules{Heating_Control}{defptr}} )
    {
      my $strHCName=$modules{Heating_Control}{defptr}{$aaa}{NAME};
      Log  3,"$strHCName ";
    }
...
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 20 April 2013, 22:14:10
ich habe es eingecheckt - tests waren ok.
prüf mal, ob es funzt.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: John am 21 April 2013, 10:31:31
Hallo Dietmar,

funktioniert perfekt.
Vielen Dank

John
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 30 April 2013, 20:34:31
ich habe in HC auf folgende Anforderung hin  
Link (http://forum.fhem.de/index.php?topic=12583.msg75684#msg75684)

folgende Erweiterung vorgenommen:
Link (http://forum.fhem.de/index.php?topic=12583.msg75719#msg75719)

Es gibt nun eine allgemeine Funktion Heating_Control_SetAllTemps(), um für alle definierten HC die Temperatur setzen zu lassen. Beispielsweise um aus Ausnahmesituationen oder beim Wechsel von Bedingungen in einen anderen Modus zu wechseln.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: mgernoth am 03 Juni 2013, 10:52:02
Hallo Dietmar,

anscheinend bin ich auf einen Bug im Parsen von Wochentagen gestossen. Der Sonntag wird als Switchingtime 7 erzeugt (und nur bei Helpers angezeigt).

Minimales Beispiel:


fhem> define Heizung_Test dummy
fhem> define HS_Test Heating_Control Heizung_Test Mo-Su|06:00|16.00
fhem> list HS_Test
Internals:
   CFGFN
   DEF        Heizung_Test Mo-Su|06:00|16.00
   DEVICE     Heizung_Test
   NAME       HS_Test
   NR         241
   NTFY_TRIGGERTIME 2013-06-03 10:37:16
   PROFILE 1: Monday 06:00 16.00,
   PROFILE 2: Tuesday 06:00 16.00,
   PROFILE 3: Wednesday 06:00 16.00,
   PROFILE 4: Thursday 06:00 16.00,
   PROFILE 5: Friday 06:00 16.00,
   PROFILE 6: Saturday 06:00 16.00,
   STATE      waiting...
   TYPE       Heating_Control
   Readings:
     2013-06-03 10:37:16   nextUpdate      Heute, 10:37:46
     2013-06-03 10:37:16   nextValue       ???
     2013-06-03 10:37:16   state           waiting...
   Helper:
     DESIRED_TEMP_READING desired-temp
     SWITCHINGTIMES Mo-Su|06:00|16.00
     UNIT       °C
     Switchingtime:
       0:
       1:
         06:00      16.00
       2:
         06:00      16.00
       3:
         06:00      16.00
       4:
         06:00      16.00
       5:
         06:00      16.00
       6:
         06:00      16.00
       7:
         06:00      16.00
Attributes:


Definiere ich das gleiche aber mit Tagesnummern anstatt Kurznamen, funktioniert es:

fhem> define HS_Test Heating_Control Heizung_Test 1234567|06:00|16.00
fhem> list HS_Test
Internals:
   CFGFN
   DEF        Heizung_Test 1234567|06:00|16.00
   DEVICE     Heizung_Test
   NAME       HS_Test
   NR         244
   NTFY_TRIGGERTIME 2013-06-03 10:39:30
   PROFILE 0: Sonntag 06:00 16.00,
   PROFILE 1: Montag 06:00 16.00,
   PROFILE 2: Dienstag 06:00 16.00,
   PROFILE 3: Mittwoch 06:00 16.00,
   PROFILE 4: Donnerstag 06:00 16.00,
   PROFILE 5: Freitag 06:00 16.00,
   PROFILE 6: Samstag 06:00 16.00,
   STATE      waiting...
   TYPE       Heating_Control
   Readings:
     2013-06-03 10:39:30   nextUpdate      Heute, 10:40:00
     2013-06-03 10:39:30   nextValue       ???
     2013-06-03 10:39:30   state           waiting...
   Helper:
     DESIRED_TEMP_READING desired-temp
     SWITCHINGTIMES 1234567|06:00|16.00
     UNIT       °C
     Switchingtime:
       0:
         06:00      16.00
       1:
         06:00      16.00
       2:
         06:00      16.00
       3:
         06:00      16.00
       4:
         06:00      16.00
       5:
         06:00      16.00
       6:
         06:00      16.00
Attributes:


Ich nehme an, dass die if-Abfrage in Zeile 173, bzw. genauer die else-Behandlung in Zeile 176 dafür verantwortlich ist, da hier der Sonntag als Tag 7 definiert wird.


if ($low <= $high) {
        @subDays = ($low .. $high);
} else {
        @subDays = (1 .. $high, $low .. 7);
}


Müsste das nicht folgendermaßen aussehen?


        @subDays = (0 .. $high, $low .. 6);


Danke & Gruß
  Michael
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 03 Juni 2013, 16:10:36
mit welcher Codeversion hast du verglichen?
Wann hast du zuletzt aktualisiert?

Die interne Darstellung von Wochentagen war von Tobias ürsürünglich von 1-7(Mo-So) eingeführt worden.
Ich habe aus Vereinfachungsgründen auf die interne Perlcodierung 0-6(So-Sa, wie $wday) umgestellt - dann entfallen viele Sonderlocken und alles wird einfacher.

Vielleicht habe ich etwas übersehen.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: mgernoth am 03 Juni 2013, 16:29:29
Hallo Dietmar,

Zitat von: Dietmar63 schrieb am Mo, 03 Juni 2013 16:10mit welcher Codeversion hast du verglichen?
Wann hast du zuletzt aktualisiert?

Die von mir eingesetzte Version entspricht der im SVN trunk, habe vor dem Posting ein Fhem-Update gemacht und danach die Datei gegen einen SVN-checkout gedifft.

ZitatDie interne Darstellung von Wochentagen war von Tobias ürsürünglich von 1-7(Mo-So) eingeführt worden.
Ich habe aus Vereinfachungsgründen auf die interne Perlcodierung 0-6(So-Sa, wie $wday) umgestellt - dann entfallen viele Sonderlocken und alles wird einfacher.

Vielleicht habe ich etwas übersehen.

Ja, ich denke das ist an der Stelle passiert. Da ist noch die Logik mit So = 7 drin.

Danke & Gruß
  Michael
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 03 Juni 2013, 19:12:25
Du hast recht.
Die Stelle ist mir durchgerutscht - ich ändere den Code und lade das Modul wieder hoch.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 03 Juni 2013, 19:27:19
schon geschafft:


Internals:
   CFGFN      
   DEF        HeizungKueche Mo-Su|06:00|16.00
   DEVICE     HeizungKueche
   NAME       HS_Test
   NR         2304
   NTFY_TRIGGERTIME 2013-06-03 19:25:47
   PROFILE 0: Sunday 06:00 16.00,
   PROFILE 1: Monday 06:00 16.00,
   PROFILE 2: Tuesday 06:00 16.00,
   PROFILE 3: Wednesday 06:00 16.00,
   PROFILE 4: Thursday 06:00 16.00,
   PROFILE 5: Friday 06:00 16.00,
   PROFILE 6: Saturday 06:00 16.00,
   STATE      waiting...
   TYPE       Heating_Control
   Readings:
     2013-06-03 19:25:47   nextUpdate      Heute, 19:26:17
     2013-06-03 19:25:47   nextValue       ???
     2013-06-03 19:25:47   state           waiting...
   Helper:
     DESIRED_TEMP_READING desired-temp
     SWITCHINGTIMES Mo-Su|06:00|16.00
     Switchingtime:
       0:
         06:00      16.00
       1:
         06:00      16.00
       2:
         06:00      16.00
       3:
         06:00      16.00
       4:
         06:00      16.00
       5:
         06:00      16.00
       6:
         06:00      16.00
Attributes:
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: mgernoth am 03 Juni 2013, 20:12:49
Hi Dietmar,

super, Danke für die schnelle Behebung des Problems :-)

Gruß
  Michael
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 03 Juni 2013, 20:49:04
schon hochgeladen - prüf bitte, ob es lüppt.
ich habe noch ein wenig mehr geändert.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: mgernoth am 03 Juni 2013, 21:22:07
Hi Dietmar,

Scheint zu tun, zumindest passen die im "list" angezeigten Profile zu meiner Konfiguration (die jetzt wieder lesbarer ist, ich hatte gestern auf die Schnelle das ganze auf Tagesnummern umgestellt).

Also Danke nochmal :-)

Gruß
  Michael
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: cornelius fillmore am 17 Juni 2013, 18:31:12
Ich hänge mich mal hinten dran.

Kann es sein, das durch das Modul, die Heating_Control desired-temp jetzt dreifach die FHT gesendet wird?

Zitat2013-06-16_20:01:24 FHT_0c23 desired-temp 17.0
2013-06-16_20:01:24 FHT_0c23 desired-temp 21.0
2013-06-16_20:01:24 FHT_0c23 desired-temp 17.0
2013-06-16_20:02:24 FHT_0c23 actuator: 0%
2013-06-16_20:04:20 FHT_0c23 actuator: 0%
2013-06-16_20:05:22 FHT_0c23 desired-temp 17.0
2013-06-16_20:05:22 FHT_0c23 desired-temp 17.0
2013-06-16_20:05:22 FHT_0c23 desired-temp 21.0
2013-06-16_20:06:17 FHT_0c23 actuator: 0%
2013-06-16_20:07:11 FHT_0c23 desired-temp 21.0
2013-06-16_20:07:11 FHT_0c23 desired-temp 17.0
2013-06-16_20:07:11 FHT_0c23 desired-temp 17.0

Ich habe folgendes für das Modul eingegeben:
Zitat## Heizplan ##
### Wohnzimmer ###
define FHT_WZ_modofr Heating_Control FHT_0c23 145|06:00|21 145|22:00|17
attr FHT_WZ_modofr room Wohnzimmer
define FHT_WZ_dimi Heating_Control FHT_0c23 23|06:00|21 23|07:00|17 23|14:00|21 23|22:00|17
attr FHT_WZ_dimi room Wohnzimmer
define FHT_WZ_we Heating_Control FHT_0c23 67|07:00|21 67|23:00|17
attr FHT_WZ_we room Wohnzimmer
###
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 17 Juni 2013, 18:55:21
Ja das kann sein.
Du hast drei Definitionen ohne weitere Bedingung erstellt.
Sie funktionieren unabhängig voneinander!
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: cornelius fillmore am 17 Juni 2013, 22:38:50
Zitat von: Dietmar63 schrieb am Mo, 17 Juni 2013 18:55Ja das kann sein.
Du hast drei Definitionen ohne weitere Bedingung erstellt.
Sie funktionieren unabhängig voneinander!

Verstehe ich jetzt nicht.
Was für "Bedingungen" sollte ich denn noch einfügen?

Mach bitte mal ein Muster, von dem wie du das meinst.
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 17 Juni 2013, 23:11:20
jetzt habe ich gesehen, dass du Tagesangaben gemacht hast.
vielleicht hast du eine alte Version geladen - wir hatten einmal Probleme.

Was hast du installiert fhem 5.4?
Kannst du ein update durchführen?
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: cornelius fillmore am 19 Juni 2013, 17:03:23
Zitat von: Dietmar63 schrieb am Mo, 17 Juni 2013 23:11jetzt habe ich gesehen, dass du Tagesangaben gemacht hast.
vielleicht hast du eine alte Version geladen - wir hatten einmal Probleme.

Was hast du installiert fhem 5.4?
Kannst du ein update durchführen?

Ich hab mal ein update gemacht.

Jetzt scheint es zu gehen.

thx
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 19 Juni 2013, 17:06:52
Du könntest zum Beispiel alle Zeitpunkte in einem HC zusammenfassen.
Die Angabe der Tage kann per Sa, So, Sa-Fr erfolgen.

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: John am 03 Juli 2013, 09:45:22
Hallo Dietmar,

ich hatte in diesem Beitrag

Link (http://forum.fhem.de/index.php?topic=10011.msg70888#msg70888)

 das Thema time_offset angesprochen.

Du meintest Sommer wäre eine gute Zeit für dich darüber nachzudenken.
Hast du darüber nachgedacht ?

Ich kanns aber auch verstehen wenn du der Badhose den Vorzug gibts.

John
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: cerberus am 01 Oktober 2013, 08:16:41
Hallo, ich habe das Module Heating Control für mich jetzt entdeckt und schon einiges für meine FHT´s definiert. Nun meine Frage dazu. Da bei mir wochenweise die Zeit anders ist wann ich aufstehe bzw. auch nach Hause komme wäre es toll, wenn ich dem Module Heating Control sagen könnte, ob ich in eine ungerade bzw. geraden Woche bin um für die jeweilige Woche ein eigenes Heizprofil zu erstellen.

Gruß
cerberus
Titel: Heating_Control - Internationalisation for french
Beitrag von: oliv06 am 07 Oktober 2013, 21:05:37
I do not speak german so forgive me to speak english. I am french and I wanted to be able to translate this module in french. I looked at the code and I think it could be adapted this way.
Could you check please and integrate in the SVN if it is correct ?
Thanks a lot
Olivier

# diff -up 98_Heating_Control.pm.bak 98_Heating_Control.pm
--- 98_Heating_Control.pm.bak 2013-10-07 20:32:03.000000000 +0200
+++ 98_Heating_Control.pm 2013-10-07 20:52:05.000000000 +0200
@@ -80,6 +80,7 @@ Heating_Control_Define($$)
 
   my @Wochentage_de = ("Sonntag","Montag","Dienstag","Mittwoch", "Donnerstag","Freitag","Samstag" );
   my @Wochentage_en = ("Sunday", "Monday","Tuesday", "Wednesday","Thursday",  "Friday", "Saturday");
+  my @Wochentage_fr = ("Dimanche", "Lundi","Mardi", "Mercredi","Jeudi",  "Vendredi", "Samedi");
 
   return "invalid Device, given Device <$device> not found" if(!$defs{$device});
 
@@ -91,6 +92,7 @@ Heating_Control_Define($$)
   for (my $w=0; $w<@Wochentage_de; $w++) {
     delete($hash->{"PROFILE ".($w).": ".$Wochentage_de[$w]}) if($hash->{"PROFILE ".($w).": ".$Wochentage_de[$w]});
     delete($hash->{"PROFILE ".($w).": ".$Wochentage_en[$w]}) if($hash->{"PROFILE ".($w).": ".$Wochentage_en[$w]});
+    delete($hash->{"PROFILE ".($w).": ".$Wochentage_fr[$w]}) if($hash->{"PROFILE ".($w).": ".$Wochentage_fr[$w]});
   }
 
   for(my $i=0; $i<@a; $i++) {
@@ -116,8 +118,9 @@ Heating_Control_Define($$)
      $hash->{helper}{COMMAND} = $conditionOrCommand;
   }
 
-  my $daysRegExp    = "(mo|di|mi|do|fr|sa|so|tu|we|th|su)";
+  my $daysRegExp    = "(mo|di|mi|do|fr|sa|so|tu|we|th|su|lu|ma|me|je|ve)";
   my $daysRegExp_en = "(tu|we|th|su)";
+  my $daysRegExp_fr = "(lu|ma|me|je|ve)";
 
   my %dayNumber=();
   my $idx = 0;
@@ -128,8 +131,12 @@ Heating_Control_Define($$)
   foreach my $day  ("su","mo","tu","we","th","fr","sa") {
      $dayNumber{$day} = $idx; $idx++;
   }
+  $idx = 0;
+  foreach my $day  ("di","lu","ma","me","je","ve","sa") {
+     $dayNumber{$day} = $idx; $idx++;
+  }
 
-  my (@st, @days, $daylist, $time, $para, $englisch);
+  my (@st, @days, $daylist, $time, $para, $englisch, $french);
   for(my $i=0; $i<@switchingtimes; $i++) {
     
     @st = split(/\|/, $switchingtimes[$i]);
@@ -160,6 +167,7 @@ Heating_Control_Define($$)
         my $day = substr($daylist,0,2,"");
         my $del = substr($daylist,0,1,"");
         $englisch = ($day =~  m/^($daysRegExp_en)$/g);
+        $french = ($day =~  m/^($daysRegExp_fr)$/g);
         my @subDays;
         if ($oldDel eq "-" ){
            # von bis Angabe: Mo-Di
@@ -203,6 +211,8 @@ Heating_Control_Define($$)
   my $rWochentage;
   if ($englisch) {
      $rWochentage = \@Wochentage_en;
+  } elsif ($french) {
+     $rWochentage = \@Wochentage_fr;
   } else {
      $rWochentage = \@Wochentage_de;
   }

Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Otto am 09 Oktober 2013, 13:12:55
Hallo,

wie kann die HC neu starten, sodass die Werte neu abgeglichen werden.

Habe folgende Code
define HC_WZ Heating_Control Heiz_WZ_ClimRT_tr 12345|06:00|22 67|06:30|22 12345|20:00|18 67|21:00|18 (ReadingsVal("Verreist", "state", "Ja") eq "Nein")
attr HC_WZ room Heizung

define HC_Verreist notify Verreist:Ja {fhem ("set Heiz_WZ_ClimRT_tr desired-temp 16;; set Heiz_AZ_ClimRT_tr desired-temp 16") }


Wenn der dummy Verreist wieder auf Nein gestellt wird, möchte ich die "normalen" Werte zum Ventil schicken.

Wie geht das?

Gruß Otto
Titel: Aw: Neues Modul - Heating_Control
Beitrag von: Otto am 10 Oktober 2013, 15:39:56
Hallo,

ich habe es gefunden (http://forum.fhem.de/index.php?topic=12523.msg79237#msg79237):

define HeizStatus2            notify Heizung:.*                          {Heating_Control_SetAllTemps()}


Gruß Otto
Titel: Antw:Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 16 Oktober 2013, 22:50:40
Improvments to Heating_Control an WeekdayTimer:
- french language supported by autdetection
- param now supports a second parameter like on-for-timer:3456
- default switchparameter can be adjusted more elaborate

this may cause problems. If you want an other default behaviour - please contact me.
my %modifier = ("MAX"      => "desiredTemperature",
                  "FHT"      => "desired-temp",
                  "FS20"     => "",
                  "HM-CC-VD" => "desired-temp",
                  "HM-CC-TC" => "desired-temp" );



Titel: Antw:Neues Modul - Heating_Control
Beitrag von: Steffen am 17 Oktober 2013, 19:59:00
Guten Abend!

Habe seit Heute Update diese Fehlermeldung:
2013.10.17 19:06:05 2: CUL_HM set WaschKeller desired-temp 22.0
Use of uninitialized value $n in hash element at fhem.pl line 3001.
Use of uninitialized value in concatenation (.) or string at /opt/fhem/FHEM/98_Heating_Control.pm line 318.
2013.10.17 19:08:08 3: set Wz_Heizung1  21.0 : Unknown argument 21.0, choose one of burstXmit clear:readings,register,rssi,msgEvents desired-temp:on,off,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0 getConfig getRegRaw getSerial pair peerBulk raw regBulk regSet reset sign:on,off statusRequest sysTime unpair
2013.10.17 19:08:08 3: Unknown argument 21.0, choose one of burstXmit clear:readings,register,rssi,msgEvents desired-temp:on,off,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0 getConfig getRegRaw getSerial pair peerBulk raw regBulk regSet reset sign:on,off statusRequest sysTime unpair


Er stellt auch bei keiner der "Heating_Control define" die Temp. am Regler um.

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 17 Oktober 2013, 21:11:14
Kannst du mir sagen, welcher TYPE in den Internals deines Geräts mit dem Namen  Wz_Heizung1 angezeigt wird.
Ich vermute, dass du eventuell HM im Einsatz hast. Ich leider nicht, so kann ich diese Steuerungen leider nicht testen und war auf Vermutungen angewiesen und lag leider daneben.

Kommt dein TYPE in der folgenden Tabelle vor?
my %modifier = ("MAX"      => "desiredTemperature",
                  "FHT"      => "desired-temp",
                  "FS20"     => "",
                  "HM-CC-VD" => "desired-temp",
                  "HM-CC-TC" => "desired-temp" );
Titel: Antw:Neues Modul - Heating_Control
Beitrag von: Steffen am 17 Oktober 2013, 21:44:20
Zitat von: Dietmar63 am 17 Oktober 2013, 21:11:14
Kannst du mir sagen, welcher TYPE in den Internals deines Geräts mit dem Namen  Wz_Heizung1 angezeigt wird.
Ich vermute, dass du eventuell HM im Einsatz hast. Ich leider nicht, so kann ich diese Steuerungen leider nicht testen und war auf Vermutungen angewiesen und lag leider daneben.

Kommt dein TYPE in der folgenden Tabelle vor?
my %modifier = ("MAX"      => "desiredTemperature",
                  "FHT"      => "desired-temp",
                  "FS20"     => "",
                  "HM-CC-VD" => "desired-temp",
                  "HM-CC-TC" => "desired-temp" );


Hallo!

"TYPE: CUL_HM", hoffe hilft dir weiter und danke für die schnelle Antwort!

Mfg Steffen

Titel: Antw:Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 17 Oktober 2013, 22:19:45
Probier es nochmals nach einem update - der Fehler sollte behoben sein.
Titel: Antw:Neues Modul - Heating_Control
Beitrag von: Otto am 18 Oktober 2013, 05:58:55
Danke, Fehler ist behoben!

Gruß Otto
Titel: Antw:Neues Modul - Heating_Control
Beitrag von: AnonymousHolger am 18 Oktober 2013, 22:22:30
Hallo Dietmar,

hier noch einmal eine späte Huldigung.

Nachdem ich dich mit einigen Fragen zum Heating Control löchern musste läuft das Modul mit verschiedenen Profilen bei mir seit Monaten PERFEKT !!.

Genauso hatte ich mir das immer gewünscht um mit einem Parameter (Gäste Ja/Nein, Urlaub Ja/Nein) ohne viel Aufwand der ganzen FHT80 Umprogrammierung die Heizungsregler einfach zu kontrollieren.

Für den "Notfall" eines FHEM Gesamtabsturzes (z.B. Abrauchen der Fritzbox) habe ich dann noch Backupheizprofile in den FHTs, die nach Umstellung auf Automatik Modus den Zeitraum überbrücken können, bis FHEM wieder läuft.

Vielen Dank für dieses super Modul !!

Gruss

Holger
Titel: Antw:Neues Modul - Heating_Control
Beitrag von: cerberus am 19 Oktober 2013, 20:47:38
Hallo, ich finde das Module auch super und habe schon einiges damit umgesetzt.

@AnonymousHolger Mit den Schaltern für verschiedene Heizungsparameter finde ich eine gute Idee. Wie hast du das ganze umgesetzt? Wie machst du das mit z.B. zu Hause ja und Abwesend ja, setzt du zu Hause ja dann Abwesend automatisch auf nein bzw. oder auch andere Heizparameter?

Was ich noch umsetzten wollte ist zwischen Früh und Spätschicht zu unterscheiden. Da bei mir wochenweise Früh und Spätschicht wechselt wollte ich dafür auch je ein eigenes Heizprofil erstellen. Ich dachte daran auch hier einen Dummy zu definieren der z.B. Montags prüft ob der Dummy auf Früh oder Spät steht und dann entsprechend umschaltet.

Hier mein erster Code dazu. Ich weiß aber nicht ob das nicht eine Schleife ergibt. Hat jemand eine gute Idee wie ich abhängig vom vorherigen Status zu Beginn der Woche jeweils den Status wechsel?

define HP_Schicht dummy
attr HP_Schicht Schicht
attr HP_Schicht webCmd Fruehschicht:Spaetschicht
attr HP_Schicht room Heizung
attr HP_Schicht group Heizparameter
define nHP_Schicht_S notify HP_Schicht {\
if(( Value("HP_Schicht") eq "Fruehschicht") && ($wday == 1)) {\
fhem("set HP_Schicht mode Spaetschicht");;\
}\
}
define nHP_Schicht_F notify HP_Schicht {\
if(( Value("HP_Schicht") eq "Spaetschicht") && ($wday == 1)) {\
fhem("set HP_Schicht mode Fruehschicht");;\
}\
}



Gruß
cerberus
Titel: Antw:Neues Modul - Heating_Control
Beitrag von: Dietmar63 am 19 Oktober 2013, 22:28:57
Ich habe drei Profile für jeden Raum.

Das Schalten funktioniert bei mir nicht automatisch, sondern per Hand. Dazu habe ich ein dummy definiert, das per Weboberfläche drei Zustände einnehmen kann:
Aus,An,Übergangszeit.

In der Bedingung am Ende der HC-Definitionen rufe ich eine Perlfunktion auf, die true oder false zurückliefert und u. a. den Inhalt des dummys auswertet.

So könntest du es auch erst einmal machen.
Wenn du dann noch eine Automatik Früh-/Spätschicht willst, kannst du das Calendermdoul verwenden, und damit das dummy ändern: früh/spät/nacht; dann sogar änderbar über das Handy oder PC.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 21 Oktober 2013, 21:46:16
Allgemein besteht der Wunsch, dass die Angaben für die Schaltzeiten flexibler gestaltet werden sollten.
Zur Zeit ist nur die Angabe in der Form  HH:MM möglich.

In Kürze werde ich die beiden Module so erweitern/einchecken, dass es möglich ist eine beliebige Funktion u.a. auch sunrise_abs() für die Ermittlung der Schaltzeit zu nutzen. Die Funktion muss eine Zeit der Form HH:MM bzw. HH:MM:SS liefern. Die Schaltzeiten werden jede Nacht gegen 00:10 Uhr für den jeweiligen Tag neu ermittelt(damit z. Bsp. sunset richtig rechnet). Die Entwicklung habe ich abgeschlossen. Ich teste es noch ausgiebig.

Möglich wird dann beispielsweise folgendes sein:

define wdt1   WeekdayTimer    Brunnen    123|{sunrise_abs()}|off 4567|{sunset_abs()}|on
define wdt1   Heating_Control Brunnen    123|{sunrise_abs()}|off 4567|{sunset_abs()}|on
define wdt1   WeekdayTimer    Brunnen    123|{myFunction()}|off  4567|{myFunction()}|on
define wdt1   Heating_Control Brunnen    123|{myFunction()}|off  4567|{myFunction()}|on


Weitere Flexibilität ist gewünscht bei der Angabe der Tage an denen die Schaltzeit jeweils gelten soll.
Folgenden Vorschlag würde ich machen:
Ich führe die symbolischen Konstanten $we und !$we ein. $we umfasst die Tage Samstag, Sonntag und die Feiertage. !$we definert das Gegenteil, also Montag bis Freitag.

Dann sind folgende Definitionen für eine Schaltung möglich:


di-mi,$we|15:00|on-for-timer:20                                # Dienstag, Mittwoch und am Wochenende+Feiertage
123,$we|{sunset_abs()}|on                                      # Montag-Mittwoch    und am Wochenende+Feiertage
!$we,$we|{sunrise_abs()}|on                                    # Jeder Tag.

$we|15:00:05|13                                                # Am Wochenende und an Feiertagen
!$we|{sunrise("real","16:00","17:00")}|on-for-timer:20         # Montag-Freitag
 

Wie wäre das?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cerberus am 21 Oktober 2013, 22:00:58
Hallo Dietmar, das mit dem !$we für das Gegenteil vom Wochenende irritiert mich und würde meiner Meinung nach zur Verwirrung führen.

Ein Frage noch dazu. Wo definiere ich welcher Tag dann ein Feiertag ist?

Gruß
cerberus
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 21 Oktober 2013, 22:23:38
attr   global holiday2we      Niedersachsen

...\fhem\FHEM\Niedersachsen.holiday

Wenn !$we verwirrt kann ich es auch fort lassen.

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Damian am 21 Oktober 2013, 22:58:33
Zitat von: Dietmar63 am 21 Oktober 2013, 21:46:16
Ich führe die symbolischen Konstanten $we und !$we ein. $we umfasst die Tage Samstag, Sonntag und die Feiertage. !$we definert das Gegenteil, also Montag bis Freitag.

Wozu bei we das Dollarzeichen, mo-so haben auch keins;)

Ich denke das Modul ist gerade für Nichtprogrammierer gedacht und die müssen nicht wissen, wie Variablen in Perl aussehen. Und die Frage nach dem Ausrufungszeichen hat auch nicht lange auf sich warten lassen - nicht jeder hat mal C programmieren gelernt.


Gruß

Damian
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Otto am 22 Oktober 2013, 14:16:22
Hallo Dietmar,

ich finde die Idee super und denke mit einer Funktion und den Konstanten ist alles abgedeckt.


Gruß Otto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: hckoe am 22 Oktober 2013, 15:33:32
Hallo Dietmar,

wenn Du in $we Samstag, Sonntag, und Feiertage zusammenfassen willst, dann tut man sich bei Konfigurationen schwer, in denen der Samstag als normaler Werktag behandelt werden soll. Wie wäre es mit einem Attribut, auf welchen Tag ein Feiertag gemappt werden soll, z.B. wenn ein Feiertag wie ein Sonntag behandelt werden soll:
attr Heating_Control holidayMap So

Oder evtl. ein spezieller Feiertagname "Ft" oder "Hy" ?

Gruß
Helmut
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: AnonymousHolger am 22 Oktober 2013, 18:29:22
Hallo Cerberus,

hier mal mein "Heating_Control.cfg" (eingebunden mit Include in die fhem.cfg).

Ist noch nicht komplett fertig, da z.B. der Paraeter Jahreszeit nicht ausgewertet wird, und es sicherlich auch noch einiges an Verbesserungspotential gibt. Aber soweit hab ich es mit Dietmars Unterstützung erst einmal geschafft. Aufgrund des noch guten Wetters ist hier im Moment nicht so viel Optimierungsbedarf. Das ändert sich sicherlich sobald die Tage kälter werden.

Dann werde ich das sicherlich noch ein wenig überarbeiten ...

Sorry für die späte Antwort, war ein paar Tage offline.

Gruss

Holger

#manuelles aufrufen der Funktion im FHEM Fenster mit <trigger FHT_To_Manual>
#damit werden dann alle FHTs auf Manual Status umgestellt
define FHT_To_Manual notify FHT_To_Manual { \
  my @@fhts=devspec2array("TYPE=FHT");; \
      foreach(@@fhts) { \
        fhem ("set ".$_." mode manual");; \
    } \
}
attr FHT_To_Manual room 5_SYSTEM

define FHT_log_desired_temp notify FHT_log_desired_temp { \
  my @@fhts=devspec2array("TYPE=FHT");; \
      foreach(@@fhts) { \
        addLog("$_","desired-temp");; \
    } \
}
attr FHT_log_desired_temp room hidden

define addFHTlog_midnight1 at *23:59 trigger FHT_log_desired_temp
attr addFHTlog_midnight1 room hidden
define addFHTlog_midnight2 at *00:01 trigger FHT_log_desired_temp
attr addFHTlog_midnight2 room hidden
define addFHTlog_al2hours at +*02:00:00 trigger FHT_log_desired_temp
attr addFHTlog_al2hours room hidden


### Heizungsprofil(Jahreszeit(Sommer,Uebergang,Winter), WochenEnd_Feiertag(0,1), Gaeste(Ja,Nein), Homeoffice(Ja,Nein), zuHause (Ja,Nein), Abwesend (Ja,Nein)

############ Start OG GaesteZimmer & Bad Einstellung bei Nutzung (Gaeste = JA) oder nicht (Gaeste = Nein)

####### Gäste & nichtAbwesend = "G"
define FHT_OG_Bad_Control_G Heating_Control FHT_OG_Bad 07:00|21.00 10:30|18.0 18:00|21.0 22:30|18.0 (Heizungsprofil(undef, undef, "Ja", undef, undef, "Nein", "Profil_OG_Bad_Gaeste"))
attr FHT_OG_Bad_Control_G event-on-update-reading desired-temp
attr FHT_OG_Bad_Control_G group HEIZUNG_CONTROL
attr FHT_OG_Bad_Control_G room 1_HEIZUNG
define FHT_OG_SchlafZ_Control_G Heating_Control FHT_OG_SchlafZ 07:30|21.0 09:30|18.0 19:00|21.0 22:30|18.0 (Heizungsprofil(undef, undef, "Ja", undef, undef, "Nein", "Profil_OG_SchlafZ_Gaeste"))
attr FHT_OG_SchlafZ_Control_G event-on-update-reading desired-temp
attr FHT_OG_SchlafZ_Control_G group HEIZUNG_CONTROL
attr FHT_OG_SchlafZ_Control_G room 1_HEIZUNG
######## keineGäste & nichtAbwesend = "nG"
define FHT_OG_Bad_Control_nG Heating_Control FHT_OG_Bad 05:00|14.0 18:10|14.0 (Heizungsprofil(undef, undef, "Nein", undef, undef, "Nein", "Profil_OG_Bad_keineGaeste"))
attr FHT_OG_Bad_Control_nG event-on-update-reading desired-temp
attr FHT_OG_Bad_Control_nG group HEIZUNG_CONTROL
attr FHT_OG_Bad_Control_nG room 1_HEIZUNG
define FHT_OG_SchlafZ_Control_nG Heating_Control FHT_OG_SchlafZ 05:05|14.0 18:10|14.0 (Heizungsprofil(undef, undef, "Nein", undef, undef, "Nein", "Profil_OG_SchlafZ_keineGaeste"))
attr FHT_OG_SchlafZ_Control_nG event-on-update-reading desired-temp
attr FHT_OG_SchlafZ_Control_nG group HEIZUNG_CONTROL
attr FHT_OG_SchlafZ_Control_nG room 1_HEIZUNG
############# Ende OG GaesteZimmer & Bad

############ Start OG Arbeitszimmer mit und ohne Homeoffice Definition
####### Homeoffice & nichtAbwesend = "H"
define FHT_OG_AZ_Control_H Heating_Control FHT_OG_AZ 07:35|21.5 18:00|14.0 (Heizungsprofil(undef, undef, undef, "Ja", undef, "Nein", "Profil_OG_AZ_HomeOffice"))
attr FHT_OG_AZ_Control_H event-on-update-reading desired-temp
attr FHT_OG_AZ_Control_H group HEIZUNG_CONTROL
attr FHT_OG_AZ_Control_H room 1_HEIZUNG
####### kein Homeoffice & nichtAbwesend = "nH"
define FHT_OG_AZ_Control_nH Heating_Control FHT_OG_AZ 05:10|14.0 18:10|14.0 (Heizungsprofil(undef, undef, undef, "Nein", undef, "Nein", "Profil_OG_AZ_keinHomeOffice"))
attr FHT_OG_AZ_Control_nH event-on-update-reading desired-temp
attr FHT_OG_AZ_Control_nH group HEIZUNG_CONTROL
attr FHT_OG_AZ_Control_nH room 1_HEIZUNG
############# Ende OG GaesteZimmer & Bad

############ Start UG Definitionen
####### Badezimmer Wochentag & nichtAbwesend = WT
define FHT_UG_Bad_Control_WT Heating_Control FHT_UG_Bad 06:30|21.5 07:30|18.0 18:30|21.5 19:30|18.0 (Heizungsprofil(undef, 0, undef, undef, undef, "Nein", "Profil_UG_Bad_Wochentag"))
attr FHT_UG_Bad_Control_WT group HEIZUNG_CONTROL
attr FHT_UG_Bad_Control_WT room 1_HEIZUNG
####### Badezimmer Wochenend/Feiertag & nichtAbwesend = WE
define FHT_UG_Bad_Control_WE Heating_Control FHT_UG_Bad 07:30|21.5 08:30|18.0 19:30|21.5 20:30|18.0 (Heizungsprofil(undef, 1, undef, undef, undef, "Nein", "Profil_UG_Bad_Wochenend"))
attr FHT_UG_Bad_Control_WE group HEIZUNG_CONTROL
attr FHT_UG_Bad_Control_WE room 1_HEIZUNG

####### Kueche nichtAbwesend
define FHT_UG_Kueche_Control Heating_Control FHT_UG_Kueche 06:30|21.0 07:30|18.0 18:30|20.5 20:30|18.0 (Heizungsprofil(undef, undef, undef, undef, undef, "Nein", "Profil_UG_Kueche"))
attr FHT_UG_Kueche_Control group HEIZUNG_CONTROL
attr FHT_UG_Kueche_Control room 1_HEIZUNG

####### KiZi Wochentag & nichtAbwesend = WT
define FHT_UG_KiZi_Control_WT Heating_Control FHT_UG_KiZi 06:30|22.0 08:00|18.0 17:00|22.0 20:30|18.0 (Heizungsprofil(undef, 0, undef, undef, "Nein", "Nein", "Profil_UG_KiZi_Wochentag"))
attr FHT_UG_KiZi_Control_WT group HEIZUNG_CONTROL
attr FHT_UG_KiZi_Control_WT room 1_HEIZUNG
####### KiZi Wochentag + ZuHause & nichtAbwesend = WTH
define FHT_UG_KiZi_Control_WTH Heating_Control FHT_UG_KiZi 06:30|21.0 20:30|18.0 (Heizungsprofil(undef, 0, undef, undef, "Ja", "Nein", "Profil_UG_KiZi_WochentagZuHause"))
attr FHT_UG_KiZi_Control_WTH group HEIZUNG_CONTROL
attr FHT_UG_KiZi_Control_WTH room 1_HEIZUNG
####### KiZi WochenEnd/Feiertag & nichtAbwesend = WE
define FHT_UG_KiZi_Control_WE Heating_Control FHT_UG_KiZi 06:30|22.0 21:00|18.0 (Heizungsprofil(undef, 1, undef, undef, undef, "Nein","Profil_UG_KiZi_Wochenend"))
attr FHT_UG_KiZi_Control_WE group HEIZUNG_CONTROL
attr FHT_UG_KiZi_Control_WE room 1_HEIZUNG

####### SchlafZ & nichtAbwesend
define FHT_UG_SchlafZ_Control Heating_Control FHT_UG_SchlafZ 06:30|21.0 08:00|18.0 (Heizungsprofil(undef, undef, undef, undef, undef, "Nein","Profil_UG_SchlafZ"))
attr FHT_UG_SchlafZ_Control group HEIZUNG_CONTROL
attr FHT_UG_SchlafZ_Control room 1_HEIZUNG

####### WohnZ Wochentag & nichtAbwesend & nicht ZuHause= WT
define FHT_UG_WohnZ_Control_WT Heating_Control FHT_UG_WohnZ 06:30|23.0 07:00|23.0 08:30|23.0 16:30|23.0 22:30|18.0 (Heizungsprofil(undef, 0, undef, undef, "Nein", "Nein", "Profil_UG_WZ_Wochentag"))
attr FHT_UG_WohnZ_Control_WT group HEIZUNG_CONTROL
attr FHT_UG_WohnZ_Control_WT room 1_HEIZUNG
####### WohnZ Wochentag & nichtAbwesend & nicht ZuHause= WTH
define FHT_UG_WohnZ_Control_WTH Heating_Control FHT_UG_WohnZ 06:30|23.0 07:00|23.0 22:30|18.0 (Heizungsprofil(undef, 0, undef, undef, "Ja", "Nein", "Profil_UG_WZ_WochentagZuHause"))
attr FHT_UG_WohnZ_Control_WTH group HEIZUNG_CONTROL
attr FHT_UG_WohnZ_Control_WTH room 1_HEIZUNG
####### WohnZ Wochenend/Feiertag & nichtAbwesend = WE
define FHT_UG_WohnZ_Control_WE Heating_Control FHT_UG_WohnZ 06:30|23.0 07:00|23.0 22:30|18.0 (Heizungsprofil(undef, 1, undef, undef, undef, "Nein", "Profil_UG_WZ_Wochenend"))
attr FHT_UG_WohnZ_Control_WE group HEIZUNG_CONTROL
attr FHT_UG_WohnZ_Control_WE room 1_HEIZUNG

############ Start Abwesenheits Definition für alle Heizkörper
define FHT_OG_Bad_Control_OFF Heating_Control FHT_OG_Bad 00:01|14 (Heizungsprofil(undef, undef, undef, undef, undef, "Ja", "Profil_OG_Bad_Abwesend"))
attr FHT_OG_Bad_Control_OFF group HEIZUNG_CONTROL
attr FHT_OG_Bad_Control_OFF room 1_HEIZUNG
define FHT_OG_SchlafZ_Control_OFF Heating_Control FHT_OG_SchlafZ 00:01|14 (Heizungsprofil(undef, undef, undef, undef, undef, "Ja", "Profil_OG_SchlafZ_Abwesend"))
attr FHT_OG_SchlafZ_Control_OFF group HEIZUNG_CONTROL
attr FHT_OG_SchlafZ_Control_OFF room 1_HEIZUNG
define FHT_OG_AZ_Control_OFF Heating_Control FHT_OG_AZ 00:01|14 (Heizungsprofil(undef, undef, undef, undef, undef, "Ja", "Profil_OG_AZ_Abwesend"))
attr FHT_OG_AZ_Control_OFF event-on-update-reading desired-temp
attr FHT_OG_AZ_Control_OFF group HEIZUNG_CONTROL
attr FHT_OG_AZ_Control_OFF room 1_HEIZUNG
define FHT_UG_Bad_Control_OFF Heating_Control FHT_UG_Bad 00:02|14 (Heizungsprofil(undef, undef, undef, undef, undef, "Ja", "Profil_UG_Bad_Abwesend"))
attr FHT_UG_Bad_Control_OFF group HEIZUNG_CONTROL
attr FHT_UG_Bad_Control_OFF room 1_HEIZUNG
define FHT_UG_Kueche_Control_OFF Heating_Control FHT_UG_Kueche 00:02|14 (Heizungsprofil(undef, undef, undef, undef, undef, "Ja", "Profil_UG_Kueche_Abwesend"))
attr FHT_UG_Kueche_Control_OFF group HEIZUNG_CONTROL
attr FHT_UG_Kueche_Control_OFF room 1_HEIZUNG
define FHT_UG_KiZi_Control_OFF Heating_Control FHT_UG_KiZi 00:02|14 (Heizungsprofil(undef, undef, undef, undef, undef, "Ja", "Profil_UG_KiZi_Abwesend"))
attr FHT_UG_KiZi_Control_OFF group HEIZUNG_CONTROL
attr FHT_UG_KiZi_Control_OFF room 1_HEIZUNG
define FHT_UG_SchlafZ_Control_OFF Heating_Control FHT_UG_SchlafZ 00:03|14 (Heizungsprofil(undef, undef, undef, undef, undef, "Ja", "Profil_UG_SchlafZ_Abwesend"))
attr FHT_UG_SchlafZ_Control_OFF group HEIZUNG_CONTROL
attr FHT_UG_SchlafZ_Control_OFF room 1_HEIZUNG
define FHT_UG_WohnZ_Control_OFF Heating_Control FHT_UG_WohnZ 00:03|14 (Heizungsprofil(undef, undef, undef, undef, undef, "Ja", "Profil_UG_WohnZ_Abwesend"))
attr FHT_UG_WohnZ_Control_OFF group HEIZUNG_CONTROL
attr FHT_UG_WohnZ_Control_OFF room 1_HEIZUNG

define ProfileTriggerJZ notify JahresZeit:.* {Heating_Control_SetAllTemps()}
attr ProfileTriggerJZ group HEIZUNG_CONTROL_TRIGGER
attr ProfileTriggerJZ room hidden
define ProfileTriggerG notify Gaeste:.* {Heating_Control_SetAllTemps()}
attr ProfileTriggerG group HEIZUNG_CONTROL_TRIGGER
attr ProfileTriggerG room hidden
define ProfileTriggerHO notify HomeOffice:.* {Heating_Control_SetAllTemps()}
attr ProfileTriggerHO group HEIZUNG_CONTROL_TRIGGER
attr ProfileTriggerHO room hidden
define ProfileTriggerZH notify ZuHause:.* {Heating_Control_SetAllTemps()}
attr ProfileTriggerZH group HEIZUNG_CONTROL_TRIGGER
attr ProfileTriggerZH room hidden
define ProfileTriggerAW notify Abwesend:.* {Heating_Control_SetAllTemps()}
attr ProfileTriggerAW group HEIZUNG_CONTROL_TRIGGER
attr ProfileTriggerAW room hidden

define JahresZeit dummy
attr JahresZeit group HEIZUNGPARAMETER
attr JahresZeit icon icoTermHaus
attr JahresZeit room 1_HEIZUNG
attr JahresZeit webCmd Sommer:Uebergang:Winter
#attr JahresZeit sortby 04

define Gaeste dummy
attr Gaeste group HEIZUNGPARAMETER
attr Gaeste icon icoTermHaus
attr Gaeste room 1_HEIZUNG
attr Gaeste webCmd Ja:Nein
#attr Gaeste sortby 03

define HomeOffice dummy
attr HomeOffice group HEIZUNGPARAMETER
attr HomeOffice icon icoTermHaus
attr HomeOffice room 1_HEIZUNG
attr HomeOffice webCmd Ja:Nein
#attr HomeOffice sortby 02

define ZuHause dummy
attr ZuHause group HEIZUNGPARAMETER
attr ZuHause icon icoTermHaus
attr ZuHause room 1_HEIZUNG
attr ZuHause webCmd Ja:Nein
#attr ZuHause sortby B01

define Abwesend dummy
attr Abwesend group HEIZUNGPARAMETER
attr Abwesend icon icoTermHaus
attr Abwesend room 1_HEIZUNG
attr Abwesend webCmd Ja:Nein
#attr Abwesend sortby B05




Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Oktober 2013, 20:25:56
Ich Gegensatz zu dir bin ich der Meinung, dass es fast unmöglich ist fhem sinnvoll ohne Perlkenntnisse zu betreiben.
Jeder der es nutzt muss sich irgendwann damit auseinandersetzen - wenn ich nur an die vielen notify direkt in der fhem.cfg denke mit den Schrägstrichen an Ende der Zeilen. Wer Readings auswerten will muss ReadingsVal aufrufen ...

Meine Überlegung ging dahin, dass nahezu jeder die Variable $we kennen müsste - ich kann mich aber täuschen. Ich wollte deshalb die gleiche Logik für diese Neuerung verwenden. Es sollte alles gleich aussehen und auch gleich funktionieren.

Mit Fe habe ich noch ein Problem: HC und WD sind bald mehrsprachig(de,fr,en): dann müßte ich für jede Sprache den Wert Fe ergänzen. - Deshalbe $we - auch wenn es da Überschneidungen mit  Sa, So ... geben würde.

Ich aber offen für weitere Anregungen.



Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Damian am 22 Oktober 2013, 20:43:00
Wenn man an dieser Stelle, wo $we steht, eine beliebige globale Variable einsetzen könnte, dann gebe ich dir gerne Recht - im anderen Fall könnte es eher verwirrend sein, einen Pseudo-Variablennamen zu verwenden.

Gruß

Damian
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerMexikaner am 22 Oktober 2013, 22:28:11
Hallo zusammen,

Heating_Control ändert die Temperatur wie programmiert - aber auch, wenn ein Fenster geöffnet ist. Kann man Heating_Control so parametrieren, dass die Temperatur erst geändert wird, nachdem das Fenster wieder geschlossen ist?

Saludos,
Lutz
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Oktober 2013, 23:36:41
das kannst du doch den fht beibringen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerMexikaner am 23 Oktober 2013, 00:40:47
Hallo Dietmar,

Zitatdas kannst du doch den fht beibringen

Ich habe die HM-CC-RT-DN verbaut und finde dort in den Readings u.a.

ZitatR-winOpnTemp 12 C

Ich hätte nun erwartet, dass der Thermostat nun auf 12° bleibt bis das Fenster geschlossen ist und nicht vorher auf die neue Temperatur von Heating-Control geht.
Leider reicht meine kurze Erfahrung mit FHEM nicht, es meinen Thermostaten selber beizubringen - falls dies bei den RTs überhaupt möglich ist?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: John am 23 Oktober 2013, 08:21:20
Hallo Lutz
ZitatIch hätte nun erwartet, dass der Thermostat nun auf 12° bleibt bis das Fenster geschlossen ist und nicht vorher auf die neue Temperatur von Heating-Control geht.
Leider reicht meine kurze Erfahrung mit FHEM nicht, es meinen Thermostaten selber beizubringen - falls dies bei den RTs überhaupt möglich ist?

Ich habe dieselbe Erfahrung bei den Max-Thermostaten gemacht. Man kann bei "OpenWindow" tatsächlich den aktuellen Sollwert von "Open Window Temperature" mit einem neuen Sollwert überschreiben.
Da das HeatingControl nichts von Fensterkontakten weiss, macht es genau das, wenn die Sollwertänderung in den Zeitraum des offenen Fensters fällt.

Ich habe in den TemperaturScanner für MaxThermostate folgende Lösung implementiert:


@Dietmar
Ich nutze dein Modul sehr intensiv und läuft absolut zufriedenstellend. Besten Dank nochmal dafür.
HeatingControl wird vermutlich sehr häufig mit Heizungsthermostaten eingesetzt. (bei mir ist das so)
Fensterkontakte sind mittlerweile integraler Bestandteil der Systeme.
Für die einfache Anwendung wäre eine allgemeingültige Lösung (wie skizziert)  integriert in HeatingControl von großem Nutzen.


John
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: volschin am 23 Oktober 2013, 08:35:00
Hallo John,
bzgl. der Fensterkontakte kann ich Dir nur zustimmen. Ich beobachte Heating Control jetzt auch seit Kurzem, konnte mich aber u.a. aus diesem Grund bisher nicht für einen Einsatz entscheiden. Meine Thermostate laufen deshalb noch auf AUTO mit nur manuellem Eingriff. Ich bin aber dran hier noch zu optimieren, bevor die Heizperiode richtig anfängt. Das wird wohl nicht mehr lange auf sich warten lassen.

Gruß
Veit
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 Oktober 2013, 19:39:55
Ich habe keine Fensterkontakte im Einsatz, deshalb ist dieses Problem auch bisher nicht auf meinem Radarschirm gewesen.
Meinen FS20-FHT  kann ich einen Fensterkontakt bekannt machen, dann berücksichtigt dieser selbständig den Zustand des Fensters.

Viel Energie kann man meiner Meinung nach nicht damit sparen, deshalb habe ich auch nicht einmal die Ambitionen gehabt meine zwei Fensterkontakte überhaupt anzuschließen. Wenn das Fenster offen ist, geht der größte Verlust an Energie mit dem Austausch der Luft einher - das kann man nicht verhindern, indem man den Heizkörper herunterfährt, meist ist er zwar heiß,er verliert aber sicherlich sehr langsam die Energie - Es sei denn ihr lüftet stundenlang.

Ich mag daneben liegen mit meiner Einschätzung, aber so sehe ich es nun einmal.

Was passiert bei Eurer Lösung wenn während einer längeren Heizperiode (6:30|21° 18:30|17°) das Fenster geöffnet wird? Wer schaltet dann? Ich habe es so verstanden, dass der Heizwert von HC nur dann nicht durchgereicht wird, wenn HC schalten soll und  HC oder das Script feststellt, dass das Fenster geöffnet ist.

Ich würde folgendes machen - große Lösung:
Dein Script könnte man in ein Modul verwandeln, dass wie mein FHT(FS20) funktioniert. Es ist für die Kommunikation mit den HeizkörperThermostaten zuständig. Es müsste wie die FHT regelmäßig nachsehen, ob ein Fenster offen ist, und die Fensteroffentemperatur einstellen. HC kommuniziert dann nicht mehr direkt mit den HeizkörperThermostaten, sondern mit den virtuellen FHT.

Das Modul PID macht meiner Meinung nach so etwas ähnliches.
Threshold ist auch ein Kandidat für diese Aufgabe.

Diese Module könnten als Vorlage für das neue Modul dienen, wenn sie nicht sogar direkt verwendet werden können.

kleine Lösung:
Eine andere Möglichkeit könnte darin zu bestehen das Problem mit zwei notify zu lösen.

Mehrere notify lauschen auf Fenster offen:

define notify FensterKüche:offen            { set HeizungKüche desired-temp 15 }
define notify FensterWohnen:offen           { set HeizungWohnen desired-temp 15 }



ein notify schaltet wieder über HC die Solltemperatur ein:
define notify Fenster.*:geschlossen { {Heating_Control_SetAllTemps()} }
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 Oktober 2013, 20:13:27
Ich habe diese zwei notify angelegt:

define f1               notify FensterWohnen:offen      set HeizungWohnen desired-temp 15
define fa               notify Fenster.*:geschlossen    {Heating_Control_SetAllTemps()}


und mit trigger ... getestet, ob es funktioniert - und siehe da es klappt!
Ich müßt also nur die genaue Definition Eurer Fensterkontakte erfassen und hoffen, dass die Readings feuern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: John am 23 Oktober 2013, 20:38:38
Hallo Dietmar,
das wird so bei den modernen Thermostaten nicht funktionieren:

Festerkontakt
Der ist direkt gepaart mit dem Thermostat. Das Thermostat wird ohne Zutun von FHEM auf die WindowOpen-Temperature gehen
und reagiert also direkt auf das Signal vom Fensterkontakt.

Wir haben nur dann ein Problem, wenn in dieser Phase das HeatingControl einen neuen Sollwert setzt.
Dann macht das Thermostat auf und wir blasen die Wärme zum Fenster raus.
Aufgabe wäre: den neuen Sollwert zum Setzen vormerken aber nicht wirklich setzen.

Temperatur wiederherstellen
{Heating_Control_SetAllTemps()
Das machen die modernen Thermostate auch selber, in Abhängigkeit vom Fensterkontakt.

Ausserdem würden wir damit alle Credits verbraten bei 8+x Thermostaten dauert das ewig.

Aufgabe wäre: den gemerkten Sollwert, nach Schliessen des Fensters nun verzögert ausführen und nur für das betroffene Thermostat.

ZitatDas Modul PID macht meiner Meinung nach so etwas ähnliches.
Der Regler ist ja schon komplett in den modernen Thermostaten integriert.
Ausserdem ist der PID derzeit eine Baustelle wie der "Berliner Flughafen". Er ist einfach noch nicht zu gebrauchen.


John

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 Oktober 2013, 21:23:13
ZitatFesterkontakt
Der ist direkt gepaart mit dem Thermostat. Das Thermostat wird ohne Zutun von FHEM auf die WindowOpen-Temperature gehen
und reagiert also direkt auf das Signal vom Fensterkontakt.

Vielleicht hatte ich es noch nicht ganz verstanden. Wenn ich das lesen, dann funktioniert  Fensterkontak + Thermostat  eigentlich problemlos.

Wenn HC jetzt ins Spiel kommt, raffen die Thermostate nicht, dass sie eigentlich noch im Modus FensterOffen verharren müssten und schalten die von HC gelieferte Temperatur. HC soll dieses Fehlverhalten berücksichtigen?

{Heating_Control_SetAllTemps()
ZitatAusserdem würden wir damit alle Credits verbraten bei 8+x Thermostaten dauert das ewig.

Das würde nicht passieren, weil HC nur dann eine neue Temperatur setzt, wenn desired-temp noch nicht mit dem Sollwert übereinstimmt.  Und es wird bestimmt nicht in allen Räumen gleichzeitig gelüftet.

Lange Rede, kurzer Sinn. Habe ich es jetzt richtig wiedergegeben?

Wenn du Code oder ein Script hast, schick ihn mir mal, dann prüfe ich, ob ee leicht integrierbar ist.

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerMexikaner am 23 Oktober 2013, 22:38:16
Hallo Dietmar,

ZitatWenn HC jetzt ins Spiel kommt, raffen die Thermostate nicht, dass sie eigentlich noch im Modus FensterOffen verharren müssten und schalten die von HC gelieferte Temperatur. HC soll dieses Fehlverhalten berücksichtigen?

Ja, wäre aus meiner Sicht super, wenn Heating_Control genau dieses Verhalten berücksichtigen würde. Vielleicht durch einen zusätzlichen Parameter.

Off-Topic: Ich bin total begeistert, von FHEM und vor allem von dem Support und Einsatz all der ehrenamtlich Mitwirkenden. Mit welcher Geschwindigkeit auf "Kundenwünsche" eingegangen wird, ist für mich faszinierend. Würde mir wünschen, wenn dies im Alltag auch so selbstverständlich wäre. Ich beschäftige mich erst seit wenigen Wochen mit dem Thema Hausautomatisierung und habe Dank der Hilfe aus dem Forum schon verschiedene "Projekte" umgesetzt oder in Planung.  Ich kann mir nicht vorstellen, dass ich OEM-Software nur annähernd auf meine persönlichen Anforderungen anpassen könnte. Deshalb möchte ich als Anwender an dieser Stelle allen Admins, Moderatoren, Entwicklern und Testern meinen Dank aussprechen.

Saludos,

Lutz
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: John am 23 Oktober 2013, 22:40:23
Hallo Dietmar,

ZitatWenn HC jetzt ins Spiel kommt, raffen die Thermostate nicht, dass sie eigentlich noch im Modus FensterOffen verharren müssten und schalten die von HC gelieferte Temperatur. HC soll dieses Fehlverhalten berücksichtigen?
Das kann man natürlich so sehen, oder aus Sicht vom Thermostat: "der da draussen wird schon wissen was er tut, er ist der Chef,
wenn ich bei offenem Fenster den Sollwert erhöhen soll, so mach ich das" und genauso ticken die Dinger.

Ich habe leider kein Skript für dich aber ein Rezept:

<device>:<reading>:<regexp> je für WindowIsOpen und WindowIsClosed

In das Notify via $hash->{NotifyFn} einklinken und die Ereignisse nach WindowIsOpen bzw. WindowIsClosed filtern.
Damit bekommst du allgemeingültig die Ereignisse der Kontakte mit und kannst entsprechen wie zuvor beschrieben reagieren.

ZitatDas würde nicht passieren, weil HC nur dann eine neue Temperatur setzt, wenn desired-temp noch nicht mit dem Sollwert übereinstimmt.  Und es wird bestimmt nicht in allen Räumen gleichzeitig gelüftet.
Folgende Szene:
3 Fenster zum Lüften öffnen:
1. Fenster wird geschlossen, das Telefon klingelt
15 Minuten Gespräch
Die Ventile der Heizkörper mit offenen Fenster machen jedoch auf und blasen Wärme raus.


John
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: AHA1805 am 24 Oktober 2013, 06:13:38
Hallo

Ich verwende gerade das Kalender Modul so, dass ich darin Devices eintragen kann.
Mit Beginn des Termins schaltet  sie ein und mit Ende aus.
Nun habe ich mir gedacht, ich mache das gleiche mit meinen Heizkörper.
Ich Trage z.B. wz_Heizung|21.5 ku_Heizung|21.5 als Termin ein und dann werden zu Beginn des Termins alle eingetragen Ventile auf den festgelegten Sollwert eingestellt. Und wenn der Termin vorbei ist wieder auf Default Temp z.B. 18C eingestellt.

Hätte den Vorteil, dass meine Frau über den Google Kalender selber die Sollwerte verändern könnte bzw wenn ich unterwegs bin das auch ganz einfach ohne VPN etc machen könnte.

Was haltet ihr von der Idee?

Gruß
Hannes

Gesendet von Unterwegs mit Tapatalk 4

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 Oktober 2013, 07:03:12
Die Idee mit dem Google Calendar kannst du jetzt schon umsetzen. Einfach ein notify auf die Ereignisse des Calendars und wenn das richtige kommt, dann in ein Set desired-temp xx verwandeln.

Gesendet von meinem HTC Desire S mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: AnonymousHolger am 24 Oktober 2013, 12:24:21
Auch ich hadere noch mit dem Kalender.

Zumindest kann ich Ihn schon einmal ohne Fehlermeldung einbinden.


define HeizungsKalender Calendar ical url https://www.google.com/calendar/ical/"SNIP"/basic.ics 14400
attr HeizungsKalender room 7_CALENDAR

Das funktioniert gut, und wird auch in meinem "RAum" 7_CALENDAR als Initialized angezeigt.

Allerdings hab ich mit mehreren CodeSnippets, die ich hier im Forum gefunden habe immer noch nicht geschafft die Einträge auszuwerten :-( ... liegt wohl  mal wieder an mir.

Dietmar hast du ein kurzes Stück Code für die Auswertung in deiner CFG und auch wie dein Termin (Betreff oder Inhalt - was ist entscheidend ?) aufgebaut ist ?

Gruss

Holger
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 Oktober 2013, 16:35:00
tut mir leid, ich nutze keinen Calendar. Habe nur eine kleine Einweisung hier vom Erfinder des Moduls bekommen.

Wenn ich es verstanden habe, liest das Modul regelmäßig den Calender und erzeugt trigger, die mit notify abgefangen werden können.   
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 Oktober 2013, 20:24:27
so müsstest du es machen:

define SwitchActorOn notify MyCalendar:modeStarted.* { my $reading="%EVTPART0";; my $uid= "%EVTPART1";; my $actor= fhem("get MyCalendar summary $uid");; if(defined $actor) { fhem("set $actor on") } }

define SwitchActorOff notify MyCalendar:modeEnded.* { my $reading="%EVTPART0";; my $uid= "%EVTPART1";; my $actor= fhem("get MyCalendar summary $uid");; if(defined $actor) { fhem("set $actor off") } }


Wenn du unsicher bist was so ankommt dann logge erst einmal:

define SwitchActorOff notify MyCalendar:mode(Started|Ended).* {\
   my $reading="%EVTPART0";;\
   my $uid= "%EVTPART1";;\
   my $actor= fhem("get MyCalendar summary $uid");;\ 
   Log, 3, "%EVTPART0\n%EVTPART1\n $actor\n$reading";;\
}

aus dem Kopf geschrieben, deshalb keine Garantie.
[/code]
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 Oktober 2013, 20:35:15

Die Auflösung der FS20 FHT bezüglich der Information window(open|closed) ist nicht besonders gut. Es erfolgt nur alle 15 Minuten eine Aktualisierung. Im Schnitt ist die Information, die ich mit HC auswerten würde 7-8 Minuten alt.

Ich werde das Gefühl nicht los, dass es sich nicht lohnt. In der Regel dauert das Lüften vielleicht 15 Minuten. Wenn ich das Signal bekomme, dass das Fenster offen ist, ist die Hälfte der Lüftungszeit schon verstrichen:

2013-10-24_17:01:57 HeizungKueche window: closed
2013-10-24_17:17:17 HeizungKueche window: closed
2013-10-24_17:32:57 HeizungKueche window: closed
2013-10-24_17:49:52 HeizungKueche window: closed
2013-10-24_18:01:22 HeizungKueche window: closed
2013-10-24_18:16:58 HeizungKueche window: closed
2013-10-24_18:33:57 HeizungKueche window: closed
2013-10-24_18:49:17 HeizungKueche window: closed
2013-10-24_19:00:57 HeizungKueche window: closed
2013-10-24_19:16:57 HeizungKueche window: closed
2013-10-24_19:33:22 HeizungKueche window: closed
2013-10-24_19:48:57 HeizungKueche window: closed
2013-10-24_20:00:57 HeizungKueche window: closed
2013-10-24_20:17:27 HeizungKueche window: closed
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: volschin am 24 Oktober 2013, 23:33:04
Das ist ja gruselig. Mein HM TC spricht auf den Fensterkontakte in rund 1-2 Sek an. Das Update der Ventile dauert dann noch etwas.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 Oktober 2013, 23:36:23
mein FHT weiß vielleicht früher davon. aber die Zentrale wird nur alle 15 Minuten informiert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerMexikaner am 24 Oktober 2013, 23:50:09
ZitatIch werde das Gefühl nicht los, dass es sich nicht lohnt. In der Regel dauert das Lüften vielleicht 15 Minuten. Wenn ich das Signal bekomme, dass das Fenster offen ist, ist die Hälfte der Lüftungszeit schon verstrichen:

Aus meiner Sicht würde sich die Fenster-Auf-Erkennung schon lohnen. Leider kann ich den Aufwand zur Umsetzung nicht abschätzen. Bei mir sind in einigen selten genutzen, aber beheizten Räumen die Fenster auch mal deutlich länger geöffnet. War einer der Gründe für mich, elektronische Thermostate und Fensterkontakte anzuschaffen.

Saludos,
Lutz
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 Oktober 2013, 02:04:25
Aus meiner Sicht könnte man folgendes versuchen.
Dem HC ein Attribut spendieren: Fensterkontakte. Es enthält die zu einem HC relevanten Sensoren.

HC fragt bei bei einem Schaltereignis die Stati der Geräte in der Liste ab. Ist ein Kontakt offen, prüft HC 60 Sekunden später nochmal.

Gesendet von meinem HTC Desire S mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 Oktober 2013, 10:52:14
Zitat von: Dietmar63 am 26 Oktober 2013, 02:04:25
Aus meiner Sicht könnte man folgendes versuchen.
Dem HC ein Attribut spendieren: Fensterkontakte. Es enthält die zu einem HC relevanten Sensoren.

HC fragt bei bei einem Schaltereignis die Stati der Geräte in der Liste ab. Ist ein Kontakt offen, prüft HC 60 Sekunden später nochmal.

Da es verschiedene Typen von Fensterkontakten gibt, muss ich zwangläufig, je nach Typ verschiedene Werte abfragen.
Bei meinem FS20-FK, Typ:CUL_FHTTK liefert das Reading "Window" "closed"/"open" als Status. Falls ihr andere FK-Typen habt, müßtet ihr mir den Typ des FK, den Namen des Readings und den Zustandstext für "open"/"close" mitteilen.

Dann baue ich es in HC ein.
Der Aufwand scheint nicht hoch zu sein.

Die fhem.cfg muss dann etwa folgendes enthalten:

define hc Heating_control fht 15:40|23   21:40|18
attr windowSensor         terrassentuer FensterFK1 FensterFK2
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 Oktober 2013, 16:33:45
Gute Nachricht.

Fenserkontakte können abgefragt werden. Das Feature wird mit dem nächsten Release eingecheckt:
Ich habe es nicht über notify gelöst, sondern habe vor dem eigentlichen Schaltvorgang folgenden Code eingefügt:

  # Fenserkontakte abfragen - wenn einer im Status closed, dann Schaltung um 60 Sekunden verzögern
  my $fensterKontakte = AttrVal($hash->{NAME}, "windowSensor", "nF");
  Log 5, "$mod -> $fensterKontakte found.";
  if ($fensterKontakte ne "nF" ) {
     my @kontakte = split(/ /, $fensterKontakte);
     foreach my $fk (@kontakte) {
        if(!$defs{$fk}) {
           Log 3, "$mod Window sensor <$fk> not found - check name.";
        } else {
           my $windowStatus = ReadingsVal($fk,"Window","nF");
           Log 5, "$mod window sensor state $fk: $windowStatus";
           if ($windowStatus ne "Closed") {
              Log 3, "$mod switch of $hash->{DEVICE} delayed - window sensor state $fk: $windowStatus";
              InternalTimer  (time()+60, "$hash->{TYPE}_Update", $hash, 0);
              return;
           }
        }
     }
  }


Die Definition in fhem.cfg sieht dann so aus:

define HeizungWohnen_we           Heating_control fht 15:40|23   21:40|18
attr   HeizungWohnen_we           windowSensor  Terrassentuer Fenster1 Fenster2


Dieser muss eventuell noch um eure Fensterkontakttypen ergänzt werden.
Das ganze funtioniert auch bei mir recht schnell. Die Information des FK steht nach ca. 60 Sekunden zur Verfügung.


2013.10.26 16:17:14 2: FHT set HeizungWohnen desired-temp 21.0
2013.10.26 16:17:14 3: [HeizungWohnen_we]  Window sensor <Fenster2> not found - check name.
2013.10.26 16:17:14 3: [HeizungWohnen_we]  Window sensor <Fenster1> not found - check name.
2013.10.26 16:16:14 3: [HeizungWohnen_we]  switch of HeizungWohnen delayed - window sensor state Terrassentuer: Open
2013.10.26 16:15:14 3: [HeizungWohnen_we]  switch of HeizungWohnen delayed - window sensor state Terrassentuer: Open
2013.10.26 16:14:14 3: [HeizungWohnen_we]  switch of HeizungWohnen delayed - window sensor state Terrassentuer: Open
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerMexikaner am 26 Oktober 2013, 19:26:26
ZitatFensterkontakte können abgefragt werden. Das Feature wird mit dem nächsten Release eingecheckt

Hallo Dietmar,
Vielen Dank für die Integration der Fernsterkontakte. Ich freu mich schon auf die Bereitstellung des Updates.

Saludos,

Lutz
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: AnonymousHolger am 27 Oktober 2013, 10:42:35
Danke für die Info mit dem Kalender und den Fensterkontakten.

Ich schau mir das mal an, wenn ich meinen KABEL-BW Hotline Horror hinter mich gebracht habe.

Seit Gestern habe ich ein neues Stück Modem/Router HArdware von KAbel-BW und nix geht mehr !!! (keine Port weiterschaltung, kein DynDNS, ....) .. das ist ein Scheiss ... never change a running system.

Frustgruss aus Stuttgart
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 Oktober 2013, 13:50:33
HC und WD eingecheckt.

neue Features:
- Die Zeit kann nun als Perlfunktion angegeben werden: 123|{meineZeit()}|23. Die gelieferte Zeit muss das Format HH:MM:[SS] haben
- Dem Parameter kann ein zusätzlicher Parameter mitgegeben werden. Der Doppelpunkt ist das Trennzeichen: 123|{sunrise_abs()}|on-for-timer:20
- Für jedes HC kann ein windowSensor Attribut gepflegt werden. Es nimmt die Namen von Fensterkontakten auf, die nicht offen sein dürfen. Zurzeit werden Fensterkontakte des Typs CUL_FHTTK unterstützt. Wenn ein Fenster als offen erkannt wird, wird eine anstehende Schaltung verzögert.

Um weitere Fensterkontakttypen zu unterstützen benötige ich Eure Hilfe:
Sendet mir den Typ des Fensterkontakts, der in der Detailansicht des Device von FHEM  angezeigt wird. Dazu benötige ich den Namen des Readings und den Inhalt des Readings, wenn der Kontakt offen ist.




Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: volschin am 27 Oktober 2013, 14:06:23
HM-SEC-SC kann den State open oder closed haben.
HM-SEC-RHS kann den State open, tilted oder closed haben.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 Oktober 2013, 19:08:40
@ volschin, AnonymousHolger, DerMexikaner:

Ich habe Code für die Unterstützung der HM Fensterkontakte HM-SEC-SC und HM-SEC-RHS hinzugefügt.
Kann jemand diese Erweiterung testen. Ich habe kein HM!

Die Erweiterung ist eingecheckt!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerMexikaner am 28 Oktober 2013, 00:25:26
Hallo Dietmar,

in einem Raum mit einem HM-CC-RT-DN und einem HM-SEC-SC funktioniert die Fenstererkennung und die programmierte gewünschte Temperatur wird erst nach dem Schließen des Fensters im RT eingestellt:

Zitat2013.10.27 23:45:57 3: [HCBuero] switch of HeizkoerperBuero_ClimRT_tr delayed - windowsensor 'FensterBuero' Reading 'state' is 'open'
2013.10.27 23:46:57 2: CUL_HM set HeizkoerperBuero_ClimRT_tr desired-temp 21.0

In einem weiteren Raum mit drei HM-CC-RT-DN (angesteuert von Heating_Control über eine Structure)

Zitatdefine HeizkoerperWohnbereichStructure structure room HeizkoerperWohnzimmerLinks_ClimRT_tr HeizkoerperWohnzimmerRechts_ClimRT_tr HeizkoerperEsszimmer_ClimRT_tr

wird die programmierte gewünschte Temperatur im RT eingestellt, obwohl einer von 3 Fensterkontakten (3 x HM-SEC-RHS für die Fenster, 1xHM-SEC-SC für die Terrassentür) noch geöffnet ist:
Zitat
2013-10-27_23:55:36 FensterWohnzimmerRechts tilted
2013-10-27_23:55:36 FensterWohnzimmerRechts contact: tilted (to HMLAN1)
2013-10-27_23:55:37 FensterWohnzimmerRechts tilted
2013-10-27_23:55:37 FensterWohnzimmerRechts contact: tilted (to HeizkoerperEsszimmer)
2013-10-27_23:55:38 FensterWohnzimmerRechts tilted
2013-10-27_23:55:38 FensterWohnzimmerRechts contact: tilted (to HeizkoerperWohnzimmerLinks)
2013-10-27_23:55:38 FensterWohnzimmerRechts tilted
2013-10-27_23:55:38 FensterWohnzimmerRechts contact: tilted (to HeizkoerperEsszimmer)

Zitat2013.10.28 00:00:01 2: CUL_HM set HeizkoerperEsszimmer_ClimRT_tr desired-temp 21.0
2013.10.28 00:00:01 2: CUL_HM set HeizkoerperWohnzimmerLinks_ClimRT_tr desired-temp 21.0
2013.10.28 00:00:01 2: CUL_HM set HeizkoerperWohnzimmerRechts_ClimRT_tr desired-temp 21.0

Saludos,

Lutz
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2013, 01:00:22
Was bedeutet tilted?

Gesendet von meinem HTC Desire S mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2013, 05:49:49
Tilted heisst gekippt.
Heute Abend kommt für HM
Tristate Sensoren eine neue Version heraus.

Gesendet von meinem HTC Desire S mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Otto am 28 Oktober 2013, 15:10:20
Hallo,

ist das Verhalten normal? Erst hoch dann runter?

define Rollladen_AZ_down WeekdayTimer Rollo_AZ 1234567|{sunset_abs(-2700,"16:00","22:00")}|down (ReadingsVal("RolloAutomatik", "state", "Aus") eq "An")
attr Rollladen_AZ_down verbose 5
##
define Rollladen_AZ_up WeekdayTimer Rollo_AZ 12345|08:00|up 67|{sunrise_abs(0,"07:30","09:00")}|up (ReadingsVal("Verreist", "state", "Ja") eq "Nein")
attr Rollladen_AZ_up verbose 5


2013.10.28 14:51:34 5: [Rollladen_AZ_down] list of windowsenors found: 'nF'
2013.10.28 14:51:34 4: [Rollladen_AZ_down] 27.10.2013 16:54:12 ; aktParam: 0.0 ; newParam: down
2013.10.28 14:51:34 4: [Rollladen_AZ_down] 28.10.2013 16:54:12
2013.10.28 14:51:34 4: [Rollladen_AZ_down] command: { fhem("set Rollo_AZ  down") if(ReadingsVal("RolloAutomatik", "state", "Aus") eq "An")}
2013.10.28 14:51:35 2: EnOcean set Rollo_AZ closed
2013.10.28 14:51:35 5: [Rollladen_AZ_up] list of windowsenors found: 'nF'
2013.10.28 14:51:35 4: [Rollladen_AZ_up] 28.10.2013 08:00:00 ; aktParam: 0.0 ; newParam: up
2013.10.28 14:51:35 4: [Rollladen_AZ_up] 29.10.2013 08:00:00
2013.10.28 14:51:35 4: [Rollladen_AZ_up] command: { fhem("set Rollo_AZ  up") if(ReadingsVal("Verreist", "state", "Ja") eq "Nein")}
2013.10.28 14:51:36 2: EnOcean set Rollo_AZ open


Gruß Otto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2013, 15:22:24
jein - aber erklärbar.

Das Modul ist entstanden aus der Idee heraus eine Heizungssteuerung zu bauen: Heating_Control.
Bei einer HC ist das Verhalten sinnvoll beim Start von HC, die letzte Temp(auch wenn sie vorgestern definiert war) einzustellen und nicht nur die nächsten zu schalten.
Wenn heute morgen 9:00 Uhr 21° gewünscht  war, dann soll die Temp auch eingestellt werden ich HC um 14:00 starte.

Dem WD wollte ich dieses Verhalten durch eine Negativliste der Geräte bei denen dieses Verhalten nicht sein soll abgewöhnen.
Die Liste besteht nur aus Geräten, die sich FS20 nennen. Ich werde die Liste in eine Positivliste verwandeln - dann sollte es wartungsarm funktionieren.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ChrisW am 28 Oktober 2013, 16:04:30
Bei der benutzung als Zeitschaltuhr was auch klappt tauchen aber fehler in der Konsole auf Funktioniert aber:

Use of uninitialized value $_ in numeric eq (==) at ./FHEM/98_Heating_Control.pm line 96, <> line 3.
Use of uninitialized value $_ in numeric eq (==) at ./FHEM/98_Heating_Control.pm line 96, <> line 3.
Use of uninitialized value $_ in numeric eq (==) at ./FHEM/98_Heating_Control.pm line 96, <> line 7.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2013, 17:07:38
sehe ich mir nochmals an!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 28 Oktober 2013, 19:11:07
Die Meldungen hab ich leider auch :

Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 129.
Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 132.
Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 135.
Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 138.
Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 141.
Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 144.
Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 147.
Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 150.
Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 153.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2013, 22:26:05
Modul HC/WD eingecheckt - update durchführen.

- 'tilted'  als zusätzlichen "open-Status" den HM devices hinzugefügt.
- fixed: Use of uninitialized value $_ in numeric eq (==) at C:/fhem-5.5/FHEM/98_Heating_
Control.pm line 96, <$fh> line 129.

noch offen - ist etwas komplizierter, vor allem, weil ich die hardware nicht habe.:
ZitatDem WD wollte ich dieses Verhalten durch eine Negativliste der Geräte bei denen dieses Verhalten nicht sein soll abgewöhnen.
Die Liste besteht nur aus Geräten, die sich FS20 nennen. Ich werde die Liste in eine Positivliste verwandeln - dann sollte es wartungsarm funktionieren.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerMexikaner am 29 Oktober 2013, 00:05:50
Hallo Dietmar,

der Zustand "tilted" der  Tri-State-Sensoren HM-SEC-RHS für gekippte Fenster wird von Heating_Control nun auch korrekt ausgewertet und die dort programmierte Temperatur im RT wie gewünscht erst nach dem Schließen des Fensters geändert:
Zitat
2013-10-28_23:17:35 FensterWohnzimmerRechts tilted
2013-10-28_23:17:35 FensterWohnzimmerRechts contact: tilted (to HMLAN1)
...
2013.10.28 23:40:16 3: [HCWohnbereich] switch of HeizkoerperWohnbereichStructure delayed - windowsensor 'FensterWohnzimmerRechts' Reading 'state' is 'tilted'
...
2013-10-28_23:41:05 FensterWohnzimmerRechts closed
2013-10-28_23:41:05 FensterWohnzimmerRechts contact: closed (to HMLAN1)
...
2013.10.28 23:41:16 2: CUL_HM set HeizkoerperEsszimmer_ClimRT_tr desired-temp 25.0
2013.10.28 23:41:16 2: CUL_HM set HeizkoerperWohnzimmerLinks_ClimRT_tr desired-temp 25.0
2013.10.28 23:41:16 2: CUL_HM set HeizkoerperWohnzimmerRechts_ClimRT_tr desired-temp 25.0
...

Vielen Dank für die schnelle und unkomplizierte Umsetzung!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ChrisW am 29 Oktober 2013, 12:23:03
Nach dem Update heute habe ich was neues in der Konsole stehen :)


Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_C                                                                          ontrol.pm line 425.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_C                                                                          ontrol.pm line 425.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_C                                                                          ontrol.pm line 425.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 29 Oktober 2013, 18:07:35
Zitat von: ChrisW am 29 Oktober 2013, 12:23:03
Nach dem Update heute habe ich was neues in der Konsole stehen :)


Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_C                                                                          ontrol.pm line 425.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_C                                                                          ontrol.pm line 425.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_C                                                                          ontrol.pm line 425.


Sende mir mal bitte deine Definition, und zwar die Definition der Funksteckdose!
Welcher Typ ist das?

Du kannst übrigens jetzt auch WeekdayTimer benutzen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ChrisW am 29 Oktober 2013, 19:00:20
Intertechno
So hab ich die Steckdosen hinzugefügt:

define steckdose_vorgarten1 IT A2
attr steckdose_vorgarten1 IODev CUL_0
attr steckdose_vorgarten1 loglevel 6
attr steckdose_vorgarten1 model itswitch
attr steckdose_vorgarten1 room Steckdosen,Lampen


Und das ist der code von Heating_control:

define vorgartenbeleuchtung Heating_Control steckdose_vorgarten1 06:00|on 06:01|on 09:00|off 09:01|off 17:00|on 17:01|on 23:58|off 23:59|off
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerMexikaner am 30 Oktober 2013, 19:43:39
Hallo Dietmar,

grundsätzlich finde ich die minütliche Abfrage des windowSensors gut. Im Logfile würde es aus meiner Sicht aber reichen, wenn das Event dort nur einmal auftaucht. Wäre das technisch realisierbar?
Habe halt Räume, in denen das Fenster länger geöffnet ist  ;) und möchte mir nicht unbedingt das Logfile zuspammen.

Zitat
2013.10.30 00:04:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:05:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:06:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:07:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:08:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:09:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:10:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:11:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:12:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:13:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:14:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:15:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:16:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:17:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
2013.10.30 00:18:59 3: [HCGaesteWC] switch of HeizkoerperGaesteWC_ClimRT_tr delayed - windowsensor 'FensterGaesteWC' Reading 'state' is 'tilted'
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: mgernoth am 30 Oktober 2013, 22:52:22
Hallo Dietmar,

anscheinend ist mit dem Update auf Revision 4127 das Parsen der Profile kaputtgegangen:


fhem> define Test dummy
fhem> define Test_Steuerung Heating_Control Test Mo-Fr|06:00|21.0 Mo-Fr|08:30|16.0 Mo-Su|21:30|21.0 Mo-Su|00:45|16.0 Sa-Su|09:00|21.00 Sa-Su|12:00|16.00

fhem> list Test_Steuerung
Internals:
   CFGFN
   DEF        Test Mo-Fr|06:00|21.0 Mo-Fr|08:30|16.0 Mo-Su|21:30|21.0 Mo-Su|00:45|16.0 Sa-Su|09:00|21.00 Sa-Su|12:00|16.00
   DEVICE     Test
   LANGUAGE   de
   NAME       Test_Steuerung
   NR         1914
   PROFILE 1: Montag 06:00 21.0, 08:30 16.0,
   PROFILE 2: Dienstag 06:00 21.0, 08:30 16.0,
   PROFILE 3: Mittwoch 06:00 21.0, 08:30 16.0,
   PROFILE 4: Donnerstag 06:00 21.0, 08:30 16.0,
   PROFILE 5: Freitag 06:00 21.0, 08:30 16.0,
   STATE      waiting...
   TYPE       Heating_Control
   Readings:
     2013-10-30 22:48:40   nextUpdate      Heute, 22:49:10
     2013-10-30 22:48:40   nextValue       ???
     2013-10-30 22:48:40   state           waiting...
   Helper:
     SWITCHINGTIMES Mo-Fr|06:00|21.0 Mo-Fr|08:30|16.0 Mo-Su|21:30|21.0 Mo-Su|00:45|16.0 Sa-Su|09:00|21.00 Sa-Su|12:00|16.00
     Switchingtime:
       0:
       1:
         06:00:00   21.0
         08:30:00   16.0
       2:
         06:00:00   21.0
         08:30:00   16.0
       3:
         06:00:00   21.0
         08:30:00   16.0
       4:
         06:00:00   21.0
         08:30:00   16.0
       5:
         06:00:00   21.0
         08:30:00   16.0
       6:
Attributes:


Ich würde fast sagen, dass die Sprache falsch erkannt wird oder so...
Habe leider gerade überhaupt keine Zeit mir den Code anzuschauen und zu debuggen, Sorry :-(

Gruß
  Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 31 Oktober 2013, 18:25:19
Jein, es wurde auf Wunsch hier im Forum Französisch ergänzt. Den Code, den ich bekommen habe musste ich überarbeiteten, und dabei musste ich von autodetection auf einen optionalen Sprachparameter umstellen. Sieh mal in die Dokumentation.

Eigentlich müsste Su bei language de abgelehnt werden. Das sehe ich mir gleich nochmals an.

Gesendet von meinem HTC Desire S mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 31 Oktober 2013, 21:43:14
Zitat von: mgernoth am 30 Oktober 2013, 22:52:22
Hallo Dietmar,

anscheinend ist mit dem Update auf Revision 4127 das Parsen der Profile kaputtgegangen:


fhem> define Test dummy
fhem> define Test_Steuerung Heating_Control Test Mo-Fr|06:00|21.0 Mo-Fr|08:30|16.0 Mo-Su|21:30|21.0 Mo-Su|00:45|16.0 Sa-Su|09:00|21.00 Sa-Su|12:00|16.00

fhem> list Test_Steuerung
Internals:
   CFGFN
   DEF        Test Mo-Fr|06:00|21.0 Mo-Fr|08:30|16.0 Mo-Su|21:30|21.0 Mo-Su|00:45|16.0 Sa-Su|09:00|21.00 Sa-Su|12:00|16.00
   DEVICE     Test
   LANGUAGE   de
   NAME       Test_Steuerung
   NR         1914
   PROFILE 1: Montag 06:00 21.0, 08:30 16.0,
   PROFILE 2: Dienstag 06:00 21.0, 08:30 16.0,
   PROFILE 3: Mittwoch 06:00 21.0, 08:30 16.0,
   PROFILE 4: Donnerstag 06:00 21.0, 08:30 16.0,
   PROFILE 5: Freitag 06:00 21.0, 08:30 16.0,
   STATE      waiting...
   TYPE       Heating_Control
   Readings:
     2013-10-30 22:48:40   nextUpdate      Heute, 22:49:10
     2013-10-30 22:48:40   nextValue       ???
     2013-10-30 22:48:40   state           waiting...
   Helper:
     SWITCHINGTIMES Mo-Fr|06:00|21.0 Mo-Fr|08:30|16.0 Mo-Su|21:30|21.0 Mo-Su|00:45|16.0 Sa-Su|09:00|21.00 Sa-Su|12:00|16.00
     Switchingtime:
       0:
       1:
         06:00:00   21.0
         08:30:00   16.0
       2:
         06:00:00   21.0
         08:30:00   16.0
       3:
         06:00:00   21.0
         08:30:00   16.0
       4:
         06:00:00   21.0
         08:30:00   16.0
       5:
         06:00:00   21.0
         08:30:00   16.0
       6:
Attributes:


Ich würde fast sagen, dass die Sprache falsch erkannt wird oder so...
Habe leider gerade überhaupt keine Zeit mir den Code anzuschauen und zu debuggen, Sorry :-(

Gruß
  Michael

Es waren doch noch einige Verbesserungen notwendig, damit die Fehler besser erkannt und ins Log geschrieben werden.


2013.10.31 21:02:55 2: FHT set HeizungWohnen desired-temp 22.0
2013.10.31 21:02:55 3: [HeizungWohnen_wt] delay of switch HeizungWohnen stopped.
2013.10.31 20:52:55 3: [HeizungWohnen_wt] switch of HeizungWohnen delayed - windowsensor 'Terrassentuer' Reading 'Window' is 'Open'
2013.10.31 20:18:43 3: [HeizungWohnen_wt] delay of switch HeizungWohnen stopped.
2013.10.31 20:15:43 3: [HeizungWohnen_wt] switch of HeizungWohnen delayed - windowsensor 'Terrassentuer' Reading 'Window' is 'Open'
2013.10.31 20:15:26 3: FS20 set Zirkulation off
2013.10.31 20:14:43 3: [HeizungWohnen_wt] switch of HeizungWohnen delayed - windowsensor 'Terrassentuer' Reading 'Window' is 'Open'
2013.10.31 20:11:20 2: FHT set HeizungWohnen desired-temp 22.0
2013.10.31 20:10:54 3: Mail sent to Dietmar.Ortmann@web.de
2013.10.31 20:10:50 2: FHT set HeizungKueche desired-temp 16.0

Das Protokoll konnte ich ebenfalls verkürzen.

Intertechnogeräte werden jetzt auch korrekt geschaltet.

Ich beobachte das Modul bei mir noch etwas, dann checke ich es ein.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 01 November 2013, 11:02:37
Ich habe 9 Heating_Controls, und diese erzeugen beim Start von FHEM einmalig diese 9 Fehler in der Console :

C:\fhem-5.5>perl_5.18.1.1\perl\bin\perl fhem.pl fhem.cfg
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Use of uninitialized value $n in hash element at fhem.pl line 3004.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 11:08:49
versuche ich heute herauszufinden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: mgernoth am 01 November 2013, 11:22:15
Hallo Dietmar,

Zitat von: Dietmar63 am 31 Oktober 2013, 18:25:19
Jein, es wurde auf Wunsch hier im Forum Französisch ergänzt. Den Code, den ich bekommen habe musste ich überarbeiteten, und dabei musste ich von autodetection auf einen optionalen Sprachparameter umstellen. Sieh mal in die Dokumentation.

Super, danke. Jetzt funktioniert es wieder :-)

Ich hatte nur geschaut, ob es ein passendes Attribut gibt, dass die Sprache auch im define stehen könnte, daran habe ich gar nicht gedacht..

Danke für das tolle Modul & Gruß
  Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 01 November 2013, 15:49:26
Hallo

Ich versuche gerade das Heating_Control Modul bei mir einzubinden und meine etwas komplexere Heizungsregelung damit zu ersetzten....
(Ich verwende 7 FHT's mit Fensterkontakten an einem CUNO)

Dazu zwei Fragen:

1) Zum Beisiel aus dem Command-Ref im Bezug auf condition:

define HCW Heating_Control WZ_Heizung Sa-So,Mi|08:00|21 (ReadingsVal("WeAreThere", "state", "no") eq "yes")
Die zu setzende Temperatur wird nur gesetzt, falls die Dummy Variable WeAreThere = "yes" ist.

Die Temeraturanhebungen im Profil wollte ich nur durchführen wenn jemand zu Hause ist, deswegen hatte ich untenstehendes probiert.
Scheinbar können die Bedingungen aber je define eingefügt werden. Dies führt wohl nun dazu dass ich alle Temperaturanhebungen in ein define sammeln muß.
Leider geht damit der Vorteil verloren alle Schaltpunkte in einer Detailansicht zusammen zu sehen.

define HC_DAVID Heating_Control DAVID_hzg de Mo-Fr|06:05|21.0 (Value("HOME_Status") == 0) Mo-Fr|08:05|16.0 Mo-Fr|12:05|21.0 (Value("HOME_Status") == 0)Mo-Fr|18:05|16.0 Sa-So,Mo|07:05|20.0 (Value("HOME_Status") == 0)Sa-So,Mo|18:05|16.0
attr HC_DAVID room HEIZUNG
attr HC_DAVID windowSensor DAVID_fenster


2. Frage zur Verwendung von $we
Im Forum habe ich gelesen dass die Verwendung von $we für Wochenende und Feiertage möglich ist. Leider scheint es wie folgt aber nicht zu gehen...
Was mache ich hier falsch?

define HC_DAVID Heating_Control DAVID_hzg de Mo-Fr|06:05|21.0 Mo-Fr|08:05|16.0 Mo-Fr|12:05|21.0 Mo-Fr|18:05|16.0 we$|07:05|20.0 we$|18:05|16.0
attr HC_DAVID room HEIZUNG
attr HC_DAVID windowSensor DAVID_fenster


Danke für eure Rückmeldung
Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 18:20:12
wenn dann nur so:
define HC_DAVID Heating_Control DAVID_hzg de Mo-Fr|06:05|21.0  Mo-Fr|08:05|16.0 Mo-Fr|12:05|21.0 Mo-Fr|18:05|16.0 Sa-So,Mo|07:05|20.0 Sa-So,Mo|18:05|16.0 (Value("HOME_Status") == 0)

oder so:
define HC_DAVID Heating_Control DAVID_hzg de define HC_DAVID Heating_Control DAVID_hzg de 06:05|21.0  08:05|16.0 12:05|21.0 18:05|16.0 07:05|20.0 18:05|16.0   ($we)

oder so:
define HC_DAVID Heating_Control DAVID_hzg de 06:05|21.0  08:05|16.0 12:05|21.0 18:05|16.0 07:05|20.0 18:05|16.0   (!$we)

oder so:
define HC_DAVID Heating_Control DAVID_hzg de 06:05|21.0  08:05|16.0 12:05|21.0 18:05|16.0 07:05|20.0 18:05|16.0   (meineEigeneFunktion(@,%) )

meineEigeneFunktion($$) muss dann in die 99_utils.
oder so:
define HC_DAVID Heating_Control DAVID_hzg de 06:05|21.0  08:05|16.0 12:05|21.0 18:05|16.0 07:05|20.0 18:05|16.0   {fhem("set @ desired %")}



Es gibt viele Möglichkeiten Bedingungen zu formulieren. Das liegt daran, dass die Möglichkeit eine Condition oder Perlfunktion zu nutzen am Anfang stand. Auf vielfachen Wunsch hin wurde die Möglichkeit geschaffen die Tage vor die Schaltzeit zu schreiben. Inzwischen kann mandie Schaltzeiten auch per sunrise_abs() ermitteln:

define hc1   Heating_Control Brunnen de  so-sa|{sunrise_abs()}|off    so-sa|{sunset_abs()}|on ; attr hc1 verbose 5;

Mit verbose kannst du detailiert sehen welcher Befehl erzeugt und gesendet wird!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: crissiloop am 01 November 2013, 19:04:05
Hallo,
ich wollte den WeekdayTimer für das Steuern meiner Zirkulationspumpe nutzen.
Definiert habe ich es wie folgt:
HWR_Zirkulation Mo-Fr|05:00|on-for-timer:3600 Mo-Fr|14:30|on-for-timer:3600 Mo-Fr|20:00|on-for-timer:1800 Sa-So|08:00|on-for-timer:3600 Sa-So|14:30|on-for-timer:3600 Sa-So|19:00|on-for-timer:3600 (Value("abwesend") eq "nein")

Aber im Log kommt folgende Fehlermeldung:
set HWR_Zirkulation desired-temp on-for-timer 3600 : Unknown argument desired-temp

Wie bekomme ich es hin, dass nur der Befehl "set HWR_Zirkulation on-for-timer 3600" ausführt?

Gruß
Christian
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 19:17:29

define xx WeekdayTimer HWR_Zirkulation Mo-Fr|05:00|on-for-timer:3600 Mo-Fr|14:30|on-for-timer:3600 Mo-Fr|20:00|on-for-timer:1800 Sa-So|08:00|on-for-timer:3600 Sa-So|14:30|on-for-timer:3600 Sa-So|19:00|on-for-timer:3600 { fhem("set @ %")  if (Value("abwesend") eq "nein") }


Anstelle von Value musst du bestimmt ReadingsVal(...) nutzen!

Mit verbose 5 kannst du immer sehen was gesendet wird.
Ich verbessere das Modul gerade, so dass es besser den Standardmodifier (desiredTemp ...) erkennt.
In deinem Fall sollte dann "" zwischen @ und % eingefügt werden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 01 November 2013, 19:23:58
Hallo Dietmar

danke für deine schnelle Antwort.
Entsprechend deiner Rückmeldung habe ich mein Wochenprogramm für Wochenende und Wochentag aufgesplittet und gleichzeitig noch eine weitere Bedingung "verundet".
Aus irgendeinem Grund werden aber beide Profile als inaktiv angezeigt. Erwartet hatte ich dass die Wochenend/Feiertag (Bayern!) aktiv angezeigt wird.


Die Bedingung habe ich in einer If Anweisung in der Kommandozeile getestet {if($we && (Value("HOME_Status") == 1)){"wahr"} else {"falsch"}}
Da erhalte ich das erwartete Ergebnis.
Mache ich hier was falsch?

Gruß Manuel

define HC_DAVID_WE Heating_Control DAVID_hzg de 07:05|20.0 18:05|16.0 ($we && (Value("HOME_Status") == 1))
attr HC_DAVID_WE room HEIZUNG
attr HC_DAVID_WE windowSensor DAVID_fenster
attr HC_DAVID_WE group Wochenende

define HC_DAVID_WT Heating_Control DAVID_hzg de 06:05|21.0 08:05|16.0 12:05|21.0 18:05|16.0 (!$we && (Value("HOME_Status") == 1))
attr HC_DAVID_WT room HEIZUNG
attr HC_DAVID_WT windowSensor DAVID_fenster
attr HC_DAVID_WT group Wochentag
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 19:26:40
ReadingsVal statt Value!

ist home_status ein dummy?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: crissiloop am 01 November 2013, 19:44:36
Hallo Dietmar,
ich denke, das war mein Fehler. Ich habe versucht ein Kommando und eine Bedingung zu setzen. Dies war wohl so nicht gewollt. Man kann natürlich einfach die Bedingung in das Perlkommando packen und schon funktioniert es:
HWR_Zirkulation Mo-Fr|05:00|on-for-timer:3600 Mo-Fr|14:30|on-for-timer:3600 Mo-Fr|20:00|on-for-timer:1800 Sa-So|08:00|on-for-timer:3600 Sa-So|14:30|on-for-timer:3600 Sa-So|19:00|on-for-timer:3600 {if(Value("abwesend") eq "nein") {fhem("set @ %")}}

Kann ich für Sa-So auch $we benutzen, damit ich auch Feiertage mit abdecke?

Gruß
Christian
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 20:14:04
Das funktioniert noch nicht. Der Wunsch besteht hier im Forum. Ich würde $we nehmen, aber wir haben uns hier noch nicht geeinigt.



Gesendet von meinem HTC Desire S mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 01 November 2013, 20:29:28
Hallo Dietmar,

ja ein dummy...
define HOME_Status dummy
In der Kommantozeile ergibt {Value("HOME_Status")} eine 1 als Ausgabe..
Sollte also soweit passen.
Hast du noch eine Idee?

Gruß Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 20:43:44
Ich glaube man muss auch dummys mit ReadingsVal auslesen. Warum du bei deinem Test scheinbar ein richtiges Ergebniss bekommen hast, verstehe ich nicht

Gesendet von meinem HTC Desire S mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 01 November 2013, 21:42:36
Hallo Dietmar,

ich habe es auch mit ((ReadingsVal("HOME_Status", "state", "na")==1) && $we) probiert.
Die obige Anweisung für sich funktioniert ebenso wie das Value(...) dennoch bleibt das Heating Control inaktiv.

Ob man Value oder ReadingVal verwenden kann sieht man wenn hier z.B. list HOME_Status in der Kommandozeile eingibt.
Mit Value() list man den Wert der nach STATE steht...
Mit ReadingsVal() kann man alle Werte lesen die nach Readings aufgeführt sind. Hier also "state"
Internals:
   CFGFN      /share/Public/fhem-5.4/FHEM/00_Home_Status.cfg
   NAME       HOME_Status
   NR         269
   STATE      1
   TYPE       dummy
   Readings:
     2013-11-01 15:29:32   state           1


folgendes funktionert...

... (Value("HOME_Status") == 1)
... ($we)
... (Value("HOME_Status") == 1 && 1)

folgendes geht nicht (führt zu inaktiv)

... ($we && 1)
... (($we) && 1)

Damit bleibe ich etwas ratlos zurück

Gruß Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 21:43:44
ich habe mal Value("Heizung") in der Oberfläche eingeben. Überraschenderweise kommt tatsächlich das richtge Ergebnis heraus.

ein Blick in die CommandRef:
Zitat
Value(<devicename>)
returns the state of the device (the string you see in paranthesis in the output of the list command).

OldValue(<devicename>)
OldTimestamp(<devicename>)
returns the old value/timestamp of the device.

ReadingsVal(<devicename>,<reading>,<defaultvalue>)
Return the reading (the value in the Readings section of "list device")

AttrVal(<devicename>,<attribute>,<defaultvalue>)
Return the attribute of the device

{ Value("wz") }
{ OldValue("wz") }
{ time_str2num(OldTimestamp("wz")) }
{ ReadingsVal("wz", "measured-temp", "20")+0 }
{ ReadingsTimestamp("wz", "measured-temp", 0)}
{ AttrVal("wz", "room", "none") }

Du hast also recht - es müßte funktonieren.
Value() ist eine normale Funktion in fhem.pl, so wie ReadingsVal auch:

sub
Value($)
{
  my ($d) = @_;
  if(defined($defs{$d}) &&
     defined($defs{$d}{STATE})) {
     return $defs{$d}{STATE};
  }
  return "";
}


Es muss also so funktionieren wie du es dir gedacht hast, aber warum es nicht geht - ???
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 22:06:27
ich befürchte das liegt an meinem Code in HC.
In der Zeile 312(Anhang) ist $we nicht definiert. Eine Fehlermeldung wird nicht erzeugt.

Der eigentliche Code der Form
{ fhem("set HeizungKueche desired-temp 22.0") if(heizungAnAus("An", 0))}
wird mit
my $ret  = AnalyzeCommandChain(undef, $command);
ausgeführt. in A..C..C wird $we tief im Innern definiert, so dass die Bedingung korrekt ausgefürht wird, aber active / inactive nicht richtig angezeigt wird - muss ich wohl nochmal nachbessern, wenn mir was besseres einfällt.

Schalte mal mit verbose 5 die debug-Infos ein. Dann wird bestimmt deutlich, dass doch alles funktioniert.

Das Problem bei der Anzeige active/inactive war, dass ich die Bedingung, die von außen mitgegeben wird nicht isoliert auswerten kann, insbesondere dann wenn komplexer Perlcode geliefert wird. Ich habe in meiner Funktion heizunganAus $we selbst neu ausgerechnet.

ich werde mal probieren, AnalyzeCommandChain(...) anstelle des eval zu nutzen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 01 November 2013, 22:31:32
Hallo Dietmar,

bei den "Inereien" deines Moduls überfordern meine bescheidenen FHEM/Perl Kenntnisse.
Ich werde jetzt die aktiv / inaktiv Anzeige ignorieren und mal sehen ob es trotzdem fuktioniert.
Danke für deine Hilfe !

Gruß Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 November 2013, 22:47:57
Schalte ruhig mal Verbose 5 für die HCs ein. Dann bekommst du etwas Output.

Gesendet von meinem HTC Desire S mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 02 November 2013, 22:34:16
eingecheckt
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 02 November 2013, 22:59:42
Hallo Dietmar,

bin zwischenzeitlich recht glücklich mit deinem Modul!

Ich habe das ganze zwischenzeitlich auf die {perl} Variante umgestellt... um das alles inkativ Problem zu umschiffen.
Vielleicht ist dies ja durch deine letze Version behoben.

so schhaut es jetzt bei mir aus....

fhem.cfg
define HC_KUECHE_WE Heating_Control KUECHE_hzg de 07:05|21 09:35|16 16:05|21 18:00|16 {if ($we){&SET_FHT("@",%)}}
attr HC_KUECHE_WE windowSensor KUECHE_fenster
attr HC_KUECHE_WE group Wochenende

define HC_KUECHE_WT Heating_Control KUECHE_hzg de 06:05|21.0 07:35|18.0 16:05|21.0 18:00|16.0 {if (!$we){&SET_FHT("@",%)}}
attr HC_KUECHE_WT windowSensor KUECHE_fenster
attr HC_KUECHE_WT group Wochentag

99_myUtils.pm

sub SET_FHT {
my ($fht , $desired_temp) = @_;
if (Value("HOME_Status") == 1) {fhem("set $fht desired-temp $desired_temp");}
else {fhem("set $fht desired_temp 16");}
}

sub SET_FHT_alloff {
   fhem("set BAD_hzg desired-temp 16");
        ......
   fhem("set KUECHE_hzg desired-temp 16");}

Nun noch ein paar Fragen:

1)
Ändert sich der HOME_Status auf Null werden alle Heizkörper heruntergefahren.
Nun fehlt mir aber eine elegante Möglichkeit um alle Heizkörper wieder auf die Wunschtemperatur zu fahren wenn jeman Heim kommt. (HOME_Status == 1).
Es geht mit einem rereadcfg was mir aber nicht sonderlich gefällt. Gibt es eine möglichkeit die Heating_Control zu triggern?

2)
Könnte diese Fehlermeldung von Heating Control verursacht werden? (Hatte ich vorher nicht)
Use of uninitialized value $n in hash element at /opt/bin/fhem.pl line 3004.

3)
Was für die Wunschliste
a)
Die Unterstützung der Wochenendfunktion wäre an dieser Stelle sehr praktisch und intuitiv anwendbar.
define HC_KUECHE_WT Heating_Control KUECHE_hzg de $we|06:05|21.0 07:35|18.0 16:05|21.0 18:00|16.0

b)
define HC_KUECHE_WT Heating_Control KUECHE_hzg de 06:05|21.0 07:35|18.0 16:05|21.0 18:00|night-temp
Schön wäre auch wenn man statt einer konkreten Temperatur die in der Steuereinheit hinterlegbaren Temperaturen (day-temp / night-temp) aufrufen könnte.
Vorteil: die Temperaturen sind dann ohne Programmänderung an jeder Steuereinheit auf die personlichen Bedürfnisse anpassbar.

Schönen Abend
Gruß Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 November 2013, 01:32:58
Zitat von: Petrosilius Zwackelmann am 02 November 2013, 22:59:42
Hallo Dietmar,

bin zwischenzeitlich recht glücklich mit deinem Modul!

1)
Ändert sich der HOME_Status auf Null werden alle Heizkörper heruntergefahren.
Nun fehlt mir aber eine elegante Möglichkeit um alle Heizkörper wieder auf die Wunschtemperatur zu fahren wenn jeman Heim kommt. (HOME_Status == 1).
Es geht mit einem rereadcfg was mir aber nicht sonderlich gefällt. Gibt es eine möglichkeit die Heating_Control zu triggern?

2)
Könnte diese Fehlermeldung von Heating Control verursacht werden? (Hatte ich vorher nicht)
Use of uninitialized value $n in hash element at /opt/bin/fhem.pl line 3004.

3)
Was für die Wunschliste
a)
Die Unterstützung der Wochenendfunktion wäre an dieser Stelle sehr praktisch und intuitiv anwendbar.
define HC_KUECHE_WT Heating_Control KUECHE_hzg de $we|06:05|21.0 07:35|18.0 16:05|21.0 18:00|16.0

b)
define HC_KUECHE_WT Heating_Control KUECHE_hzg de 06:05|21.0 07:35|18.0 16:05|21.0 18:00|night-temp
Schön wäre auch wenn man statt einer konkreten Temperatur die in der Steuereinheit hinterlegbaren Temperaturen (day-temp / night-temp) aufrufen könnte.
Vorteil: die Temperaturen sind dann ohne Programmänderung an jeder Steuereinheit auf die personlichen Bedürfnisse anpassbar.

Schönen Abend
Gruß Manuel

Zu 1): geht:
define HeizStatus2            notify Heizung:.*                          {Heating_Control_SetAllTemps()}
sucht alle definierten HC und führt die Fuktion Heating_Control_Update($hash); aus. Deine Automatik reagiert also jedesmal wenn das dummy Heizung geändert wird.

Zu 2):
ja, neues Modul ist eingecheckt - bei ihr besteht das Problem nicht mehr.

Zu 3a):
kommt, ob genau so, kann ich noch nicht sagen.

Zu 3b):
geht, ist genau so möglich. Wenn irgend etwas nicht klappt, verbose 5 und du bekommst Details angezeigt. Dann kannst du meist selbst erkennen was du ändern mußt.

...
Du kannst auch so etwas machen:
define hc1   Heating_Control ZentralHeizung de  so-sa|{sunrise_abs()}|on    so-sa|{sunset_abs()}|off ; attr hc1 verbose 5;
und damit eine Funksteckdose, an bzw. ausschalten. Was zwischen @ und % automatisch gesetzt wird, wird jetzt hoffentlich besser im autodetectionmodus erkannt. Bei deiner Perlvariante bist du selbst für das Zwischendrin zuständig. Anstelle von sunrise_abs() kannst du auch selbst erstellte Fuktionen verwenden. Sie müssen die Zeit im Format  HH:MM oder HH:MM:SS zurückgeben. Das ist auch der Grund warum sunrise()/sunset() nicht funktioniert. Sie lieferen manchmal 30:23:10 also größer 24:00:00. sunrise_abs()/sunset_abs() können verwendet werden.

oder dies geht auch:
define wd1   WeekdayTimer  Brunnen de  so-sa|{sunrise_abs()}|on-for-timer:1800    so-sa|{sunset_abs()}|on-for-timer:1800; attr hc1 verbose 5;
Dann wird der Doppelpunkt als Trenner eines weiteren Parameters eliminiert.

Du kannst auch Rollos damit schalten. Dann vielleicht besser WeekdayTimer nehmen - funktioniert identisch.

Weiterhin kannst du eine Liste mit Fensterkontakten angeben. Wenn bei einem von ihnen der Zustand  open oder tilted erkannt wird, wird das Schalten der Heizung verzögert.

define Terrassentuer          CUL_FHTTK 64b840
attr   HeizungWohnen_wt       windowSensor Terrassentuer FensterWohnen1 FensterWohnen2;

Bei HM sieht die Definition natürlich anders aus.

Das Protokoll sieht dann so aus:

2013.11.02 21:57:26 3: [HeizungWohnen_we] delay of switching HeizungWohnen stopped.
...
2013.11.02 21:55:26 3: [HeizungWohnen_we] switch of HeizungWohnen delayed - windowsensor 'Terrassentuer' Reading 'Window' is 'Open'
2013.11.02 21:37:48 3: [Befehl] Befehl HC done


Weiterhin viel Spass damit.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cwagner am 03 November 2013, 08:39:59
Moin, Dietmar,
Du rätst immer zu verbose=6; im Web-Interface wird aber nur Verbose 0...5 angeboten, die sechste Stufe müsste also 5 heißen, oder?

Herzliche Grüße
Christian
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 November 2013, 08:42:24
Zitat von: cwagner am 03 November 2013, 08:39:59
Moin, Dietmar,
Du rätst immer zu verbose=6; im Web-Interface wird aber nur Verbose 0...5 angeboten, die sechste Stufe müsste also 5 heißen, oder?

Herzliche Grüße
Christian

ZitatZu 3b):
geht, ist genau so möglich. Wenn irgend etwas nicht klappt, verbose 5 und du bekommst Details angezeigt. Dann kannst du meist selbst erkennen was du ändern mußt.

da steht auch 5!!!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cwagner am 03 November 2013, 10:03:33
sorry, ich kauf mir ne Brille!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 03 November 2013, 20:15:52
Hallo Dietmar,

danke für deine ausführliche Rückmeldung die ich nun Schritt für Schritt verarbeiten werde.
Zunächst rufe ich bei jeder Änderung von meinem Dummy HOME_Status die Funktion {Heating_Control_SetAllTemps()} auf.

Im Logfile erscheinen dann auch folgende Einträge...

2013.11.03 19:53:40 3: Heating_Control_Update() for HC_WZ_WT done!
2013.11.03 19:53:40 4: [HC_BAD_WE] Next switch 03.11.2013 22:00:00
2013.11.03 19:53:40 4: [HC_BAD_WE] 03.11.2013 18:30:00 ; aktParam: 21.0 ; newParam: 21.0
2013.11.03 19:53:40 5: [HC_BAD_WE] windowsensor 'BAD_fenster' Reading 'Window' is 'Closed'
2013.11.03 19:53:40 5: [HC_BAD_WE] list of windowsenors found: 'BAD_fenster'

Scheinbar wird aber nicht die Temperatur entsprechend der Perl-Anweisung ausgeführt (Diese senkt ab falls HOME_Status == 0 ist, sondern "nur" die Temperatur entsprechend des Profils.
Damit komme ich nicht zum gewünschten Ergebnis. Kannst du das Verhalten so bestätigen?

Gruß Manuel

fhem.cfg
define HC_BAD_WE Heating_Control BAD_hzg de 06:30|21.0 08:30|18.0 18:30|21.0 22:00|18.0 {if ($we){&SET_FHT("@","%")}}
attr HC_BAD_WE group Wochenende
attr HC_BAD_WE room HEIZUNG
attr HC_BAD_WE verbose 5
attr HC_BAD_WE windowSensor BAD_fenster

99_myUtils.pm
sub SET_FHT {
my ($fht , $DESIRED_temp) = @_;
my $NIGHT_temp = ReadingsVal($fht, "night-temp", "17.0");
if (Value("HOME_Status") == 1) {fhem("set $fht desired-temp $DESIRED_temp");}
else {fhem("set $fht desired-temp $NIGHT_temp");}
}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 November 2013, 22:31:56
versuch es mal mit der neuesten Version nach einem Update.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 04 November 2013, 20:24:20
Hallo Dietmar,

zu.....
ZitatScheinbar wird aber nicht die Temperatur entsprechend der Perl-Anweisung ausgeführt (Diese senkt ab falls HOME_Status == 0 ist, sondern "nur" die Temperatur entsprechend des Profils.
Damit komme ich nicht zum gewünschten Ergebnis. Kannst du das Verhalten so bestätigen?

Mit der Version von gestern ist das Problem behoben.

Vielen Dank
Gruß Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 04 November 2013, 20:45:53
Um credit zu sparen wurde die Temperatur nur dann verstellt wenn sie nicht schon dem gewünschten Wert entsprach.

Wenn die Kontrolle komplett auf eine Perlfunktion verlagert werden soll, ist dieses Vorgehen, wie in deinem Fall nicht sinvoll, weil deine Funktion  die Kontrolle erst gar nicht bekommen hat.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 04 November 2013, 23:15:00
Hallo Dietmar,


Zitat3b) Was für die Wunschliste

define HC_KUECHE_WT Heating_Control KUECHE_hzg de 06:05|21.0 07:35|18.0 16:05|21.0 18:00|night-temp
Schön wäre auch wenn man statt einer konkreten Temperatur die in der Steuereinheit hinterlegbaren Temperaturen (day-temp / night-temp) aufrufen könnte.
Vorteil: die Temperaturen sind dann ohne Programmänderung an jeder Steuereinheit auf die personlichen Bedürfnisse anpassbar.

ZitatZu 3b): geht, ist genau so möglich. Wenn irgend etwas nicht klappt, verbose 5 und du bekommst Details angezeigt. Dann kannst du meist selbst erkennen was du ändern mußt.


Das klappt bei mir leider noch nicht so recht....
fhem.cfg
define HC_WC_WT Heating_Control WC_hzg de 06:05|day-temp 18:05|night-temp {if (!$we){&SET_FHT("@","%")}}

sub SET_FHT {
my ($fht, $DESIRED_temp) = @_;
my $NIGHT_temp = ReadingsVal($fht, "night-temp", "17.0");
if (Value("HOME_Status") == 1) {
fhem("set $fht desired-temp $DESIRED_temp");
}
elsif (Value("HOME_Status") == 0) {
fhem("set $fht desired-temp $NIGHT_temp");
}
}


logfile
2013.11.04 23:00:30 3: Invalid temperature night-temp, choose one of on off 6.0 6.5 7.0 7.5 8.0 8.5 9.0 ......  23.5 24.0 24.5 25.0 25.5 26.0 26.5 27.0 27.5 28.0 28.5 29.0 29.5 30.0
2013.11.04 23:00:30 3: set WC_hzg desired-temp night-temp : Invalid temperature night-temp, choose one of on off 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0 10.5 11.0 11.5 .....


Problem:
Variante A)
Den Befehl "Set FHT-device desired-temp night-temp" gibt es nicht. Dein Modul müsste vorher ein ReadingsVal($fht, "night-temp", "kein wert") ausführen und dann diesen Rückgabewert verarbeiten.

Variante B) liegt an mir und meiner Funktion.


Die Werte night-temp und day-temp sind jedenfalls bei dem device gesetzt...

Gruß Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 05 November 2013, 00:17:56
B) !!!

wenn du eine eigene Funktion in HC angegeben hast, bekommt die Funktion die volle Kontrolle.
HC sendet keine eigene Befehle, nur  &SET_FHT(...).

Du musst dann mit eigenem Code desired-temp ergänzen oder nicht - kannst du gut über einen hash ermitteln.
Etwa so:

   my %modifier = ("MAX"=>"desiredTemperature","FHT"=>"desired-temp","CUL_HM"=>"desired-temp");
   my $commandMod = $modifier{$defs{$hash->{DEVICE}}{TYPE}};
      $commandMod = "" if (!defined($commandMod));

      fhem("set $fht $commandMod $DESIRED_temp");



Die zu realisierenden Varianten(HM, FHT, MAX, ...) wären einfach zu komplex, um sie alle in HC zu implementieren.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 05 November 2013, 23:19:26
Zitat3) Was für die Wunschliste

b)
define HC_KUECHE_WT Heating_Control KUECHE_hzg de 06:05|21.0 07:35|18.0 16:05|21.0 18:00|night-temp
Schön wäre auch wenn man statt einer konkreten Temperatur die in der Steuereinheit hinterlegbaren Temperaturen (day-temp / night-temp) aufrufen könnte.
Vorteil: die Temperaturen sind dann ohne Programmänderung an jeder Steuereinheit auf die personlichen Bedürfnisse anpassbar.

Zitat
Zu 3b):
geht, ist genau so möglich. Wenn irgend etwas nicht klappt, verbose 5 und du bekommst Details angezeigt. Dann kannst du meist selbst erkennen was du ändern mußt


Wegen obiger Rückmeldung hatte ich angenommen dein Modul verarbeitet night-temp und day-temp und übergibt sie der Perl Funktion als %.
Dies scheint zumindest bei Verwendung von eigenen Funktionen noch(?) nicht implementiert zu sein.

Null Problemo - das Modul arbeitet prima.
Danke
Gruß Manuel


Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Otto am 10 November 2013, 08:31:42
Hallo,

ich habe einen HM-LC-Bl1PBU-FM für ein Rollo und möchte es mit WeekdayTimer steuern. Nur wird er als Heizkörper erkannt!

2013.11.10 08:22:04 5: [Rollladen_Kue_up] list of windowsenors found: ''
2013.11.10 08:22:04 4: [Rollladen_Kue_up] Jetzt:10.11.2013 08:22:09 -> Next: 10.11.2013 08:22:00 -> Param: on -9
2013.11.10 08:22:04 4: [Rollladen_Kue_up] 10.11.2013 08:22:00 ; aktParam: 0.0 ; newParam: on
2013.11.10 08:22:04 4: [Rollladen_Kue_up] command: { fhem("set Rollo_Kue desired-temp on") if(ReadingsVal("Verreist", "state", "Ja") eq "Nein")}
2013.11.10 08:22:04 3: set Rollo_Kue desired-temp on : Unknown argument desired-temp, choose one of clear:readings,register,rssi,msgEvents down getConfig getRegRaw getSerial inhibit:on,off off on pair pct:slider,0,1,100 peerBulk press raw regBulk regSet reset sign:on,off statusRequest stop toggle unpair up
2013.11.10 08:22:04 3: Unknown argument desired-temp, choose one of clear:readings,register,rssi,msgEvents down getConfig getRegRaw getSerial inhibit:on,off off on pair pct:slider,0,1,100 peerBulk press raw regBulk regSet reset sign:on,off statusRequest stop toggle unpair up


define Rollladen_Kue_up WeekdayTimer Rollo_Kue 12345|07:00|on 67|08:22|on (ReadingsVal("Verreist", "state", "Ja") eq "Nein")

Wo Wie kann ich das ändern?

Gruß Otto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 November 2013, 09:36:33
Schick mir die Details deines Geräts mit list - dann verbessere ich die autodetection. Ich muss wissen, welches model dahinter steckt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Otto am 10 November 2013, 10:33:50
Hallo Dietmar,

hier die Details:
Internals:
   CFGFN      /opt/fhem/rollo.cfg
   DEF        20xxxxx
   EVENTS     1
   HMLAN1_MSGCNT 2
   HMLAN1_RAWMSG xxxxx
   HMLAN1_RSSI -69
   HMLAN1_TIME 2013-11-10 09:07:51
   IODev      HMLAN1
   LASTInputDev HMLAN1
   MSGCNT     2
   NAME       Rollo_Kue
   NR         249
   STATE      Auf
   TYPE       CUL_HM
   lastMsg    xxxxx
   protLastRcv 2013-11-10 09:07:51
   protSnd    2 last_at:2013-11-10 09:07:50
   protState  CMDs_done
   rssi_HMLAN1 avg:-71 min:-71 max:-71 lst:-71 cnt:1
   rssi_at_HMLAN1 avg:-69 min:-69 max:-69 lst:-69 cnt:2
   Readings:
     2013-11-10 08:38:35   CommandAccepted yes
     2013-10-23 18:14:37   PairedTo        xxx
     2013-10-23 17:57:06   R-driveDown     20 s
     2013-10-23 17:53:53   R-driveTurn     0.5 s
     2013-10-23 17:56:28   R-driveUp       20 s
     2013-10-23 18:14:37   R-intKeyVisib   invisib
     2013-10-23 18:14:37   R-localResDis   off
     2013-10-23 18:14:37   R-pairCentral   xxx
     2013-10-23 18:14:38   R-refRunCounter 0
     2013-10-23 18:14:38   R-sign          off
     2013-10-23 17:53:53   R-statusInfoMinDly 3 s
     2013-10-23 17:53:53   R-statusInfoRandom 0 s
     2013-10-23 18:14:38   R-transmitTryMax 6
     2013-10-23 18:14:37   RegL_00:        02:01 0A:A1 0B:B2 0C:3C 15:FF 18:00 00:00
     2013-10-23 18:14:38   RegL_01:        08:00 09:00 0A:00 0B:00 0C:C8 0D:00 0E:C8 0F:05 10:00  30:06 57:06 00:00
     2013-11-10 09:07:50   deviceMsg       on (to HMLAN1)
     2013-11-10 09:07:50   level           100 %
     2013-11-10 09:07:50   motor           stop:on
     2013-11-10 09:07:50   pct             100
     2013-10-29 07:09:32   running         -
     2013-11-10 09:07:50   state           on
     2013-11-10 09:07:50   timedOn         off
   Helper:
     mId        006A
     rxType     1
     Prt:
       bErr       0
       sProc      0
       Rspwait:
     Q:
       qReqConf   
       qReqStat   
     Role:
       chn        1
       dev        1
     Rssi:
       Hmlan1:
         avg        -71
         cnt        1
         lst        -71
         max        -71
         min        -71
       At_hmlan1:
         avg        -69
         cnt        2
         lst        -69
         max        -69
         min        -69
Attributes:
   alias      Jalousie Kueche
   autoReadReg 4_reqStatus
   devStateIcon Auf:shutter_1 Ab:shutter_closed .*:shutter_4
   eventMap   on:Auf off:Ab stop:Stop
   expert     2_full
   firmware   2.2
   fp_Erdgeschoss 490,705,2,Rollo
   group      Jalousie
   model      HM-LC-Bl1PBU-FM
   peerIDs    00000000,
   room       02_Jalousie,10_Erdgeschoss
   serialNr   xxxx
   subType    blindActuator
   webCmd     Auf:Ab:Stop


Gruß Otto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 November 2013, 12:45:51
Ich kann das model nicht erkennen. Wie sieht die Definition aus?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Otto am 10 November 2013, 13:29:18
Hallo,

weiss nicht genau was du (noch) brauchst.

Ich habe ein Homematic Model  HM-LC-Bl1PBU-FM, TYPE CUL_HM, SubType  blindActuator

define Rollo_Kue CUL_HM xxxxxx
attr Rollo_Kue .devInfo 010100
attr Rollo_Kue .stc 30
attr Rollo_Kue alias Jalousie Kueche
attr Rollo_Kue autoReadReg 4_reqStatus
attr Rollo_Kue devStateIcon Auf:shutter_1 Ab:shutter_closed .*:shutter_4
attr Rollo_Kue eventMap on:Auf off:Ab stop:Stop
attr Rollo_Kue expert 2_full
attr Rollo_Kue firmware 2.2
attr Rollo_Kue fp_Erdgeschoss 490,705,2,Rollo
attr Rollo_Kue group Jalousie
attr Rollo_Kue model HM-LC-Bl1PBU-FM
attr Rollo_Kue peerIDs 00000000,
attr Rollo_Kue room 02_Jalousie,10_Erdgeschoss
attr Rollo_Kue serialNr xxxx
attr Rollo_Kue subType blindActuator
attr Rollo_Kue webCmd Auf:Ab:Stop


Wo genau ist die autodetection definiert, dann kann ich vielleicht helfen....


Gruß Otto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 November 2013, 14:33:24
attr Rollo_Kue model HM-LC-Bl1PBU-FM
Dies ist das model. HM kennt nur den TYPE CUL_HM. Der Subtyp des Geräte wird über das model abgebildet.
Ich muss also bei autotetection erst den TYPE und je nach TYPE das model oder den type(MAX) berücksichtigen.
Dann kann ich erst bestimmen, ob es sich um eine Heizung handelt oder nicht. Bei Geräten von HM fehlten mit noch Details.

Es gibt eine solche Logik schon - ich muss sie noch ein wenig verändern.
Wenn es fertig, ist checke ist das Modul ein.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 November 2013, 17:59:33
Welches Kommando versteht deine Rollo?
set Rollo_Kue on
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Otto am 10 November 2013, 18:13:21
Hallo,

Kommandos:
on und off = fährt vollständig hoch und runter
up und down = Tippbetrieb

Ich nutze
set Rollo_Kue on
set Rollo_Kue off



Gruß Otto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 November 2013, 18:31:41
Ich glaube ich habe es geschafft.

Das Modul  habe ich aber noch aus einem anderem Grund verändert. Das muss ich nochmals genau testen, bevor ich es freigebe. Vielleicht ist es morgen früh schon aktiv.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 12 November 2013, 06:56:02
@ Otto
Die zweite Änderung macht noch Ärger.
Heute Abend folgt ein erneuter Test.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 13 November 2013, 16:35:53
Jetzt sollte autodetection für HM funktionieren
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Otto am 13 November 2013, 18:21:33
Hallo,

habe einen Fehler in Version 4210

2013.11.13 18:11:42 1: reload: Error:Modul 98_Heating_Control deactivated:
Missing right curly or square bracket at ./FHEM/98_Heating_Control.pm line 769, at end of line
syntax error at ./FHEM/98_Heating_Control.pm line 769, at EOF


Gruß Otto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 13 November 2013, 18:23:26
bitte nochmals updaten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ChrisW am 13 November 2013, 20:56:51
Oha wohl nach Update heute geht nix mehr :
2013.11.13 20:55:12 1: reload: Error:Modul 98_Heating_Control deactivated:
Missing right curly or square bracket at ./FHEM/98_Heating_Control.pm line 769, at end of line
syntax error at ./FHEM/98_Heating_Control.pm line 769, at EOF

2013.11.13 20:55:12 0: Missing right curly or square bracket at ./FHEM/98_Heating_Control.pm line 769, at end of line
syntax error at ./FHEM/98_Heating_Control.pm line 769, at EOF

2013.11.13 20:55:12 1: Including ./FHEM/aquarien.cfg
2013.11.13 20:55:12 1: reload: Error:Modul 98_Heating_Control deactivated:
Missing right curly or square bracket at ./FHEM/98_Heating_Control.pm line 769, at end of line
syntax error at ./FHEM/98_Heating_Control.pm line 769, at EOF

2013.11.13 20:55:12 0: Missing right curly or square bracket at ./FHEM/98_Heating_Control.pm line 769, at end of line
syntax error at ./FHEM/98_Heating_Control.pm line 769, at EOF

2013.11.13 20:55:12 1: reload: Error:Modul 98_Heating_Control deactivated:
Missing right curly or square bracket at ./FHEM/98_Heating_Control.pm line 769, at end of line
syntax error at ./FHEM/98_Heating_Control.pm line 769, at EOF

2013.11.13 20:55:12 0: Missing right curly or square bracket at ./FHEM/98_Heating_Control.pm line 769, at end of line
syntax error at ./FHEM/98_Heating_Control.pm line 769, at EOF
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: stromer-12 am 13 November 2013, 21:18:26
Ist im SVN repariert.

Auf die Schnelle selber die fehlende Klammer setzen.

      }
  return $setModifier;
  }                            # <----  Diese Klammer in Zeile 510 einfügen
}

################################################################################
sub Heating_Control_SetAllTemps() {            # {Heating_Control_SetAllTemps()}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ChrisW am 13 November 2013, 21:31:04
Danke ich weiss mir ja zu helfen und hab Backup eingespielt ;D
Wird ja dann morgen dabei sein.

Danke
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 13 November 2013, 22:11:00
ich habe gestern abend zu später Stunde noch Teststatements heraus genommen, dabei ist eine } zuviel mit verschwunden. War doch wohl schon zu spät.

Im SVN schon repariert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: det. am 20 November 2013, 18:58:21
Hallo Dietmar,
Nachdem heute früh am Feiertag die Garage automatisch aufging! wurde mir klar dass ich nach dem Einsatz deines Weekdaytimer Moduls noch keine Abfrage für Feiertage eingebaut habe. Da stieß ich auf den Post hier. Die Angabe !$we würde die Sache perfekt lösen, bringt aber eine Fehlermeldung ins LOG. Gibt es da Pläne?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 20 November 2013, 19:21:26
ja, es wird irgendwann eine Erweiterung geben, aber bisher bin ich noch nicht dazu gekommen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: det. am 20 November 2013, 20:10:42
fein, wenn Du es in den nächsten 4 Wochen schaffst, kommt Weihnachten die Testphase.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Charles am 15 Dezember 2013, 12:22:35
Hallo,

ich hab heute einen Neustart von FHEM gemacht. Seitdem lädt das Heating Control Modul nicht mehr. Im Log erscheint Folgendes:
2013.12.15 11:55:07 1: reload: Error:Modul 98_Heating_Control deactivated:
Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:07 0: Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:07 3: Please define HC.BadTemp first
2013.12.15 11:55:08 1: reload: Error:Modul 98_Heating_Control deactivated:
Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 0: Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 3: Please define HC.SchlafTemp first
2013.12.15 11:55:08 1: reload: Error:Modul 98_Heating_Control deactivated:
Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 0: Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 3: Please define HC.KuecheTemp first
2013.12.15 11:55:08 1: reload: Error:Modul 98_Heating_Control deactivated:
Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 0: Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 3: Please define HC.WZ1_Temp first
2013.12.15 11:55:08 1: reload: Error:Modul 98_Heating_Control deactivated:
Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 0: Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 3: Please define HC.B_G_Temp first
2013.12.15 11:55:08 1: reload: Error:Modul 98_Heating_Control deactivated:
Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 0: Type of arg 1 to keys must be hash or array (not hash element) at ./FHEM/98_Heating_Control.pm line 118, near "})"

2013.12.15 11:55:08 3: Please define HC.B_K_Temp first
2013.12.15 11:55:10 1: configfile: MaxCounterAT already defined, delete it first
Cannot load module Heating_Control
Please define HC.BadTemp first
Cannot load module Heating_Control
Please define HC.SchlafTemp first
Cannot load module Heating_Control
Please define HC.KuecheTemp first
Cannot load module Heating_Control
Please define HC.WZ1_Temp first
Cannot load module Heating_Control
Please define HC.B_G_Temp first
Cannot load module Heating_Control
Please define HC.B_K_Temp first
2013.12.15 11:55:10 1: Including ./log/fhem.save
2013.12.15 11:55:11 1: statefile: Please define HC.B_G_Temp first
Please define HC.B_G_Temp first
Please define HC.B_G_Temp first
Please define HC.B_G_Temp first
Please define HC.B_K_Temp first
Please define HC.B_K_Temp first
Please define HC.B_K_Temp first
Please define HC.B_K_Temp first
Please define HC.BadTemp first
Please define HC.BadTemp first
Please define HC.BadTemp first
Please define HC.BadTemp first
Please define HC.KuecheTemp first

Kann mir jemand weiterhelfen?

Danke Charles
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Charles am 15 Dezember 2013, 13:17:10
Hallo,

hab erstmal überprüft, obs neue Dateien gibt und werde erstmal updaten!

Charles
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 15 Dezember 2013, 13:44:30
Wenn du weiterhin Probleme hast, veröffentlichte deinen Code, dann kann ich auch helfen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Charles am 15 Dezember 2013, 15:17:41
Hallo Dietmar,
nach dem Update kommen keine Fehlermeldungen mehr. Hatte eine alte Version.

Danke
Charles
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerTom am 06 Januar 2014, 17:49:24
Hallo,

habe da mal eine Frage zu HC, weil ich grad am Testen bin...

Ich habe ein HC angelegt mit folgenden Parametern.

define HC_AZO_FHT80B Heating_Control AZO_FHT80B  12345|09:00|21.0 (ReadingsVal("Feiertag", "state", "no") eq "yes")

Wenn ich aber zum Test, den Schaltzeitpunkt auf z.B. 11 Uhr ändere (so geschehen um 10:54 Uhr (siehe unten)...

define HC_AZO_FHT80B Heating_Control AZO_FHT80B  12345|11:00|21.5 (ReadingsVal("Feiertag", "state", "no") eq "yes")

...schaltet HC den FHT nicht erst um 11 Uhr auf 21°C, sondern sofort (siehe unten stehendem Log...) Zusätzlich dazu, macht HC das dann um 11 Uhr aber nochmals. Kann mir einer erklären warum dies so ist?

2014.01.06 10:54:18.562 5: [HC_AZO_FHT80B] Switchingtime: 12345|11:00|21.5 : mo,di,mi,do,fr -> 11:00:00 -> 21.5
2014.01.06 10:54:19.576 5: [HC_AZO_FHT80B] list of windowsenors found: ''
2014.01.06 10:54:19.583 4: [HC_AZO_FHT80B] 03.01.2014 11:00:00 ; aktParam: 21.0 ; newParam: 21.5
2014.01.06 10:54:19.584 4: [HC_AZO_FHT80B] is not disabled
2014.01.06 10:54:19.586 4: [HC_AZO_FHT80B] command: { fhem("set AZO_FHT80B desired-temp 21.5") if(ReadingsVal("Feiertag", "state", "no") eq "yes")} executed
2014.01.06 10:54:19.606 2: FHT set AZO_FHT80B desired-temp 21.5
2014.01.06 10:54:19.837 4: [HC_AZO_FHT80B] Next switch 06.01.2014 11:00:00
2014.01.06 11:00:00.580 5: [HC_AZO_FHT80B] list of windowsenors found: ''
2014.01.06 11:00:00.584 4: [HC_AZO_FHT80B] Jetzt:06.01.2014 11:00:05 -> Next: 06.01.2014 11:00:00 -> Param: 21.5 -5
2014.01.06 11:00:00.589 4: [HC_AZO_FHT80B] 06.01.2014 11:00:00 ; aktParam: 21.5 ; newParam: 21.5
2014.01.06 11:00:00.590 4: [HC_AZO_FHT80B] is not disabled
2014.01.06 11:00:00.592 4: [HC_AZO_FHT80B] Next switch 07.01.2014 11:00:00


Gruß
Thomas
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 30 Januar 2014, 14:02:58
Hallo,

Was bedeutet:
no switch in the yesterdays because of the devices type
nach einem Heating_Control_SetAllTemps()?
Device-Types: PID20 und Dummy.
Beide werden im normalen Ablauf einwandfrei geschaltet, nur läuft Heating_Control_SetAllTemps() ins Leere.

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: mgernoth am 20 Februar 2014, 11:01:00
Hallo,

dem Heating_Control-Modul fehlt die Unterstützung für den neuen Homematic Raumthermostat:


Index: 98_Heating_Control.pm
===================================================================
--- 98_Heating_Control.pm (revision 4997)
+++ 98_Heating_Control.pm (working copy)
@@ -486,6 +486,7 @@
                       "WallMountedThermostat" => 1 },
       "CUL_HM" =>  {  "mode" => "model","setModifier" => "desired-temp",
                       "HM-CC-TC"              => 1,
+                      "HM-TC-IT-WM-W-EU"      => 1,
                       "HM-CC-RT-DN"           => 1 } );

   my $dHash = $defs{$hash->{DEVICE}};


Wäre Klasse, wenn diese Änderung ihren Weg ins Repository finden würde.

Danke & Gruß
  Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 20 Februar 2014, 12:13:55
kann ich machen!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: kubuntufan am 21 Februar 2014, 15:10:39
Guden,

Wäre es möglich das Modul Heating_Control so zu erweitern das man das 98_PID20.pm Modul füttern kann.

Gruß KubuntuFan

P.S: Habe die Änderungen selbst gemacht. Lade sie hoch sobald ich sie fertig getestet habe.

Im Anhang die Änderungen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Gunther am 26 März 2014, 00:55:41
Letztes Jahr habe ich mich hier mit meinen 9 FHTs ja irgendwann ausgeklinkt, da der Funkverkehr zu stark wurde. Da ich gerade Schrit für Schritt auf Homematic umsteige wollte ich mich mal erkundigen, inwieweit sich dadurch Funkprobleme lösen. Gibt es Erfahrungswerte mit 9 Homematic-Heizkörper-Thermostaten inkl. Wandthermostat und Fenstersensor? Ggf. macht ja auch eine Mischung aus 5 Homematic und 4-5 FHTs Sinn.

Freue mich über Erfahrungsberichte und Feedback. (Ich konnte zum zulässigen Funkverkehr und wirklichen Verhalten der Homematic-Geräte leider keine aussagekräftige Seite finden).
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 März 2014, 11:34:08
ich habe von HM keine Ahnung.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 März 2014, 11:35:15
@kubuntufan
klar, kann ich einbauen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 29 März 2014, 22:15:01
Hallo Dietmar,

gibt es seit dem Update vom 2014-03-16 eine Änderung bei der Verwendung von @ und %?
Was ist denn mit some obsolet gemeint?
Danke für einen Hinweis.

Danke
Manuel

Im Changelog steht
support for $NAME, $EVENT beside of @, %(some obsolet)

Ich übergebe bei meiner Heizungssteuerung @ und % an die Funktion SET_FHT, dort wird dann abhängig vom Home_Status entschieden ob die Heizung tatsächlich hochgedreht werden soll. Seit einiger Zeit habe ich FHEM-Abstürze und seit dem suche ich die Ursache.


define HC_SZ_WE Heating_Control SZ_hzg de 07:05|16.0 08:05|16.0 {if ($we){&SET_FHT("@","%")}}
attr HC_SZ_WE group Wochenende
attr HC_SZ_WE room HEIZUNG
attr HC_SZ_WE windowSensor SZ_fenster

define HC_SZ_WT Heating_Control SZ_hzg de 04:35|16.0 05:35|16.0 {if (!$we){&SET_FHT("@","%")}}
attr HC_SZ_WT group Wochentag
attr HC_SZ_WT room HEIZUNG
attr HC_SZ_WT windowSensor SZ_fenster


sub SET_FHT {
my ($fht, $DESIRED_temp) = @_;
if (Value("HOME_Status") == 1) {
Log(3,"HOME_Status 1 in sub SET_FHT erkannt - es wird $fht auf $DESIRED_temp gestellt");
fhem("set $fht desired-temp $DESIRED_temp");
}
elsif (Value("HOME_Status") == 0) {
Log(3,"HOME_Status 0 in sub SET_FHT erkannt - Temperatur von $fht wird auf 17°C abgesenkt");
fhem("set $fht desired-temp 17");
}
}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 29 März 2014, 23:10:08
Die Verwendung von @ und % verursacht bei der einen oder anderen Nutzung Probleme. Beispiel: email Adresse bei einem notify und FB_mail.

Deshalb soll mittelfristig auf $name $event umgestellt werden. Im wird beides unterstützt.

Du solltest bei der Verwendung keinen Unterschied bemerken.

Abstürtze? wie machen sie sich bemerkbar?
Was stürzt ab? Wann?
Hast du Hinweise im Log?
Hardware?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: mgernoth am 04 April 2014, 14:33:19
Hallo,

seit einiger Zeit scheint bei mir Heating_Control fhem zum Absturz zu bringen, wenn Heating_Control_SetAllTemps() aufgerufen wird:


Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_Control.pm line 316.
Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_Control.pm line 355.
Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_Control.pm line 405.
Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_Control.pm line 581.
Use of uninitialized value in concatenation (.) or string at ./FHEM/98_Heating_Control.pm line 454.
Use of uninitialized value in hash element at ./FHEM/98_Heating_Control.pm line 525.
...
Use of uninitialized value $dev in hash element at /local/fhem/fhem.pl line 3107.
Use of uninitialized value $dev in hash element at /local/fhem/fhem.pl line 2665.
Undefined subroutine &main::_Update called at /local/fhem/fhem.pl line 2448.


Anscheinend wird in Heating_Control_Update() auf das Element "HASH" des übergebenen Hashes zugegriffen, welches aber nicht existiert. Der übergebene Hash ist schon der richtige. Mein Quick-Fix sieht im Moment so aus und scheint zu funktionieren:


Index: FHEM/98_Heating_Control.pm
===================================================================
--- FHEM/98_Heating_Control.pm (revision 5427)
+++ FHEM/98_Heating_Control.pm (working copy)
@@ -556,7 +556,8 @@
            next;
         }
      }
-     Heating_Control_Update($hash);
+     my $myHash->{HASH}=$hash;
+     Heating_Control_Update($myHash);
      Log3 undef, 3, "Heating_Control_Update() for $hash->{NAME} done!";
   }
   Log3 undef,  3, "Heating_Control_SetAllTemps() done!";


Ich war mir nicht sicher, ob Heating_Control_Update() noch von anderen Stellen evtl. aufgerufen wird, weshalb ich Heating_Control_SetAllTemps() angepasst habe.

Gruß
  Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 04 April 2014, 20:02:32
So ist es richtig!
Das Problem ist mir noch nicht aufgefallen.
Danke! Ich werde es reparieren und einchecken.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Roger am 10 April 2014, 20:52:43
Hatte auch das Problem, dass 98_Heating_Control.pm 5390 2014-03-31 mir FHEM zum Absturz brachte.
Dank der Änderung von mgernoth läuft es nun wieder.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tpm88 am 16 Mai 2014, 11:02:42
Hallo,

bei Interesse - in der Rubrik Code Schnipsels habe ich vorgestellt, wie man einem WeekdayTimer im Webfrontend einen "Enable/Disable" Button spendieren kann.

http://forum.fhem.de/index.php/topic,23655.msg169141.html#msg169141

@Dietmar: Motivation für obige Lösung war ein WAF-kompatibler Button zum Aktivieren/Deaktivieren eines Timers für die Gartenbewässerung, damit die "Holde" hierfür nicht in der Definition des Timers manuell das "disable" Attribut setzen muss. Vielleicht könnte man hierzu ja auch ein set Kommando für WeekdayTimer / Heating_Control einführen (set <dev> enable / set <dev> disable).

Diskutieren könnte man auch, ob der der derzeitige "state" eines WeekdayTimers, nämlich der aktuelle Schaltzustand des geschalteten Objekts, wirklich sinnvoll ist. Den Schaltzustand sehe ich ja ohnehin am Device selber - der "state" eines Timers könnte dann z.B. auch "enabled" oder "disabled" sein. Das würde sich auch individuell mit stateFormat machen lassen.

Gruß
Tobias
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: T.ihmann am 16 Mai 2014, 13:50:00
Wäre es dann vielleicht sinnvoll, daß man standardmäßig in der Weboberfläche auf einen Button enable / disable klicken könnte. Das wäre m.E. sinnvoll. Im Moment stellt das Symbol ja nur den aktuellen Status dar und es ist nichts klickbar...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 16 Mai 2014, 19:57:22

define update_timer_status at +*00:01 { my $timer;
          foreach $timer ('timer_Wasser_01', 'timer_Wasser_02')
            { if ($attr{$timer}{disable}) { fhem "setreading $timer active disabled" }
              else { fhem "setreading $timer active enabled" }
            }
        }


ich könnte den HC und WD ein Reading verpassen, das bei set disable 0/1 feuert, dann kannst du darauf per notify reagieren und mußt nicht pollen.

Zitat(set <dev> enable / set <dev> disable).
ich denke darüber nach und setze es eventuell um, obwohl es bei keinem anderem Gerät so gemacht wird.

Diskutieren könnte man auch, ob der der derzeitige "state" eines WeekdayTimers, nämlich der aktuelle Schaltzustand des geschalteten Objekts, wirklich sinnvoll ist. Den Schaltzustand sehe ich ja ohnehin am Device selber - der "state" eines Timers könnte dann z.B. auch "enabled" oder "disabled" sein. Das würde sich auch individuell mit stateFormat machen lassen.

ja,  kann man sicher drüber diskutieren, ich denke darüber nach, wie man es sowohl für WD und HC umsetzen kann, so dass man die exitierenden Installationen nicht zu stark verändert. Dann hätte ich zuviel zu tun, im Moment leider wenig Zeit. 
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tpm88 am 17 Mai 2014, 08:56:44
Zitat von: Dietmar63 am 16 Mai 2014, 19:57:22

define update_timer_status at +*00:01 { my $timer;
          foreach $timer ('timer_Wasser_01', 'timer_Wasser_02')
            { if ($attr{$timer}{disable}) { fhem "setreading $timer active disabled" }
              else { fhem "setreading $timer active enabled" }
            }
        }


ich könnte den HC und WD ein Reading verpassen, das bei set disable 0/1 feuert, dann kannst du darauf per notify reagieren und mußt nicht pollen.
Könnte das Modul auch bereits auf das Setzen des Attributs "disable" ein solches Reading "feuern"?
=> dann bräuchte man weder die polling at Krücke noch das ein userReading

Zitat
ich denke darüber nach und setze es eventuell um, obwohl es bei keinem anderem Gerät so gemacht wird.
Ich weiß, dass das ein Sonderweg wäre.

Zitat
Diskutieren könnte man auch, ob der der derzeitige "state" eines WeekdayTimers, nämlich der aktuelle Schaltzustand des geschalteten Objekts, wirklich sinnvoll ist. Den Schaltzustand sehe ich ja ohnehin am Device selber - der "state" eines Timers könnte dann z.B. auch "enabled" oder "disabled" sein. Das würde sich auch individuell mit stateFormat machen lassen.

ja,  kann man sicher drüber diskutieren, ich denke darüber nach, wie man es sowohl für WD und HC umsetzen kann, so dass man die exitierenden Installationen nicht zu stark verändert. Dann hätte ich zuviel zu tun, im Moment leider wenig Zeit.
Mit einem zusätzlichen Reading müsste man das existierende Modulverhalten bezüglich state gar nicht ändern. Wer möchte, könnte es dann per stateFormat individuell anpassen.

Gruss
Tobias
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 17 Mai 2014, 20:26:19
ich habe eine Version von WD und HC fertiggestellt, die folgende Erweiterung beinhaltet:

mit

set <wd/hc> enable
set <wd/hc> disable

kann das Attribute disable gesetzt werden.

Gleichzeitig wird ein neues Reading disabled gepflegt, das  analog zum Attribut geführt wird und bei einer Änderung notifys feuert, so dass jemand darauf regieren kann. Das Ändern des Atttibuts disable über die Weboberfläche führt auch zu einer Aktualisierung des Readings disabled.

Ich prüfe noch ein wenig, ob alles funzt, dann checke ich es ein.
Vielleicht wird das eine oder andere einfacher dadurch.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 Mai 2014, 20:00:44
sowohl Heating_Control als auch WeekdayTimer um ein
Set wd disable
Set wd enable

ergänzt, und setzt das Attribut disable auf 0 bzw. 1
Die Änderung des Attibuts disable wird dann im Reading disabled als notify-Trigger zur Verfügung gestellt.

probiert es mal aus!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tpm88 am 23 Mai 2014, 21:17:34
Zitat von: Dietmar63 am 23 Mai 2014, 20:00:44
probiert es mal aus!

Hallo Dietmar,
prima - mach ich gerne. Allerdings erst ab Montag - ich geb dann Feedback. Das wird den Enable/Disable Button auf jeden Fall deutlich vereinfachen.

Gruss
Tobias
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tpm88 am 27 Mai 2014, 13:15:14
Zitat von: Dietmar63 am 23 Mai 2014, 20:00:44
sowohl Heating_Control als auch WeekdayTimer um ein
Set wd disable
Set wd enable

ergänzt, und setzt das Attribut disable auf 0 bzw. 1
Die Änderung des Attibuts disable wird dann im Reading disabled als notify-Trigger zur Verfügung gestellt.

probiert es mal aus!

Hallo Dietmar,

hmm - das funktioniert bei mir noch nicht. Nach dem Update habe ich im Frontend die Kommandos
set wd enable/disable  ???
und
set wd refresh

Auf der Kommandozeile hat ein
set wd disable
keinerlei Auswirkung, d.h. ich sehe weder das Attribut disable gesetzt noch ein Reading "disabled".

Mache ich was falsch?

Gruss
Tobias

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 Mai 2014, 17:06:01
Kannst du prüfen welche Version des Moduls du hast - erste Zeile im Sourcecode
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tpm88 am 27 Mai 2014, 18:03:59
version sagt:
# $Id: 98_WeekdayTimer.pm 5946 2014-05-23 17:41:49Z dietmar63 $

So stehts auch im File. Nach dem Update natürlich ein Restart von FHEM gemacht.

Gruss
Tobias
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Mai 2014, 01:07:20
ich muss wohl noch ein wenig nachbessern, habe aber noch Probleme und komme erst am Sonntag dazu mich wieder darum zu kümmern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tpm88 am 10 Juni 2014, 13:45:02
Hallo Dietmar,

es hat ein wenig gedauert, bis ich die Anpassungen (set <wd> enable/disable und das neue Reading disabled) testen konnte, weil ich meinen FHEM Server umgezogen habe.

Besten Dank für die Änderungen, die per se einwandfrei funktionieren. Dennoch habe ich noch einen kleinen Modifikationswunsch, da es mir nicht gelungen ist, das Reading "disabled" in einer readingsGroup mit den Attributen commands und valueIcon vernünftig auszuwerten. Die numerischen Werte 0 und 1 für "disabled" machen hier Schwierigkeiten.

Funktioniert nicht: Edit: Funktioniert doch!
commands { 'disabled.0' => 'set $DEVICE disable', 'disabled.1' => 'set $DEVICE enable' }
valueIcon { 'disabled.0' => 'Restart', 'disabled.1' => 'Shutdown' }


Liefert das Reading "disabled" jedoch stattdessen z.B. die Strings yes und no, funktionieren die readingsGroup Attribute einwandfrei:
commands { 'disabled.no' => 'set $DEVICE disable', 'disabled.yes' => 'set $DEVICE enable' }
valueIcon { 'disabled.no' => 'Restart', 'disabled.yes' => 'Shutdown' }


Hierzu habe ich folgende kleine Änderung im WeekdayTimer Modul vorgenommen:


[s]# /var/tmp/busybox diff -u 98_WeekdayTimer.pm 98_WeekdayTimer.pm.orig
--- 98_WeekdayTimer.pm
+++ 98_WeekdayTimer.pm.orig
@@ -97,8 +97,7 @@

   if( $attrName eq "disable" ) {
      my $hash = $defs{$name};
-     my $value = ( $attrVal eq '1') ? "yes" : "no";
-     readingsSingleUpdate ($hash,  "disabled",  $value, 1);
+     readingsSingleUpdate ($hash,  "disabled",  $attrVal, 1);
   }
   return undef;
}
[/s]


Könntest Du die Modifikation bitte so in WeekdayTimer (und ggf. Heating_Control etc) übernehmen? Edit: Nicht nötig.

Danke & Gruss
Tobias
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 Juni 2014, 16:59:01
Ja, könnte ich. Aber ist das nicht eher ein Problem von Readings group und der dortigen Implementierung? Id wenn schon ein allgemeines Modul existiert, muss es auch mit allem was es so gibt, fertig werden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tpm88 am 10 Juni 2014, 18:07:01
Hallo Dietmar,

ich werde gerne bei Andre nachfragen, ob readingsGroup da wirklich eine Einschränkung hat. Dann wäre es natürlich sinnvoller, es dort zu fixen. Vielleicht mache ja auch ich etwas falsch.

Ich dachte nur, da Du die Änderung mit dem disabled reading auf meinen Wunsch eingearbeitet hast, wäre es so einfacher.

Gruss
Tobias
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 Juni 2014, 18:09:05
Mal schauen was bei der Recherche heraus kommt.
Wenn es nicht anders möglich ist, kann ich natürlich ändern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tpm88 am 10 Juni 2014, 22:31:12
Jetzt steh ich dumm da.

Andre konnte das Problem nicht nachvollziehen - siehe http://forum.fhem.de/index.php/topic,14425.msg175735.html#msg175735 (http://forum.fhem.de/index.php/topic,14425.msg175735.html#msg175735)

Heute vormittag habe gefühlt stundenlang an der readingsGroup rumgeschraubt - und es nicht zum Laufen gebracht. Erst als ich o.g. Änderungen beim WD Modul eingeführt habe.

Jetzt habe ich noch einmal von scratch mit zwei dummy Timern eine Test readingsGroup definiert. Und es funktioniert auf Anhieb auch mit "disabled" = [0|1] !!

Mittlerweile habe ich auch meine eigentliche readingsGroup mit den zwei Bewässerungs-Timern wieder rückgebaut - und es klappt auch....

Ich kann es mir nur so erklären, dass ich irgendwo einen kleinen Typo (z.B. disable statt disabled o.ä.) drin hatte.

Alles gut. Danke & Gruss
Tobias
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 11 Juni 2014, 06:38:50
Na, super. Manchmal ist das so.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Basti am 21 Dezember 2014, 18:51:25
Gibt es eine Möglichkeit die (Perl basierten) Schaltzeiten beim WeekdayTimer per Kommando zu aktualisieren? Ich habs mit:
WeekdayTimer_SetAllParms ()
probiert, aber da ändert sich nichts an den Schaltzeiten.

Der Hintergrund dazu ist, dass ich 2 WeekdayTimer im Betrieb habe, welche Lichter in 2 Räumen schalten. Dabei habe ich die Ausschaltzeit des 1. and die Anschaltzeit des 2. WDT gekoppelt. Das habe ich realisiert, indem ich mit:

my $datetime = ReadingsVal($weektimer,"nextUpdate","20.12.2014 $fallback");

die nächste Schaltzeit des 2. WDT auslese. Ist nicht sehr robust, aber ich habe keine andere Möglichkeit gefunden und es funktioniert erstmal. Bin aber offen für bessere Vorschläge dies zu lösen.

Ein Problem besteht mit dieser Methode allerdings. Wenn ich z.B. die FHEM Konfig neu einlese, hat der 2. WDT noch keine echte Anschaltzeiten und das NextUpdate ist innerhalb von einer Minute oder so, was sich der 1. WDT dann als Auschaltzeit annimmt.
Das ist problematisch, wenn der 1. WDT noch gar nicht an ist, da er kann es sein, dass die Lampe des 1.WDT bis zum nächsten Tag durchläuft.

Daher möchte ich sobald der 1.WDT anschaltet, die Schaltzeiten auffrischen, damit der 1. WDT eine richtige Ausschaltzeit für den Tag gesetzt bekommt.

Die automatische Aktualisierung um Mitternacht reicht nicht aus, da dass in den meisten Fällen schon zu spät ist.

Vielen Dank für eure Hilfe.

Gruß,
Sebastian
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Otto am 30 Dezember 2014, 09:44:36
Hallo,

ist es sinnvoll, um ggf mehr Möglichkeiten zu haben, die neue Funktion set wd enable/disable zu nutzen.

Habe zur Zeit viele Profile die ich mit einer Funktion auf inactive setze, so was wie
define HCW Heating_Control WZ_Heizung Sa-So,Mi|08:00|21 (ReadingsVal("WeAreThere", "state", "no") eq "yes")
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tfinke am 03 Januar 2015, 00:41:45
Klingt gut...  :)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: chriss am 03 Januar 2015, 14:27:38
Hallo,

ich benutze den WeekDayTimer derzeit, um den State von RESIDENTS/HOMEMATE zeitabhängig zu setzten, da ich bisher keine automatische Presents-Funktionalität habe (soll später kommen). Was ich noch nicht hinbekommen habe, ist den Parameter $we bzw. !$we als Wochentag zu verwenden, um nicht nur die Wochenenden, sondern auch die Feier- und Urlaubstage berücksichtigen zu können. IMO einer der Hauptvorteile einer Fhem/WeekDayTimer-basierten Steuerung gegenüber den eingebauten Homematik Zeitprofilen.  Könnte jemand mal ein Beispiel zeigen, bei dem es funktioniert? Oder ist das vielleicht noch nicht implementiert?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 03 Januar 2015, 16:17:10
Hallo,

Ich denke du benötigst holiday2we. Siehe Commandref unter global.

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: chriss am 03 Januar 2015, 19:43:57
holiday2we habe ich schon eingerichtet, d.h., als Bedingung kann ich we und !we verwenden. Allerdings funktioniert es irgendwie nicht, wenn ich $we als Wochentag angebe. Also z.B.:


rgr_Bewohner !$we|06:45|awoken $we|09:00|awoken 1234567|24:00|asleep

statt

rgr_Bewohner 12345|06:45|awoken 67|09:00|awoken 1234567|24:00|asleep

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Januar 2015, 20:05:35
Das geht auch nicht!
Es gibt aber eine andere Möglichkeit. Poste ich gleich vom PC.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Januar 2015, 20:31:44
Macht es so:

Erstellt eine Funktion anOderAus() in 99_myUtils und ruft sie als Bedingung in HC auF.
Der Funktion anOderAus() geben wir einen Schalter mit, ob sie am WE gelten soll oder nicht:

define Heizung   Heating_Control Wandthermostat_Wohnzimmer 12345|05:30|20.5  12345|07:30|17 12345|16:30|21 12345|22:00|15 (anOderAus(0))

define Heizung_WE Heating_Control Wandthermostat_Wohnzimmer 1234567|07:45|19 1234567|08:30|20.5 1234567|11:00|18 1234567|16:00|21 1234567|22:30|15 (anOderAus(1))


anOderAus() in 99_myUtils.pm(mit Logging - kann später auskommentiert/gelöscht werden). In anOderAus() steht $we nicht zur Verfügung. Deshalb müssen wir es selbst errechnen. Im dummy HCAutomatik kann die Heizung komplet an oder ausgeschaltet werden:

sub anOderAus($) {
   my ($testWe) = @_;

   #we ermitteln
   my ($sec,$min,$hour,$mday,$month,$year,$wday,$yday,$isdst) = localtime;
   my $we = (($wday==0 || $wday==6) ? 1 : 0);
   if(!$we) {
     my $h2we = $attr{global}{holiday2we};
     $we = 1 if($h2we && $value{$h2we} && $value{$h2we} ne "none");
   }
   $testWe = $we if (!defined($testWe));
   Log 3, "testWe------------>$testWe";
   Log 3, "we------------>$we";

   my $state = ReadingsVal("HCAutomatik", "state", "");
   Log 3, "state------------>$state";
   my $ret = ($state eq "on" && $testWe == $we);
   Log 3, "ret------------>$ret";
   
   return $ret;
}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Januar 2015, 20:42:10
Zitat von: Basti am 21 Dezember 2014, 18:51:25
Gibt es eine Möglichkeit die (Perl basierten) Schaltzeiten beim WeekdayTimer per Kommando zu aktualisieren? Ich habs mit:
WeekdayTimer_SetAllParms ()
probiert, aber da ändert sich nichts an den Schaltzeiten.

Der Hintergrund dazu ist, dass ich 2 WeekdayTimer im Betrieb habe, welche Lichter in 2 Räumen schalten. Dabei habe ich die Ausschaltzeit des 1. and die Anschaltzeit des 2. WDT gekoppelt. Das habe ich realisiert, indem ich mit:

my $datetime = ReadingsVal($weektimer,"nextUpdate","20.12.2014 $fallback");

die nächste Schaltzeit des 2. WDT auslese. Ist nicht sehr robust, aber ich habe keine andere Möglichkeit gefunden und es funktioniert erstmal. Bin aber offen für bessere Vorschläge dies zu lösen.

Ein Problem besteht mit dieser Methode allerdings. Wenn ich z.B. die FHEM Konfig neu einlese, hat der 2. WDT noch keine echte Anschaltzeiten und das NextUpdate ist innerhalb von einer Minute oder so, was sich der 1. WDT dann als Auschaltzeit annimmt.
Das ist problematisch, wenn der 1. WDT noch gar nicht an ist, da er kann es sein, dass die Lampe des 1.WDT bis zum nächsten Tag durchläuft.

Daher möchte ich sobald der 1.WDT anschaltet, die Schaltzeiten auffrischen, damit der 1. WDT eine richtige Ausschaltzeit für den Tag gesetzt bekommt.

Die automatische Aktualisierung um Mitternacht reicht nicht aus, da dass in den meisten Fällen schon zu spät ist.

Vielen Dank für eure Hilfe.

Gruß,
Sebastian

Du könntest es folgendermaßen machen:
Du definiert nur einen WD
define xxx WeekdayTimer   16:00|an1  17:00|an2   18:00:aus   {meineFunktion("@", "%")}

Dann bekommst du in meineFunktion() das device und den Value {an1, an2, aus }  übermittelt und kannst selbst schalten mit:


fhem  ("set lampe1 an")
fhem  ("set lampe1 aus;; set lampe2 an")
fhem  ("set lampe2 aus)

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: chriss am 03 Januar 2015, 23:59:59
Zitat
Erstellt eine Funktion anOderAus() in 99_myUtils und ruft sie als Bedingung in HC auF.
Der Funktion anOderAus() geben wir einen Schalter mit, ob sie am WE gelten soll oder nicht:

Danke für das Beispiel. Demnach kann $we auch nicht in der Condition direkt verwendet werden? Hatte bisher angenommen, dass das ginge, da es relativ am Anfang auch als Beispie genannt wurde, habe aber immer nur die Verwendung von $we als Tag versucht, da man damit nur einen Timer benötigen würde. Ich probiere es dann mit der Hilfsfunktion und zwei Timern...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 04 Januar 2015, 09:31:19
Doch das funktioniert meines Wissens, weil dem Ausdruck der in WD ausgeführt wird,  im Gegensatz zu den Funktionen in 99_myUtils.pm der Zeitkontext($we, $wday, $hash, $mday...) bereitstellt wird.

Ich überlege mal, wie man das ändern kann, es führt nämlich immer wieder zu Missverständnissen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: chriss am 04 Januar 2015, 14:12:18
Irgendetwas ist aber anders: Bei zwei Timern, einer mit der Condition ($we) und einer mit der Condition (!$we), stehen beide nach einem WeekdayTimer_setAllParams() auf "inactive". Einer sollte aber aktiv sein.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 04 Januar 2015, 14:51:13
@chriss:
Veröffentliche mal die genauen Definitionen
Schalte mal verbose 5 ein. Ggf Logging einbauen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Basti am 04 Januar 2015, 16:17:26
Zitat von: Dietmar63 am 03 Januar 2015, 20:42:10
Du könntest es folgendermaßen machen:
Du definiert nur einen WD
define xxx WeekdayTimer   16:00|an1  17:00|an2   18:00:aus   {meineFunktion("@", "%")}
Das schaut nach einer wunderbaren Lösung aus, danke!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: chriss am 04 Januar 2015, 21:39:25
Ich habe, wie gesagt, zwei Timer definiert:

define ResidentsStateTimer_Free WeekdayTimer rgr_Bewohner 09:00|awoken 11:00|home 20:10|absent 24:00|asleep ($we)
define ResidentsStateTimer_Work WeekdayTimer rgr_Bewohner 06:45|awoken 07:15|home 08:00|absent 15:00|home 20:10|absent 24:00|asleep (!$we)


Grundsätzlich scheint das Schalten auch zu gehen. Heute um 20:10 hat der *_Free geschaltet, der *_Work aber nicht:

2015.01.04 20:10:00 4: [ResidentsStateTimer_Work] Jetzt:04.01.2015 20:10:05 -> Next: 04.01.2015 20:10:00 -> Param: absent -5.00384211540222
2015.01.04 20:10:00 5: [ResidentsStateTimer_Work] list of senors found: 'ResidentsStateTimer_Work'
2015.01.04 20:10:00 4: [ResidentsStateTimer_Work] 04.01.2015 20:10:00 ; aktParam: 0 ; newParam: absent
2015.01.04 20:10:00 4: [ResidentsStateTimer_Work] is not disabled
2015.01.04 20:10:00 4: [ResidentsStateTimer_Work] command: { fhem("set rgr_Bewohner  absent") if(!$we)} executed
2015.01.04 20:10:00 4: [ResidentsStateTimer_Work] Next switch 05.01.2015 00:00:00
2015.01.04 20:10:00 5: [ResidentsStateTimer_Work] removing Timer: ResidentsStateTimer_Work_Update
2015.01.04 20:10:00 5: [ResidentsStateTimer_Work] setting  Timer: ResidentsStateTimer_Work_Update 05.01.2015  00:00:00
2015.01.04 20:10:00 4: [ResidentsStateTimer_Free] Jetzt:04.01.2015 20:10:05 -> Next: 04.01.2015 20:10:00 -> Param: absent -5.01038002967834
2015.01.04 20:10:00 5: [ResidentsStateTimer_Free] list of senors found: 'ResidentsStateTimer_Free'
2015.01.04 20:10:00 4: [ResidentsStateTimer_Free] 04.01.2015 20:10:00 ; aktParam: 0 ; newParam: absent
2015.01.04 20:10:00 4: [ResidentsStateTimer_Free] is not disabled
2015.01.04 20:10:00 4: [ResidentsStateTimer_Free] command: { fhem("set rgr_Bewohner  absent") if($we)} executed
2015.01.04 20:10:00 2: RESIDENTS set rgr_Bewohner absent
2015.01.04 20:10:00 4: [ResidentsStateTimer_Free] Next switch 05.01.2015 00:00:00
2015.01.04 20:10:00 5: [ResidentsStateTimer_Free] removing Timer: ResidentsStateTimer_Free_Update
2015.01.04 20:10:00 5: [ResidentsStateTimer_Free] setting  Timer: ResidentsStateTimer_Free_Update 05.01.2015  00:00:00


Wenn ich aber {WeekdayTimer_SetAllParms()} aufrufe (in diesem Fall kurz danach, der *_Free sollte also auf "absent" stehen), dann gehen beide auf inactive:


2015.01.04 20:18:29 5: Cmd: >{WeekdayTimer_SetAllParms ()}<
2015.01.04 20:18:29 5: Triggering ResidentsStateTimer_Free (1 changes)
2015.01.04 20:18:29 5: Notify loop for ResidentsStateTimer_Free inactive
2015.01.04 20:18:29 5: statistics Verbraucher1_Statistics: Notify.260 Notification of 'ResidentsStateTimer_Free' received. Device not monitored.
2015.01.04 20:18:29 5: ResidentsStateController: not on any display, ignoring notify
2015.01.04 20:18:29 4: eventTypes: WeekdayTimer ResidentsStateTimer_Free inactive -> inactive
2015.01.04 20:18:29 4: eventTypes: WeekdayTimer ResidentsStateTimer_Free state: inactive -> state: inactive
2015.01.04 20:18:29 5: rg_battery: not on any display, ignoring notify
2015.01.04 20:18:29 5: Triggering ResidentsStateTimer_Work (1 changes)
2015.01.04 20:18:29 5: Notify loop for ResidentsStateTimer_Work inactive
2015.01.04 20:18:29 5: statistics Verbraucher1_Statistics: Notify.260 Notification of 'ResidentsStateTimer_Work' received. Device not monitored.
2015.01.04 20:18:29 5: ResidentsStateController: not on any display, ignoring notify
2015.01.04 20:18:29 4: eventTypes: WeekdayTimer ResidentsStateTimer_Work inactive -> inactive
2015.01.04 20:18:29 4: eventTypes: WeekdayTimer ResidentsStateTimer_Work state: inactive -> state: inactive
2015.01.04 20:18:29 5: rg_battery: not on any display, ignoring notify
2015.01.04 20:18:29 3: WeekdayTimer_SetAllParms() done!


Noch eine Ergänzung: Wenn ich z.B. die Condition im *_Free Timer von "($we)" auf "(1)" ändere, dann klappt auch das  WeekdayTimer_SetAllParms ():


2015.01.04 21:41:23 5: Cmd: >{WeekdayTimer_SetAllParms ()}<
2015.01.04 21:41:23 5: [ResidentsStateTimer_Free] list of senors found: 'ResidentsStateTimer_Free'
2015.01.04 21:41:23 4: [ResidentsStateTimer_Free] 04.01.2015 20:10:00 ; aktParam: 0 ; newParam: absent
2015.01.04 21:41:23 4: [ResidentsStateTimer_Free] is not disabled
2015.01.04 21:41:23 4: [ResidentsStateTimer_Free] command: { fhem("set rgr_Bewohner  absent") if(1)} executed
2015.01.04 21:41:23 5: Cmd: >{ fhem("set rgr_Bewohner  absent") if(1)}<
2015.01.04 21:41:23 5: Cmd: >set rgr_Bewohner  absent<
2015.01.04 21:41:23 5: RESIDENTS rgr_Bewohner: called function RESIDENTS_Set()
2015.01.04 21:41:23 2: RESIDENTS set rgr_Bewohner absent
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: chriss am 09 Januar 2015, 20:31:10
Any ideas?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 März 2015, 21:07:16
98_Heating_Control, 98_WeekdayTimer:
          big refactoring update with some minor improvements.

from now it is possible to define $we or !$we in daylist to easily allow weekend an holiday. $we !$we are coded as 7 8, when using a numeric daylist.

Some examples:

define hc    WeekdayTimer HeizungKueche de        7|23:35|25 34|23:30|22 23:30|16 23:15|22  8|23:45|16   
define hc    WeekdayTimer HeizungKueche de        fr,$we|23:35|25 34|23:30|22 23:30|16 23:15|22  12|23:45|16   
define hc    WeekdayTimer HeizungKueche de        20:35|25 34|14:30|22 21:30|16 21:15|22  12|23:00|16   

define hw    WeekdayTimer HeizungKuech  de         mo-so,$we|{sunrise_abs_dat($date)}|18       mo-so,$we|{sunset_abs_dat($date)}|22  ;
define ht    WeekdayTimer HeizungKuech  de        mo-so,!$we|{sunrise_abs_dat($date)}|18      mo-so,!$we|{sunset_abs_dat($date)}|22  ;

define hh    WeekdayTimer HeizungKuech  de        {sunrise_abs_dat($date)}|19           {sunset_abs_dat($date)}|21  ;
define hx    WeekdayTimer HeizungKueche de        22:35|25  23:00|16     



The daylist can be given globaly for the whole WD, HC:

define HeizungWohnen_an_wt    Heating_Control HeizungWohnen de  !$we     09:00|19  (heizungAnAus("Ein"))
define HeizungWohnen_an_we    Heating_Control HeizungWohnen de   $we     09:00|19  (heizungAnAus("Ein"))
define HeizungWohnen_an_we    Heating_Control HeizungWohnen de   78      09:00|19  (heizungAnAus("Ein"))
define HeizungWohnen_an_we    Heating_Control HeizungWohnen de   57      09:00|19  (heizungAnAus("Ein"))
define HeizungWohnen_an_we    Heating_Control HeizungWohnen de  fr,$we   09:00|19  (heizungAnAus("Ein"))
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: dlehmann69 am 29 März 2015, 19:06:38
Hallo,

seit dem Update erhalte ich bei jedem Vorgang von Heating_Control folgende Meldungen im Log.

2015.03.29 15:00:00 3: eval: {( 1 && ($wday ~~ [0,1,2,3,4,5,6]))}
2015.03.29 15:00:00 1: PERL WARNING: Smartmatch is experimental at (eval 1014) line 1.
2015.03.29 15:00:00 3: eval: {( 1 && ($wday ~~ [1]))}
2015.03.29 15:00:00 1: PERL WARNING: Smartmatch is experimental at (eval 1012) line 1.


Diese haben wahrscheinlich nichts schlimmes zu bedeuten. Kann man diese dann bitte unterdrücken.

Besten Dank
Dirk
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 29 März 2015, 20:19:28
Kannst du erst mal ignorieren. Muß ich umbauen, wird aber dauern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: zicki am 31 März 2015, 14:35:29
@ Dietmar63

Einmal zur Info!
Seit dem Update funktioniert Heating_Control_SetAllTemps() nicht mehr.
Auszug aus dem Logfile: {Heating_Control_SetAllTemps()}: Undefined subroutine &main::Heating_Control_SetTimer called at ./FHEM/98_Heating_Control.pm line 110.


Gruß Zicki
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Virsacer am 31 März 2015, 17:45:04
Ja, diesen Fehler hab ich auch :-\

Heute morgen haben die Heating_Controls noch hochgeregelt, aber dann war der Status "inactive" :o
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 01 April 2015, 07:14:39
Ich habe seit gestern oder vorgestern das hier im Log stehen:
[KZ_Heizungsregelung] "7" in daylist now means $we(weekend) - see dokumentation!!!
Steht die Wochentagsnummer 7 jetzt nicht mehr für Sonntag, sondern global für WE und damit auch für Samstag?!

Außerdem massenhaft
PERL WARNING: Use of uninitialized value in string eq at fhem.pl line 4159
Bin mir aber nicht sicher ob die vom Heatingcontrol kommen, hat jemand ähnliche Beobachtungen?

Danke  :) 

[Edit] Ach ja, gerade noch gesehen, dass heute früh bei mir auch zwar alle Heatings hochgeregelt haben, jetzt aber ausnahmslos auf inactive stehen...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: justme1968 am 01 April 2015, 12:44:01
hallo dietmar,

im logProxy gibt es die möglichkeit wochenprofile in einem plot darzustellen. das funktioniert für max, homematic und mit der alten WeekdayTimer und Heating_Control version. für WeeldayTimer habe ich bis dazu bis jetzt {helper}{SWITCHINGTIME} ausgewertet weil das schon aufbereitet und sprachunabhängig war.

seit dem letzten update hat sich intern aber einiges geändert so das das so nicht mehr funktioniert.

hast du einen vorschlag wie ich (oder auch andere frontend module) an die aufbereiteten schaltzeiten komme?
ideal wäre eine datenstruktur die für jeden tag die zeiten und den zu schaltenden wert enthält so wie es mit SWITCHINGTIME der fall war.

ein weiterer anwendungsfall wäre auch die grafische konfiguration über widgets wie die hier vorgestellten: http://forum.fhem.de/index.php/topic,32660.0.html (http://forum.fhem.de/index.php/topic,32660.0.html).

gruss
  andre
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 01 April 2015, 20:04:00
Hatte nach dem Update auch nur noch Fehler  :'(
Hab dann alle Definitionen geändert (wegen 7 für WE), danach waren zumindest die Fehler/Meldungen im Log fast Weg.

Aber das wirkliche Problem, alle HC Definitionen gingen auf "inactive" und das wars dann.

Bin wieder auf die alte version zurück.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 April 2015, 20:11:26
Bin gerade nicht in der Lage schnell zu helfen. Ab Ostermontag können wir uns kurzschliessen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 02 April 2015, 13:54:50
Bin auch erst mal wieder zurück auf die Dez.-Version. Insofern bei mir erstmal Entspannung  ;)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Ascos am 06 April 2015, 17:51:47
Versteh ich das richtig, das ein Update im Moment nicht angeraten ist, weil das Heizprogramm dann nicht mehr richtig funktioniert?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 06 April 2015, 19:05:44
Ich kümmere mich gleich darum. Morgen ist eine neue Version verfügbar.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Ascos am 07 April 2015, 17:27:38
Zitat von: Dietmar63 am 06 April 2015, 19:05:44
Ich kümmere mich gleich darum. Morgen ist eine neue Version verfügbar.

War nicht böse gemeint und will auch keine Hektik verbreiten, wollte nur kurz nachfragen, da ich es hier gelesen hatte. ;)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 07 April 2015, 20:07:12
eingecheckt:

folgende Probleme sind behoben:
http://forum.fhem.de/index.php/topic,34711.0.html (http://forum.fhem.de/index.php/topic,34711.0.html)
http://forum.fhem.de/index.php/topic,35792.0.html (http://forum.fhem.de/index.php/topic,35792.0.html)
http://forum.fhem.de/index.php/topic,10011.msg279507.html#msg279507 (http://forum.fhem.de/index.php/topic,10011.msg279507.html#msg279507)

Zitat
Ich habe seit gestern oder vorgestern das hier im Log stehen:
[KZ_Heizungsregelung] "7" in daylist now means $we(weekend) - see dokumentation!!!
Steht die Wochentagsnummer 7 jetzt nicht mehr für Sonntag, sondern global für WE und damit auch

ja, das ist so. 
Ich habe  mich aus verschiedenen Gründen entschieden die Tagesangabe wie in DOIF zu ändern.
0 Sonntag
1 Montag
2 Dienstag
3 Mittwoch
4 ...
7 Wochenende  ($we)
8 Wochentag    (!$we)

Definitionen bitte verändern(commandRef muss ich noch anpassen, sollte aber selbsterklärend sein) Beispiele:
http://forum.fhem.de/index.php/topic,10011.msg278781.html#msg278781 (http://forum.fhem.de/index.php/topic,10011.msg278781.html#msg278781)

noch offen:
- LogProxy
- manchmal wird inactive angezeigt. Verbesserung noch in Arbeit.
Die  HC und WD laufen aber. Ihr könnt das überprüfen, indem ihr verbose auf 4 oder 5 setzt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ulli am 07 April 2015, 21:23:02
Ich bekomme immer noch folgenden Fehler

notify_Heating return value: Undefined subroutine &main::Heating_Control_SetTimer called at ./FHEM/98_Heating_Control.pm line 110.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hollo am 08 April 2015, 09:27:14
Das klingt super, aber ich habe noch eine Verständnisschwierigkeit...
Prüft WeekdayTimer an einem Tag, ob gleichzeitig Wochenende bzw. Feiertag ist?

Konkretes Beispiel:
Ich habe "Weckzeiten" für die normale Woche, den Samstag, den Sonntag.
Jetzt möchte ich eigentlich nur, dass ich an einem Feiertag nicht wie an einem normalen Wochentag geweckt werde.

Meine aktuelle Anpassung der WeekdayTimer-Definition an die jetzige Änderung sieht so aus:
HomeStatus Mo-Fr|05:45|home Sa|07:30|home So,$we|08:00|home (ReadingsVal("Bewohner","state","") eq "anwesend")

Dementsprechend werden auch die Profile ausgegeben:

   Profil 0: Sonntag 08:00:00 home
   Profil 1: Montag 05:45:00 home
   Profil 2: Dienstag 05:45:00 home
   Profil 3: Mittwoch 05:45:00 home
   Profil 4: Donnerstag 05:45:00 home
   Profil 5: Freitag 05:45:00 home
   Profil 6: Samstag 07:30:00 home
   Profil 7: Wochenende 08:00:00 home


Zurück zur Frage...
- wird nun an einem Samstag, der ja gleichzeitig auch WE ist, um 7:30 oder um 8:00 Uhr geschaltet?
- wird an einem Feiertag-Montag, wie jetzt Ostermontag gewesen wäre, um 5:45 oder um 8:00 Uhr geschaltet?
- wie müsste ich es korrekt definieren, um "nur" einen Feiertag wie einen Sonntag zu behandeln?

Bitte keine Antwort "warte es doch ab und lass Dich überraschen"; es geht um das Verständnis und die richtige Konfiguration.  :-[

Gruß,
Hollo
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 09 April 2015, 07:05:45
Hallo!
Nach dem Update von gestern habe ich trotzdem noch mehrere "Heating_Control define" als inactive!

Gab es nicht mit dem Update ein fix?

Nutze dieses Modul schon eine ganze Weile und bis jetzt noch nie Probleme damit gehabt.

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 09 April 2015, 08:00:36
In meinem letzten Post habe ich geschrieben, dass es genau damit und mit log Proxy noch nicht behobene Probleme gibt. Die Lösungen sind in Arbeit.

Die timer laufen aber. Das kannst du mit verbose 4 auf den HC, WD prüfen.

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 09 April 2015, 22:03:12
Zitat
noch offen:
- LogProxy
- manchmal wird inactive angezeigt.

mit der heute eingecheckten Version sind diese Probleme auch behoben.
HC und WD stehen damit wieder wie zuvor zur Verfügung.

hier noch einige Hinweise:

http://forum.fhem.de/index.php/topic,10011.msg283379.html#msg283379
(http://forum.fhem.de/index.php/topic,10011.msg283379.html#msg283379)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 10 April 2015, 21:51:03
Hallo!

Leider funkt es immer noch nicht, siehe Anhang...

Habe aber heute beim Update auch nur das Update für WeekdayTimer bekommen, nicht für Heating_Control!

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 April 2015, 22:49:24
was funktioniert denn deine Meinung nach nicht?
bekommst du noch Fehlermeldungen im log?

Wie sehen die Definitionen der timer aus, die nicht funktionieren?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 12 April 2015, 17:59:52
@Steffen:
hast du es jetzt allein geschafft?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 12 April 2015, 20:15:34
Hallo,

Entshuldige bitte, hatte vergessen zu antworten!

Nach einem Restart habe ich zwar immer noch das "inactiv" immer unterschiedlich bei den einzelnen define,
aber die Timer funktionieren in der Tat korrekt.

Ich werde morgen mal ein log hier posten.

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 12 April 2015, 20:47:27
Dann liegt es an der Reihenfolge wann sie beim Start definiert werden. Wichtig ist, dass Twilight früher definiert sein muss!!!
Vielleicht kannst du doch mal die Definitionen posten.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: det. am 12 April 2015, 22:30:07
Hatte seit Deinen Modulupdates auch massive Probleme mit Fehlermeldungen, die letztlich auf falsche Reihenfolge aufeinander aufbauender Variablendefinitionen bei voneinander abhängigen Modulen herrührten.
Hab da heute mal wieder massiv in fhem.cfg rumgedoktert, was man ja nach Aussagen von Spezialisten hier im Forum nicht machen sollte und völlig unnötig wäre.
Meine Frage dazu - wie bekomme ich bestimmte Definitionen an den Beginn der fhem.cfg gepinnt? Bitte nicht durch löschen und neu anlegen - ist bei weekdaytimern und HC nicht zielführend, weil zu aufwändig.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 13 April 2015, 16:38:07
Blöde Frage, wie ist denn der genau Syntax für windowSensor, wenn ich mehrere Fenster habe?

attr windowSensor Fenster1,Fenster2,Fenster3

oder

attr windowSensor Fenster1 Fenster 2 Fenster3

Wenn ich Variante zwei mache, meldet mit das Modul kein waiting... und die Fenster sind "nur" Text
Wenn ich Variante eins mache, sind die Fenster Links
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 13 April 2015, 17:07:15
Zitat von: det. am 12 April 2015, 22:30:07
Hatte seit Deinen Modulupdates auch massive Probleme mit Fehlermeldungen, die letztlich auf falsche Reihenfolge aufeinander aufbauender Variablendefinitionen bei voneinander abhängigen Modulen herrührten.
Hab da heute mal wieder massiv in fhem.cfg rumgedoktert, was man ja nach Aussagen von Spezialisten hier im Forum nicht machen sollte und völlig unnötig wäre.
Meine Frage dazu - wie bekomme ich bestimmte Definitionen an den Beginn der fhem.cfg gepinnt? Bitte nicht durch löschen und neu anlegen - ist bei weekdaytimern und HC nicht zielführend, weil zu aufwändig.

Keine Ahnung - ich editiere immer direkt in der fhem.cfg egal was die selbsternannten Spezialisten so sagen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 13 April 2015, 17:53:48
Zitat von: det. am 12 April 2015, 22:30:07
Hatte seit Deinen Modulupdates auch massive Probleme mit Fehlermeldungen, die letztlich auf falsche Reihenfolge aufeinander aufbauender Variablendefinitionen bei voneinander abhängigen Modulen herrührten.
Hab da heute mal wieder massiv in fhem.cfg rumgedoktert, was man ja nach Aussagen von Spezialisten hier im Forum nicht machen sollte und völlig unnötig wäre.
Meine Frage dazu - wie bekomme ich bestimmte Definitionen an den Beginn der fhem.cfg gepinnt? Bitte nicht durch löschen und neu anlegen - ist bei weekdaytimern und HC nicht zielführend, weil zu aufwändig.

Ich bin auch kein Fan von "in der cfg editieren", aber die Reihenfolge der Devices lassen sich nur so verändern.

Ich kopiere immer die cfg in einen "vernüftigen" Editor und arbeite da. Danach kopiere ich alles zurück.
Ich würde (und habe es so gemacht) alle Heatig_Control Devices ganz ans Ende der cfg setzten. Seit dem habe ich beim Start keine Fehler mehr.

@Dietmar: kannst Du kurz mal wegen den Fenster schauen? Danke!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 13 April 2015, 18:22:35
Zitat von: Mitch am 13 April 2015, 16:38:07
Blöde Frage, wie ist denn der genau Syntax für windowSensor, wenn ich mehrere Fenster habe?

attr windowSensor Fenster1,Fenster2,Fenster3

oder

attr windowSensor Fenster1 Fenster 2 Fenster3

Wenn ich Variante zwei mache, meldet mit das Modul kein waiting... und die Fenster sind "nur" Text
Wenn ich Variante eins mache, sind die Fenster Links

lt. Code sollte die Leerzeichenvariante die richtige sein.
Ich prüfe nachher mal ob es einen Grund gibt, warum es nicht funktioniert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 13 April 2015, 18:28:50
ZitatReihenfolge der Devices Heating_Control Weekdaytimer
eventuell kann ich das Problem dadurch entschärfen, dass im Code etwas verändere.

Gestern habe ich gesehen dass das Setzen der InternalTimer() nicht direkt aus der Funktion *_Define() heraus erfolgen darf, wenn beispielsweise $we abgefragt wird.

Die timer dürfen erst dann gesetzt werden, wenn holiday initialisiert ist. Eventuell löst diese Umstellung auch das Problem der Reihenfolge in der Initphase der Geräte.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ulli am 15 April 2015, 20:21:21
Ich würde eine Funktionserweiterung deines Modules benötigen um mit einem "Heating_Control_SetAllTemps" nur gezielt ein Device zu aktualisieren.

Heating_Control_SetAllTemps(DeviceName) wäre sinnvoll.

Ich habe nämlich das Problem das ich meine Heizungen in einem Scene zusammengefasst habe.
Wenn ich das Scene nun wechsle werden alle Heizungen mehrmals aktualisiert, da mehrmals ein "Heating_Control_SetAllTemps" ausgeführt wird.

Was meinst du? Lässt sich das integrieren?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 15 April 2015, 21:59:07
Ja, dass lässt sich integrieren.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 19 April 2015, 20:40:20
eingecheckt:
Zitat
98_WeekdayTimer, 98_Heating_Control: some improvements to set Parameter/Temperature of a past switch when starting/defining a WD or HC. 
Improvements to corectly set state to active/<temp>/<Param>

new funktions:
WeekdayTimer_SetParm("<devicename>")
Heating_Control_SetTemp("<devicename>")
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: gero am 20 April 2015, 11:38:32
Hallo Dietmar,

seit einem FHEM-Update heute morgen stehen zwei meiner Heating_Control Devices auf state inactive.

Hier die Ausgabe von einem list:
Internals:
   COMMAND    {}
   DEF        DG.SZ.MAX.Room Mo-So|09:30|18.0 Mo-So|16:00|16.0 {}
   DEVICE     DG.SZ.MAX.Room
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       DG.SZ.MAX.HCB
   NR         354
   Profil 0: Sonntag 09:30:00 18.0, 16:00:00 16.0
   Profil 1: Montag 09:30:00 18.0, 16:00:00 16.0
   Profil 2: Dienstag 09:30:00 18.0, 16:00:00 16.0
   Profil 3: Mittwoch 09:30:00 18.0, 16:00:00 16.0
   Profil 4: Donnerstag 09:30:00 18.0, 16:00:00 16.0
   Profil 5: Freitag 09:30:00 18.0, 16:00:00 16.0
   Profil 6: Samstag 09:30:00 18.0, 16:00:00 16.0
   STATE      inactive
   TYPE       Heating_Control
   CHANGETIME:
   Helper:
     Dblog:
       State:
         Mydblog:
           TIME       1429518809.10066
           VALUE      inactive
   Readings:
     2015-04-20 09:30:00   nextUpdate      16:00:00
     2015-04-20 09:30:00   nextValue       16.0
     2015-04-20 10:33:29   state           inactive
   SWITCHINGTIMES:
     Mo-So|09:30|18.0
     Mo-So|16:00|16.0
   Timer:
     Dg.sz.max.hcb_16:00:00:
       HASH       DG.SZ.MAX.HCB
       MODIFIER   16:00:00
       NAME       DG.SZ.MAX.HCB_16:00:00
     Dg.sz.max.hcb_settimerofday:
       HASH       DG.SZ.MAX.HCB
       MODIFIER   SetTimerOfDay
       NAME       DG.SZ.MAX.HCB_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     DESIRED_TEMP_READING
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:30:00   18.0
         16:00:00   16.0
       1:
         09:30:00   18.0
         16:00:00   16.0
       2:
         09:30:00   18.0
         16:00:00   16.0
       3:
         09:30:00   18.0
         16:00:00   16.0
       4:
         09:30:00   18.0
         16:00:00   16.0
       5:
         09:30:00   18.0
         16:00:00   16.0
       6:
         09:30:00   18.0
         16:00:00   16.0
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     09:30:00:
       NEXTPARA   16.0
       NEXTSWITCH 16:00:00
       PARA       18.0
       TIM        1429515000
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     16:00:00:
       NEXTPARA   18.0
       NEXTSWITCH 09:30:00
       PARA       16.0
       TIM        1429538400
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   room       2.00_Heizung


Nachdem ich einen neuen Schaltzeitpunkt zum Testen hinzugefügt habe, wurde auch geschaltet und der korrekte State (Temperatur) wurde angezeigt. Aber nach Löschen von diesem Schaltzeitpunkt ging das Device zurück auf inactive. Ich bin mir nicht sicher, was du mit dem state inactive anzeigen möchtest. Aber ich benötige für meine Module, die Möglichkeit den aktuellen Wert des Heating_Control Devices abzufragen. Entweder sollte der aktuelle Werte in state stehen, oder ich bräuchte eine andere Möglichkeit (z.B. ein zusätzliches Reading).

Gruß,
Gero
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ulli am 20 April 2015, 18:53:49
Super Sache Dietmar, ich teste es gleich mal. Danke!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Ascos am 20 April 2015, 19:07:16
Zitat von: gero am 20 April 2015, 11:38:32
Hallo Dietmar,

seit einem FHEM-Update heute morgen stehen zwei meiner Heating_Control Devices auf state inactive.

Hier die Ausgabe von einem list:
Internals:
   COMMAND    {}
   DEF        DG.SZ.MAX.Room Mo-So|09:30|18.0 Mo-So|16:00|16.0 {}
   DEVICE     DG.SZ.MAX.Room
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       DG.SZ.MAX.HCB
   NR         354
   Profil 0: Sonntag 09:30:00 18.0, 16:00:00 16.0
   Profil 1: Montag 09:30:00 18.0, 16:00:00 16.0
   Profil 2: Dienstag 09:30:00 18.0, 16:00:00 16.0
   Profil 3: Mittwoch 09:30:00 18.0, 16:00:00 16.0
   Profil 4: Donnerstag 09:30:00 18.0, 16:00:00 16.0
   Profil 5: Freitag 09:30:00 18.0, 16:00:00 16.0
   Profil 6: Samstag 09:30:00 18.0, 16:00:00 16.0
   STATE      inactive
   TYPE       Heating_Control
   CHANGETIME:
   Helper:
     Dblog:
       State:
         Mydblog:
           TIME       1429518809.10066
           VALUE      inactive
   Readings:
     2015-04-20 09:30:00   nextUpdate      16:00:00
     2015-04-20 09:30:00   nextValue       16.0
     2015-04-20 10:33:29   state           inactive
   SWITCHINGTIMES:
     Mo-So|09:30|18.0
     Mo-So|16:00|16.0
   Timer:
     Dg.sz.max.hcb_16:00:00:
       HASH       DG.SZ.MAX.HCB
       MODIFIER   16:00:00
       NAME       DG.SZ.MAX.HCB_16:00:00
     Dg.sz.max.hcb_settimerofday:
       HASH       DG.SZ.MAX.HCB
       MODIFIER   SetTimerOfDay
       NAME       DG.SZ.MAX.HCB_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     DESIRED_TEMP_READING
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:30:00   18.0
         16:00:00   16.0
       1:
         09:30:00   18.0
         16:00:00   16.0
       2:
         09:30:00   18.0
         16:00:00   16.0
       3:
         09:30:00   18.0
         16:00:00   16.0
       4:
         09:30:00   18.0
         16:00:00   16.0
       5:
         09:30:00   18.0
         16:00:00   16.0
       6:
         09:30:00   18.0
         16:00:00   16.0
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     09:30:00:
       NEXTPARA   16.0
       NEXTSWITCH 16:00:00
       PARA       18.0
       TIM        1429515000
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     16:00:00:
       NEXTPARA   18.0
       NEXTSWITCH 09:30:00
       PARA       16.0
       TIM        1429538400
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   room       2.00_Heizung


Nachdem ich einen neuen Schaltzeitpunkt zum Testen hinzugefügt habe, wurde auch geschaltet und der korrekte State (Temperatur) wurde angezeigt. Aber nach Löschen von diesem Schaltzeitpunkt ging das Device zurück auf inactive. Ich bin mir nicht sicher, was du mit dem state inactive anzeigen möchtest. Aber ich benötige für meine Module, die Möglichkeit den aktuellen Wert des Heating_Control Devices abzufragen. Entweder sollte der aktuelle Werte in state stehen, oder ich bräuchte eine andere Möglichkeit (z.B. ein zusätzliches Reading).

Gruß,
Gero

Hey,

das Phänomen hatte ich auch. Das kommt dann vor, wenn deine Geräte in den FHEM Config nach deiner Heating Control definiert sind. Somit findet das Modul die Geräte noch nicht. Erst wenn es die Geräte einmal erfolgreich geschaltet hat, ändert sich der State.
Das er, nachdem du den Schaltzeitpunkt wieder gelöscht hast, wieder auf inaktive zurück ging, passt da ja auch, da das Modul ja nun wieder, seit dem FHEM Neustart das Gerät noch nicht geschaltet hat (da ja der gelöschte Zeitpunkt nun nicht mehr zählt).

So habe ich es mir zumindest erklärt.
Abhilfe soll es schaffen, wenn die Gerätedefnition ganz ans Ende der COnfig geschoben werden. Ich selbst habe es nicht getan, das es bei mir auch so läuft und der kurze Zeitraum des Inactive mich nicht stört.

VG
AScos
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 20 April 2015, 21:21:22
@gero

Die Antwort von Ascos kann das Problem richtig beschreiben.
Wenn du deine Definition veröffentlichst, kann ich den Sachverhalt aber nochmals untersuchen.

Erklärung:
state nimmt immer den letzten Schaltbefehl des HC/WD auf.
Wenn die Bedingungen so sind, dass "scheinbar" nicht geschaltet werden kann geht der state auf inactive.
Dies ist leider immer nur eine Vermutung.
HC/WD bekommt gar nicht selbst gar mit, ob geschaltet wird, weil HC/WD nur einen String mit den Bedingungen  und dem Schaltparameter wie

{my $days={};;       map{$days->{$_}=1}();; if ( (heizungAnAus("Ueb")) && (defined $days->{$wday} ||  $we || !$we)) { fhem("set HeizungWohnen desired-temp 22.0") }}
{my $days={1,2,3,4};;map{$days->{$_}=1}();; if ( (heizungAnAus("Ueb")) && (defined $days->{$wday} ||  $we || !$we)) { fhem("set HeizungWohnen desired-temp 22.0") }}


generiert und an fhem übergibt. Der Befehl wird dann durch die allgemeine Kommandoschleife in fhem ausgeführt, wie es beispielsweise auch der at-Befehl macht. Dadurch ist es möglich umfangreiche fhem-Befehlssequenzen(set xx on-for-timer), {PerlCode} oder ´unix Befehle´ zu übergeben.

Ob dann wirklich geschaltet wird, kann man nicht feststellen.

Der Zustand inactive in state ist immer nur eine Vermutung.
Am liebsten würde ich diesen Zustand durch etwas anderes ersetzen(), weil es immer wieder zu Problemen führt, zumal ich ja jetzt eine stark überarbeitete Version freigeschaltet habe, die intern anders arbeitet.

Inactive bedeutet nicht, dass der Timer nicht läuft. Inactive bedeutet nur, dass bisher scheinbar nicht geschaltet wurde.

Wenn du deine Definition veröffentlichst, kann ich nach der Ursache suchent und ggf. Abhilfe schaffen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: gero am 20 April 2015, 22:14:57
Zitat von: Dietmar63 am 20 April 2015, 21:21:22
@gero

Die Antwort von Ascos kann das Problem richtig beschreiben.
Wenn du deine Definition veröffentlichst, kann ich den Sachverhalt aber nochmals untersuchen.

Erklärung:
state nimmt immer den letzten Schaltbefehl des HC/WD auf.
Wenn die Bedingungen so sind, dass "scheinbar" nicht geschaltet werden kann geht der state auf inactive.
Dies ist leider immer nur eine Vermutung.
HC/WD bekommt gar nicht selbst gar mit, ob geschaltet wird, weil HC/WD nur einen String mit den Bedingungen  und dem Schaltparameter wie

{my $days={};;       map{$days->{$_}=1}();; if ( (heizungAnAus("Ueb")) && (defined $days->{$wday} ||  $we || !$we)) { fhem("set HeizungWohnen desired-temp 22.0") }}
{my $days={1,2,3,4};;map{$days->{$_}=1}();; if ( (heizungAnAus("Ueb")) && (defined $days->{$wday} ||  $we || !$we)) { fhem("set HeizungWohnen desired-temp 22.0") }}


generiert und an fhem übergibt. Der Befehl wird dann durch die allgemeine Kommandoschleife in fhem ausgeführt, wie es beispielsweise auch der at-Befehl macht. Dadurch ist es möglich umfangreiche fhem-Befehlssequenzen(set xx on-for-timer), {PerlCode} oder ´unix Befehle´ zu übergeben.

Ob dann wirklich geschaltet wird, kann man nicht feststellen.

Der Zustand inactive in state ist immer nur eine Vermutung.
Am liebsten würde ich diesen Zustand durch etwas anderes ersetzen(), weil es immer wieder zu Problemen führt, zumal ich ja jetzt eine stark überarbeitete Version freigeschaltet habe, die intern anders arbeitet.

Inactive bedeutet nicht, dass der Timer nicht läuft. Inactive bedeutet nur, dass bisher scheinbar nicht geschaltet wurde.

Wenn du deine Definition veröffentlichst, kann ich nach der Ursache suchent und ggf. Abhilfe schaffen.

Hallo Dietmar,

Danke für deine Antwort.
Die Veröffentlichung der Definition meines Devices wird leider nicht viel bringen, da es sich um ein selbst geschriebenes Modul handelt.
Das Modul fasst alle MAX-Devices ein PID20 Regler und ein HCB Device für einen Raum zusammen. Im Endeffekt ist es ein erweiterter resingsProxy für mehrere Devices mit einer entsprechenden Schaltlogik.
Hier trotzdem das define:
DEF        DG.SZ.TF,EG.GA.TF,DG.SZ.MAX.FK,,DG.SZ.MAX.HT,DG.SZ.MAX.HCB,DG.SZ.MAX.HT.pid
Das Device steht VOR dem HCB Device in der fhem.cfg. Allerdings wird das Device nicht durch das Heating_Control Device direkt gesteuert (siehe list Ausgabe von oben), sondern reagiert in der Notify Funktion auf Änderungen des states vom Heating_Control.

Ich werde wohl selbst noch etwas debuggen müssen, um das Verhalten zu verstehen. Ich melde mich nochmal, wenn ich mehr herausgefunden habe.

Gruß,
Gero

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: uwe.bart am 22 April 2015, 06:38:47
Ich würde eigentlich erwarten, dass im 'state' eben genau der Wert steht, der im Profile als Parameter übergeben wird: (lt. Doku)

profile
Define the weekly profile. All timings are separated by space. A switchingtime is defined by the following example:

    [<weekdays>|]<time>|<parameter>


Ich habe bei mir die verschiedenen WeekdayTimer im Einsatz und die sind in der fhem.cfg als letztes definiert, dennoch steht der Status nach einem restart immer auf 'inactive'.
Die Timer schalten weitestgehend richtig. Allerdings hatte ich gestern die Situation, dass ein Timer auf 'inactive' stand und nicht geschaltet hat. Heute morgen hat er wieder geschaltet.... Das untersuche ich zur Zeit noch.
Bei mir treten die Problem mit dem Weekdaytimer seit meinem Update vom 17.April auf, vorher liefen die Timer monatelang störungsfrei.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 07:25:31
Veröffentliche bitte deine Definition
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: uwe.bart am 22 April 2015, 09:18:50
Hier ein Teil meiner Definitionen:
   
    # Dummy device nothing...
define nothing dummy
    # Heizung 'normal'
define wdt_normal WeekdayTimer nothing Mo-Fr|06:00|19.9 Di,Do|08:45|19 Di,Do|12:00|19.9 Mo-Do,So|22:00|16 Fr|22:30|16 So,Sa|07:30|19.9 Sa|22:30|16 {fhemWithLog("set WDTModus=normal desired %")}
attr wdt_normal alias normal
attr wdt_normal disable 0
attr wdt_normal group Heizung
attr wdt_normal room Zeitpläne
    # Heizung 'abgesenkt'
define wdt_abgesenkt WeekdayTimer nothing Mo-Fr|06:00|19 Mo-Do|22:00|16 Fr|22:30|16 So,Sa|08:00|19 So,Sa|19:47|16 {fhemWithLog("set WDTModus=abgesenkt desired %")}
attr wdt_abgesenkt alias abgesenkt
attr wdt_abgesenkt group Heizung
attr wdt_abgesenkt room Zeitpläne
    # Aussenlichter
define wdt_outdoorlights WeekdayTimer nothing Mo-Fr|06:15|on Mo-Fr|08:15|off Mo-Fr|16:30|on Mo-Fr|22:15|off Sa-So|16:30|on Sa-So|22:30|off {fhemWithLog("set WDTModus=Aussenlichtuhr %")}
attr wdt_outdoorlights alias Aussenlichter
attr wdt_outdoorlights disable 0
attr wdt_outdoorlights group Lichter
attr wdt_outdoorlights room Zeitpläne


Die Funktion fhemWithLog() ist die Funktion fhem() mit einem Log-Befehl...
Es gibt ein Device THRESHOLD mit einem Reading 'WDTModus'. Wenn das auf 'normal' steht, wird die Temperatur für 'normal' gesetzt usw...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: gero am 22 April 2015, 09:56:47
Das Problem scheint aufzutreten, wenn das Device, dass in der Definition steht nicht in der Funktion WeekdayTimer_isHeizung gelistet ist.
Wenn ich bei mir statt meinem eigenen Device z.B. einen PID20 Regler nehme, funktioniert alles.

Wenn ich in der Funktion WeekdayTimer_SetTimer die Variable $grenzSeconds unabhängig von der Funktion WeekdayTimer_isHeizung setze, scheint der Fehler behoben zu sein:
Zitatsub WeekdayTimer_SetTimer($) {
  my $hash = shift;
  my $name = $hash->{NAME};
 
  my $now  = time(); 

  my $switchedInThePast = 0;
  my $isHeating     = WeekdayTimer_isHeizung($hash);
#  my $grenzSeconds  = $isHeating ? -24*3600 : -5;
  my $grenzSeconds  = -24*3600 ;

@Dietmar: Vielleicht hilft dir das bei der Problemlösung weiter.

Gruß,
Gero
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: uwe.bart am 22 April 2015, 11:52:14
Das kann ich nur bestätigen.
Wenn ich als Device bei mir z.b. ein FHT angebe, springt der Status des WDT sofort auf den aktuellen Wert und alles ist gut.
Hab jetzt also ein Dummy FHT definiert.

Aus meiner Sicht brauchte der WeekdayTimer eigentlich gar kein Device, weil ich ausschließlich mit Befehlen arbeite, die zum entsprechenden Zeitpunkt ausgeführt werden.
Vielleicht könnte man den WeekdayTimer gegenüber dem Heating_Control dahingehend entsprechend abspecken...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: uwe.bart am 22 April 2015, 18:49:29
Hat leider auch nix gebracht. Heute nachmittag steht das Device wieder auf inactive und hat auch nicht geschaltet   :(
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 19:32:15
@uwe.barth
Setze mal verbose 5 für den WD. Dann bekommst du debugging Info.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 20:47:26
Zitat von: uwe.bart am 22 April 2015, 09:18:50
Hier ein Teil meiner Definitionen:
   
    # Dummy device nothing...
define nothing dummy
    # Heizung 'normal'
define wdt_normal WeekdayTimer nothing Mo-Fr|06:00|19.9 Di,Do|08:45|19 Di,Do|12:00|19.9 Mo-Do,So|22:00|16 Fr|22:30|16 So,Sa|07:30|19.9 Sa|22:30|16 {fhemWithLog("set WDTModus=normal desired %")}
attr wdt_normal alias normal
attr wdt_normal disable 0
attr wdt_normal group Heizung
attr wdt_normal room Zeitpläne
    # Heizung 'abgesenkt'
define wdt_abgesenkt WeekdayTimer nothing Mo-Fr|06:00|19 Mo-Do|22:00|16 Fr|22:30|16 So,Sa|08:00|19 So,Sa|19:47|16 {fhemWithLog("set WDTModus=abgesenkt desired %")}
attr wdt_abgesenkt alias abgesenkt
attr wdt_abgesenkt group Heizung
attr wdt_abgesenkt room Zeitpläne
    # Aussenlichter
define wdt_outdoorlights WeekdayTimer nothing Mo-Fr|06:15|on Mo-Fr|08:15|off Mo-Fr|16:30|on Mo-Fr|22:15|off Sa-So|16:30|on Sa-So|22:30|off {fhemWithLog("set WDTModus=Aussenlichtuhr %")}
attr wdt_outdoorlights alias Aussenlichter
attr wdt_outdoorlights disable 0
attr wdt_outdoorlights group Lichter
attr wdt_outdoorlights room Zeitpläne


Die Funktion fhemWithLog() ist die Funktion fhem() mit einem Log-Befehl...
Es gibt ein Device THRESHOLD mit einem Reading 'WDTModus'. Wenn das auf 'normal' steht, wird die Temperatur für 'normal' gesetzt usw...

ich habe deinen Timer(WD) mal bei mir eingegeben, verbose auf 4 gesetzt und ein wenig an den Zeiten gedreht und siehe da er funktioniert. die FM "Undefined ..." ist der Beweis dafür:


2015.04.22 20:43:00 3: Undefined subroutine &main::fhemWithLog called at (eval 8301) line 1.
2015.04.22 20:43:00 3: eval: {my $days={};map{$days->{$_}=1}(0,1,2,3,4); if ( 1 && (defined $days->{$wday})) {fhemWithLog("set WDTModus=normal desired 16")}}

2015.04.22 20:43:00 1: PERL ERROR: Undefined subroutine &main::fhemWithLog called at (eval 8301) line 1.
2015.04.22 20:43:00 4: [wdt_normal] command: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4);; if ( 1 && (defined $days->{$wday})) {fhemWithLog("set WDTModus=normal desired 16")}} executed
2015.04.22 20:43:00 4: [wdt_normal] timer seems to be active today: 01234|20:43:00|16
2015.04.22 20:42:04 4: [wdt_normal] 07:30:00 19.9, 22:30:00 16 (Profil 6: Samstag)
2015.04.22 20:42:04 4: [wdt_normal] 06:00:00 19.8, 22:30:00 16 (Profil 5: Freitag)
2015.04.22 20:42:04 4: [wdt_normal] 06:00:00 19.8, 08:45:00 19, 12:00:00 19.9, 20:43:00 16 (Profil 4: Donnerstag)
2015.04.22 20:42:04 4: [wdt_normal] 06:00:00 19.8, 20:43:00 16 (Profil 3: Mittwoch)
2015.04.22 20:42:04 4: [wdt_normal] 06:00:00 19.8, 08:45:00 19, 12:00:00 19.9, 20:43:00 16 (Profil 2: Dienstag)
2015.04.22 20:42:04 4: [wdt_normal] 06:00:00 19.8, 20:43:00 16 (Profil 1: Montag)
2015.04.22 20:42:04 4: [wdt_normal] 07:30:00 19.9, 20:43:00 16 (Profil 0: Sonntag)
2015.04.22 20:42:04 4: [wdt_normal] 05:29:46 21:06:50 Mittwoch
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 21:13:51
@uwe:
Zitat
Ich habe bei mir die verschiedenen WeekdayTimer im Einsatz und die sind in der fhem.cfg als letztes definiert, dennoch steht der Status nach einem restart immer auf 'inactive'.

@gero:
Zitat von: gero am 22 April 2015, 09:56:47
Das Problem scheint aufzutreten, wenn das Device, dass in der Definition steht nicht in der Funktion WeekdayTimer_isHeizung gelistet ist.
Wenn ich bei mir statt meinem eigenen Device z.B. einen PID20 Regler nehme, funktioniert alles.

Wenn ich in der Funktion WeekdayTimer_SetTimer die Variable $grenzSeconds unabhängig von der Funktion WeekdayTimer_isHeizung setze, scheint der Fehler behoben zu sein:
@Dietmar: Vielleicht hilft dir das bei der Problemlösung weiter.

Gruß,
Gero

Das ist richtig, nicht wirklich verwunderlich, ja sogar Absicht.:
Geschichte:

WD und HC basieren auf dem gleichen Code. Ursprüngliche wollte ich damit eine Heizung(FHT) steuern.

Wenn man eine Heizungssteuerung definiert, dann wollte ich, dass zum Zeitpunkt der Definition oder eines Neustarts von fhem der zuletzt gültige Temperaturwert an die Heizung übergeben wird, egal wann am Tag der Zeitpunkt für die Schaltung war:

define wdt_normal WeekdayTimer nothing Mo-Fr|06:00|19.9         Mo-Fr|16:00|16

Wenn dieser Timer mittags gegen 12 definiert wird oder ein restart erfogt, wollte ich bewirken, dass der Heizung 19.9° gesendet wird.

Deshalb die Funktion isHeizung(). Immer wenn HC/WD erkennt, dass eine Heizung gesteuert wird, erfolgt auch ein Schalten in der Vergangenheit.

Bei Lichtsteuerungen ist dies aus meiner Sicht nicht wünschenswert. Wenn ich im Tagesverlauf gegen 12:00 Uhr eine Definition wie oben erstelle und das Gerät "nothing"  eine Lampe ist, will ich nicht, dass die Lampe geschaltet wird.

Weil dein(uwe) dummy und dein(gero) "eigenes device" in isHeizung() nicht erkannt werden, werden sie wie Lichtschalter behandelt und erst zum nächsten Zeitpunkt geschaltet. Leider scheint es auch so zu sein, dass erst mit der ersten echten Schaltung der Wert inactive auf <16> wechselt. Das sehe ich mir nochmals an.

Für solche Sonderfälle könnte ich ein Attribut aufnehmen, dass das Schalten in der "Vergangenheit" erzwingt.
attr wdt_normal switchInThePast 1
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 21:15:22
Zitat
Aus meiner Sicht brauchte der WeekdayTimer eigentlich gar kein Device, weil ich ausschließlich mit Befehlen arbeite, die zum entsprechenden Zeitpunkt ausgeführt werden.
Vielleicht könnte man den WeekdayTimer gegenüber dem Heating_Control dahingehend entsprechend abspecken...

Das mag für dich so sein. Andere werden sich vielleicht nicht darüber freuen wenn ich das ausbauen würde.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 21:22:50
@uwe:
nach einer Änderung meinerseits wird "nothing" jetzt(aus den oben beschriebenen Gründen) nicht geschaltet, aber nicht mehr der Wert inactive, sondern active gesetzt. Das sollte die damit verbundene Unsicherheit beseitigen.

 
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: gero am 22 April 2015, 21:35:16
@dietmar: Einen neues Attribut für Schalten in der Vergangenheit wäre eine gute und einfache Lösung.
Wäre schön, wenn du es einbauen würdest.

Danke,
Gero
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 22 April 2015, 21:54:48
Hallo zusammen,

ich muss zugeben dass ich die letzten Beiträge noch nicht tiefgründig gelesen und demnach noch nicht abgeleitet habe, ob die Antworten meine Thematik lösen... Wollte trotzdem fix loswerden, dass ich auch das inactive-Problem habe; kurz nach dem Heating_Control-Update ich glaube vor Ostern bin ich wieder auf die Dezember-Version zurück, jetzt habe ich upgedatet und die Wochenprofile abgeändert (Sonntag ist jetzt 0). Ich steuere 6 FHT´s, jetzt stehen 4 HC´s auf inactive, 2 auf der Temperatur aus dem Profil. Meistens scheint das Schalten trotz inactive zu klappen, vorhin allerdings ging in einem HC Punkt 19 Uhr kein desired-temp raus obwohl im Profil definiert. Warum 4 so und 2 so stehen, habe ich noch nicht rausgefunden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 22:20:46
ZitatWarum 4 so und 2 so stehen, habe ich noch nicht rausgefunden.
Schick mir bitte mal die Definitionen, bei denen inactive   steht.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 22 April 2015, 22:33:05
anbei... die oberste Def ist die von dem HC, welches heute 19 Uhr nicht geschaltet hat wie es hätte sollen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 23:11:01
bitte als Text liefern, ich will sie nicht abtippen!
Wie ist KZ_Raumregler definiert?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 22 April 2015, 23:33:41
Achso, ja, sorry...

Inzwischen ist einer der 4 inactiv-HCs auf die Temperatur gewechselt, Effekt ist also womöglich nur noch bei dreien, nämlich diesen hier:


define AR_Heizungsregelung Heating_Control AR_Raumregler 12345|05:00|20 12345|08:00|17 12345|17:00|20 12345|19:00|17 60|06:00|20 60|10:00|17 60|16:00|20 60|19:00|17 (ReadingsVal("SindImUrlaub", "state", "Ja") eq "Nein")
attr AR_Heizungsregelung group Heizung
attr AR_Heizungsregelung icon sani_heating_temp
attr AR_Heizungsregelung room Abstellraum
define KZ_Heizungsregelung Heating_Control KZ_Raumregler 12345|05:30|21 12345|07:30|17 12345|17:00|21 12345|19:00|16 60|07:00|21 60|10:00|17 60|15:00|21 60|19:00|16 (ReadingsVal("SindImUrlaub", "state", "Ja") eq "Nein")
attr KZ_Heizungsregelung group Heizung
attr KZ_Heizungsregelung icon sani_heating_temp
attr KZ_Heizungsregelung room Kinderzimmer
define SZ_Heizungsregelung Heating_Control SZ_Raumregler 12345|09:00|15 12345|09:10|10 60|09:00|15 60|09:10|10 (ReadingsVal("SindImUrlaub", "state", "Ja") eq "Nein")
attr SZ_Heizungsregelung group Heizung
attr SZ_Heizungsregelung icon sani_heating_temp
attr SZ_Heizungsregelung room Schlafzimmer


Dieser HC war bis 23:00 auf inactiv (seit gestern früh nach dem Update), beim 23:00-Schaltpunkt hat er aber scheinbar korrekt auf Temperaturanzeige gewechselt:


define BA_Heizungsregelung Heating_Control BA_Raumregler 1234|04:30|22 1234|08:00|17 1234|17:00|22 1234|23:00|17 60|06:00|22 60|09:00|17 60|18:00|22 60|23:30|17 5|04:30|22 5|08:00|17 5|17:00|22 5|23:30|17 (ReadingsVal("SindImUrlaub", "state", "Ja") eq "Nein")
attr BA_Heizungsregelung group Heizung
attr BA_Heizungsregelung icon sani_heating_temp
attr BA_Heizungsregelung room Bad


Und diese beiden gingen auf Anhieb korrekt


define WZ_Heizungsregelung Heating_Control WZ_Raumregler 12345|04:00|22 12345|08:00|17 12345|16:00|22 12340|23:00|17 60|05:00|22 56|23:30|17 (ReadingsVal("SindImUrlaub", "state", "Ja") eq "Nein")
attr WZ_Heizungsregelung group Heizung
attr WZ_Heizungsregelung icon sani_heating_temp
attr WZ_Heizungsregelung room Wohnzimmer
define KU_Heizungsregelung Heating_Control KU_Raumregler 12345|04:00|22 12345|08:00|18 12345|16:00|22 1234560|20:00|18 60|05:00|22 (ReadingsVal("SindImUrlaub", "state", "Ja") eq "Nein")
attr KU_Heizungsregelung group Heizung
attr KU_Heizungsregelung icon sani_heating_temp
attr KU_Heizungsregelung room Kueche
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 April 2015, 23:42:15
dann fehlt nur noch  die Definition von
AR_Raumregler
KZ_Raumregler
SZ_Raumregler
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 23 April 2015, 07:13:33
Ach ja, klar... siehe unten - heute früh stehen allerdings alle 6 HCs auf inactive, auch die beiden die gestern den ganzen Tag die desired-temp angezeigt hatten...


define AR_Raumregler FHT 534f
attr AR_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr AR_Raumregler IODev CUL1.868
attr AR_Raumregler group Heizung
attr AR_Raumregler icon temp_control
attr AR_Raumregler lazy 1
attr AR_Raumregler lightSceneParamsToSave desired-temp
attr AR_Raumregler retrycount 1
attr AR_Raumregler room Abstellraum
define FileLog_AR_Raumregler FileLog ./log/AR_Raumregler-%Y.log AR_Raumregler
attr FileLog_AR_Raumregler logtype fht:Temp/Act,text
attr FileLog_AR_Raumregler room Logfiles
define SVG_AR_Raumregler SVG FileLog_AR_Raumregler:fht:CURRENT
attr SVG_AR_Raumregler group Heizung.Verlauf
attr SVG_AR_Raumregler label "AR_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_AR_Raumregler room Abstellraum
define WZ_Raumregler FHT 2506
attr WZ_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr WZ_Raumregler IODev CUL1.868
attr WZ_Raumregler group Heizung
attr WZ_Raumregler icon temp_control
attr WZ_Raumregler lazy 1
attr WZ_Raumregler lightSceneParamsToSave desired-temp
attr WZ_Raumregler retrycount 1
attr WZ_Raumregler room Wohnzimmer
define FileLog_WZ_Raumregler FileLog ./log/WZ_Raumregler-%Y.log WZ_Raumregler
attr FileLog_WZ_Raumregler logtype fht:Temp/Act,text
attr FileLog_WZ_Raumregler room Logfiles
define SVG_WZ_Raumregler SVG FileLog_WZ_Raumregler:fht:CURRENT
attr SVG_WZ_Raumregler group Heizung.Verlauf
attr SVG_WZ_Raumregler label "WZ_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_WZ_Raumregler room Wohnzimmer
define KU_Raumregler FHT 3f52
attr KU_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr KU_Raumregler IODev CUL1.868
attr KU_Raumregler group Heizung
attr KU_Raumregler icon temp_control
attr KU_Raumregler lazy 1
attr KU_Raumregler lightSceneParamsToSave desired-temp
attr KU_Raumregler retrycount 1
attr KU_Raumregler room Kueche
define FileLog_KU_Raumregler FileLog ./log/KU_Raumregler-%Y.log KU_Raumregler
attr FileLog_KU_Raumregler logtype fht:Temp/Act,text
attr FileLog_KU_Raumregler room Logfiles
define SVG_KU_Raumregler SVG FileLog_KU_Raumregler:fht:CURRENT
attr SVG_KU_Raumregler group Heizung.Verlauf
attr SVG_KU_Raumregler label "KU_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_KU_Raumregler room Kueche
define BA_Raumregler FHT 0f15
attr BA_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr BA_Raumregler IODev CUL1.868
attr BA_Raumregler group Heizung
attr BA_Raumregler icon temp_control
attr BA_Raumregler lazy 1
attr BA_Raumregler lightSceneParamsToSave desired-temp
attr BA_Raumregler retrycount 1
attr BA_Raumregler room Bad
define FileLog_BA_Raumregler FileLog ./log/BA_Raumregler-%Y.log BA_Raumregler
attr FileLog_BA_Raumregler logtype fht:Temp/Act,text
attr FileLog_BA_Raumregler room Logfiles
define SVG_BA_Raumregler SVG FileLog_BA_Raumregler:fht:CURRENT
attr SVG_BA_Raumregler group Heizung.Verlauf
attr SVG_BA_Raumregler label "BA_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_BA_Raumregler room Bad
define KZ_Raumregler FHT 4a29
attr KZ_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr KZ_Raumregler IODev CUL1.868
attr KZ_Raumregler group Heizung
attr KZ_Raumregler icon temp_control
attr KZ_Raumregler lazy 1
attr KZ_Raumregler lightSceneParamsToSave desired-temp
attr KZ_Raumregler retrycount 1
attr KZ_Raumregler room Kinderzimmer
define FileLog_KZ_Raumregler FileLog ./log/KZ_Raumregler-%Y.log KZ_Raumregler
attr FileLog_KZ_Raumregler logtype fht:Temp/Act,text
attr FileLog_KZ_Raumregler room Logfiles
define SVG_KZ_Raumregler SVG FileLog_KZ_Raumregler:fht:CURRENT
attr SVG_KZ_Raumregler group Heizung.Verlauf
attr SVG_KZ_Raumregler label "KZ_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_KZ_Raumregler room Kinderzimmer
define SZ_Raumregler FHT 4707
attr SZ_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr SZ_Raumregler IODev CUL1.868
attr SZ_Raumregler group Heizung
attr SZ_Raumregler icon temp_control
attr SZ_Raumregler lazy 1
attr SZ_Raumregler lightSceneParamsToSave desired-temp
attr SZ_Raumregler room Schlafzimmer
define FileLog_SZ_Raumregler FileLog ./log/SZ_Raumregler-%Y.log SZ_Raumregler
attr FileLog_SZ_Raumregler logtype fht:Temp/Act,text
attr FileLog_SZ_Raumregler room Logfiles
define SVG_SZ_Raumregler SVG FileLog_SZ_Raumregler:fht:CURRENT
attr SVG_SZ_Raumregler group Heizung.Verlauf
attr SVG_SZ_Raumregler label "SZ_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_SZ_Raumregler room Schlafzimmer
define FL_Raumregler FHT 5b57
attr FL_Raumregler IODev CUL1.868
attr FL_Raumregler group Heizung
attr FL_Raumregler icon temp_control
attr FL_Raumregler lazy 1
attr FL_Raumregler room Flur
define FileLog_FL_Raumregler FileLog ./log/FL_Raumregler-%Y.log FL_Raumregler
attr FileLog_FL_Raumregler logtype fht:Temp/Act,text
attr FileLog_FL_Raumregler room Logfiles
define SVG_FL_Raumregler SVG FileLog_FL_Raumregler:fht:CURRENT
attr SVG_FL_Raumregler group Heizung.Verlauf
attr SVG_FL_Raumregler label "FL_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_FL_Raumregler room Flur


EDIT 08:02 Uhr: jetzt nachdem alle HCs bis auf SZ_Heizungsregelung einen Schaltpunkt um 07:30 bzw. 08:00 hatten, zeigen sie auch wieder die desired-temp an - bis auf eben SZ_Heizungsregelung und BA_Heizungsregelung, obwohl BA_Heizungsregelung auch einen 08:00-Schaltpunkt hatte und auch korrekt geschaltet hat, State aber trotzdem inactive.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Romoker am 23 April 2015, 11:22:37
Hallo,

nach der Inbetriebnahme meiner Gartenpumpe nach der Winterpause, habe ich auch Probleme mit dem WeekdayTimer-Status "inactive" festgestellt.

Mein Schaltprogramm für die Gartenpumpe kann ich auf Fhem-Web interaktiv festlegen. Es wird dann ein WeekdayTimer generiert. Dieser Weekdaytimer ist jetzt initial immer im Status "inactive". Erst beim nächsten Schaltvorgang, wie schon in diesem Thread beschrieben, ändert sich der Status auf "active". Im Status "inactive" ist das Reading nextTime nicht vorhanden, mit der Folge, dass in meiner Bedienoberfläche der nächste Ausführungszeitpunkt im Status "inactive" nicht angezeigt werden kann.

Weiterhin ist mir aufgefallen, dass das Ausgabeformat vom Reading nextTime sich von "mm.dd.yyyy hh:mm:ss" auf " hh:mm:ss" geändert hat. Ich kann jetzt nicht mehr das nächste Ausführungsdatum feststellen.

Der Timer ist aktiv und schaltet zum nächsten Zeitpunkt korrekt. Aus meiner Sicht muss deshalb der Status nach einer sauberen Definition im Status "active" sein und nicht erst nach dem ersten Schaltvorgang. Das Reading nextTime muss auch das Datum anzeigen.

Wie zu Beginn erwähnt, hatte ich dieses Verhalten vor der Winterpause nicht.

Die Fhem-Version ist bei mir auf den aktuellen Stand.

Viele Grüße
Romoker
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 23 April 2015, 16:11:13
Hallo Dietmar,

ich hätte ein kleinen Feature-Wunsch  ;D

Könnte man für das Attribut windowSensor die Unterstützung für Dummy einrichten?

Zum Hintergrund, ich würde gerne virtuelle Fenster einrichten (Dummy), wenn diese auf Open stehen, soll Heacting_Control nicht schalten, sondern den Schaltvorgang verzögern.
So wie es im Moment mit einem echten Fenster funktioniert.

Vielen Dank!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 April 2015, 20:41:52
Zitat von: Mitch am 23 April 2015, 16:11:13
Hallo Dietmar,

ich hätte ein kleinen Feature-Wunsch  ;D

Könnte man für das Attribut windowSensor die Unterstützung für Dummy einrichten?

Zum Hintergrund, ich würde gerne virtuelle Fenster einrichten (Dummy), wenn diese auf Open stehen, soll Heacting_Control nicht schalten, sondern den Schaltvorgang verzögern.
So wie es im Moment mit einem echten Fenster funktioniert.

Vielen Dank!

http://forum.fhem.de/index.php/topic,24653.msg179730.html#msg179730 (http://forum.fhem.de/index.php/topic,24653.msg179730.html#msg179730)
in delayedExecutionCond solltest du auch ein dummy abfragen können.
Nach dem großen update habe ich das noch nicht wieder ausprobiert
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 23 April 2015, 20:43:54
okay, Danke, hatte ich übersehenen.

Habe es aber mittlerweile selber eingebaut, war ja nur eine Zeile.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 23 April 2015, 21:23:22
Zitat von: carzl am 23 April 2015, 07:13:33
Ach ja, klar... siehe unten - heute früh stehen allerdings alle 6 HCs auf inactive, auch die beiden die gestern den ganzen Tag die desired-temp angezeigt hatten...


define AR_Raumregler FHT 534f
attr AR_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr AR_Raumregler IODev CUL1.868
attr AR_Raumregler group Heizung
attr AR_Raumregler icon temp_control
attr AR_Raumregler lazy 1
attr AR_Raumregler lightSceneParamsToSave desired-temp
attr AR_Raumregler retrycount 1
attr AR_Raumregler room Abstellraum
define FileLog_AR_Raumregler FileLog ./log/AR_Raumregler-%Y.log AR_Raumregler
attr FileLog_AR_Raumregler logtype fht:Temp/Act,text
attr FileLog_AR_Raumregler room Logfiles
define SVG_AR_Raumregler SVG FileLog_AR_Raumregler:fht:CURRENT
attr SVG_AR_Raumregler group Heizung.Verlauf
attr SVG_AR_Raumregler label "AR_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_AR_Raumregler room Abstellraum
define WZ_Raumregler FHT 2506
attr WZ_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr WZ_Raumregler IODev CUL1.868
attr WZ_Raumregler group Heizung
attr WZ_Raumregler icon temp_control
attr WZ_Raumregler lazy 1
attr WZ_Raumregler lightSceneParamsToSave desired-temp
attr WZ_Raumregler retrycount 1
attr WZ_Raumregler room Wohnzimmer
define FileLog_WZ_Raumregler FileLog ./log/WZ_Raumregler-%Y.log WZ_Raumregler
attr FileLog_WZ_Raumregler logtype fht:Temp/Act,text
attr FileLog_WZ_Raumregler room Logfiles
define SVG_WZ_Raumregler SVG FileLog_WZ_Raumregler:fht:CURRENT
attr SVG_WZ_Raumregler group Heizung.Verlauf
attr SVG_WZ_Raumregler label "WZ_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_WZ_Raumregler room Wohnzimmer
define KU_Raumregler FHT 3f52
attr KU_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr KU_Raumregler IODev CUL1.868
attr KU_Raumregler group Heizung
attr KU_Raumregler icon temp_control
attr KU_Raumregler lazy 1
attr KU_Raumregler lightSceneParamsToSave desired-temp
attr KU_Raumregler retrycount 1
attr KU_Raumregler room Kueche
define FileLog_KU_Raumregler FileLog ./log/KU_Raumregler-%Y.log KU_Raumregler
attr FileLog_KU_Raumregler logtype fht:Temp/Act,text
attr FileLog_KU_Raumregler room Logfiles
define SVG_KU_Raumregler SVG FileLog_KU_Raumregler:fht:CURRENT
attr SVG_KU_Raumregler group Heizung.Verlauf
attr SVG_KU_Raumregler label "KU_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_KU_Raumregler room Kueche
define BA_Raumregler FHT 0f15
attr BA_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr BA_Raumregler IODev CUL1.868
attr BA_Raumregler group Heizung
attr BA_Raumregler icon temp_control
attr BA_Raumregler lazy 1
attr BA_Raumregler lightSceneParamsToSave desired-temp
attr BA_Raumregler retrycount 1
attr BA_Raumregler room Bad
define FileLog_BA_Raumregler FileLog ./log/BA_Raumregler-%Y.log BA_Raumregler
attr FileLog_BA_Raumregler logtype fht:Temp/Act,text
attr FileLog_BA_Raumregler room Logfiles
define SVG_BA_Raumregler SVG FileLog_BA_Raumregler:fht:CURRENT
attr SVG_BA_Raumregler group Heizung.Verlauf
attr SVG_BA_Raumregler label "BA_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_BA_Raumregler room Bad
define KZ_Raumregler FHT 4a29
attr KZ_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr KZ_Raumregler IODev CUL1.868
attr KZ_Raumregler group Heizung
attr KZ_Raumregler icon temp_control
attr KZ_Raumregler lazy 1
attr KZ_Raumregler lightSceneParamsToSave desired-temp
attr KZ_Raumregler retrycount 1
attr KZ_Raumregler room Kinderzimmer
define FileLog_KZ_Raumregler FileLog ./log/KZ_Raumregler-%Y.log KZ_Raumregler
attr FileLog_KZ_Raumregler logtype fht:Temp/Act,text
attr FileLog_KZ_Raumregler room Logfiles
define SVG_KZ_Raumregler SVG FileLog_KZ_Raumregler:fht:CURRENT
attr SVG_KZ_Raumregler group Heizung.Verlauf
attr SVG_KZ_Raumregler label "KZ_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_KZ_Raumregler room Kinderzimmer
define SZ_Raumregler FHT 4707
attr SZ_Raumregler userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr SZ_Raumregler IODev CUL1.868
attr SZ_Raumregler group Heizung
attr SZ_Raumregler icon temp_control
attr SZ_Raumregler lazy 1
attr SZ_Raumregler lightSceneParamsToSave desired-temp
attr SZ_Raumregler room Schlafzimmer
define FileLog_SZ_Raumregler FileLog ./log/SZ_Raumregler-%Y.log SZ_Raumregler
attr FileLog_SZ_Raumregler logtype fht:Temp/Act,text
attr FileLog_SZ_Raumregler room Logfiles
define SVG_SZ_Raumregler SVG FileLog_SZ_Raumregler:fht:CURRENT
attr SVG_SZ_Raumregler group Heizung.Verlauf
attr SVG_SZ_Raumregler label "SZ_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_SZ_Raumregler room Schlafzimmer
define FL_Raumregler FHT 5b57
attr FL_Raumregler IODev CUL1.868
attr FL_Raumregler group Heizung
attr FL_Raumregler icon temp_control
attr FL_Raumregler lazy 1
attr FL_Raumregler room Flur
define FileLog_FL_Raumregler FileLog ./log/FL_Raumregler-%Y.log FL_Raumregler
attr FileLog_FL_Raumregler logtype fht:Temp/Act,text
attr FileLog_FL_Raumregler room Logfiles
define SVG_FL_Raumregler SVG FileLog_FL_Raumregler:fht:CURRENT
attr SVG_FL_Raumregler group Heizung.Verlauf
attr SVG_FL_Raumregler label "FL_Raumregler Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_FL_Raumregler room Flur


EDIT 08:02 Uhr: jetzt nachdem alle HCs bis auf SZ_Heizungsregelung einen Schaltpunkt um 07:30 bzw. 08:00 hatten, zeigen sie auch wieder die desired-temp an - bis auf eben SZ_Heizungsregelung und BA_Heizungsregelung, obwohl BA_Heizungsregelung auch einen 08:00-Schaltpunkt hatte und auch korrekt geschaltet hat, State aber trotzdem inactive.

Nochmal ne kleine Ergänzung hierzu, könnte es sein dass es eine Rolle spielt ob zum Schaltzeitpunkt des HC´s ein Fenster offen ist oder nicht? Mein HC "KZ_Heizungsregelung" ist 17:00 auf 21° gegangen. Dann habe ich das Fenster aufgemacht, woraufhin der FHT auf 12° runterging. Während dieser Zeit kam 19:00 die desired-temp 16° vom HC. Als ich gerade das Fenster wieder geschlossen habe, ging der FHT aber nicht auf auf die jetzt eigentlich gültigen 16°, sondern auf die 21° des 17:00-Schaltpunktes. Im Log steht 19:00 auch kein desired-temp drin. Was ich daran aber nicht verstehe - der Fensterkontakt sagt dem FHT doch direkt dass er absenken soll, die Fenster-offen-Absenkung wird bei mir nicht von Fhem realisiert. Muss sonst morgen nochmal sehen was passiert, wenn das Fenster 19:00 geschlossen ist...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 April 2015, 21:27:39
Zitat von: carzl am 22 April 2015, 21:54:48
Hallo zusammen,

ich muss zugeben dass ich die letzten Beiträge noch nicht tiefgründig gelesen und demnach noch nicht abgeleitet habe, ob die Antworten meine Thematik lösen... Wollte trotzdem fix loswerden, dass ich auch das inactive-Problem habe; kurz nach dem Heating_Control-Update ich glaube vor Ostern bin ich wieder auf die Dezember-Version zurück, jetzt habe ich upgedatet und die Wochenprofile abgeändert (Sonntag ist jetzt 0). Ich steuere 6 FHT´s, jetzt stehen 4 HC´s auf inactive, 2 auf der Temperatur aus dem Profil. Meistens scheint das Schalten trotz inactive zu klappen, vorhin allerdings ging in einem HC Punkt 19 Uhr kein desired-temp raus obwohl im Profil definiert. Warum 4 so und 2 so stehen, habe ich noch nicht rausgefunden.


Ich habe mit deinen Definitionen herumgespielt und festgestellt, dass sie an sich funktionieren,   wenn man sie in der Reihenfolge
dummy, FHT, HC
eingibt.

Es könnte sein, dass bei einem Neustart deines Systems das dummy nach den HC definiert ist, dann evaluieren die Bedingungen zu false und die HC schalten nicht. Ich habe Meldungen ins Log aufgenommen um dies prüfen zu können.
Das Problem ist, dass dazu verbose auf 4 gesetzt werden muss. Das kann aber erst nach der Definition machen. Dann ist es aber schon zu spät. Deshalb werde ich verbose 4 bei HC/WD automatisch setzen, die mit tst beginnen.

Wenn ich die Tests abgeschlossen habe, werde ich sie freigeben. 
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 23 April 2015, 21:43:43
Oha, interessant! Mein "SindImUrlaub"-Dummy steht in der cfg tatsächlich weiter hinten - FHT, HC, dummy. Na da klimper ich den einfach mal weiter vorne rein und beobachte den morgigen Tag.
Danke erstmal für Deine Mühe!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: stefanpf am 24 April 2015, 08:16:07
Hallo,

ich in gestern über das Modul gestolpert und war so begeistert, dass ich heute Nacht erst einmal alle Thermostate umgestellt habe.
(Testphasen werden eigentlich überbewertet  :o)
Zwei Thermostaten ärgern mich derzeit noch mit einem "State inactive".
Heute Nacht konnte ich kurz beobachten, dass ein HC anscheinend auf inactive wechselt, wenn der erste Zeitraum um 00:00 beginnt.
Eine Modifikation auf 00:01 korrigierte das Verhalten. Ich kann es aktuell nicht mehr nachstellen - vermutlich weil die dazwischenliegenden Zeitfenster derzeit ausgewertet werden. Ich schau mir das beim nächsten mal Schlafwandeln noch genauer an.

Aktuell ärgert mich diese Definition hier:
Code (Fhem.cfg) Auswählen
define bz_HeatingControl Heating_Control bz_HM_CC_TC_Climate Mo-Fr|00:03|19.0 Mo-Fr|04:30|20 Mo-Fr|05:00|21.5 Mo-Fr|07:30|20 Mo-Fr|16:00|20.5 Mo-Fr|21:30|19 Sa,So|00:03|19.0 Sa,So|06:30|20 Sa,So|07:00|20.5 Sa,So|07:30|21.5 Sa,So|12:01|22.5 Sa,So|20:00|20 (ReadingsVal("HCAutomatik", "state", "") eq "on")
attr bz_HeatingControl disable 0
attr bz_HeatingControl icon edit_settings
attr bz_HeatingControl room Heizung
attr bz_HeatingControl verbose 5
attr bz_HeatingControl windowSensor bz_SEC_RHS


Die Zeiten werden anscheinend korrekt in die Profile interpretiert, allerdings machen mich die Readings stutzig
Die Werte für NExtUpdate und NExtValue gehören eindeutig zu dem Samstagsprofil.
Entferne ich das Samstagsprofil aus der Definition werden die erwarteten Werte angezeigt und der Status inactive verschwindet auch  :(

Nach 12:01 verschwindet der mysteriöse Eintrag wieder. Setzte ich den Eintrag auf 12:10 taucht er wieder auf.

Version: # $Id: 98_Heating_Control.pm 8394 2015-04-07 17:48:30Z dietmar63 $
Code (Readings) Auswählen
disabled 0 2015-04-24 08:04:55
nextUpdate 12:01:00 2015-04-24 08:06:07
nextValue 22.5 2015-04-24 08:06:07
state inactive 2015-04-24 08:06:07


2015.04.24 08:06:07.019 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_21:30:00
2015.04.24 08:06:07.019 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_20:00:00
2015.04.24 08:06:07.019 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_12:01:00
2015.04.24 08:06:07.019 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_05:00:00
2015.04.24 08:06:07.020 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_07:00:00
2015.04.24 08:06:07.020 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_07:30:00
2015.04.24 08:06:07.020 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_06:30:00
2015.04.24 08:06:07.020 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_16:00:00
2015.04.24 08:06:07.028 4: [bz_HeatingControl] 05:31:15 21:16:02 Freitag
2015.04.24 08:06:07.028 4: [bz_HeatingControl] 00:03:00 19.0, 06:30:00 20, 07:00:00 20.5, 07:30:00 21.5, 12:01:00 22.5, 20:00:00 20 (Profil 0: Sonntag)
2015.04.24 08:06:07.029 4: [bz_HeatingControl] 00:03:00 19.0, 04:30:00 20, 05:00:00 21.5, 07:30:00 20, 16:00:00 20.5, 21:30:00 19 (Profil 1: Montag)
2015.04.24 08:06:07.029 4: [bz_HeatingControl] 00:03:00 19.0, 04:30:00 20, 05:00:00 21.5, 07:30:00 20, 16:00:00 20.5, 21:30:00 19 (Profil 2: Dienstag)
2015.04.24 08:06:07.029 4: [bz_HeatingControl] 00:03:00 19.0, 04:30:00 20, 05:00:00 21.5, 07:30:00 20, 16:00:00 20.5, 21:30:00 19 (Profil 3: Mittwoch)
2015.04.24 08:06:07.029 4: [bz_HeatingControl] 00:03:00 19.0, 04:30:00 20, 05:00:00 21.5, 07:30:00 20, 16:00:00 20.5, 21:30:00 19 (Profil 4: Donnerstag)
2015.04.24 08:06:07.029 4: [bz_HeatingControl] 00:03:00 19.0, 04:30:00 20, 05:00:00 21.5, 07:30:00 20, 16:00:00 20.5, 21:30:00 19 (Profil 5: Freitag)
2015.04.24 08:06:07.029 4: [bz_HeatingControl] 00:03:00 19.0, 06:30:00 20, 07:00:00 20.5, 07:30:00 21.5, 12:01:00 22.5, 20:00:00 20 (Profil 6: Samstag)
2015.04.24 08:06:07.031 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_21:30:00 24.04.2015  21:30:00
2015.04.24 08:06:07.032 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_20:00:00 24.04.2015  20:00:00
2015.04.24 08:06:07.032 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_16:00:00 24.04.2015  16:00:00
2015.04.24 08:06:07.033 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_12:01:00 24.04.2015  12:01:00
2015.04.24 08:06:07.034 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_07:30:00 24.04.2015  07:30:00
2015.04.24 08:06:07.035 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_07:00:00 24.04.2015  07:00:00
2015.04.24 08:06:07.036 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_06:30:00 24.04.2015  06:30:00
2015.04.24 08:06:07.037 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_05:00:00 24.04.2015  05:00:00
2015.04.24 08:06:07.039 5: [bz_HeatingControl] removing Timer: bz_HeatingControl_SetTimerOfDay
2015.04.24 08:06:07.039 5: [bz_HeatingControl] setting  Timer: bz_HeatingControl_SetTimerOfDay 25.04.2015  00:00:05
2015.04.24 08:06:07.044 5: [bz_HeatingControl] list of window sensors found: 'bz_SEC_RHS bz_HeatingControl'
2015.04.24 08:06:07.044 5: [bz_HeatingControl] sensor 'bz_SEC_RHS' Reading/Attribute 'state' is 'closed'
2015.04.24 08:06:07.045 4: [bz_HeatingControl] timer seems to be active today: 12345|05:00:00|21.5
2015.04.24 08:06:07.045 5: [bz_HeatingControl] aktParam:21.5 newParam:21.5 - is  not disabled
2015.04.24 08:06:07.048 5: [bz_HeatingControl] list of window sensors found: 'bz_SEC_RHS bz_HeatingControl'
2015.04.24 08:06:07.048 5: [bz_HeatingControl] sensor 'bz_SEC_RHS' Reading/Attribute 'state' is 'closed'
2015.04.24 08:06:07.049 5: [bz_HeatingControl] aktParam:21.5 newParam:20.0 - is  not disabled
2015.04.24 08:06:07.049 4: [bz_HeatingControl] command: {my%days=map{$_=>1}(0,6);; if ( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days{$wday})) { fhem("set bz_HM_CC_TC_Climate desired-temp 20.0") }} executed
2015.04.24 08:06:07.052 5: [bz_HeatingControl] list of window sensors found: 'bz_SEC_RHS bz_HeatingControl'
2015.04.24 08:06:07.053 5: [bz_HeatingControl] sensor 'bz_SEC_RHS' Reading/Attribute 'state' is 'closed'
2015.04.24 08:06:07.053 5: [bz_HeatingControl] aktParam:21.5 newParam:20.5 - is  not disabled
2015.04.24 08:06:07.054 4: [bz_HeatingControl] command: {my%days=map{$_=>1}(0,6);; if ( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days{$wday})) { fhem("set bz_HM_CC_TC_Climate desired-temp 20.5") }} executed
2015.04.24 08:06:07.057 5: [bz_HeatingControl] list of window sensors found: 'bz_SEC_RHS bz_HeatingControl'
2015.04.24 08:06:07.057 5: [bz_HeatingControl] sensor 'bz_SEC_RHS' Reading/Attribute 'state' is 'closed'
2015.04.24 08:06:07.058 5: [bz_HeatingControl] aktParam:21.5 newParam:21.5 - is  not disabled

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 24 April 2015, 10:52:12
Zitat von: carzl am 23 April 2015, 21:43:43
Oha, interessant! Mein "SindImUrlaub"-Dummy steht in der cfg tatsächlich weiter hinten - FHT, HC, dummy. Na da klimper ich den einfach mal weiter vorne rein und beobachte den morgigen Tag.
Danke erstmal für Deine Mühe!
Habe gestern Abend die Position des Urlaubs-Dummys innerhalb der cfg nach vorne umgezogen, jetzt also Dummy-FHTs-HCs. Nach dem reboot war dann nur einer der 6 HCs auf inactiv. Heute früh aber wieder 4 von 6. Gerade wieder neugestartet, jetzt ist wieder 1 von 6 inactiv. Vielleicht hats also wirklich was mit der Position des Dummys zu tun, aber so wirklich gelöst ist es noch nicht...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 24 April 2015, 13:06:14
Hallo Dietmar,

Könntest du es  evtl. in Erwägung ziehen, das Datum im Reading nextUpdate wieder zu reaktivieren?
Es war schon sehr hilfreich.
siehe hier (http://forum.fhem.de/index.php/topic,31143.msg236531.html#msg236531)

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 April 2015, 13:52:10
Zitat von: Hans Franz am 24 April 2015, 13:06:14
Hallo Dietmar,

Könntest du es  evtl. in Erwägung ziehen, das Datum im Reading nextUpdate wieder zu reaktivieren?
Es war schon sehr hilfreich.
siehe hier (http://forum.fhem.de/index.php/topic,31143.msg236531.html#msg236531)

Gruß
Hans

ja - ist schon geändert, wird aber künfig im Format von FmtDateTime() geliefert werden
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 April 2015, 13:54:16
Zitat von: carzl am 24 April 2015, 10:52:12
Habe gestern Abend die Position des Urlaubs-Dummys innerhalb der cfg nach vorne umgezogen, jetzt also Dummy-FHTs-HCs. Nach dem reboot war dann nur einer der 6 HCs auf inactiv. Heute früh aber wieder 4 von 6. Gerade wieder neugestartet, jetzt ist wieder 1 von 6 inactiv. Vielleicht hats also wirklich was mit der Position des Dummys zu tun, aber so wirklich gelöst ist es noch nicht...

vielleicht wartest du man das nächste udpate ab. Dann wird einiges ander sein.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Haecksler am 25 April 2015, 08:26:09
Hallo
Habe das selbe Problem seit dem letzten update stehen sämtliche WeekdayTimer auf "inactive".
Wann wurde eigentlich die Zuordnung der Wochentage, sprich WE = 7 und So = 0 geändert?
Ging voll an mir vorbei :-\.

Gruß,
Stefan
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 April 2015, 08:35:16
Zitat von: Haecksler am 25 April 2015, 08:26:09
Hallo
Habe das selbe Problem seit dem letzten update stehen sämtliche WeekdayTimer auf "inactive".
Wann wurde eigentlich die Zuordnung der Wochentage, sprich WE = 7 und So = 0 geändert?
Ging voll an mir vorbei :-\.

Gruß,
Stefan

Kurz vor Ostern
Am Problem mit dem actice/inaktive arbeite ich bereits. Aufgrund interner Änderungen ist das leider nicht ganz so einfach.
Die Timer laufen aber fehlerfrei.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 April 2015, 18:20:54
neue Version eingecheckt:

98_WeekdayTimer, 98_Heating_Control:
correction of some bugs with inactive/active state
nextValue has now Format 2015-04-25 18:15:00 as before
added better logging and attr switchInThePast
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: stefanpf am 25 April 2015, 19:52:53
Hallo,

das mit dem inactive state schaut auf den ersten Blick sehr gut aus.  :D

Die zufälligen Werte im nextUpdate und nextValue sind allerdings bei mir noch geblieben.
Ich erkenne da allerdings auch keinen logischen Zusammenhang.

Um die Werte besser auseinander halten zu können habe ich die Wochentage in den Schaltsekunden integriert.
Anbei ein Screenshot, der 46 Sekunden vor einem extra eingefügtem Testzeitpunkt 19:37:06 erstellt wurde.
nextUpdate zeigt hier eindeutig einen Schaltzeitpunkt aus der Montags(-Freitags) Definition.

Um 19:37:06 hat der State aber auf den korrekten Wert ( 22) gewechselt.
Anschließend wurde auch bei nextUpdate der nächste Schaltzeitpunkt um 20:00:00 angezeigt ( dieser ist der Sonntagswert statt dem Samstagswert)

Oder verstehe ich den Inhalt des Readings falsch? Ich meine irgendwo gelesen zu haben, dass dies der nächste Schaltzeitpunkt sein soll.

Gruß

Stefan
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: optimizer am 25 April 2015, 20:05:11
Hallo Dietmar,
das inactive-Problem ist bei mir noch nicht behoben. Ich steuere mit deinem Modul meine FBH-Relais über ein THRESHOLD-device (FBH_Buero).
Kannst du noch etwas zum neuen Attribut "switchInThePast" sagen? Dies wird bei mir nicht akzeptiert.
Wie bei Stefan scheint die Readings-Anzeige nicht aktualisiert zu werden:
Sa. 19:50 habe ich neu hinzugefügt. Der state bleibt inactive. Nächster Schaltzeitpunkt wird jedoch 23:00 im Reading angezeigt.
Um 19:50 wurde geschaltet und state steht erst jetzt auf 21
list HCBuero um 19:40 Uhr (nach Update + Neustart):
Internals:
   COMMAND    {fhem("set @ desired %") if (ReadingsVal("HCAutomatik", "state", "") eq "on")}
   DEF        FBH_Buero 23:00|19 Mo-Do|18:00|21 Fr|07:00|20 Sa,So|13:00|20 Sa,So|19:50|21 {fhem("set @ desired %") if (ReadingsVal("HCAutomatik", "state", "") eq "on")}
   DEVICE     FBH_Buero
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCBuero
   NR         56
   Profil 0: Sonntag 13:00:00 20, 19:50:00 21, 23:00:00 19
   Profil 1: Montag 18:00:00 21, 23:00:00 19
   Profil 2: Dienstag 18:00:00 21, 23:00:00 19
   Profil 3: Mittwoch 18:00:00 21, 23:00:00 19
   Profil 4: Donnerstag 18:00:00 21, 23:00:00 19
   Profil 5: Freitag 07:00:00 20, 23:00:00 19
   Profil 6: Samstag 13:00:00 20, 19:50:00 21, 23:00:00 19
   STATE      inactive
   TYPE       Heating_Control
   Readings:
     2015-04-25 19:34:53   disabled        0
     2015-04-25 19:40:00   nextUpdate      23:00:00
     2015-04-25 19:40:00   nextValue       19
     2015-04-25 19:40:53   state           inactive
   SWITCHINGTIMES:
     23:00|19
     Mo-Do|18:00|21
     Fr|07:00|20
     Sa,So|13:00|20
     Sa,So|19:50|21
   Timer:
     Hcbuero_19:50:00:
       HASH       HCBuero
       MODIFIER   19:50:00
       NAME       HCBuero_19:50:00
     Hcbuero_23:00:00:
       HASH       HCBuero
       MODIFIER   23:00:00
       NAME       HCBuero_23:00:00
     Hcbuero_settimerofday:
       HASH       HCBuero
       MODIFIER   SetTimerOfDay
       NAME       HCBuero_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     DESIRED_TEMP_READING
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         13:00:00   20
         19:50:00   21
         23:00:00   19
       1:
         18:00:00   21
         23:00:00   19
       2:
         18:00:00   21
         23:00:00   19
       3:
         18:00:00   21
         23:00:00   19
       4:
         18:00:00   21
         23:00:00   19
       5:
         07:00:00   20
         23:00:00   19
       6:
         13:00:00   20
         19:50:00   21
         23:00:00   19
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     07:00:00:
       NEXTPARA   20
       NEXTSWITCH 13:00:00
       PARA       20
       TIM        1429938000
       TAGE:
         5
     13:00:00:
       NEXTPARA   21
       NEXTSWITCH 18:00:00
       PARA       20
       TIM        1429959600
       TAGE:
         0
         6
     18:00:00:
       NEXTPARA   21
       NEXTSWITCH 19:50:00
       PARA       21
       TIM        1429977600
       TAGE:
         1
         2
         3
         4
     19:50:00:
       NEXTPARA   19
       NEXTSWITCH 23:00:00
       PARA       21
       TIM        1429984200
       TAGE:
         0
         6
     23:00:00:
       NEXTPARA   20
       NEXTSWITCH 07:00:00
       PARA       19
       TIM        1429995600
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   group      Heizplan
   room       Heizung
   verbose    4


Gruß
Karlheinz
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 April 2015, 20:33:24
Zitat von: stefanpf am 25 April 2015, 19:52:53
Die zufälligen Werte im nextUpdate und nextValue sind allerdings bei mir noch geblieben.
Ich erkenne da allerdings auch keinen logischen Zusammenhang.

Um die Werte besser auseinander halten zu können habe ich die Wochentage in den Schaltsekunden integriert.
Anbei ein Screenshot, der 46 Sekunden vor einem extra eingefügtem Testzeitpunkt 19:37:06 erstellt wurde.
nextUpdate zeigt hier eindeutig einen Schaltzeitpunkt aus der Montags(-Freitags) Definition.

Um 19:37:06 hat der State aber auf den korrekten Wert ( 22) gewechselt.
Anschließend wurde auch bei nextUpdate der nächste Schaltzeitpunkt um 20:00:00 angezeigt ( dieser ist der Sonntagswert statt dem Samstagswert)

Oder verstehe ich den Inhalt des Readings falsch? Ich meine irgendwo gelesen zu haben, dass dies der nächste Schaltzeitpunkt sein soll.

Gruß

Stefan

da muss ich noch einmal nachbessern
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 April 2015, 20:39:02
"switchInThePast"
sollte in der Liste der Attribute auftauchen - eventuell einmal durchstarten.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: stefanpf am 25 April 2015, 20:53:40
Zitat von: Dietmar63 am 25 April 2015, 20:33:24
da muss ich noch einmal nachbessern
Das ist nett - danke.
Solange es wie gewünscht schaltet ist ja eigentlich schon alles in Butter.
Ich gehe jetzt über das Wochenende einmal live mit HC.
Am WE habe ich eine Chance einzugreifen wenn das Bad morgens kalt bleibt ( am Freitag Morgen ist der WAF doch glatt um 10% gesunken  ;D)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 26 April 2015, 14:26:07
Hallo Dietmar,

habe gerade einen Update gemacht.
Nun steht im state immer active.

Kann man da wieder die aktuelle Temperatur stehen haben?
ich schalte mit dem Wert aus state ein anderes Gerät.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 April 2015, 15:27:33
Sende bitte mal die Definition, dann versuche ich mein bestes zu geben.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 26 April 2015, 15:49:40
Hier bitte:

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        FHT_Kellerflur 1234|12:00|17.5 056|09:00|17.5 19:00|14 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     FHT_Kellerflur
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCKF
   NR         693
   Profil 0: Sonntag 09:00:00 17.5, 19:00:00 14
   Profil 1: Montag 12:00:00 17.5, 19:00:00 14
   Profil 2: Dienstag 12:00:00 17.5, 19:00:00 14
   Profil 3: Mittwoch 12:00:00 17.5, 19:00:00 14
   Profil 4: Donnerstag 12:00:00 17.5, 19:00:00 14
   Profil 5: Freitag 09:00:00 17.5, 19:00:00 14
   Profil 6: Samstag 09:00:00 17.5, 19:00:00 14
   STATE      active
   TYPE       Heating_Control
   VERZOEGRUNG 1
   Readings:
     2015-04-26 14:31:16   disabled        0
     2015-04-26 14:31:24   nextUpdate      2015-04-26 09:00:00
     2015-04-26 14:31:24   nextValue       17.5
     2015-04-26 14:31:24   state           active
   SWITCHINGTIMES:
     1234|12:00|17.5
     056|09:00|17.5
     19:00|14
   Timer:
     Hckf_09:00:00:
       HASH       HCKF
       MODIFIER   09:00:00
       NAME       HCKF_09:00:00
     Hckf_19:00:00:
       HASH       HCKF
       MODIFIER   19:00:00
       NAME       HCKF_19:00:00
     Hckf_settimerofday:
       HASH       HCKF
       MODIFIER   SetTimerOfDay
       NAME       HCKF_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:00:00   17.5
         19:00:00   14
       1:
         12:00:00   17.5
         19:00:00   14
       2:
         12:00:00   17.5
         19:00:00   14
       3:
         12:00:00   17.5
         19:00:00   14
       4:
         12:00:00   17.5
         19:00:00   14
       5:
         09:00:00   17.5
         19:00:00   14
       6:
         09:00:00   17.5
         19:00:00   14
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     09:00:00:
       NEXTPARA   17.5
       NEXTSWITCH 12:00:00
       PARA       17.5
       TIM        1430031600
       TAGE:
         0
         5
         6
     12:00:00:
       NEXTPARA   14
       NEXTSWITCH 19:00:00
       PARA       17.5
       TIM        1430042400
       TAGE:
         1
         2
         3
         4
     19:00:00:
       NEXTPARA   17.5
       NEXTSWITCH 09:00:00
       PARA       14
       TIM        1430067600
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Keller Flur
   disable    0
   group      Heizplan
   room       Heizung
   windowSensor CUL_FHTTK_Kellerflur  d_ECOMode
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: det. am 26 April 2015, 16:25:52
Hallo Dietmar,
habe gerade nach mehreren Versuchen mit Deinen geänderten Versionen, den Stand vom 8.12.2014 von Heating_Control und WeekdayTimer wieder eingespielt. Die funktionieren einwandfrei mit PID20, Dummy und THRESHOLD zusammen. Hab da bisher nichts vermisst, was für meinen Fall Änderungen erforderlich gemacht hätte.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 April 2015, 19:50:21
Zitat von: det. am 26 April 2015, 16:25:52
Hallo Dietmar,
habe gerade nach mehreren Versuchen mit Deinen geänderten Versionen, den Stand vom 8.12.2014 von Heating_Control und WeekdayTimer wieder eingespielt. Die funktionieren einwandfrei mit PID20, Dummy und THRESHOLD zusammen. Hab da bisher nichts vermisst, was für meinen Fall Änderungen erforderlich gemacht hätte.

Du gibst aber schnell auf!
Wenn mir niemand Testdaten mit PID20, Dummy und THRESHOLD wird es vielleicht nie funktionieren.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 April 2015, 20:35:38
Zitat von: Mitch am 26 April 2015, 15:49:40
Hier bitte:

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        FHT_Kellerflur 1234|12:00|17.5 056|09:00|17.5 19:00|14 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     FHT_Kellerflur
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCKF
   NR         693
   Profil 0: Sonntag 09:00:00 17.5, 19:00:00 14
   Profil 1: Montag 12:00:00 17.5, 19:00:00 14
   Profil 2: Dienstag 12:00:00 17.5, 19:00:00 14
   Profil 3: Mittwoch 12:00:00 17.5, 19:00:00 14
   Profil 4: Donnerstag 12:00:00 17.5, 19:00:00 14
   Profil 5: Freitag 09:00:00 17.5, 19:00:00 14
   Profil 6: Samstag 09:00:00 17.5, 19:00:00 14
   STATE      active
   TYPE       Heating_Control
   VERZOEGRUNG 1
   Readings:
     2015-04-26 14:31:16   disabled        0
     2015-04-26 14:31:24   nextUpdate      2015-04-26 09:00:00
     2015-04-26 14:31:24   nextValue       17.5
     2015-04-26 14:31:24   state           active
   SWITCHINGTIMES:
     1234|12:00|17.5
     056|09:00|17.5
     19:00|14
   Timer:
     Hckf_09:00:00:
       HASH       HCKF
       MODIFIER   09:00:00
       NAME       HCKF_09:00:00
     Hckf_19:00:00:
       HASH       HCKF
       MODIFIER   19:00:00
       NAME       HCKF_19:00:00
     Hckf_settimerofday:
       HASH       HCKF
       MODIFIER   SetTimerOfDay
       NAME       HCKF_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:00:00   17.5
         19:00:00   14
       1:
         12:00:00   17.5
         19:00:00   14
       2:
         12:00:00   17.5
         19:00:00   14
       3:
         12:00:00   17.5
         19:00:00   14
       4:
         12:00:00   17.5
         19:00:00   14
       5:
         09:00:00   17.5
         19:00:00   14
       6:
         09:00:00   17.5
         19:00:00   14
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     09:00:00:
       NEXTPARA   17.5
       NEXTSWITCH 12:00:00
       PARA       17.5
       TIM        1430031600
       TAGE:
         0
         5
         6
     12:00:00:
       NEXTPARA   14
       NEXTSWITCH 19:00:00
       PARA       17.5
       TIM        1430042400
       TAGE:
         1
         2
         3
         4
     19:00:00:
       NEXTPARA   17.5
       NEXTSWITCH 09:00:00
       PARA       14
       TIM        1430067600
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Keller Flur
   disable    0
   group      Heizplan
   room       Heizung
   windowSensor CUL_FHTTK_Kellerflur  d_ECOMode


wie hast du FHT_Kellerflur  definiert?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 26 April 2015, 21:19:55
Ich habe heute früh upgedatet, erst mal alle inactives weg  :)  Dann vor etwa drei Stunden mal nachgeguckt, 3 von 6 HCs inactive  :-[  Jetzt grade nochmal reingeguckt, 1 von 6 FHTs inactive. Kein Fhem-Neustart heute gemacht. Also irgend ne "Watze" scheint noch drin zu sein...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: det. am 26 April 2015, 22:02:23
Zitat von: Dietmar63 am 26 April 2015, 19:50:21
Du gibst aber schnell auf!
Wenn mir niemand Testdaten mit PID20, Dummy und THRESHOLD wird es vielleicht nie funktionieren.
überzeugt, Du hast 2 Mails mit den Teilen der fhem.cfg für o.g. Problemfälle. Trotzdem leuchet mir der Modulumbau nicht wirklich ein, da die alten Versionen perfekt funktionieren.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 April 2015, 22:38:34
Zitat
überzeugt, Du hast 2 Mails mit den Teilen der fhem.cfg für o.g. Problemfälle. Trotzdem leuchet mir der Modulumbau nicht wirklich ein, da die alten Versionen perfekt funktionieren.

ja, ich weiß und es hat lange gedauert, bis dass ich im letzten Herbst angefangen habe das Modul von Grund auf neu zu strukturieren.
Nach drei Jahren kennt man Perl nun viel besser und wollte es  einerseits besser strukturieren und zweitens die Möglichkeit schaffen bei den Tagesangaben $we und !$we ermöglichen.

Als etwas schwierig hat sich nun eigentlich nur die Umstellung auf neue tägliche InternalTimer() herausgestellt, bzw. die Anzeige des "state", "nextValue", "nextParameter", weil die für den Betrieb  eingentlich nicht mehr notwendig sind, ich sie aus kompatibilitätsgründen doch wieder liefern muss.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 27 April 2015, 23:28:35
Hallo,

Ich hatte zwar noch keine Muße, das Update einem wirklichen Stresstest zu unterziehen, aber bis jetzt läuft's ausgesprochen gut. Durch switchInThePast steht immer der aktuelle Wert im state,top.
Und danke für das Wiederbereitstellen des Datums in nextUpdate.

Das mit {sunrise_abs_dat($date)} muss ich mir noch näher anschauen.

Die Module bieten bei den ständig sich ändernden Schulzeiten meiner Kids die m.M.n. einfachste Möglichkeit zu reagieren.  :)

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: gero am 28 April 2015, 08:35:58
Hallo,

bei mir scheint jetzt auch alles zu funktionieren.
Ich verwende Heating_Control in Zusammenhang mit einem eigenen Modul und mit den neuen Attribut switchInThePast, verhält es sich jetzt wie erwartet.

Danke,
Gero
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerTom am 28 April 2015, 08:43:55
Hallo,

ich habe gestern nach einer gefühlten Ewigkeit mal wieder ein Update gefahren. Leider muss ich nach Forenrecherche feststellen, dass doch so einiges am HC-Modul geändert worden ist. Das mit der Änderung der Tages-Nummernzuordnung (und ich meine da den Sonntag) finde ich, und jetzt entschuldigt bitte, wenn ich das so sage, einfach unmöglich. Es wäre nicht schlimm gewesen, das so zu ändern, daß vorhandene Installationen weiter funktionieren und trotzdem we und !we eingeführt werden.

Dietmar63 hat in einem Post in diesem Thread es mal so ausgedrückt:

ja, das ist so.
Ich habe  mich aus verschiedenen Gründen entschieden die Tagesangabe wie in DOIF zu ändern.
0 Sonntag
1 Montag
2 Dienstag
3 Mittwoch
4 ...
7 Wochenende  ($we)
8 Wochentag    (!$we)

Definitionen bitte verändern(commandRef muss ich noch anpassen, sollte aber selbsterklärend sein)


Solange da nichts in der Commandref steht, ist da leider gar nichts selbsterklärend. Es ist einfach nur eine Umstellung die FHEM dazu veranlasst anders zu reagieren. Ich kann nicht bei all meinen genutzten Modulen jeden Thread nach Änderungen durchsuchen, die Zeit habe ich nicht. Wenigstens wird im Log auf die Umstellung hingewiesen,

"7" in daylist now means $we(weekend) - see dokumentation!!!

aber : Die Änderung ist schon Wochen aktiv und es steht immernoch nichts dazu in der Commandref.

Es tut mir leid, wenn sich da jemand auf den Schlips getreten fühlt. So ist nun mal meine Meinung.

Für mich ist FHEM produktiv und nicht irgendeine Bastelgeschichte, wo ich jeden Tag im Forum nach Änderungen oder umgestellten Desinitionen suche. Versteht mich nicht falsch, aber ich möchte ein funktionierenes System. Und ich hoffe nicht, daß jetzt einige Leute sagen: "Dann bist Du hier falsch!". Das wäre in meinen Augen nicht der richtige Ansatz.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 28 April 2015, 15:12:09
@DerTom
Solange du dich nicht selbst der Mühe unterziehst ein, in diesem Falle sogar zwei, Module zu schreiben, warten und supporten, solltest du vielleicht deine Ansprüche überdenken.

Der Grund der Anpassung bzgl. einer Vereinheitlichung der Benennungen liegt doch auf der Hand.

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 April 2015, 16:07:39
Zitat"7" in daylist now means $we(weekend) - see dokumentation!!!
Ich habe die Entscheidung so zu verfahren nicht einfach so getroffen, sondern lange überdacht - am Ende(und immer noch) dann für richtig befunden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: carzl am 28 April 2015, 16:39:08
@DerTom

Ich verstehe zwar dass Du ein wenig unzufrieden bist - ich selbst laboriere nun auch schon etliche Tage mit dem neuen HC herum und war auch nicht happy als es von heute auf morgen nicht mehr so lief wie bisher. Trotzdem - wenn Fhem-Fans sich ein Modul bauen und das dann netterweise allen zur Verfügung stellen und so jeder in den Genuss der (kostenfreien) Nutzung und auch des Supports kommt, sollte man Kritik schon mit Augenmaß anbringen. Klar ist für die meisten Fhem mehr als Spielerei und läuft produktiv, aber trotzdem reden wir hier nicht von gekaufter Software mit gekauften Modulen, 24/7-Support und zugesicherten Wiederherstellungszeiten.

Wie gesagt - ich teile Deine Unzufriedenheit; aber trotzdem bin ich in allererster Linie dankbar dass ich dank Dietmar63 eine solide und bisher klaglos funktionierende Heizungssteuerung umsetzen konnte, mir persönlich fehlt dazu nämlich das Knowhow und ich bin auf solche Profi-User angewiesen, um selbst mit Fhem weiterzukommen und Schritt für Schritt dazuzulernen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerTom am 28 April 2015, 20:15:36
Also, als allererstes: Ja, ich bin dankbar, und zwar ALLEN Entwicklern hier im Forum! Das will ich hier mal vollends klarstellen.

Aber, und das muss ich leider auch sagen, muss das ganze auch dokumentiert sein, wenn so eine Umstellung hier, und das ist leider so, in einem 35 seitigen Thread komplett untergeht und auch nicht vorher angekündigt wird. Sorry, aber wer erklärt bitte meiner Frau, daß die Butze kalt ist? Das muss ich machen...  ::)

Es geht auch nicht darum, daß die Butze kalt bleibt. Es geht mir ums Prinzip.

Kann man denn nicht irgendwo im Forum oder anderweitig sehen, was ein Entwickler eines Modules für Änderungen eingestellt hat? Daß es Änderungen gibt, habe ich mittlerweile im Entwicklerthread gefunden, das ist aber mehr oder weniger nur rudimentär beschrieben.

@ Hans Franz: Das würde ich nicht können, da ich nicht den Hintergrund habe und das habe ich auch nicht damit gemeint. Dokumentation ist wichtig. Das ist das A und O. Das habe auch ich mittlerweile erkannt. Das war bei mir auch früher nicht so. FHEM ist mittlerweile so derart vielschichtig, dass man niemals alles vorher checken kann, schon gar nicht, wenn man hunderte Seiten Posts durchackern muss um alle von einem genutzte Module auf Änderungen abzuprüfen.

@ Dietmar63: Also nochmals hier und nur für Dich: DANKE für dieses Modul, ich nutze es gern und sehr ausgiebig und es hat bisher super Dienste geleistet. Aber ich hoffe Du kannst nachvollziehen, warum ich so einen Frust schiebe. Du musst nicht begründen, warum Du etwas machst. Du bist der Entwickler und Du bestimmst die Richtung. Aber bitte vorher ankündigen.

@carzl: Ich denke, meine Kritik habe ich mit gutem Augenmaß vorgebracht. Sorry, wenn ich jemanden verärgert habe!

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 28 April 2015, 23:55:08
Zitat von: DerTom am 28 April 2015, 20:15:36
Kann man denn nicht irgendwo im Forum oder anderweitig sehen, was ein Entwickler eines Modules für Änderungen eingestellt hat?

Doch,kann man:hier (http://sourceforge.net/p/fhem/code/commit_browser)

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerTom am 29 April 2015, 07:36:25
Hallo,

das ist das gleiche wie http://forum.fhem.de/index.php/board,57.0.html (http://forum.fhem.de/index.php/board,57.0.html) . Da wurde aber für das entsprechende Update nur die Beschreibung: 98_Heating_Control, 98_WeekdayTimer, 59_Twilight: big refactoring update with some minor improvements hinterlegt und beschreibt nicht, was eigentlich gemacht wurde. Dafür ist nun mal in meinen Augen die Commandref da.

Aber nun gut des Themas. Ich will nicht irgendwelchen Unfrieden stiften, sondern nur Kritik anbringen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 30 April 2015, 07:51:47
Hallo Dietmar,

ich habe bei der aktuellen Version das Problem, dass Fenstersensoren ignoriert werden.

Z.B. wird ein Fenster geöffnet und das HM Thermostat geht auf 8 Grad (meine WinopenTemp). Kommt jetzt eine neuer "Schaltpunkt" von HC, wird dieser auch ausgeführt und das HM Theromostat entsprechend verstellt.
Es sollte doch gewartet werden, bis Fenster wieder zu.


Gesendet von iPhone mit Tapatalk
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 30 April 2015, 08:42:38
Nochmal ich.
Mir ist gerade noch aufgefallen, das state, nextUpdate und nextValue auch teilweise falsche Werte anzeigt und auch ein zwei Thermostate falsch geschalten werden.

Wie kommt man denn an die alten Versionen ran?


Gesendet von iPhone mit Tapatalk
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 30 April 2015, 09:23:08
Hallo,
Kann ich leider bestätigen: Heute ist Donnerstag, aber nextUpdate hat den Wert von Di mit heutigem Datum:Internals:
  DEF        test_Weekday en  13:48|20 mo|22:33:30|olln Di|06:00|se Mo-Fr|{sunrise_abs_dat(time()+70*86400)}|pur

   DEVICE     test_Weekday
   GlobalDaylistSpec
   LANGUAGE   en
   NAME       heatingBath
   NR         90
   Profil 0: Sunday 13:48:00 20
   Profil 1: Monday 04:41:47 pur
, 13:48:00 20, 22:33:30 olln
   Profil 2: Tuesday 04:41:47 pur
, 13:48:00 20
   Profil 3: Wednesday 04:41:47 pur
, 13:48:00 20
   Profil 4: Thursday 04:41:47 pur
, 13:48:00 20
   Profil 5: Friday 04:41:47 pur
, 13:48:00 20
   Profil 6: Saturday 13:48:00 20
   STATE      pur

   TYPE       WeekdayTimer
   Readings:
     2015-04-30 09:16:51   disabled        0
     2015-04-30 09:17:11   nextUpdate      2015-04-30 06:00:00
     2015-04-30 09:17:11   nextValue       se
     2015-04-30 09:17:11   state           pur

   SWITCHINGTIMES:
     13:48|20
     mo|22:33:30|olln
     Di|06:00|se
     Mo-Fr|{sunrise_abs_dat(time()+70*86400)}|pur

   Timer:
     Heatingbath_04:41:47:
       HASH       heatingBath
       MODIFIER   04:41:47
       NAME       heatingBath_04:41:47
     Heatingbath_13:48:00:
       HASH       heatingBath
       MODIFIER   13:48:00
       NAME       heatingBath_13:48:00
     Heatingbath_22:33:30:
       HASH       heatingBath
       MODIFIER   22:33:30
       NAME       heatingBath_22:33:30
     Heatingbath_settimerofday:
       HASH       heatingBath
       MODIFIER   SetTimerOfDay
       NAME       heatingBath_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     fr         5
     mo         1
     sa         6
     su         0
     th         4
     tu         2
     we         3
   Helper:
     daysRegExp (su|mo|tu|we|th|fr|sa|\$we|\!\$we)
     daysRegExpMessage (su|mo|tu|we|th|fr|sa|$we|!$we)
     Switchingtime:
       0:
         13:48:00   20
       1:
         04:41:47   pur

         13:48:00   20
         22:33:30   olln
       2:
         04:41:47   pur

         13:48:00   20
       3:
         04:41:47   pur

         13:48:00   20
       4:
         04:41:47   pur

         13:48:00   20
       5:
         04:41:47   pur

         13:48:00   20
       6:
         13:48:00   20
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     04:41:47:
       NEXTPARA   se
       NEXTSWITCH 06:00:00
       PARA       pur

       TIM        1430361707
       TAGE:
         1
         2
         3
         4
         5
     06:00:00:
       NEXTPARA   20
       NEXTSWITCH 13:48:00
       PARA       se
       TIM        1430366400
       TAGE:
     13:48:00:
       NEXTPARA   olln
       NEXTSWITCH 22:33:30
       PARA       20
       TIM        1430394480
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     22:33:30:
       NEXTPARA   pur

       NEXTSWITCH 04:41:47
       PARA       olln
       TIM        1430426010
       TAGE:
         1
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   room       test
   switchInThePast 1
   verbose    4


Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 30 April 2015, 11:28:29
Hier von mir auch nochmal ein list von zwei Devices, die im Moment gar nicht stimmen:

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        HZ_Leoni_Clima 12345|12:00|21.5 06|09:30|21.5 20:30|16 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     HZ_Leoni_Clima
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCL
   NR         687
   Profil 0: Sonntag 09:30:00 21.5, 20:30:00 16
   Profil 1: Montag 12:00:00 21.5, 20:30:00 16
   Profil 2: Dienstag 12:00:00 21.5, 20:30:00 16
   Profil 3: Mittwoch 12:00:00 21.5, 20:30:00 16
   Profil 4: Donnerstag 12:00:00 21.5, 20:30:00 16
   Profil 5: Freitag 12:00:00 21.5, 20:30:00 16
   Profil 6: Samstag 09:30:00 21.5, 20:30:00 16
   STATE      21.5
   TYPE       Heating_Control
   Readings:
     2015-04-30 08:46:51   disabled        0
     2015-04-30 09:30:00   nextUpdate      2015-04-30 12:00:00
     2015-04-30 09:30:00   nextValue       21.5
     2015-04-30 09:30:00   state           21.5
   SWITCHINGTIMES:
     12345|12:00|21.5
     06|09:30|21.5
     20:30|16
   Timer:
     Hcl_09:30:00:
       HASH       HCL
       MODIFIER   09:30:00
       NAME       HCL_09:30:00
     Hcl_12:00:00:
       HASH       HCL
       MODIFIER   12:00:00
       NAME       HCL_12:00:00
     Hcl_20:30:00:
       HASH       HCL
       MODIFIER   20:30:00
       NAME       HCL_20:30:00
     Hcl_settimerofday:
       HASH       HCL
       MODIFIER   SetTimerOfDay
       NAME       HCL_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:30:00   21.5
         20:30:00   16
       1:
         12:00:00   21.5
         20:30:00   16
       2:
         12:00:00   21.5
         20:30:00   16
       3:
         12:00:00   21.5
         20:30:00   16
       4:
         12:00:00   21.5
         20:30:00   16
       5:
         12:00:00   21.5
         20:30:00   16
       6:
         09:30:00   21.5
         20:30:00   16
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     09:30:00:
       PARA       21.5
       TIM        1430379000
       TAGE:
         0
         6
     12:00:00:
       PARA       21.5
       TIM        1430388000
       TAGE:
         1
         2
         3
         4
         5
     20:30:00:
       PARA       16
       TIM        1430418600
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Leoni
   group      Heizplan
   room       Heizung
   windowSensor Fenster_Leoni  d_ECOMode


Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        HZ_Buero_Clima 1234|12:00|21.5 5|08:00|21.5 06|09:00|21.5 19:00|16 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     HZ_Buero_Clima
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCO
   NR         684
   Profil 0: Sonntag 09:00:00 21.5, 19:00:00 16
   Profil 1: Montag 12:00:00 21.5, 19:00:00 16
   Profil 2: Dienstag 12:00:00 21.5, 19:00:00 16
   Profil 3: Mittwoch 12:00:00 21.5, 19:00:00 16
   Profil 4: Donnerstag 12:00:00 21.5, 19:00:00 16
   Profil 5: Freitag 08:00:00 21.5, 19:00:00 16
   Profil 6: Samstag 09:00:00 21.5, 19:00:00 16
   STATE      21.5
   TYPE       Heating_Control
   Readings:
     2015-04-30 08:46:51   disabled        0
     2015-04-30 09:00:00   nextUpdate      2015-04-30 12:00:00
     2015-04-30 09:00:00   nextValue       21.5
     2015-04-30 09:00:00   state           21.5
   SWITCHINGTIMES:
     1234|12:00|21.5
     5|08:00|21.5
     06|09:00|21.5
     19:00|16
   Timer:
     Hco_09:00:00:
       HASH       HCO
       MODIFIER   09:00:00
       NAME       HCO_09:00:00
     Hco_12:00:00:
       HASH       HCO
       MODIFIER   12:00:00
       NAME       HCO_12:00:00
     Hco_19:00:00:
       HASH       HCO
       MODIFIER   19:00:00
       NAME       HCO_19:00:00
     Hco_settimerofday:
       HASH       HCO
       MODIFIER   SetTimerOfDay
       NAME       HCO_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:00:00   21.5
         19:00:00   16
       1:
         12:00:00   21.5
         19:00:00   16
       2:
         12:00:00   21.5
         19:00:00   16
       3:
         12:00:00   21.5
         19:00:00   16
       4:
         12:00:00   21.5
         19:00:00   16
       5:
         08:00:00   21.5
         19:00:00   16
       6:
         09:00:00   21.5
         19:00:00   16
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     08:00:00:
       PARA       21.5
       TIM        1430373600
       TAGE:
         5
     09:00:00:
       PARA       21.5
       TIM        1430377200
       TAGE:
         0
         6
     12:00:00:
       PARA       21.5
       TIM        1430388000
       TAGE:
         1
         2
         3
         4
     19:00:00:
       PARA       16
       TIM        1430413200
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Büro
   group      Heizplan
   room       Heizung
   windowSensor Fenster_Buero  d_ECOMode
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 30 April 2015, 11:53:01
Ich kann mir das leider erst morgen Abend ansehen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerFrickler am 30 April 2015, 20:57:13
verhält sich dieses Modul bei allen Heizkörper-Reglern gleich?

Wenn ich es richtig verstanden habe lautet das Format im Modul: Tag|Uhrzeit|Temperatur die an diesem Tag zu dieser Uhrzeit eingestellt werden soll

Bei HomeMatic schaut das etwas anders aus: Uhrzeit|Temperatur die bis zu dieser Uhrzeit gültig ist

Beistpiel: 06:00 16.0 12:30 19.0 13:30 16.0 23:00 19.0 24:00 16.0
Von 0:00 bis 06:00 Absenktemperatur auf 16 °C, danach von 06:00 bis 12:30 Komforttemperatur auf 19 °C, von 12:30 bis 13:30 Absenktemperatur auf 16 °C und dann bis 23:00 Komforttemperatur auf 19 °C. Ab 23:00 bis 24:00 erneut Absenktemperatur auf 16 °C.

d.h., beim Heating_Control ist es ein "ab-Zeitpunkt", bei HomeMatik ein "bis-Zeitpunkt".

Einen schönen Abend!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 30 April 2015, 21:03:03
Zitat von: DerFrickler am 30 April 2015, 20:57:13

d.h., beim Heating_Control ist es ein "ab-Zeitpunkt", bei HomeMatik ein "bis-Zeitpunkt".

Einen schönen Abend!

korrekt
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerFrickler am 30 April 2015, 22:15:06
soweit so gut, nur stellt sich hier die Frage ob diesbezüglich alle Heizungsregler identisch sind und (falls nicht) ob Heating_Control einen möglicherweise unterschiedlichen Syntax für die unterschiedlichen Regler berücksichtigt.

Gruß!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 30 April 2015, 22:27:48
Also ich steuer FHT und HM damit an und alle nach gleicher Logik.
Der Syntax der Thermostate spielt ja gar keine Rolle, nur die Art, was geschickt wird.
Bei FHT und HM ist es desired-temp, nur bei Max ist es wohl etwas anderes.

HC hat grundsätzlich nichts mit dem internen Program der Thermostate zu tun.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: DerTom am 01 Mai 2015, 11:43:07
Hallo Dietmar,

kurze Frage:

Zitatnew funktions:
WeekdayTimer_SetParm("<devicename>")
Heating_Control_SetTemp("<devicename>")

Ist mit "devicename" der Name des zu schaltenden Devices oder der Name des Weekdaytimers- oder HeatingControl-Elements gemeint? Wie kann ich z.B. mehrere Devices ansteuern? Innerhalb ("xxx;yyy") mit Trenner oder muss ich dann meherere WeekdayTimer_SetParm("<devicename>") absetzen?

Gruß
Tom
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 Mai 2015, 12:32:48
Zitat von: DerTom am 01 Mai 2015, 11:43:07
Hallo Dietmar,

kurze Frage:

Ist mit "devicename" der Name des zu schaltenden Devices oder der Name des Weekdaytimers- oder HeatingControl-Elements gemeint? Wie kann ich z.B. mehrere Devices ansteuern? Innerhalb ("xxx;yyy") mit Trenner oder muss ich dann meherere WeekdayTimer_SetParm("<devicename>") absetzen?

Gruß
Tom

HC oder WD, mehrere
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 Mai 2015, 18:02:47
Zitat von: Mitch am 30 April 2015, 11:28:29
Hier von mir auch nochmal ein list von zwei Devices, die im Moment gar nicht stimmen:

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        HZ_Leoni_Clima 12345|12:00|21.5 06|09:30|21.5 20:30|16 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     HZ_Leoni_Clima
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCL
   NR         687
   Profil 0: Sonntag 09:30:00 21.5, 20:30:00 16
   Profil 1: Montag 12:00:00 21.5, 20:30:00 16
   Profil 2: Dienstag 12:00:00 21.5, 20:30:00 16
   Profil 3: Mittwoch 12:00:00 21.5, 20:30:00 16
   Profil 4: Donnerstag 12:00:00 21.5, 20:30:00 16
   Profil 5: Freitag 12:00:00 21.5, 20:30:00 16
   Profil 6: Samstag 09:30:00 21.5, 20:30:00 16
   STATE      21.5
   TYPE       Heating_Control
   Readings:
     2015-04-30 08:46:51   disabled        0
     2015-04-30 09:30:00   nextUpdate      2015-04-30 12:00:00
     2015-04-30 09:30:00   nextValue       21.5
     2015-04-30 09:30:00   state           21.5
   SWITCHINGTIMES:
     12345|12:00|21.5
     06|09:30|21.5
     20:30|16
   Timer:
     Hcl_09:30:00:
       HASH       HCL
       MODIFIER   09:30:00
       NAME       HCL_09:30:00
     Hcl_12:00:00:
       HASH       HCL
       MODIFIER   12:00:00
       NAME       HCL_12:00:00
     Hcl_20:30:00:
       HASH       HCL
       MODIFIER   20:30:00
       NAME       HCL_20:30:00
     Hcl_settimerofday:
       HASH       HCL
       MODIFIER   SetTimerOfDay
       NAME       HCL_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:30:00   21.5
         20:30:00   16
       1:
         12:00:00   21.5
         20:30:00   16
       2:
         12:00:00   21.5
         20:30:00   16
       3:
         12:00:00   21.5
         20:30:00   16
       4:
         12:00:00   21.5
         20:30:00   16
       5:
         12:00:00   21.5
         20:30:00   16
       6:
         09:30:00   21.5
         20:30:00   16
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     09:30:00:
       PARA       21.5
       TIM        1430379000
       TAGE:
         0
         6
     12:00:00:
       PARA       21.5
       TIM        1430388000
       TAGE:
         1
         2
         3
         4
         5
     20:30:00:
       PARA       16
       TIM        1430418600
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Leoni
   group      Heizplan
   room       Heizung
   windowSensor Fenster_Leoni  d_ECOMode


Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        HZ_Buero_Clima 1234|12:00|21.5 5|08:00|21.5 06|09:00|21.5 19:00|16 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     HZ_Buero_Clima
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCO
   NR         684
   Profil 0: Sonntag 09:00:00 21.5, 19:00:00 16
   Profil 1: Montag 12:00:00 21.5, 19:00:00 16
   Profil 2: Dienstag 12:00:00 21.5, 19:00:00 16
   Profil 3: Mittwoch 12:00:00 21.5, 19:00:00 16
   Profil 4: Donnerstag 12:00:00 21.5, 19:00:00 16
   Profil 5: Freitag 08:00:00 21.5, 19:00:00 16
   Profil 6: Samstag 09:00:00 21.5, 19:00:00 16
   STATE      21.5
   TYPE       Heating_Control
   Readings:
     2015-04-30 08:46:51   disabled        0
     2015-04-30 09:00:00   nextUpdate      2015-04-30 12:00:00
     2015-04-30 09:00:00   nextValue       21.5
     2015-04-30 09:00:00   state           21.5
   SWITCHINGTIMES:
     1234|12:00|21.5
     5|08:00|21.5
     06|09:00|21.5
     19:00|16
   Timer:
     Hco_09:00:00:
       HASH       HCO
       MODIFIER   09:00:00
       NAME       HCO_09:00:00
     Hco_12:00:00:
       HASH       HCO
       MODIFIER   12:00:00
       NAME       HCO_12:00:00
     Hco_19:00:00:
       HASH       HCO
       MODIFIER   19:00:00
       NAME       HCO_19:00:00
     Hco_settimerofday:
       HASH       HCO
       MODIFIER   SetTimerOfDay
       NAME       HCO_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:00:00   21.5
         19:00:00   16
       1:
         12:00:00   21.5
         19:00:00   16
       2:
         12:00:00   21.5
         19:00:00   16
       3:
         12:00:00   21.5
         19:00:00   16
       4:
         12:00:00   21.5
         19:00:00   16
       5:
         08:00:00   21.5
         19:00:00   16
       6:
         09:00:00   21.5
         19:00:00   16
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     08:00:00:
       PARA       21.5
       TIM        1430373600
       TAGE:
         5
     09:00:00:
       PARA       21.5
       TIM        1430377200
       TAGE:
         0
         6
     12:00:00:
       PARA       21.5
       TIM        1430388000
       TAGE:
         1
         2
         3
         4
     19:00:00:
       PARA       16
       TIM        1430413200
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Büro
   group      Heizplan
   room       Heizung
   windowSensor Fenster_Buero  d_ECOMode


Ich habe den Timer 1 mit leicht anderen Schaltzeitpunkten nachgestellt und kann keinen Fehler feststellen - siehe Bildschirm-Foto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 Mai 2015, 19:43:01
Zitat von: Hans Franz am 30 April 2015, 09:23:08
Hallo,
Kann ich leider bestätigen: Heute ist Donnerstag, aber nextUpdate hat den Wert von Di mit heutigem Datum:Internals:
  DEF        test_Weekday en  13:48|20 mo|22:33:30|olln Di|06:00|se Mo-Fr|{sunrise_abs_dat(time()+70*86400)}|pur

   DEVICE     test_Weekday
   GlobalDaylistSpec
   LANGUAGE   en
   NAME       heatingBath
   NR         90
   Profil 0: Sunday 13:48:00 20
   Profil 1: Monday 04:41:47 pur
, 13:48:00 20, 22:33:30 olln
   Profil 2: Tuesday 04:41:47 pur
, 13:48:00 20
   Profil 3: Wednesday 04:41:47 pur
, 13:48:00 20
   Profil 4: Thursday 04:41:47 pur
, 13:48:00 20
   Profil 5: Friday 04:41:47 pur
, 13:48:00 20
   Profil 6: Saturday 13:48:00 20
   STATE      pur

   TYPE       WeekdayTimer
   Readings:
     2015-04-30 09:16:51   disabled        0
     2015-04-30 09:17:11   nextUpdate      2015-04-30 06:00:00
     2015-04-30 09:17:11   nextValue       se
     2015-04-30 09:17:11   state           pur

   SWITCHINGTIMES:
     13:48|20
     mo|22:33:30|olln
     Di|06:00|se
     Mo-Fr|{sunrise_abs_dat(time()+70*86400)}|pur

   Timer:
     Heatingbath_04:41:47:
       HASH       heatingBath
       MODIFIER   04:41:47
       NAME       heatingBath_04:41:47
     Heatingbath_13:48:00:
       HASH       heatingBath
       MODIFIER   13:48:00
       NAME       heatingBath_13:48:00
     Heatingbath_22:33:30:
       HASH       heatingBath
       MODIFIER   22:33:30
       NAME       heatingBath_22:33:30
     Heatingbath_settimerofday:
       HASH       heatingBath
       MODIFIER   SetTimerOfDay
       NAME       heatingBath_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     fr         5
     mo         1
     sa         6
     su         0
     th         4
     tu         2
     we         3
   Helper:
     daysRegExp (su|mo|tu|we|th|fr|sa|\$we|\!\$we)
     daysRegExpMessage (su|mo|tu|we|th|fr|sa|$we|!$we)
     Switchingtime:
       0:
         13:48:00   20
       1:
         04:41:47   pur

         13:48:00   20
         22:33:30   olln
       2:
         04:41:47   pur

         13:48:00   20
       3:
         04:41:47   pur

         13:48:00   20
       4:
         04:41:47   pur

         13:48:00   20
       5:
         04:41:47   pur

         13:48:00   20
       6:
         13:48:00   20
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     04:41:47:
       NEXTPARA   se
       NEXTSWITCH 06:00:00
       PARA       pur

       TIM        1430361707
       TAGE:
         1
         2
         3
         4
         5
     06:00:00:
       NEXTPARA   20
       NEXTSWITCH 13:48:00
       PARA       se
       TIM        1430366400
       TAGE:
     13:48:00:
       NEXTPARA   olln
       NEXTSWITCH 22:33:30
       PARA       20
       TIM        1430394480
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     22:33:30:
       NEXTPARA   pur

       NEXTSWITCH 04:41:47
       PARA       olln
       TIM        1430426010
       TAGE:
         1
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   room       test
   switchInThePast 1
   verbose    4


Gruß
Hans

Du müsstest bei der Definition Fehler im Log bekommen haben:
2015.05.01 19:20:40 4: [tstWD] 05:09:34 21:24:14 Friday
2015.05.01 19:20:40 1: [tstWD] invalid daylist in tstWD <Di> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2015.05.01 19:20:40 1: [tstWD] invalid daylist in tstWD <Di> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2015.05.01 19:20:40 3: [tstWD] invalid device, <test_Weekday> not found
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 02 Mai 2015, 01:23:30
Hallo,

Sorry, stimmt natürlich. Ich sollte nicht so hastig sein... :)
Darf ich dennoch eine andere Modifikation schicken?
Internals:
   DEF        testdummy de Mi|01:30|on
   DEVICE     testdummy
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       Temp_WDT
   NR         121
   Profil 3: Mittwoch 01:30:00 on
   STATE      inactive
   TYPE       WeekdayTimer
   Readings:
     2015-05-02 01:10:10   disabled        0
     2015-05-02 01:13:27   nextUpdate      2015-05-02 01:30:00
     2015-05-02 01:13:27   nextValue       on
     2015-05-02 01:13:27   state           inactive
   SWITCHINGTIMES:
     Mi|01:30|on
   Timer:
     Temp_wdt_01:30:00:
       HASH       Temp_WDT
       MODIFIER   01:30:00
       NAME       Temp_WDT_01:30:00
     Temp_wdt_settimerofday:
       HASH       Temp_WDT
       MODIFIER   SetTimerOfDay
       NAME       Temp_WDT_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       3:
         01:30:00   on
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     01:30:00:
       NEXTPARA   on
       NEXTSWITCH 01:30:00
       PARA       on
       TIM        1430523000
       TAGE:
         3
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   switchInThePast 1
   verbose    5


Log:
2015.05.02 01:13:27 5: [Temp_WDT] removing Timer: Temp_WDT_01:30:00
2015.05.02 01:13:27 4: [Temp_WDT] 05:24:39 21:21:26 Samstag
2015.05.02 01:13:27 4: [Temp_WDT] 01:30:00 on (Profil 3: Mittwoch)
2015.05.02 01:13:27 5: [Temp_WDT] removing Timer: Temp_WDT_SetTimerOfDay
2015.05.02 01:13:27 5: [Temp_WDT] setting  Timer: Temp_WDT_SetTimerOfDay 03.05.2015  00:00:05
2015.05.02 01:13:27 4: [Temp_WDT] device type dummy: recognized, setModifier:
2015.05.02 01:13:27 5: [Temp_WDT] setting  Timer: Temp_WDT_01:30:00 02.05.2015  01:30:00


Version:
Zitat# $Id: 98_WeekdayTimer.pm 8480 2015-04-25 20:24:29Z dietmar63 $

Ich werde weiter versuchen eine Systematik zu entdecken.

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 02 Mai 2015, 10:21:26
Zitat von: Hans Franz am 02 Mai 2015, 01:23:30
Hallo,

Sorry, stimmt natürlich. Ich sollte nicht so hastig sein... :)
Darf ich dennoch eine andere Modifikation schicken?
Internals:
   DEF        testdummy de Mi|01:30|on
   DEVICE     testdummy
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       Temp_WDT
   NR         121
   Profil 3: Mittwoch 01:30:00 on
   STATE      inactive
   TYPE       WeekdayTimer
   Readings:
     2015-05-02 01:10:10   disabled        0
     2015-05-02 01:13:27   nextUpdate      2015-05-02 01:30:00
     2015-05-02 01:13:27   nextValue       on
     2015-05-02 01:13:27   state           inactive
   SWITCHINGTIMES:
     Mi|01:30|on
   Timer:
     Temp_wdt_01:30:00:
       HASH       Temp_WDT
       MODIFIER   01:30:00
       NAME       Temp_WDT_01:30:00
     Temp_wdt_settimerofday:
       HASH       Temp_WDT
       MODIFIER   SetTimerOfDay
       NAME       Temp_WDT_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       3:
         01:30:00   on
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     01:30:00:
       NEXTPARA   on
       NEXTSWITCH 01:30:00
       PARA       on
       TIM        1430523000
       TAGE:
         3
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   switchInThePast 1
   verbose    5


Log:
2015.05.02 01:13:27 5: [Temp_WDT] removing Timer: Temp_WDT_01:30:00
2015.05.02 01:13:27 4: [Temp_WDT] 05:24:39 21:21:26 Samstag
2015.05.02 01:13:27 4: [Temp_WDT] 01:30:00 on (Profil 3: Mittwoch)
2015.05.02 01:13:27 5: [Temp_WDT] removing Timer: Temp_WDT_SetTimerOfDay
2015.05.02 01:13:27 5: [Temp_WDT] setting  Timer: Temp_WDT_SetTimerOfDay 03.05.2015  00:00:05
2015.05.02 01:13:27 4: [Temp_WDT] device type dummy: recognized, setModifier:
2015.05.02 01:13:27 5: [Temp_WDT] setting  Timer: Temp_WDT_01:30:00 02.05.2015  01:30:00


Version:
Ich werde weiter versuchen eine Systematik zu entdecken.

Gruß
Hans

Ich kann keinen Fehler entdecken. Vielleicht erwartest  du etwas, was so nicht Eintritt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 02 Mai 2015, 10:46:34
Hallo,

Das hätte ich erwähnen können:
ZitatnextUpdate      2015-05-02 01:30:00
Generell steht bei mir nur noch das heutige Datum in nextUpdate. Gemäß obiger Definition sollte doch der 6.Mai dort stehen.

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 02 Mai 2015, 11:42:18
Hallo,
Alles zurück :).
Irgendetwas ist bei den Updates schiefgelaufen. Habe gerade die Version vom 27.4. geladen und nextUpdate stimmt. Sorry, my mistake.
Ich teste weiter.

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 02 Mai 2015, 12:01:09
Zitat von: Dietmar63 am 01 Mai 2015, 18:02:47
Ich habe den Timer 1 mit leicht anderen Schaltzeitpunkten nachgestellt und kann keinen Fehler feststellen - siehe Bildschirm-Foto

Der Fehler, im state sollte zu diesem Zeitpunkt 16 stehen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 02 Mai 2015, 13:57:05
Zitat von: Mitch am 02 Mai 2015, 12:01:09
Der Fehler, im state sollte zu diesem Zeitpunkt 16 stehen.

Und wenn du dir den von mir exakt  nachgebauten timer ansiehst(Foto), dann steht im state 16 drin.
Fehler nicht nachstellbar.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 02 Mai 2015, 15:03:04
@ Hans Franz, @ Mitch:

ich habe einige Test mit dem state und nextValue durchgeführt.
Ich kann keine Fehler wie ihr sie beschreibt mehr feststellen.

Die Definition:
define tstWD2 WeekdayTimer testdummy de Mi|01:30|on
Führt zu folgenden Anzeigen - siehe Foto.

Spätestestens morgen werde ich noch ein weiteres update einchecken, bei dem es um Problembehebungen geht, die crasl und det. gemeldet haben, die tatsächlich Korrekturen bedurften.

Dann wird auch die Doku auf einen neueren Stand gebracht.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 02 Mai 2015, 22:18:16
neue Version eingecheckt - aus meiner Sicht keine offenen Probleme vorhanden.
probiert die Version bei Gelegenheit aus.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 03 Mai 2015, 11:26:45
So, habe gerade einen Update gemacht.

Was mir direkt aufgefallen ist, nach dem Neustart wurden zwei Heizungen trotz offenen Fenstern direkt geschalten.
Auch zeigt der state die Temperatur an, bei der alten Version ($Id: 98_Heating_Control.pm 6918 2014-11-08 16:47:09Z dietmar63 $) stand im state dann immer waiting. Auch wurde immer im Log immer z.B. [HCS] switch of HZ_Schlafzimmer_Clima delayed - sensor 'Fenster_Schlafzimmer' Reading/Attribute 'state' is 'open' gemeldet, das fehlt mir auch.

Werde jetzt mal beobachten, ob es mit den Fenstern nun funktioniert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: det. am 03 Mai 2015, 11:46:26
Zitat von: Dietmar63 am 02 Mai 2015, 22:18:16
neue Version eingecheckt - aus meiner Sicht keine offenen Probleme vorhanden.
probiert die Version bei Gelegenheit aus.
Danke,
PID20 und Dummy mit THRESHOLD schalten einwandfrei mit der neuen Version
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Mai 2015, 11:50:02
Zitat
Was mir direkt aufgefallen ist, nach dem Neustart wurden zwei Heizungen trotz offenen Fenstern direkt geschalten.

Beim Neustart könnte es daran liegen, dass der define von den Fensterkontakten keine Ahnung hat, weil sie ihm ja erst mit attr danach bekannt gegeben werden. Leider lassen sich Attribute nur auf vorhandene devices anlegen.

Ich habe die Hinweise auf eine Verzögerung wg. Eines Fensterkontakts definitiv bei mir gesehen.

Setze mal
verbose auf 5,
Dann sollte folgende Meldung ins log laufen:

Log3 $hash, 5, "[$name] list of window sensors found: '$fensterKontakte'";

und auch mehr ins log geschrieben werden
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 03 Mai 2015, 12:11:13
Ja so etwas in die Richtung vermute ich auch, wobei bei mir die HC Devices die letzten in der cfg sind.
Gerade mal ein Fenster zu gemacht, aber die Temperatur wurde nicht verstellt.

Wie gesagt, werde ich mal heute beobachten.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 03 Mai 2015, 12:39:22
Also irgendwie läuft das bei mir nicht rund.

Hab jetzt mal ein Fenster zum testen geöffnet (Küche) und schau auf die Oberfläche und da sind alle HCs auf inactive, nur der eine, wo das Fenster schon seit gestern offen ist (Schlafzimmer), zweigt state 16, statt waiting

Siehe Anhang

EDIT:: gerade wieder die alte Version eingespielt und schon geht wieder alles richtig
Siehe zweiter Anhang
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Mai 2015, 12:56:45
Zitat von: Mitch am 03 Mai 2015, 12:39:22
Also irgendwie läuft das bei mir nicht rund.

Hab jetzt mal ein Fenster zum testen geöffnet (Küche) und schau auf die Oberfläche und da sind alle HCs auf inactive, nur der eine, wo das Fenster schon seit gestern offen ist (Schlafzimmer), zweigt state 16, statt waiting

Siehe Anhang

EDIT:: gerade wieder die alte Version eingespielt und schon geht wieder alles richtig
Siehe zweiter Anhang

was ist das für eine Anzeige(hardcopy)?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 03 Mai 2015, 13:03:11
Ja, einfach ein Bildschirmfoto
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Mai 2015, 13:37:11
dann lass dein HC(Leoni) mal mit tst beginnen, und sende mir das Protokoll
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 03 Mai 2015, 19:21:41
Hier der Log.
Habe erst den _Leoni angelegt, dann _Schalfzimmer und dann das Fenster zu gemacht (war offen).
Leider wurde das Fenster wieder nicht erkannt.

2015.05.03 19:18:28 3: [HCS] set HCS disable
2015.05.03 19:17:58 4: [tstWZ_Schafzimmer] aktParam:19.0 newParam:19.0 - is  not disabled
2015.05.03 19:17:58 4: [tstWZ_Schafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.03 19:17:58 4: [tstWZ_Schafzimmer] next: 2015-05-03 21:00:00(so) -->> 16
2015.05.03 19:17:58 4: [tstWZ_Schafzimmer] akt:  2015-05-03 18:00:00(so) -->> 19
2015.05.03 19:17:58 4: [tstWZ_Schafzimmer]:setTimer - timer seems to be active today: 0123456|21:00|16
2015.05.03 19:17:58 4: [tstWZ_Schafzimmer] Heating recognized - switch in the past activated
2015.05.03 19:17:58 4: [tstWZ_Schafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.03 19:17:57 4: [tstWZ_Schafzimmer] 18:00:00 19, 21:00:00 16 (Profil 6: Samstag)
2015.05.03 19:17:57 4: [tstWZ_Schafzimmer] 18:00:00 19, 21:00:00 16 (Profil 5: Freitag)
2015.05.03 19:17:57 4: [tstWZ_Schafzimmer] 18:00:00 19, 21:00:00 16 (Profil 4: Donnerstag)
2015.05.03 19:17:57 4: [tstWZ_Schafzimmer] 18:00:00 19, 21:00:00 16 (Profil 3: Mittwoch)
2015.05.03 19:17:57 4: [tstWZ_Schafzimmer] 18:00:00 19, 21:00:00 16 (Profil 2: Dienstag)
2015.05.03 19:17:57 4: [tstWZ_Schafzimmer] 18:00:00 19, 21:00:00 16 (Profil 1: Montag)
2015.05.03 19:17:57 4: [tstWZ_Schafzimmer] 18:00:00 19, 21:00:00 16 (Profil 0: Sonntag)
2015.05.03 19:17:57 4: [tstWZ_Schafzimmer] 05:17:48 21:05:05 Sonntag
2015.05.03 19:16:09 4: [tstWZ_Leoni] aktParam:21.5 newParam:21.5 - is  not disabled
2015.05.03 19:16:09 4: [tstWZ_Leoni] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.03 19:16:09 4: [tstWZ_Leoni] next: 2015-05-03 20:30:00(so) -->> 16
2015.05.03 19:16:09 4: [tstWZ_Leoni] akt:  2015-05-03 09:30:00(so) -->> 21.5
2015.05.03 19:16:09 4: [tstWZ_Leoni]:setTimer - timer seems to be active today: 0123456|20:30|16
2015.05.03 19:16:09 4: [tstWZ_Leoni] Heating recognized - switch in the past activated
2015.05.03 19:16:09 4: [tstWZ_Leoni] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.03 19:16:08 4: [tstWZ_Leoni] 09:30:00 21.5, 20:30:00 16 (Profil 6: Samstag)
2015.05.03 19:16:08 4: [tstWZ_Leoni] 12:00:00 21.5, 20:30:00 16 (Profil 5: Freitag)
2015.05.03 19:16:08 4: [tstWZ_Leoni] 12:00:00 21.5, 20:30:00 16 (Profil 4: Donnerstag)
2015.05.03 19:16:08 4: [tstWZ_Leoni] 12:00:00 21.5, 20:30:00 16 (Profil 3: Mittwoch)
2015.05.03 19:16:08 4: [tstWZ_Leoni] 12:00:00 21.5, 20:30:00 16 (Profil 2: Dienstag)
2015.05.03 19:16:08 4: [tstWZ_Leoni] 12:00:00 21.5, 20:30:00 16 (Profil 1: Montag)
2015.05.03 19:16:08 4: [tstWZ_Leoni] 09:30:00 21.5, 20:30:00 16 (Profil 0: Sonntag)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 03 Mai 2015, 19:32:49
so, habe jetzt nochmal ein Device angelegt, dann ein Fenster geöffnet und leider wurde nichts erkannt:

2015.05.03 19:27:04 4: [tstWZ_Wohzi] aktParam:22.0 newParam:22.0 - is  not disabled
2015.05.03 19:27:04 4: [tstWZ_Wohzi] device type CUL_HM:HM-TC-IT-WM-W-EU recognized, setModifier:desired-temp
2015.05.03 19:27:04 4: [tstWZ_Wohzi] next: 2015-05-03 22:30:00(so) -->> 16
2015.05.03 19:27:04 4: [tstWZ_Wohzi] akt:  2015-05-03 19:00:00(so) -->> 22
2015.05.03 19:27:04 4: [tstWZ_Wohzi]:setTimer - timer seems to be active today: 0123456|22:30|16
2015.05.03 19:27:04 4: [tstWZ_Wohzi] Heating recognized - switch in the past activated
2015.05.03 19:27:04 4: [tstWZ_Wohzi] device type CUL_HM:HM-TC-IT-WM-W-EU recognized, setModifier:desired-temp
2015.05.03 19:27:04 4: [tstWZ_Wohzi] 08:00:00 21.5, 19:00:00 22, 22:30:00 16 (Profil 6: Samstag)
2015.05.03 19:27:04 4: [tstWZ_Wohzi] 06:00:00 21.5, 19:00:00 22, 22:30:00 16 (Profil 5: Freitag)
2015.05.03 19:27:04 4: [tstWZ_Wohzi] 06:00:00 21.5, 07:30:00 16, 12:00:00 21.5, 19:00:00 22, 22:30:00 16 (Profil 4: Donnerstag)
2015.05.03 19:27:04 4: [tstWZ_Wohzi] 06:00:00 21.5, 07:30:00 16, 12:00:00 21.5, 19:00:00 22, 22:30:00 16 (Profil 3: Mittwoch)
2015.05.03 19:27:04 4: [tstWZ_Wohzi] 06:00:00 21.5, 07:30:00 16, 12:00:00 21.5, 19:00:00 22, 22:30:00 16 (Profil 2: Dienstag)
2015.05.03 19:27:04 4: [tstWZ_Wohzi] 06:00:00 21.5, 07:30:00 16, 12:00:00 21.5, 19:00:00 22, 22:30:00 16 (Profil 1: Montag)
2015.05.03 19:27:04 4: [tstWZ_Wohzi] 08:00:00 21.5, 19:00:00 22, 22:30:00 16 (Profil 0: Sonntag)
2015.05.03 19:27:04 4: [tstWZ_Wohzi] 05:17:48 21:05:05 Sonntag


Dabei ist mir aufgefallen, dass wieder ein Device ohne ersichtlichen Grund auf inactive gegangen ist??
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Mai 2015, 21:26:41
wir sollten jetzt nicht immer hin und her springen.

zu Fensterkontakt. ich habe folgendes geloggt:

2015.05.03 21:18:30 2: FHT set HeizungWohnen desired-temp 16.0
2015.05.03 21:18:00 4: [HeizungWohnen_uz___] next: 2015-05-03 22:00:00(so) -->> 16
2015.05.03 21:18:00 4: [HeizungWohnen_uz___] akt:  2015-05-03 21:15:00(so) -->> 16
2015.05.03 21:18:00 4: [HeizungWohnen_uz___] command: {my $days={};;map{$days->{$_}=1}();; if ( (heizungAnAus("Ueb")) && (defined $days->{$wday} ||  $we || !$we)) { fhem('set HeizungWohnen desired-temp 16.0') }} executed
2015.05.03 21:18:00 4: [HeizungWohnen_uz___] aktParam:23.0 newParam:16.0 - is  not disabled
2015.05.03 21:18:00 4: [HeizungWohnen_uz___] device type FHT: recognized, setModifier:desired-temp
2015.05.03 21:18:00 4: [HeizungWohnen_uz___]:Update   - timer seems to be active today: 78|2|16
2015.05.03 21:18:00 3: [HeizungWohnen_uz___] delay of switching HeizungWohnen stopped.
2015.05.03 21:18:00 5: [HeizungWohnen_uz___] sensor 'Terrassentuer' Reading/Attribute 'Window' is 'Closed'
2015.05.03 21:18:00 5: [HeizungWohnen_uz___] list of window sensors found: 'Terrassentuer HeizungWohnen_uz___'
2015.05.03 21:17:00 5: [HeizungWohnen_uz___] setting  Timer: HeizungWohnen_uz____2 03.05.2015  21:18:00
2015.05.03 21:17:00 5: [HeizungWohnen_uz___] sensor 'Terrassentuer' Reading/Attribute 'Window' is 'Open'
2015.05.03 21:17:00 5: [HeizungWohnen_uz___] list of window sensors found: 'Terrassentuer HeizungWohnen_uz___'
2015.05.03 21:16:00 5: [HeizungWohnen_uz___] setting  Timer: HeizungWohnen_uz____2 03.05.2015  21:17:00
2015.05.03 21:16:00 5: [HeizungWohnen_uz___] sensor 'Terrassentuer' Reading/Attribute 'Window' is 'Open'
2015.05.03 21:16:00 5: [HeizungWohnen_uz___] list of window sensors found: 'Terrassentuer HeizungWohnen_uz___'
2015.05.03 21:15:00 5: [HeizungWohnen_uz___] setting  Timer: HeizungWohnen_uz____2 03.05.2015  21:16:00
2015.05.03 21:15:00 3: [HeizungWohnen_uz___] switch of HeizungWohnen delayed - sensor 'Terrassentuer' Reading/Attribute 'Window' is 'Open'
2015.05.03 21:15:00 5: [HeizungWohnen_uz___] sensor 'Terrassentuer' Reading/Attribute 'Window' is 'Open'
2015.05.03 21:15:00 5: [HeizungWohnen_uz___] list of window sensors found: 'Terrassentuer HeizungWohnen_uz___'


So ist es richtig - den output benötigen wir für einen timer dessen FK auf offen steht. Die FK senden immer mit Verspätung, dass das Fenster offen ist.

Bitte bei dir verbose auf 5 setzen(geht nicht bei HC/WD die mit tst beginnen).

Um state inactive kümmern wir uns jetzt erst   einmal nicht - das Problem kommt als nächstes dran.
state inactive bedeutet nur, dass HC glaubt, dass heute kein switch notwendig ist - der timer läuft.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 06 Mai 2015, 17:54:31
So, hat ein bisschen gedauert.

Hier mal der Log vom Schlafzimmer.
Es wurde geschalten, obwohl das Fenster offen war.

2015.05.06 15:58:47 3: Heating_Control_SetTimer() for HCS done!
2015.05.06 15:58:47 3: CUL_HM set HZ_Schlafzimmer_Clima desired-temp 16.0
2015.05.06 15:58:47 4: [HCS] command: {my $days={};;map{$days->{$_}=1}();; if ( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days->{$wday} ||  $we || !$we)) { fhem('set HZ_Schlafzimmer_Clima desired-temp 16.0') }} executed
2015.05.06 15:58:47 4: [HCS] aktParam:8.0 newParam:16.0 - is  not disabled
2015.05.06 15:58:47 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.06 15:58:47 4: [HCS] next: 2015-05-06 18:00:00(mi) -->> 19
2015.05.06 15:58:47 4: [HCS] akt:  2015-05-05 21:00:00(di) -->> 16
2015.05.06 15:58:47 5: [HCS] setting  Timer: HCS_2 06.05.2015  21:00:00
2015.05.06 15:58:47 4: [HCS]:setTimer - timer seems to be active today: 0123456|21:00|16
2015.05.06 15:58:47 5: [HCS] setting  Timer: HCS_1 06.05.2015  18:00:00
2015.05.06 15:58:47 4: [HCS]:setTimer - timer seems to be active today: 0123456|18:00|19
2015.05.06 15:58:47 4: [HCS] Heating recognized - switch in the past activated
2015.05.06 15:58:47 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.06 15:58:47 5: [HCS] removing Timer: HCS_2
2015.05.06 15:58:47 5: [HCS] removing Timer: HCS_1


Hier noch der list vom Device:

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        HZ_Schlafzimmer_Clima 18:00|19 21:00|16 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     HZ_Schlafzimmer_Clima
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCS
   NR         689
   Profil 0: Sonntag 18:00:00 19, 21:00:00 16
   Profil 1: Montag 18:00:00 19, 21:00:00 16
   Profil 2: Dienstag 18:00:00 19, 21:00:00 16
   Profil 3: Mittwoch 18:00:00 19, 21:00:00 16
   Profil 4: Donnerstag 18:00:00 19, 21:00:00 16
   Profil 5: Freitag 18:00:00 19, 21:00:00 16
   Profil 6: Samstag 18:00:00 19, 21:00:00 16
   STATE      16
   TYPE       Heating_Control
   Readings:
     2015-05-05 21:24:33   disabled        0
     2015-05-06 15:58:47   nextUpdate      2015-05-06 18:00:00
     2015-05-06 15:58:47   nextValue       19
     2015-05-06 15:58:47   state           16
   SWITCHINGTIMES:
     18:00|19
     21:00|16
   Timer:
     Hcs_1:
       HASH       HCS
       MODIFIER   1
       NAME       HCS_1
     Hcs_2:
       HASH       HCS
       MODIFIER   2
       NAME       HCS_2
     Hcs_settimerofday:
       HASH       HCS
       MODIFIER   SetTimerOfDay
       NAME       HCS_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         18:00:00   19
         21:00:00   16
       1:
         18:00:00   19
         21:00:00   16
       2:
         18:00:00   19
         21:00:00   16
       3:
         18:00:00   19
         21:00:00   16
       4:
         18:00:00   19
         21:00:00   16
       5:
         18:00:00   19
         21:00:00   16
       6:
         18:00:00   19
         21:00:00   16
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1430928000
       PARA       19
       TIME       18:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1430938800
       PARA       16
       TIME       21:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Schlafzimmer
   disable    0
   group      Heizplan
   room       Heizung
   verbose    5
   windowSensor Fenster_Schlafzimmer


EDIT: gerade nochmal einen Update gemacht. Die 98_Week... wurde upgedatet, also Neustart.
Wieder wurde Schlafzimmer geschalten, obwohl Fenster offen ist:

2015.05.06 18:03:39 3: CUL_HM set HZ_Schlafzimmer_Clima desired-temp 19.0
2015.05.06 18:03:39 4: [HCS] command: {my $days={};;map{$days->{$_}=1}();; if ( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days->{$wday} ||  $we || !$we)) { fhem('set HZ_Schlafzimmer_Clima desired-temp 19.0') }} executed
2015.05.06 18:03:39 4: [HCS] aktParam:8.0 newParam:19.0 - is  not disabled
2015.05.06 18:03:39 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.06 18:03:39 4: [HCS] next: 2015-05-06 21:00:00(mi) -->> 16
2015.05.06 18:03:39 4: [HCS] akt:  2015-05-06 18:00:00(mi) -->> 19
2015.05.06 18:03:39 5: [HCS] setting  Timer: HCS_2 06.05.2015  21:00:00
2015.05.06 18:03:39 4: [HCS]:setTimer - timer seems to be active today: 0123456|21:00|16
2015.05.06 18:03:39 4: [HCS] Heating recognized - switch in the past activated
2015.05.06 18:03:39 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp



EDIT 2: gerade die Version $Id: 98_Heating_Control.pm 6918 2014-11-08 16:47:09Z dietmar63 eingespielt und neu gestartet. Schalfzimmer Fenster wird erkannt und es wird nicht geschalten. im state steht waiting...

2015.05.06 18:14:18 5: [HCS] setting  Timer: HCS_Update 06.05.2015  18:15:18
2015.05.06 18:14:18 5: [HCS] removing Timer: HCS_Update
2015.05.06 18:14:18 3: [HCS] switch of HZ_Schlafzimmer_Clima delayed - sensor 'Fenster_Schlafzimmer' Reading/Attribute 'state' is 'open'
2015.05.06 18:14:18 5: [HCS] sensor 'Fenster_Schlafzimmer' Reading/Attribute 'state' is 'open'
2015.05.06 18:14:18 5: [HCS] list of senors found: 'Fenster_Schlafzimmer  HCS'
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 06 Mai 2015, 22:42:04
Zitat von: Mitch am 06 Mai 2015, 17:54:31
So, hat ein bisschen gedauert.

Hier mal der Log vom Schlafzimmer.
Es wurde geschalten, obwohl das Fenster offen war.

2015.05.06 15:58:47 3: Heating_Control_SetTimer() for HCS done!
2015.05.06 15:58:47 3: CUL_HM set HZ_Schlafzimmer_Clima desired-temp 16.0
2015.05.06 15:58:47 4: [HCS] command: {my $days={};;map{$days->{$_}=1}();; if ( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days->{$wday} ||  $we || !$we)) { fhem('set HZ_Schlafzimmer_Clima desired-temp 16.0') }} executed
2015.05.06 15:58:47 4: [HCS] aktParam:8.0 newParam:16.0 - is  not disabled
2015.05.06 15:58:47 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.06 15:58:47 4: [HCS] next: 2015-05-06 18:00:00(mi) -->> 19
2015.05.06 15:58:47 4: [HCS] akt:  2015-05-05 21:00:00(di) -->> 16
2015.05.06 15:58:47 5: [HCS] setting  Timer: HCS_2 06.05.2015  21:00:00
2015.05.06 15:58:47 4: [HCS]:setTimer - timer seems to be active today: 0123456|21:00|16
2015.05.06 15:58:47 5: [HCS] setting  Timer: HCS_1 06.05.2015  18:00:00
2015.05.06 15:58:47 4: [HCS]:setTimer - timer seems to be active today: 0123456|18:00|19
2015.05.06 15:58:47 4: [HCS] Heating recognized - switch in the past activated
2015.05.06 15:58:47 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.06 15:58:47 5: [HCS] removing Timer: HCS_2
2015.05.06 15:58:47 5: [HCS] removing Timer: HCS_1


Hier noch der list vom Device:

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        HZ_Schlafzimmer_Clima 18:00|19 21:00|16 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     HZ_Schlafzimmer_Clima
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCS
   NR         689
   Profil 0: Sonntag 18:00:00 19, 21:00:00 16
   Profil 1: Montag 18:00:00 19, 21:00:00 16
   Profil 2: Dienstag 18:00:00 19, 21:00:00 16
   Profil 3: Mittwoch 18:00:00 19, 21:00:00 16
   Profil 4: Donnerstag 18:00:00 19, 21:00:00 16
   Profil 5: Freitag 18:00:00 19, 21:00:00 16
   Profil 6: Samstag 18:00:00 19, 21:00:00 16
   STATE      16
   TYPE       Heating_Control
   Readings:
     2015-05-05 21:24:33   disabled        0
     2015-05-06 15:58:47   nextUpdate      2015-05-06 18:00:00
     2015-05-06 15:58:47   nextValue       19
     2015-05-06 15:58:47   state           16
   SWITCHINGTIMES:
     18:00|19
     21:00|16
   Timer:
     Hcs_1:
       HASH       HCS
       MODIFIER   1
       NAME       HCS_1
     Hcs_2:
       HASH       HCS
       MODIFIER   2
       NAME       HCS_2
     Hcs_settimerofday:
       HASH       HCS
       MODIFIER   SetTimerOfDay
       NAME       HCS_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         18:00:00   19
         21:00:00   16
       1:
         18:00:00   19
         21:00:00   16
       2:
         18:00:00   19
         21:00:00   16
       3:
         18:00:00   19
         21:00:00   16
       4:
         18:00:00   19
         21:00:00   16
       5:
         18:00:00   19
         21:00:00   16
       6:
         18:00:00   19
         21:00:00   16
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1430928000
       PARA       19
       TIME       18:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1430938800
       PARA       16
       TIME       21:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Schlafzimmer
   disable    0
   group      Heizplan
   room       Heizung
   verbose    5
   windowSensor Fenster_Schlafzimmer


EDIT: gerade nochmal einen Update gemacht. Die 98_Week... wurde upgedatet, also Neustart.
Wieder wurde Schlafzimmer geschalten, obwohl Fenster offen ist:

2015.05.06 18:03:39 3: CUL_HM set HZ_Schlafzimmer_Clima desired-temp 19.0
2015.05.06 18:03:39 4: [HCS] command: {my $days={};;map{$days->{$_}=1}();; if ( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days->{$wday} ||  $we || !$we)) { fhem('set HZ_Schlafzimmer_Clima desired-temp 19.0') }} executed
2015.05.06 18:03:39 4: [HCS] aktParam:8.0 newParam:19.0 - is  not disabled
2015.05.06 18:03:39 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.05.06 18:03:39 4: [HCS] next: 2015-05-06 21:00:00(mi) -->> 16
2015.05.06 18:03:39 4: [HCS] akt:  2015-05-06 18:00:00(mi) -->> 19
2015.05.06 18:03:39 5: [HCS] setting  Timer: HCS_2 06.05.2015  21:00:00
2015.05.06 18:03:39 4: [HCS]:setTimer - timer seems to be active today: 0123456|21:00|16
2015.05.06 18:03:39 4: [HCS] Heating recognized - switch in the past activated
2015.05.06 18:03:39 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp



EDIT 2: gerade die Version $Id: 98_Heating_Control.pm 6918 2014-11-08 16:47:09Z dietmar63 eingespielt und neu gestartet. Schalfzimmer Fenster wird erkannt und es wird nicht geschalten. im state steht waiting...

2015.05.06 18:14:18 5: [HCS] setting  Timer: HCS_Update 06.05.2015  18:15:18
2015.05.06 18:14:18 5: [HCS] removing Timer: HCS_Update
2015.05.06 18:14:18 3: [HCS] switch of HZ_Schlafzimmer_Clima delayed - sensor 'Fenster_Schlafzimmer' Reading/Attribute 'state' is 'open'
2015.05.06 18:14:18 5: [HCS] sensor 'Fenster_Schlafzimmer' Reading/Attribute 'state' is 'open'
2015.05.06 18:14:18 5: [HCS] list of senors found: 'Fenster_Schlafzimmer  HCS'


Damit kann ich jetzt etwas anfangen.
Es ist so, dass in der Startphase eines HC/WD mit dem rückwärtigem Schalten die Fensterkontakte nicht ausgewertet werden. Das werde ich ändern und dann freigeben.

Hast du Fensterkontakte außerhalb der Startphase ausprobiert?


Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 06 Mai 2015, 23:40:27
Zitat
Damit kann ich jetzt etwas anfangen.
Es ist so, dass in der Startphase eines HC/WD mit dem rückwärtigem Schalten die Fensterkontakte nicht ausgewertet werden. Das werde ich ändern und dann freigeben.

Hast du Fensterkontakte außerhalb der Startphase ausprobiert?

eingecheckt
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 11 Mai 2015, 09:05:14
Guten Morgen,

also das mit den Fenstern geht jetzt, allerdings habe ich noch ein Problem.

Folgendes Szenario:

HC ist so eingestellt, dass jeden Tag ab 12 Uhr auf 21.5 Grad gestellt wird und um 20 Uhr auf 16 Grad.
Jetzt ist es 16 Uhr und das Fenster wird geöffnet.
HC erkennt dies und speichert im Hintergrund die 21.5 Grad.
Jetzt wird das Fenster am nächsten Tag um 9 Uhr geschlossen.
Jetzt sollte eigentlich laut Zeitplan 16 Grad eingestellt werden, allerdings hat HC noch die 21.5 Grad gespeichert und stellt dies auch ein.

2015.05.11 09:00:01 3: CUL_HM set HZ_Leoni_Clima desired-temp 21.5
2015.05.11 09:00:00 3: [HCL] delay of switching HZ_Leoni_Clima stopped.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 15 Mai 2015, 13:59:58
Hallo Dietmar,

ich habe leider nach wie vor dieses Problem (gerade heute wieder beobachtet).
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 15 Mai 2015, 16:31:49
Mitch, welches Problem hast du noch?
Aus deiner Beschreibung kann ich nicht erkennen, welche Probleme noch offen sind.

LLösen kann ich sie nur, wenn du die genauen Definitionen lieferst und deine Beobachtung hinzugefügst
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 15 Mai 2015, 16:35:28
Naja, wie gesagt:

HC ist so eingestellt, dass jeden Tag ab 12 Uhr auf 21.5 Grad gestellt wird und um 20 Uhr auf 16 Grad.
Angenommen, jetzt ist es 16 Uhr und das Fenster wird geöffnet.
HC erkennt dies und speichert im Hintergrund die 21.5 Grad.
Jetzt wird das Fenster am nächsten Tag um 9 Uhr geschlossen.
Jetzt sollte eigentlich laut Zeitplan 16 Grad eingestellt werden, allerdings hat HC noch die 21.5 Grad gespeichert und stellt dies auch ein

Log:
2015.05.11 09:00:01 3: CUL_HM set HZ_Leoni_Clima desired-temp 21.5
2015.05.11 09:00:00 3: [HCL] delay of switching HZ_Leoni_Clima stopped.


List HC:
Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEF        HZ_Leoni_Clima 12345|12:00|21.5 06|09:30|21.5 20:30|16 (ReadingsVal("HCAutomatik", "state", "") eq "on")
   DEVICE     HZ_Leoni_Clima
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCL
   NR         722
   Profil 0: Sonntag 09:30:00 21.5, 20:30:00 16
   Profil 1: Montag 12:00:00 21.5, 20:30:00 16
   Profil 2: Dienstag 12:00:00 21.5, 20:30:00 16
   Profil 3: Mittwoch 12:00:00 21.5, 20:30:00 16
   Profil 4: Donnerstag 12:00:00 21.5, 20:30:00 16
   Profil 5: Freitag 12:00:00 21.5, 20:30:00 16
   Profil 6: Samstag 09:30:00 21.5, 20:30:00 16
   STATE      21.5
   TYPE       Heating_Control
   Readings:
     2015-05-15 13:50:58   nextUpdate      2015-05-15 20:30:00
     2015-05-15 13:50:58   nextValue       16
     2015-05-15 13:50:58   state           21.5
   SWITCHINGTIMES:
     12345|12:00|21.5
     06|09:30|21.5
     20:30|16
   Timer:
     Hcl_3:
       HASH       HCL
       MODIFIER   3
       NAME       HCL_3
     Hcl_settimerofday:
       HASH       HCL
       MODIFIER   SetTimerOfDay
       NAME       HCL_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:30:00   21.5
         20:30:00   16
       1:
         12:00:00   21.5
         20:30:00   16
       2:
         12:00:00   21.5
         20:30:00   16
       3:
         12:00:00   21.5
         20:30:00   16
       4:
         12:00:00   21.5
         20:30:00   16
       5:
         12:00:00   21.5
         20:30:00   16
       6:
         09:30:00   21.5
         20:30:00   16
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1431684000
       PARA       21.5
       TIME       12:00
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1431675000
       PARA       21.5
       TIME       09:30
       TAGE:
         0
         6
     3:
       EPOCH      1431714600
       PARA       16
       TIME       20:30
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Leoni
   group      Heizplan
   room       Heizung
   verbose    3
   windowSensor Fenster_Leoni
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 19 Mai 2015, 06:40:02
Guten Morgen,
ich verwende auch Heating_Control zur Steuerung all meiner MAX! Thermostate. Funktioniert soweit auch ganz gut, außer im Badezimmer. Dort habe ich 3 Thermostate zu einer structure zusammengeschaltet und möchte damit dann mit einem Heating_Control alle drei Thermostate steuern. Scheinbar ist das aber nicht möglich. Es kommt immer die Fehlermeldung "Invalid device OG_Bad_T"


define OG_Bad_T structure MAX OG_Bad_Klo_T OG_Bad_Waschb_T OG_Bad_Badew_T
attr OG_Bad_T room Badezimmer

define OG_Bad_Klo_T MAX HeatingThermostat 0784a4
attr OG_Bad_Klo_T userattr MAX MAX_map structexclude
attr OG_Bad_Klo_T IODev cm
attr OG_Bad_Klo_T MAX OG_Bad_T
attr OG_Bad_Klo_T group Heizung
attr OG_Bad_Klo_T icon temp_control
attr OG_Bad_Klo_T room Badezimmer,Heizung,MAX


OG_Bad_Waschb_T und OG_Bad_Badew_T sind entsprechend OG_Bad_Klo_T

define HC_Bad_Min Heating_Control OG_Bad_T mo-fr|05:15|22.5 mo-fr|07:15|15 $we|08:00|22 $we|19:00|15 (ReadingsVal("HC_Bad_Off_Profile", "state", "") eq "Minimal")


Mit dem Dummy HC_Bad_Off_Profile mache ich eine Profilumschaltung zwischen 4 Heating_Controls. Darum ist auch der Wunsch, dass ich die structure mit Heating_Control steuern kann. Ansonsten hab ich nämlich 4 Profile je Thermostat = 12 Profile für einen Raum.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 19 Mai 2015, 14:44:32
Ich prüfe nachher was die Ursache sein könnte.

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 19 Mai 2015, 16:56:36
Zitat von: persching am 19 Mai 2015, 06:40:02
Guten Morgen,
ich verwende auch Heating_Control zur Steuerung all meiner MAX! Thermostate. Funktioniert soweit auch ganz gut, außer im Badezimmer. Dort habe ich 3 Thermostate zu einer structure zusammengeschaltet und möchte damit dann mit einem Heating_Control alle drei Thermostate steuern. Scheinbar ist das aber nicht möglich. Es kommt immer die Fehlermeldung "Invalid device OG_Bad_T"


define OG_Bad_T structure MAX OG_Bad_Klo_T OG_Bad_Waschb_T OG_Bad_Badew_T
attr OG_Bad_T room Badezimmer

define OG_Bad_Klo_T MAX HeatingThermostat 0784a4
attr OG_Bad_Klo_T userattr MAX MAX_map structexclude
attr OG_Bad_Klo_T IODev cm
attr OG_Bad_Klo_T MAX OG_Bad_T
attr OG_Bad_Klo_T group Heizung
attr OG_Bad_Klo_T icon temp_control
attr OG_Bad_Klo_T room Badezimmer,Heizung,MAX


OG_Bad_Waschb_T und OG_Bad_Badew_T sind entsprechend OG_Bad_Klo_T

define HC_Bad_Min Heating_Control OG_Bad_T mo-fr|05:15|22.5 mo-fr|07:15|15 $we|08:00|22 $we|19:00|15 (ReadingsVal("HC_Bad_Off_Profile", "state", "") eq "Minimal")


Mit dem Dummy HC_Bad_Off_Profile mache ich eine Profilumschaltung zwischen 4 Heating_Controls. Darum ist auch der Wunsch, dass ich die structure mit Heating_Control steuern kann. Ansonsten hab ich nämlich 4 Profile je Thermostat = 12 Profile für einen Raum.

Kannst du bitte einmal die Originalfehlermeldung aus dem Log posten.
Vorher bitte verbose 5 setzen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 19 Mai 2015, 17:22:42
Ich hab jetzt folgendes gemacht:
Die Uhrzeit hab ich auf 17:07 gestellt, damit ein Ereignis provoziert wird. Als desiredTemperature hab ich 20 Grad eingestellt, 15 Grad war die aktuelle Temperatur. Um 17.08 Uhr hab ich dann zum Raum "Badezimmer" gewechselt und dort gesehen, dass in der Übersicht immer noch 15 Grad eingestellt sind. Also hab ich dann nochmal explizit einen Thermostat angeklickt und dort auf desiredTemperature geguckt.

2015.05.19 17:07:00 5: [HC_Bad_Min] list of window sensors found: 'HC_Bad_Min'
2015.05.19 17:07:00 5: Cmd: >{my $days={};map{$days->{$_}=1}(0,1,2,3,4,5,6);;( (ReadingsVal("HC_Bad_Off_Profile", "state", "") eq "Minimal") && (defined $days->{$wday}))}<
2015.05.19 17:07:00 4: [HC_Bad_Min]:Update   - timer seems to be active today: 0123456|17:07|20
2015.05.19 17:07:00 4: [HC_Bad_Min] device type structure: recognized, setModifier:
2015.05.19 17:07:00 5: Cmd: >{my $days={};map{$days->{$_}=1}(0,1,2,3,4,5,6);;( (ReadingsVal("HC_Bad_Off_Profile", "state", "") eq "Minimal") && (defined $days->{$wday}))}<
2015.05.19 17:07:00 4: [HC_Bad_Min] aktParam: newParam:20 - is  not disabled
2015.05.19 17:07:00 4: [HC_Bad_Min] command: set OG_Bad_T  20 executed
2015.05.19 17:07:00 5: Cmd: >set OG_Bad_T  20<
2015.05.19 17:07:00 5: SET: Unknown argument 20, choose one of wakeUp factoryReset groupid associate:EG_WoZi_T,OG_Bad_Klo_T,EG_Bad_Fensterkontakt,OG_KiZi_Lara_T,OG_KiZi_Lara_Fensterkontakt,EG_WoZi_Fensterkontakt,EG_Bad_T,OG_KiZi_Lara_DF_Fensterkontakt,OG_Bad_Waschb_T,EG_Kueche_T,OG_Schlafz_Fensterkontakt,OG_KiZi_Lena_T,Umwaelzpumpe,OG_Schlafz_T,OG_KiZi_Lena_Fensterkontakt,OG_Bad_Fensterkontakt,fakeWallThermostat,fakeShutterContact deassociate:EG_WoZi_T,OG_Bad_Klo_T,EG_Bad_Fensterkontakt,OG_KiZi_Lara_T,OG_KiZi_Lara_Fensterkontakt,EG_WoZi_Fensterkontakt,EG_Bad_T,OG_KiZi_Lara_DF_Fensterkontakt,OG_Bad_Waschb_T,EG_Kueche_T,OG_Schlafz_Fensterkontakt,OG_KiZi_Lena_T,Umwaelzpumpe,OG_Schlafz_T,OG_KiZi_Lena_Fensterkontakt,OG_Bad_Fensterkontakt,fakeWallThermostat,fakeShutterContact desiredTemperature:eco,comfort,boost,auto,off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on ecoTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on comfortTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on measurementOffset:-3.5,-3.0,-2.5,-2.0,-1.5,-1.0,-0.5,0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5 maximumTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on minimumTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on windowOpenTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on windowOpenDuration boostDuration:15,20,5,60,25,0,10,30 boostValveposition decalcification maxValveSetting valveOffset weekProfile
Unknown argument 20, choose one of wakeUp factoryReset groupid associate:EG_WoZi_T,OG_Bad_Badew_T,EG_Bad_Fensterkontakt,OG_KiZi_Lara_T,OG_KiZi_Lara_Fensterkontakt,EG_WoZi_Fensterkontakt,EG_Bad_T,OG_KiZi_Lara_DF_Fensterkontakt,OG_Bad_Waschb_T,EG_Kueche_T,OG_Schlafz_Fensterkontakt,OG_KiZi_Lena_T,Umwaelzpumpe,OG_Schlafz_T,OG_KiZi_Lena_Fensterkontakt,OG_Bad_Fensterkontakt,fakeWallThermostat,fakeShutterContact deassociate:EG_WoZi_T,OG_Bad_Badew_T,EG_Bad_Fensterkontakt,OG_KiZi_Lara_T,OG_KiZi_Lara_Fensterkontakt,EG_WoZi_Fensterkontakt,EG_Bad_T,OG_KiZi_Lara_DF_Fensterkontakt,OG_Bad_Waschb_T,EG_Kueche_T,OG_Schlafz_Fensterkontakt,OG_KiZi_Lena_T,Umwaelzpumpe,OG_Schlafz_T,OG_KiZi_Lena_Fensterkontakt,OG_Bad_Fensterkontakt,fakeWallThermostat,fakeShutterContact desiredTemperature:eco,comfort,boost,auto,off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on ecoTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on comfortTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on measurementOffset:-3.5,-3.0,-2.5,-2.0,-1.5,-1.0,-0.5,0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5 maximumTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on minimumTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on windowOpenTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on windowOpenDuration boostDuration:15,20,5,60,25,0,10,30 boostValveposition decalcification maxValveSetting valveOffset weekProfile
Unknown argument 20, choose one of wakeUp factoryReset groupid associate:EG_WoZi_T,OG_Bad_Klo_T,OG_Bad_Badew_T,EG_Bad_Fensterkontakt,OG_KiZi_Lara_T,OG_KiZi_Lara_Fensterkontakt,EG_WoZi_Fensterkontakt,EG_Bad_T,OG_KiZi_Lara_DF_Fensterkontakt,EG_Kueche_T,OG_Schlafz_Fensterkontakt,OG_KiZi_Lena_T,Umwaelzpumpe,OG_Schlafz_T,OG_KiZi_Lena_Fensterkontakt,OG_Bad_Fensterkontakt,fakeWallThermostat,fakeShutterContact deassociate:EG_WoZi_T,OG_Bad_Klo_T,OG_Bad_Badew_T,EG_Bad_Fensterkontakt,OG_KiZi_Lara_T,OG_KiZi_Lara_Fensterkontakt,EG_WoZi_Fensterkontakt,EG_Bad_T,OG_KiZi_Lara_DF_Fensterkontakt,EG_Kueche_T,OG_Schlafz_Fensterkontakt,OG_KiZi_Lena_T,Umwaelzpumpe,OG_Schlafz_T,OG_KiZi_Lena_Fensterkontakt,OG_Bad_Fensterkontakt,fakeWallThermostat,fakeShutterContact desiredTemperature:eco,comfort,boost,auto,off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on ecoTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on comfortTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on measurementOffset:-3.5,-3.0,-2.5,-2.0,-1.5,-1.0,-0.5,0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5 maximumTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on minimumTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on windowOpenTemperature:off,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0,on windowOpenDuration boostDuration:15,20,5,60,25,0,10,30 boostValveposition decalcification maxValveSetting valveOffset weekProfile
2015.05.19 17:07:00 5: Triggering OG_Bad_T (1 changes)
2015.05.19 17:07:00 5: Notify loop for OG_Bad_T 20
2015.05.19 17:07:00 5: battStatus: not on any display, ignoring notify
2015.05.19 17:07:00 5: valvStatus: not on any display, ignoring notify
2015.05.19 17:07:00 4: [HC_Bad_Min] akt:  2015-05-19 17:07:00(di) -->> 20
2015.05.19 17:07:00 4: [HC_Bad_Min] next: 2015-05-20 05:15:00(mi) -->> 22.5
2015.05.19 17:07:00 5: Triggering HC_Bad_Min (3 changes)
2015.05.19 17:07:00 5: Notify loop for HC_Bad_Min nextUpdate: 2015-05-20 05:15:00
2015.05.19 17:07:00 5: battStatus: not on any display, ignoring notify
2015.05.19 17:07:17 4: Closing inactive connection FHEMWEB:192.168.2.25:52937
2015.05.19 17:07:17 4: Closing inactive connection FHEMWEB:192.168.2.25:52941
2015.05.19 17:07:17 4: Closing inactive connection FHEMWEB:192.168.2.25:52933
2015.05.19 17:07:17 4: Closing inactive connection FHEMWEB:192.168.2.25:52935
2015.05.19 17:07:17 4: Closing inactive connection FHEMWEB:192.168.2.25:52936
2015.05.19 17:07:29 4: Connection accepted from FHEMWEB:192.168.2.25:52953
2015.05.19 17:07:29 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/FileLog_logWrapper?dev=Logfile&type=text&file=fhem-2015-05.log
2015.05.19 17:07:34 4: Connection closed for FHEMWEB:192.168.2.25:52943: Connection reset by peer
2015.05.19 17:07:34 4: Connection accepted from FHEMWEB:192.168.2.25:52955
2015.05.19 17:07:34 4: Connection accepted from FHEMWEB:192.168.2.25:52956
2015.05.19 17:07:34 4: Connection accepted from FHEMWEB:192.168.2.25:52957
2015.05.19 17:07:34 4: Connection accepted from FHEMWEB:192.168.2.25:52958
2015.05.19 17:07:34 4: Connection accepted from FHEMWEB:192.168.2.25:52959
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/pgm2/style.css
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/jquery-ui.min.css
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52956 GET /fhem/pgm2/jquery.min.js
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52959 GET /fhem/pgm2/fhemweb_knob.js
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/fhemweb_readingsGroup.js
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52959 GET /fhem/pgm2/fhemweb_sortable.js
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/fhemweb_uzsu.js
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem/pgm2/jquery-ui.min.js
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52958 GET /fhem/pgm2/fhemweb_colorpicker.js
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/images/default/icoEverything.png
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/darkCommon.css
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/dashboard_darkstyle.css
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52956 GET /fhem/pgm2/fhemweb_readingsHistory.js
2015.05.19 17:07:34 4: HTTP FHEMWEB:192.168.2.25:52956 GET /fhem/images/default/fhemicon_dark.png
2015.05.19 17:07:38 4: HTTP FHEMWEB:192.168.2.25:52956 GET /fhem/FileLog_logWrapper?XHR=1&inform=type=status;filter=;since=1432048048;fmt=JSON×tamp=1432048060495
2015.05.19 17:08:18 5: CUL/RAW: /Z0B2D00021234560C22AB000000
Z0B2D06300C22AB1234560010ED

2015.05.19 17:08:18 4: CUL_Parse: CUL_0 Z0B2D00021234560C22AB000000 -74
2015.05.19 17:08:18 5: CUL_0 dispatch Z0B2D00021234560C22AB0000
2015.05.19 17:08:18 5: CUL_MAX_Parse: len 11, msgcnt 2D, msgflag 00, msgTypeRaw Ack, src 123456, dst 0c22ab, groupid 0, payload 00
2015.05.19 17:08:18 4: CUL_Parse: CUL_0 Z0B2D06300C22AB1234560010ED -83.5
2015.05.19 17:08:18 5: CUL_0 dispatch Z0B2D06300C22AB1234560010
2015.05.19 17:08:18 5: CUL_MAX_Parse: len 11, msgcnt 2D, msgflag 06, msgTypeRaw ShutterContactState, src 0c22ab, dst 123456, groupid 0, payload 10
2015.05.19 17:08:18 5: CUL_MAX_Parse: rssi: -83.5
2015.05.19 17:08:18 5: cm dispatch MAX,1,ShutterContactState,0c22ab,10
2015.05.19 17:08:18 5: MAX_Parse MAX,1,ShutterContactState,0c22ab,10
2015.05.19 17:08:18 5: ShutterContact isopen 0, rferror 0, battery 0, unkbits 0
2015.05.19 17:08:18 5: Triggering OG_KiZi_Lara_Fensterkontakt (3 changes)
2015.05.19 17:08:18 5: Notify loop for OG_KiZi_Lara_Fensterkontakt battery: ok
2015.05.19 17:08:18 5: HourCounter OG_KiZi_Lara_Fensterkontakt_HC Run.577 value:0 changedTimestamp:2015-05-19 17:01:57
2015.05.19 17:08:18 5: Triggering OG_KiZi_Lara_Fensterkontakt_HC (13 changes)
2015.05.19 17:08:18 5: Notify loop for OG_KiZi_Lara_Fensterkontakt_HC countsPerDay: 0
2015.05.19 17:08:18 5: Laufzeitvisu: not on any display, ignoring notify
2015.05.19 17:08:18 5: battStatus: not on any display, ignoring notify
2015.05.19 17:08:18 4: HourCounter OG_KiZi_Lara_Fensterkontakt_HC ExecQueue.130 cnt: -1
2015.05.19 17:08:18 5: HourCounter OG_KiZi_Lara_Fensterkontakt_HC Run.801 nextCall:3102 changedTimestamp:2015-05-19 17:08:18
2015.05.19 17:08:18 5: battStatus: not on any display, ignoring notify
2015.05.19 17:08:19 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem?room=Badezimmer
2015.05.19 17:08:19 4: 26343:FHEMWEB:192.168.2.25:52955: /fhem?room=Badezimmer / RL:8850 / text/html; charset=UTF-8 / Content-Encoding: gzip
/
2015.05.19 17:08:20 4: Connection closed for FHEMWEB:192.168.2.25:52956: Connection reset by peer
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/style.css
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem/pgm2/jquery.min.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52959 GET /fhem/pgm2/jquery-ui.min.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52958 GET /fhem/pgm2/jquery-ui.min.css
2015.05.19 17:08:21 4: Connection accepted from FHEMWEB:192.168.2.25:52964
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/pgm2/fhemweb_colorpicker.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem/pgm2/fhemweb_readingsGroup.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/pgm2/fhemweb_knob.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/fhemweb_readingsHistory.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52959 GET /fhem/pgm2/fhemweb_sortable.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem/pgm2/fhemweb_uzsu.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/pgm2/svg.js
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem/images/default/Shutdown.png
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/images/default/Zoom-in.png
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52959 GET /fhem/images/default/Zoom-out.png
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/images/default/icoEverything.png
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/images/default/Prev.png
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/pgm2/darkCommon.css
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/pgm2/dashboard_darkstyle.css
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/images/default/fhemicon_dark.png
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/SVG_showLog?dev=OG_Bad_Waschb_T_weblink&logdev=FileLog_OG_Bad_Waschb_T&gplotfile=max_temp&logfile=CURRENT&pos=
2015.05.19 17:08:21 5: plotcommand: get FileLog_OG_Bad_Waschb_T CURRENT INT 2015-05-19_00:00:00 2015-05-20_00:00:01  4:desiredTemperature:0: 4:temperature:0: 4:valveposition:0:
2015.05.19 17:08:21 5: Cmd: >get FileLog_OG_Bad_Waschb_T CURRENT INT 2015-05-19_00:00:00 2015-05-20_00:00:01 4:desiredTemperature:0: 4:temperature:0: 4:valveposition:0:<
2015.05.19 17:08:21 4: FileLog_OG_Bad_Waschb_T get: Input file /usr/local/FHEM/var/log/OG_Bad_Waschb_T-2015.log, from:2015-05-19_00:00:00  to:2015-05-20_00:00:01
2015.05.19 17:08:21 4: FileLog_OG_Bad_Waschb_T get: line 1, regexp:desiredTemperature, col:3, output lines:13
2015.05.19 17:08:21 4: FileLog_OG_Bad_Waschb_T get: line 2, regexp:temperature, col:3, output lines:6
2015.05.19 17:08:21 4: FileLog_OG_Bad_Waschb_T get: line 3, regexp:valveposition, col:3, output lines:11
2015.05.19 17:08:21 5: Cmd: >{ "OG_Bad_Waschb_T-2015.log" }<
2015.05.19 17:08:21 5: Cmd: >{ "Waschbecken Soll-Temperatur Min $data{min1}, Max $data{max1}, Last $data{currval1}" }<
2015.05.19 17:08:21 4: 26343:FHEMWEB:192.168.2.25:52953: /fhem/SVG_showLog?dev=OG_Bad_Waschb_T_weblink&logdev=FileLog_OG_Bad_Waschb_T&gplotfile=max_temp&logfile=CURRENT&pos= / RL:2430 / image/svg+xml / Content-Encoding: gzip
/
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/SVG_showLog?dev=wl_Wetter_Temp&logdev=FileLog_Wetter&gplotfile=myYahooWeather&logfile=CURRENT&pos=
2015.05.19 17:08:21 5: plotcommand: get FileLog_Wetter CURRENT INT 2015-05-19_00:00:00 2015-05-20_00:00:01  4:temperature\x3a:: 4:wind_chill\x3a:: 4:humidity\x3a::
2015.05.19 17:08:21 5: Cmd: >get FileLog_Wetter CURRENT INT 2015-05-19_00:00:00 2015-05-20_00:00:01 4:temperature\x3a:: 4:wind_chill\x3a:: 4:humidity\x3a::<
2015.05.19 17:08:21 4: FileLog_Wetter get: Input file /usr/local/FHEM/var/log/Wetter-2015.log, from:2015-05-19_00:00:00  to:2015-05-20_00:00:01
2015.05.19 17:08:21 4: FileLog_Wetter get: line 1, regexp:temperature\x3a, col:3, output lines:103
2015.05.19 17:08:21 4: FileLog_Wetter get: line 2, regexp:wind_chill\x3a, col:3, output lines:103
2015.05.19 17:08:21 4: FileLog_Wetter get: line 3, regexp:humidity\x3a, col:3, output lines:103
2015.05.19 17:08:21 5: Cmd: >{ "Wetter-2015.log" }<
2015.05.19 17:08:21 4: 26343:FHEMWEB:192.168.2.25:52955: /fhem/SVG_showLog?dev=wl_Wetter_Temp&logdev=FileLog_Wetter&gplotfile=myYahooWeather&logfile=CURRENT&pos= / RL:2837 / image/svg+xml / Content-Encoding: gzip
/
2015.05.19 17:08:21 4: HTTP FHEMWEB:192.168.2.25:52959 GET /fhem?XHR=1&inform=type=status;filter=room=Badezimmer;since=1432048098;fmt=JSON×tamp=1432048103196
2015.05.19 17:08:33 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem?detail=OG_Bad_Waschb_T
2015.05.19 17:08:33 4: 26343:FHEMWEB:192.168.2.25:52955: /fhem?detail=OG_Bad_Waschb_T / RL:3637 / text/html; charset=UTF-8 / Content-Encoding: gzip
/
2015.05.19 17:08:35 4: Connection closed for FHEMWEB:192.168.2.25:52959: Connection reset by peer
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/style.css
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/pgm2/jquery-ui.min.css
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/pgm2/jquery.min.js
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem/pgm2/jquery-ui.min.js
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52958 GET /fhem/pgm2/fhemweb_colorpicker.js
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/pgm2/fhemweb_knob.js
2015.05.19 17:08:36 4: Connection accepted from FHEMWEB:192.168.2.25:52966
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52955 GET /fhem/pgm2/fhemweb_readingsGroup.js
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52953 GET /fhem/pgm2/fhemweb_readingsHistory.js
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52966 GET /fhem/pgm2/fhemweb_uzsu.js
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem/pgm2/fhemweb_sortable.js
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/images/default/icoEverything.png
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/pgm2/darkCommon.css
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/pgm2/dashboard_darkstyle.css
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem/images/default/fhemicon_dark.png
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem?cmd={ReadingsVal(%22OG_Bad_Waschb_T%22,%22associate%22,%22%22)}&XHR=1
2015.05.19 17:08:36 5: Cmd: >{ReadingsVal("OG_Bad_Waschb_T","associate","")}<
2015.05.19 17:08:36 4: 26343:FHEMWEB:192.168.2.25:52964: /fhem?cmd={ReadingsVal(%22OG_Bad_Waschb_T%22,%22associate%22,%22%22)}&XHR=1 / RL:21 / text/plain; charset=UTF-8 / Content-Encoding: gzip
/
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem?cmd={AttrVal(%22OG_Bad_Waschb_T%22,%22room%22,%22%22)}&XHR=1
2015.05.19 17:08:36 5: Cmd: >{AttrVal("OG_Bad_Waschb_T","room","")}<
2015.05.19 17:08:36 4: 26343:FHEMWEB:192.168.2.25:52957: /fhem?cmd={AttrVal(%22OG_Bad_Waschb_T%22,%22room%22,%22%22)}&XHR=1 / RL:43 / text/plain; charset=UTF-8 / Content-Encoding: gzip
/
2015.05.19 17:08:36 4: HTTP FHEMWEB:192.168.2.25:52964 GET /fhem?XHR=1&inform=type=status;filter=OG_Bad_Waschb_T;since=1432048112;fmt=JSON×tamp=1432048118119
2015.05.19 17:08:42 4: Connection closed for FHEMWEB:192.168.2.25:52964: Connection reset by peer
2015.05.19 17:08:42 4: HTTP FHEMWEB:192.168.2.25:52957 GET /fhem?XHR=1&inform=type=status;filter=room=Badezimmer;since=1432048098;fmt=JSON×tamp=1432048124286
2015.05.19 17:08:47 4: HTTP FHEMWEB:192.168.2.25:52966 GET /fhem/FileLog_logWrapper?dev=Logfile&type=text&file=fhem-2015-05.log


Zwar kommt jetzt kein "Invalid device" mehr, aber ich hab heute auch ein bisschen rumprobiert und hab die Thermostate mit Komma getrennt aufgeführt bzw. mit | oder auch einmal mit "and"... hat alles nichts gebracht.

Da ist aber z.B. eine Fundstelle im Log, die ich meinte... Aber leider halt mit verbose=3.

2015.05.17 10:14:08 3: [HC_Bad_Normal] invalid device, <OG_Bad_T> not found
2015.05.17 10:14:08 3: [HC_Bad_KeinArbeitstag] invalid device, <OG_Bad_T> not found
2015.05.17 10:14:08 3: [HC_Bad_Off] invalid device, <OG_Bad_T> not found
2015.05.17 10:14:08 3: [HC_Bad_Min] invalid device, <OG_Bad_T> not found
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 19 Mai 2015, 19:24:25
Ich denke  dein Problem ist lösbar!

2015.05.17 10:14:08 3: [HC_Bad_Normal] invalid device, <OG_Bad_T> not found
kommt immer dann wenn das benannte Gerät in fhem noch nicht bekannt ist. Ursache: Reihenfolgenproblem in der Definitionsdatei.
Ist aber nicht weiter schlimm, weil es sich nur um einen Hinweis handelt.

Das Problem entsteht durch folgenden Code, der von structure an die MAX Thermostate  weitergegeben, aber nicht verstanden werden:
2015.05.19 17:07:00 5: Cmd: >set OG_Bad_T  20<

Structures werden von HC nicht direkt als Heizungen erkannt - wie auch.
Du must HC helfen den richtigen Befehl zu generieren:
Versuch bitte mal:
define HC_Bad_Min Heating_Control OG_Bad_T mo-fr|05:15|22.5 mo-fr|07:15|15 $we|08:00|22 $we|19:00|15 { fhem("set @ desiredTemperature %") if (ReadingsVal("HC_Bad_Off_Profile", "state", "") eq "Minimal")}

Dann wird
set OG_Bad_T desiredTemperature  20
als Code erzeugt und verarbeitet. Das sollte dann jeweils an die MAX-Thermostate weitergereicht und verstanden werden.

Du musst übrigens nicht komplett durchstarten und verbose global setzen. Es reicht wenn du verbose auf einzelne devices setzt. Es ist auch möglich in den details das HC einfach neu zu definieren, dann wird ebenfalls geschaltet .
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 19 Mai 2015, 20:06:39
Jetzt funktioniert es. Da wäre ich als Neuling nie drauf gekommen. Wäre das nicht was fürs Wiki?

Danke!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 19 Mai 2015, 21:37:41
in den Beispielen in der commandref steht das eigentlich so drin.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 21 Mai 2015, 17:09:03
Und wie wäre der Code wenn ich zwei ReadingsVal Und-Verknüpfen will? Hab folgendes versucht, aber das klappt nicht:

define HC_Bad_KeinArbeitstag Heating_Control OG_Bad_T mo-so|07:45|22 mo-so|19:00|20 { fhem("set @ desiredTemperature %") if ((ReadingsVal("HCWeekprofile", "state", "") eq "off") and (ReadingsVal("HC_Bad_Off_Profile", "state", "") eq "Auto"))}

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 21 Mai 2015, 18:13:02
and durch && ersetzen
Wenn es zu kompliziert wird es in einer Zeile auszudrücken, dann eine Funktion in 99_utils aufnehmen und von HC aufrufen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 22 Mai 2015, 16:05:48
Ich schon wieder :(

Ich hab bei einem Heating_Control einen Fensterkontakt eingefügt und einen Schaltpunkt provoziert. Dabei wird erkannt, dass das Fenster offen ist, aber trotzdem wird die Temperatur wieder hoch gesetzt - das kann doch nicht sein, oder?

Logfile sagt folgendes:

2015.05.22 15:37:00 5: [HC_Gaesteklo_Min] list of window sensors found: 'EG_Bad_Fensterkontakt HC_Gaesteklo_Min' 2015.05.22 15:37:00 5: [HC_Gaesteklo_Min] sensor 'EG_Bad_Fensterkontakt' Reading/Attribute 'state' is 'opened' 2015.05.22 15:37:00 4: [HC_Gaesteklo_Min]:Update - timer seems to be active today: 0123456|15:37|20 2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] device type MAX:HeatingThermostat recognized, setModifier:desiredTemperature 2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] aktParam:12.0 newParam:20.0 - is not disabled 2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] command: set EG_Bad_T desiredTemperature 20.0 executed 2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] akt: 2015-05-22 15:37:00(fr) -->> 20 2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] next: 2015-05-23 08:00:00(sa) -->> 18
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Mai 2015, 19:49:07
Das liegt wahrscheinlich daran, dass dein Fensterkontakttyp nicht automatisch erkannt wird.
Siehe Anhang!!!

Je nach Typ findet das Modul im state oder sonstwo einen Text, der einen bestimmten Inhalt haben muss.
Mit dem state opened ist mir kein Fensterkontakt bekannt.


2015.05.22 15:37:00 5: [HC_Gaesteklo_Min] list of window sensors found: 'EG_Bad_Fensterkontakt HC_Gaesteklo_Min'
2015.05.22 15:37:00 5: [HC_Gaesteklo_Min] sensor 'EG_Bad_Fensterkontakt' Reading/Attribute 'state' is 'opened'
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min]:Update - timer seems to be active today: 0123456|15:37|20
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] device type MAX:HeatingThermostat recognized, setModifier:desiredTemperature
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] aktParam:12.0 newParam:20.0 - is not disabled
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] command: set EG_Bad_T desiredTemperature 20.0 executed
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] akt:
2015-05-22 15:37:00(fr) -->> 20
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] next:
2015-05-23 08:00:00(sa) -->> 18


Um was handelt es sich bei EG_Bad_Fensterkontakt denn?
Es kann natürlich auch noch sein, dass nach der großen Umstellung vor Ostern  das eine oder andere nicht vollständig funktioniert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 22 Mai 2015, 19:58:44
Das sind die MAX Fensterkontakte.

Hier die Internals:

DEF  ShutterContact 024d71

IODev  cm

LASTInputDev cm

MSGCNT 56

NAME EG_Bad_Fensterkontakt

NR 51

RSSI -49

STATE closed

TYPE MAX

addr 024d71

backend cm

cm_MSGCNT 56

cm_TIME 2015-05-22 19:32:03

rferror 0

type ShutterContact

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Mai 2015, 20:16:09
Kannst du dir beim posten bitte Mühe geben und Code, Auszüge aus Logs und Readings mit den Formatierern bearbeiten.
Für sämtliche ehrenamtliche Entwicker hier ist es dann einfacher die Probleme zu erfassen und noch schneller zu helfen.

Ich nehme mal den Zustand opened für Fensterkontakte von MAX auf und gebe das Modul frei, wenn sonst nichts gegen die Freigabe spricht.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 22 Mai 2015, 20:19:09
Ja ich werde mir mehr Mühe geben. Ich antworte derzeit meist mit dem Handy und Tapatalk, da gibt es keine Buttons für "Code" etc. Aber ich weiß, die kann man auch manuell einfügen, sorry!

Die Zustände sind "opened" und "closed".
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Mai 2015, 20:21:29
habe es geändert - prüf bitte ob es funktkioniert.
Ich habe kein MAX und kann das auch nicht wirklich testen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 23 Mai 2015, 17:40:39
Funktioniert perfekt! Vielen Dank für deine Unterstützung!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hollo am 25 Mai 2015, 10:18:20
Heute (Pfingstmontag) ist mal wieder Wochentag und Feiertag gleichzeitig.
Freundlicherweise ging mein Musikwecker daher um 05:45 Uhr an (Einstellung für Montag) und quasi nochmal um 08:00 Uhr (Einstellung für Wochenende/Feiertag).  :(

Da ich hier http://forum.fhem.de/index.php/topic,10011.msg283580.html#msg283580 (http://forum.fhem.de/index.php/topic,10011.msg283580.html#msg283580) bisher keine Antwort bekommen habe, gehe ich nun davon aus, dass man (zumindest ohne zusätzliche Abfragen) nur entweder mit den Wochentagen oder $we / !$we arbeiten kann!?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 Mai 2015, 23:01:06
Zitat
Zurück zur Frage...
- wird nun an einem Samstag, der ja gleichzeitig auch WE ist, um 7:30 oder um 8:00 Uhr geschaltet?
- wird an einem Feiertag-Montag, wie jetzt Ostermontag gewesen wäre, um 5:45 oder um 8:00 Uhr geschaltet?
- wie müsste ich es korrekt definieren, um "nur" einen Feiertag wie einen Sonntag zu behandeln?

Bitte keine Antwort "warte es doch ab und lass Dich überraschen"; es geht um das Verständnis und die richtige Konfiguration.  :-[

Gruß,
Hollo

Zitat
Bitte keine Antwort "warte es doch ab und lass Dich überraschen"; es geht um das Verständnis und die richtige Konfiguration.  :-[

Bitte keine Antwort heißt ... keine Antwort


Bei den Angaben zum Tag handelt es sich immer im logische Oder - Verknüpfungen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hollo am 26 Mai 2015, 08:39:45
Zitat von: Dietmar63 am 25 Mai 2015, 23:01:06
Bitte keine Antwort heißt ... keine Antwort
Bitte keine Antwort "warte es doch ab und lass Dich überraschen" heisst... ich hätte gern einen konkreten Tipp/Hinweis gehabt.   ;)

ZitatBei den Angaben zum Tag handelt es sich immer im logische Oder - Verknüpfungen.
Aha. Dementsprechend wird die "Bedingung" natürlich sowohl um 05:45 für Montag als auch um 08:00 für den Feiertag wahr.
Dann muss ich halt innerhalb der Woche immer zur selben Zeit starten, oder eine zusätzliche Abfrage auf $we einbauen, um die Doppelung zu filtern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tekki am 24 September 2015, 20:29:57
Hallo,

ich habe folgendes Problem. Ich möchte HeatingCOntrol deaktivieren, da ich es derzeit noch nicht benötige. Ich habe es mit set HC disable deaktiviert. In den Readings wird es auch so angezeigt. Im state bleibt jedoch immer die in den Zeiten angegebene Temperatur stehen (z.B state 5). Zu den angegebenen Schaltpunkten ändert sich dann gemäß der Definition die Temperatur. Dies führt teilweise dazu das die Heizung anspringt was ich nicht möchte.

Falls jemand einen Hinweis hat, wäre ich dankbar.


Danke
Ralph
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 September 2015, 21:20:55
Setze mal verbose 5 zu dem HC und poste dann den Inhalt des Logs.
Welche Version von HC verwendest du? 
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tekki am 25 September 2015, 16:10:33
Hallo,

anbei die Version die ich nutze.
98_Heating_Control.pm 8517 2015-05-02 20:07:15Z dietmar63

Nachdem ich das verbose 5 gesetzt habe, habe noch einmal ein set disable abgesendet. Anbei der Eintrag im Log
[HC_Gae] set HC_Gae disable


Grüße
Ralph


Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 September 2015, 16:37:14
Das ist ein wenig dünn.

wenn du verbose eingeschaltet hast, muss zu jedem definierten Schlatzeitpunkt folgendes geloggt werden.
Das Protokoll wird schon ein wenig umfangreicher sein:

2015.05.22 15:37:00 5: [HC_Gaesteklo_Min] list of window sensors found: 'EG_Bad_Fensterkontakt HC_Gaesteklo_Min'
2015.05.22 15:37:00 5: [HC_Gaesteklo_Min] sensor 'EG_Bad_Fensterkontakt' Reading/Attribute 'state' is 'opened'
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min]:Update - timer seems to be active today: 0123456|15:37|20
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] device type MAX:HeatingThermostat recognized, setModifier:desiredTemperature
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] aktParam:12.0 newParam:20.0 - is not disabled
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] command: set EG_Bad_T desiredTemperature 20.0 executed
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] akt:


wie sieht denn deine Defintion von [HC_Gae] aus?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tekki am 25 September 2015, 20:09:42
Hallo Dietmar,

ich habe nun einen Schaltpunkt abgewartet.
Anbei nun der Auszug aus dem Logfile:

2015.09.25 20:00:00 5: [HC_Gae] list of window sensors found: 'HC_Gae'
2015.09.25 20:00:00 4: [HC_Gae] Update   - timer seems to be active today: 0123456|20:00|5
2015.09.25 20:00:00 4: [HC_Gae] akt:  2015-09-25 20:00:00(fr) -->> 5
2015.09.25 20:00:00 4: [HC_Gae] next: 2015-09-26 10:00:00(sa) -->> 19
2015.09.25 20:00:00 4: [HC_Gae] device type THRESHOLD: recognized, setModifier:
2015.09.25 20:00:00 4: [HC_Gae] aktParam: newParam:5 - is   disabled

Hier noch die DEF
DEF        TH_Gae 0123456|10:00|19 0123456|20:00|5 set @ desired %

Ergänzend noch die DEF von TH_Gae
DEF        TF_Gaeste:temperature:0.5 OR TH_aussen:state:off HZ_G_Fe_li|set @ desiredTemperature off|set @ desiredTemperature on


Grüße
Ralph

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 September 2015, 21:29:57
...
und damit wird dem Gerät [HC_Gae] kein Schaltbefehl gesendet, sonst wäre so etwas im log aufgetaucht:
2015.05.22 15:37:00 4: [HC_Gaesteklo_Min] command: set EG_Bad_T desired 5.0 executed

handelt es sich nachfolgend auch um ein HC?

Ergänzend noch die DEF von TH_Gae
DEF        TF_Gaeste:temperature:0.5 OR TH_aussen:state:off HZ_G_Fe_li|set @ desiredTemperature off|set @ desiredTemperature on
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tekki am 25 September 2015, 21:48:58
Nein TH_Gae ist ein THRESHOLD.
Die beiden hängen aber voneinander ab. Ich schalte damit die Heizung bei einer Außentemperatur von unter 15° und einer Unterschreitung der durch HC vorgegebenen Temp.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 September 2015, 00:11:25
Dann war vermutlich um 15:37 das disable Attribut nicht gesetzt.
Ausserdem steht im Log HC_Gaesteklo_Min und nicht HC_Gae
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tekki am 26 September 2015, 13:39:09
Danke Dir für Deine Hilfe.
Ich werde es weiter beobachten.

HC_Gaesteklo_Min stammt nicht aus meiner Konfig.


Grüße
Ralph
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 14 Oktober 2015, 19:07:11
Hi,

kann man für ein Device nicht Wildcards verwenden ?

Also z.B. HK_HM_Wohnen_.*_Clima ?

Möchte 2 Thermostate gleichzeitig schalten.

Gruss
Joe
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 14 Oktober 2015, 19:44:08
Hallo!

Ich hatte es schon mal wo anders diese Fehlermeldung gepostet aber hier scheint der richtige Ort zu sein:


2015.10.14 08:22:20 1: PERL WARNING: Use of uninitialized value $sollZeit in numeric le (<=) at /opt/fhem/FHEM/98_WeekdayTimer.pm line 602.
2015.10.14 08:22:20 3: stacktrace:
2015.10.14 08:22:20 3:     main::__ANON__                      called by /opt/fhem/FHEM/98_WeekdayTimer.pm (602)
2015.10.14 08:22:20 3:     main::WeekdayTimer_Update           called by /opt/fhem/FHEM/98_Heating_Control.pm (85)
2015.10.14 08:22:20 3:     main::Heating_Control_Update        called by fhem.pl (2699)
2015.10.14 08:22:20 3:     main::HandleTimeout                 called by fhem.pl (583)
2015.10.14 08:22:20 1: PERL WARNING: Use of uninitialized value $sollZeit in numeric le (<=) at /opt/fhem/FHEM/98_WeekdayTimer.pm line 602.
2015.10.14 08:22:20 3: stacktrace:
2015.10.14 08:22:20 3:     main::__ANON__                      called by /opt/fhem/FHEM/98_WeekdayTimer.pm (602)
2015.10.14 08:22:20 3:     main::WeekdayTimer_Update           called by /opt/fhem/FHEM/98_Heating_Control.pm (85)
2015.10.14 08:22:20 3:     main::Heating_Control_Update        called by fhem.pl (2699)
2015.10.14 08:22:20 3:     main::HandleTimeout                 called by fhem.pl (583)
2015.10.14 08:22:20 1: PERL WARNING: Use of uninitialized value $sollZeit in numeric le (<=) at /opt/fhem/FHEM/98_WeekdayTimer.pm line 602.
2015.10.14 08:22:20 3: stacktrace:
2015.10.14 08:22:20 3:     main::__ANON__                      called by /opt/fhem/FHEM/98_WeekdayTimer.pm (602)
2015.10.14 08:22:20 3:     main::WeekdayTimer_Update           called by /opt/fhem/FHEM/98_Heating_Control.pm (85)
2015.10.14 08:22:20 3:     main::Heating_Control_Update        called by fhem.pl (2699)
2015.10.14 08:22:20 3:     main::HandleTimeout                 called by fhem.pl (583)
2015.10.14 08:22:20 1: PERL WARNING: Use of uninitialized value $sollZeit in numeric le (<=) at /opt/fhem/FHEM/98_WeekdayTimer.pm line 602.
2015.10.14 08:22:20 3: stacktrace:
2015.10.14 08:22:20 3:     main::__ANON__                      called by /opt/fhem/FHEM/98_WeekdayTimer.pm (602)
2015.10.14 08:22:20 3:     main::WeekdayTimer_Update           called by /opt/fhem/FHEM/98_Heating_Control.pm (85)
2015.10.14 08:22:20 3:     main::Heating_Control_Update        called by fhem.pl (2699)
2015.10.14 08:22:20 3:     main::HandleTimeout                 called by fhem.pl (583)
2015.10.14 08:22:20 1: PERL WARNING: Use of uninitialized value $sollZeit in numeric le (<=) at /opt/fhem/FHEM/98_WeekdayTimer.pm line 602.
2015.10.14 08:22:20 3: stacktrace:
2015.10.14 08:22:20 3:     main::__ANON__                      called by /opt/fhem/FHEM/98_WeekdayTimer.pm (602)
2015.10.14 08:22:20 3:     main::WeekdayTimer_Update           called by /opt/fhem/FHEM/98_Heating_Control.pm (85)
2015.10.14 08:22:20 3:     main::Heating_Control_Update        called by fhem.pl (2699)
2015.10.14 08:22:20 3:     main::HandleTimeout                 called by fhem.pl (583)
2015.10.14 08:22:20 1: PERL WARNING: Use of uninitialized value $sollZeit in numeric le (<=) at /opt/fhem/FHEM/98_WeekdayTimer.pm line 602.


Ich habe leider keinen Plan wo ich da ansetzten könnte, aber vielleicht könnte man zusammen die Ursache finden?!

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 15 Oktober 2015, 07:49:49
Ich untersuche das heute Abend mal.
Bitte mal die Definition des HC posten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 15 Oktober 2015, 07:54:02
Zitat von: cotecmania am 14 Oktober 2015, 19:07:11
Hi,

kann man für ein Device nicht Wildcards verwenden ?

Also z.B. HK_HM_Wohnen_.*_Clima ?

Möchte 2 Thermostate gleichzeitig schalten.

Gruss
Joe

Ggf ja.
Hc erzeugt intern einen fhem("set device desired-temp temp") Aufruf. Wenn der Aufruf als device Wildcards verwenden kann funktioniert das auch mit HC
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 15 Oktober 2015, 08:06:19
Zitat von: Dietmar63 am 15 Oktober 2015, 07:49:49
Ich untersuche das heute Abend mal.
Bitte mal die Definition des HC posten

Danke!

Das ist nur eins habe aber insgesamt 5, brauchst du die anderen dann auch noch???


Internals:
   DEF        ArbeitszimmerKeller 12345|04:55|18.0 12345|06:02|16.0 12345|14:05|18.0 12345|21:05|16.0 60|12:00|18.0 60|18:05|16.0
   DEVICE     ArbeitszimmerKeller
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       BueroKeller
   NR         145
   Profil 0: Sonntag 12:00:00 18.0, 18:05:00 16.0
   Profil 1: Montag 04:55:00 18.0, 06:02:00 16.0, 14:05:00 18.0, 21:05:00 16.0
   Profil 2: Dienstag 04:55:00 18.0, 06:02:00 16.0, 14:05:00 18.0, 21:05:00 16.0
   Profil 3: Mittwoch 04:55:00 18.0, 06:02:00 16.0, 14:05:00 18.0, 21:05:00 16.0
   Profil 4: Donnerstag 04:55:00 18.0, 06:02:00 16.0, 14:05:00 18.0, 21:05:00 16.0
   Profil 5: Freitag 04:55:00 18.0, 06:02:00 16.0, 14:05:00 18.0, 21:05:00 16.0
   Profil 6: Samstag 12:00:00 18.0, 18:05:00 16.0
   STATE      16.0
   STILLDONETIME
   TYPE       Heating_Control
   Readings:
     2015-10-14 08:21:53   disabled        0
     2015-10-15 06:02:00   nextUpdate      2015-10-15 14:05:00
     2015-10-15 06:02:00   nextValue       18.0
     2015-10-15 06:02:00   state           16.0
   SWITCHINGTIMES:
     12345|04:55|18.0
     12345|06:02|16.0
     12345|14:05|18.0
     12345|21:05|16.0
     60|12:00|18.0
     60|18:05|16.0
   Timer:
     Buerokeller_1:
       HASH       BueroKeller
       MODIFIER   1
       NAME       BueroKeller_1
     Buerokeller_2:
       HASH       BueroKeller
       MODIFIER   2
       NAME       BueroKeller_2
     Buerokeller_3:
       HASH       BueroKeller
       MODIFIER   3
       NAME       BueroKeller_3
     Buerokeller_4:
       HASH       BueroKeller
       MODIFIER   4
       NAME       BueroKeller_4
     Buerokeller_5:
       HASH       BueroKeller
       MODIFIER   5
       NAME       BueroKeller_5
     Buerokeller_6:
       HASH       BueroKeller
       MODIFIER   6
       NAME       BueroKeller_6
     Buerokeller_settimerofday:
       HASH       BueroKeller
       MODIFIER   SetTimerOfDay
       NAME       BueroKeller_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         12:00:00   18.0
         18:05:00   16.0
       1:
         04:55:00   18.0
         06:02:00   16.0
         14:05:00   18.0
         21:05:00   16.0
       2:
         04:55:00   18.0
         06:02:00   16.0
         14:05:00   18.0
         21:05:00   16.0
       3:
         04:55:00   18.0
         06:02:00   16.0
         14:05:00   18.0
         21:05:00   16.0
       4:
         04:55:00   18.0
         06:02:00   16.0
         14:05:00   18.0
         21:05:00   16.0
       5:
         04:55:00   18.0
         06:02:00   16.0
         14:05:00   18.0
         21:05:00   16.0
       6:
         12:00:00   18.0
         18:05:00   16.0
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1444877700
       PARA       18.0
       TIME       04:55
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1444881720
       PARA       16.0
       TIME       06:02
       TAGE:
         1
         2
         3
         4
         5
     3:
       EPOCH      1444910700
       PARA       18.0
       TIME       14:05
       TAGE:
         1
         2
         3
         4
         5
     4:
       EPOCH      1444935900
       PARA       16.0
       TIME       21:05
       TAGE:
         1
         2
         3
         4
         5
     5:
       EPOCH      1444903200
       PARA       18.0
       TIME       12:00
       TAGE:
         0
         6
     6:
       EPOCH      1444925100
       PARA       16.0
       TIME       18:05
       TAGE:
         0
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   room       Heizung_Steuerung
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 15 Oktober 2015, 20:48:13
nein,

hast du den Fehler einmal gehabt, nach einem Start, oder kommt er immer wieder?
kannst du die Versions-ID der Module
WeekdayTimer
Heating_Control

posten.

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 15 Oktober 2015, 21:05:58
Zitat von: Dietmar63 am 15 Oktober 2015, 20:48:13
nein,

hast du den Fehler einmal gehabt, nach einem Start, oder kommt er immer wieder?
kannst du die Versions-ID der Module
WeekdayTimer
Heating_Control

posten.

Also der Fehler kommt ca.1x in der Stunde!


$Id: 98_WeekdayTimer.pm 9401 2015-10-07 21:22:54Z dietmar63 $



$Id: 98_Heating_Control.pm 8517 2015-05-02 20:07:15Z dietmar63 $


Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 16 Oktober 2015, 00:12:35
probier mal die jetzige Version
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FilliFairy am 17 Oktober 2015, 13:19:15
Hallo Dietmar,

bei mir war die gleiche Meldung im Log.

Mit # $Id: 98_WeekdayTimer.pm 9461 2015-10-15 22:12:05Z dietmar63 $

ist die Meldung weg.

Merci
FillyFairy
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 17 Oktober 2015, 16:59:12
Jetzt wo wieder die Heizperiode ist, habe ich auch leider wieder Probleme mit dem Modul.

Manchmal wird gar nicht geschalten und machmal wird gleich zwei, drei oder sogar viermal direkt hinter einander geschalten.
Was mich auch stört, immer wieder geht state auf inactive, anstelle des richtige Wert. Das ist sehr blöd, weil ich anhand des states Werte setzte.

Hier z.B.:
Bad ist gerade inactive

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "off") eq "on")
   DEF        HZ_Bad_WT_Climate 12345|06:00|22 1234|07:00|16 5|07:00|20 7|08:30|21.5 7|10:00|20 1234|12:00|20 1234|19:30|21.5 57|20:30|21.5 22:00|16 (ReadingsVal("HCAutomatik", "state", "off") eq "on")
   DEVICE     HZ_Bad_WT_Climate
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCB
   NR         668
   Profil 0: Sonntag 08:30:00 21.5, 10:00:00 20, 20:30:00 21.5, 22:00:00 16
   Profil 1: Montag 06:00:00 22, 07:00:00 16, 12:00:00 20, 19:30:00 21.5, 22:00:00 16
   Profil 2: Dienstag 06:00:00 22, 07:00:00 16, 12:00:00 20, 19:30:00 21.5, 22:00:00 16
   Profil 3: Mittwoch 06:00:00 22, 07:00:00 16, 12:00:00 20, 19:30:00 21.5, 22:00:00 16
   Profil 4: Donnerstag 06:00:00 22, 07:00:00 16, 12:00:00 20, 19:30:00 21.5, 22:00:00 16
   Profil 5: Freitag 06:00:00 22, 07:00:00 20, 20:30:00 21.5, 22:00:00 16
   Profil 6: Samstag 08:30:00 21.5, 10:00:00 20, 20:30:00 21.5, 22:00:00 16
   Profil 7: Wochenende 08:30:00 21.5, 10:00:00 20, 20:30:00 21.5
   STATE      inactive
   STILLDONETIME
   TYPE       Heating_Control
   Readings:
     2015-10-12 19:10:48   disabled        0
     2015-10-17 14:23:20   nextUpdate      2015-10-17 20:30:00
     2015-10-17 14:23:20   nextValue       21.5
     2015-10-17 14:23:20   state           inactive
   SWITCHINGTIMES:
     12345|06:00|22
     1234|07:00|16
     5|07:00|20
     7|08:30|21.5
     7|10:00|20
     1234|12:00|20
     1234|19:30|21.5
     57|20:30|21.5
     22:00|16
   Timer:
     Hcb_2:
       HASH       HCB
       MODIFIER   2
       NAME       HCB_2
     Hcb_7:
       HASH       HCB
       MODIFIER   7
       NAME       HCB_7
     Hcb_8:
       HASH       HCB
       MODIFIER   8
       NAME       HCB_8
     Hcb_9:
       HASH       HCB
       MODIFIER   9
       NAME       HCB_9
     Hcb_settimerofday:
       HASH       HCB
       MODIFIER   SetTimerOfDay
       NAME       HCB_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         08:30:00   21.5
         10:00:00   20
         20:30:00   21.5
         22:00:00   16
       1:
         06:00:00   22
         07:00:00   16
         12:00:00   20
         19:30:00   21.5
         22:00:00   16
       2:
         06:00:00   22
         07:00:00   16
         12:00:00   20
         19:30:00   21.5
         22:00:00   16
       3:
         06:00:00   22
         07:00:00   16
         12:00:00   20
         19:30:00   21.5
         22:00:00   16
       4:
         06:00:00   22
         07:00:00   16
         12:00:00   20
         19:30:00   21.5
         22:00:00   16
       5:
         06:00:00   22
         07:00:00   20
         20:30:00   21.5
         22:00:00   16
       6:
         08:30:00   21.5
         10:00:00   20
         20:30:00   21.5
         22:00:00   16
       7:
         08:30:00   21.5
         10:00:00   20
         20:30:00   21.5
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1445054400
       PARA       22
       TIME       06:00
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1445058000
       PARA       16
       TIME       07:00
       TAGE:
         1
         2
         3
         4
     3:
       EPOCH      1445058000
       PARA       20
       TIME       07:00
       TAGE:
         5
     4:
       EPOCH      1445063400
       PARA       21.5
       TIME       08:30
       TAGE:
         7
     5:
       EPOCH      1445068800
       PARA       20
       TIME       10:00
       TAGE:
         7
     6:
       EPOCH      1445076000
       PARA       20
       TIME       12:00
       TAGE:
         1
         2
         3
         4
     7:
       EPOCH      1445103000
       PARA       21.5
       TIME       19:30
       TAGE:
         1
         2
         3
         4
     8:
       EPOCH      1445106600
       PARA       21.5
       TIME       20:30
       TAGE:
         5
         7
     9:
       EPOCH      1445112000
       PARA       16
       TIME       22:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Bad
   group      Heizplan
   room       Heizung
   verbose    3
   windowSensor Fenster_Bad
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 17 Oktober 2015, 22:43:31
Hallo,

Kann mich auch nur bedanken, denn bei mir sind die Fehlermeldungen mit der Aktuellen Version auch weg...

Danke...

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 17 Oktober 2015, 22:52:04

     2015-10-17 14:23:20   nextUpdate      2015-10-17 20:30:00
     2015-10-17 14:23:20   nextValue       21.5
     2015-10-17 14:23:20   state           inactive


irgendetwas hat  bei deiner Installatin dafür gesorgt, dass die readings um 14:23:20 gesetzt wurden.
Was auch immer zu diesem Zeitpunkt geschehen ist,  zu diesem Zeitpunkt war vermutlich

(ReadingsVal("HCAutomatik", "state", "off") eq "on")
false.

Hast du eine Erklärung für diesen Zeitpunkt? Was ist um jene Zeit geschehen. Vielleicht ein HC_SetAllTemps()?

Änderst du mit irgendwelchen Logiken den Wert von "HCAutomatik"?
Dann prüf mal das Timing.

Setze bei dem HC mal verbose auf 4, dann prüf mal den output. Protokolliere vierlliecht parrallel per notify die Werte von HCAutomatik.

Beim Start von fhem muss HCAutomatik vor allen HC definiert sein. Wenn das nicht der Fall ist, werden beim Start die Anfangswerte nicht richtig gesetzt - wie auch.

Zitat... habe ich auch leider wieder Probleme ...

Die Probleme sind leider durch eine umfangreiche Umstellung innerhalb des Moduls entstanden, die sich ergeben hat um $we bzw. !$we in der Definition zu ermöglichen.

Die letzen Probleme dieser Umstellung werden wir gemeinsam finden müssen, weil ich nicht die Zeit habe sämtliche Testfälle bei mir durchzuprobieren und ich leider kein automatisches Testtool zur Verfügung habe.

Falls dir das zu viel Arbeit ist, solltetst du auf Rudis at's  umstellen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 18 Oktober 2015, 10:45:44
Hi,

Zitat von: Dietmar63 am 15 Oktober 2015, 07:54:02
Ggf ja.
Hc erzeugt intern einen fhem("set device desired-temp temp") Aufruf. Wenn der Aufruf als device Wildcards verwenden kann funktioniert das auch mit HC

anscheinend nicht.

es gibt 2 HM-Thermostate
- HK_HM_WOHNEN_E_Clima
- HK_HM_WOHNEN_W_Clima

Von Hand kann ich Beide setzen mit : set HK_HM_WOHNEN_(E|W)_Clima desired-temp 24 oder set HK_HM_WOHNEN_._Clima desired-temp 24

Mit HeatingControl kommt diese Fehlermeldung im LOG :
[HC.HK_WOHNEN2] invalid device, <HK_HM_WOHNEN_._Clima> not found

Selbiges bei einer Liste z.B. :
set HK_HM_WOHNEN_E_Clima,HK_HM_WOHNEN_W_Clima desired-temp 22 funktioniert, aber mit HC nicht
LOG:
[HC.HK_WOHNEN1] invalid device, <HK_HM_WOHNEN_E_Clima,HK_HM_WOHNEN_W_Clima> not found

Gruss
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 18 Oktober 2015, 11:42:12
Zitat von: Dietmar63 am 17 Oktober 2015, 22:52:04

     2015-10-17 14:23:20   nextUpdate      2015-10-17 20:30:00
     2015-10-17 14:23:20   nextValue       21.5
     2015-10-17 14:23:20   state           inactive


irgendetwas hat  bei deiner Installatin dafür gesorgt, dass die readings um 14:23:20 gesetzt wurden.
Was auch immer zu diesem Zeitpunkt geschehen ist,  zu diesem Zeitpunkt war vermutlich

(ReadingsVal("HCAutomatik", "state", "off") eq "on")
false.

Hast du eine Erklärung für diesen Zeitpunkt? Was ist um jene Zeit geschehen. Vielleicht ein HC_SetAllTemps()?

Okay, da wurde ein Heating_Control_SetTimer() gemacht.
Aber trotzdem sollte doch der state auf der aktuellen Temperatur sein?

Zitat von: Dietmar63 am 17 Oktober 2015, 22:52:04
Änderst du mit irgendwelchen Logiken den Wert von "HCAutomatik"?
Dann prüf mal das Timing.

Nein, normalerweise wird die Automatik einmal im Herbs eingeschalten und im Frühling wieder aus.

Zitat von: Dietmar63 am 17 Oktober 2015, 22:52:04
Setze bei dem HC mal verbose auf 4, dann prüf mal den output. Protokolliere vierlliecht parrallel per notify die Werte von HCAutomatik.

Beim Start von fhem muss HCAutomatik vor allen HC definiert sein. Wenn das nicht der Fall ist, werden beim Start die Anfangswerte nicht richtig gesetzt - wie auch.

Die Probleme sind leider durch eine umfangreiche Umstellung innerhalb des Moduls entstanden, die sich ergeben hat um $we bzw. !$we in der Definition zu ermöglichen.

Die letzen Probleme dieser Umstellung werden wir gemeinsam finden müssen, weil ich nicht die Zeit habe sämtliche Testfälle bei mir durchzuprobieren und ich leider kein automatisches Testtool zur Verfügung habe.

Falls dir das zu viel Arbeit ist, solltetst du auf Rudis at's  umstellen.

Okay, HCAutomatik werde ich mir gleich anschauen.

Ich teste gerne, wenn Du mir sagst was.

Gerade ist mir noch aufgefallen, das der open window Status auch nicht immer stimmt.
Wann wird denn open window gesetzte? Immer, wenn Fenster auf geht, oder nur wenn bei offenen Fenster geschalten werden soll?

Vielen Dank schonmal Dietmar!!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 18 Oktober 2015, 12:35:32
Gerade wieder nachgesehen, es wurde nichts an fhem geändert und es sind fast alle auf inactive??

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 18 Oktober 2015, 13:56:45
Hallo,
Nur ein Verdacht:
Kann es sein, dass state inactive wird, wenn das Attribut disable einen Wert hat, also überhaupt vorhanden ist? Bei meinen Devices ohne dieses Attribut ist state korrekt.

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 18 Oktober 2015, 14:08:38
möglich.

Ich habe jetzt das Attribute bei allen gelöscht, mal sehen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 Oktober 2015, 14:44:57
Zitat von: cotecmania am 18 Oktober 2015, 10:45:44
Hi,

anscheinend nicht.

es gibt 2 HM-Thermostate
- HK_HM_WOHNEN_E_Clima
- HK_HM_WOHNEN_W_Clima

Von Hand kann ich Beide setzen mit : set HK_HM_WOHNEN_(E|W)_Clima desired-temp 24 oder set HK_HM_WOHNEN_._Clima desired-temp 24

Mit HeatingControl kommt diese Fehlermeldung im LOG :
[HC.HK_WOHNEN2] invalid device, <HK_HM_WOHNEN_._Clima> not found

Selbiges bei einer Liste z.B. :
set HK_HM_WOHNEN_E_Clima,HK_HM_WOHNEN_W_Clima desired-temp 22 funktioniert, aber mit HC nicht
LOG:
[HC.HK_WOHNEN1] invalid device, <HK_HM_WOHNEN_E_Clima,HK_HM_WOHNEN_W_Clima> not found

Gruss

Invalid device ist nur ein Hinweis. Der HC sollte korrekt definiert sein. Prüf mal mit verbose 4 was im Protokoll erscheint.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 Oktober 2015, 14:45:20
Zitat von: cotecmania am 18 Oktober 2015, 10:45:44
Hi,

anscheinend nicht.

es gibt 2 HM-Thermostate
- HK_HM_WOHNEN_E_Clima
- HK_HM_WOHNEN_W_Clima

Von Hand kann ich Beide setzen mit : set HK_HM_WOHNEN_(E|W)_Clima desired-temp 24 oder set HK_HM_WOHNEN_._Clima desired-temp 24

Mit HeatingControl kommt diese Fehlermeldung im LOG :
[HC.HK_WOHNEN2] invalid device, <HK_HM_WOHNEN_._Clima> not found

Selbiges bei einer Liste z.B. :
set HK_HM_WOHNEN_E_Clima,HK_HM_WOHNEN_W_Clima desired-temp 22 funktioniert, aber mit HC nicht
LOG:
[HC.HK_WOHNEN1] invalid device, <HK_HM_WOHNEN_E_Clima,HK_HM_WOHNEN_W_Clima> not found

Gruss

Invalid device ist nur ein Hinweis. Der HC sollte korrekt definiert sein. Prüf mal mit verbose 4 was im Protokoll erscheint.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 Oktober 2015, 14:47:35
, oder nur wenn bei offenen Fenster geschalten werden soll?

Ja, HC wacht natürlich nur bei eigenen Ereignissen auf.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 Oktober 2015, 14:51:09
Okay, HCAutomatik werde ich mir gleich anschauen.
Ich teste gerne, wenn Du mir sagst was.


Was was um 14:23 Uhr los? Warum wurden die readings gesetzt?
Liefere Protokolle eines  HC mit dem Inhalt HCAutomatik

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 Oktober 2015, 14:52:02
Bin leider jetzt schlecht verfügbar - Kurzurlaub in Amsterdam
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 18 Oktober 2015, 18:38:06
Zitat von: Dietmar63 am 18 Oktober 2015, 14:51:09
Okay, HCAutomatik werde ich mir gleich anschauen.
Ich teste gerne, wenn Du mir sagst was.


Was was um 14:23 Uhr los? Warum wurden die readings gesetzt?
Liefere Protokolle eines  HC mit dem Inhalt HCAutomatik

Um 14:23 Uhr wurde ein Heating_Control_SetAllTemps() gemacht.

Leider funktioniert aber, vermutlich aufgrund des inactive, ein Heating_Control_SetAllTemps() nicht.
Es werden nicht die aktuellen Temperaturen gesetzt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 Oktober 2015, 21:27:57
Was war denn inactive?

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 18 Oktober 2015, 22:39:06
Alle Definitionen warnen inactive.

Im Moment sind z.B. von 13, 4 inactive.
Ich kann leider keine Logik darin sehen. Mal ist es die, mal eine andere.
Sehr häufig ist es nur eine, die vom Bad.

Gerade um 22:30 Uhr war ein "Schaltpunkt" bei einer Definition. Es wurde zwar geschalten, aber es steht immer noch auf inactive.

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "off") eq "on")
   DEF        HZ_Wohnzimmer_WT_Climate 12345|06:00|22 1234|07:30|16 5|07:30|21.5 1234|12:00|21.5 7|08:00|21.5 19:00|22 22:30|16 (ReadingsVal("HCAutomatik", "state", "off") eq "on")
   DEVICE     HZ_Wohnzimmer_WT_Climate
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCW
   NR         668
   Profil 0: Sonntag 08:00:00 21.5, 19:00:00 22, 22:30:00 16
   Profil 1: Montag 06:00:00 22, 07:30:00 16, 12:00:00 21.5, 19:00:00 22, 22:30:00 16
   Profil 2: Dienstag 06:00:00 22, 07:30:00 16, 12:00:00 21.5, 19:00:00 22, 22:30:00 16
   Profil 3: Mittwoch 06:00:00 22, 07:30:00 16, 12:00:00 21.5, 19:00:00 22, 22:30:00 16
   Profil 4: Donnerstag 06:00:00 22, 07:30:00 16, 12:00:00 21.5, 19:00:00 22, 22:30:00 16
   Profil 5: Freitag 06:00:00 22, 07:30:00 21.5, 19:00:00 22, 22:30:00 16
   Profil 6: Samstag 08:00:00 21.5, 19:00:00 22, 22:30:00 16
   Profil 7: Wochenende 08:00:00 21.5
   STATE      inactive
   STILLDONETIME
   TYPE       Heating_Control
   Readings:
     2015-10-18 14:07:50   disabled        0
     2015-10-18 22:36:01   nextUpdate      2015-10-19 06:00:00
     2015-10-18 22:36:01   nextValue       22
     2015-10-18 22:36:01   state           inactive
   SWITCHINGTIMES:
     12345|06:00|22
     1234|07:30|16
     5|07:30|21.5
     1234|12:00|21.5
     7|08:00|21.5
     19:00|22
     22:30|16
   Timer:
     Hcw_3:
       HASH       HCW
       MODIFIER   3
       NAME       HCW_3
     Hcw_7:
       HASH       HCW
       MODIFIER   7
       NAME       HCW_7
     Hcw_settimerofday:
       HASH       HCW
       MODIFIER   SetTimerOfDay
       NAME       HCW_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         08:00:00   21.5
         19:00:00   22
         22:30:00   16
       1:
         06:00:00   22
         07:30:00   16
         12:00:00   21.5
         19:00:00   22
         22:30:00   16
       2:
         06:00:00   22
         07:30:00   16
         12:00:00   21.5
         19:00:00   22
         22:30:00   16
       3:
         06:00:00   22
         07:30:00   16
         12:00:00   21.5
         19:00:00   22
         22:30:00   16
       4:
         06:00:00   22
         07:30:00   16
         12:00:00   21.5
         19:00:00   22
         22:30:00   16
       5:
         06:00:00   22
         07:30:00   21.5
         19:00:00   22
         22:30:00   16
       6:
         08:00:00   21.5
         19:00:00   22
         22:30:00   16
       7:
         08:00:00   21.5
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1445140800
       PARA       22
       TIME       06:00
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1445146200
       PARA       16
       TIME       07:30
       TAGE:
         1
         2
         3
         4
     3:
       EPOCH      1445146200
       PARA       21.5
       TIME       07:30
       TAGE:
         5
     4:
       EPOCH      1445162400
       PARA       21.5
       TIME       12:00
       TAGE:
         1
         2
         3
         4
     5:
       EPOCH      1445148000
       PARA       21.5
       TIME       08:00
       TAGE:
         7
     6:
       EPOCH      1445187600
       PARA       22
       TIME       19:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     7:
       EPOCH      1445200200
       PARA       16
       TIME       22:30
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Wohnzimmer/Küche
   group      Heizplan
   room       Heizung
   verbose    3
   windowSensor d_ECOMode Fenster_Kueche Fenster_Wohnzimmer_Ost Fenster_Terrasse



Bad wurde nicht geschalten und steht noch auf 21.5 Grad (hätte aber schon um 22 Uhr geschalten werden sollen

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "off") eq "on")
   DEF        HZ_Bad_WT_Climate 12345|06:00|22 1234|07:00|16 5|07:00|20 7|08:30|21.5 7|10:00|20 1234|12:00|20 1234|19:30|21.5 57|20:30|21.5 22:00|16 (ReadingsVal("HCAutomatik", "state", "off") eq "on")
   DEVICE     HZ_Bad_WT_Climate
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCB
   NR         667
   Profil 0: Sonntag 08:30:00 21.5, 10:00:00 20, 20:30:00 21.5, 22:00:00 16
   Profil 1: Montag 06:00:00 22, 07:00:00 16, 12:00:00 20, 19:30:00 21.5, 22:00:00 16
   Profil 2: Dienstag 06:00:00 22, 07:00:00 16, 12:00:00 20, 19:30:00 21.5, 22:00:00 16
   Profil 3: Mittwoch 06:00:00 22, 07:00:00 16, 12:00:00 20, 19:30:00 21.5, 22:00:00 16
   Profil 4: Donnerstag 06:00:00 22, 07:00:00 16, 12:00:00 20, 19:30:00 21.5, 22:00:00 16
   Profil 5: Freitag 06:00:00 22, 07:00:00 20, 20:30:00 21.5, 22:00:00 16
   Profil 6: Samstag 08:30:00 21.5, 10:00:00 20, 20:30:00 21.5, 22:00:00 16
   Profil 7: Wochenende 08:30:00 21.5, 10:00:00 20, 20:30:00 21.5
   STATE      21.5
   STILLDONETIME
   TYPE       Heating_Control
   Readings:
     2015-10-18 14:07:49   disabled        0
     2015-10-18 22:30:02   nextUpdate      2015-10-19 06:00:00
     2015-10-18 22:30:02   nextValue       22
     2015-10-18 22:30:02   state           21.5
   SWITCHINGTIMES:
     12345|06:00|22
     1234|07:00|16
     5|07:00|20
     7|08:30|21.5
     7|10:00|20
     1234|12:00|20
     1234|19:30|21.5
     57|20:30|21.5
     22:00|16
   Timer:
     Hcb_4:
       HASH       HCB
       MODIFIER   4
       NAME       HCB_4
     Hcb_settimerofday:
       HASH       HCB
       MODIFIER   SetTimerOfDay
       NAME       HCB_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         08:30:00   21.5
         10:00:00   20
         20:30:00   21.5
         22:00:00   16
       1:
         06:00:00   22
         07:00:00   16
         12:00:00   20
         19:30:00   21.5
         22:00:00   16
       2:
         06:00:00   22
         07:00:00   16
         12:00:00   20
         19:30:00   21.5
         22:00:00   16
       3:
         06:00:00   22
         07:00:00   16
         12:00:00   20
         19:30:00   21.5
         22:00:00   16
       4:
         06:00:00   22
         07:00:00   16
         12:00:00   20
         19:30:00   21.5
         22:00:00   16
       5:
         06:00:00   22
         07:00:00   20
         20:30:00   21.5
         22:00:00   16
       6:
         08:30:00   21.5
         10:00:00   20
         20:30:00   21.5
         22:00:00   16
       7:
         08:30:00   21.5
         10:00:00   20
         20:30:00   21.5
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1445140800
       PARA       22
       TIME       06:00
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1445144400
       PARA       16
       TIME       07:00
       TAGE:
         1
         2
         3
         4
     3:
       EPOCH      1445144400
       PARA       20
       TIME       07:00
       TAGE:
         5
     4:
       EPOCH      1445149800
       PARA       21.5
       TIME       08:30
       TAGE:
         7
     5:
       EPOCH      1445155200
       PARA       20
       TIME       10:00
       TAGE:
         7
     6:
       EPOCH      1445162400
       PARA       20
       TIME       12:00
       TAGE:
         1
         2
         3
         4
     7:
       EPOCH      1445189400
       PARA       21.5
       TIME       19:30
       TAGE:
         1
         2
         3
         4
     8:
       EPOCH      1445193000
       PARA       21.5
       TIME       20:30
       TAGE:
         5
         7
     9:
       EPOCH      1445198400
       PARA       16
       TIME       22:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Bad
   group      Heizplan
   room       Heizung
   verbose    3
   windowSensor Fenster_Bad


Dann habe ich gerade noch drei, die nicht geschalten wurde und der state noch auf dem falschen (hohen) Wert steht. Alle drei hätten um 20 Uhr auf 14 Grad geschalten werden.

Hier einer als Beispiel

Internals:
   CONDITION  (ReadingsVal("HCAutomatik", "state", "off") eq "on")
   DEF        FHT_Hobbyraum 1234|12:30|18 57|09:00|18 19:00|14 (ReadingsVal("HCAutomatik", "state", "off") eq "on")
   DEVICE     FHT_Hobbyraum
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HCH
   NR         675
   Profil 0: Sonntag 09:00:00 18, 19:00:00 14
   Profil 1: Montag 12:30:00 18, 19:00:00 14
   Profil 2: Dienstag 12:30:00 18, 19:00:00 14
   Profil 3: Mittwoch 12:30:00 18, 19:00:00 14
   Profil 4: Donnerstag 12:30:00 18, 19:00:00 14
   Profil 5: Freitag 09:00:00 18, 19:00:00 14
   Profil 6: Samstag 09:00:00 18, 19:00:00 14
   Profil 7: Wochenende 09:00:00 18
   STATE      18
   STILLDONETIME
   TYPE       Heating_Control
   Readings:
     2015-10-18 14:07:50   disabled        0
     2015-10-18 22:30:01   nextUpdate      2015-10-19 12:30:00
     2015-10-18 22:30:01   nextValue       18
     2015-10-18 22:30:01   state           18
   SWITCHINGTIMES:
     1234|12:30|18
     57|09:00|18
     19:00|14
   Timer:
     Hch_2:
       HASH       HCH
       MODIFIER   2
       NAME       HCH_2
     Hch_settimerofday:
       HASH       HCH
       MODIFIER   SetTimerOfDay
       NAME       HCH_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         09:00:00   18
         19:00:00   14
       1:
         12:30:00   18
         19:00:00   14
       2:
         12:30:00   18
         19:00:00   14
       3:
         12:30:00   18
         19:00:00   14
       4:
         12:30:00   18
         19:00:00   14
       5:
         09:00:00   18
         19:00:00   14
       6:
         09:00:00   18
         19:00:00   14
       7:
         09:00:00   18
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1445164200
       PARA       18
       TIME       12:30
       TAGE:
         1
         2
         3
         4
     2:
       EPOCH      1445151600
       PARA       18
       TIME       09:00
       TAGE:
         5
         7
     3:
       EPOCH      1445187600
       PARA       14
       TIME       19:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Hobbyraum
   group      Heizplan
   room       Heizung
   verbose    3
   windowSensor CUL_FHTTK_Hobbyraum_rechts CUL_FHTTK_Hobbyraum_links CUL_FHTTK_Hobbyraum_Ost
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 18 Oktober 2015, 23:07:36
Hab gerade nochmal einen Test gemacht.

Bei dem Device HCWK sollte eigentlich jetzt state 14 sein, ist aber 18 (also die Tagestemperatur).

Wenn ich jetzt auf DEF und dann modify HCWK klicke, wird state ganz kurz 14, also richtig und schlatet dann wieder auf 18.

Habe das ganze dann nochmal mit verbose 5 gemacht (Log ist von unten nach oben zu lesen):

2015.10.18 23:02:32 2: FHT set FHT_Waschkeller desired-temp 18.0
2015.10.18 23:02:32 4: [HCWK] command: set FHT_Waschkeller desired-temp 18.0 executed
2015.10.18 23:02:32 4: [HCWK] aktParam:14.0 newParam:18.0 - is  not disabled
2015.10.18 23:02:32 4: [HCWK] device type FHT: recognized, setModifier:desired-temp
2015.10.18 23:02:32 4: [HCWK] next: 2015-10-19 12:30:00(mo) -->> 18
2015.10.18 23:02:32 4: [HCWK] akt:  2015-10-18 19:00:00(so) -->> 14
2015.10.18 23:02:32 4: [HCWK] Update   - timer seems to be active today: 57|09:00|18
2015.10.18 23:02:32 5: [HCWK] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.18 23:02:32 5: [HCWK] sensor 'CUL_FHTTK_Waschkeller' Reading/Attribute 'Window' is 'Closed'
2015.10.18 23:02:32 5: [HCWK] list of window sensors found: 'CUL_FHTTK_Waschkeller  d_ECOMode HCWK'
2015.10.18 23:02:32 5: [HCWK] setting  Timer: HCWK_2 2015-10-18 19:00:00
2015.10.18 23:02:32 5: [HCWK] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.18 23:02:32 5: [HCWK] sensor 'CUL_FHTTK_Waschkeller' Reading/Attribute 'Window' is 'Closed'
2015.10.18 23:02:32 5: [HCWK] list of window sensors found: 'CUL_FHTTK_Waschkeller  d_ECOMode HCWK'
2015.10.18 23:02:32 4: [HCWK] next: 2015-10-19 12:30:00(mo) -->> 18
2015.10.18 23:02:32 4: [HCWK] akt:  2015-10-18 19:00:00(so) -->> 14
2015.10.18 23:02:32 4: [HCWK] Heating recognized - switch in the past activated
2015.10.18 23:02:32 4: [HCWK] device type FHT: recognized, setModifier:desired-temp
2015.10.18 23:02:31 5: [HCWK] setting  Timer: HCWK_SetTimerOfDay 2015-10-19 00:00:05
2015.10.18 23:02:31 5: [HCWK] removing Timer: HCWK_SetTimerOfDay
2015.10.18 23:02:31 4: [HCWK] 09:00:00 18 (Profil 7: Wochenende)
2015.10.18 23:02:31 4: [HCWK] 09:00:00 18, 19:00:00 14 (Profil 6: Samstag)
2015.10.18 23:02:31 4: [HCWK] 09:00:00 18, 19:00:00 14 (Profil 5: Freitag)
2015.10.18 23:02:31 4: [HCWK] 12:30:00 18, 19:00:00 14 (Profil 4: Donnerstag)
2015.10.18 23:02:31 4: [HCWK] 12:30:00 18, 19:00:00 14 (Profil 3: Mittwoch)
2015.10.18 23:02:31 4: [HCWK] 12:30:00 18, 19:00:00 14 (Profil 2: Dienstag)
2015.10.18 23:02:31 4: [HCWK] 12:30:00 18, 19:00:00 14 (Profil 1: Montag)
2015.10.18 23:02:31 4: [HCWK] 09:00:00 18, 19:00:00 14 (Profil 0: Sonntag)
2015.10.18 23:02:31 4: [HCWK] 07:07:13 18:51:57 Sonntag
2015.10.18 23:02:31 3: [HCWK] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.10.18 23:02:31 3: [HCWK] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.10.18 23:02:31 5: [HCWK] removing Timer: HCWK_2
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 Oktober 2015, 23:49:09
Ich kann mir das am Mittwoch mal ansehen. Habe hier nur ein paar Handy zur Verteidigung.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 19 Oktober 2015, 08:38:16
Das wäre super.

Vielen Dank schonmal!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 20 Oktober 2015, 08:55:00
Zitat von: Mitch am 18 Oktober 2015, 23:07:36
Hab gerade nochmal einen Test gemacht.

Bei dem Device HCWK sollte eigentlich jetzt state 14 sein, ist aber 18 (also die Tagestemperatur).

Wenn ich jetzt auf DEF und dann modify HCWK klicke, wird state ganz kurz 14, also richtig und schlatet dann wieder auf 18.

Habe das ganze dann nochmal mit verbose 5 gemacht (Log ist von unten nach oben zu lesen):

2015.10.18 23:02:32 2: FHT set FHT_Waschkeller desired-temp 18.0
2015.10.18 23:02:32 4: [HCWK] command: set FHT_Waschkeller desired-temp 18.0 executed
2015.10.18 23:02:32 4: [HCWK] aktParam:14.0 newParam:18.0 - is  not disabled
2015.10.18 23:02:32 4: [HCWK] device type FHT: recognized, setModifier:desired-temp
2015.10.18 23:02:32 4: [HCWK] next: 2015-10-19 12:30:00(mo) -->> 18
2015.10.18 23:02:32 4: [HCWK] akt:  2015-10-18 19:00:00(so) -->> 14
2015.10.18 23:02:32 4: [HCWK] Update   - timer seems to be active today: 57|09:00|18
2015.10.18 23:02:32 5: [HCWK] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.18 23:02:32 5: [HCWK] sensor 'CUL_FHTTK_Waschkeller' Reading/Attribute 'Window' is 'Closed'
2015.10.18 23:02:32 5: [HCWK] list of window sensors found: 'CUL_FHTTK_Waschkeller  d_ECOMode HCWK'
2015.10.18 23:02:32 5: [HCWK] setting  Timer: HCWK_2 2015-10-18 19:00:00
2015.10.18 23:02:32 5: [HCWK] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.18 23:02:32 5: [HCWK] sensor 'CUL_FHTTK_Waschkeller' Reading/Attribute 'Window' is 'Closed'
2015.10.18 23:02:32 5: [HCWK] list of window sensors found: 'CUL_FHTTK_Waschkeller  d_ECOMode HCWK'
2015.10.18 23:02:32 4: [HCWK] next: 2015-10-19 12:30:00(mo) -->> 18
2015.10.18 23:02:32 4: [HCWK] akt:  2015-10-18 19:00:00(so) -->> 14
2015.10.18 23:02:32 4: [HCWK] Heating recognized - switch in the past activated
2015.10.18 23:02:32 4: [HCWK] device type FHT: recognized, setModifier:desired-temp
2015.10.18 23:02:31 5: [HCWK] setting  Timer: HCWK_SetTimerOfDay 2015-10-19 00:00:05
2015.10.18 23:02:31 5: [HCWK] removing Timer: HCWK_SetTimerOfDay
2015.10.18 23:02:31 4: [HCWK] 09:00:00 18 (Profil 7: Wochenende)
2015.10.18 23:02:31 4: [HCWK] 09:00:00 18, 19:00:00 14 (Profil 6: Samstag)
2015.10.18 23:02:31 4: [HCWK] 09:00:00 18, 19:00:00 14 (Profil 5: Freitag)
2015.10.18 23:02:31 4: [HCWK] 12:30:00 18, 19:00:00 14 (Profil 4: Donnerstag)
2015.10.18 23:02:31 4: [HCWK] 12:30:00 18, 19:00:00 14 (Profil 3: Mittwoch)
2015.10.18 23:02:31 4: [HCWK] 12:30:00 18, 19:00:00 14 (Profil 2: Dienstag)
2015.10.18 23:02:31 4: [HCWK] 12:30:00 18, 19:00:00 14 (Profil 1: Montag)
2015.10.18 23:02:31 4: [HCWK] 09:00:00 18, 19:00:00 14 (Profil 0: Sonntag)
2015.10.18 23:02:31 4: [HCWK] 07:07:13 18:51:57 Sonntag
2015.10.18 23:02:31 3: [HCWK] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.10.18 23:02:31 3: [HCWK] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.10.18 23:02:31 5: [HCWK] removing Timer: HCWK_2


Ich benötige die Definition zu Waschkeller noch
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 20 Oktober 2015, 09:11:41
Bitte sehr (aus der cfg):

define HCWK Heating_Control FHT_Waschkeller 1234|12:30|18 57|09:00|18 19:00|14 (ReadingsVal("HCAutomatik", "state", "off") eq "on")
attr HCWK alias Waschkeller
attr HCWK group Heizplan
attr HCWK room Heizung
attr HCWK verbose 3
attr HCWK windowSensor CUL_FHTTK_Waschkeller  d_ECOMode



Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 20 Oktober 2015, 19:32:09
Hi,

hier der erste Test mit Verbose 4 und mehrern MAX-Thermostaten als Liste :

[HC.Test] invalid device, <HK_EILEEN,HK_TAMARA,HK_MARCEL> not found
2015.10.20 17:53:47 1: No Logdevice FileLog_HK_WOHNEN
2015.10.20 17:53:47 1: No Logdevice FileLog_HK_WOHNEN_E
2015.10.20 17:55:01 4: [HC.HK_Test] Update   - timer seems to be active today: 0123456|17:55|21
2015.10.20 17:55:01 4: [HC.HK_Test] akt:  2015-10-20 17:55:00(di) -->> 21
2015.10.20 17:55:01 4: [HC.HK_Test] next: 2015-10-21 17:55:00(mi) -->> 21
2015.10.20 17:55:01 4: [HC.HK_Test] aktParam: newParam:21 - is  not disabled
2015.10.20 17:55:01 4: [HC.HK_Test] command: set HK_EILEEN,HK_TAMARA,HK_MARCEL  21 executed
2015.10.20 17:55:01 3: Unknown argument 21, choose one of wakeUp factoryReset groupid associate:HK_KUECHE ...


Hier Test 2 mit HomeMatic und Wildcards
[HC_HK_Test2] invalid device, <HK_HM_WOHNEN_._Clima> not found
2015.10.20 19:30:00 4: [HC_HK_Test2] Update   - timer seems to be active today: 12345|19:30|22
2015.10.20 19:30:00 4: [HC_HK_Test2] akt:  2015-10-20 19:30:00(di) -->> 22
2015.10.20 19:30:00 4: [HC_HK_Test2] next: 2015-10-21 19:30:00(mi) -->> 22
2015.10.20 19:30:00 4: [HC_HK_Test2] aktParam: newParam:22 - is  not disabled
2015.10.20 19:30:00 4: [HC_HK_Test2] command: set HK_HM_WOHNEN_._Clima  22 executed
2015.10.20 19:30:00 3: Unknown argument 22, choose one of burstXmit clear:readings,t ...


Gruss
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 20 Oktober 2015, 19:59:32
Zitat von: cotecmania am 20 Oktober 2015, 19:32:09
Hi,

hier der erste Test mit Verbose 4 und mehrern MAX-Thermostaten als Liste :

[HC.Test] invalid device, <HK_EILEEN,HK_TAMARA,HK_MARCEL> not found
2015.10.20 17:53:47 1: No Logdevice FileLog_HK_WOHNEN
2015.10.20 17:53:47 1: No Logdevice FileLog_HK_WOHNEN_E
2015.10.20 17:55:01 4: [HC.HK_Test] Update   - timer seems to be active today: 0123456|17:55|21
2015.10.20 17:55:01 4: [HC.HK_Test] akt:  2015-10-20 17:55:00(di) -->> 21
2015.10.20 17:55:01 4: [HC.HK_Test] next: 2015-10-21 17:55:00(mi) -->> 21
2015.10.20 17:55:01 4: [HC.HK_Test] aktParam: newParam:21 - is  not disabled
2015.10.20 17:55:01 4: [HC.HK_Test] command: set HK_EILEEN,HK_TAMARA,HK_MARCEL  21 executed
2015.10.20 17:55:01 3: Unknown argument 21, choose one of wakeUp factoryReset groupid associate:HK_KUECHE ...


Hier Test 2 mit HomeMatic und Wildcards
[HC_HK_Test2] invalid device, <HK_HM_WOHNEN_._Clima> not found
2015.10.20 19:30:00 4: [HC_HK_Test2] Update   - timer seems to be active today: 12345|19:30|22
2015.10.20 19:30:00 4: [HC_HK_Test2] akt:  2015-10-20 19:30:00(di) -->> 22
2015.10.20 19:30:00 4: [HC_HK_Test2] next: 2015-10-21 19:30:00(mi) -->> 22
2015.10.20 19:30:00 4: [HC_HK_Test2] aktParam: newParam:22 - is  not disabled
2015.10.20 19:30:00 4: [HC_HK_Test2] command: set HK_HM_WOHNEN_._Clima  22 executed
2015.10.20 19:30:00 3: Unknown argument 22, choose one of burstXmit clear:readings,t ...


Gruss

du musst mir deine Definition schicken.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 20 Oktober 2015, 20:11:46
Zitat von: Dietmar63 am 20 Oktober 2015, 19:59:32
du musst mir deine Definition schicken.

Meinst Du das ?

define HC.HK_Test Heating_Control HK_EILEEN,HK_TAMARA,HK_MARCEL Mo-So|17:55|21
attr HC.HK_Test verbose 4
define HC_HK_Test2 Heating_Control HK_HM_WOHNEN_._Clima Mo-Fr|19:30|22
attr HC_HK_Test2 verbose 4
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 22 Oktober 2015, 12:10:08
Hie Dietmar,

kannst Du schon etwas zu meinen Problemen sagen?

Heute wurden wird ein paar nicht geschalten, weil der state inactive war.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Oktober 2015, 18:01:15
Nein, ich war mehrere Tage nicht zu Hause.
Hast du Protokolle? So dass man erkennen kann warum bzw. Wie es dazu kommt, dass die HC auf inactive gehen?

Werden bei dir regelmäßig Heating_Control_SetAllTems() ausgeführt?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Oktober 2015, 18:41:18
@ cotecmania

Die Lösung ist so:
define HC.HK_Test Heating_Control HK_EILEEN,HK_TAMARA,HK_MARCEL Mo-So|17:55|21 { fhem ("set @ desired-temp %") }

Hintergrund:

HC versucht anhand der Definition des devices herauszufinden, ob es sich um eine Heizung handeln könnte und mit welchem modifier (desired-temp, desired, desiredTemp) die Heizung verstellt werden muss. Wenn in der Angabe des devices ein regulärer Ausdruck angegeben ist, kann diese Logik nicht angewendet werden, so dass per Command {} der anzuwendende Befehl in Form von Perlcode mitgegeben werden muss.

Bei Dir:
{ fhem ("set @ desired-temp %") }

@ wird durch das device ersetzt
% wird  durch den Parameter ersetzt.

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 22 Oktober 2015, 19:51:20
Zitat von: Dietmar63 am 22 Oktober 2015, 18:01:15
Werden bei dir regelmäßig Heating_Control_SetAllTems() ausgeführt?

Ja, werde sie.

Ich nutze das, um bei Heimkehr wieder auf die Solltemp zu schalten.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 22 Oktober 2015, 20:41:56
Zitat von: Dietmar63 am 22 Oktober 2015, 18:41:18
@ cotecmania

Die Lösung ist so:
define HC.HK_Test Heating_Control HK_EILEEN,HK_TAMARA,HK_MARCEL Mo-So|17:55|21 { fhem ("set @ desired-temp %") }

Hintergrund:

HC versucht anhand der Definition des devices herauszufinden, ob es sich um eine Heizung handeln könnte und mit welchem modifier (desired-temp, desired, desiredTemp) die Heizung verstellt werden muss. Wenn in der Angabe des devices ein regulärer Ausdruck angegeben ist, kann diese Logik nicht angewendet werden, so dass per Command {} der anzuwendende Befehl in Form von Perlcode mitgegeben werden muss.

Bei Dir:
{ fhem ("set @ desired-temp %") }

@ wird durch das device ersetzt
% wird  durch den Parameter ersetzt.

Hallo Dietmar,

wie muesste das dann bei folgender Definition umgesetzt werden, wenn hinten schon eine Bedingung ist ?:
HK_HM_WOHNEN_._Clima Mo-Fr|20:40|24 Mo-Fr|15:00|21 Mo-Fr|23:00|15 ( (Value("DS_Heizen") eq "on") && (Value("DS_HeizenUrlaubZuhause") eq "off") )

Gruss
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Oktober 2015, 22:31:27
HK_HM_WOHNEN_._Clima Mo-Fr|20:40|24 Mo-Fr|15:00|21 Mo-Fr|23:00|15  { fhem ("set @ desired-temp %") if ( (Value("DS_Heizen") eq "on") && (Value("DS_HeizenUrlaubZuhause") eq "off") ) }
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Oktober 2015, 22:46:13
@Mitch:
ich habe einen Fehler gefunden - benötige aber noch Zeit bis ich weiß wie ich den löse.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 Oktober 2015, 08:25:03
leider wird sich die Reparatur verzögern.
Meine Fritzbox hat heute automatisch ein Update auf 6.30 ausgeführt, so dass mein FHEM nicht mehr läuft.

Jetzt muss ich mich erst einmal darum kümmern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 23 Oktober 2015, 08:34:08
Danke Dietmar, und shit mit Deiner Box.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 Oktober 2015, 18:14:20
Fritzbox läuft wieder - kann mich aber trotzdem erst ab Sonntag Abend darum kümmern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 Oktober 2015, 22:50:15
Ich habe jetzt eine  Version von HC und WD, die das Problem nicht mehr hat.
Sie ist aber noch beta, und muss von mir getestet werden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 26 Oktober 2015, 09:24:12
Hi Dietmar,

wenn Du noch einen Tester brauchst, sag mir bescheid.
Im Moment kann ich die aktuelle Version sowieso nicht nutzen, also könnte ich auch in einer echten Produktivumgebung testen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 Oktober 2015, 14:25:21
Zitat von: Mitch am 26 Oktober 2015, 09:24:12
Hi Dietmar,

wenn Du noch einen Tester brauchst, sag mir bescheid.
Im Moment kann ich die aktuelle Version sowieso nicht nutzen, also könnte ich auch in einer echten Produktivumgebung testen.

ich könnte die die aktuelle Version per mail zukommen lassen. Wäre das ein Weg?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 26 Oktober 2015, 14:30:02
klar: bauer.markus @ gmail.com
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Ascos am 26 Oktober 2015, 19:02:44
Hi Dietmar,

ich benutze dein Moduk sehr ähnlich, wie Mitch.
Habe meine Heizung ja auch nach seiner Anleitung aufgebaut und habe nun das gleiche Problem, das bei Heating_Setalltemps() nicht alle korrekt geschaltet werden.
Wenn du möchtest, kann ich auch gerne mittesten, bin allerdings nicht so fit in Sachen FHEM, wie Mitch.
Email würde ich dir dann via PN schicken.

Viele Grüße
Tino

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 Oktober 2015, 19:55:37
Zitat von: Ascos am 26 Oktober 2015, 19:02:44
Hi Dietmar,

ich benutze dein Moduk sehr ähnlich, wie Mitch.
Habe meine Heizung ja auch nach seiner Anleitung aufgebaut und habe nun das gleiche Problem, das bei Heating_Setalltemps() nicht alle korrekt geschaltet werden.
Wenn du möchtest, kann ich auch gerne mittesten, bin allerdings nicht so fit in Sachen FHEM, wie Mitch.
Email würde ich dir dann via PN schicken.

Viele Grüße
Tino

Sende mir deine Mail-Adresse, dann versorge ich dich mit dem Modul.
Weißt du, wie du es installieren kannst?

Dietmar
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 26 Oktober 2015, 20:34:47
Hi Dietmar,

danke für Dein Mail.
Habe das Modul kopiert und neu geladen.

Danach ein {Heating_Control_SetAllTemps()} und alle HC's (bis auf einen, da ist das Fenster offen) sind auf inactive??

Log:
2015.10.26 20:35:42 5: [HCL] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:42 5: [HCL] sensor 'Fenster_Leoni' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:42 5: [HCL] list of window sensors found: 'Fenster_Leoni  d_ECOMode HCL'
2015.10.26 20:35:42 5: [HCB] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:42 5: [HCB] sensor 'Fenster_Bad' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:42 5: [HCB] list of window sensors found: 'Fenster_Bad d_ECOMode HCB'
2015.10.26 20:35:41 5: [HCFU] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCFU] sensor 'd_Flur_unten.Fenster' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCFU] list of window sensors found: 'd_Flur_unten.Fenster  d_ECOMode HCFU'
2015.10.26 20:35:41 5: [HCW] sensor 'Fenster_Terrasse' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCW] sensor 'Fenster_Wohnzimmer_Ost' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCW] sensor 'Fenster_Kueche' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCW] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCW] list of window sensors found: 'd_ECOMode Fenster_Kueche Fenster_Wohnzimmer_Ost Fenster_Terrasse HCW'
2015.10.26 20:35:41 5: [HCFO] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCFO] sensor 'Fenster_Flur_oben' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCFO] list of window sensors found: 'Fenster_Flur_oben  d_ECOMode HCFO'
2015.10.26 20:35:41 5: [HCWK] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCWK] sensor 'CUL_FHTTK_Waschkeller' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:41 5: [HCWK] list of window sensors found: 'CUL_FHTTK_Waschkeller  d_ECOMode HCWK'
2015.10.26 20:35:41 5: [HCH] sensor 'CUL_FHTTK_Hobbyraum_Ost' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:41 5: [HCH] sensor 'CUL_FHTTK_Hobbyraum_links' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:41 5: [HCH] sensor 'CUL_FHTTK_Hobbyraum_rechts' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:41 5: [HCH] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCH] list of window sensors found: 'd_ECOMode CUL_FHTTK_Hobbyraum_rechts CUL_FHTTK_Hobbyraum_links CUL_FHTTK_Hobbyraum_Ost HCH'
2015.10.26 20:35:41 5: [HCKF] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCKF] sensor 'CUL_FHTTK_Kellerflur' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:41 5: [HCKF] list of window sensors found: 'CUL_FHTTK_Kellerflur  d_ECOMode HCKF'
2015.10.26 20:35:41 5: [HCD] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCD] list of window sensors found: 'd_ECOMode HCD'
2015.10.26 20:35:41 5: [HCO] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCO] sensor 'Fenster_Buero' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCO] list of window sensors found: 'Fenster_Buero  d_ECOMode HCO'
2015.10.26 20:35:41 5: [HCS] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCS] sensor 'Fenster_Schlafzimmer' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCS] list of window sensors found: 'Fenster_Schlafzimmer  d_ECOMode HCS'
2015.10.26 20:35:41 5: [HCKlo] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCKlo] sensor 'Fenster_Klo' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCKlo] list of window sensors found: 'Fenster_Klo  d_ECOMode HCKlo'
2015.10.26 20:35:41 3: Heating_Control_SetAllTemps() done!
2015.10.26 20:35:41 3: Heating_Control_SetTimer() for HCWK done!
2015.10.26 20:35:41 5: [HCWK] setting  Timer: HCWK_ 2015-10-26 19:00:00
2015.10.26 20:35:41 5: [HCWK] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCWK] sensor 'CUL_FHTTK_Waschkeller' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:41 5: [HCWK] list of window sensors found: 'CUL_FHTTK_Waschkeller  d_ECOMode HCWK'
2015.10.26 20:35:41 4: [HCWK] Heating recognized - switch in the past activated
2015.10.26 20:35:41 4: [HCWK] device type FHT: recognized, setModifier:desired-temp
2015.10.26 20:35:41 5: [HCWK] removing Timer: HCWK_
2015.10.26 20:35:41 3: Heating_Control_SetTimer() for HCW done!
2015.10.26 20:35:41 5: [HCW] setting  Timer: HCW_ 2015-10-26 19:00:00
2015.10.26 20:35:41 5: [HCW] sensor 'Fenster_Terrasse' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCW] sensor 'Fenster_Wohnzimmer_Ost' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCW] sensor 'Fenster_Kueche' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCW] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCW] list of window sensors found: 'd_ECOMode Fenster_Kueche Fenster_Wohnzimmer_Ost Fenster_Terrasse HCW'
2015.10.26 20:35:41 5: [HCW] setting  Timer: HCW_7 2015-10-26 22:30:00
2015.10.26 20:35:41 4: [HCW] setTimer - timer seems to be active today: 0123456|22:30|16
2015.10.26 20:35:41 4: [HCW] Heating recognized - switch in the past activated
2015.10.26 20:35:41 4: [HCW] device type CUL_HM:HM-TC-IT-WM-W-EU recognized, setModifier:desired-temp
2015.10.26 20:35:41 5: [HCW] removing Timer: HCW_
2015.10.26 20:35:41 5: [HCW] removing Timer: HCW_7
2015.10.26 20:35:41 3: Heating_Control_SetTimer() for HCS done!
2015.10.26 20:35:41 5: [HCS] setting  Timer: HCS_ 2015-10-26 18:00:00
2015.10.26 20:35:41 5: [HCS] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCS] sensor 'Fenster_Schlafzimmer' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCS] list of window sensors found: 'Fenster_Schlafzimmer  d_ECOMode HCS'
2015.10.26 20:35:41 5: [HCS] setting  Timer: HCS_2 2015-10-26 21:00:00
2015.10.26 20:35:41 4: [HCS] setTimer - timer seems to be active today: 0123456|21:00|16
2015.10.26 20:35:41 4: [HCS] Heating recognized - switch in the past activated
2015.10.26 20:35:41 4: [HCS] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.10.26 20:35:41 5: [HCS] removing Timer: HCS_2
2015.10.26 20:35:41 5: [HCS] removing Timer: HCS_
2015.10.26 20:35:41 3: Heating_Control_SetTimer() for HCO done!
2015.10.26 20:35:41 5: [HCO] setting  Timer: HCO_ 2015-10-26 19:00:00
2015.10.26 20:35:41 5: [HCO] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCO] sensor 'Fenster_Buero' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCO] list of window sensors found: 'Fenster_Buero  d_ECOMode HCO'
2015.10.26 20:35:41 4: [HCO] Heating recognized - switch in the past activated
2015.10.26 20:35:41 4: [HCO] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.10.26 20:35:41 5: [HCO] removing Timer: HCO_
2015.10.26 20:35:41 3: Heating_Control_SetTimer() for HCL done!
2015.10.26 20:35:41 5: [HCL] setting  Timer: HCL_ 2015-10-26 20:30:00
2015.10.26 20:35:41 5: [HCL] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCL] sensor 'Fenster_Leoni' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:41 5: [HCL] list of window sensors found: 'Fenster_Leoni  d_ECOMode HCL'
2015.10.26 20:35:40 4: [HCL] Heating recognized - switch in the past activated
2015.10.26 20:35:40 4: [HCL] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.10.26 20:35:40 5: [HCL] removing Timer: HCL_
2015.10.26 20:35:40 3: Heating_Control_SetTimer() for HCKlo done!
2015.10.26 20:35:40 5: [HCKlo] setting  Timer: HCKlo_ 2015-10-26 12:00:00
2015.10.26 20:35:40 5: [HCKlo] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCKlo] sensor 'Fenster_Klo' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCKlo] list of window sensors found: 'Fenster_Klo  d_ECOMode HCKlo'
2015.10.26 20:35:40 5: [HCKlo] setting  Timer: HCKlo_5 2015-10-26 22:30:00
2015.10.26 20:35:40 4: [HCKlo] setTimer - timer seems to be active today: 0123456|22:30|16
2015.10.26 20:35:40 4: [HCKlo] Heating recognized - switch in the past activated
2015.10.26 20:35:40 4: [HCKlo] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.10.26 20:35:40 5: [HCKlo] removing Timer: HCKlo_5
2015.10.26 20:35:40 5: [HCKlo] removing Timer: HCKlo_
2015.10.26 20:35:40 3: Heating_Control_SetTimer() for HCKF done!
2015.10.26 20:35:40 5: [HCKF] setting  Timer: HCKF_ 2015-10-26 19:00:00
2015.10.26 20:35:40 5: [HCKF] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCKF] sensor 'CUL_FHTTK_Kellerflur' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:40 5: [HCKF] list of window sensors found: 'CUL_FHTTK_Kellerflur  d_ECOMode HCKF'
2015.10.26 20:35:40 4: [HCKF] Heating recognized - switch in the past activated
2015.10.26 20:35:40 4: [HCKF] device type FHT: recognized, setModifier:desired-temp
2015.10.26 20:35:40 5: [HCKF] removing Timer: HCKF_
2015.10.26 20:35:40 3: Heating_Control_SetTimer() for HCH done!
2015.10.26 20:35:40 5: [HCH] setting  Timer: HCH_ 2015-10-26 19:00:00
2015.10.26 20:35:40 5: [HCH] sensor 'CUL_FHTTK_Hobbyraum_Ost' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:40 5: [HCH] sensor 'CUL_FHTTK_Hobbyraum_links' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:40 5: [HCH] sensor 'CUL_FHTTK_Hobbyraum_rechts' Reading/Attribute 'Window' is 'Closed'
2015.10.26 20:35:40 5: [HCH] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCH] list of window sensors found: 'd_ECOMode CUL_FHTTK_Hobbyraum_rechts CUL_FHTTK_Hobbyraum_links CUL_FHTTK_Hobbyraum_Ost HCH'
2015.10.26 20:35:40 4: [HCH] Heating recognized - switch in the past activated
2015.10.26 20:35:40 4: [HCH] device type FHT: recognized, setModifier:desired-temp
2015.10.26 20:35:40 5: [HCH] removing Timer: HCH_
2015.10.26 20:35:40 3: Heating_Control_SetTimer() for HCFU done!
2015.10.26 20:35:40 5: [HCFU] setting  Timer: HCFU_ 2015-10-26 19:00:00
2015.10.26 20:35:40 5: [HCFU] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCFU] sensor 'd_Flur_unten.Fenster' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCFU] list of window sensors found: 'd_Flur_unten.Fenster  d_ECOMode HCFU'
2015.10.26 20:35:40 4: [HCFU] Heating recognized - switch in the past activated
2015.10.26 20:35:40 4: [HCFU] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.10.26 20:35:40 5: [HCFU] removing Timer: HCFU_
2015.10.26 20:35:40 3: Heating_Control_SetTimer() for HCFO done!
2015.10.26 20:35:40 5: [HCFO] setting  Timer: HCFO_ 2015-10-26 19:00:00
2015.10.26 20:35:40 5: [HCFO] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCFO] sensor 'Fenster_Flur_oben' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCFO] list of window sensors found: 'Fenster_Flur_oben  d_ECOMode HCFO'
2015.10.26 20:35:40 4: [HCFO] Heating recognized - switch in the past activated
2015.10.26 20:35:40 4: [HCFO] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.10.26 20:35:40 5: [HCFO] removing Timer: HCFO_
2015.10.26 20:35:40 3: Heating_Control_SetTimer() for HCD done!
2015.10.26 20:35:40 5: [HCD] setting  Timer: HCD_ 2015-10-26 19:00:00
2015.10.26 20:35:40 5: [HCD] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCD] list of window sensors found: 'd_ECOMode HCD'
2015.10.26 20:35:40 4: [HCD] Heating recognized - switch in the past activated
2015.10.26 20:35:40 4: [HCD] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.10.26 20:35:40 5: [HCD] removing Timer: HCD_
2015.10.26 20:35:40 3: Heating_Control_SetTimer() for HCC done!
2015.10.26 20:35:40 5: [HCC] setting  Timer: HCC_ 2015-10-26 20:36:39
2015.10.26 20:35:40 5: [HCC] sensor 'Fenster_Carlotta' Reading/Attribute 'state' is 'open'
2015.10.26 20:35:40 5: [HCC] list of window sensors found: 'Fenster_Carlotta  d_ECOMode HCC'
2015.10.26 20:35:40 4: [HCC] Heating recognized - switch in the past activated
2015.10.26 20:35:40 4: [HCC] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.10.26 20:35:40 5: [HCC] removing Timer: HCC_
2015.10.26 20:35:40 3: Heating_Control_SetTimer() for HCB done!
2015.10.26 20:35:40 5: [HCB] setting  Timer: HCB_ 2015-10-26 19:30:00
2015.10.26 20:35:40 5: [HCB] sensor 'd_ECOMode' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCB] sensor 'Fenster_Bad' Reading/Attribute 'state' is 'closed'
2015.10.26 20:35:40 5: [HCB] list of window sensors found: 'Fenster_Bad d_ECOMode HCB'
2015.10.26 20:35:40 5: [HCB] setting  Timer: HCB_9 2015-10-26 22:00:00
2015.10.26 20:35:40 4: [HCB] setTimer - timer seems to be active today: 0123456|22:00|16
2015.10.26 20:35:39 1: PERL WARNING: Use of uninitialized value $timToSwitch in subtraction (-) at ./FHEM/98_WeekdayTimer.pm line 497.
2015.10.26 20:35:39 4: [HCB] Heating recognized - switch in the past activated
2015.10.26 20:35:39 4: [HCB] device type CUL_HM:HM-TC-IT-WM-W-EU recognized, setModifier:desired-temp
2015.10.26 20:35:39 5: [HCB] removing Timer: HCB_9
2015.10.26 20:35:39 5: [HCB] removing Timer: HCB_


Habe jetzt jeder einzelne Definition neu geladen, jetzt stimmt der state.

Werde spätestens Morgen berichten, ob es jetzt geht.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 26 Oktober 2015, 21:18:27
Hallo Dietmar,

auch danke für deine Mail, nach einem reload des neuen Test Modul bekomme ich diese Meldungen im log:


2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Initialize redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 36.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_InitHelper redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 55.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Set redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 66.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Get redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 85.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Undef redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 102.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Define redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 113.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Profile redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 177.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_SwitchingTime redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 244.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_daylistAsArray redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 280.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_EchteZeit redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 330.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_zeitErmitteln redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 362.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_gatherSwitchingTimes redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 373.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Language redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 396.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_GlobalDaylistSpec redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 417.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_SetTimerForMidnightUpdate redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 434.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_SetTimerOfDay redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 450.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_SetTimer redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 467.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_searchAktNext redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 534.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_DeleteTimer redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 578.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Update redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 583.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_isAnActiveTimer redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 640.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_isHeizung redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 654.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_FensterOffen redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 702.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Device_Schalten redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 788.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_tageAsHash redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 825.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Condition redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 834.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_TageAsCondition redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 846.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_Attr redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 863.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_SetParm redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 879.
2015.10.26 21:11:10 1: PERL WARNING: Subroutine WeekdayTimer_SetAllParms redefined at /opt/fhem/FHEM/98_WeekdayTimer.pm line 890.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 26 Oktober 2015, 21:20:20
Das ist normal, die Routinen wurden neu geladen, passt so.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Ascos am 26 Oktober 2015, 21:29:21
Zitat von: Dietmar63 am 26 Oktober 2015, 19:55:37
Sende mir deine Mail-Adresse, dann versorge ich dich mit dem Modul.
Weißt du, wie du es installieren kannst?

Dietmar

Du hast Post.
Wie würde ich die einzelnen Definitionen "neu" laden, wenn es bei mir auch soweit wäre?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 Oktober 2015, 00:52:26
Das Laden der Definition(modify oder restart fhem) ist wichtig, weil dadurch intern zusätzliche Informationen erzeugt werden, die für HC_setAllTemps() wichtig sind.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 27 Oktober 2015, 07:12:46
Guten Morgen!

Nach neustart waren erst alle Active jetzt kurz nach einem Schalt vorgang gleich wieder inactive:


Internals:
   DEF        Heiz_Bad_Ankleide 04:00|21.0 07:00|18 60|06:05|20.0 60|07:00|18
   DEVICE     Heiz_Bad_Ankleide
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       T_BAD_ANKLEIDE
   NR         135
   Profil 0: Sonntag 04:00:00 21.0, 06:05:00 20.0, 07:00:00 18
   Profil 1: Montag 04:00:00 21.0, 07:00:00 18
   Profil 2: Dienstag 04:00:00 21.0, 07:00:00 18
   Profil 3: Mittwoch 04:00:00 21.0, 07:00:00 18
   Profil 4: Donnerstag 04:00:00 21.0, 07:00:00 18
   Profil 5: Freitag 04:00:00 21.0, 07:00:00 18
   Profil 6: Samstag 04:00:00 21.0, 06:05:00 20.0, 07:00:00 18
   STATE      inactive
   TYPE       Heating_Control
   Readings:
     2015-10-27 06:28:48   disabled        0
     2015-10-27 07:00:00   nextUpdate      2015-10-28 04:00:00
     2015-10-27 07:00:00   nextValue       21.0
     2015-10-27 07:00:00   state           inactive
   SWITCHINGTIMES:
     04:00|21.0
     07:00|18
     60|06:05|20.0
     60|07:00|18
   Timer:
     T_bad_ankleide_1:
       HASH       T_BAD_ANKLEIDE
       MODIFIER   1
       NAME       T_BAD_ANKLEIDE_1
     T_bad_ankleide_2:
       HASH       T_BAD_ANKLEIDE
       MODIFIER   2
       NAME       T_BAD_ANKLEIDE_2
     T_bad_ankleide_4:
       HASH       T_BAD_ANKLEIDE
       MODIFIER   4
       NAME       T_BAD_ANKLEIDE_4
     T_bad_ankleide_settimerofday:
       HASH       T_BAD_ANKLEIDE
       MODIFIER   SetTimerOfDay
       NAME       T_BAD_ANKLEIDE_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         04:00:00   21.0
         06:05:00   20.0
         07:00:00   18
       1:
         04:00:00   21.0
         07:00:00   18
       2:
         04:00:00   21.0
         07:00:00   18
       3:
         04:00:00   21.0
         07:00:00   18
       4:
         04:00:00   21.0
         07:00:00   18
       5:
         04:00:00   21.0
         07:00:00   18
       6:
         04:00:00   21.0
         06:05:00   20.0
         07:00:00   18
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1445914800
       PARA       21.0
       TIME       04:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1445925600
       PARA       18
       TIME       07:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     3:
       EPOCH      1445922300
       PARA       20.0
       TIME       06:05
       TAGE:
         0
         6
     4:
       EPOCH      1445925600
       PARA       18
       TIME       07:00
       TAGE:
         0
         6
   Profile_idx:
     0:
       04:00:00   1
       06:05:00   3
       07:00:00   4
     1:
       04:00:00   1
       07:00:00   2
     2:
       04:00:00   1
       07:00:00   2
     3:
       04:00:00   1
       07:00:00   2
     4:
       04:00:00   1
       07:00:00   2
     5:
       04:00:00   1
       07:00:00   2
     6:
       04:00:00   1
       06:05:00   3
       07:00:00   4
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   room       Heizung_Steuerung
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 Oktober 2015, 08:06:34
hast du auch Protokolleinträge?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 27 Oktober 2015, 13:17:16
Bis jetzt läuft es ohne Probleme.
Es wurde richtig geschalten und keine Definition ist inactive.
Danke!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 27 Oktober 2015, 13:18:53
Zitat von: Dietmar63 am 27 Oktober 2015, 08:06:34
hast du auch Protokolleinträge?

Kann ich heute Abend hier posten, hatte gerade wieder 2 inactive!

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 Oktober 2015, 16:53:17
Zitat von: Steffen am 27 Oktober 2015, 13:18:53
Kann ich heute Abend hier posten, hatte gerade wieder 2 inactive!

Mfg Steffen

Hast du die neue Version des Moduls per Mail eingespielt?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 Oktober 2015, 22:22:53
Zitat von: Steffen am 27 Oktober 2015, 07:12:46
Guten Morgen!

Nach neustart waren erst alle Active jetzt kurz nach einem Schalt vorgang gleich wieder inactive:


Internals:
   DEF        Heiz_Bad_Ankleide 04:00|21.0 07:00|18 60|06:05|20.0 60|07:00|18
   DEVICE     Heiz_Bad_Ankleide
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       T_BAD_ANKLEIDE
   NR         135
   Profil 0: Sonntag 04:00:00 21.0, 06:05:00 20.0, 07:00:00 18
   Profil 1: Montag 04:00:00 21.0, 07:00:00 18
   Profil 2: Dienstag 04:00:00 21.0, 07:00:00 18
   Profil 3: Mittwoch 04:00:00 21.0, 07:00:00 18
   Profil 4: Donnerstag 04:00:00 21.0, 07:00:00 18
   Profil 5: Freitag 04:00:00 21.0, 07:00:00 18
   Profil 6: Samstag 04:00:00 21.0, 06:05:00 20.0, 07:00:00 18
   STATE      inactive
   TYPE       Heating_Control
   Readings:
     2015-10-27 06:28:48   disabled        0
     2015-10-27 07:00:00   nextUpdate      2015-10-28 04:00:00
     2015-10-27 07:00:00   nextValue       21.0
     2015-10-27 07:00:00   state           inactive
   SWITCHINGTIMES:
     04:00|21.0
     07:00|18
     60|06:05|20.0
     60|07:00|18
   Timer:
     T_bad_ankleide_1:
       HASH       T_BAD_ANKLEIDE
       MODIFIER   1
       NAME       T_BAD_ANKLEIDE_1
     T_bad_ankleide_2:
       HASH       T_BAD_ANKLEIDE
       MODIFIER   2
       NAME       T_BAD_ANKLEIDE_2
     T_bad_ankleide_4:
       HASH       T_BAD_ANKLEIDE
       MODIFIER   4
       NAME       T_BAD_ANKLEIDE_4
     T_bad_ankleide_settimerofday:
       HASH       T_BAD_ANKLEIDE
       MODIFIER   SetTimerOfDay
       NAME       T_BAD_ANKLEIDE_SetTimerOfDay
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         04:00:00   21.0
         06:05:00   20.0
         07:00:00   18
       1:
         04:00:00   21.0
         07:00:00   18
       2:
         04:00:00   21.0
         07:00:00   18
       3:
         04:00:00   21.0
         07:00:00   18
       4:
         04:00:00   21.0
         07:00:00   18
       5:
         04:00:00   21.0
         07:00:00   18
       6:
         04:00:00   21.0
         06:05:00   20.0
         07:00:00   18
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1445914800
       PARA       21.0
       TIME       04:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1445925600
       PARA       18
       TIME       07:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     3:
       EPOCH      1445922300
       PARA       20.0
       TIME       06:05
       TAGE:
         0
         6
     4:
       EPOCH      1445925600
       PARA       18
       TIME       07:00
       TAGE:
         0
         6
   Profile_idx:
     0:
       04:00:00   1
       06:05:00   3
       07:00:00   4
     1:
       04:00:00   1
       07:00:00   2
     2:
       04:00:00   1
       07:00:00   2
     3:
       04:00:00   1
       07:00:00   2
     4:
       04:00:00   1
       07:00:00   2
     5:
       04:00:00   1
       07:00:00   2
     6:
       04:00:00   1
       06:05:00   3
       07:00:00   4
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   room       Heizung_Steuerung


bei mir active - kein Problem



Save config ?
HeizungsKeller
Hifi
Kueche
Plots
Unsorted
Wohnzimmer
icoEverything Everything
Logfile
Commandref
Remote doc
Edit files
Select style
Event monitor

Internals:
   CFGFN
   DEF        Heiz_Bad_Ankleide 04:00|21.0 07:00|18 60|06:05|20.0 60|07:00|18
   DEVICE     Heiz_Bad_Ankleide
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       yy
   NR         491
   Profil 0: Sonntag 04:00:00 21.0, 06:05:00 20.0, 07:00:00 18
   Profil 1: Montag 04:00:00 21.0, 07:00:00 18
   Profil 2: Dienstag 04:00:00 21.0, 07:00:00 18
   Profil 3: Mittwoch 04:00:00 21.0, 07:00:00 18
   Profil 4: Donnerstag 04:00:00 21.0, 07:00:00 18
   Profil 5: Freitag 04:00:00 21.0, 07:00:00 18
   Profil 6: Samstag 04:00:00 21.0, 06:05:00 20.0, 07:00:00 18
   STATE      active
   TYPE       Heating_Control
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 28 Oktober 2015, 05:55:22
Guten Morgen!

Also heute Morgen waren alle Active obwohl gestern Abend vor dem Schalt Timer zu heute früh noch 2 Inactive waren, vielleicht klappt es ja jetzt.

Ich habe heute morgen diese Fehler Meldung gefunden und kann die vielleicht was damit zu tun haben?


2015.10.28 05:46:30 1: PERL WARNING: Argument "13.538929M-bM-\0M-^N" isn't numeric in division (/) at /opt/fhem/FHEM/99_SUNRISE_EL.pm line 128.
2015.10.28 05:46:30 3: stacktrace:
2015.10.28 05:46:30 3:     main::__ANON__                      called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (128)
2015.10.28 05:46:30 3:     main::_sr_alt                       called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (90)
2015.10.28 05:46:30 3:     main::sr_alt                        called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (375)
2015.10.28 05:46:30 3:     main::sunrise_abs                   called by /opt/fhem/FHEM/98_WeekdayTimer.pm (224)
2015.10.28 05:46:30 3:     main::WeekdayTimer_Profile          called by /opt/fhem/FHEM/98_WeekdayTimer.pm (169)
2015.10.28 05:46:30 3:     main::WeekdayTimer_Define           called by /opt/fhem/FHEM/98_Heating_Control.pm (74)
2015.10.28 05:46:30 3:     main::Heating_Control_Define        called by fhem.pl (3087)
2015.10.28 05:46:30 3:     main::CallFn                        called by fhem.pl (1731)
2015.10.28 05:46:30 3:     main::CommandModify                 called by fhem.pl (1053)
2015.10.28 05:46:30 3:     main::AnalyzeCommand                called by /opt/fhem/FHEM/01_FHEMWEB.pm (2100)
2015.10.28 05:46:30 3:     main::FW_fC                         called by /opt/fhem/FHEM/01_FHEMWEB.pm (683)
2015.10.28 05:46:30 3:     main::FW_answerCall                 called by /opt/fhem/FHEM/01_FHEMWEB.pm (438)
2015.10.28 05:46:30 3:     main::FW_Read                       called by fhem.pl (3087)
2015.10.28 05:46:30 3:     main::CallFn                        called by fhem.pl (652)
2015.10.28 05:46:30 1: PERL WARNING: Argument "13.538929M-bM-\0M-^N" isn't numeric in division (/) at /opt/fhem/FHEM/99_SUNRISE_EL.pm line 128.
2015.10.28 05:46:30 3: stacktrace:
2015.10.28 05:46:30 3:     main::__ANON__                      called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (128)
2015.10.28 05:46:30 3:     main::_sr_alt                       called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (90)
2015.10.28 05:46:30 3:     main::sr_alt                        called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (376)
2015.10.28 05:46:30 3:     main::sunset_abs                    called by /opt/fhem/FHEM/98_WeekdayTimer.pm (224)
2015.10.28 05:46:30 3:     main::WeekdayTimer_Profile          called by /opt/fhem/FHEM/98_WeekdayTimer.pm (169)
2015.10.28 05:46:30 3:     main::WeekdayTimer_Define           called by /opt/fhem/FHEM/98_Heating_Control.pm (74)
2015.10.28 05:46:30 3:     main::Heating_Control_Define        called by fhem.pl (3087)
2015.10.28 05:46:30 3:     main::CallFn                        called by fhem.pl (1731)
2015.10.28 05:46:30 3:     main::CommandModify                 called by fhem.pl (1053)
2015.10.28 05:46:30 3:     main::AnalyzeCommand                called by /opt/fhem/FHEM/01_FHEMWEB.pm (2100)
2015.10.28 05:46:30 3:     main::FW_fC                         called by /opt/fhem/FHEM/01_FHEMWEB.pm (683)
2015.10.28 05:46:30 3:     main::FW_answerCall                 called by /opt/fhem/FHEM/01_FHEMWEB.pm (438)
2015.10.28 05:46:30 3:     main::FW_Read                       called by fhem.pl (3087)
2015.10.28 05:46:30 3:     main::CallFn                        called by fhem.pl (652)


danke nochmal für eure Hilfe und Geduld...

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2015, 06:54:43
@Steefen:
Ja. Damit hat es garantiert zu tun.

Hast du die zugehörigen Definitionen hier veröffentlicht?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 28 Oktober 2015, 08:24:30
So, lief erstmal alles ohne Probleme.

Heute Morgen wurde wie geplant Bad und WZ/Küche auf 22 Grad gestellt und um 7:30 alles auf 16 Grad. Passt.

Jetzt kam ich gerade ins Büro und schaue nach und siehe da, wieder einige inactive :'(

Leider nichts im Log, bin aber auch auf Level 3.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 28 Oktober 2015, 09:13:29
So, ohne das irgend jemand etwas getan hat, oder fhem etwas geschalten hat, sind jetzt alles bis auf zwei auf inactiv  :'(
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2015, 19:00:20
Gib mir mal die Definitionen der timer, die bei dir auf inactive gehen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2015, 21:20:55
@Mitch, Steffen:

active/inactive - Problematik:
Durch einen dummen Zufall habe ich soeben die Situation nachstellen können.
Versuche jetzt eine Lösung für dieses Problem zu finden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 28 Oktober 2015, 21:32:38
Alles klar Dietmar, Danke.

Schalten tun sie korrekt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 28 Oktober 2015, 21:50:24
Hallo!

Das konnte ich mit Verbose 5 rausfiltern ich weiss nicht ob das vielleicht auch noch weiter hilft?!

Beide waren genau um diese zeit Inactive!


2015.10.28 21:06:00 5: [WZ] list of window sensors found: 'WZ'
2015.10.28 21:06:00 5: Cmd: >{my $days={};map{$days->{$_}=1}(0,6);;( 1 && (defined $days->{$wday}))}<
2015.10.28 21:06:00 5: Triggering WZ (3 changes)
2015.10.28 21:06:00 5: Notify loop for WZ nextUpdate: 2015-10-28 21:16:00
2015.10.28 21:06:00 5: statistics Statistik: Notify.261 Notification of 'WZ' received. Device not monitored.



2015.10.28 21:03:00 5: [Kinderzimmer] list of window sensors found: 'Kinderzimmer'
2015.10.28 21:03:00 5: Cmd: >{my $days={};map{$days->{$_}=1}(0,6);;( 1 && (defined $days->{$wday}))}<
2015.10.28 21:03:00 5: Triggering Kinderzimmer (3 changes)
2015.10.28 21:03:00 5: Notify loop for Kinderzimmer nextUpdate: 2015-10-29 05:03:00
2015.10.28 21:03:00 5: statistics Statistik: Notify.261 Notification of 'Kinderzimmer' received. Device not monitored.


Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2015, 23:14:03
Zitat von: Steffen am 28 Oktober 2015, 21:50:24
Hallo!

Das konnte ich mit Verbose 5 rausfiltern ich weiss nicht ob das vielleicht auch noch weiter hilft?!

Beide waren genau um diese zeit Inactive!


2015.10.28 21:06:00 5: [WZ] list of window sensors found: 'WZ'
2015.10.28 21:06:00 5: Cmd: >{my $days={};map{$days->{$_}=1}(0,6);;( 1 && (defined $days->{$wday}))}<
2015.10.28 21:06:00 5: Triggering WZ (3 changes)
2015.10.28 21:06:00 5: Notify loop for WZ nextUpdate: 2015-10-28 21:16:00
2015.10.28 21:06:00 5: statistics Statistik: Notify.261 Notification of 'WZ' received. Device not monitored.



2015.10.28 21:03:00 5: [Kinderzimmer] list of window sensors found: 'Kinderzimmer'
2015.10.28 21:03:00 5: Cmd: >{my $days={};map{$days->{$_}=1}(0,6);;( 1 && (defined $days->{$wday}))}<
2015.10.28 21:03:00 5: Triggering Kinderzimmer (3 changes)
2015.10.28 21:03:00 5: Notify loop for Kinderzimmer nextUpdate: 2015-10-29 05:03:00
2015.10.28 21:03:00 5: statistics Statistik: Notify.261 Notification of 'Kinderzimmer' received. Device not monitored.


Mfg Steffen

ich benötige von dir die Definition des HC zu diesem Fehler:

2015.10.28 05:46:30 1: PERL WARNING: Argument "13.538929M-bM-\0M-^N" isn't numeric in division (/) at /opt/fhem/FHEM/99_SUNRISE_EL.pm line 128.
2015.10.28 05:46:30 3: stacktrace:
2015.10.28 05:46:30 3:     main::__ANON__                      called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (128)
2015.10.28 05:46:30 3:     main::_sr_alt                       called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (90)
2015.10.28 05:46:30 3:     main::sr_alt                        called by /opt/fhem/FHEM/99_SUNRISE_EL.pm (376)
2015.10.28 05:46:30 3:     main::sunset_abs                    called by /opt/fhem/FHEM/98_WeekdayTimer.pm (224)


es scheint mir, dass irgendwie sunset_abs() verwendet wird, und vielleicht mit falschen Parametern aufgerufen wird. Das könnte ich überprüfen, wenn du die Definiton liefern würdest.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 28 Oktober 2015, 23:20:34
neue Version eingecheckt -bitte mal prüfen.
active/inactive auch verbessert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 29 Oktober 2015, 06:09:54
Guten Morgen,

also der Fehler war in der Global def. da hatte ich nochmal die Werte geändert und seit dem ist der Fehler weg von PERL WARNING: Argument "13.538929M-bM-\0M-^N" isn't numeric in division (/) at /opt/fhem/FHEM/99_SUNRISE_EL.pm line 128 !

Aber es bleibt trotzdem Inactive, ich werde mal gleich deine neue Version Testen!

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 29 Oktober 2015, 06:39:25
Glaub mir es wird viel besser werden
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Steffen am 29 Oktober 2015, 14:59:15
Zitat von: Dietmar63 am 29 Oktober 2015, 06:39:25
Glaub mir es wird viel besser werden

Ich glaube das ist es jetzt schon mit der neuesten Version...bis jetzt kein einziges Inactive und alles korrekt geschalten!

Mfg Steffen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 29 Oktober 2015, 16:45:22
Hi Dietmar, klasse Arbeit, tausend Dank!

Im Moment läuft alles top. Auch mein ECOscript geht endlich wieder (Temp wird bei Abwesenheit >2h um 2 Grad gesenkt und bei Rückkehr auf Soll gestellt).
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 29 Oktober 2015, 19:11:22
nichts zu danken.
ich muss für eure Geduld danken!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 29 Oktober 2015, 20:11:32
Nicht wirklich, Du "opferst" hier Deine Freizeit für uns...deswegen vielen Dank  ;D
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: jnewton957 am 08 November 2015, 07:57:56
Zitat von: Dietmar63 am 15 Oktober 2015, 20:48:13
nein,

hast du den Fehler einmal gehabt, nach einem Start, oder kommt er immer wieder?
kannst du die Versions-ID der Module
WeekdayTimer
Heating_Control

posten.

Hallo,

ich hatte die gleiche Warung:
nach dem Start von Fhem nach shutdown restart
# $Id: 98_WeekdayTimer.pm 9401 2015-10-07 21:22:54Z dietmar63 $
PERL WARNING: Use of uninitialized value $sollZeit in numeric le (<=) at ./FHEM/98_WeekdayTimer.pm line 602


Mit der neuen Version upd 98_WeekdayTimer.pm ist (bisher) die Warnung nach dem Neustart nicht mehr da.

Danke für das update !!

Jörg
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: mgernoth am 15 November 2015, 13:09:45
Hallo,

mit dem Umstieg auf Featurelevel 5.7 in Commit 9893 geht WeekdayTimer kaputt, da es intern noch @ und % benutzt.
Habe das bei mir lokal so behoben:


Index: FHEM/98_WeekdayTimer.pm
===================================================================
--- FHEM/98_WeekdayTimer.pm     (revision 9899)
+++ FHEM/98_WeekdayTimer.pm     (working copy)
@@ -810,7 +810,7 @@
   #modifier des Zieldevices auswaehlen
   my $setModifier = WeekdayTimer_isHeizung($hash);

-  $command = "set @ " . $setModifier . " %";
+  $command = "set \$NAME " . $setModifier . " \$EVENT";
   $command = $hash->{COMMAND}   if (defined $hash->{COMMAND});

   my $activeTimer = 1;


Sollte am besten relativ Zeitnah auch im Repository behoben werden, bevor Rudi die 5.7 freigibt.

Viele Grüße
  Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: thi69 am 15 November 2015, 20:08:11
Hallo Dietmar,

habe heute Fensterkontakte zu Heating_Control hinzugefügt, bekomme aber folgende Fehlermeldung im Log:

2015.11.15 19:13:01 3: [HC_Schlaf] TYPE 'EnOcean' of FensterSchlaf not yet supported, FensterSchlaf ignored - inform maintainer

2015-11-15_15:14:33 FensterSchlaf open
2015-11-15_15:19:21 FensterSchlaf closed

Können die EnOcean Fensterkontakte auch unterstützt werden?

Gruß Thomas
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 15 November 2015, 21:35:46
ja, das lässt sich machen, bitte mal die Definition des Fenssterkontakts mit list schicken.


Internals:
   CODE       64b840
   CUL_0_MSGCNT 5736
   CUL_0_RAWMSG T64B84082
   CUL_0_RSSI -63
   CUL_0_TIME 2015-11-15 21:32:57
   DEF        64b840
   IODev      CUL_0
   LASTInputDev CUL_0
   MSGCNT     5736
   NAME       Terrassentuer
   NR         53
   OPEN       0
   PREVSTATE  Closed
   PREVTIMESTAMP 1447619320
   STATE      Closed
   TYPE       CUL_FHTTK
   Prev:
     STATE      02
     TIMESTAMP  1447619577
   Readings:
     2015-11-15 21:32:57   Battery         ok
     2015-11-15 09:56:23   Previous        Open
     2015-11-15 21:32:57   Reliability     ok
     2015-11-15 21:32:57   Window          Closed
     2015-11-15 21:32:57   state           Closed
Attributes:
   IODev      CUL_0
   devStateIcon Closed:fts_window_1w@green Open:fts_window_1w_open@red
   group      Commands
   room       HeizungsKeller
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: thi69 am 15 November 2015, 21:47:56
Hallo Dietmar,

hier die Definition


Internals:
   CHANGED
   DEF        xxxxxxxx
   IODev      TCM_ESP3_0
   LASTInputDev TCM_ESP3_0
   MSGCNT     4
   NAME       FensterSchlaf
   NR         90
   NTFY_ORDER 50-FensterSchlaf
   STATE      open
   TCM_ESP3_0_DestinationID FFFFFFFF
   TCM_ESP3_0_MSGCNT 4
   TCM_ESP3_0_PacketType 1
   TCM_ESP3_0_RSSI -76
   TCM_ESP3_0_ReceivingQuality good
   TCM_ESP3_0_RepeatingCounter 0
   TCM_ESP3_0_SubTelNum 3
   TCM_ESP3_0_TIME 2015-11-15 21:38:48
   TYPE       EnOcean
   Readings:
     2015-11-15 21:38:48   state           open
Attributes:
   IODev      TCM_ESP3_0
   devStateIcon open:fts_window_1w_open@red closed:fts_window_1w
   event-on-change-reading *
   icon       fts_window_1w
   manufID    7FF
   room       04_Schlaf,EnOcean,Handbedienung
   subType    contact


Danke im Voraus
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 16 November 2015, 00:51:20
habe was eingebaut - gebe aber frühestens morgen frei, weil ich noch etwas mehr machen musste.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Joker2002 am 16 November 2015, 20:45:31
Bin eifrig den Threat am Mitlesen und konnte letzte Woche meine Hommatic Heizkörperthermostate und Fenster und Türen Kontakte in Betrieb nehmen.

Danach wollte ich mir mit diesem Modul eine entsprechende Heizsteuerung realisieren und habe gem. dem Threat und dem Wiki folgende Definition erstellt:

define Heizung_Schlafzimmer Heating_Control HM_Thermostat 12345|06:15|22 12345|06:30|19 67|09:00|22 67|09:30|19 18:00|21 22:00|19 (ReadingsVal("HCAutomatik", "state", "") eq "on")
attr Heizung_Schlafzimmer alias Schlafzimmer
attr Heizung_Schlafzimmer group Heizplan
attr Heizung_Schlafzimmer room Heizung




define HCAutomatik dummy
attr HCAutomatik alias Heizungsautomatik
attr HCAutomatik devStateIcon on:general_an off:general_aus
attr HCAutomatik group Automatik
attr HCAutomatik icon sani_heating_automatic
attr HCAutomatik room Heizung
attr HCAutomatik sortby 1
attr HCAutomatik webCmd on:off



Fensterkontakt in Verbindung mit Heating_Control:


define Fenster.Status.Schlafzimmer.Matthias DOIF ([Fensterkontakt2] eq "open") (set HCB disbale) DOELSE (set HCB enable)


hier mein Themrostat:

Internals:
   DEF        3AFFE6
   IODev      hmusb
   LASTInputDev hmusb
   MSGCNT     87
   NAME       HM_Thermostat
   NR         143
   NTFY_ORDER 50-HM_Thermostat
   STATE      CMDs_done
   STILLDONETIME 0
   TYPE       CUL_HM
   channel_01 HM_Thermostat_Weather
   channel_02 HM_Thermostat_Climate
   channel_03 HM_Thermostat_WindowRec
   channel_04 HM_Thermostat_Clima
   channel_05 HM_Thermostat_ClimaTeam
   channel_06 HM_Thermostat_remote
   hmusb_MSGCNT 87
   hmusb_RAWMSG E3AFFE6,0000,63BED036,FF,FFC5,8286103AFFE60000000AA0D40B0E40
   hmusb_RSSI -59
   hmusb_TIME 2015-11-16 20:37:51
   lastMsg    No:82 - t:10 s:3AFFE6 d:000000 0AA0D40B0E40
   protLastRcv 2015-11-16 20:37:51
   rssi_at_hmusb avg:-59.64 min:-64 max:-57 lst:-59 cnt:87
   Readings:
     2015-11-16 16:59:37   Activity        alive
     2015-11-14 13:19:48   CommandAccepted yes
     2015-11-09 16:48:04   D-firmware      1.4
     2015-11-09 16:48:04   D-serialNr      MEQ0446891
     2015-11-09 16:48:11   PairedTo        0x34F22A
     2015-11-09 16:48:11   R-backOnTime    10 s
     2015-11-09 16:48:11   R-burstRx       on
     2015-11-09 16:48:11   R-cyclicInfoMsg on
     2015-11-09 16:48:11   R-cyclicInfoMsgDis 0
     2015-11-09 16:48:11   R-pairCentral   0x34F22A
     2015-11-09 16:48:11   RegL_00:        01:01 02:01 09:01 0A:34 0B:F2 0C:2A 0E:0A 0F:00  11:00 12:15 16:01 18:00 19:00 1A:00 00:00
     2015-11-09 20:32:42   RegL_07:
     2015-11-16 20:37:51   actuator        14
     2015-11-14 13:19:49   battery         ok
     2015-11-16 20:37:51   batteryLevel    2.6
     2015-11-16 20:37:51   desired-temp    20.0
     2015-11-16 20:37:51   measured-temp   21.2
     2015-11-16 20:37:51   motorErr        ok
     2015-11-05 20:48:42   powerOn         2015-11-05 20:48:42
     2015-11-05 20:48:42   recentStateType info
     2015-11-16 08:06:02   state           CMDs_done
     2015-11-16 08:06:02   time-request    -
   Helper:
     HM_CMDNR   130
     mId        0095
     rxType     140
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Io:
       newChn     +3AFFE6,00,00,00
       nextSend   1447702671.45985
       prefIO
       rxt        2
       vccu
       p:
         3AFFE6
         00
         00
         00
     Mrssi:
       mNo        82
       Io:
         hmusb      -57
     Prt:
       bErr       0
       sProc      0
     Q:
       qReqConf
       qReqStat
     Role:
       dev        1
       prs        1
     Rssi:
       At_hmusb:
         avg        -59.6436781609195
         cnt        87
         lst        -59
         max        -57
         min        -64
     Shregw:
       07         04
Attributes:
   IODev      hmusb
   actCycle   000:10
   actStatus  alive
   alias      Heizung Schlafzimmer
   autoReadReg 4_reqStatus
   expert     2_full
   firmware   1.4
   icon       hc_wht_regler
   model      HM-CC-RT-DN
   room       Heizung
   serialNr   MEQ0446891
   subType    thermostat
   webCmd     getConfig:clear msgEvents:burstXmit



..und hier mein Fensterkontakt:

Internals:
   DEF        3C8752
   IODev      hmusb
   LASTInputDev hmusb
   MSGCNT     10
   NAME       Fensterkontakt2
   NR         153
   NTFY_ORDER 50-Fensterkontakt2
   STATE      closed
   TYPE       CUL_HM
   hmusb_MSGCNT 10
   hmusb_RAWMSG E3C8752,0000,639AFBD2,FF,FFC0,E0A6103C875234F22A06010000
   hmusb_RSSI -64
   hmusb_TIME 2015-11-16 19:58:43
   lastMsg    No:E0 - t:10 s:3C8752 d:34F22A 06010000
   protLastRcv 2015-11-16 19:58:43
   protResnd  1 last_at:2015-11-16 17:09:20
   protSnd    11 last_at:2015-11-16 19:58:43
   protState  CMDs_done
   rssi_at_hmusb avg:-62.4 min:-64 max:-62 lst:-64 cnt:10
   Readings:
     2015-11-16 19:59:37   Activity        alive
     2015-11-10 00:02:54   CommandAccepted no
     2015-11-10 00:00:11   D-firmware      1.0
     2015-11-10 00:00:11   D-serialNr      MEQ0752267
     2015-11-16 18:02:53   PairedTo        0x34F22A
     2015-11-10 00:02:53   R-cyclicInfoMsg on
     2015-11-16 18:02:54   R-eventDlyTime  0 s
     2015-11-10 00:02:53   R-pairCentral   0x34F22A
     2015-11-10 00:02:53   R-sabotageMsg   on
     2015-11-16 18:02:54   R-sign          on
     2015-11-16 18:02:53   RegL_00:          02:01 09:01 0A:34 0B:F2 0C:2A 10:01 14:06 00:00
     2015-11-16 18:02:54   RegL_01:          08:01 20:9C 21:00 30:06 00:00
     2015-11-10 00:00:12   aesCommToDev    ok
     2015-11-10 00:00:12   aesKeyNbr       00
     2015-11-16 19:58:43   alive           yes
     2015-11-16 19:58:43   battery         ok
     2015-11-16 19:58:43   contact         closed (to vccu)
     2015-11-16 19:58:43   recentStateType info
     2015-11-16 19:58:43   sabotageError   off
     2015-11-16 19:58:43   state           closed
     2015-11-09 23:57:12   trigDst_broadcast noConfig
     2015-11-14 12:01:40   trigDst_vccu    noConfig
     2015-11-14 12:01:40   trigger_cnt     112
   Helper:
     HM_CMDNR   224
     cSnd       0134F22A3C875201040000000001,0134F22A3C87520103
     mId        00C7
     peerIDsRaw ,00000000
     rxType     28
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Io:
       newCh      1
       newChn     +3C8752,00,00,00
       nextSend   1447700323.30038
       rxt        2
       vccu       vccu
       p:
         3C8752
         00
         00
         00
       prefIO:
         hmusb
     Mrssi:
       mNo        E0
       Io:
         hmusb      -62
     Prt:
       bErr       0
       sProc      0
       sleeping   0
       Rspwait:
     Q:
       qReqConf
       qReqStat
     Role:
       chn        1
       dev        1
     Rpt:
       IO         hmusb
       flg        A
       ts         1447700323.22708
       ack:
         HASH(0x1804680)
         E0800234F22A3C875200
     Rssi:
       At_hmusb:
         avg        -62.4
         cnt        10
         lst        -64
         max        -62
         min        -64
     Shadowreg:
Attributes:
   IODev      hmusb
   IOgrp      vccu:hmusb
   actCycle   000:50
   actStatus  alive
   alias      Fensterkontakt Schlafzimmer
   autoReadReg 4_reqStatus
   expert     2_full
   firmware   1.0
   icon       control_1
   model      HM-SEC-SCo
   peerIDs    00000000,
   room       Homematic
   serialNr   MEQ0752267
   subType    threeStateSensor

..aber irgendwie schaltet meinem Homematic Heizkörperthermostat nicht; d. h. zu den entsprechenden Uhrzeiten erfolgt Temperatureinstellung bzw es wird auch in Verbindung des Fensterkontaktes kein "disable" Funktion ausgelöst.

Fensterkonakt und Thermostat lassen sich "manuell" über FHEM jedoch ansteuern bzw. ablesen.

Kann jemand anhand meiner Daten ersehen wo ich einen Fehler gemacht habe ?

Bin für Tipps dankbar :)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Bennemannc am 16 November 2015, 21:50:54
Hallo,

was ist HCB bzw. wo ist die Definition davon ? Was wird da enabled oder disabled ?
Wenn es "nur" darum geht, ein Wochenprogramm ablaufen zu lassen und auf Fenster open zu reagieren, dann kann man das mit peering (Thermostat mit Fenster) und die Temperaturen im Thermostat hinterlegen. Das Modul ist - so wie ich es verstehe - gemacht um eine Therme zu steuern.
Ich nutze z.B. HCS um die Therme abzuschalten wenn alle Thermostate fast zu sind.

Gruß Christoph
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 17 November 2015, 00:48:11
Zitat von: thi69 am 15 November 2015, 21:47:56
Hallo Dietmar,

hier die Definition


Internals:
   CHANGED
   DEF        xxxxxxxx
   IODev      TCM_ESP3_0
   LASTInputDev TCM_ESP3_0
   MSGCNT     4
   NAME       FensterSchlaf
   NR         90
   NTFY_ORDER 50-FensterSchlaf
   STATE      open
   TCM_ESP3_0_DestinationID FFFFFFFF
   TCM_ESP3_0_MSGCNT 4
   TCM_ESP3_0_PacketType 1
   TCM_ESP3_0_RSSI -76
   TCM_ESP3_0_ReceivingQuality good
   TCM_ESP3_0_RepeatingCounter 0
   TCM_ESP3_0_SubTelNum 3
   TCM_ESP3_0_TIME 2015-11-15 21:38:48
   TYPE       EnOcean
   Readings:
     2015-11-15 21:38:48   state           open
Attributes:
   IODev      TCM_ESP3_0
   devStateIcon open:fts_window_1w_open@red closed:fts_window_1w
   event-on-change-reading *
   icon       fts_window_1w
   manufID    7FF
   room       04_Schlaf,EnOcean,Handbedienung
   subType    contact


Danke im Voraus

ENOCEAN sollte funktionieren
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Joker2002 am 17 November 2015, 07:17:44
HCB ist natürlich beim mir falsch. Das ist noch ein Restbestandteil aus dem original Code.
Ich habe diesen bei mir in FHEM ersetzt durch "Heizung_Schlafzimmer"

So wie ich das lese ist das Modul jedoch nicht nur für die Heizungsanlage sondern auch für das Steuern von Heizungsthermostaten möglich.

Was mich eben verwundert ist, dass das Modul überhaupt nicht mit meinem Homematic Heizungsthermostat läuft. Es senkt bzw. hebt die Temperatur nicht und bei "Fenster auf und zu" gibt es auch keine Veränderung.

Ich bin echt ratlos  :-\
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 17 November 2015, 07:29:02
SetzeSetze bitte mal für dein HC verbose 5
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Joker2002 am 17 November 2015, 07:35:04
ok mache ich heute Abend und bereichte dann, danke  :)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Bennemannc am 17 November 2015, 19:14:38
Hallo,

na ja - die Temperatur steht bei HM nicht am Gerät sondern im Kanal Clima. Also müsstest Du die Temperaturen nicht an HM_Thermostat sondern an HM_Thermostat_Clima senden.
Wie schon gesagt - das macht für mich nicht wirklich Sinn. Das kann das Thermostat zusammen mit dem Fensterkontakt eigenständig abarbeiten. Dadurch wir Rechnen- und Funkzeit von fhem reduziert. Zudem läuft das dann auch, wenn fhem ausfällt.

Gruß Christoph
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tekki am 17 November 2015, 20:22:30
Hallo Dietmar,

eine Frage. Muss in Bezug auf die Anpassung für Version 5.7 von Dir noch etwas angepasst werden, oder ist dies in die gestrige Anpassung eingeflossen?

Danke für Deine super Arbeit und das tolle Modul.


Grüße
Ralph
 
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: thi69 am 17 November 2015, 21:08:37
Habe eben ein Update gemacht, aber das Heating_Control Modul war nicht dabei.

Dafür läuft das Wetter Modul 59_Weather nicht mehr. :(
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tekki am 17 November 2015, 21:15:39
Hallo thi69,

versuche mit attr global featurelevel 5.6 den Featurelevel umzustellen. Dann sollte es wieder funktionieren. So habe ich es in einem anderen Beitrag gelesen.


Grüße
Ralph
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Bennemannc am 17 November 2015, 21:19:18
Hallo,

das wird aber nicht viel helfen. Morgen wird in fheminfo der featurelevel fix auf 5.7 gesetzt (laut Rudi). Die Lösung ist - suchen .. es gibt mittlerweile zig Meldungen wegen dem Wettermodul. Da muss ein Perl Modul nachinstalliert werden - zumindest um auch in der Zukunft auf der sicheren Seite zu sein.

Gruß Christoph

Edit: nach einem Hinweis vom ph1959de
ZitatChristoph, ich denke (und hoffe), das hast Du falsch verstanden. Der "release" wird fix auf 5.7 gesetzt. Der ursprüngliche / zwischenzeitliche (Patch-)Vorschlag von betateilchen, "release" auf einen eventuell eingestellten "featurelevel" zu setzen ist vermutlich der Grund für Deine Annahme.
Wenn mit jetzt noch jemand erklärt, wo der Unterschied liegt - Rudi sprach in einigen Mitteilungen auch von Featurelevel und nicht von Release.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tekki am 17 November 2015, 21:23:09
Okay,
dass wusste ich nicht. Dachte das dies noch die Umgehungslösung ist. Wohl nur noch bis morgen.
Ich werde dann wohl noch bis zum Wochenende mit dem Update auf 5.7 warten. Unter der Woche habe ich leider nicht soviel Zeit um Probleme zu beheben. Da es nun kalt werden soll muss die Heizungssteuerung funktionieren. Sonst droht Ärger mit der Regierung :-)


Grüße
Ralph
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: thi69 am 17 November 2015, 22:04:25
Vielen Dank für die Info, nach der Nachinstallation des nötigen Modules auf dem RPi (Danke an JoWiemann im anderen Beitrag) läuft das Wetter wieder. :)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 17 November 2015, 23:10:58
Zitat von: thi69 am 17 November 2015, 21:08:37
Habe eben ein Update gemacht, aber das Heating_Control Modul war nicht dabei.

Dafür läuft das Wetter Modul 59_Weather nicht mehr. :(

Aber WeekdayTimer war bestimmt dabei. Und HC ruft viel von WeekdayTimer auf
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: thi69 am 17 November 2015, 23:29:23
Hallo Dietmar,

dann gehts noch nicht, im Log steht immer noch:

2015.11.17 22:30:00 3: [HC_Schlaf] TYPE 'EnOcean' of FensterSchlaf not yet supported, FensterSchlaf ignored - inform maintainer
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 November 2015, 00:16:20
Bitte noch einmal probieren.
Ich hatte EnOcean  nicht richtig geschrieben.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ph1959de am 18 November 2015, 07:57:02
Zitat von: Bennemannc am 17 November 2015, 21:19:18
das wird aber nicht viel helfen. Morgen wird in fheminfo der featurelevel fix auf 5.7 gesetzt (laut Rudi).
Christoph, ich denke (und hoffe), das hast Du falsch verstanden. Der "release" wird fix auf 5.7 gesetzt. Der ursprüngliche / zwischenzeitliche (Patch-)Vorschlag von betateilchen, "release" auf einen eventuell eingestellten "featurelevel" zu setzen ist vermutlich der Grund für Deine Annahme.

Nachtrag: falls Du meinen Schlussfolgerungen zustimmst, wäre es vielleicht gut, Du änderst Deinen Beitrag, damit die falsche Information nicht die Runde macht.

Peter
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: thi69 am 18 November 2015, 19:02:24
Hallo Dietmar,

nein geht leider noch nicht. Ich war mal so frei in Dein Modul 98_WeekdayTimer.pm mit nano zu schauen.

Bin zwar nicht der Spezialist wie Du, aber müsste der EnOcean Fensterkontakt in dieser Liste auftauchen?


my %contacts =  ( "CUL_FHTTK"       => { "READING" => "Window",          "STATUS" => "(Open)",        "MODEL" => "r" },
                    "CUL_HM"          => { "READING" => "state",           "STATUS" => "(open|tilted)", "MODEL" => "r" },
                    "MAX"             => { "READING" => "state",           "STATUS" => "(open.*)",      "MODEL" => "r" },
                    "WeekdayTimer"    => { "READING" => "delayedExecution","STATUS" => "^1\$",          "MODEL" => "a" },
                    "Heating_Control" => { "READING" => "delayedExecution","STATUS" => "^1\$",          "MODEL" => "a" }
                  );


Gruß Thomas :D
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 November 2015, 19:05:13
Ja, korrekt
Dort habe ich ihn auch aufgenommen.

Ich schau nachher warum er nicht angekommen ist.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: thi69 am 18 November 2015, 19:13:00
Hallo Dietmar,

das steht im Kopf vom Modul, das ich eben upgedatet habe.
# $Id: 98_WeekdayTimer.pm 9925 2015-11-17 23:15:20Z dietmar63 $
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Joker2002 am 18 November 2015, 21:32:14
Hallo,

habe jetzt mal ein Tag mit Verbose 5 meine Berichte gesammelt. Das ist dabei rausgekommen (sagt mir als Laie leider nicht viel:/):

2015.11.17 00:00:05 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.17 00:00:05 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.17 00:00:05 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.17 00:00:05 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.17 18:00:00 5: [Heizung_Schlafzimmer] list of window sensors found: 'Heizung_Schlafzimmer'
2015.11.17 18:00:00 4: [Heizung_Schlafzimmer] Update   - timer seems to be active today: 0123456|18:00|21
2015.11.17 18:00:00 4: [Heizung_Schlafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.11.17 18:00:00 4: [Heizung_Schlafzimmer] aktParam:21.0 newParam:21.0 - is  not disabled
2015.11.17 22:00:00 5: [Heizung_Schlafzimmer] list of window sensors found: 'Heizung_Schlafzimmer'
2015.11.17 22:00:00 4: [Heizung_Schlafzimmer] Update   - timer seems to be active today: 0123456|22:00|19
2015.11.17 22:00:00 4: [Heizung_Schlafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.11.17 22:00:00 4: [Heizung_Schlafzimmer] aktParam:21.0 newParam:19.0 - is  not disabled
2015.11.17 22:00:00 4: [Heizung_Schlafzimmer] command: set @ desired-temp % executed
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] removing Timer: Heizung_Schlafzimmer_6
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] removing Timer: Heizung_Schlafzimmer_4
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] removing Timer: Heizung_Schlafzimmer_1
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] removing Timer: Heizung_Schlafzimmer_3
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] removing Timer: Heizung_Schlafzimmer_2
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] removing Timer: Heizung_Schlafzimmer_5
2015.11.18 00:00:05 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.18 00:00:05 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.18 00:00:05 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.18 00:00:05 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 07:06:37 17:14:54 Mittwoch
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 09:00:00 22, 09:30:00 19, 18:00:00 21, 22:00:00 19 (Profil 0: Sonntag)
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 06:15:00 22, 06:30:00 19, 18:00:00 21, 22:00:00 19 (Profil 1: Montag)
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 06:15:00 22, 06:30:00 19, 18:00:00 21, 22:00:00 19 (Profil 2: Dienstag)
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 06:15:00 22, 06:30:00 19, 18:00:00 21, 22:00:00 19 (Profil 3: Mittwoch)
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 06:15:00 22, 06:30:00 19, 18:00:00 21, 22:00:00 19 (Profil 4: Donnerstag)
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 06:15:00 22, 06:30:00 19, 18:00:00 21, 22:00:00 19 (Profil 5: Freitag)
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 09:00:00 22, 09:30:00 19, 18:00:00 21, 22:00:00 19 (Profil 6: Samstag)
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] 09:00:00 22, 09:30:00 19 (Profil 7: Wochenende)
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] Heating recognized - switch in the past activated
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] setTimer - timer seems to be active today: 12345|06:15|22
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_1 2015-11-18 06:15:00
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] setTimer - timer seems to be active today: 12345|06:30|19
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_2 2015-11-18 06:30:00
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_3 2015-11-18 09:00:00
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_4 2015-11-18 09:30:00
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] setTimer - timer seems to be active today: 0123456|18:00|21
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_5 2015-11-18 18:00:00
2015.11.18 00:00:05 4: [Heizung_Schlafzimmer] setTimer - timer seems to be active today: 0123456|22:00|19
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_6 2015-11-18 22:00:00
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] removing Timer: Heizung_Schlafzimmer_SetTimerOfDay
2015.11.18 00:00:05 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_SetTimerOfDay 2015-11-19 00:00:05
2015.11.18 06:15:00 5: [Heizung_Schlafzimmer] list of window sensors found: 'Heizung_Schlafzimmer'
2015.11.18 06:15:00 4: [Heizung_Schlafzimmer] Update   - timer seems to be active today: 12345|06:15|22
2015.11.18 06:15:00 4: [Heizung_Schlafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.11.18 06:15:00 4: [Heizung_Schlafzimmer] aktParam:21.0 newParam:22.0 - is  not disabled
2015.11.18 06:15:00 4: [Heizung_Schlafzimmer] command: set @ desired-temp % executed
2015.11.18 06:30:00 5: [Heizung_Schlafzimmer] list of window sensors found: 'Heizung_Schlafzimmer'
2015.11.18 06:30:00 4: [Heizung_Schlafzimmer] Update   - timer seems to be active today: 12345|06:30|19
2015.11.18 06:30:00 4: [Heizung_Schlafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.11.18 06:30:00 4: [Heizung_Schlafzimmer] aktParam:21.0 newParam:19.0 - is  not disabled
2015.11.18 06:30:00 4: [Heizung_Schlafzimmer] command: set @ desired-temp % executed
2015.11.18 18:00:00 5: [Heizung_Schlafzimmer] list of window sensors found: 'Heizung_Schlafzimmer'
2015.11.18 18:00:00 4: [Heizung_Schlafzimmer] Update   - timer seems to be active today: 0123456|18:00|21
2015.11.18 18:00:00 4: [Heizung_Schlafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.11.18 18:00:00 4: [Heizung_Schlafzimmer] aktParam:21.0 newParam:21.0 - is  not disabled
2015.11.18 19:49:42 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.18 19:49:42 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.18 19:49:42 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.18 19:49:42 3: [Heizung_Schlafzimmer] "7" in daylist now means $we(weekend) - see dokumentation!!!
2015.11.18 19:49:51 4: [Heizung_Schlafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.11.18 19:49:51 4: [Heizung_Schlafzimmer] Heating recognized - switch in the past activated
2015.11.18 19:49:51 4: [Heizung_Schlafzimmer] setTimer - timer seems to be active today: 0123456|22:00|19
2015.11.18 19:49:51 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_6 2015-11-18 22:00:00
2015.11.18 19:49:51 5: [Heizung_Schlafzimmer] list of window sensors found: 'Heizung_Schlafzimmer'
2015.11.18 19:49:51 5: [Heizung_Schlafzimmer] setting  Timer: Heizung_Schlafzimmer_5 2015-11-18 18:00:00
2015.11.18 19:49:51 5: [Heizung_Schlafzimmer] list of window sensors found: 'Heizung_Schlafzimmer'
2015.11.18 19:49:51 4: [Heizung_Schlafzimmer] Update   - timer seems to be active today: 0123456|18:00|21
2015.11.18 19:49:51 4: [Heizung_Schlafzimmer] device type CUL_HM:HM-CC-RT-DN recognized, setModifier:desired-temp
2015.11.18 19:49:51 4: [Heizung_Schlafzimmer] aktParam:21.0 newParam:21.0 - is  not disabled


Ich sehe, dass meine Wocheneinstellung im Homematic Thermostat auch aufgenommen worden sind, jedoch schlatet das Thermostat nicht danach; ebensowenig registriert es offene Fenster mittels meines Fenster/Tür Kontaktes. Liegt es vielleicht daran, dass ich das Thermostat noch auf Automatik stehen habe ? Muss ich das auf "Manuell" umstellen ? Konnte hierüber nichts im Wiki erlesen. Hier mal mein Logfile des HM_Thermostat_Clima  meines Thermostates:


CommandAccepted

yes

2015-11-14 13:19:49


R-boostPos

80 %

2015-11-09 16:48:19


R-btnNoBckLight

off

2015-11-09 16:48:19


R-dayTemp

21 C

2015-11-09 16:48:19


R-daylightSaveTime

on

2015-11-09 16:48:19


R-modePrioManu

all

2015-11-09 16:48:19


R-modePrioParty

all

2015-11-09 16:48:19


R-nightTemp

17 C

2015-11-09 16:48:19


R-noMinMax4Manu

off

2015-11-09 16:48:19


R-regAdaptive

on

2015-11-09 16:48:19


R-showInfo

time

2015-11-09 16:48:19


R-sign

off

2015-11-09 16:48:15


R-tempOffset

0.0K

2015-11-09 16:48:19


R-valveOffsetRt

0 %

2015-11-09 16:48:19


R-winOpnBoost

off

2015-11-09 16:48:19


R_0_tempListSat

06:00 17.0 22:00 21.0 24:00 17.0

2015-11-09 17:01:09


R_1_tempListSun

06:00 17.0 22:00 21.0 24:00 17.0

2015-11-09 17:01:09


R_2_tempListMon

06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0

2015-11-09 17:01:09


R_3_tempListTue

06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0

2015-11-09 17:01:09


R_4_tempListWed

06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0

2015-11-09 17:01:09


R_5_tempListThu

06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0

2015-11-09 17:01:09


R_6_tempListFri

06:00 17.0 09:00 21.0 17:00 17.0 22:00 21.0 24:00 17.0

2015-11-09 17:01:09


R_tempList_State

verified

2015-11-09 17:01:09


RegL_01:

08:00 00:00

2015-11-09 17:01:05


RegL_07:

01:2A 02:22 03:09 04:3D 05:18 06:03 07:00 08:16 09:07 0A:30 0B:00 0C:64 0D:0F 0E:05 0F:00 10:00 11:00 12:09 13:8E 14:44 15:48 16:55 17:08 18:45 19:20 1A:45 1B:20 1C:45 1D:20 1E:45 1F:20 20:45 21:20 22:45 23:20 24:45 25:20 26:45 27:20 28:45 29:20 2A:45 2B:20 2C:45 2D:20 2E:44 2F:48 30:55 31:08 32:45 33:20 34:45 35:20 36:45 37:20 38:45 39:20 3A:45 3B:20 3C:45 3D:20 3E:45 3F:20 40:45 41:20 42:45 43:20 44:45 45:20 46:45 47:20 48:44 49:48 4A:54 4B:6C 4C:44 4D:CC 4E:55 4F:08 50:45 51:20 52:45 53:20 54:45 55:20 56:45 57:20 58:45 59:20 5A:45 5B:20 5C:45 5D:20 5E:45 5F:20 60:45 61:20 62:44 63:48 64:54 65:6C 66:44 67:CC 68:55 69:08 6A:45 6B:20 6C:45 6D:20 6E:45 6F:20 70:45 71:20 72:45 73:20 74:45 75:20 76:45 77:20 78:45 79:20 7A:45 7B:20 7C:44 7D:48 7E:54 7F:6C 80:44 81:CC 82:55 83:08 84:45 85:20 86:45 87:20 88:45 89:20 8A:45 8B:20 8C:45 8D:20 8E:45 8F:20 90:45 91:20 92:45 93:20 94:45 95:20 96:44 97:48 98:54 99:6C 9A:44 9B:CC 9C:55 9D:08 9E:45 9F:20 A0:45 A1:20 A2:45 A3:20 A4:45 A5:20 A6:45 A7:20 A8:45 A9:20 AA:45 AB:20 AC:45 AD:20 AE:45 AF:20 B0:44 B1:48 B2:54 B3:6C B4:44 B5:CC B6:55 B7:08 B8:45 B9:20 BA:45 BB:20 BC:45 BD:20 BE:45 BF:20 C0:45 C1:20 C2:45 C3:20 C4:45 C5:20 C6:45 C7:20 C8:45 C9:20 CA:0F CB:1E CC:1E CD:0F CE:1E CF:1E 00:00

2015-11-09 17:01:09


ValvePosition

24

2015-11-18 21:29:06


boostTime

-

2015-11-18 21:29:06


controlMode

auto

2015-11-18 21:29:06


desired-temp

21.0

2015-11-18 21:29:06


measured-temp

22.8

2015-11-18 21:29:06


partyEnd

-

2015-11-18 21:29:06


partyStart

-

2015-11-18 21:29:06


partyTemp

-

2015-11-18 21:29:06


recentStateType

ack

2015-11-14 13:19:49


state

T: 22.8 desired: 21.0 valve: 24

2015-11-18 21:29:06


Bin über eine Hilfestellung echt dankbar  :D
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 November 2015, 22:19:14
Zitat...
dass ich das Thermostat noch auf Automatik stehen habe ? Muss ich das auf "Manuell" umstellen ? Konnte hierüber nichts im Wiki erlesen. Hier mal mein Logfile des HM_Thermostat_Clima  meines Thermostates:

das kann sein bei meine FS20 Geräten ist das genau so.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Joker2002 am 19 November 2015, 07:15:06
Hm, auf Automatik stellen hat irgendwie auch nicht funktioniert.

Hat jemand von Euch ein Homematicthermostat im Einsatz und kann berichten wie er die Einstellungen vorgenommen hat damit es funktioniert ?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: thi69 am 19 November 2015, 17:35:40
Hallo Dietmar,

die EnOcean Fensterkontakte funktionieren jetzt mit dem HC Modul.
Nochmal vielen Dank für Deine SUPER Leistung bei der Umsetzung der Module. :)

Gruß Thomas
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 22 November 2015, 15:27:27
Die ganze Zeit funktionierte der Aufruf für ein HeatingControl eines structure mit folgendem Befehl:


OG_Bad_T mo-fr|05:05|22 mo-fr|06:30|20 mo-fr|19:30|19.5 $we|08:00|21 $we|19:00|20 $we|21:00|19 { fhem("set @ desiredTemperature %") if ((ReadingsVal("KAT","state","")==0)&&(ReadingsVal("HC_Bad_Off_Profile","state","") eq "Auto"))}


OG_Bad_T = structure

Seit einem update vor 4 Tagen geht das nicht mehr. Ich hab schon gesucht, aber ich finde nichts wie ich den Aufruf ändern müsste.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: dlehmann69 am 22 November 2015, 18:57:16
@ und % sind als Variablen nicht mehr erlaubt. Ich habe das jeweils in den Befehlen so geändert:

@ zu $NAME
% zu $EVENT

Damit funktioniert das bei mir. Wurde aber auch für FHEM 5.7 angekündigt. So habe ich das vor dem Update zunächst geändert und getestet (funktioniert ja auch schon länger). Und dann erst habe ich das Update ohne Probleme laufen lassen.

BG
Dirk
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 22 November 2015, 19:14:04
Danke, so funktioniert es!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 22 November 2015, 23:50:58
Hallo Dietmar,

ich habe seit einigen Tagen folgende Meldungen im log:

2015.11.22 23:35:30 3: Heating_Control_SetTimer() for HC_WZ_WT done!
2015.11.22 23:35:30 3: Heating_Control_SetTimer() for HC_WZ_WE done!

Scheinbar werden einige Thermostate auch nicht mehr gestellt.. nur z.B. 2 von 7

Meine cfg sieht so aus:
define HC_WZ_WE Heating_Control WZ_hzg de 08:05|20.0 21:05|16.0 {if ($we){&SET_FHT("$NAME","$EVENT")}}
attr HC_WZ_WE group Wochenende
attr HC_WZ_WE room HEIZUNG
attr HC_WZ_WE windowSensor Terrrassentuer_LINKS_ThreeStateSensor Terrrassentuer_RECHTS_ThreeStateSensor WZ_FENSTER_SUED_ThreeStateSensor WZ_FENSTER_WEST_ThreeStateSensor

define HC_WZ_WT Heating_Control WZ_hzg de 06:05|20.0 21:05|16.0 {if (!$we){&SET_FHT("$NAME","$EVENT")}}
attr HC_WZ_WT group Wochentag
attr HC_WZ_WT room HEIZUNG
attr HC_WZ_WT windowSensor Terrrassentuer_LINKS_ThreeStateSensor Terrrassentuer_RECHTS_ThreeStateSensor WZ_FENSTER_SUED_ThreeStateSensor WZ_FENSTER_WEST_ThreeStateSensor


in 99_myUtils.pm gibt es noch folgendes Unterprogramm...

sub SET_FHT {
my ($fht, $DESIRED_temp) = @_;
if (Value("HOME_Status") == 1) {
Log(3,"HOME_Status 1 in sub SET_FHT erkannt - es wird $fht auf $DESIRED_temp gestellt");
fhem("set $fht desired-temp $DESIRED_temp");
}
elsif (Value("HOME_Status") == 0) {
Log(3,"HOME_Status 0 in sub SET_FHT erkannt - Temperatur von $fht wird auf 17°C abgesenkt");
fhem("set $fht desired-temp 17");
}
}



Kannst du dier hier einen Reim darauf machen?

Gruß
Manuel



Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 November 2015, 07:59:35
Kannst du mal ein list des device erstellen und mir zusenden
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 November 2015, 21:26:05
habe folgedes definiert - heute ist ein Feiertag - kann keinen Fehler erkennen:

define HC_WZ_WE               Heating_Control WZ_hzg de 08:05|20.0 21:05|16.0 {if ($we){&SET_FHT("$NAME","$EVENT")}} ;
attr   HC_WZ_WE               room HeizungsKeller ;
attr   HC_WZ_WE               verbose 5 ;
define HC_WZ_WT               Heating_Control WZ_hzg de 06:05|20.0 21:05|16.0 {if (!$we){&SET_FHT("$NAME","$EVENT")}} ;
attr   HC_WZ_WT               room HeizungsKeller ;
attr   HC_WZ_WT               verbose 5 ;



015.11.23 21:05:00 4: [HC_WZ_WE] command: {if ($we){&SET_FHT("$NAME","$EVENT")}} executed
2015.11.23 21:05:00 4: [HC_WZ_WE] aktParam: newParam:16.0 - is  not disabled
2015.11.23 21:05:00 4: [HC_WZ_WE] Update   - timer seems to be active today: 0123456|21:05|16.0
2015.11.23 21:05:00 3: ret---condition--------->1
2015.11.23 21:05:00 5: [HC_WZ_WE] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:05:00 5: [HC_WZ_WE] list of window sensors found: 'HC_WZ_WE'
2015.11.23 21:05:00 3: set WZ_hzg desired-temp 16.0
2015.11.23 21:05:00 4: [HC_WZ_WT] command: {if (!$we){&SET_FHT("$NAME","$EVENT")}} executed
2015.11.23 21:05:00 4: [HC_WZ_WT] aktParam: newParam:16.0 - is  not disabled
2015.11.23 21:05:00 4: [HC_WZ_WT] Update   - timer seems to be active today: 0123456|21:05|16.0
2015.11.23 21:05:00 3: ret---condition--------->1
2015.11.23 21:05:00 5: [HC_WZ_WT] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:05:00 5: [HC_WZ_WT] list of window sensors found: 'HC_WZ_WT'
2015.11.23 21:00:00 3: FS20 set MusikWlan on
2015.11.23 21:00:00 3: FS20 set Musik on
2015.11.23 21:00:00 3: [NAS] waking  NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196
2015.11.23 21:00:00 3: Auto off for NAS at Next: 01:00:00
2015.11.23 21:00:00 3: [NAS] set NAS on
2015.11.23 20:26:04 5: [HC_WZ_WT] setting  Timer: HC_WZ_WT_2 2015-11-23 21:05:00
2015.11.23 20:26:04 4: [HC_WZ_WT] setTimer - timer seems to be active today: 0123456|21:05|16.0
2015.11.23 20:26:04 3: ret---condition--------->1
2015.11.23 20:26:04 5: [HC_WZ_WT] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 20:26:04 3: ret---condition--------->1
2015.11.23 20:26:04 5: [HC_WZ_WT] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 20:26:04 4: [HC_WZ_WT] no switch in the yesterdays because of the devices type(WZ_hzg is not recognized as heating) - use attr switchInThePast
2015.11.23 20:26:04 5: [HC_WZ_WT] setting  Timer: HC_WZ_WT_SetTimerOfDay 2015-11-24 00:00:05
2015.11.23 20:26:04 5: [HC_WZ_WT] removing Timer: HC_WZ_WT_SetTimerOfDay
2015.11.23 20:26:04 4: [HC_WZ_WT] 06:05:00 20.0, 21:05:00 16.0 (Profil 6: Samstag)
2015.11.23 20:26:04 4: [HC_WZ_WT] 06:05:00 20.0, 21:05:00 16.0 (Profil 5: Freitag)
2015.11.23 20:26:04 4: [HC_WZ_WT] 06:05:00 20.0, 21:05:00 16.0 (Profil 4: Donnerstag)
2015.11.23 20:26:04 4: [HC_WZ_WT] 06:05:00 20.0, 21:05:00 16.0 (Profil 3: Mittwoch)
2015.11.23 20:26:04 4: [HC_WZ_WT] 06:05:00 20.0, 21:05:00 16.0 (Profil 2: Dienstag)
2015.11.23 20:26:04 4: [HC_WZ_WT] 06:05:00 20.0, 21:05:00 16.0 (Profil 1: Montag)
2015.11.23 20:26:04 4: [HC_WZ_WT] 06:05:00 20.0, 21:05:00 16.0 (Profil 0: Sonntag)
2015.11.23 20:26:04 4: [HC_WZ_WT] 07:16:24 16:56:13 Montag
2015.11.23 20:26:04 3: [HC_WZ_WT] device <WZ_hzg> in fhem not defined, but accepted
2015.11.23 20:26:04 5: [HC_WZ_WT] removing Timer: HC_WZ_WT_2
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 November 2015, 21:32:13
jetzt so - heute kein Feiertag - glauge auch dass es korrekt läuft - gebe die Version frei, damit mit verbose 5 ein besseres Log erstellt werden kann:

define HC_WZ_WE               Heating_Control WZ_hzg de 21:28|20.0 21:29|16.0 {if ($we){&SET_FHT("$NAME","$EVENT")}} ;
attr   HC_WZ_WE               room HeizungsKeller ;
attr   HC_WZ_WE               verbose 5 ;
define HC_WZ_WT               Heating_Control WZ_hzg de 21:28|20.0 21:29|16.0 {if (!$we){&SET_FHT("$NAME","$EVENT")}} ;
attr   HC_WZ_WT               room HeizungsKeller ;
attr   HC_WZ_WT               verbose 5 ;



2015.11.23 21:29:00 3: set WZ_hzg desired-temp 16.0
2015.11.23 21:29:00 4: [HC_WZ_WT] command: {if (!$we){&SET_FHT("$NAME","$EVENT")}} executed
2015.11.23 21:29:00 4: [HC_WZ_WT] aktParam: newParam:16.0 - is  not disabled
2015.11.23 21:29:00 4: [HC_WZ_WT] Update   - timer seems to be active today: 0123456|21:29|16.0
2015.11.23 21:29:00 3: ret---condition--------->1
2015.11.23 21:29:00 5: [HC_WZ_WT] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:29:00 5: [HC_WZ_WT] list of window sensors found: 'HC_WZ_WT'
2015.11.23 21:29:00 4: [HC_WZ_WE] command: {if ($we){&SET_FHT("$NAME","$EVENT")}} executed
2015.11.23 21:29:00 4: [HC_WZ_WE] aktParam: newParam:16.0 - is  not disabled
2015.11.23 21:29:00 4: [HC_WZ_WE] Update   - timer seems to be active today: 0123456|21:29|16.0
2015.11.23 21:29:00 3: ret---condition--------->1
2015.11.23 21:29:00 5: [HC_WZ_WE] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:29:00 5: [HC_WZ_WE] list of window sensors found: 'HC_WZ_WE'
2015.11.23 21:28:00 3: set WZ_hzg desired-temp 20.0
2015.11.23 21:28:00 4: [HC_WZ_WT] command: {if (!$we){&SET_FHT("$NAME","$EVENT")}} executed
2015.11.23 21:28:00 4: [HC_WZ_WT] aktParam: newParam:20.0 - is  not disabled
2015.11.23 21:28:00 4: [HC_WZ_WT] Update   - timer seems to be active today: 0123456|21:28|20.0
2015.11.23 21:28:00 3: ret---condition--------->1
2015.11.23 21:28:00 5: [HC_WZ_WT] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:28:00 5: [HC_WZ_WT] list of window sensors found: 'HC_WZ_WT'
2015.11.23 21:28:00 4: [HC_WZ_WE] command: {if ($we){&SET_FHT("$NAME","$EVENT")}} executed
2015.11.23 21:28:00 4: [HC_WZ_WE] aktParam: newParam:20.0 - is  not disabled
2015.11.23 21:28:00 4: [HC_WZ_WE] Update   - timer seems to be active today: 0123456|21:28|20.0
2015.11.23 21:28:00 3: ret---condition--------->1
2015.11.23 21:28:00 5: [HC_WZ_WE] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:28:00 5: [HC_WZ_WE] list of window sensors found: 'HC_WZ_WE'
2015.11.23 21:27:49 5: [HC_WZ_WT] setting  Timer: HC_WZ_WT_2 2015-11-23 21:29:00
2015.11.23 21:27:49 4: [HC_WZ_WT] setTimer - timer seems to be active today: 0123456|21:29|16.0
2015.11.23 21:27:49 3: ret---condition--------->1
2015.11.23 21:27:49 5: [HC_WZ_WT] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:27:49 5: [HC_WZ_WT] setting  Timer: HC_WZ_WT_1 2015-11-23 21:28:00
2015.11.23 21:27:49 4: [HC_WZ_WT] setTimer - timer seems to be active today: 0123456|21:28|20.0
2015.11.23 21:27:49 3: ret---condition--------->1
2015.11.23 21:27:49 5: [HC_WZ_WT] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:27:49 4: [HC_WZ_WT] no switch in the yesterdays because of the devices type(WZ_hzg is not recognized as heating) - use attr switchInThePast
2015.11.23 21:27:49 5: [HC_WZ_WT] setting  Timer: HC_WZ_WT_SetTimerOfDay 2015-11-24 00:00:05
2015.11.23 21:27:49 5: [HC_WZ_WT] removing Timer: HC_WZ_WT_SetTimerOfDay
2015.11.23 21:27:49 4: [HC_WZ_WT] 21:28:00 20.0, 21:29:00 16.0 (Profil 6: Samstag)
2015.11.23 21:27:49 4: [HC_WZ_WT] 21:28:00 20.0, 21:29:00 16.0 (Profil 5: Freitag)
2015.11.23 21:27:49 4: [HC_WZ_WT] 21:28:00 20.0, 21:29:00 16.0 (Profil 4: Donnerstag)
2015.11.23 21:27:49 4: [HC_WZ_WT] 21:28:00 20.0, 21:29:00 16.0 (Profil 3: Mittwoch)
2015.11.23 21:27:49 4: [HC_WZ_WT] 21:28:00 20.0, 21:29:00 16.0 (Profil 2: Dienstag)
2015.11.23 21:27:49 4: [HC_WZ_WT] 21:28:00 20.0, 21:29:00 16.0 (Profil 1: Montag)
2015.11.23 21:27:49 4: [HC_WZ_WT] 21:28:00 20.0, 21:29:00 16.0 (Profil 0: Sonntag)
2015.11.23 21:27:49 4: [HC_WZ_WT] 07:16:24 16:56:13 Montag
2015.11.23 21:27:49 3: [HC_WZ_WT] device <WZ_hzg> in fhem not defined, but accepted
2015.11.23 21:27:49 5: [HC_WZ_WT] removing Timer: HC_WZ_WT_2
2015.11.23 21:27:15 5: [HC_WZ_WE] setting  Timer: HC_WZ_WE_2 2015-11-23 21:29:00
2015.11.23 21:27:15 4: [HC_WZ_WE] setTimer - timer seems to be active today: 0123456|21:29|16.0
2015.11.23 21:27:15 3: ret---condition--------->1
2015.11.23 21:27:15 5: [HC_WZ_WE] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:27:15 5: [HC_WZ_WE] setting  Timer: HC_WZ_WE_1 2015-11-23 21:28:00
2015.11.23 21:27:15 4: [HC_WZ_WE] setTimer - timer seems to be active today: 0123456|21:28|20.0
2015.11.23 21:27:15 3: ret---condition--------->1
2015.11.23 21:27:15 5: [HC_WZ_WE] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( 1 && (defined $days->{$wday}))}
2015.11.23 21:27:15 4: [HC_WZ_WE] no switch in the yesterdays because of the devices type(WZ_hzg is not recognized as heating) - use attr switchInThePast
2015.11.23 21:27:15 5: [HC_WZ_WE] setting  Timer: HC_WZ_WE_SetTimerOfDay 2015-11-24 00:00:05
2015.11.23 21:27:15 5: [HC_WZ_WE] removing Timer: HC_WZ_WE_SetTimerOfDay
2015.11.23 21:27:15 4: [HC_WZ_WE] 21:28:00 20.0, 21:29:00 16.0 (Profil 6: Samstag)
2015.11.23 21:27:15 4: [HC_WZ_WE] 21:28:00 20.0, 21:29:00 16.0 (Profil 5: Freitag)
2015.11.23 21:27:15 4: [HC_WZ_WE] 21:28:00 20.0, 21:29:00 16.0 (Profil 4: Donnerstag)
2015.11.23 21:27:15 4: [HC_WZ_WE] 21:28:00 20.0, 21:29:00 16.0 (Profil 3: Mittwoch)
2015.11.23 21:27:15 4: [HC_WZ_WE] 21:28:00 20.0, 21:29:00 16.0 (Profil 2: Dienstag)
2015.11.23 21:27:15 4: [HC_WZ_WE] 21:28:00 20.0, 21:29:00 16.0 (Profil 1: Montag)
2015.11.23 21:27:15 4: [HC_WZ_WE] 21:28:00 20.0, 21:29:00 16.0 (Profil 0: Sonntag)
2015.11.23 21:27:15 4: [HC_WZ_WE] 07:16:24 16:56:13 Montag
2015.11.23 21:27:15 3: [HC_WZ_WE] device <WZ_hzg> in fhem not defined, but accepted
2015.11.23 21:27:15 5: [HC_WZ_WE] removing Timer: HC_WZ_WE_2
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 23 November 2015, 23:43:45
Hallo Dietmar,

danke für die Tests - vielleicht helfen folgende Daten:
Ich habe 8 Räume mit HC gesteuert - 7 davon sind FHT's - 1 Raum (WZ) ist Homematic.

Ich habe 3 Räume auf Verbose5 gesetzt und den Output bei Wechsel des HOME_Status in zwei txt Files gespeichert.
(Über ein notify werden bei Änderungen von HOME_Status das SUB Heating_Control_SetAllTemps() aufgerufen)

Wenn ich das alles richtig interpretiere wird jeweils nur ein Raum korrekt angesteuert.
Welcher dies ist ist zufällig unabhänig ob FHT oder Homematic...

Du hattest noch ein List benötigt...
Diese sind auch im Anhang.

Gruß Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 November 2015, 23:58:21
Zitat von: Petrosilius Zwackelmann am 23 November 2015, 23:43:45
Hallo Dietmar,

danke für die Tests - vielleicht helfen folgende Daten:
Ich habe 8 Räume mit HC gesteuert - 7 davon sind FHT's - 1 Raum (WZ) ist Homematic.

Ich habe 3 Räume auf Verbose5 gesetzt und den Output bei Wechsel des HOME_Status in zwei txt Files gespeichert.
(Über ein notify werden bei Änderungen von HOME_Status das SUB Heating_Control_SetAllTemps() aufgerufen)

Wenn ich das alles richtig interpretiere wird jeweils nur ein Raum korrekt angesteuert.
Welcher dies ist ist zufällig unabhänig ob FHT oder Homematic...

Du hattest noch ein List benötigt...
Diese sind auch im Anhang.

Gruß Manuel

Ich habe das Logging verbessert - kannst du damit Logs erstellen. Am besten von konkreten nicht Schalten Situationen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 24 November 2015, 00:45:51
Hallo Dietmar, im trunk sehe ich nur ein Update bei 98_WeekdayTimer.pm...Kommt das dann noch für 98_Heating_Control.pm?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 November 2015, 07:10:13
HC nutzt fast sämtliche Funktionen von WD
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 24 November 2015, 23:22:41
Hallo Dietmar,

im Anhang nochmals ein Wechsel des HOME_Status .... nur eine Heizung wir hochgestellt.
Verwendet wurden Weekday Timer und Heating Control in der letzten Version.
Das normale Wochenprogramm funktioniert.
Siehst du einen Fehler?

Gruß Manuel

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 25 November 2015, 00:02:05
Welcher HD/WD ist denn falsch, deiner Meinung nach?
Ich habe 2 Sekunden dein Protokoll angesehen und keinen Fehler festgestellt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Petrosilius Zwackelmann am 25 November 2015, 00:28:06
Hallo Dietmar,

es wird nur klar wenn man beide Files (Aktionen bei HOME_Status = 0 (Erwartung alle Heizungen werden auf 17°C gestellt.)
HOME_Status = 1 --> Heizung wird auf das normale Wochenprogramm gestellt.

In folgendem File sieht man nur eine Heizung (Homematic) wird auf 17°C gestellt...
2015.11.25 00:18:32 3: CUL_HM set WZ_hzg desired-temp 17

Gruß Manuel
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 06 Dezember 2015, 15:44:54
Hallo Dietmar,
ich hatte ja vor ein paar Wochen schon geschrieben, dass mit mehreren HeatingControl je Thermostat es nicht funktioniert, wenn man setallTemps() verwendet. Jetzt habe ich alternativ dazu in der 99_myUtils die ganze Logik nachprogrammiert, so dass immer nur ein HeatingControl aufgerufen wird also z.B. Heating_Control_SetTemp("HC_Bad_Normal").
Das funktioniert bei allen Räumen, außer bei meinem Bad, weil es dort nicht ein einziges Thermostat ist, sondern ein structure mit 3 Thermostaten. Im normalen Ablauf ist der Aufruf mit dem structure (OG_Bad_T ist der Name mit den Thermostaten OG_Bad_Badew_T, OG_Bad_Klo_T, OG_Bad_Waschb_T) absolut kein Problem, aber beim SetTemp reagieren die Thermostate nicht, obwohl im Log steht, dass alles ausgeführt wurde:

2015.12.06 15:31:29 5: Cmd: >{ ResetHeatingControl }<
2015.12.06 15:31:29 1: HC_Bad_Off_Profile Auto
2015.12.06 15:31:29 5: [HC_Bad_Normal] removing Timer: HC_Bad_Normal_6
2015.12.06 15:31:29 5: [HC_Bad_Normal] removing Timer: HC_Bad_Normal_4
2015.12.06 15:31:29 5: [HC_Bad_Normal] removing Timer: HC_Bad_Normal_3
2015.12.06 15:31:29 5: [HC_Bad_Normal] removing Timer: HC_Bad_Normal_7
2015.12.06 15:31:29 4: [HC_Bad_Normal] device type structure: recognized, setModifier:
2015.12.06 15:31:29 4: [HC_Bad_Normal] no switch in the yesterdays because of the devices type(OG_Bad_T is not recognized as heating) - use attr switchInThePast
2015.12.06 15:31:29 5: Triggering HC_Bad_Normal (1 changes)
2015.12.06 15:31:29 5: Notify loop for HC_Bad_Normal inactive
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: battStatus: not on any display, ignoring notify
2015.12.06 15:31:29 5: [HC_Bad_Normal] condition: {my $days={};;map{$days->{$_}=1}(1,2,3,4,5);;;;( 1 && (defined $days->{$wday}))}
2015.12.06 15:31:29 5: Cmd: >{my $days={};map{$days->{$_}=1}(1,2,3,4,5);;( 1 && (defined $days->{$wday}))}<
2015.12.06 15:31:29 5: [HC_Bad_Normal] result of condition:
2015.12.06 15:31:29 5: [HC_Bad_Normal] condition: {my $days={};;map{$days->{$_}=1}(1,2,3,4,5);;;;( 1 && (defined $days->{$wday}))}
2015.12.06 15:31:29 5: Cmd: >{my $days={};map{$days->{$_}=1}(1,2,3,4,5);;( 1 && (defined $days->{$wday}))}<
2015.12.06 15:31:29 5: [HC_Bad_Normal] result of condition:
2015.12.06 15:31:29 5: [HC_Bad_Normal] condition: {my $days={};;map{$days->{$_}=1}(1,2,3,4,5);;;;( 1 && (defined $days->{$wday}))}
2015.12.06 15:31:29 5: Cmd: >{my $days={};map{$days->{$_}=1}(1,2,3,4,5);;( 1 && (defined $days->{$wday}))}<
2015.12.06 15:31:29 5: [HC_Bad_Normal] result of condition:
2015.12.06 15:31:29 4: [HC_Bad_Normal] setTimer - timer seems to be NOT active today: 12345|19:30|20
2015.12.06 15:31:29 5: [HC_Bad_Normal] setting  Timer: HC_Bad_Normal_3 2015-12-06 19:30:00
2015.12.06 15:31:29 5: [HC_Bad_Normal] condition: {my $days={};;map{$days->{$_}=1}(1,2,3,4,5);;;;( 1 && (defined $days->{$wday}))}
2015.12.06 15:31:29 5: Cmd: >{my $days={};map{$days->{$_}=1}(1,2,3,4,5);;( 1 && (defined $days->{$wday}))}<
2015.12.06 15:31:29 5: [HC_Bad_Normal] result of condition:
2015.12.06 15:31:29 4: [HC_Bad_Normal] setTimer - timer seems to be NOT active today: 12345|21:30|19.5
2015.12.06 15:31:29 5: [HC_Bad_Normal] setting  Timer: HC_Bad_Normal_4 2015-12-06 21:30:00
2015.12.06 15:31:29 5: [HC_Bad_Normal] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we))}
2015.12.06 15:31:29 5: Cmd: >{my $days={};map{$days->{$_}=1}();;( 1 && (defined $days->{$wday} ||  $we))}<
2015.12.06 15:31:29 5: [HC_Bad_Normal] result of condition:1
2015.12.06 15:31:29 5: Triggering HC_Bad_Normal (1 changes)
2015.12.06 15:31:29 5: Notify loop for HC_Bad_Normal active
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: battStatus: not on any display, ignoring notify
2015.12.06 15:31:29 5: [HC_Bad_Normal] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we))}
2015.12.06 15:31:29 5: Cmd: >{my $days={};map{$days->{$_}=1}();;( 1 && (defined $days->{$wday} ||  $we))}<
2015.12.06 15:31:29 5: [HC_Bad_Normal] result of condition:1
2015.12.06 15:31:29 5: Triggering HC_Bad_Normal (1 changes)
2015.12.06 15:31:29 5: Notify loop for HC_Bad_Normal active
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: battStatus: not on any display, ignoring notify
2015.12.06 15:31:29 4: [HC_Bad_Normal] setTimer - timer seems to be active today: 7|19:00|20
2015.12.06 15:31:29 5: [HC_Bad_Normal] setting  Timer: HC_Bad_Normal_6 2015-12-06 19:00:00
2015.12.06 15:31:29 5: [HC_Bad_Normal] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we))}
2015.12.06 15:31:29 5: Cmd: >{my $days={};map{$days->{$_}=1}();;( 1 && (defined $days->{$wday} ||  $we))}<
2015.12.06 15:31:29 5: [HC_Bad_Normal] result of condition:1
2015.12.06 15:31:29 5: Triggering HC_Bad_Normal (1 changes)
2015.12.06 15:31:29 5: Notify loop for HC_Bad_Normal active
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: battStatus: not on any display, ignoring notify
2015.12.06 15:31:29 4: [HC_Bad_Normal] setTimer - timer seems to be active today: 7|22:00|19.5
2015.12.06 15:31:29 5: [HC_Bad_Normal] setting  Timer: HC_Bad_Normal_7 2015-12-06 22:00:00
2015.12.06 15:31:29 5: Triggering HC_Bad_Normal (1 changes)
2015.12.06 15:31:29 5: Notify loop for HC_Bad_Normal nextUpdate: 2015-12-06 19:00:00
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: battStatus: not on any display, ignoring notify
2015.12.06 15:31:29 5: Triggering HC_Bad_Normal (1 changes)
2015.12.06 15:31:29 5: Notify loop for HC_Bad_Normal nextValue: 20
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:29 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:30 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:30 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:30 5: Notify from Device: HC_Bad_Normal recieved
2015.12.06 15:31:30 5: battStatus: not on any display, ignoring notify
2015.12.06 15:31:30 3: Heating_Control_SetTimer() for HC_Bad_Normal done!


Kann ich da was tun, damit das auch funktioniert?


Gruß persching
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 06 Dezember 2015, 19:00:08
Ohne die zugehörige DefinitionDefinition kann ich nix machen.
Welchen Typ haben die Thermostate in der strukture?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 06 Dezember 2015, 20:10:04
Definition des HeatingContol:


define HC_Bad_Normal Heating_Control OG_Bad_T mo-fr|05:05|22 mo-fr|06:30|20 mo-fr|19:30|20 mo-fr|21:30|19.5 $we|08:00|21 $we|19:00|20 $we|22:00|19.5 { fhem("set $NAME desiredTemperature $EVENT") if ((ReadingsVal("KAT","state","")==0)&&(ReadingsVal("HC_Bad_Off_Profile","state","") eq "Auto"))}
attr HC_Bad_Normal group Profile
attr HC_Bad_Normal room R02 Badezimmer
attr HC_Bad_Normal windowSensor OG_Bad_Fensterkontakt


Definition des structure:


define OG_Bad_T structure MAX OG_Bad_Klo_T OG_Bad_Waschb_T OG_Bad_Badew_T
attr OG_Bad_T room R02 Badezimmer



Alle Thermostate sind vom Typ MAX.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 06 Dezember 2015, 23:45:08
HC kann in structures nicht "hineinsehen", erkennt also nicht, dass es sich um Heizungen handelt.
Heizungen sollen aber immer auch den vergangenen Zustand schalten.

Dies kannst du mit dem Attribut switchInThePast erreichen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 07 Dezember 2015, 14:50:56
Super, funktioniert perfekt! Danke für die schnelle Hilfe!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: m8ichael am 07 Dezember 2015, 17:55:27
Hallo,

ich setze das Modul nun auch bereits seit einigen Tagen ein und es funktioniert soweit. Einziges Problem ist, dass ich die Verzögerungsfunktion nicht wirklich zum Laufen bekomme...  :-\

So habe ich im jeweiligen HC folgendes definiert:


define hc.eg.wz.WE Heating_Control dm.eg.wz.Heizwert de Mo-So|10:00|20 Mo-So|18:00|22 Mo-So|20:00|17 {\
if ((iswe() && (Value("dmHeizmodus") eq "Automatisch"))) {\
  fhem("set $NAME $EVENT");;\
}\
}
attr hc.eg.wz.WE delayedExecutionCond isDelayed("%HEATING_CONTROL","%WEEKDAYTIMER","%TIME","%NAME","%EVENT")
attr hc.eg.wz.WE switchInThePast 1


Die Funktion "isDelayed" habe ich mal probehalber aus der Doku entnommen und ein wenig ergänzt:


sub isDelayed($$$$$) {
    my($hc, $wdt, $tim, $nam, $event ) = @_;
    my $delay=0;
    if ($nam eq "dm.eg.wz.Heizwert") {
fhem("set dmTest $tim");
        if ($tim eq "22:00") {
            if ((Value("eg.wz.Hauptbeleuchtung") eq "on") || (Value("eg.wz.Esstisch") eq "on") || (Value("div.Schalter1") eq "on"))
{
                $delay=1;
            }
        }   
   }   
   return $delay;   
}



Idee ist erst einmal, dass die Heizung solange eingeschaltet bleibt, wie irgendein Licht eingeschaltet ist. Um zu prüfen, ob die Schleife auch durchlaufen wird, setze ich einen Dummy "dmTest" mit der Variablen $tim, welche wiederum weiter oben im Attribut %Time übergeben wird.

Problem ist nun, dass offenbar der Ausdruck "%Time" nicht mit der jeweiligen Uhrzeit ersetzt wird, d.h., im Dummy landet tatsächlich "%TIME" als Text. Wo ist mein Denkfehler?

Viele Grüße

Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 07 Dezember 2015, 19:53:03
%TIME wird von delayedExecutionCond nicht unterstützt.
Was soll deiner Meinung nach darin jeweils von HC zur Verfügung gestellt werden?

War wohl noch nie so. In  der Doku ist %TIME allerdings erwähnt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 07 Dezember 2015, 20:03:29
habe es mal ergänzt - %TIME oder $TIME liefert die definierte Wunschzeit - wahrscheinlich im Format: 23:45:00 - probier es mal aus.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: m8ichael am 07 Dezember 2015, 22:01:24
Hallo Dietmar,

ja, ich bin bisher davon ausgegangen, dass da die Schaltzeit abgelegt wird.

Kann ich die Ergänzung schon mal irgendwie testen?

Viele Grüße

Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 07 Dezember 2015, 23:06:17
nach einem update steht die Änderung zur Verfügung
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: m8ichael am 08 Dezember 2015, 18:12:05
OK, jetzt mal getestet.  ;) Nun enthält die Variable eine Ziffer (aktuelle "2"). Bedeutet dies, dass die zweite Zeitscheibe aktiv ist? Und was muss ich in meinem Fall abfragen, um eine Verzögerung vor Eintritt in die dritte Zeitscheibe zu erreichen?

Beispiel:

... Mo-So|10:00|20 Mo-So|18:00|22 Mo-So|20:00|17 ...


Wenn ich nun erreichen wollte, dass die Einstellung ab 20:00 Uhr verzögert wird, würde die Variable $time dann um 20:00 Uhr den Wert "3" erhalten und ich müsste dies in meine Abfrage einbauen?

Viele Grüße

Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: m8ichael am 14 Dezember 2015, 17:16:05
Hallo,

ich habe nun mal ein wenig getestet. Es scheint, als würde unter $Time wirklich die "Nummer" des Timers abgelegt. Besteht hier Hoffnung, dass man auch die Uhrzeit ausgeben kann? Denn die Timernummer ist wenig praktikabel, wenn man bestimmte Abhängigkeiten hat und man im Zweifel noch einen Timer einfügen muss.

Und dann habe ich noch eine Frage: Wie lange wird der Schaltvorgang maximal verzögert, wenn die Bedingung im Attribut "delayedExecutionCond" wahr ist? Ich hatte jetzt die Situation, dass nach einer Verzögerung von >2,5 Stunden kein Schaltvorgang mehr ausgeführt wird.

Viele Grüße

Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 14 Dezember 2015, 19:43:33
Zitatich habe nun mal ein wenig getestet. Es scheint, als würde unter $Time wirklich die "Nummer" des Timers abgelegt. Besteht hier Hoffnung, dass man auch die Uhrzeit ausgeben kann? Denn die Timernummer ist wenig praktikabel, wenn man bestimmte Abhängigkeiten hat und man im Zweifel noch einen Timer einfügen muss.

hast recht - ändere ich

ZitatUnd dann habe ich noch eine Frage: Wie lange wird der Schaltvorgang maximal verzögert, wenn die Bedingung im Attribut "delayedExecutionCond" wahr ist? Ich hatte jetzt die Situation, dass nach einer Verzögerung von >2,5 Stunden kein Schaltvorgang mehr ausgeführt wird.

An sich sollte das fast bis in alle Ewigkeit so weitergehen. Allerdings könnte man der Meinung sein, dass ein nachfolgender Timer den alten überschreiben sollte. Nur leider haben verschiedene Versuche das zu implementieren nicht gefruchtet, bzw. sind schief gegangen.
Es kann kompliziert werden, zu definieren was aufeinanderfolgende timer sind.

Ein Grenze ist auf jeden Fall Mitternacht. Dann werden die timer des neuen Tages gesetzt und laufende gelöscht.

Wieso bei dir nach 2,5 Stunden Schluss war, vermag ich nicht zu sagen.
Vielleicht kannst du ja eine Lücke in WeekdayTimer_FensterOffen() finden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: m8ichael am 17 Januar 2016, 01:57:57
Hi,

habe jetzt mal ausgiebig getestet... ;) Funktioniert mittlerweile prima und auch die Zeiten werden sauber übergeben. Einzig beim Tagwechsel kommt es dann zu Problemen, wenn die Verzögerung gerade aktiv ist. Fällt dann die Verzögerung (am Folgetag) weg, so wird dies auch entsprechend protokolliert, der state des moduls verbleibt aber trotzdem beim alten Wert und ändert sich nicht.

Viele Grüße

Michael

Gesendet von meinem SM-G900F mit Tapatalk

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cornelius fillmore am 23 Januar 2016, 10:42:20
Moin zusammen,

kann es sein, das an dem Modul etwas verändert wurde.

Seit dem letzten update kommen keine Befehle mehr an meinen FHTs an.

Manuele Kommunikation mit den FHT funktioniert aber.

Mich wundert auch folgende Zeile im log 2016.01.23 10:48:41 3: WARNING: unsupported character in reading FHZ:measured-temp (not A-Za-z/\d_\.-), notify the FHT module maintainer.
2016.01.23 10:48:41 3: WARNING: unsupported character in reading FHZ:start-xmit (not A-Za-z/\d_\.-), notify the FHT module maintainer.
2016.01.23 10:48:41 3: WARNING: unsupported character in reading FHZ:warnings (not A-Za-z/\d_\.-), notify the FHT module maintainer.


Sind jetzt "_" nicht mehr erlaubt?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: m8ichael am 23 Januar 2016, 11:56:06


Zitat von: cornelius fillmore am 23 Januar 2016, 10:42:20
Sind jetzt "_" nicht mehr erlaubt?
Hmm, die Unterstriche werden in der Fehlermeldung allerdings nicht bemängelt...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cornelius fillmore am 24 Januar 2016, 08:46:48
Thema gelöst:

update force gemacht und alles läuft wieder
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 26 Januar 2016, 19:20:11
Hallo Dietmar

auch ich nutze dein Modul (FETTES THX für deine Arbeit), allerdings mit z-wave Komponenten.
Kriegst du denn auch ein z-wave Fenstersensor dran?

Grüße Tom
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: m8ichael am 26 Januar 2016, 22:25:00
Zitat von: tomspatz am 26 Januar 2016, 19:20:11
Hallo Dietmar

auch ich nutze dein Modul (FETTES THX für deine Arbeit), allerdings mit z-wave Komponenten.
Kriegst du denn auch ein z-wave Fenstersensor dran?

Grüße Tom
Hi,

bei der Nutzung des Moduls sollte es ziemlich egal sein, welches System genutzt wird. Im Zweifel muss eine kleine Funktion erstellt werden, die den isDelayed-Wert triggert (siehe Doku).

Gruß

Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 27 Januar 2016, 07:26:32
hmmmm

im Log finde ich aber:
Zitat2016.01.27 06:30:00 3: [HeizungssteuerungBad] TYPE 'ZWave' of FensterBad not yet supported, FensterBad ignored - inform maintainer
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 Januar 2016, 07:31:11
Erstellt bitte ein list des Zwave Fensterkontakten, dann kann prüfen, wie ich HC erweitere. Schaffe es aber frühestens am Sonntag - Urlaub
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 27 Januar 2016, 08:47:15
Moin Dietmar

hier das list:
Internals:
   DEF        c9cc092a 20
   IODev      ZWDongle_0
   LASTInputDev ZWDongle_0
   MSGCNT     42
   NAME       BalkontuerWohnzimmer
   NR         168
   STATE      geschlossen
   TYPE       ZWave
   ZWDongle_0_MSGCNT 42
   ZWDongle_0_RAWMSG 00040014028407
   ZWDongle_0_TIME 2016-01-27 08:17:55
   homeId     c9cc092a
   isWakeUp   1
   lastMsgSent 1453879075.89379
   nodeIdHex  14
   Readings:
     2016-01-09 17:14:09   CMD             ZW_APPLICATION_UPDATE
     2016-01-09 17:44:42   assocGroup_1    Max 5 Nodes ZWDongle_0
     2016-01-09 17:44:42   assocGroup_2    Max 5 Nodes
     2016-01-09 17:44:42   assocGroup_3    Max 1 Nodes ZWDongle_0
     2016-01-09 17:44:42   assocGroups     3
     2016-01-26 22:53:58   basicSet        00
     2016-01-26 21:04:47   battery         93 %
     2016-01-09 17:53:10   config_15       0
     2016-01-09 17:14:09   mcCapability_02 SENSOR_MULTILEVEL
     2016-01-09 17:12:38   model           FIBARO System FGK101 Door Opening Sensor
     2016-01-09 17:12:38   modelConfig     fibaro/fgk001.xml
     2016-01-09 17:12:38   modelId         010f-0700-1000
     2016-01-26 22:53:58   reportedState   closed
     2016-01-26 22:53:58   state           closed
     2016-01-27 08:17:57   transmit        OK
     2016-01-27 08:17:55   wakeup          notification
     2016-01-11 07:41:47   wakeupReport    interval 4000 target 1
Attributes:
   IODev      ZWDongle_0
   alias      Balkontür WZ
   classes    SENSOR_BINARY SENSOR_ALARM MULTI_CHANNEL ASSOCIATION MANUFACTURER_SPECIFIC CONFIGURATION VERSION BATTERY CRC_16_ENCAP WAKE_UP FIRMWARE_UPDATE_MD MARK SCENE_ACTIVATION BASIC
   devStateIcon .*offen:fts_door_open@red .*geschlossen:fts_door
   eventMap   open:offen closed:geschlossen
   group      Fenster und Türen
   icon       fts_door
   room       System Info,Wohnzimmer


Schönen Urlaub

Tom
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 31 Januar 2016, 20:24:05
98_Heating_Control, 98_WeekdayTimer: ZWave window sensor added for automatic recognition
Bitte teste mal ob es funktioniert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hermann am 08 Februar 2016, 15:52:09
Hallo,

Hab das Modul jetzt 1 Woche laufen und bin begeistert. Ich habe nur ein Problem mit dem setzen der desired temp bei meinen alten HM-CC-TC. Hier wird der Befehl oft nicht angenommen und es ist morgens angenehm kalt. Bei den neuen HM-CC-RT-DN kein Problem.

Wie kann ich in Modul Heating Control angeben das der desired temp Befehl, falls nicht erfolgreich, nochmal abgesetzt wird ?

Hermann
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 08 Februar 2016, 18:19:58
Das Modul sieht das nicht vor
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hermann am 08 Februar 2016, 18:22:35
Ok. 

Gibt es trotzdem eine Möglichkeit das setzen der Temperaturen zuverlässiger zu gestalten im Modus manuell ?

Hermann

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 08 Februar 2016, 19:39:23
Alle HM Geräte sind über Handshake mir Rückmeldung angeschlossen. Ansich sollte der jeweilige Befehl sowieso wiederholt werden, wenn kein acknowlege kommt. Vielleicht hilft es die Empangsbedingungen irgendwie zu verbessern.

Versuch mal, ob dasdas Gerät mit einem at besser funktioniert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 11 Februar 2016, 09:16:51
Hallo Dietmar
danke für die Umsetzung der Fibaro FGK 101.
Ich habe noch nicht wirklich alles gecheckt, Infos liefere ich nach.
Ein Problem habe ich mit der Syntax bei zwei Fenstern die überwacht werden sollen.
attr HeizungssteuerungSchlafzimmer windowSensor FensterSchlafzimmerLinks,FensterSchlafzimmerRechts
Das gibt ein:
2016.02.11 07:30:00 3: [HeizungssteuerungSchlafzimmer] sensor <FensterSchlafzimmerLinks,FensterSchlafzimmerRechts> not found - check name.

Geht das überhaupt?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: roman1528 am 25 Februar 2016, 14:57:42
Moin.

Wieso werden beim Start von FHEM die aktuellen Temperaturen gestzt?

Kann man das irgendwie unterbinden?

Problem:
Habe gerade ein Update gemacht und FHEM neu gestartet. Dadurch hat HeatingControl natürlich die Temperaturen wieder gesetzt und meine Heizung im Schlafzimmer hat schön die Umwelt geheizt weil's Fenster noch auf war!

Kann man das implementieren oder gibt es schon eine Möglichkeit bei FHEM-Start die Temperaturen nicht zu setzen? Also die Ausführung bis zum nchsten wechsel zu unterbinden?

Grüße^^
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 29 Februar 2016, 20:52:05
@ Dietmar
Die Fibaros FGK 101 laufen super,vielen Dank für die Umsetzung.
Den Syntaxfehler mit zwei Fenstersensoren habe ich gefunden, ohne Komma auflisten funktioniert.  ;)
Könnte man nicht noch etwas einbauen damit die Temperatur bei Fenster offen runter geregelt wird?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 29 Februar 2016, 21:04:44
Zitat von: tomspatz am 29 Februar 2016, 20:52:05
@ Dietmar
Die Fibaros FGK 101 laufen super,vielen Dank für die Umsetzung.
Den Syntaxfehler mit zwei Fenstersensoren habe ich gefunden, ohne Komma auflisten funktioniert.  ;)
Könnte man nicht noch etwas einbauen damit die Temperatur bei Fenster offen runter geregelt wird?

Diese Anforderung ist bei FS20-FHT und Homematik automatich durch die Kopplung  tzwischen Thermostat und  Fensterkontakt gegeben, deshalb bisher nicht umgesetzt.

Und leider lohnt es sicht nicht für für ein "Fibaros FGK 101" so etwas umzusetzen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 29 Februar 2016, 21:08:50
Zitat von: roman1528 am 25 Februar 2016, 14:57:42
Moin.

Wieso werden beim Start von FHEM die aktuellen Temperaturen gestzt?

Kann man das irgendwie unterbinden?

Problem:
Habe gerade ein Update gemacht und FHEM neu gestartet. Dadurch hat HeatingControl natürlich die Temperaturen wieder gesetzt und meine Heizung im Schlafzimmer hat schön die Umwelt geheizt weil's Fenster noch auf war!

Kann man das implementieren oder gibt es schon eine Möglichkeit bei FHEM-Start die Temperaturen nicht zu setzen? Also die Ausführung bis zum nchsten wechsel zu unterbinden?

Grüße^^

Das ist kein Fehler sondern ein Feature.
So nach dem Motto: Eine Heizung soll beim Start eines HC sofort auf den aktuell einzustellenden Wert umstellen.

Ich nehme an, du hast die Heizungen irgendwie ohne ein HC ausgestellt.

Vielleicht solltest du für so etwas separate Profile anlegen und über ein dummy zwischen den Profilen wechseln. Dann wird auch beim Start der Inhalt des dummys ausgewertet und korrekt geschaltet. Zugegeben - etwas aufwendiger auf funktioniert gut.

Es gibt weiterhin die Möglichkeit mit {Heating_Control_SetAllTemps()} dieses Verhalten jederzeit zu erzwingen.
Also irgendwie die An- oder Abwesenheit ermitteln und anschließend mit Heating_Control_SetAllTemps() die HC zu schalten.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: roman1528 am 01 März 2016, 10:11:53
Zitat von: Dietmar63 am 29 Februar 2016, 21:08:50
Das ist kein Fehler sondern ein Feature.
So nach dem Motto: Eine Heizung soll beim Start eines HC sofort auf den aktuell einzustellenden Wert umstellen.

Na gut. Das sehe ich ein und macht Sinn.

Zitat von: Dietmar63 am 29 Februar 2016, 21:08:50
Ich nehme an, du hast die Heizungen irgendwie ohne ein HC ausgestellt.

Ja selbstverständlich. Oder man muss ein Feature in Heating_Control implementieren welches die Temperatur bei Fenster auf (Kontakte werden ja schon überwacht) von sich aus runter regelt.
Für ein offenes Fenster ein extra Heating_Control bzw. Profil anzulegen finde ich irrsinnig! Aktuell mache ich das per notify.

Andere Frage:
Wenn man im Heating_Control-Device einen Fensterkontakt definiert hat... wird dieser auch beim Start (von FHEM) berücksichtigt? Oder wird da stumpf geschalten?

Ich werde da weiter testen und konfigurieren und mich ggf. nochmal melden wenn ich Probleme habe  :)

Zitat von: Dietmar63 am 29 Februar 2016, 21:08:50
Es gibt weiterhin die Möglichkeit mit {Heating_Control_SetAllTemps()} dieses Verhalten jederzeit zu erzwingen.
Also irgendwie die An- oder Abwesenheit ermitteln und anschließend mit Heating_Control_SetAllTemps() die HC zu schalten.

Das nutze ich bereits für z.B. meinen "Eco-Taster". Der schöne Sache!

Grüße^^
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 01 März 2016, 13:40:23
ZitatDiese Anforderung ist bei FS20-FHT und Homematik automatich durch die Kopplung  tzwischen Thermostat und  Fensterkontakt gegeben, deshalb bisher nicht umgesetzt.
Ja das kenne ich.
ZitatUnd leider lohnt es sicht nicht für für ein "Fibaros FGK 101" so etwas umzusetzen.
Ist Verständlich.

Noch etwas zu mehreren HC Modulen du schriebst das du mehrere pro Raum hast.
Kann ich mir das so vorstellen:
define HeizungssteuerungBueroAnwesend Heating_Control HeizungBueroRegler So|09:30|20.00 Mo-Sa|07:30|20.00 22:30|19.00 (ReadingsVal("HeizungKontrolle", "state", "no") eq "anwesend")

define HeizungssteuerungBueroAbwesend Heating_Control HeizungBueroRegler Mo-So|06:00|19.00 (ReadingsVal("HeizungKontrolle", "state", "no") eq "abwesend")

define HeizungssteuerungBueroAUS Heating_Control HeizungBueroRegler Mo-So|06:00|12.00 (ReadingsVal("HeizungKontrolle", "state", "no") eq "aus")


Dann mit einem dummy HeizungKontrolle den Status setzten auf anwesend,abwesend oder aus.
Sprich die laufen alle parallel, zum angegebenen Zeitpunkt wird der Status des dummy's ausgelesen und dann ggf. ausgeführt.
Bin ich auf dem richtigem Weg?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 März 2016, 18:35:23
ZitatJa selbstverständlich. Oder man muss ein Feature in Heating_Control implementieren welches die Temperatur bei Fenster auf (Kontakte werden ja schon überwacht) von sich aus runter regelt.
Für ein offenes Fenster ein extra Heating_Control bzw. Profil anzulegen finde ich irrsinnig! Aktuell mache ich das per notify.

Sollte zwischen  Thermostat und Fensterkontakt automatisch laufen - Es gäbe noch die Möglichkeit das Attribute delayedExecutionCond zu nutzen.

ZitatAndere Frage:
Wenn man im Heating_Control-Device einen Fensterkontakt definiert hat... wird dieser auch beim Start (von FHEM) berücksichtigt? Oder wird da stumpf geschalten?

Auch dies obliegt der Verbindung zwischen Thermostat und Fensterkontakt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 01 März 2016, 18:37:54
ZitatNoch etwas zu mehreren HC Modulen du schriebst das du mehrere pro Raum hast.
Kann ich mir das so vorstellen:
Code: [Auswählen]

define HeizungssteuerungBueroAnwesend Heating_Control HeizungBueroRegler So|09:30|20.00 Mo-Sa|07:30|20.00 22:30|19.00 (ReadingsVal("HeizungKontrolle", "state", "no") eq "anwesend")

define HeizungssteuerungBueroAbwesend Heating_Control HeizungBueroRegler Mo-So|06:00|19.00 (ReadingsVal("HeizungKontrolle", "state", "no") eq "abwesend")

define HeizungssteuerungBueroAUS Heating_Control HeizungBueroRegler Mo-So|06:00|12.00 (ReadingsVal("HeizungKontrolle", "state", "no") eq "aus")


Dann mit einem dummy HeizungKontrolle den Status setzten auf anwesend,abwesend oder aus.
Sprich die laufen alle parallel, zum angegebenen Zeitpunkt wird der Status des dummy's ausgelesen und dann ggf. ausgeführt.
Bin ich auf dem richtigem Weg?

Völlig richtig - und wenn nach dem setzen des dummys die Temperatur sofort geschaltet werden soll dann Heating_Control_SetAllTemps() aufrufen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: roman1528 am 02 März 2016, 08:47:28
Zitat von: Dietmar63 am 01 März 2016, 18:35:23
Sollte zwischen  Thermostat und Fensterkontakt automatisch laufen - Es gäbe noch die Möglichkeit das Attribute delayedExecutionCond zu nutzen.

Auch dies obliegt der Verbindung zwischen Thermostat und Fensterkontakt.

Ok. schau ich mir an...

Genau das habe ich abgestellt! Keine Ferbindung mehr zwischen HT <-> SC <-> WT.
Aus einem einfachen Grund: Wenn schon FHEM warum dann nicht richtig FHEM?!? Alles kontrollieren...
Außerdem lief das instabil. Wenn ich ein Fenster auf gemacht habe ist das HT erst auf die WindowOpenTemperature gegangen... Aber kurz drauf (teilweise 10 sek.) wieder auf die Wochenprogramm-Temperatur. Ob da FHEM oder das WT reingepfuscht haben kann ich leider nicht sagen. Auf jeden Fall habe ich regelmäßig für die Luftwaffe geheizt, was mir persönlich nicht so gefällt.
Deswegen lasse ich Fensteröffnungen jetzt von FHEM kontrollieren.

Grüße^^
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 02 März 2016, 18:08:09
Bei mir hat der FK in Verbindung mit dem Thermostat bisher gut funktioniert. HC verzögert in solch einem Fall eine anstehende Schaltung
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 02 März 2016, 21:02:20
ZitatVöllig richtig - und wenn nach dem setzen des dummys die Temperatur sofort geschaltet werden soll dann Heating_Control_SetAllTemps() aufrufen
Also wenn die Bude auf Heizung "aus", ist greift das HC_aus Profil. Ich setzte mit den dummy Heizung "an", dann würde dieses HC_an Profil erstmals nach der NÄCHSTEN eingestellten Zeit die neuen Temperaturen setzen? OK so?
Und mit Heating_Control_SetAllTemps() wird das dann JETZT übernommen?? OK so ?

Wo kommt das denn rein? das verstehe ich noch nicht. :-\ SORRY
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 02 März 2016, 21:53:01
bei mir durch ein notify auf das dummy, bei mir Heizung:


define Heizung                dummy ;
attr   Heizung                webCmd Aus:Ueb:Ein ;
...
define HeizStatus2            notify Heizung:.*                          {Heating_Control_SetAllTemps()} ;
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 06 März 2016, 16:44:39
Hallo Dietmar
ich habe scheinbar noch irgendwo einen Wurm drin, ich poste erst mal Code:
Das sind die drei Zustände pro Raum:
# Heizungsstereurung Büro
# anwesend
define HeizungssteuerungBueroAnwesend Heating_Control HeizungBueroRegler So|09:30|20.00 Mo-Sa|07:30|20.00 22:30|19.00 (ReadingsVal("Heizungssteuerung", "state", "no") eq "anwesend")
attr HeizungssteuerungBueroAnwesend alias Heizungssteuerung Büro anwesend
attr HeizungssteuerungBueroAnwesend devStateIcon active:Restart inactive:StandBy
attr HeizungssteuerungBueroAnwesend icon sani_heating_automatic
attr HeizungssteuerungBueroAnwesend room Heizungssteuerung
attr HeizungssteuerungBueroAnwesend windowSensor FensterBuero
# abwesend
define HeizungssteuerungBueroAbwesend Heating_Control HeizungBueroRegler 07:30|19.00 (ReadingsVal("Heizungssteuerung", "state", "no") eq "abwesend")
attr HeizungssteuerungBueroAbwesend alias Heizungssteuerung Büro abwesend
attr HeizungssteuerungBueroAbwesend devStateIcon active:Restart inactive:StandBy
attr HeizungssteuerungBueroAbwesend icon sani_heating_automatic
attr HeizungssteuerungBueroAbwesend room Heizungssteuerung
attr HeizungssteuerungBueroAbwesend windowSensor FensterBuero
# aus
define HeizungssteuerungBueroAus Heating_Control HeizungBueroRegler 11:30|4.00 Sa|11:15|28 (ReadingsVal("Heizungssteuerung", "state", "no") eq "aus")
attr HeizungssteuerungBueroAus alias Heizungssteuerung Büro aus
attr HeizungssteuerungBueroAus devStateIcon active:Restart inactive:StandBy
attr HeizungssteuerungBueroAus icon sani_heating_automatic
attr HeizungssteuerungBueroAus room Heizungssteuerung
attr HeizungssteuerungBueroAus windowSensor FensterBuero


Dann kommt der dummy zum umschalten:
define Heizungssteuerung dummy
attr Heizungssteuerung alias Heizungssteuerung
attr Heizungssteuerung devStateIcon .*anwesend:status_available .*abwesend:status_away_1 .*aus:status_standby
attr Heizungssteuerung group Heizung und Temperatur
attr Heizungssteuerung icon sani_heating
attr Heizungssteuerung room Heizungssteuerung,Verwaltung
attr Heizungssteuerung setList state:anwesend,abwesend,aus
attr Heizungssteuerung webCmd state


Und letztendlich das notyfy das darauf horcht:
define HeizungsteuerungAenderung notify Heizungssteuerung:.* {Heating_Control_SetAllTemps()}

So nachdem ich den dummy um 16:23 Uhr setze auf abwesend passiert folgendes:
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAbwesend inactive
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAbwesend active
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAbwesend nextUpdate: 2016-03-07 07:30:00
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAbwesend nextValue: 19.00
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAbwesend currValue: 19.00
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAnwesend inactive
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAnwesend nextUpdate: 2016-03-06 22:30:00
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAnwesend nextValue: 19.00
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAnwesend currValue: 20.00
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAus inactive
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAus nextUpdate: 2016-03-07 11:30:00
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAus nextValue: 4.00
2016-03-06 16:23:34 Heating_Control HeizungssteuerungBueroAus currValue: 4.00


Parallel dazu finde ich im log:
2016.03.06 16:23:35 3: Heating_Control_SetAllTemps() done on: HeizungssteuerungBadAbwesend HeizungssteuerungBadAnwesend HeizungssteuerungBadAus HeizungssteuerungBueroAbwesend HeizungssteuerungBueroAnwesend HeizungssteuerungBueroAus HeizungssteuerungKuecheAbwesend HeizungssteuerungKuecheAnwesend HeizungssteuerungKuecheAus HeizungssteuerungSchlafzimmerAbwesend HeizungssteuerungSchlafzimmerAnwesend HeizungssteuerungSchlafzimmerAus HeizungssteuerungWohnzimmerAbwesend HeizungssteuerungWohnzimmerAnwesend HeizungssteuerungWohnzimmerAus

Doch sollte doch jetzt das HC die Temperatur sofort auf die 19 Grad setzten, macht es aber nicht.
Hoffe das das genug Futter ist.
LG
Tom
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 06 März 2016, 21:40:09
Wwelche Heizung hast du? fs20, homematic?

Das Setzen der Temperatur dauert ein wenig. Du könntest während der Testphase mal bei allen HC verbose auf 4 setzen. Dann gibt das Modul logging aus.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 06 März 2016, 22:25:11
ZitatWwelche Heizung hast du? fs20, homematic?
Alles zwave.

Oder läuft das HC nur umgekehrt? Also wenn die aktuellen Temperaturen klein sind, wird "sofort" auf gross geschaltet.
Ich habe jetzt zum testen andersherum gemacht, vom anwesend mit höheren Temp. zu abwesend min niedrigeren Temp.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 06 März 2016, 22:27:21
Vielleicht wird Zwave noch nicht als Heizung erkannt - setze bitte verbose 5
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 07 März 2016, 10:22:37
Ich bediene mit HC die devices gar nicht direkt sondern über einen dummy.
Das funktioniert sonst einwandfrei.
define HeizungBueroRegler dummy
attr HeizungBueroRegler alias Heizung Büro
attr HeizungBueroRegler group Heizung und Temperatur
attr HeizungBueroRegler icon sani_heating_manual
attr HeizungBueroRegler room Büro,System
attr HeizungBueroRegler setList state:4.00,4.50,5.00,5.50,6.00,6.50,7.00,7.50,8.00,8.50,9.00,9.50,10.00,10.50,11.00,11.50,12.00,12.50,13.00,13.50,14.00,14.50,15.00,15.50,16.00,16.50,17.00,17.50,18.00,18.50,19.00,19.50,20.00,20.50,21.00,21.50,22.00,22.50,23.00,23.50,24.00,24.50,25.00,25.50,26.00,26.50,27.00,27.50,28
attr HeizungBueroRegler stateFormat {sprintf(" %.1f °C",(ReadingsNum("HeizungBueroRegler","state",0)))}
attr HeizungBueroRegler webCmd state
define HeizungBueroReglerNotify notify HeizungBueroRegler:* {\
my $reglerwert =\
ReadingsVal("HeizungBueroRegler","state","on");;\
fhem ("set HeizungBuero thermostatSetpointSet $reglerwert");;\
}

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 07 März 2016, 14:20:47
Dann kann HC nicht erkennen, dass Heizungen gesteuert werden.
Nur bei Heizungen wird per Heating_Control_SetAllTemps()   auch in der Vergangenheit geschaltet.

Es gibt noch den Parameter "switchInThePast" oder so ähnlich. Damit kann man das Schalten Vergangener Zeiten erzwingen. Müsste helfen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 07 März 2016, 15:46:54
aber warum funktioniert das dann einwandfrei mit den dummy?
Heating_Control_SetAllTemps()  "bewegt" doch auch NUR die einzelnen HC oder?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 08 März 2016, 11:32:24
switchInThePast gefunden
das muss dann in jedem HC auf 1 stehen.

Wann wird das denn gesetzt?
Nicht mit dem notyfy.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 08 März 2016, 17:27:01
Als Attribut nach der Definition
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 08 März 2016, 18:21:07
ZitatAls Attribut nach der Definition

Ja das ist mir klar. Bei jedem HC als Attribut.
Dann schalte ich mit dem dummy die zustände:
define Heizungssteuerung dummy
attr Heizungssteuerung alias Heizungssteuerung
attr Heizungssteuerung devStateIcon .*anwesend:status_available .*abwesend:status_away_1 .*aus:status_standby
attr Heizungssteuerung group Heizung und Temperatur
attr Heizungssteuerung icon sani_heating
attr Heizungssteuerung room Heizungssteuerung,Verwaltung
attr Heizungssteuerung setList state:anwesend,abwesend,aus
attr Heizungssteuerung webCmd state


Die entsprechenden HC werden dann über den dummy active und setzen dann sofort die Temperatur die zum letzten Zeitpunkt definiert wurde.
Kein notify mehr ?
Das reicht dann so ?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 08 März 2016, 18:37:53
Doch notify muss sein! Sonst kommt das Ergebnis, dass sich ein dummy geändert hat nicht bei den HC an
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 08 März 2016, 19:22:41
SORRY das schnalle ich jetzt nicht ....
Hast du mal ein Beispiel für ein solches notify?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: persching am 03 Juni 2016, 19:21:28
Ich hab auch eine Verständnisfrage zum Attribut delayedExecutionCond. Ich hab einen dummy der 4 verschiedene Heating_Control je Heizkörper unterscheidet. Das habe ich direkt in der Definition mit if dahinter gehängt. Jetzt wollte ich noch delayedExecutionCond nutzen, wenn meine Umwälzpumpe aus ist brauche ich auch nicht die Heizung hoch schalten, denn dann kann es auch nicht warm werden. Ich hab dazu einen Fensterkontakt als digitalen Eingang genutzt. Somit ist das dann als ReadingsVal onoff erfasst. Leider schaltet das Heating_Control unabhängig von der delayedExecutionCond.

Internals:
   COMMAND    { fhem("set $NAME desiredTemperature $EVENT") if (ReadingsVal("HC_Bad_Off_Profile", "state", "") eq "Minimal")}
   CONDITION
   DEF        OG_Bad_T mo-fr|05:05|23 mo-fr|06:30|18 mo-fr|19:10|17.5 $we|08:00|20 $we|19:00|18 { fhem("set $NAME desiredTemperature $EVENT") if (ReadingsVal("HC_Bad_Off_Profile", "state", "") eq "Minimal")}
   DEVICE     OG_Bad_T
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       HC_Bad_Min
   NR         175
   Profil 0: Sonntag 08:00:00 20, 19:00:00 18
   Profil 1: Montag 05:05:00 23, 06:30:00 18, 19:10:00 17.5
   Profil 2: Dienstag 05:05:00 23, 06:30:00 18, 19:10:00 17.5
   Profil 3: Mittwoch 05:05:00 23, 06:30:00 18, 19:10:00 17.5
   Profil 4: Donnerstag 05:05:00 23, 06:30:00 18, 19:10:00 17.5
   Profil 5: Freitag 05:05:00 23, 06:30:00 18, 19:10:00 17.5
   Profil 6: Samstag 08:00:00 20, 19:00:00 18
   Profil 7: Wochenende 08:00:00 20, 19:00:00 18
   STATE      17.5
   STILLDONETIME 0
   TYPE       Heating_Control
   Readings:
     2016-06-03 19:10:01   currValue       17.5
     2016-06-03 19:10:01   nextUpdate      2016-06-04 08:00:00
     2016-06-03 19:10:01   nextValue       20
     2016-06-03 19:10:01   state           17.5
   SWITCHINGTIMES:
     mo-fr|05:05|23
     mo-fr|06:30|18
     mo-fr|19:10|17.5
     $we|08:00|20
     $we|19:00|18
   Timer:
     Hc_bad_min_2:
       HASH       HC_Bad_Min
       MODIFIER   2
       NAME       HC_Bad_Min_2
       immerSchalten 1
     Hc_bad_min_3:
       HASH       HC_Bad_Min
       MODIFIER   3
       NAME       HC_Bad_Min_3
     Hc_bad_min_settimerofday:
       HASH       HC_Bad_Min
       MODIFIER   SetTimerOfDay
       NAME       HC_Bad_Min_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     Hc_bad_min_delayed:
       HASH       HC_Bad_Min
       MODIFIER   delayed
       NAME       HC_Bad_Min_delayed
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         08:00:00   20
         19:00:00   18
       1:
         05:05:00   23
         06:30:00   18
         19:10:00   17.5
       2:
         05:05:00   23
         06:30:00   18
         19:10:00   17.5
       3:
         05:05:00   23
         06:30:00   18
         19:10:00   17.5
       4:
         05:05:00   23
         06:30:00   18
         19:10:00   17.5
       5:
         05:05:00   23
         06:30:00   18
         19:10:00   17.5
       6:
         08:00:00   20
         19:00:00   18
       7:
         08:00:00   20
         19:00:00   18
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1464923100
       PARA       23
       TIME       05:05
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1464928200
       PARA       18
       TIME       06:30
       TAGE:
         1
         2
         3
         4
         5
     3:
       EPOCH      1464973800
       PARA       17.5
       TIME       19:10
       TAGE:
         1
         2
         3
         4
         5
     4:
       EPOCH      1464933600
       PARA       20
       TIME       08:00
       TAGE:
         7
     5:
       EPOCH      1464973200
       PARA       18
       TIME       19:00
       TAGE:
         7
   Profile_idx:
     0:
       08:00:00   4
       19:00:00   5
     1:
       05:05:00   1
       06:30:00   2
       19:10:00   3
     2:
       05:05:00   1
       06:30:00   2
       19:10:00   3
     3:
       05:05:00   1
       06:30:00   2
       19:10:00   3
     4:
       05:05:00   1
       06:30:00   2
       19:10:00   3
     5:
       05:05:00   1
       06:30:00   2
       19:10:00   3
     6:
       08:00:00   4
       19:00:00   5
     7:
       08:00:00   4
       19:00:00   5
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   delayedExecutionCond ( { if (ReadingsVal("Umwaelzpumpe", "onoff", "") == 0) } )
   group      Profile
   room       R02 Badezimmer
   switchInThePast 1
   windowSensor OG_Bad_Fensterkontakt 
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: C0mmanda am 23 August 2016, 12:36:40
Moin,

habe mal eine grundlegende Frage zu der ich auch nach durchsuchen des kompletten Threads keine wirkliche Antwort gefunden habe:

Ich versuche HeatingControl mit einem command UND einer condition zu definieren was jedoch nicht klappt.

Ist es grundsätzlich möglich command UND condition zu definieren? Ich habe das Gefühl es geht nur eines von beiden.....
Falls es doch geht wäre bitte jemand so freundlich und würde mir den GENAUEN Syntax anhand eines Beispiels schreiben?
Ich versuche es seit ca. 1 Stunde und bekomme es nicht hin. Und ja, Commandref und Wiki habe ich gelesen, mehr als einmal, komme dennoch nicht klar....

Vielen Dank.

grtz
CmdA
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 23 August 2016, 12:43:25
mach mal ein Beispiel wie du dir das vorstellst
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: C0mmanda am 23 August 2016, 15:10:58
Zitat von: Dietmar63 am 23 August 2016, 12:43:25
mach mal ein Beispiel wie du dir das vorstellst

Mein Gedanke ging in diese Richtung:

define HC_Kueche Heating_Control eg_KUE_Clima 12345|6:00|day 12345|22:00|night {(subHC($NAME,$EVENT))}|(ReadingsVal("HCAutomatik", "state", "") eq "on")

Ist nur ein Beispiel.
Ich dachte mir das so dass Heating_Control die Sub (command) nach Zeitplan ausführt wenn HCAutomatik wahr ist (condition).
Andernfalls nicht.

Wobei sich mir dann als nächstes die Frage stellt ob die sub ausgeführt wird wenn die condition erst innerhalb des Zeitplans wahr wird.
(Im Beispiel also z.B. um 7Uhr).

Für mich liest sich der Syntax define <name> Heating_Control <device> [<language>] <wochentage;] <profile> <command>|<condition> grundsätzlich so als könne ich beides definieren.

Es steht auch nirgendwo geschrieben das nur eines von beiden geht. (command oder condition).
Ist auch alles kein Problem für mich um das Modul zu nutzen, ich wollte nur grundsätzlich wissen ob das vorgesehen ist weil es in meinen Augen per Syntax möglich ist, ich es aber nicht hinbekomme.

Danke.

grtz
CmdA
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 24 August 2016, 21:23:39
{(subHC($NAME,$EVENT))}|(ReadingsVal("HCAutomatik", "state", "") eq "on")

so wie du es verstanden hast ist es nicht gemeint, man kann entweder einen
<command>
{fhem("set $NAME $EVENT") if(ReadingsVal("HCAutomatik", "state", "") eq "on")}
oder eine
<condition>
(ReadingsVal("HCAutomatik", "state", "") eq "on")
angeben.

Wenn du dich für <command> entscheidest musst du die Blaupause für den zu sendenden Befehl selbst angeben. $NAME $EVENT werden durch den Gerätenamen  bzw. Parameter ersetzt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: C0mmanda am 25 August 2016, 17:50:04
Alles klar.

Vielen Dank für die Rückmeldung. Jetzt habe ich es verstanden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: SVBE am 19 September 2016, 21:34:51
Hallo zusammen,

erstmal vielen Dank für das tolle Modul, ich bin noch in der Anfängerphase habe aber Profianforderung :D...

Ich habe da eine Frage, ich habe keine Heizkörper da ich eine Elektrofußbodenheizung habe. Die einzelnen Heizkreise
habe ich an Homematic Aktoren angeschlossen die ich einzeln schalten kann. Einen weiteren Kreis habe ich an einen ZWave Schaltaktor angeschlossen.

Soweit so gut.

Die Temperatur nehme ich mit unterschiedlichen Sensoren auf. Erschwerend kommt hinzu das ich einen Kachelofen in Betrieb habe der die Hauptwärme
erzeugt, der Fußboden soll also nur "Fußwarm" werden...

1. Temperatur Sensor Boden
2. Verschiedene Temperatur Sensor für die Luft

Ich bräuchte also zum einen eine Abhängig von der Tageszeit und zum anderen von der Temperatur des Bodensensors.

Ist das möglich?


Vielen Dank für die Unterstützung und ein schönen Abend.

Grüße
Sven
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 19 September 2016, 22:38:44
Ich glaube eher nicht dass dieses Modul gut geeignet ist deine Anforderung umzusetzen.

Es geht grundsätzlich davon aus, dass einem Thermostat zu den verschiedenen Tageszeiten nur eine Solltemperatur vorgegeben wird und sich dann das Thermostat selbst um die Regelung kümmert.

Du benötigst eher ein Modul, das sich ständig mit Soll- Istvergleichen einem Soll nähert.
Ein Modul, das so etwas kann ist HCS, HCS kann als device ein Heating_Control schalten.

PID20 kommt vielleicht auch in Frage. Allerdings habe ich lange nichts hier im Forum mehr zum Modul gelesen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Hans Franz am 19 September 2016, 23:57:44
ZitatAllerdings habe ich lange nichts hier im Forum mehr zum Modul gelesen.
Ich benutze PID20 seit drei Wintern zur Ansteuerung meiner Heizkörper mittels des Heating_Control-Moduls.
Obwohl PID-Regler, glaube ich, eigentlich optimal für schnellregelnde System sind (Motorsteuerung im PKW) wird bei meiner trägen Heizung eine Ist-Temperatur erreicht, die in der Regel maximal nur um ein halbes Grad Celsius vom Soll-Wert abweicht mit schönem, finde ich, Einschwingverhalten.
Heating_Control setzt den Sollwert in einen dummy (damit auch manuell eine abweichende Solltemperatur angeben werden kann). Ein notify auf den dummy setzt den Sollwert im PID20.
Weitere Optimierungen sollten hier im notify kein Problem sein.
Ich find's optimal! 

Gruß
Hans
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 20 September 2016, 20:17:08
 HCS kann als device ein Heating_Control schalten.

Es ist genau verdreht. Heating_Control kann HCS und pid20 steuern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: hietzi am 21 September 2016, 21:51:52
Hallo alle zusammen.
Ich komme hier nicht weiter evtl. hab ihr eine Lösung für mich oder aber sie ist eh einfach dann entschuldigt bitte bin noch ziemlich frisch in fhem.

Ich habe folgendes Script im Einsatz
#############Kontrolle der Gastherme ueber MAX-Schaltkontakt Beginn##################
#### Heizung: Winterbetrieb Sommerbetrieb
define HA_Heizung_Modus dummy
attr HA_Heizung_Modus alias Betriebsmodus
attr HA_Heizung_Modus group Betriebsmodus
attr HA_Heizung_Modus room System
attr HA_Heizung_Modus setList state:Winter,Sommer
attr HA_Heizung_Modus userReadings HCS_TEMP { if (ReadingsVal("HA_Heizung_Modus","state","Unbekannt") eq "Winter"){return 0} else {return 30};;}
attr HA_Heizung_Modus webCmd state
#Versuch mit HCS-Modul
define HCS_System HCS HA_Heizung_Schalter
attr HCS_System alias Heizungssteuerung
attr HCS_System deviceCmdOff desiredTemperature auto 17
attr HCS_System deviceCmdOn desiredTemperature auto 21
attr HCS_System event-on-change-reading state,devicestate,eco,overdrive
attr HCS_System exclude HA_Heizung_Schalter
attr HCS_System idleperiod 5
attr HCS_System interval 1
attr HCS_System mode valve
attr HCS_System room System
attr HCS_System sensor HA_Heizung_Modus
attr HCS_System sensorReading HCS_TEMP
attr HCS_System sensorThresholdOff 20
attr HCS_System sensorThresholdOn -1
attr HCS_System thermostatThresholdOff 0.5
attr HCS_System thermostatThresholdOn 0.5
attr HCS_System valveThresholdOff 10
attr HCS_System valveThresholdOn 40
#############Kontrolle der Gastherme ueber MAX-Schaltkontakt Ende####################


Funktioniert auch bestens nur reichen die Credits niee da ja HCS jede Minute den Status abfrägt.

Jetzte habe ich folgendes gefunden

https://forum.fhem.de/index.php/topic,37980.0.html

In diesem Fred hat jemand einen Dummy erstellt der die Credits schont :-)
define CV_Schakelaar dummy
attr CV_Schakelaar devStateIcon off:sani_heating@blue on:sani_heating@red
attr CV_Schakelaar setList state:on,off
attr CV_Schakelaar webCmd state
set CV_Schakelaar off

define CV_Schakelaar_Changed notify CV_Schakelaar {my $r1 = $value{"CV_Schakelaar"};; my $r2 = ReadingsVal("CV_Relais","desiredTemperature","off");; if ($r1 ne $r2) {fhem "set CV_Relais desiredTemperature $r1"}}

define CV_Relais Max HeatingThermostat 0d25b0

define CV_Controller HCS CV_Schakelaar
set CV_Controller interval 1
attr CV_Controller devStateIcon idle:sani_heating@blue demand:sani_heating@red
attr CV_Controller deviceCmdOn on
attr CV_Controller deviceCmdOff off
attr CV_Controller exclude CV_Relais
attr CV_Controller idleperiod 3


Nur ich habe leider keinen schimmer wie ich die beiden Scripte miteinander verbinde.
Es wäre der über drüber Hammer wenn mir hier wer helfen könnte.

Vielen Dank und lg
Chris
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Andre0909 am 03 Oktober 2016, 20:32:15
Vielleicht kann mir auch jmd helfen.
Habe diverese Weekdaytimer die auch richtig funktionieren.
Trotzdem bekomme ich bei allen mit Tag "7" einen LOG-Eintrag "in daylist now means $we(weekend) - see dokumentation!!!"
Wie bekomme ich das weg? Eine holiday-Datei ist beschrieben, die "Änderung" des WD ist bekannt, aber das Log schreibt mir da alle paar Stunden 10-12 mal die gleiche Zeile rein. Was mache ich falsch?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Oktober 2016, 21:03:17
Du verwendest vermutlich als Codierung für den Tag eine 7.
Die 7 hat sich von der Bedeutung vor einiger Zeit geändert.

Du könntest auf Symbole So-Sa oder so umstellen. Ich könnte den Hinweis herausnehmen, sollte sich ja jetzt herumgesprochen haben
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Andre0909 am 03 Oktober 2016, 21:25:15
Ja genau nutze 7 und habe gedacht ich mache as falsch wegen dem Log-Eintrag :) Wenn das Standardmäßig kommt ist das ja dann kein Fehler. Rausnehmen wäre natürlich super. Habe gleich noch eine 2. Frage. Leider reagieren meine Somfy-Rolläden nicht immer direkt, manchmal muss der Befehl ein zweites Mal raus. Jetzt habe ich gelesen das ein repeat nicht vorgesehen ist, gibt es andere Möglichkeiten als den WD Timer einfach 2 min später nochmal zu setzen?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Oktober 2016, 22:51:17
7 bedeutet wie 8 nicht Sonntag oder Samstag - siehe comnandref
WDT hat keine Repeat Funktion. Du solltest vielleicht die Empfangsbedingungen verbessern.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 10 Oktober 2016, 09:04:01
Ist das richtig das das so in die Eingabezeile eingegeben NICHT funktioniert?
set {Heating_Control_SetTemp("HeizungssteuerungSchlafzimmerAn")}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 10 Oktober 2016, 16:52:14
ja


{Heating_Control_SetTemp("HeizungssteuerungSchlafzimmerAn")}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 11 Oktober 2016, 09:26:56
Hallo Dietmar
in der Tat
{Heating_Control_SetTemp("HeizungssteuerungSchlafzimmerAn")}
So funktioniert das prima. Wobei dann unterhalb der Eingabezeile soetwas auftaucht:
HASH(0x2c0e190)
Das ganze wird allerdings ausgeführt und ist dann auch im Log zu finden.

Habe allerdings versucht das so in einem DOIF zu verwenden.
([FensterSchlafzimmerLinks] eq "closed" and [Heizungssteuerung] eq "an" and [SchlafzimmerLueftenStatus] eq "ja") (set SchlafzimmerLueftenStatus nein, {Heating_Control_SetTemp("HeizungssteuerungSchlafzimmerAn")})
in diesem Fall wird es komplett ausgelassen, wobei der dummy <SchlafzimmerLueftenStatus > gesetzt wird. Und ich bin nicht sicher wo der Fehler liegt.
Bin damit auch schon im DOIF Forum unterwegs, gibt es da irgendwelche Inkompatibilitäten zwischen den Modulen?

LG
Tom
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 11 Oktober 2016, 17:28:06
An sich nicht.
Du mischt so wie du es gemacht hast fhem-Befehle und PerlCode.
Ob das in Doif als Parameter geht, kann ich nicht sagen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 11 Oktober 2016, 17:35:52
Ja geht, mache ich auch mit deinem Modul
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 11 Oktober 2016, 18:27:36
Dann vielleicht mal Logging in Doif einschalten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Christian72D am 25 Oktober 2016, 16:49:59
Ich habe seit ein paar Tagen ein Problem mit dem Modul HCS: nach einem Reboot ist es nicht mehr aktiv, das war es Anfang des Jahres aber noch.
Kann sowas durch ein Update gekommen sein?
Und wie kann ich das SO einstellen daß es automatisch läuft?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 01 November 2016, 17:49:12
@ Dietmar63
Ich habe ein "komisches" Verhalten ztw. kann es allerdings nicht wirklich nachvollziehen.

Ist Zustand: Pro Raum drei HC's "an", "abwesend", "aus". Diese werden mit einem notify passend "active" "inactive" gesetzt.
Bei den "an" sowie "abwesend" HC's wird auch das attr windowSensor verwendet.
Jetzt passiert folgendes (ztw.) Im Moment ist ja Status "an", Fenster auf wird erkannt aber vom "falschen" ("abwesend") HC verzögert. Das selbe "falsche" erkennt dann ja auch Fenster zu.
Es passiert halt nur wenn während das Fenster auf und das HC eine andere Temperatur setzen soll.
Komischerweise kriege ich da kein Routine raus, Einen Morgen habe ich mehrere Fenster zum passenden Zeitpunkt extra geöffnet. Das haben alle "an" HC's die Verzögerung gesetzt.
Heute schon wieder mal ein "abwesend" HC.

Kannst du dir da einen Reim raus machen? Gibt es da ggf. einen Zusammenhang mit der alphabetischen Reihenfolge? Aber das nur Manchmal  ????

LG
Tom
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 02 November 2016, 06:38:57
Das hört sich in der Tat sehr merkwürdig an.
Versuch mal bei einem oder zwei problematischen  Timern mit verbose 5 im Protokoll nach Merkwürdigkeiten zu suchen.
Es wird eine Menge protokolliert

Maximal zwei damit du nicht durcheinander kommst.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: AmunRe am 09 November 2016, 17:24:02
Ich hab da mal eine Frage,

in dem Wiki steht
Zitat{Heating_Control_SetAllTemps()}
beim ECo Mode.

Wie komme ich an diese Funktion?

Ich würde auch gern alle Temperaturen dann setzen entsprechend der ECO Funktion.

Und im Wiki ist mir ein Fehler aufgefallen:

Beim define des ECO.Mode.Aktivator DOIF fehlt am ende die abschließende Klammer.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 09 November 2016, 18:35:19
Verstehe ich noch nicht

Mit der obigen Funktion werden alle Temperaturen gesetzt, wenn beispielsweise auf die Inhaltsänderung eines dummys reagiert werden soll

... ECO.Mode.Aktivator DOIF
DOIF steht meines Wissens nicht in der Doku zu Heating_Control
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: AmunRe am 09 November 2016, 19:56:01
Zitat von: Dietmar63 am 09 November 2016, 18:35:19
Verstehe ich noch nicht

Mit der obigen Funktion werden alle Temperaturen gesetzt, wenn beispielsweise auf die Inhaltsänderung eines dummys reagiert werden soll

... ECO.Mode.Aktivator DOIF
DOIF steht meines Wissens nicht in der Doku zu Heating_Control

ich hätte diese obige Funktion eben gern!

Und das zweite hab ich angehängt

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: c2j2 am 16 November 2016, 16:57:42
Ich versuche mich grad durch die Doku und diesen Thread durchzuwurschteln, und würde gern wissen, wie ich mehrere Heizungsthermostaten mit der gleichen Definition steuern kann.

Bei

define HC_wohnzimmer Heating_Control Heizungsventil_wohnzimmer_.*     <...>

kommt leider eine freundliche Meldung:

no switch in the yesterdays because of the devices type(Heizungsventil_wohnzimmer.* is not recognized as heating

Kann man so was noch einbauen? Durch alle passenden Devices iterieren?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: c2j2 am 16 November 2016, 18:06:52
Je tiefer man einsteigt, um so spannender wird es ;)

Problem: einfach ein Wochenprogramm, das eine Temperaturabsenkung hat (und z.B. per "set Temperaturabsenkung 2" dafür sorgt, dass alle Temperaturen um 2 Grad gesenkt werden).

Idee: benutze das "command" dieses Moduls:


define TemperaturAbsenkung dummy
attr TemperaturAbsenkung setList degree:0,1,2,3
attr TemperaturAbsenkung webCmd degree
set TemperaturAbsenkung 0
define n_TemperaturAbsenkung notify TemperaturAbsenkung:.* {{Heating_Control_SetAllTemps()}}

define HC_wohnzimmer Heating_Control Heizungsventil_wohnzimmer.Nord de Mo-Fr|05:00|22.0 Mo-Fr|06:30|20.0 Mo-Fr|15:00|21.0 So-Do|23:00|19.0 Sa-So|06:00|22.0 Fr-Sa|24:00|19.0 {\
  my $degree = max($EVENT - ReadingsVal("TemperaturAbsenkung", "degree", "0"), 16);;\
  Log(2, "set temp to " . $degree);;\
  fhem("set $NAME desiredTemperature $degree");;\
}
attr HC_wohnzimmer room Wochenprogramme


Aber da gibt es eine Optimierung, die den ALTEN Wert vergleicht, und dann das Command nicht aufruft:


2016.11.16 17:58:15 4: Heizungsventil_wohnzimmer.Nord 2016-11-16 15:00:00 10695s
2016.11.16 17:58:15 4: [HC_wohnzimmer] time=15:00/1479304800 delay=10695, nextDelay=10740, nextRetry=1479315540
2016.11.16 17:58:15 4: [HC_wohnzimmer] delayedExecutionCond:0
2016.11.16 17:58:15 4: [HC_wohnzimmer] result of delayedExecutionCond:0
2016.11.16 17:58:15 4: [HC_wohnzimmer] list of window sensors found: 'HC_wohnzimmer'
2016.11.16 17:58:15 4: [HC_wohnzimmer] condition: - Tage:7,8
2016.11.16 17:58:15 4: [HC_wohnzimmer] condition: - Tage:1,2,3,4,5
2016.11.16 17:58:15 4: [HC_wohnzimmer] Update   - past timer activated
2016.11.16 17:58:15 4: [HC_wohnzimmer] device type MAX:HeatingThermostat recognized, setModifier:desiredTemperature
2016.11.16 17:58:15 4: [HC_wohnzimmer] aktParam:22.0 newParam:22.0 - is  not disable


Somit ist dieser Weg verbaut. Wie kann man das am klügsten einbauen (ich will nicht überall eine Funktion aufrufen)? Oder ganz anders realisieren? Wie macht ihr so was, erst mal ohne Abwesenheitserkennung...

Bin grad eine Woche bei FHEM, und man entdeckt praktisch jede Stunde neue Sachen...

(mein nächster Versuch, die Temperatur als Formel berechnen zu lassen, ist leider auch fehlgeschlagen:


define HC_wohnzimmer Heating_Control Heizungsventil_wohnzimmer.Nord de Mo-Fr|05:00|{HC_Temp(23)}


weil der Teil wörtlich an die Routine übergeben wird. Schade aber auch ;)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: AmunRe am 16 November 2016, 20:22:11
Zitat von: c2j2 am 16 November 2016, 18:06:52


Somit ist dieser Weg verbaut. Wie kann man das am klügsten einbauen (ich will nicht überall eine Funktion aufrufen)? Oder ganz anders realisieren? Wie macht ihr so was, erst mal ohne Abwesenheitserkennung...



([HZ.Absenkung] eq "on" and [HCWZ:currValue] <= [Heizungsthermostat_WZ_Clima:desired-temp])(set Heizungsthermostat_WZ_Clima desired-temp {([HCWZ:currValue] -2)})
DOELSEIF ([HZ.Absenkung] eq "off")(set Heizungsthermostat_WZ_Clima desired-temp [HCWZ:currValue])
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: c2j2 am 16 November 2016, 21:20:14
OK, für die Akten: es geht. In die eigenen 99_myUtils.pm:

sub HC_Temp($)
{
  my $Temp = @_[0];
  my $degree = max($Temp - Value("TemperaturAbsenkung"), 16);
  # Log(1, "DEGREE = ". $degree . " - " . Value("TemperaturAbsenkung"));
  return $degree
}

sub HC_setTemp($$)
{
  my ($Device, $Temp) = @_;
  my $OldTemp = ReadingsVal($Device, "desiredTemperature", "0");
  Log(2, "HC_setTemp(): set $Temp deg in $Device. Was: $OldTemp");
  if ($Temp < $OldTemp || $Temp > $OldTemp) # no "!=" as it would compare strings
    {
Log(2, "FHEM: set $Device desiredTemperature $Temp");
fhem("set $Device desiredTemperature $Temp");
return 1;
}
  return 0;
}

und im FHEM:

define TemperaturAbsenkung dummy
attr TemperaturAbsenkung setList state:0,1,2,3,4,5
# attr TemperaturAbsenkung webCmd state
set TemperaturAbsenkung 0
define n_TemperaturAbsenkung notify TemperaturAbsenkung:.* {Heating_Control_SetAllTemps()}

define HC_wohnzimmer Heating_Control Heizungsventil_wohnzimmer.Nord de Mo-Fr|05:00|HC_Temp(23) <etc etc> {\
  Log(2, "HC results in: set $NAME desiredTemperature @{[eval $EVENT]} (from $EVENT)");;\
  HC_setTemp($NAME, eval $EVENT);;\
}
attr HC_wohnzimmer room Wochenprogramme


Ich bin aber gern für jede Schandtat zu haben, so sie besser ist ;)

Frage dazu: ich habe das HC_setTemp() gemacht, um überflüssige Packets über den Äther zu vermeiden. Ist das "set <device> desired Temperature <n>" von MAX optimiert, und ich brauche das nicht machen? Weß das jemand? Auf die "Schnelle" (PERL ist - ähem - nicht meine Stärke) kann ich es aus dem Modul-Code nicht ersehen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 16 November 2016, 23:42:47
define HC_wohnzimmer Heating_Control Heizungsventil_wohnzimmer.Nord de Mo-Fr|05:00|23   {HC_temp(%)}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 17 November 2016, 08:44:38
Moin Dietmar
bekomme heute nach fhem update und Neustart folgendes:
2016.11.17 08:32:55 1: [RolloBalkontuerAutomatik] invalid time <31:59:28> HH:MM[:SS]
2016.11.17 08:32:55 1: [RolloBalkontuerAutomatik] invalid time <31:59:28> HH:MM[:SS]
2016.11.17 08:32:55 1: [RolloBalkontuerAutomatik] invalid time <31:59:28> HH:MM[:SS]
2016.11.17 08:32:55 1: [RolloBalkontuerAutomatik] invalid time <31:59:28> HH:MM[:SS]
2016.11.17 08:32:55 1: [RolloBalkontuerAutomatik] invalid time <31:59:28> HH:MM[:SS]
2016.11.17 08:32:55 1: [RolloBalkontuerAutomatik] invalid time <31:59:28> HH:MM[:SS]
2016.11.17 08:32:55 1: [RolloBalkontuerAutomatik] invalid time <31:59:28> HH:MM[:SS]
2016.11.17 08:32:55 1: [RolloBalkontuerAutomatik] invalid time <31:59:28> HH:MM[:SS]


Die Definition ist:
defmod RolloBalkontuerAutomatik WeekdayTimer RolloBalkontuerWohnzimmer {sunrise("REAL",30)}|up {sunset("REAL",10920)}|down (ReadingsVal("Suedring111", "state", "no") ne "home")
attr RolloBalkontuerAutomatik alias Rollo Balkontür Automatik
attr RolloBalkontuerAutomatik devStateIcon active:Restart \d+.*:Restart .*:StandBy
attr RolloBalkontuerAutomatik group Rollo Einstellungen
attr RolloBalkontuerAutomatik icon fts_shutter_automatic
attr RolloBalkontuerAutomatik room Steuerung-Rollos

setstate RolloBalkontuerAutomatik inactive
setstate RolloBalkontuerAutomatik 2016-11-17 08:37:00 currValue up
setstate RolloBalkontuerAutomatik 2016-11-17 08:37:00 nextUpdate 2016-11-17 19:27:42
setstate RolloBalkontuerAutomatik 2016-11-17 08:37:00 nextValue down
setstate RolloBalkontuerAutomatik 2016-11-17 08:37:00 state inactive


Irgendwie schnallt es sunrise nicht, hat allerdings bislang so gelaufen. Die Anderen Rollos natürlich das selbe.
Hast du eine Idee?
LG
Tom
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 17 November 2016, 09:14:29
Habe es jetzt umgebaut, so scheint es OK zu sein:
defmod RolloBalkontuerAutomatik WeekdayTimer RolloBalkontuerWohnzimmer {sunrise_abs_dat($date,"REAL",30)}|up {sunset_abs_dat($date,"REAL",10920)}|down (ReadingsVal("Suedring111", "state", "no") ne "home")
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: c2j2 am 17 November 2016, 13:13:38
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: c2j2 am 17 November 2016, 14:18:20
@tomspatz:

"invalid time <31:59:28>" ist normal, wenn berechnet nach Sonnenaufgang - da werden 24 Stunden addiert, wenn der nächstmögliche Sonnenaufgang erst wieder am nächsten Tag ist.

Zitat"sunrise / sunset geben die absolute Zeit des nächsten Sonnenauf- bzw. -untergangs zurück, wobei 24 Stunden addiert werden, sofern das entsprechende Ereignis am nächsten Tag stattfindet"
http://www.fhemwiki.de/wiki/SUNRISE_EL (http://www.fhemwiki.de/wiki/SUNRISE_EL)

Also mit "at" um 0:01 2 Dummy-Variablen berechnen lassen und gut ist.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 19 November 2016, 19:22:21
so:
define HC_wohnzimmer Heating_Control Heizungsventil 19:20|23  {HC_temp($EVENT)};
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 21 November 2016, 08:51:12
Hallo Dietmar,

zunächst vielen Dank für dieses tolle Modul. Eine Frage allgemein zu den Conditions: Ist es richtig, dass in einem define immer nur eine Condition zulässig ist? Wenn ja, wäre es möglich, das Modul so zu optimieren, dass pro Schaltakt eine eigene Condition denkbar ist? So hätte man in einem Define alles definiert, was die Übersichtlichkeit und den WAF Faktor erhöht.

Danke und Gruß
Wolfgang
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: c2j2 am 21 November 2016, 08:57:54
Moin Dietmar,

das geht eben nicht, würde ich sagen, da der Parameter gleich bleibt, und gemäß


my $aktParam  = ReadingsVal($hash->{DEVICE}, $setModifier, "");
     $aktParam  = sprintf("%.1f", $aktParam)   if ($isHeating && $aktParam =~ m/^[0-9]{1,3}$/i);
     $newParam  = sprintf("%.1f", $newParam)   if ($isHeating && $newParam =~ m/^[0-9]{1,3}$/i);
...
  #Kommando ausführen
  if ($command && !$disabled && $activeTimer
    && $aktParam ne $newParam
...


das Kommando nur ausgeführt wird, wenn sich der Parameter (wenn er numerisch ist) ändert - was er bei einem festen Wert "23" nie tut.

Angenommen, die momentane Wunschtemp ist 23 ("desiredTemperature:23.0" vom Heizungsventil) , und im "define" der Heating_Control steht auch 23, dann wird das Kommando nie ausgeführt nach einem Absenkungswunsch, obwohl ich die Absenkung auf 21 Grad möchte. Weil "23.0" mit "23.0" verglichen wird, die Absenkung (auf 21.0) aber erst im $Command passiert, was aufgrund von $aktParam ne $newParam nicht ausgeführt wird.

Mein Trick verändert die Situation, $newParam ist "HC_Temp(23)", was nie "23.0" entspricht, somit wird immer das Kommando ausgeführt.

Eigentlich müßte man statt


  my $aktParam  = ReadingsVal($hash->{DEVICE}, $setModifier, "");
     $aktParam  = sprintf("%.1f", $aktParam)   if ($isHeating && $aktParam =~ m/^[0-9]{1,3}$/i);
     $newParam  = sprintf("%.1f", $newParam)   if ($isHeating && $newParam =~ m/^[0-9]{1,3}$/i);


doch so was wie


  my $aktParam  = ReadingsVal($hash->{DEVICE}, $setModifier, "");
     $aktParam  = cleanUpParam($aktParam);
     $newParam  = cleanUpParam($newParam);


mit


sub cleanupParam($) {
my ($param) =@_;
if ($param !~ m/^\d{1,3}$/)
  $param = eval $param;
if ($param =~ m/^\d{1,3}$/)
  return sprintf("%.1f", $aktParam);
return $param;
}


schreiben.

Wäre das eine Idee?

Das löst zwar das Problem nicht, wenn der Wert erst im Command verändert wird, aber man braucht dann das Command nicht mehr, da die BErechnung des aktuellen Werts in der Temp-Tabelle steht:


define HC_wohnzimmer Heating_Control Heizungsventil 19:20|HC_Temp(23)


und HC_Temp eine Berechnung durchführen kann, und trotzdem noch die Optimierung ($newParam eq $oldParam) funktioniert.

Bisher eben

define HC_wohnzimmer Heating_Control Heizungsventil 19:20|HC_Temp(23) { HC_setTemp($NAME, eval $EVENT);; }

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 21 November 2016, 09:10:00
Zitat von: FHEM_Starter am 21 November 2016, 08:51:12
Hallo Dietmar,

zunächst vielen Dank für dieses tolle Modul. Eine Frage allgemein zu den Conditions: Ist es richtig, dass in einem define immer nur eine Condition zulässig ist? Wenn ja, wäre es möglich, das Modul so zu optimieren, dass pro Schaltakt eine eigene Condition denkbar ist? So hätte man in einem Define alles definiert, was die Übersichtlichkeit und den WAF Faktor erhöht.

Danke und Gruß
Wolfgang

vorstellen kann ich mir das schon.
Mach mal einen Vorschlag, wie die Syntax aussehen soll. Dann kann ich mir besser vorstellen, was dir vorschwebt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 21 November 2016, 09:20:33


my $aktParam  = ReadingsVal($hash->{DEVICE}, $setModifier, "");
     $aktParam  = sprintf("%.1f", $aktParam)   if ($isHeating && $aktParam =~ m/^[0-9]{1,3}$/i);
     $newParam  = sprintf("%.1f", $newParam)   if ($isHeating && $newParam =~ m/^[0-9]{1,3}$/i);
...
  #Kommando ausführen
  if ($command && !$disabled && $activeTimer
#    && $aktParam ne $newParam
...


Man könnte die Zeile auch auskommentieren. Sogar mit einem Attriut abschalten.
Titel: Neues Modul - Heating_Control, WeekdayTimer: Status # aktueller Wert
Beitrag von: cwagner am 21 November 2016, 09:33:25
Moin, Dietmar,

das tolle Modul Heating_Control benutze ich nach Abschaffung der Homematic-Raumthermostate nun sehr intensiv und dabei ist mir eine Unstimmigkeit aufgefallen, die in meinem Szenario blöde Folgen hat. Der Status des Moduls entspricht nicht immer (leider habe ich noch keine Regel gefunden) dem aktuell vom Modul geschalteten Wert. Von neun Heating_Controls habe ich heute morgen 2 "Blödmänner" gefunden. Einer davon:

Internals:
   CFGFN
   COMMAND
   CONDITION
   DEF        RR_Wohnzimmer de   so-sa|16:30|19  so-sa|18:00|22 $we|23:00|15 fr|23:00|15 mo-do|22:00|15
   DEVICE     RR_Wohnzimmer
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       CC.Wohnzimmer
   NR         187
   Profil 0: Sonntag 16:30:00 19, 18:00:00 22, 23:00:00 15
   Profil 1: Montag 16:30:00 19, 18:00:00 22, 22:00:00 15
   Profil 2: Dienstag 16:30:00 19, 18:00:00 22, 22:00:00 15
   Profil 3: Mittwoch 16:30:00 19, 18:00:00 22, 22:00:00 15
   Profil 4: Donnerstag 16:30:00 19, 18:00:00 22, 22:00:00 15
   Profil 5: Freitag 16:30:00 19, 18:00:00 22, 23:00:00 15
   Profil 6: Samstag 16:30:00 19, 18:00:00 22, 23:00:00 15
   Profil 7: Wochenende 23:00:00 15
   STATE      22
   STILLDONETIME 0
   TYPE       Heating_Control
   Readings:
     2016-11-20 23:00:00   currValue       15
     2016-11-20 15:09:53   disabled        0
     2016-11-20 23:00:00   nextUpdate      2016-11-21 16:30:00
     2016-11-20 23:00:00   nextValue       19
     2016-11-20 18:00:01   state           22
   SWITCHINGTIMES:
     so-sa|16:30|19
     so-sa|18:00|22
     $we|23:00|15
     fr|23:00|15
     mo-do|22:00|15
   Timer:
     Cc.wohnzimmer_1:
       HASH       CC.Wohnzimmer
       MODIFIER   1
       NAME       CC.Wohnzimmer_1
     Cc.wohnzimmer_2:
       HASH       CC.Wohnzimmer
       MODIFIER   2
       NAME       CC.Wohnzimmer_2
     Cc.wohnzimmer_3:
       HASH       CC.Wohnzimmer
       MODIFIER   3
       NAME       CC.Wohnzimmer_3
     Cc.wohnzimmer_4:
       HASH       CC.Wohnzimmer
       MODIFIER   4
       NAME       CC.Wohnzimmer_4
     Cc.wohnzimmer_5:
       HASH       CC.Wohnzimmer
       MODIFIER   5
       NAME       CC.Wohnzimmer_5
     Cc.wohnzimmer_settimerofday:
       HASH       CC.Wohnzimmer
       MODIFIER   SetTimerOfDay
       NAME       CC.Wohnzimmer_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         16:30:00   19
         18:00:00   22
         23:00:00   15
       1:
         16:30:00   19
         18:00:00   22
         22:00:00   15
       2:
         16:30:00   19
         18:00:00   22
         22:00:00   15
       3:
         16:30:00   19
         18:00:00   22
         22:00:00   15
       4:
         16:30:00   19
         18:00:00   22
         22:00:00   15
       5:
         16:30:00   19
         18:00:00   22
         23:00:00   15
       6:
         16:30:00   19
         18:00:00   22
         23:00:00   15
       7:
         23:00:00   15
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1479742200
       PARA       19
       TIME       16:30
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1479747600
       PARA       22
       TIME       18:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     3:
       EPOCH      1479765600
       PARA       15
       TIME       23:00
       TAGE:
         7
     4:
       EPOCH      1479765600
       PARA       15
       TIME       23:00
       TAGE:
         5
     5:
       EPOCH      1479762000
       PARA       15
       TIME       22:00
       TAGE:
         1
         2
         3
         4
   Profile_idx:
     0:
       16:30:00   1
       18:00:00   2
       23:00:00   3
     1:
       16:30:00   1
       18:00:00   2
       22:00:00   5
     2:
       16:30:00   1
       18:00:00   2
       22:00:00   5
     3:
       16:30:00   1
       18:00:00   2
       22:00:00   5
     4:
       16:30:00   1
       18:00:00   2
       22:00:00   5
     5:
       16:30:00   1
       18:00:00   2
       23:00:00   4
     6:
       16:30:00   1
       18:00:00   2
       23:00:00   3
     7:
       23:00:00   3
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   disable    0
   group      Heizung
   switchInThePast 1
   verbose    0


Natürlich ist es auch möglich, dass der "Blödmann" vor der Tastatur sitzt :-)

Und weil bald Weihnachten ist, hätte ich da noch einen Wusnchzettel:
* Ein Urlaubmodus wäre  toll: disable bis 23.12.2016 16:00; danach wieder zurück ins laufende Programm
* Eine Variante wäre der Partymodus wäre auch toll: Anheizen für die nächsten X Stunden, dann wieder zurück ins laufende Programm

Vielen Dank für das tolle Modul

Christian
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 21 November 2016, 09:38:27
Hallo Dietmar,

ich hatte an folgende Möglichkeit gedacht:

define Timer_EG_KU_Rollo_Fenster WeekdayTimer EG_KU_Rollo_Fenster 12345|{sunrise(+40,"06:30:40","06:59:40")}|auf  (ReadingsVal("Besuch_WZI", "state", "") ne "heute")) 12345|{sunset(+40,"22:00:40","23:00:40")}|ab 6|{sunrise(+40,"07:30:40","07:59:40")}|auf  (ReadingsVal("Besuch_WZI", "state", "") ne "heute")) 6|{sunset(+40,"22:00:40","23:00:40")}|ab 0|{sunrise(+40,"08:30:40","08:59:40")}|auf  (ReadingsVal("Besuch_WZI", "state", "") ne "heute")) 0|{sunset(+40,"22:00:40","23:00:40")}|ab

Gruß Wolfgang
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: c2j2 am 21 November 2016, 10:30:30
Zitat von: Dietmar63 am 21 November 2016, 09:20:33
Man könnte die Zeile auch auskommentieren. Sogar mit einem Attriut abschalten.

Jepp. Und nach dem nächsten Update ist wieder alles weg. Daher frage ich, ob das, was ich geschrieben habe,

a) sinnvoll ist, und wenn ja
b) in den Trunk mit aufgenommen werden kann.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 21 November 2016, 13:04:46
Zitat von: FHEM_Starter am 21 November 2016, 09:38:27
Hallo Dietmar,

ich hatte an folgende Möglichkeit gedacht:

define Timer_EG_KU_Rollo_Fenster WeekdayTimer EG_KU_Rollo_Fenster 12345|{sunrise(+40,"06:30:40","06:59:40")}|auf  (ReadingsVal("Besuch_WZI", "state", "") ne "heute")) 12345|{sunset(+40,"22:00:40","23:00:40")}|ab 6|{sunrise(+40,"07:30:40","07:59:40")}|auf  (ReadingsVal("Besuch_WZI", "state", "") ne "heute")) 6|{sunset(+40,"22:00:40","23:00:40")}|ab 0|{sunrise(+40,"08:30:40","08:59:40")}|auf  (ReadingsVal("Besuch_WZI", "state", "") ne "heute")) 0|{sunset(+40,"22:00:40","23:00:40")}|ab

Gruß Wolfgang

sieht ziemlich unübersichtlich aus - dürfte auch recht aufwendig sein es zu implementieren.
Ich würde eher dem Vorschlag von  c2j2 folgen wollen


sub cleanupParam($) {
my ($param) =@_;
if ($param !~ m/^{.*}$/)         # Abfrage ob Perlausdruck ...
  $param = eval $param;
if ($param =~ m/^\d{1,3}$/)
  return sprintf("%.1f", $aktParam);
return $param;
}


Das ließe sich leichter umseten.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 21 November 2016, 15:47:08
ZitatDer Status des Moduls entspricht nicht immer ...

ja, das ist blöd und nicht wirklich machbar, weil das Modul immer Perlcode erzeut und nicht weiß was der Perlcode dann wirlich tut.
Ich wüde den Status am liebsten abschaffen.

Zitat

Und weil bald Weihnachten ist, hätte ich da noch einen Wusnchzettel:
* Ein Urlaubmodus wäre  toll: disable bis 23.12.2016 16:00; danach wieder zurück ins laufende Programm
* Eine Variante wäre der Partymodus wäre auch toll: Anheizen für die nächsten X Stunden, dann wieder zurück ins laufende Programm

wünschen ist erlaubt, aber Wünsche gehen nicht immer in Erfüllung und schon gar nicht so zeitnah.
Das Problem Urlaubsmodus und weitere Dinge habe ich mir durch die Definition zweier HC und das Attribut disabledCond gelöst.
Der Partymodus ist nicht realisert, weil er für mich zu selten vorkommt und es bei mir reicht wenn ich die Thermostate von Hand nachstelle.

Zu aufwendigen Änderungen werde ich in nächster Zeit nicht kommen, weil ich anderweitig beschäftigt bin.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cwagner am 21 November 2016, 18:22:21
Vielen Dank für die rasche und ehrliche Antwort. Und da ich schon groß bin, erfülle ich mir manchmal die Wünsche einfach selbst. Werde also mal Deine Anregung aufgreifen und mir da was selbst stricken.

Herzliche Grüße

Christian
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: c2j2 am 23 November 2016, 22:57:00
Ich habe es so gelöst, dass ich einen Betriebsmodus "Automatik" habe, in dem ich eine Absenkung (in Grad) fest vorgeben kann (wenn ich wegfahre, kann ich den Modus einstellen, und ein paar Stunden, bevor ich zurückkomme, wieder auf "nein" gehen) oder per Anwesenheitserkennung automatisch betreiben kann.

Oder ich stelle auf "manuell", dann kann ich die Thermostaten eben manuell einstellen, das HC ist unwirksam.


define Var_Regelungsmodus dummy
attr Var_Regelungsmodus setList state:automatisch,voll_manuell
attr Var_Regelungsmodus webCmd state
attr Var_Regelungsmodus alias Betriebsmodus
attr Var_Regelungsmodus sortby 1
attr Var_Regelungsmodus room Wochenprogramme,Übersicht
# set Var_Regelungsmodus automatisch
define n_Var_Regelungsmodus notify Var_Regelungsmodus:.* {Heating_Control_SetAllTemps()}

define Var_TemperaturAbsenkung dummy
attr Var_TemperaturAbsenkung setList state:nein,1(Anwesenheit),2(Anwesenheit),3(Anwesenheit),4(Anwesenheit),5(Anwesenheit),1(fest),2(fest),3(fest),4(fest),5(fest)
attr Var_TemperaturAbsenkung webCmd state
attr Var_TemperaturAbsenkung alias Temperaturabsenkung
attr Var_TemperaturAbsenkung sortby 2
attr Var_TemperaturAbsenkung room Wochenprogramme,Übersicht
# set Var_TemperaturAbsenkung 2(auto)
define n_Var_TemperaturAbsenkung notify Var_TemperaturAbsenkung:.* {Heating_Control_SetAllTemps()}

define HC_Woche_wohnzimmer Heating_Control Thermostat_wohnzimmer de Mo-Fr|05:00|HC_Temp(22) Mo-Fr|06:30|HC_Temp(21) Mo-Fr|15:00|HC_Temp(22) So-Do|22:00|HC_Temp(20) Sa-So|06:00|HC_Temp(22) Fr-Sa|24:00|HC_Temp(19) {\
  HC_setTemp($NAME, eval $EVENT);;\
}


und die PL-Skripte:


sub HC_Temp($)
{
  my $degree = $_[0];
  my $value = Value("Var_TemperaturAbsenkung");
 
  Log(2, "Var_TemperaturAbsenkung = $value");
  if ($value =~ /^\d+/)
{
if ($value =~ /Anwesenheit/)
{
Log(2, " auto: " . Value("Var_JemandAnwesend"));
if (Value("Var_JemandAnwesend") == 0)
{
Log(1, "DEGREE = ". $degree . " - " . $value);
return max($degree - $value, 16);
}
}
  else
{
return max($degree - $value, 16);
}
}
  return($degree);
}

sub HC_setTemp($$)
{
  my ($Device, $degree) = @_;
  my $OldTemp = ReadingsVal($Device, "desiredTemperature", "0");
  Log(2, "********************HC_setTemp(): set $degree deg in $Device. Was: $OldTemp");
  if ($degree < $OldTemp || $degree > $OldTemp) # no "!=" as it would compare strings
    {
if (Value("Var_Regelungsmodus") eq "automatisch")
{
Log(1, "FHEM/Heating_Control: set $Device desiredTemperature $degree");
fhem("set $Device desiredTemperature $degree");
return 1;
}
Log(2, "FHEM/Heating_Control disabled by 'Var_Regelungsmodus'!='automatisch'");
}
  return 0;
}


Damit bin ich vorerst glücklich, und ein Datum vorgeben ist komplizierter, als es "von Hand" zu machen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Christian72D am 27 November 2016, 06:35:42
Zitat von: Christian72D am 25 Oktober 2016, 16:49:59
Ich habe seit ein paar Tagen ein Problem mit dem Modul HCS: nach einem Reboot ist es nicht mehr aktiv, das war es Anfang des Jahres aber noch.
Kann sowas durch ein Update gekommen sein?
Und wie kann ich das SO einstellen daß es automatisch läuft?
KEINER eine Idee?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 27 November 2016, 08:01:16
Du musst schon ein wenig mehr erklären, wie du mit dem Modul was machst.
Versuch mal die betroffenen Geräte auf verbose 5 zu stellen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 03 Dezember 2016, 11:41:26
Hallo Dietmar,

kannst Du mit bitte einen Tipp geben, warum eine Definition mit on-till nicht klappt?
Mit der Def:
define shutter WeekdayTimer UG_AZ_Licht_Schrank FR-SA|11:32|on-till:11:33:00  FR-SA|11:02|off
erhalte ich im LogFile
on-till requires parameter: -time-

Ich steh auf dem Schlauch ...

Gruß Wolfgang

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Dezember 2016, 12:19:10
Liefere bitte mal den output des Logs wenn du verbose 5 eingeschaltet hast
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 03 Dezember 2016, 13:01:20
Hallo Dietmar,

das ist das Ergebnis der Definition aus dem Logfile.

Gruß Wolfgang

2016.12.03 12:54:21 5: Cmd: >define shutter WeekdayTimer UG_AZ_Licht_Schrank FR-SA|12:55|on-till:12:56:00  FR-SA|12:57|off<
2016.12.03 12:54:21 5: [shutter] FR-SA|12:55|on-till:12:56:00  - trying to accept as a switchtime
2016.12.03 12:54:21 4: [shutter] FR-SA|12:55|on-till:12:56:00 - accepted
2016.12.03 12:54:21 5: [shutter] FR-SA|12:57|off  - trying to accept as a switchtime
2016.12.03 12:54:21 4: [shutter] FR-SA|12:57|off - accepted
2016.12.03 12:54:21 5: Compute sunrise/sunset for latitude 49.9142 , longitude 8.2133
2016.12.03 12:54:21 5: Compute sunrise/sunset for latitude 49.9142 , longitude 8.2133
2016.12.03 12:54:21 4: [shutter] 07:30:45 17:04:55 Samstag
2016.12.03 12:54:21 4: [shutter] 12:55:00 on-till:12:56:00, 12:57:00 off (Profil 5: Freitag)
2016.12.03 12:54:21 4: [shutter] 12:55:00 on-till:12:56:00, 12:57:00 off (Profil 6: Samstag)
2016.12.03 12:54:21 5: [shutter] setting  Timer: shutter_SetTimerOfDay 2016-12-04 00:00:05
2016.12.03 12:54:21 5: Triggering global (1 changes)
2016.12.03 12:54:21 5: Starting notify loop for global, first event DEFINED shutter
2016.12.03 12:54:21 4: [shutter] device type CUL_HM:HM-LC-SW1-FM recognized, setModifier:
2016.12.03 12:54:21 4: [shutter] no switch in the yesterdays because of the devices type(UG_AZ_Licht_Schrank is not recognized as heating) - use attr switchInThePast
2016.12.03 12:54:21 5: Triggering shutter (1 changes)
2016.12.03 12:54:21 5: Starting notify loop for shutter, first event inactive
2016.12.03 12:54:21 4: [shutter] condition: - Tage:5,6
2016.12.03 12:54:21 5: [shutter] condition: {my $days={};;map{$days->{$_}=1}(5,6);;;;( 1 && (defined $days->{$wday}))}
2016.12.03 12:54:21 5: Cmd: >{my $days={};map{$days->{$_}=1}(5,6);;( 1 && (defined $days->{$wday}))}<
2016.12.03 12:54:21 5: [shutter] result of condition:1
2016.12.03 12:54:21 5: Triggering shutter (1 changes)
2016.12.03 12:54:21 5: Starting notify loop for shutter, first event active
2016.12.03 12:54:21 4: [shutter] setTimer - timer seems to be active today: 56|12:55|on-till:12:56:00
2016.12.03 12:54:21 5: [shutter] setting  Timer: shutter_1 2016-12-03 12:55:00
2016.12.03 12:54:21 4: [shutter] condition: - Tage:5,6
2016.12.03 12:54:21 5: [shutter] condition: {my $days={};;map{$days->{$_}=1}(5,6);;;;( 1 && (defined $days->{$wday}))}
2016.12.03 12:54:21 5: Cmd: >{my $days={};map{$days->{$_}=1}(5,6);;( 1 && (defined $days->{$wday}))}<
2016.12.03 12:54:21 5: [shutter] result of condition:1
2016.12.03 12:54:21 5: Triggering shutter (1 changes)
2016.12.03 12:54:21 5: Starting notify loop for shutter, first event active
2016.12.03 12:54:21 4: [shutter] setTimer - timer seems to be active today: 56|12:57|off
2016.12.03 12:54:21 5: [shutter] setting  Timer: shutter_2 2016-12-03 12:57:00
2016.12.03 12:54:21 5: Triggering shutter (1 changes)
2016.12.03 12:54:21 5: Starting notify loop for shutter, first event nextUpdate: 2016-12-03 12:55:00
2016.12.03 12:54:21 5: Triggering shutter (1 changes)
2016.12.03 12:54:21 5: Starting notify loop for shutter, first event nextValue: on-till:12:56:00
2016.12.03 12:54:21 5: Triggering shutter (1 changes)
2016.12.03 12:54:21 5: Starting notify loop for shutter, first event currValue: off
2016.12.03 12:54:21 4: WEB_192.168.17.24_54871 GET /fhem?detail=shutter&fw_id=5073; BUFLEN:0
2016.12.03 12:54:21 4: name: /fhem?detail=shutter&fw_id=5073 / RL:3775 / text/html; charset=UTF-8 / Content-Encoding: gzip
/
2016.12.03 12:54:21 4: WEB_192.168.17.24_54871 GET /fhem?cmd={ReadingsVal(%22shutter%22,%22disable%22,%22%22)}&XHR=1; BUFLEN:0
2016.12.03 12:54:21 5: Cmd: >{ReadingsVal("shutter","disable","")}<
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Dezember 2016, 13:55:58
Hast du auch den Teil des Protokolls verfügbar, in dem on-till dann nicht funktioniert hat: 12:56
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 03 Dezember 2016, 14:03:01
Upps, das hatte ich übersehen.
Bitte sehr.

2016.12.03 12:55:00 4: [shutter] time=12:55/1480766100 delay=0, nextDelay=60, nextRetry=1480766160
2016.12.03 12:55:00 4: [shutter] delayedExecutionCond:0
2016.12.03 12:55:00 4: [shutter] result of delayedExecutionCond:0
2016.12.03 12:55:00 4: [shutter] list of window sensors found: 'shutter'
2016.12.03 12:55:00 4: [shutter] condition: - Tage:5,6
2016.12.03 12:55:00 5: [shutter] condition: {my $days={};;map{$days->{$_}=1}(5,6);;;;( 1 && (defined $days->{$wday}))}
2016.12.03 12:55:00 5: Cmd: >{my $days={};map{$days->{$_}=1}(5,6);;( 1 && (defined $days->{$wday}))}<
2016.12.03 12:55:00 5: [shutter] result of condition:1
2016.12.03 12:55:00 4: [shutter] Update   - timer seems to be active today: 56|12:55|on-till:12:56:00
2016.12.03 12:55:00 4: [shutter] device type CUL_HM:HM-LC-SW1-FM recognized, setModifier:
2016.12.03 12:55:00 4: [shutter] aktParam: newParam:on-till:12:56:00 - is  not disabled
2016.12.03 12:55:00 4: [shutter] command: 'set $NAME  $EVENT' executed with %NAME=>UG_AZ_Licht_Schrank,%EVENT=>on-till 12 56 00
2016.12.03 12:55:00 5: Cmd: >set $NAME  $EVENT<
2016.12.03 12:55:00 3: on-till requires parameter: -time-
2016.12.03 12:55:00 5: Triggering shutter (4 changes)
2016.12.03 12:55:00 5: Starting notify loop for shutter, first event nextUpdate: 2016-12-03 12:57:00
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 03 Dezember 2016, 18:44:48
Ich glaube ich kann da was machen, damit on-till funktioniert
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 04 Dezember 2016, 10:03:21
Hallo Dietmar,

das wäre klasse. Gebe Bescheid, wenn ich was testen soll.

Gruß Wolfgang
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 04 Dezember 2016, 22:44:49
eingecheckt:
98_Heating_Control, 98_WeekdayTimer:

-  a bug fixed when starting a WDT or a HC an trying to switch in the past. 
-  now being able to use on-till:13:30:30 as a parameter
-  the parameter can now be a Perlcode
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 05 Dezember 2016, 13:26:33
Hallo Dietmar,

zunächst Danke für Deine Arbeit. Ich habe es getestet und es kam folgendes heraus: Einschalten geht doch das Ausschalten bleibt aus. Setze ich auf dem Device das attribut on-till manuell, klappt es. Anbei der Auszug aus dem Logfile. Hast Du dafür eine Erklärung?

Danke und Gruß
Wolfgang

Definition war:
define shutter WeekdayTimer UG_AZ_Licht_Schrank MO-DI|13:16|on-till:13:17  FR-SA|13:00|off

LogFile kam:
2016.12.05 13:15:06 5: Cmd: >define shutter WeekdayTimer UG_AZ_Licht_Schrank MO-DI|13:16|on-till:13:17  FR-SA|13:00|off<
2016.12.05 13:15:06 5: [shutter] MO-DI|13:16|on-till:13:17   - trying to accept as a switchtime
2016.12.05 13:15:06 4: [shutter] MO-DI|13:16|on-till:13:17  - accepted
2016.12.05 13:15:06 5: [shutter] FR-SA|13:00|off  - trying to accept as a switchtime
2016.12.05 13:15:06 4: [shutter] FR-SA|13:00|off - accepted
2016.12.05 13:15:06 5: Compute sunrise/sunset for latitude 49.9142 , longitude 8.2133
2016.12.05 13:15:06 5: Compute sunrise/sunset for latitude 49.9142 , longitude 8.2133
2016.12.05 13:15:06 4: [shutter] 07:32:56 17:04:21 Montag
2016.12.05 13:15:06 4: [shutter] 13:16:00 on-till:13:17  (Profil 1: Montag)
2016.12.05 13:15:06 4: [shutter] 13:16:00 on-till:13:17  (Profil 2: Dienstag)
2016.12.05 13:15:06 4: [shutter] 13:00:00 off (Profil 5: Freitag)
2016.12.05 13:15:06 4: [shutter] 13:00:00 off (Profil 6: Samstag)
2016.12.05 13:15:06 5: [shutter] setting  Timer: shutter_SetTimerOfDay 2016-12-06 00:00:05
2016.12.05 13:15:06 5: Triggering global (1 changes)
2016.12.05 13:15:06 5: Starting notify loop for global, first event DEFINED shutter
2016.12.05 13:15:06 4: [shutter] device type CUL_HM:HM-LC-SW1-FM recognized, setModifier:
2016.12.05 13:15:06 4: [shutter] no switch in the yesterdays because of the devices type(UG_AZ_Licht_Schrank is not recognized as heating) - use attr switchInThePast
2016.12.05 13:15:06 5: Triggering shutter (1 changes)
2016.12.05 13:15:06 5: Starting notify loop for shutter, first event inactive
2016.12.05 13:15:06 4: [shutter] condition: - Tage:1,2
2016.12.05 13:15:06 5: [shutter] condition: {my $days={};;map{$days->{$_}=1}(1,2);;;;( 1 && (defined $days->{$wday}))}
2016.12.05 13:15:06 5: Cmd: >{my $days={};map{$days->{$_}=1}(1,2);;( 1 && (defined $days->{$wday}))}<
2016.12.05 13:15:06 5: [shutter] result of condition:1
2016.12.05 13:15:06 5: Triggering shutter (1 changes)
2016.12.05 13:15:06 5: Starting notify loop for shutter, first event active
2016.12.05 13:15:06 4: [shutter] setTimer - timer seems to be active today: 12|13:16|on-till:13:17 
2016.12.05 13:15:06 5: [shutter] setting  Timer: shutter_1 2016-12-05 13:16:00
2016.12.05 13:15:06 4: [shutter] condition: - Tage:5,6
2016.12.05 13:15:06 5: [shutter] condition: {my $days={};;map{$days->{$_}=1}(5,6);;;;( 1 && (defined $days->{$wday}))}
2016.12.05 13:15:06 5: Cmd: >{my $days={};map{$days->{$_}=1}(5,6);;( 1 && (defined $days->{$wday}))}<
2016.12.05 13:15:06 5: [shutter] result of condition:
2016.12.05 13:15:06 5: Triggering shutter (1 changes)
2016.12.05 13:15:06 5: Starting notify loop for shutter, first event nextUpdate: 2016-12-05 13:16:00
2016.12.05 13:15:06 5: Triggering shutter (1 changes)
2016.12.05 13:15:06 5: Starting notify loop for shutter, first event nextValue: on-till:13:17 
2016.12.05 13:15:06 5: Triggering shutter (1 changes)
2016.12.05 13:15:06 5: Starting notify loop for shutter, first event currValue: off
2016.12.05 13:15:06 4: WEB_192.168.17.24_52021 GET /fhem?cmd={ReadingsVal(%22shutter%22,%22disable%22,%22%22)}&XHR=1; BUFLEN:0
2016.12.05 13:15:06 5: Cmd: >{ReadingsVal("shutter","disable","")}<
2016.12.05 13:15:06 4: name: /fhem?cmd={ReadingsVal(%22shutter%22,%22disable%22,%22%22)}&XHR=1 / RL:21 / text/plain; charset=UTF-8 / Content-Encoding: gzip
/
2016.12.05 13:15:06 4: WEB_192.168.17.24_52021 GET /fhem?cmd={AttrVal(%22shutter%22,%22room%22,%22%22)}&XHR=1; BUFLEN:0
2016.12.05 13:15:06 5: Cmd: >{AttrVal("shutter","room","")}<
2016.12.05 13:15:06 4: name: /fhem?cmd={AttrVal(%22shutter%22,%22room%22,%22%22)}&XHR=1 / RL:21 / text/plain; charset=UTF-8 / Content-Encoding: gzip
/
2016.12.05 13:16:00 4: [shutter] time=13:16/1480940160 delay=0, nextDelay=60, nextRetry=1480940220
2016.12.05 13:16:00 4: [shutter] delayedExecutionCond:0
2016.12.05 13:16:00 4: [shutter] result of delayedExecutionCond:0
2016.12.05 13:16:00 4: [shutter] list of window sensors found: 'shutter'
2016.12.05 13:16:00 4: [shutter] condition: - Tage:1,2
2016.12.05 13:16:00 5: [shutter] condition: {my $days={};;map{$days->{$_}=1}(1,2);;;;( 1 && (defined $days->{$wday}))}
2016.12.05 13:16:00 5: Cmd: >{my $days={};map{$days->{$_}=1}(1,2);;( 1 && (defined $days->{$wday}))}<
2016.12.05 13:16:00 5: [shutter] result of condition:1
2016.12.05 13:16:00 4: [shutter] Update   - timer seems to be active today: 12|13:16|on-till:13:17 
2016.12.05 13:16:00 4: [shutter] device type CUL_HM:HM-LC-SW1-FM recognized, setModifier:
2016.12.05 13:16:00 4: [shutter] aktParam: newParam:on-till:13:17  - is  not disabled
2016.12.05 13:16:00 4: [shutter] command: 'set $NAME  $EVENT' executed with %NAME=>UG_AZ_Licht_Schrank,%EVENT=>on-till 13:17 
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 07 Dezember 2016, 11:35:33
Hallo Dietmar,

ein weiteres und viel größeres Problem ist aufgetreten: Es werden keine Bedingungen mehr richtig ausgeführt.
Beispiel:
define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off (ReadingsVal("Grillen", "state", "") ne "heute")
oder auch
define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off ([Grillen:state] ne "heute")
oder auch
define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off ({ReadingsVal("Grillen", "state", "") ne "heute"})

werden nicht geschaltet.
Bitte um Hilfe.

Gruß Wolfgang
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 07 Dezember 2016, 17:47:00
Bei allen dreien ist die Syntax falsch
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 07 Dezember 2016, 18:54:24
ich sehe den Wald vor lauter Bäumen nicht mehr  :-[

Wie soll denn die korrekte Syntax sein???

Merci Wolfgang
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 08 Dezember 2016, 00:34:09
define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off (ReadingsVal("Grillen", "state", "") ne "heute")
dies sollte klappen
define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off ([Grillen:state] ne "heute")
Syntax aus DOIF funktioniert hier nicht
define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off ({ReadingsVal("Grillen", "state", "") ne "heute"})
Bedingung mit {} funktionieren nicht

wie sieht denn der output mit verbose 5 aus
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 08 Dezember 2016, 10:04:43
Hallo Dietmar,

danke für Deine Tipps, wenn ich auch keinen Unterschied zu Deinem und zu meinem ersten Eintrag sehen konnte. Aber egal ...

Was ich jedoch herausgefunden habe ist, dass sich zwischen dem Befehl (hier "on") und dem nächsten Schalt-Tag (hier "FR-SA") ein Leerzeichen zuviel eingeschlichen hat. Ein Fehler, der nur sehr schwer zu erkennen ist. Sichtbar wurde dieser im Logfile mit dem Eintrag "Unknown argument on ,". Das Leerzeichen hinter "on" brachte mich darauf.

Vielleicht kannst Du bei Gelegenheit Deinen Parser ein weiteres Stück Fehlertoleranz gönnen.

Nochmals Danke für Deine Benühungen,
Wolfgang

P.S. Das Problem mit dem nicht Ausschaltens des on-till hat sich damit auch erledigt. War die gleiche Ursache ...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: m8ichael am 09 Dezember 2016, 16:03:26
Hallo zusammen,

ich habe gestern mal wieder ein Update durchgeführt. Und nun funktioniert meine Heizungssteuerung nicht mehr, da das Heating_Control jetzt Werte mit einer Nachkommastelle ausgibt. Da aber meine Thermostate (Z-Wave) nur ganze Gradzahlen verstehen, kommt es regelmäßig zu einem Fehler:


defmod hc.og.ba.WT Heating_Control dm.og.ba.Heizwert de Mo-Fr|{Value("dmBadStartHeizung")}|25 Mo-Fr|06:35|18 Mo-Fr|11:00|18 Mo-Fr|19:30|18 {\
if ((!iswe())) {\
  HeizungStellen($NAME,$EVENT);;\
}\
}

setstate hc.og.ba.WT 18.0
setstate hc.og.ba.WT 2016-12-09 11:00:00 currValue 18
setstate hc.og.ba.WT 2016-12-09 11:00:00 nextUpdate 2016-12-09 19:30:00
setstate hc.og.ba.WT 2016-12-09 11:00:00 nextValue 18
setstate hc.og.ba.WT 2016-12-09 11:00:00 state 18.0


Kurios ist, dass in der Definition selbst keine Nachkommastelle angegeben ist, und auch in den Readings "currValue" bzw-. "nextValue" keine Nachkommastellen ausgegeben werden. M. E. sollte die Anzeige einheitlich sein. Kann man das noch mit nem Attribut einstellen (stateFormat ginge zur Not, allerdings müsste dann noch bei gemischten Inhalten umfangreichere Abfragen getätigt werden)? Auf welches Reading muss ich mich hierbei beziehen? Generell wäre es schön, wenn die Ausgabe 1:1 wie in der Definition angegeben erfolgen würde (mal vom Perl-Code abgesehen).  ;)

Viele Grüße

Michael
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 09 Dezember 2016, 20:14:32
Kannst du mal ein list von deinem zwave machen.
Bitte auch mal ein Log mit verbose 5 hier veröffentlichen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 09 Dezember 2016, 20:18:09
Zitat
Code: [Auswählen]

define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off (ReadingsVal("Grillen", "state", "") ne "heute")

dies sollte klappen
dies halte ich für richtig
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: EnderPhilipp am 20 Dezember 2016, 06:19:34
Hi Liebe FHEM-Community,

ich nutzte seit ein paar Wochen HeatingControl, dabei kann ich mir die Schaltzeiten am Freitag (siehe Anhang) nicht erklären, ich dachte 6 und 7 gelten für Samstag und Sonntag. ???

Habe ich was falsch eingestellt  ? :o


Mfg
Philipp
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 20 Dezember 2016, 06:51:44
Bitte die Definition als Text hierher kopieren
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 20 Dezember 2016, 09:57:54
@Dietmar63
define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off (ReadingsVal("Grillen", "state", "") ne "heute")

Wofür stehen die beiden "" hinter state ?
In manchen Beispielen stehe dazwischen Werte o.ä.
LG
Tom
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: EnderPhilipp am 20 Dezember 2016, 17:37:25
Zitat von: Dietmar63 am 20 Dezember 2016, 06:51:44
Bitte die Definition als Text hierher kopieren

Hier Bitteschön:  ;D


#Heizungs-Steuerung
define HCB Heating_Control Heizung_Clima 12345|05:30|21 15|14:30|21 2|15:20|21 3|16:50|21 4|14:45|21 67|06:30|21 67|08:00|21 (ReadingsVal("HCAutomatik", "state", "") eq "on")
attr HCB icon hue_room_garage
define HCAutomatik dummy
attr HCAutomatik alias Heizungsautomatik
attr HCAutomatik devStateIcon on:general_an off:general_aus
attr HCAutomatik icon sani_heating_automatic
attr HCAutomatik webCmd on:off


Wp liegt der Fehler? :(
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 20 Dezember 2016, 17:44:25
Zitat von: tomspatz am 20 Dezember 2016, 09:57:54
@Dietmar63
define shutter WeekdayTimer UG_AZ_Licht_Schrank MI|11:01|on  FR-SA|13:00|off (ReadingsVal("Grillen", "state", "") ne "heute")

Wofür stehen die beiden "" hinter state ?
In manchen Beispielen stehe dazwischen Werte o.ä.
LG
Tom

Den Wert liefert die Funktion zurück wenn sie mit denvorherigen Parameter nichts findet
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: EnderPhilipp am 21 Dezember 2016, 18:48:32
Zitat von: EnderPhilipp am 20 Dezember 2016, 17:37:25
Hier Bitteschön:  ;D


#Heizungs-Steuerung
define HCB Heating_Control Heizung_Clima 12345|05:30|21 15|14:30|21 2|15:20|21 3|16:50|21 4|14:45|21 67|06:30|21 67|08:00|21 (ReadingsVal("HCAutomatik", "state", "") eq "on")
attr HCB icon hue_room_garage
define HCAutomatik dummy
attr HCAutomatik alias Heizungsautomatik
attr HCAutomatik devStateIcon on:general_an off:general_aus
attr HCAutomatik icon sani_heating_automatic
attr HCAutomatik webCmd on:off



Was ist denn jetzt falsch, dass er Freitags, die Samstags- und Sonntags-Schaltzeiten schaltet ??
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 22 Dezember 2016, 17:40:36
ZitatDen Wert liefert die Funktion zurück wenn sie mit den vorherigen Parameter nichts findet
d.h. wenn zu der Schaltzeit "state" von "Grillen" nicht gefunden wird wird "" ausgeführt ?
In diesem Fall sich HC "aufhängt" oder den Befehl zur Schaltzeit nicht ausführt ?

Dann wäre nach meinem Verständnis dieser Wert eigentlich NUR einzusetzen wenn der Wert vom "Grillen" dynamisch erzeugt wird und schon mal fehlen könnte.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Dezember 2016, 18:35:48
Zitat
.h. wenn zu der Schaltzeit "state" von "Grillen" nicht gefunden wird wird "" ausgeführt ?

Der Rückgabewert wird nur beim Vergleich mit on verwendet
Absturz kann eigentlich nicht stattfinden.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 22 Dezember 2016, 19:02:43
Zitat von: EnderPhilipp am 20 Dezember 2016, 06:19:34
Hi Liebe FHEM-Community,

ich nutzte seit ein paar Wochen HeatingControl, dabei kann ich mir die Schaltzeiten am Freitag (siehe Anhang) nicht erklären, ich dachte 6 und 7 gelten für Samstag und Sonntag. ???

Habe ich was falsch eingestellt  ? :o


Mfg
Philipp


...  if ($d==7); # sa,so   ( $we)
...  if ($d==8); # mo-fr   (!$we)


ich hoffe das geht aus der Doku auch hervor.
Besser die symbolischen Konstanten nutzen : so,mo, ... $we !$we

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: EnderPhilipp am 22 Dezember 2016, 21:39:56
Zitat von: Dietmar63 am 22 Dezember 2016, 19:02:43

...  if ($d==7); # sa,so   ( $we)
...  if ($d==8); # mo-fr   (!$we)


ich hoffe das geht aus der Doku auch hervor.
Besser die symbolischen Konstanten nutzen : so,mo, ... $we !$we

Danke, das hat geklappt  ;D
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: tomspatz am 28 Dezember 2016, 11:46:25
ZitatDer Rückgabewert wird nur beim Vergleich mit on verwendet

Dann ist das in der Doku aber schräg??
define HCW Heating_Control WZ_Heizung Sa-So,Mi|08:00|21 (ReadingsVal("WeAreThere", "state", "no") eq "yes")
Die zu setzende Temperatur wird nur gesetzt, falls die Dummy Variable WeAreThere = "yes" ist.


Wenn dann die Dummy Variable "Klaus, Bett, Grillen, ja, nein" sein sollte, ist diese Angabe doch überflüssig?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Lucky2k12 am 04 Januar 2017, 21:00:05
Hallo Leute,

ich habe ein Heating_Control device definiert, das mein Büro ("homeoffice") mit einem PID_20 und einem FHT Thermostaten zeitabhängig heizen soll:

defmod HC.Buero Heating_Control PID.Buero !$we|15:00|20 $we|10:00|21 0123456|21:00|17  set $NAME desired $EVENT
attr HC.Buero alias Buero
attr HC.Buero disable 0
attr HC.Buero group Heizplan
attr HC.Buero room Buero,Heizung
attr HC.Buero verbose 3

setstate HC.Buero 20.0
setstate HC.Buero 2017-01-04 19:35:50 currValue 20
setstate HC.Buero 2017-01-04 19:34:27 disabled 0
setstate HC.Buero 2017-01-04 19:35:50 nextUpdate 2017-01-04 21:00:00
setstate HC.Buero 2017-01-04 19:35:50 nextValue 17
setstate HC.Buero 2017-01-04 19:35:50 state 20.0


Jetzt hätte ich erwartet, dass das lezte regex um 21:00 mit 17 Grad auch für den nächsten Morgen gilt. Da heizt er aber auf 20 Grad auf.
Sobald ich aber in die Definition reingehe und ohne zu ändern abspeichere, springt es auf 17 Grad!??
Was ist da faul und wie kann ich das ändern?

Danke und Gruß
Ludwig
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 05 Januar 2017, 20:49:55
Zitat
Jetzt hätte ich erwartet, dass das lezte regex um 21:00 mit 17 Grad auch für den nächsten Morgen gilt. Da heizt er aber auf 20 Grad auf.
Sobald ich aber in die Definition reingehe und ohne zu ändern abspeichere, springt es auf 17 Grad!??

Ich  kann dir noch nicht so ganz folgen:
Wenn ich die Definition bei mir eingebe kommen folgende Schaltzeiten:

   Profil 0: Sonntag  10:00:00 21, 21:00:00 17
   Profil 1: Montag   15:00:00 20, 21:00:00 17
   Profil 2: Dienstag 15:00:00 20, 21:00:00 17
   Profil 3: Mittwoch 15:00:00 20, 21:00:00 17
   Profil 4: Donnerstag 15:00:00 20, 21:00:00 17
   Profil 5: Freitag    15:00:00 20, 21:00:00 17
   Profil 6: Samstag 10:00:00 21, 21:00:00 17

   Profil 7: Wochenende 10:00:00 21
   Profil 8: Werktags 15:00:00 20


am Mittwoch ist um 19:35 die Temperatur 20 um 21Uhr wird auf 17 gestellt und weil am Donnerstag auch kein Feiertag gilt wird um 15 Uhr wieder auf 20 Grad gestellt .
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: dcent am 17 Januar 2017, 11:59:58
Hallo Dietmar,

erst einmal vielen Dank für die gute Arbeit an den Modulen, klappt wirklich super.
Allerdings habe ich ein kleines Problem mit dem Heating_Control.

Beim Start von FHEM wirft er folgenden Fehler im Log aus:


2017.01.17 11:48:06 1: [Heizplan_Wohnzimmer] invalid daylist in Heizplan_Wohnzimmer <!$we> use one of 012345678 or (so|mo|di|mi|do|fr|sa|$we|!$we)
2017.01.17 11:48:06 1: [Heizplan_Wohnzimmer] invalid daylist in Heizplan_Wohnzimmer <$we> use one of 012345678 or (so|mo|di|mi|do|fr|sa|$we|!$we)
2017.01.17 11:48:06 1: [Heizplan_Wohnzimmer] invalid daylist in Heizplan_Wohnzimmer <!$we> use one of 012345678 or (so|mo|di|mi|do|fr|sa|$we|!$we)
2017.01.17 11:48:06 1: [Heizplan_Wohnzimmer] invalid daylist in Heizplan_Wohnzimmer <$we> use one of 012345678 or (so|mo|di|mi|do|fr|sa|$we|!$we)
2017.01.17 11:48:06 1: [Heizplan_Wohnzimmer] invalid daylist in Heizplan_Wohnzimmer <!$we> use one of 012345678 or (so|mo|di|mi|do|fr|sa|$we|!$we)
2017.01.17 11:48:06 1: [Heizplan_Wohnzimmer] invalid daylist in Heizplan_Wohnzimmer <$we> use one of 012345678 or (so|mo|di|mi|do|fr|sa|$we|!$we)
2017.01.17 11:48:06 1: [Heizplan_Wohnzimmer] invalid daylist in Heizplan_Wohnzimmer <!$we> use one of 012345678 or (so|mo|di|mi|do|fr|sa|$we|!$we)
2017.01.17 11:48:06 1: [Heizplan_Wohnzimmer] invalid daylist in Heizplan_Wohnzimmer <$we> use one of 012345678 or (so|mo|di|mi|do|fr|sa|$we|!$we)


Hier meine Konfiguration:


define Heizplan_Wohnzimmer Heating_Control MAX_14ce9b \
!$we|00:00|16.5 !$we|00:05|5 !$we|05:30|16.5 !$we|14:00|23 !$we|16:00|21 !$we|22:00|16.5 \
$we|00:00|16.5 $we|00:05|16.5 $we|08:30|23 $we|12:00|21 $we|23:00|16.5
attr Heizplan_Wohnzimmer disable 0
attr Heizplan_Wohnzimmer group Heizplan
attr Heizplan_Wohnzimmer room Heizung
attr Heizplan_Wohnzimmer switchInThePast 0


Switchen tut er die Temperaturen korrekt, auch wenn für das Modul jeden Tag $we auf 1 steht (obwohl beim abrufen der FHEM Funktion der korrekte Wert geliefert wird).
Problematisch wird es allerdings bei einem Neustart mit disable 0 bzw. einer Automatisierung mit Anwesenheit, weil ich mit Heating_Control_SetAllTemps() grundsätzlich alle $we Werte auf die Thermostate gebügelt kriege.

Hast du vielleicht eine Idee, wie man das gelöst bekommt?

Viele Grüße,
dcent

EDIT:

Hab's mal auf verbose 5 laufen lassen, vielleicht hilft dir das eher weiter, beim Start von FHEM kommt Folgendes im Log:


2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] removing Timer: Heizplan_Wohnzimmer_6
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] removing Timer: Heizplan_Wohnzimmer_4
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] removing Timer: Heizplan_Wohnzimmer_11
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] removing Timer: Heizplan_Wohnzimmer_5
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] device type heating recognized, setModifier:desiredTemperature
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] Heating recognized - switch in the past activated
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday}))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:7
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:0
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:7
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:0
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] setTimer - timer seems to be NOT active today: 7|23:00|16.5
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] setting  Timer: Heizplan_Wohnzimmer_11 2017-01-17 23:00:00
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:8
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} || !$we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:1
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:8
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} || !$we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:1
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:8
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} || !$we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:1
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] setTimer - timer seems to be active today: 8|14:00|23
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] setting  Timer: Heizplan_Wohnzimmer_4 2017-01-17 14:00:00
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:8
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} || !$we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:1
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] setTimer - timer seems to be active today: 8|16:00|21
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] setting  Timer: Heizplan_Wohnzimmer_5 2017-01-17 16:00:00
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:8
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} || !$we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:1
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] setTimer - timer seems to be active today: 8|22:00|16.5
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] setting  Timer: Heizplan_Wohnzimmer_6 2017-01-17 22:00:00
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday}))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:7
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:0
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] condition: - Tage:7
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we))}
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] result of condition:0
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] time=12:00/1484650800 delay=717, nextDelay=780, nextRetry=1484651580
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] delayedExecutionCond:0
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] result of delayedExecutionCond:0
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] list of window sensors found: 'Heizplan_Wohnzimmer'
2017.01.17 12:11:57 4: [Heizplan_Wohnzimmer] past timer on MAX_14ce9b at 2017-01-17 12:00:00 with  21 activated
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] removing Timer: Heizplan_Wohnzimmer_delayed
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] setting  Timer: Heizplan_Wohnzimmer_delayed 2017-01-17 12:12:02
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] removing Timer: Heizplan_Wohnzimmer_delayed
2017.01.17 12:11:57 5: [Heizplan_Wohnzimmer] setting  Timer: Heizplan_Wohnzimmer_delayed 2017-01-17 12:12:02
2017.01.17 12:12:02 4: MAX_14ce9b 2017-01-17 12:00:00 722s
2017.01.17 12:12:02 5: [Heizplan_Wohnzimmer] setting  Timer: Heizplan_Wohnzimmer_10 2017-01-17 12:00:00
2017.01.17 12:12:02 5: [Heizplan_Wohnzimmer] removing Timer: Heizplan_Wohnzimmer_10
2017.01.17 12:12:02 5: [Heizplan_Wohnzimmer] setting  Timer: Heizplan_Wohnzimmer_10 2017-01-17 12:00:00
2017.01.17 12:12:02 4: MAX_16f920 2017-01-17 12:00:00 722s
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] device type heating recognized, setModifier:desiredTemperature
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] time=12:00/1484650800 delay=722, nextDelay=780, nextRetry=1484651580
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] delayedExecutionCond:0
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] result of delayedExecutionCond:0
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] list of window sensors found: 'Heizplan_Wohnzimmer'
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] condition: - Tage:7,8
2017.01.17 12:12:02 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we || !$we))}
2017.01.17 12:12:02 5: [Heizplan_Wohnzimmer] result of condition:1
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] condition: - Tage:7
2017.01.17 12:12:02 5: [Heizplan_Wohnzimmer] condition: {my $days={};;map{$days->{$_}=1}();;;;( 1 && (defined $days->{$wday} ||  $we))}
2017.01.17 12:12:02 5: [Heizplan_Wohnzimmer] result of condition:0
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] Update   - past timer activated
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] device type heating recognized, setModifier:desiredTemperature
2017.01.17 12:12:02 4: [Heizplan_Wohnzimmer] aktParam:21.0 newParam:21.0 - is   disabled


Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: lenn1 am 30 Januar 2017, 19:53:19
Ist es irgendwie möglich 2 gleiche Thermostate über einen Heizplan zu steuern?
Habe 2 Heizkörper in einem Raum die logischerweise gleich laufen sollen.
Jedenfalls finde ich das logisch :)

"SchlafzimmerThermostat1,SchlafzimmerThermostat2" als Device ist nicht möglich.

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 30 Januar 2017, 20:26:19
Warum nicht
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: lenn1 am 30 Januar 2017, 21:30:11
Keine ahnung, habs probiert, geht nicht.
Die Temperaturen werden nicht umgeschaltet.
Beim anlegen steht auch im log was von, device nicht erkannt aber trotzdem angenommen.

2017.01.29 10:25:44 3: [SchlafzimmerHeizplan] device <SchlafzimmerThermostat1,SchlafzimmerThermostat2> in fhem not defined, but accepted
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 30 Januar 2017, 21:48:30
Schalte mal verbose 5 ein
Schaltbefehle werden abgesetzt, aber leider die falschen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: lenn1 am 26 Februar 2017, 09:27:31
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] removing Timer: SchlafzimmerHeizplan_2
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] 0123456|07:00|16  - trying to accept as a switchtime
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 0123456|07:00|16 - accepted
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] 0123456|21:00|18  - trying to accept as a switchtime
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 0123456|21:00|18 - accepted
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik",  - trying to accept as a switchtime
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik",  - unbalanced brackets ():2
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state",  - trying to accept as a switchtime
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state",  - unbalanced brackets ():2
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "")  - trying to accept as a switchtime
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "")  - unbalanced brackets ():1
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "") eq  - trying to accept as a switchtime
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "") eq  - unbalanced brackets ():1
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "") eq "on")  - trying to accept as a switchtime
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "") eq "on") - NOT accepted, must be command or condition
2017.02.26 09:25:51 3: [SchlafzimmerHeizplan] device <SchlafzimmerThermostat1,SchlafzimmerThermostat2> in fhem not defined, but accepted
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 06:43:52 18:27:58 Sonntag
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 0: Sonntag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 1: Montag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 2: Dienstag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 3: Mittwoch)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 4: Donnerstag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 5: Freitag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 6: Samstag)
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] removing Timer: SchlafzimmerHeizplan_SetTimerOfDay
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] setting  Timer: SchlafzimmerHeizplan_SetTimerOfDay 2017-02-27 00:00:05
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] no switch in the yesterdays because of the devices type(SchlafzimmerThermostat1,SchlafzimmerThermostat2 is not recognized as heating) - use attr switchInThePast
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] condition:(ReadingsVal("HCAutomatik", "state", "") eq "on") - Tage:0,1,2,3,4,5,6
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days->{$wday}))}
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] result of condition:1
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] condition:(ReadingsVal("HCAutomatik", "state", "") eq "on") - Tage:0,1,2,3,4,5,6
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days->{$wday}))}
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] result of condition:1
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] setTimer - timer seems to be active today: 0123456|21:00|18
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] setting  Timer: SchlafzimmerHeizplan_2 2017-02-26 21:00:00



Also hab mal verbose 5 eingeschaltet.
Ich seh das Problem jetzt selbst leider nicht .. :(
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: lenn1 am 26 Februar 2017, 09:42:00
Zitat von: lenn1 am 26 Februar 2017, 09:27:31
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] removing Timer: SchlafzimmerHeizplan_2
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] 0123456|07:00|16  - trying to accept as a switchtime
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 0123456|07:00|16 - accepted
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] 0123456|21:00|18  - trying to accept as a switchtime
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 0123456|21:00|18 - accepted
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik",  - trying to accept as a switchtime
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik",  - unbalanced brackets ():2
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state",  - trying to accept as a switchtime
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state",  - unbalanced brackets ():2
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "")  - trying to accept as a switchtime
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "")  - unbalanced brackets ():1
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "") eq  - trying to accept as a switchtime
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "") eq  - unbalanced brackets ():1
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "") eq "on")  - trying to accept as a switchtime
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] (ReadingsVal("HCAutomatik", "state", "") eq "on") - NOT accepted, must be command or condition
2017.02.26 09:25:51 3: [SchlafzimmerHeizplan] device <SchlafzimmerThermostat1,SchlafzimmerThermostat2> in fhem not defined, but accepted
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 06:43:52 18:27:58 Sonntag
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 0: Sonntag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 1: Montag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 2: Dienstag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 3: Mittwoch)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 4: Donnerstag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 5: Freitag)
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] 07:00:00 16, 21:00:00 18 (Profil 6: Samstag)
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] removing Timer: SchlafzimmerHeizplan_SetTimerOfDay
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] setting  Timer: SchlafzimmerHeizplan_SetTimerOfDay 2017-02-27 00:00:05
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] no switch in the yesterdays because of the devices type(SchlafzimmerThermostat1,SchlafzimmerThermostat2 is not recognized as heating) - use attr switchInThePast
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] condition:(ReadingsVal("HCAutomatik", "state", "") eq "on") - Tage:0,1,2,3,4,5,6
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days->{$wday}))}
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] result of condition:1
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] condition:(ReadingsVal("HCAutomatik", "state", "") eq "on") - Tage:0,1,2,3,4,5,6
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("HCAutomatik", "state", "") eq "on") && (defined $days->{$wday}))}
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] result of condition:1
2017.02.26 09:25:51 4: [SchlafzimmerHeizplan] setTimer - timer seems to be active today: 0123456|21:00|18
2017.02.26 09:25:51 5: [SchlafzimmerHeizplan] setting  Timer: SchlafzimmerHeizplan_2 2017-02-26 21:00:00



Also hab mal verbose 5 eingeschaltet.
Ich seh das Problem jetzt selbst leider nicht .. :(


Ok habs glaube ich hinbekommen.
Musste das command Template etwas ändern.

set $NAME desired-temp $EVENT


Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 26 Februar 2017, 11:04:11
Ich werde die automatische  Anlage des Template nochmals verbessern
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: lenn1 am 28 Februar 2017, 16:56:05
Danke!

noch eine Frage:

Habe Fensterkontakte und ich lasse die Heizung herunterregeln bei öffnen auf 4°C. (ist das niedrigste bei meinen Thermostaten).
Zusätzlich eben wie im Wiki:
define Fenster.Status.Bad DOIF ([Fenster_Bad] eq "open") (set HCB disbale) DOELSE (set HCB enable)

Mein Problem ist jetzt, das wenn das Fenster wieder geschlossen wird nicht wieder die vorherige Temperatur des Heizplanes wieder aktiviert wird.
Kann man da irgendwas setzen?

Problem trat letzt auf als ich den Hund nachts rausgelassen habe. Die Temperatur im WZ war schön auf 17°C heruntergefahren und nachdem ich die Tür auf und zu gemacht habe wieder auf 20°C angehoben worden. (weil ich das eben im Notify so definier hab)

Ausserdem fiel mir auf, dass das en-und disablen jedesmal dafür sorgt, dass FHEM Änderungen speichern will.
Habe da jetzt ein "save" mit eingebaut. Finde das allerdings ein wenig unschön, wenn man an Fhem Änderungen macht und meine Leute hier dann in der Zeit die Fensterkontakte auslösen.


Grüße
Lennart

PS: Danke für das ansonsten tolle Modul ! :)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 28 Februar 2017, 16:59:27
schau dir doch mal bitte das Commandref an:

ZitatdelayedExecutionCond
defines a delay Function. When returning true, the switching of the device is delayed until the function retruns a false value. The behavior is just like a windowsensor.

Example:
    attr hc delayedExecutionCond isDelayed("%HEATING_CONTROL","%WEEKDAYTIMER","%TIME","%NAME","%EVENT") 
   
the parameters %HEATING_CONTROL(timer name) %TIME %NAME(device name) %EVENT are replaced at runtime by the correct value.

Example of a function:
    sub isDelayed($$$$$) {
       my($hc, $wdt, $tim, $nam, $event ) = @_;
       
       my $theSunIsStillshining = ...
   
       return ($tim eq "16:30" && $theSunIsStillshining) ;   
    }
   

Das mit disable und enable war "damals" ein Workaround
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: lenn1 am 28 Februar 2017, 18:16:47
Ok, danke für den Hinweis.
Das Wiki ist dann ja schon etwas veraltet.

Wenn das behavior just like a windowsensor ist, kann ich doch auch einfach bei windowsensor meinen hinzufügen oder?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 28 Februar 2017, 18:23:06
kannst Du...lies dich doch bitte einfach ein: https://fhem.de/commandref.html#Heating_Control
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ripperle am 04 März 2017, 21:18:47
Kann man dem heating control device auch mehrere geräte zuordnen?
Habe im wohnzimmer 2 Thermostate welche den gleichen Heizplan haben sollen...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 05 März 2017, 19:08:29
man kann soweit ich weiß eine Gruppe definieren.
Dann wird die Gruppe aber nicht automatisch als Heizung erkannt.

Du kannst dann dass commandTemplate  vorgeben:
attr HeizungKueche_an_wt commandTemplate set $NAME desired-temp $EVENT ;
und eventuell noch switchInThePast auf 1 setzen:
attr HeizungKueche_an_wt switchInThePast 1
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 14 April 2017, 10:29:57
Hallo zusammen,

ich habe ein Problem mit $we und Feiertagen. Heute am Karfreitag erkennt Heating_Control über $we, dass ein Feiertag ist und benutzt dann aber sowohl die Einstellungen für Freitag als auch die für das Wochenende. Ist das so gewollt?

Internals:
   COMMAND    { myHeatingControl($NAME,$EVENT) }
   CONDITION
   DEF        E2.ez.HR.Heizung de Mo-Fr|06:00|comfort Mo-Fr|07:30|eco Mo-Fr|15:30|comfort Mo-Fr|00:30|eco $we|08:00|comfort $we|01:00|eco { myHeatingControl($NAME,$EVENT) }
   DEVICE     E2.ez.HR.Heizung
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       hc.01.E2.ez.HR.Heizung
   NR         214
   Profil 0: Sonntag 01:00:00 eco, 08:00:00 comfort
   Profil 1: Montag 00:30:00 eco, 06:00:00 comfort, 07:30:00 eco, 15:30:00 comfort
   Profil 2: Dienstag 00:30:00 eco, 06:00:00 comfort, 07:30:00 eco, 15:30:00 comfort
   Profil 3: Mittwoch 00:30:00 eco, 06:00:00 comfort, 07:30:00 eco, 15:30:00 comfort
   Profil 4: Donnerstag 00:30:00 eco, 06:00:00 comfort, 07:30:00 eco, 15:30:00 comfort
   Profil 5: Freitag 00:30:00 eco, 01:00:00 eco, 06:00:00 comfort, 07:30:00 eco, 08:00:00 comfort, 15:30:00 comfort
   Profil 6: Samstag 01:00:00 eco, 08:00:00 comfort
   Profil 7: Wochenende 01:00:00 eco, 08:00:00 comfort
   STATE      nächste Schaltung: 2017-04-14 15:30:00 comfort ==> comfort
   STILLDONETIME 0
   TYPE       Heating_Control
   Readings:
     2017-04-14 09:45:02   currValue       comfort
     2017-04-13 16:47:38   desired-temp    18.0
     2017-04-13 17:02:02   disabled        0
     2017-04-14 09:45:02   nextUpdate      2017-04-14 15:30:00
     2017-04-14 09:45:02   nextValue       comfort
     2017-04-14 09:45:02   state           comfort
   SWITCHINGTIMES:
     Mo-Fr|06:00|comfort
     Mo-Fr|07:30|eco
     Mo-Fr|15:30|comfort
     Mo-Fr|00:30|eco
     $we|08:00|comfort
     $we|01:00|eco
   Timer:
     Hc.01.e2.ez.hr.heizung_3:
       HASH       hc.01.E2.ez.HR.Heizung
       MODIFIER   3
       NAME       hc.01.E2.ez.HR.Heizung_3
     Hc.01.e2.ez.hr.heizung_5:
       HASH       hc.01.E2.ez.HR.Heizung
       MODIFIER   5
       NAME       hc.01.E2.ez.HR.Heizung_5
       immerSchalten 1
     Hc.01.e2.ez.hr.heizung_settimerofday:
       HASH       hc.01.E2.ez.HR.Heizung
       MODIFIER   SetTimerOfDay
       NAME       hc.01.E2.ez.HR.Heizung_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     Hc.01.e2.ez.hr.heizung_delayed:
       HASH       hc.01.E2.ez.HR.Heizung
       MODIFIER   delayed
       NAME       hc.01.E2.ez.HR.Heizung_delayed
   Daynumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   Helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     Switchingtime:
       0:
         01:00:00   eco
         08:00:00   comfort
       1:
         00:30:00   eco
         06:00:00   comfort
         07:30:00   eco
         15:30:00   comfort
       2:
         00:30:00   eco
         06:00:00   comfort
         07:30:00   eco
         15:30:00   comfort
       3:
         00:30:00   eco
         06:00:00   comfort
         07:30:00   eco
         15:30:00   comfort
       4:
         00:30:00   eco
         06:00:00   comfort
         07:30:00   eco
         15:30:00   comfort
       5:
         00:30:00   eco
         01:00:00   eco
         06:00:00   comfort
         07:30:00   eco
         08:00:00   comfort
         15:30:00   comfort
       6:
         01:00:00   eco
         08:00:00   comfort
       7:
         01:00:00   eco
         08:00:00   comfort
   Longdays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   Profil:
     1:
       EPOCH      1492142400
       PARA       comfort
       TIME       06:00
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1492147800
       PARA       eco
       TIME       07:30
       TAGE:
         1
         2
         3
         4
         5
     3:
       EPOCH      1492176600
       PARA       comfort
       TIME       15:30
       TAGE:
         1
         2
         3
         4
         5
     4:
       EPOCH      1492122600
       PARA       eco
       TIME       00:30
       TAGE:
         1
         2
         3
         4
         5
     5:
       EPOCH      1492149600
       PARA       comfort
       TIME       08:00
       TAGE:
         7
     6:
       EPOCH      1492124400
       PARA       eco
       TIME       01:00
       TAGE:
         7
   Profile_idx:
     0:
       01:00:00   6
       08:00:00   5
     1:
       00:30:00   4
       06:00:00   1
       07:30:00   2
       15:30:00   3
     2:
       00:30:00   4
       06:00:00   1
       07:30:00   2
       15:30:00   3
     3:
       00:30:00   4
       06:00:00   1
       07:30:00   2
       15:30:00   3
     4:
       00:30:00   4
       06:00:00   1
       07:30:00   2
       15:30:00   3
     5:
       00:30:00   4
       01:00:00   6
       06:00:00   1
       07:30:00   2
       08:00:00   5
       15:30:00   3
     6:
       01:00:00   6
       08:00:00   5
     7:
       01:00:00   6
       08:00:00   5
   Shortdays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Zeitschaltung
   commandTemplate set $NAME desired-temp $EVENT
   disable    0
   group      Heizungssteuerung
   room       Zentrale Steuerung
   sortby     2
   stateFormat nächste Schaltung: nextUpdate currValue ==> nextValue


Gruß
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 14 April 2017, 13:41:54
Ich befürchte, dadurch dass du neben der Definition für Fr auch $we abgeben hast, wird beides geschaltet.
Intern überstehen we Angaben sonstige Angaben nicht
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 14 April 2017, 18:17:20
Hallo Dietmar,

klar gibt es Einträge für Freitag und für $we (siehe List im vorherigen Post). Ich habe erwartet, dass bei einem Feiertag, der auf einen Wochentag fällt (und damit ist ja $we gesetzt) die Wochenendeinstellungen die normalen Einstellungen überschreiben. Jetzt werden beide Einstellungen für den Freitag übernommen, was zu unsinnige Schaltungen führt.

Gruß
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 14 April 2017, 19:07:11
Ja,

Und welche Wochentagsschaltung soll durch eine we-Angabe nicht ausgeführt werden?
Die erste, die zweite oder die dritte? Alle?

Ich habe deshalb we und !we voneinander getrennt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 14 April 2017, 20:09:25
Hallo Dietmar,

z.B. am Karfreitag darf m.E. keine der Wochentagsschaltungen ausgeführt werden, sondern nur alle vom "Wochenende=Feiertag".

Verstehe ich Dich aber richtig, dass man mit der Kombination von $we und !$we das von mir erwartete Verhalten erreichen kann?

Gruß
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 15 April 2017, 07:54:33
Ich habe deshalb mehrere Profile definiert {we,!we}x{übergang, aus, ein}x{Küche, Wohnzimmer}
Zwischen denen automatisch oder per Dummy gewechselt wird.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 16 April 2017, 10:05:12
Hallo Dietmar,

habe es jetzt mit der Kombination aus $we und !$we probiert. Das sieht für mich gut aus, der nächste Freitag wird seit heute Nacht wieder als Wochentag behandelt und der Ostermontag wird als Feiertag/Wochenende behandelt.

Beste Grüße
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: lenn1 am 16 April 2017, 11:34:56

BadezimmerFensterkontakt:doorWindow:.* {
if (ReadingsVal("HCAutomatik", "state", "") eq "on") {
  if ((Value("BadezimmerFensterkontakt") eq "open")) {
    fhem("define at_bad_fensteroffentimer at +00:02:00 set BadezimmerThermostat thermostatSetpointSet 4");
  }  else  {
    fhem("set BadezimmerThermostat thermostatSetpointSet 18");
    fhem("delete at_bad_fensteroffentimer") if (defined($defs{'at_bad_fensteroffentimer'}));;;;
  }
}
}


Also,

mein Problem liegt nun darin, dass die Temperatur sobald das Fenster wieder geschlossen wird, nicht auf die Heizplantemperatur gestellt wird, sondern auf eine von mir im notify definierte.
Den Fensterkontakt hab ich als Attribut drin und er meldet auch {"open","closed"}

Ich suche im Grunde eine Möglichkeit den Heizplan wieder zu starten, ähnlich wie wenn man ihn gerade definiert hat, damit die Temperaturen richtig eingestellt werden.



Grüße
Lennart

PS: Ich hab das commandref gelesen. (bevor wieder der Hinweis darauf kommt.. ::))


Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FHEM_Starter am 17 April 2017, 12:44:08
Hallo Toka, hallo Dietmar,

auch ich bin bisher davon ausgegangen, dass an einem Feiertag (ermittelt über eine holiday Datei) bei gesetzem $we immer die Zeiten des WeekdayTimers aus dem Wochenende ausgeführt werden.
@Dietmar: Ist es in Deinem Modul nicht möglich, die Variable $we höher zu behandeln als den $wday?
@Toka Kannst Du Deine Definition hier bitte posten?

Ich arbeite mit vielen WeekDayTimern und würde eine generische Lösung vor einem Workaround bevorzugen. Hier ein Beispiel mit dem Ergebnis, dass am Ostermontag um 06:xx Uhr geschaltet wurde.
define Timer_test WeekdayTimer UG_AZ_Licht_Schrank MO-FR|{sunrise(+40,"06:00:40","08:05:40")}|on SA|{sunrise(+40,"08:00:40","08:05:40")}|on SO|{sunrise(+40,"08:30:40","08:35:40")}|on (ReadingsVal("Besuch_WZI", "state", "") ne "heute")

Edit:
define Timer_test WeekdayTimer UG_AZ_Licht_Schrank !$we|{sunrise(+40,"06:00:40","08:05:40")}|on SA|{sunrise(+40,"08:00:40","08:05:40")}|on SO|{sunrise(+40,"08:30:40","08:35:40")}|on (ReadingsVal("Besuch_WZI", "state", "") ne "heute")

Mit der letzten Änderung bin ich einen Schritt weiter. Aber die Frage, wenn ein Feiertag auf einen Samstag fällt, ist damit immer noch nicht gelöst. Schön wäre z.B ein Konstrukt wie:
$we außer Samstag oder !$we außer Mittwoch etc.


Danke und weiterhin frohe Ostern.
Wolfgang
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 17 April 2017, 18:51:07
Hallo Wolfgang,

da ich nur zwischen Wochentagen und Wochenende unterscheide, klappt das bei mir mit $we und !$we.

E2.ez.HR.Heizung de !$we|06:00|comfort !$we|07:30|eco !$we|15:30|comfort !$we|00:30|eco $we|08:00|comfort $we|01:00|eco { myHeatingControl($NAME,$EVENT) }

Ich stimme Dir aber zu, dass eine generelle Lösung (höhere Priorisierung von $we gegenüber wday) aus Anwendersicht besser wäre, als mit mehreren HC od WDT zu arbeiten. Was für mich auch noch ginge, wäre wenn man im Ausführungsteil $we und den aktuellen Tag der Ausführung an eine eigene Funktion übergeben könnte.

Beste Grüße
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 17 April 2017, 20:42:32
Ich denke mal über euren Wunsch nach, weiß aber nicht ob es einfach ist.

$we könnt ihr selbst ermitteln. Aus fhem.pl abkupfern.
Und wday ist noch einfacher.

Übergeben als Parameter geht auch, weil AnalyzeCommandChain angerufen wird und diese Funktion we und wday zur Verfügung stellt. - meine ich jedenfalls. Ausprobieren.

Ich mache das teilweise auch so.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 April 2017, 00:03:06
ZitatIch denke mal über euren Wunsch nach, weiß aber nicht ob es einfach ist.

ich glaube ich  habe einen Weg gefunden eine Vorrangregel so aufzubauen, dass $we eine Tagesdefinition komplett abschaltet, wenn Wochenende/Feiertrag gilt und dass !$we jede Tagesdefinition abschaltet, wenn ein Wochentag vorliegt.

Ich lasse mir die Idee noch ein wenig durch den Kopf gehen und versuche mich am Einbau.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 18 April 2017, 08:13:24
Hallo Dietmar,

das wäre echt super, wenn Du das hinbekommen könntest. Die Übergabe funktioniert bei WDT leider nicht, da habe ich es nämlich schon ausprobiert:

2017.04.15 18:51:35.893 3: [KG.hz.ZS.Zirkulationspumpe.tim] Global symbol "$we" requires explicit package name at (eval 3191) line 1. >>>{ my $date=1492275095;{myWeekdayTimerTimeTable($we,"KG.hz.ZS.Zirkulationspumpe","on",1)}}<<<

Gruß
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 18 April 2017, 20:38:01
Ich habe schon eine Version mit Vorrangregelung im Test.
Mal sehen ob es funktioniert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 11 Mai 2017, 08:35:53
Hi

Ich nutze HC zur Steuerung von meinen Fritz!300 / Comet DECT Thermostaten. Diese HC möchte ich mit Weekprofiles steuern können. Da diese Thermostate nicht direkt von HC unterstützt sind, habe ich folgende Routine und ein Notify entwickelt: https://forum.fhem.de/index.php/topic,63549.msg605214.html#msg605214

Das funktioniert, aber bringt manchmal komische Ergebnisse auf Grund "defmod". Und mit defmod sollte man dann einen Save anschliessen. Wenn ich auf einmal alle HC ändere und speichere, hat es mich auch mal zum Absturtz geführt.

Gibt es eine andere Möglichkeit, um die Profile eines HC zu ändern? Oder wäre es möglich es zu implementieren? Sowas wie den "set <weekprofile> profile_data <json data> ?

Gruß
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 11 Mai 2017, 08:47:40
Warum legst du nicht mehrere verschiedene Profile an und steuerst an/aus über Bedingungen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 11 Mai 2017, 09:40:48
Damit ich mehr Flexibilität bekomme. Mit meiner heutige Lösung kann ich direkt aus FTUI die Weekprofile bearbeiten, wie ich will.

Aber da die Weekprofile sich theoretisch "im laufenden Betrieb" nicht so oft ändern, wäre deine Lösung vielleicht doch nicht so schlecht: mehrere vordefinierte HC mit unterschiedliche Profile, und set active/inactive oder "conditions".

Ich war bisher noch in der "Einrichtungsphase", deswegen viele Änderungen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Dietmar63 am 11 Mai 2017, 19:31:18
Ich habe 2 HM-CC-TC für Küche und Wohnzimmer.
Mit einem Dummy schalte ich zwischen aus/ueb/an hin und her.

Zusätzlich wird noch zwischen Wochentag und Wochenende untschieden

Besser als disable funktioniert bei mir disableCond
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Tungsten am 08 Oktober 2017, 17:33:20
Hallo Zusammen,

kann ich mit dem Modul auch eine DECT200 Steckdose die in FHEM eingebunden ist nach einem Wochenplan einschalten, und das basierend auf einem TX29DTH LaCrosse Funksensor der auch bereits in FHEM eingebunden ist?

Also eine Wochentag und Temperaturabhängige Schaltung eines Aktors?

Werde aus dem Commandref diesbezüglich nicht ganz schlau.

Danke Euch!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: netwalk am 20 November 2017, 10:56:25
Hallo,

ich habe in der letzten Woche meine Heizungsventile von MAX auf HM umgerüstet und in diesem Zusammenhang das Modul Heating_Control eingesetzt. Dabei bin ich auf ein ähnliches oder gleiches Problem wie im Thread
https://forum.fhem.de/index.php/topic,79546.0.html (https://forum.fhem.de/index.php/topic,79546.0.html)
gestoßen.

Zum Sachverhalt:
Für jeden Raum habe ich jeweils zwei HC-Profile definiert:


hc.st.Schlafzimmer.Arbeit
DEF
struct.Heizung.st.Schlafzimmer 1234|16:30|day 5|14:00|day 60|07:00|day 1234560|02:30|night (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")

und

hc.st.Schlafzimmer.Urlaub.zuhause
DEF
struct.Heizung.st.Schlafzimmer 1234560|07:00|day 1234560|02:30|night (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and (ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "on" or ReadingsVal("sc.Krank.zuhause", "state", "") eq "on"))


Zusätzlich ist noch folgendes Attribut jeweils definiert:
windowSensor
hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts


Aktiv ist der Modus "Arbeit".

Nun wurde gestern Abend vor dem regulären Zeitschaltpunkt um 02:30 ein Fenster im Schlafzimmer über Nacht geöffnet, der Status des HC-Profils wechselte auch korrekt auf "open window":
2017.11.20 02:30:01 3: [hc.st.Schlafzimmer.Urlaub.zuhause] switch of struct.Heizung.st.Schlafzimmer delayed - sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'open'
2017.11.20 02:30:01 3: [hc.st.Schlafzimmer.Arbeit] switch of struct.Heizung.st.Schlafzimmer delayed - sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'open'


Zum nächsten geplanten Zeitschaltpunkt um 07:00 steht im LOG:
2017.11.20 07:00:00 3: [hc.st.Schlafzimmer.Arbeit] timer at 02:30 skiped by new timer at 07:00
2017.11.20 07:00:00 3: [hc.st.Schlafzimmer.Urlaub.zuhause] timer at 02:30 skiped by new timer at 07:00



Um 07:06 wurde das Fenster geschlossen:
2017.11.20 07:06:56 3: CUL_HM set stat.eg.Flur_Dis displayEP GESCHLOSSEN,none:0000-00-0,none:07.06,ok off 3 0 off



Um 07:07 wurde der Wartezustand aufgehoben:
2017.11.20 07:07:00 3: [hc.st.Schlafzimmer.Urlaub.zuhause] delay of switching struct.Heizung.st.Schlafzimmer stopped.
2017.11.20 07:07:00 3: [hc.st.Schlafzimmer.Arbeit] delay of switching struct.Heizung.st.Schlafzimmer stopped.




Jetzt hätte doch eigentlich das aktuelle Profil abgearbeitet werden müssen, passiert jedoch nicht.
Die Heizung bleibt im "day"-Modus (war vor Öffnen des Fensters gestern Abend aktiv).


Der Status bleibt im Modus "open window":

Internals:
   COMMAND
   CONDITION  (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
   DEF        struct.Heizung.st.Schlafzimmer 1234|16:30|day 5|14:00|day 60|07:00|day 1234560|02:30|night (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
   DEVICE     struct.Heizung.st.Schlafzimmer
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       hc.st.Schlafzimmer.Arbeit
   NR         1456
   Profil 0: Sonntag 02:30:00 night, 07:00:00 day
   Profil 1: Montag 02:30:00 night, 16:30:00 day
   Profil 2: Dienstag 02:30:00 night, 16:30:00 day
   Profil 3: Mittwoch 02:30:00 night, 16:30:00 day
   Profil 4: Donnerstag 02:30:00 night, 16:30:00 day
   Profil 5: Freitag 02:30:00 night, 14:00:00 day
   Profil 6: Samstag 02:30:00 night, 07:00:00 day
   STATE      open window
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2017-11-20 07:07:00   currValue       night
     2017-11-20 07:07:00   nextUpdate      2017-11-20 16:30:00
     2017-11-20 07:07:00   nextValue       day
     2017-11-20 07:06:00   state           open window
   SWITCHINGTIMES:
     1234|16:30|day
     5|14:00|day
     60|07:00|day
     1234560|02:30|night
   TIMER:
     hc.st.Schlafzimmer.Arbeit_1:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   1
       NAME       hc.st.Schlafzimmer.Arbeit_1
     hc.st.Schlafzimmer.Arbeit_2:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   2
       NAME       hc.st.Schlafzimmer.Arbeit_2
     hc.st.Schlafzimmer.Arbeit_3:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   3
       NAME       hc.st.Schlafzimmer.Arbeit_3
     hc.st.Schlafzimmer.Arbeit_SetTimerOfDay:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   SetTimerOfDay
       NAME       hc.st.Schlafzimmer.Arbeit_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         02:30:00   night
         07:00:00   day
       1:
         02:30:00   night
         16:30:00   day
       2:
         02:30:00   night
         16:30:00   day
       3:
         02:30:00   night
         16:30:00   day
       4:
         02:30:00   night
         16:30:00   day
       5:
         02:30:00   night
         14:00:00   day
       6:
         02:30:00   night
         07:00:00   day 


Die Profile für alle anderen Räume sind genauso aufgebaut und scheinen problemlos zu funktionieren (zumindest hat das Badezimmer-Profil heute morgen wie erwartet reagiert). Dort war zum Schaltzeitpunkt kein Fenster geöffnet.

Habe ich in Bezug auf Fenster-Sensoren etwas vergessen zu beachten, oder ist das ein Fehler im Modul?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 20 November 2017, 18:17:21
ZitatnextUpdate      2017-11-20 16:30:00
Dann wird state neu kalkuliert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: netwalk am 20 November 2017, 22:12:12
ZitatDann wird state neu kalkuliert.

Ich hatte nur erwartet, dass das verpasste Switching morgens um 07:07 nachgeholt wird, wenn das Fenster geschlossen wird.
Der Status wird zwar mit "night" angegeben:

2017-11-20 07:07:00   currValue       night

der Heizungsregler stand jedoch auf "day", es wurde kein "set ... night" ausgeführt.
Nun habe ich explizit das Attribut

switchInThePast          1

gesetzt und werde das Szenario noch einmal durchspielen.

Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: netwalk am 21 November 2017, 08:49:26
Auch mit dem neu gesetzten Attribut

switchInThePast            1

bleibt der Fehler bestehen, der Status bleibt bei "open window" stehen und die Heizung wird nicht auf "night" gestellt, obwohl im Log wieder auftaucht:

2017.11.21 07:01:00 3: [hc.st.Schlafzimmer.Arbeit] timer at 02:31:00 skiped by new timer at 07:01:00
2017.11.21 07:01:00 3: [hc.st.Schlafzimmer.Urlaub.zuhause] timer at 02:31:00 skiped by new timer at 07:01:00
...
2017.11.21 07:02:00 3: [hc.st.Schlafzimmer.Arbeit] delay of switching struct.Heizung.st.Schlafzimmer stopped.
2017.11.21 07:02:00 3: [hc.st.Schlafzimmer.Urlaub.zuhause] delay of switching struct.Heizung.st.Schlafzimmer stopped.


Ich werde jetzt mal das Attribut "windowSensor" löschen und schauen, was passiert.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 21 November 2017, 10:52:13
Zeig bitte folgende lists:
list hc.st.Schlafzimmer.Arbeit
list hc.st.Schlafzimmer.Urlaub.zuhause
list sc.Heizung.Auto
list sc.Urlaub.zuhause
list sc.Urlaub.auswaerts
list sc.Krank.zuhause
list hm.fk.st.Schlafzimmer.links
list hm.fk.st.Schlafzimmer.rechts


Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: netwalk am 21 November 2017, 11:06:41
hc.st.Schlafzimmer.Arbeit:

Internals:
   COMMAND
   CONDITION  (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
   DEF        struct.Heizung.st.Schlafzimmer 1234|16:31:00|day 5|14:01:00|day 60|07:01:00|day 1234560|02:31:00|night (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
   DEVICE     struct.Heizung.st.Schlafzimmer
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       hc.st.Schlafzimmer.Arbeit
   NR         1450
   Profil 0: Sonntag 02:31:00 night, 07:01:00 day
   Profil 1: Montag 02:31:00 night, 16:31:00 day
   Profil 2: Dienstag 02:31:00 night, 16:31:00 day
   Profil 3: Mittwoch 02:31:00 night, 16:31:00 day
   Profil 4: Donnerstag 02:31:00 night, 16:31:00 day
   Profil 5: Freitag 02:31:00 night, 14:01:00 day
   Profil 6: Samstag 02:31:00 night, 07:01:00 day
   STATE      night
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2017-11-21 08:40:21   currValue       night
     2017-11-21 08:40:21   nextUpdate      2017-11-21 16:31:00
     2017-11-21 08:40:21   nextValue       day
     2017-11-21 08:40:21   state           night
   SWITCHINGTIMES:
     1234|16:31:00|day
     5|14:01:00|day
     60|07:01:00|day
     1234560|02:31:00|night
   TIMER:
     hc.st.Schlafzimmer.Arbeit_1:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   1
       NAME       hc.st.Schlafzimmer.Arbeit_1
     hc.st.Schlafzimmer.Arbeit_2:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   2
       NAME       hc.st.Schlafzimmer.Arbeit_2
     hc.st.Schlafzimmer.Arbeit_4:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   4
       NAME       hc.st.Schlafzimmer.Arbeit_4
       immerSchalten 1
     hc.st.Schlafzimmer.Arbeit_SetTimerOfDay:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   SetTimerOfDay
       NAME       hc.st.Schlafzimmer.Arbeit_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     hc.st.Schlafzimmer.Arbeit_delayed:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   delayed
       NAME       hc.st.Schlafzimmer.Arbeit_delayed
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         02:31:00   night
         07:01:00   day
       1:
         02:31:00   night
         16:31:00   day
       2:
         02:31:00   night
         16:31:00   day
       3:
         02:31:00   night
         16:31:00   day
       4:
         02:31:00   night
         16:31:00   day
       5:
         02:31:00   night
         14:01:00   day
       6:
         02:31:00   night
         07:01:00   day
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1511278260
       PARA       day
       TIME       16:31:00
       TAGE:
         1
         2
         3
         4
     2:
       EPOCH      1511269260
       PARA       day
       TIME       14:01:00
       TAGE:
         5
     3:
       EPOCH      1511244060
       PARA       day
       TIME       07:01:00
       TAGE:
         0
         6
     4:
       EPOCH      1511227860
       PARA       night
       TIME       02:31:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   profile_IDX:
     0:
       02:31:00   4
       07:01:00   3
     1:
       02:31:00   4
       16:31:00   1
     2:
       02:31:00   4
       16:31:00   1
     3:
       02:31:00   4
       16:31:00   1
     4:
       02:31:00   4
       16:31:00   1
     5:
       02:31:00   4
       14:01:00   2
     6:
       02:31:00   4
       07:01:00   3
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set $NAME controlMode $EVENT
   room       Heizung
   switchInThePast 1
   windowSensor hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts


hc.st.Schlafzimmer.Urlaub.zuhause
Internals:
   COMMAND
   CONDITION  (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and (ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "on" or ReadingsVal("sc.Krank.zuhause", "state", "") eq "on"))
   DEF        struct.Heizung.st.Schlafzimmer 1234560|07:01:00|day 1234560|02:31:00|night (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and (ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "on" or ReadingsVal("sc.Krank.zuhause", "state", "") eq "on"))
   DEVICE     struct.Heizung.st.Schlafzimmer
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       hc.st.Schlafzimmer.Urlaub.zuhause
   NR         1451
   Profil 0: Sonntag 02:31:00 night, 07:01:00 day
   Profil 1: Montag 02:31:00 night, 07:01:00 day
   Profil 2: Dienstag 02:31:00 night, 07:01:00 day
   Profil 3: Mittwoch 02:31:00 night, 07:01:00 day
   Profil 4: Donnerstag 02:31:00 night, 07:01:00 day
   Profil 5: Freitag 02:31:00 night, 07:01:00 day
   Profil 6: Samstag 02:31:00 night, 07:01:00 day
   STATE      open window
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2017-11-21 07:02:00   currValue       day
     2017-11-21 07:02:00   nextUpdate      2017-11-22 02:31:00
     2017-11-21 07:02:00   nextValue       night
     2017-11-21 07:01:00   state           open window
   SWITCHINGTIMES:
     1234560|07:01:00|day
     1234560|02:31:00|night
   TIMER:
     hc.st.Schlafzimmer.Urlaub.zuhause_1:
       HASH       hc.st.Schlafzimmer.Urlaub.zuhause
       MODIFIER   1
       NAME       hc.st.Schlafzimmer.Urlaub.zuhause_1
     hc.st.Schlafzimmer.Urlaub.zuhause_SetTimerOfDay:
       HASH       hc.st.Schlafzimmer.Urlaub.zuhause
       MODIFIER   SetTimerOfDay
       NAME       hc.st.Schlafzimmer.Urlaub.zuhause_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     hc.st.Schlafzimmer.Urlaub.zuhause_delayed:
       HASH       hc.st.Schlafzimmer.Urlaub.zuhause
       MODIFIER   delayed
       NAME       hc.st.Schlafzimmer.Urlaub.zuhause_delayed
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         02:31:00   night
         07:01:00   day
       1:
         02:31:00   night
         07:01:00   day
       2:
         02:31:00   night
         07:01:00   day
       3:
         02:31:00   night
         07:01:00   day
       4:
         02:31:00   night
         07:01:00   day
       5:
         02:31:00   night
         07:01:00   day
       6:
         02:31:00   night
         07:01:00   day
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1511244060
       PARA       day
       TIME       07:01:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1511227860
       PARA       night
       TIME       02:31:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   profile_IDX:
     0:
       02:31:00   2
       07:01:00   1
     1:
       02:31:00   2
       07:01:00   1
     2:
       02:31:00   2
       07:01:00   1
     3:
       02:31:00   2
       07:01:00   1
     4:
       02:31:00   2
       07:01:00   1
     5:
       02:31:00   2
       07:01:00   1
     6:
       02:31:00   2
       07:01:00   1
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set $NAME controlMode $EVENT
   room       Heizung
   switchInThePast 1
   windowSensor hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts


sc.Heizung.Auto
Internals:
   NAME       sc.Heizung.Auto
   NR         1288
   STATE      on
   TYPE       dummy
   READINGS:
     2017-11-08 16:42:42   state           on
Attributes:
   alias      Heizung Automatik
   devStateIcon .*off:md_ios_off_32 .*on:md_ios_on_32
   icon       sani_heating
   room       Heizung
   setList    on off


sc.Urlaub.zuhause
Internals:
   NAME       sc.Urlaub.zuhause
   NR         693
   STATE      off
   TYPE       dummy
   READINGS:
     2017-11-06 13:02:43   state           off
Attributes:
   alias      Urlaub zuhause
   devStateIcon .*off:md_ios_off_32 .*on:md_ios_on_32
   fhem_widget_command {"allowed_values":["off","on"],"order":90}
   group      Szenen
   icon       scene_summerhouse
   room       Widget,dummy
   setList    on off


sc.Urlaub.auswaerts
Internals:
   NAME       sc.Urlaub.auswaerts
   NR         782
   STATE      off
   TYPE       dummy
   READINGS:
     2017-11-05 18:58:41   state           off
Attributes:
   alias      Urlaub auswärts
   devStateIcon .*off:md_ios_off_32 .*on:md_ios_on_32
   group      Szenen
   icon       scene_visit_guests
   room       Widget,dummy
   setList    on off


sc.Krank.zuhause
Internals:
   NAME       sc.Krank.zuhause
   NR         1040
   STATE      off
   TYPE       dummy
   READINGS:
     2017-11-05 18:31:30   state           off
Attributes:
   devStateIcon .*off:md_ios_off_32_krank .*on:md_ios_on_32_krank2
   icon       scene_sleeping_alternat
   room       dummy
   setList    on off


hm.fk.st.Schlafzimmer.links
Internals:
   CHANGED
   DEF        581FA5
   IODev      myHmLGW
   LASTInputDev myHmLGW
   MSGCNT     27
   NAME       hm.fk.st.Schlafzimmer.links
   NOTIFYDEV  global
   NR         1418
   NTFY_ORDER 50-hm.fk.st.Schlafzimmer.links
   STATE      closed
   TYPE       CUL_HM
   lastMsg    No:C7 - t:10 s:581FA5 d:120504 06010000
   myHmLGW_MSGCNT 27
   myHmLGW_RAWMSG 05010034C7A610581FA512050406010000
   myHmLGW_RSSI -52
   myHmLGW_TIME 2017-11-21 10:31:42
   peerList   hm.hr.st.Schlafzimmer_WindowRec,hm.wt.st.Schlafzimmer_WindowRec,
   protLastRcv 2017-11-21 10:31:42
   protSnd    23 last_at:2017-11-21 10:31:42
   protState  CMDs_done
   rssi_at_myHmLGW min:-56 avg:-51.96 cnt:27 lst:-52 max:-49
   READINGS:
     2017-11-20 14:59:41   Activity        alive
     2017-11-18 21:52:28   CommandAccepted no
     2017-11-18 21:53:52   D-firmware      1.0
     2017-11-18 21:53:52   D-serialNr      OEQ0419786
     2017-11-18 21:53:53   PairedTo        0x120504
     2017-11-18 09:14:38   R-cyclicInfoMsg on
     2017-11-18 09:14:39   R-eventDlyTime  0 s
     2017-11-18 21:53:55   R-hm.hr.st.Schlafzimmer_WindowRec-expectAES off
     2017-11-18 21:53:55   R-hm.hr.st.Schlafzimmer_WindowRec-peerNeedsBurst on
     2017-11-18 21:51:40   R-hm.wt.st.Schlafzimmer_WindowRec-expectAES off
     2017-11-18 21:51:40   R-hm.wt.st.Schlafzimmer_WindowRec-peerNeedsBurst on
     2017-11-18 09:14:39   R-msgScPosA     open
     2017-11-18 09:14:39   R-msgScPosB     closed
     2017-11-18 09:14:38   R-pairCentral   0x120504
     2017-11-18 09:14:38   R-sabotageMsg   on
     2017-11-18 09:15:18   R-sign          off
     2017-11-18 09:14:38   R-transmDevTryMax 6
     2017-11-18 09:14:39   R-transmitTryMax 6
     2017-11-18 21:53:53   RegL_00.        02:01 09:01 0A:12 0B:05 0C:04 10:01 14:06 00:00
     2017-11-18 21:53:54   RegL_01.        08:00 20:9C 21:00 30:06 00:00
     2017-11-18 21:53:55   RegL_04.hm.hr.st.Schlafzimmer_WindowRec 01:01 00:00
     2017-11-18 21:53:55   RegL_04.hm.wt.st.Schlafzimmer_WindowRec 01:01 00:00
     2017-11-18 09:15:17   aesCommToDev    ok
     2017-11-18 09:15:17   aesKeyNbr       00
     2017-11-21 10:31:42   alive           yes
     2017-11-21 10:31:42   battery         ok
     2017-11-21 10:31:42   contact         closed (to VCCU)
     2017-11-21 10:31:42   onoff           0
     2017-11-20 14:59:41   peerList        hm.hr.st.Schlafzimmer_WindowRec,hm.wt.st.Schlafzimmer_WindowRec,
     2017-11-21 10:31:42   recentStateType info
     2017-11-21 10:31:42   sabotageError   off
     2017-11-21 10:31:42   state           closed
     2017-11-18 21:53:41   trigDst_hm.hr.st.Schlafzimmer noConfig
     2017-11-21 07:01:27   trigger_cnt     34
   helper:
     HM_CMDNR   199
     mId        00C7
     rxType     28
     supp_Pair_Rep 0
     ack:
     expert:
       def        1
       det        1
       raw        1
       tpl        0
     io:
       newChn     +581FA5,00,00,00
       nextSend   1511256702.66674
       rxt        2
       vccu       VCCU
       p:
         581FA5
         00
         00
         00
       prefIO:
         myHmLGW
     mRssi:
       mNo        C7
       io:
         myHmLGW    -50
     prt:
       bErr       0
       sProc      0
       sleeping   0
       rspWait:
     q:
       qReqConf
       qReqStat
     role:
       chn        1
       dev        1
     rpt:
       IO         myHmLGW
       flg        A
       ts         1511256702.39674
       ack:
         HASH(0x4281618)
         C78002120504581FA500
     rssi:
       at_myHmLGW:
         avg        -51.962962962963
         cnt        27
         lst        -52
         max        -49
         min        -56
     tmpl:
Attributes:
   IODev      myHmLGW
   IOgrp      VCCU:myHmLGW
   actCycle   002:50
   actStatus  alive
   alias      fk.st.Schlafzimmer.links
   autoReadReg 4_reqStatus
   devStateIcon closed.*:fts_window_2w open.*:fts_window_2w_tilt_l@red
   event-on-change-reading state,onoff,battery
   expert     3_allReg+raw
   firmware   1.0
   icon       md_hm_fensterkontakt@crimson
   model      HM-SEC-SCo
   peerIDs    00000000,5F96FE03,61845303,
   room       CUL_HM
   serialNr   OEQ0419786
   struct.state struct.fk.alle
   struct.state_map .*closed.*:GESCHLOSSEN .*open.*:OFFEN
   structexclude struct.fk.alle:userReadings
   subType    threeStateSensor
   userReadings SwitchTime {(substr((ReadingsTimestamp("hm.fk.st.Schlafzimmer.links","trigger_cnt"," ")),11,2).'.'.(substr((ReadingsTimestamp("hm.fk.st.Schlafzimmer.links","trigger_cnt"," ")),14,2)))},onoff {((ReadingsVal("hm.fk.st.Schlafzimmer.links","state","open") eq "open")? "1":"0")}
   userattr   struct.state struct.state_map structexclude


hm.fk.st.Schlafzimmer.rechts
Internals:
   CHANGED
   DEF        581F89
   IODev      myHmLGW
   LASTInputDev myHmLGW
   MSGCNT     27
   NAME       hm.fk.st.Schlafzimmer.rechts
   NOTIFYDEV  global
   NR         1416
   NTFY_ORDER 50-hm.fk.st.Schlafzimmer.rechts
   STATE      closed
   TYPE       CUL_HM
   lastMsg    No:D7 - t:10 s:581F89 d:120504 06010000
   myHmLGW_MSGCNT 27
   myHmLGW_RAWMSG 05010037D7A610581F8912050406010000
   myHmLGW_RSSI -55
   myHmLGW_TIME 2017-11-21 10:41:19
   peerList   hm.hr.st.Schlafzimmer_WindowRec,hm.wt.st.Schlafzimmer_WindowRec,
   protLastRcv 2017-11-21 10:41:19
   protSnd    23 last_at:2017-11-21 10:41:19
   protState  CMDs_done
   rssi_at_myHmLGW min:-59 avg:-53.18 cnt:27 lst:-55 max:-50
   READINGS:
     2017-11-20 14:59:41   Activity        alive
     2017-11-18 21:55:34   CommandAccepted yes
     2017-11-18 22:12:18   D-firmware      1.0
     2017-11-18 22:12:18   D-serialNr      OEQ0419757
     2017-11-18 21:55:34   PairedTo        0x120504
     2017-11-18 09:09:00   R-cyclicInfoMsg on
     2017-11-18 09:10:49   R-eventDlyTime  0 s
     2017-11-18 21:55:36   R-hm.hr.st.Schlafzimmer_WindowRec-expectAES off
     2017-11-18 21:55:36   R-hm.hr.st.Schlafzimmer_WindowRec-peerNeedsBurst on
     2017-11-18 21:54:44   R-hm.wt.st.Schlafzimmer_WindowRec-expectAES off
     2017-11-18 21:54:44   R-hm.wt.st.Schlafzimmer_WindowRec-peerNeedsBurst on
     2017-11-18 09:10:49   R-msgScPosA     open
     2017-11-18 09:10:49   R-msgScPosB     closed
     2017-11-18 09:09:00   R-pairCentral   0x120504
     2017-11-18 09:09:00   R-sabotageMsg   on
     2017-11-18 09:11:29   R-sign          off
     2017-11-18 09:09:00   R-transmDevTryMax 6
     2017-11-18 09:10:49   R-transmitTryMax 6
     2017-11-18 21:55:34   RegL_00.        02:01 09:01 0A:12 0B:05 0C:04 10:01 14:06 00:00
     2017-11-18 21:55:35   RegL_01.        08:00 20:9C 21:00 30:06 00:00
     2017-11-18 21:55:36   RegL_04.hm.hr.st.Schlafzimmer_WindowRec 01:01 00:00
     2017-11-18 21:55:36   RegL_04.hm.wt.st.Schlafzimmer_WindowRec 01:01 00:00
     2017-11-18 09:11:28   aesCommToDev    ok
     2017-11-18 09:11:28   aesKeyNbr       00
     2017-11-21 10:41:19   alive           yes
     2017-11-21 10:41:19   battery         ok
     2017-11-21 10:41:19   contact         closed (to VCCU)
     2017-11-21 10:41:19   onoff           0
     2017-11-20 14:59:41   peerList        hm.hr.st.Schlafzimmer_WindowRec,hm.wt.st.Schlafzimmer_WindowRec,
     2017-11-21 10:41:19   recentStateType info
     2017-11-21 10:41:19   sabotageError   off
     2017-11-21 10:41:19   state           closed
     2017-11-21 07:01:26   trigger_cnt     46
   helper:
     HM_CMDNR   215
     mId        00C7
     rxType     28
     supp_Pair_Rep 0
     ack:
     expert:
       def        1
       det        1
       raw        1
       tpl        0
     io:
       newChn     +581F89,00,00,00
       nextSend   1511257279.46498
       rxt        2
       vccu       VCCU
       p:
         581F89
         00
         00
         00
       prefIO:
         myHmLGW
     mRssi:
       mNo        D7
       io:
         myHmLGW    -53
     prt:
       bErr       0
       sProc      0
       sleeping   0
       rspWait:
     q:
       qReqConf
       qReqStat
     role:
       chn        1
       dev        1
     rpt:
       IO         myHmLGW
       flg        A
       ts         1511257279.18281
       ack:
         HASH(0x4280f40)
         D78002120504581F8900
     rssi:
       at_myHmLGW:
         avg        -53.1851851851852
         cnt        27
         lst        -55
         max        -50
         min        -59
     tmpl:
Attributes:
   IODev      myHmLGW
   IOgrp      VCCU:myHmLGW
   actCycle   002:50
   actStatus  alive
   alias      fk.st.Schlafzimmer.rechts
   autoReadReg 4_reqStatus
   devStateIcon closed.*:fts_window_2w open.*:fts_window_2w_tilt_r@red
   event-on-change-reading state,onoff,battery
   expert     3_allReg+raw
   firmware   1.0
   icon       md_hm_fensterkontakt@crimson
   model      HM-SEC-SCo
   peerIDs    00000000,5F96FE03,61845303,
   room       CUL_HM
   serialNr   OEQ0419757
   struct.state struct.fk.alle
   struct.state_map .*closed.*:GESCHLOSSEN .*open.*:OFFEN
   subType    threeStateSensor
   userReadings onoff {((ReadingsVal("hm.fk.st.Schlafzimmer.rechts","state","open") eq "open")? "1":"0")}
   userattr   struct.state struct.state_map structexclude
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 21 November 2017, 12:19:07
Hmm... ich bin ein bisschen verwirrt, vielleicht weil ich die Reihenfolge von deinen letzten Massnahme nicht kenne.

hc.st.Schlafzimmer.Urlaub.zuhause ist auf Grund der Condition schon lange inaktiv. Das die Heizung nicht geschaltet wird scheint normal zu sein. Das hc.st.Schlafzimmer.Urlaub.zuhause selbst auf "open window" bleibt könnte auch normal sein, wenn das Modul inaktiv ist. Die Timestamps vonden Readings sind aber komisch: wenn die Condition das Modul verhindert, werden currValue usw. immer noch kalkuliert, aber "state" sollte sich nicht ändern.

hc.st.Schlafzimmer.Arbeit hat auf night geschaltet, was richtig ist. Aber vielleicht weil Du etwas anderes inzwischen geschaltet hast.

Was interessant wäre, wäre diese "list" von hc.st.Schlafzimmer.Arbeit zu sehen, wenn er in eine "falschem" Zustand sich befindet.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: netwalk am 21 November 2017, 13:05:09
Danke, dass du dich meines Problems annimmst.
Ich versuche mal etwas Klarheit zu schaffen:

hc.st.Schlafzimmer.Urlaub.zuhause können wir z.Zt. vernachlässigen, Bedingung trifft nicht zu.
Im folgenden die Chronologie der Abläufe:

23:58:35 hm.fk.st.Schlafzimmer.links wird geöffnet. Zu diesem Zeitpunkt war der Modus von hc.st.Schlafzimmer.Arbeit auf "day". Durch den Fensterkontakt sprang der Heizungsregler auf 5.5°.

00:12:15 wurde der Wandtaster "Nachtmodus" gedrückt, dabei wird an alle Heizkörper der Befehl "set ... night" geschickt, der Regler im Schlafzimmer war im Fenster-Offen-Modus und reagierte deshalb wahrscheinlich nicht (habe ich noch nicht ausgetestet).

02:31:00 soll über hc.st.Schlafzimmer.Arbeit der Heizungsregler abermals "set ... night" erhalten. Wegen des offenen Fensters wurde "delayed" protokolliert.

06:36:32 wurde zusätzlich hm.fk.st.Schlafzimmer.rechts geöffnet.

07:01:00 wurde die Meldung über den verpassten Timer um 02:31:00 protokolliert, seltsamerweise ist 07:01:00 als Zeitpunkt nur in hc.st.Schlafzimmer.Urlaub.zuhause definiert (ist ja eigentlich inaktiv).

07:01:26 wurde hm.fk.st.Schlafzimmer.rechts geschlossen.

07:01:27 wurde hm.fk.st.Schlafzimmer.links geschlossen.

07:02:00 wurde die Meldung über "delay of switching stopped" protokolliert, weil beide Fenster geschlossen sind. Mehr passierte nicht...

08:40:21 habe ich durch "modify" von hc.st.Schlafzimmer.Arbeit die Umschaltung von "open window" auf "night" erzwungen.

Danach wurde erst das "List" von hc.st.Schlafzimmer.Arbeit erstellt...

Ist das halbwegs verständlich?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: netwalk am 22 November 2017, 09:04:14
@amenomade

So, hier ist einmal das fragliche List im Zustand "beide Fenster auf":

Internals:
   COMMAND
   CONDITION  (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
   DEF        struct.Heizung.st.Schlafzimmer 1234|16:31:00|day 5|14:01:00|day 60|07:01:00|day 1234560|02:31:00|night (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
   DEVICE     struct.Heizung.st.Schlafzimmer
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       hc.st.Schlafzimmer.Arbeit
   NR         1450
   Profil 0: Sonntag 02:31:00 night, 07:01:00 day
   Profil 1: Montag 02:31:00 night, 16:31:00 day
   Profil 2: Dienstag 02:31:00 night, 16:31:00 day
   Profil 3: Mittwoch 02:31:00 night, 16:31:00 day
   Profil 4: Donnerstag 02:31:00 night, 16:31:00 day
   Profil 5: Freitag 02:31:00 night, 14:01:00 day
   Profil 6: Samstag 02:31:00 night, 07:01:00 day
   STATE      open window
   STILLDONETIME 0
   TYPE       Heating_Control
   VERZOEGRUNG 1
   VERZOEGRUNG_IDX 3
   READINGS:
     2017-11-21 16:31:00   currValue       day
     2017-11-21 16:31:00   nextUpdate      2017-11-22 02:31:00
     2017-11-21 16:31:00   nextValue       night
     2017-11-22 08:47:00   state           open window
   SWITCHINGTIMES:
     1234|16:31:00|day
     5|14:01:00|day
     60|07:01:00|day
     1234560|02:31:00|night
   TIMER:
     hc.st.Schlafzimmer.Arbeit_1:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   1
       NAME       hc.st.Schlafzimmer.Arbeit_1
     hc.st.Schlafzimmer.Arbeit_2:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   2
       NAME       hc.st.Schlafzimmer.Arbeit_2
     hc.st.Schlafzimmer.Arbeit_3:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   3
       NAME       hc.st.Schlafzimmer.Arbeit_3
     hc.st.Schlafzimmer.Arbeit_SetTimerOfDay:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   SetTimerOfDay
       NAME       hc.st.Schlafzimmer.Arbeit_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     hc.st.Schlafzimmer.Arbeit_delayed:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   delayed
       NAME       hc.st.Schlafzimmer.Arbeit_delayed
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         02:31:00   night
         07:01:00   day
       1:
         02:31:00   night
         16:31:00   day
       2:
         02:31:00   night
         16:31:00   day
       3:
         02:31:00   night
         16:31:00   day
       4:
         02:31:00   night
         16:31:00   day
       5:
         02:31:00   night
         14:01:00   day
       6:
         02:31:00   night
         07:01:00   day
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1511364660
       PARA       day
       TIME       16:31:00
       TAGE:
         1
         2
         3
         4
     2:
       EPOCH      1511355660
       PARA       day
       TIME       14:01:00
       TAGE:
         5
     3:
       EPOCH      1511330460
       PARA       day
       TIME       07:01:00
       TAGE:
         0
         6
     4:
       EPOCH      1511314260
       PARA       night
       TIME       02:31:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   profile_IDX:
     0:
       02:31:00   4
       07:01:00   3
     1:
       02:31:00   4
       16:31:00   1
     2:
       02:31:00   4
       16:31:00   1
     3:
       02:31:00   4
       16:31:00   1
     4:
       02:31:00   4
       16:31:00   1
     5:
       02:31:00   4
       14:01:00   2
     6:
       02:31:00   4
       07:01:00   3
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set $NAME controlMode $EVENT
   room       Heizung
   switchInThePast 1
   windowSensor hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts


Dann wurden beide Fenster geschlossen:
2017.11.22 08:51:00 3: [hc.st.Schlafzimmer.Urlaub.zuhause] delay of switching struct.Heizung.st.Schlafzimmer stopped.
2017.11.22 08:51:00 3: [hc.st.Schlafzimmer.Arbeit] delay of switching struct.Heizung.st.Schlafzimmer stopped.


und hier das List nach Schließen beider Fenster:
Internals:
   COMMAND
   CONDITION  (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
   DEF        struct.Heizung.st.Schlafzimmer 1234|16:31:00|day 5|14:01:00|day 60|07:01:00|day 1234560|02:31:00|night (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
   DEVICE     struct.Heizung.st.Schlafzimmer
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       hc.st.Schlafzimmer.Arbeit
   NR         1450
   Profil 0: Sonntag 02:31:00 night, 07:01:00 day
   Profil 1: Montag 02:31:00 night, 16:31:00 day
   Profil 2: Dienstag 02:31:00 night, 16:31:00 day
   Profil 3: Mittwoch 02:31:00 night, 16:31:00 day
   Profil 4: Donnerstag 02:31:00 night, 16:31:00 day
   Profil 5: Freitag 02:31:00 night, 14:01:00 day
   Profil 6: Samstag 02:31:00 night, 07:01:00 day
   STATE      open window
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2017-11-22 08:51:00   currValue       night
     2017-11-22 08:51:00   nextUpdate      2017-11-22 16:31:00
     2017-11-22 08:51:00   nextValue       day
     2017-11-22 08:50:00   state           open window
   SWITCHINGTIMES:
     1234|16:31:00|day
     5|14:01:00|day
     60|07:01:00|day
     1234560|02:31:00|night
   TIMER:
     hc.st.Schlafzimmer.Arbeit_1:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   1
       NAME       hc.st.Schlafzimmer.Arbeit_1
     hc.st.Schlafzimmer.Arbeit_2:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   2
       NAME       hc.st.Schlafzimmer.Arbeit_2
     hc.st.Schlafzimmer.Arbeit_3:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   3
       NAME       hc.st.Schlafzimmer.Arbeit_3
     hc.st.Schlafzimmer.Arbeit_SetTimerOfDay:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   SetTimerOfDay
       NAME       hc.st.Schlafzimmer.Arbeit_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     hc.st.Schlafzimmer.Arbeit_delayed:
       HASH       hc.st.Schlafzimmer.Arbeit
       MODIFIER   delayed
       NAME       hc.st.Schlafzimmer.Arbeit_delayed
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         02:31:00   night
         07:01:00   day
       1:
         02:31:00   night
         16:31:00   day
       2:
         02:31:00   night
         16:31:00   day
       3:
         02:31:00   night
         16:31:00   day
       4:
         02:31:00   night
         16:31:00   day
       5:
         02:31:00   night
         14:01:00   day
       6:
         02:31:00   night
         07:01:00   day
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1511364660
       PARA       day
       TIME       16:31:00
       TAGE:
         1
         2
         3
         4
     2:
       EPOCH      1511355660
       PARA       day
       TIME       14:01:00
       TAGE:
         5
     3:
       EPOCH      1511330460
       PARA       day
       TIME       07:01:00
       TAGE:
         0
         6
     4:
       EPOCH      1511314260
       PARA       night
       TIME       02:31:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   profile_IDX:
     0:
       02:31:00   4
       07:01:00   3
     1:
       02:31:00   4
       16:31:00   1
     2:
       02:31:00   4
       16:31:00   1
     3:
       02:31:00   4
       16:31:00   1
     4:
       02:31:00   4
       16:31:00   1
     5:
       02:31:00   4
       14:01:00   2
     6:
       02:31:00   4
       07:01:00   3
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set $NAME controlMode $EVENT
   room       Heizung
   switchInThePast 1
   windowSensor hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts


Zur Zeit steht im Frontend:

DeviceOverview
hc.st.Schlafzimmer.Arbeit                                         open window


obwohl im List currValue auf "night" steht.
Der Heizkörper hat immer noch die "day"-Temperatur, es wurde kein "set ... night" abgesetzt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 23 November 2017, 23:30:24
So weit ich das Modul verstanden habe, setzt er immer noch alle Timer, und ändert die unabhängig von der Kondition. Nur wenn diese Kondition nicht wahr ist wenn die Schaltzeit erreicht ist, wird der Befehl nicht ausgeführt.

Die Fenstersensoren verzögern die Schalttimer bis die Fenster wieder "zu" sind. Dann sollten alle verpasste Timer schalten.

Jetzt fehlen mir aber immer noch Informationen, um das Verhalten zu verstehen. Es wäre hilfreich, die gesamte Log von allen relevanten Events und deren Reihenfolge zu sehen. Kannst Du evtl. eine eigene Filelog mit allen Devices erstellen?

Im Moment kann ich mir nur vorstellen, dass die Timers nicht diejenige sind, die wir uns vorstellen. Dafür sollte man andere Meldung in der Log (mit verbose 5) sehen, wie z.B. "setTimer - timer seems to be active today:", oder "past timer on DEVICE at  <time> activated", oder "result of condition". Die wären auch wichtig, um das ganze zu verstehen.

Ich habe gestern und heute wenig Zeit gehabt, aber ich werde versuchen das ganze zu simulieren, um selbst zu sehen. Deine Logs wären aber schon hilfreich.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 24 November 2017, 00:43:40
Hier eine Simulation bei mir:
Zeitprofil: 00:08 day 00:10:00 night, 00:12:00 day, 00:14:00 night, 00:16:00 day, 00:18:00 night, 00:20:00 day, 00:22:00 night, 00:24:00 day, 00:26:00 night
Am Anfang sind die Fenster zu, sc.Heizung.Auto ist "on", und beide sc.Urlaub.* sind "off" (=> Condition = wahr)
Log:
2017.11.24 00:08:00 4: [hc.st.Schlafzimmer.Arbeit] time=00:08/1511478480 delay=0, nextDelay=60, nextRetry=1511478540
2017.11.24 00:08:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.24 00:08:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.24 00:08:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.24 00:08:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'closed'
2017.11.24 00:08:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.rechts' Reading/Attribute 'state' is 'closed'
2017.11.24 00:08:00 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:0,1,2,3,4,5,6
2017.11.24 00:08:00 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.24 00:08:00 5: [hc.st.Schlafzimmer.Arbeit] result of condition:1
2017.11.24 00:08:00 4: [hc.st.Schlafzimmer.Arbeit] Update   - timer seems to be active today: 0123456|00:08|day
2017.11.24 00:08:00 4: [hc.st.Schlafzimmer.Arbeit] aktParam: newParam:day - is  not disabled
2017.11.24 00:08:00 4: [hc.st.Schlafzimmer.Arbeit] command: 'set $NAME controlMode $EVENT' executed with %EVENT=>day,%NAME=>struct.Heizung.st.Schlafzimmer
2017.11.24 00:10:00 4: [hc.st.Schlafzimmer.Arbeit] time=00:10/1511478600 delay=0, nextDelay=60, nextRetry=1511478660
2017.11.24 00:10:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.24 00:10:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.24 00:10:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.24 00:10:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'open'
2017.11.24 00:10:00 3: [hc.st.Schlafzimmer.Arbeit] switch of struct.Heizung.st.Schlafzimmer delayed - sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'open'
2017.11.24 00:10:00 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_2
2017.11.24 00:10:00 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_2 2017-11-24 00:11:00
2017.11.24 00:11:00 4: [hc.st.Schlafzimmer.Arbeit] time=00:10/1511478600 delay=60, nextDelay=120, nextRetry=1511478720
2017.11.24 00:11:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.24 00:11:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.24 00:11:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.24 00:11:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'open'
2017.11.24 00:11:00 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_2
2017.11.24 00:11:00 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_2 2017-11-24 00:12:00
2017.11.24 00:12:00 4: [hc.st.Schlafzimmer.Arbeit] time=00:12/1511478720 delay=0, nextDelay=60, nextRetry=1511478780
2017.11.24 00:12:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.24 00:12:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.24 00:12:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.24 00:12:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'open'
2017.11.24 00:12:00 3: [hc.st.Schlafzimmer.Arbeit] timer at 00:10 skiped by new timer at 00:12
2017.11.24 00:12:00 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_2
2017.11.24 00:12:00 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_3
2017.11.24 00:12:00 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_3 2017-11-24 00:13:00
2017.11.24 00:13:00 4: [hc.st.Schlafzimmer.Arbeit] time=00:12/1511478720 delay=60, nextDelay=120, nextRetry=1511478840
2017.11.24 00:13:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.24 00:13:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.24 00:13:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.24 00:13:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'open'
2017.11.24 00:13:00 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_3
2017.11.24 00:13:00 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_3 2017-11-24 00:14:00
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] time=00:12/1511478720 delay=119, nextDelay=180, nextRetry=1511478900
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.24 00:14:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'closed'
2017.11.24 00:14:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.rechts' Reading/Attribute 'state' is 'closed'
2017.11.24 00:14:00 3: [hc.st.Schlafzimmer.Arbeit] delay of switching struct.Heizung.st.Schlafzimmer stopped.
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:0,1,2,3,4,5,6
2017.11.24 00:14:00 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.24 00:14:00 5: [hc.st.Schlafzimmer.Arbeit] result of condition:1
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] Update   - timer seems to be active today: 0123456|00:12|day
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] aktParam: newParam:day - is  not disabled
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] command: 'set $NAME controlMode $EVENT' executed with %NAME=>struct.Heizung.st.Schlafzimmer,%EVENT=>day
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] time=00:14/1511478840 delay=0, nextDelay=60, nextRetry=1511478900
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.24 00:14:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'closed'
2017.11.24 00:14:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.rechts' Reading/Attribute 'state' is 'closed'
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:0,1,2,3,4,5,6
2017.11.24 00:14:00 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.24 00:14:00 5: [hc.st.Schlafzimmer.Arbeit] result of condition:1
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] Update   - timer seems to be active today: 0123456|00:14|night
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] aktParam: newParam:night - is  not disabled
2017.11.24 00:14:00 4: [hc.st.Schlafzimmer.Arbeit] command: 'set $NAME controlMode $EVENT' executed with %NAME=>struct.Heizung.st.Schlafzimmer,%EVENT=>night


Fazit: es funktioniert wie erwartet:

- um 00:08 => set controlMode day
>> hier werden die Fenster geöffnet. Keine Änderung im HC
- um 00:10 springt er auf "open window" => Verzögerung
- um 00:11 prüft er die Verzögerung. Da die Fenster immer noch auf sind => weitere Verzögerung
- um 00:12 neue Schaltzeit => timer skiped by new timer. Fenster immer noch auf => Verzögerung
- um 00:13 prüft er die Verzögerung. Da die Fenster immer noch auf sind => weitere Verzügerung
>> hier werden die Fenster geschlossen
- um 00:14 delay of switching stopped => Verzögerte Befehl von 00:12 wird ausgeführt => er springt auf day. Dann wird der Befehl von 00:14 ausgeführt => er spring auf night
- um 00:16 day
usw

Wie gesagt: mir fehlen bei dir diese Log Auszüge mit allen Meldungen.

Versionen ("version" im Kommandofeld eingeben):
fhem.pl               15294 2017-10-20 06:40:24Z rudolfkoenig
98_Heating_Control.pm 13374 2017-02-09 20:00:35Z orti-otto
98_WeekdayTimer.pm    13374 2017-02-09 20:00:35Z orti-otto


Ich muss aber noch was anderes testen, da beim Lesen des Moduls mir etwas aufgefallen ist. Aber nicht heute.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: netwalk am 24 November 2017, 13:17:07
Fhem wird von mir regelmäßig aktualisiert. Hier die Versionen:
fhem.pl               15466 2017-11-20 22:22:19Z rudolfkoenig
98_Heating_Control.pm 13374 2017-02-09 20:00:35Z orti-otto
98_WeekdayTimer.pm    13374 2017-02-09 20:00:35Z orti-otto


Gestern nachmittag habe ich versuchsweise den Schaltzeitpunkt von 02:31:00 auf 21:31:00 vorverlegt. In den Readings wurden die Werte für "nextUpdate" und "nextValue" korrekt gesetzt, zum angebenen Zeitpunkt passierte nichts. Kein Eintrag im Log. In der Zeit zwischen Änderung und geplantem Schaltzeitpunkt wurde kein Fenster geöffnet.

Ich werde jetzt den verbose-Level raufsetzen und am WE einige Tests vornehmen und die Logs präsentieren.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: netwalk am 27 November 2017, 08:52:54
Am WE habe ich versuchsweise die vorgesehene Schaltzeit von 02:31:00 auf 21:31:00 vorgezogen, mit dem Ergebnis, dass es seitdem funktioniert. Am Tag der Änderung funktionierte es noch nicht, jedoch ab dem nächsten Tag, ohne weitere Änderung, problemlos. Verstehe ich nicht.

Hier die entsprechenden Logs:

2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] time=21:31:00/1511728260 delay=0, nextDelay=60, nextRetry=1511728320
2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.26 21:31:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'closed'
2017.11.26 21:31:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.rechts' Reading/Attribute 'state' is 'closed'
2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:0,1,2,3,4,5,6
2017.11.26 21:31:00 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.26 21:31:00 5: [hc.st.Schlafzimmer.Arbeit] result of condition:1
2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] Update   - timer seems to be active today: 0123456|21:31:00|night
2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] device type heating recognized, setModifier:desired-temp
2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] aktParam:19.0 newParam:night - is  not disabled
2017.11.26 21:31:00 4: [hc.st.Schlafzimmer.Arbeit] command: 'set $NAME controlMode $EVENT' executed with %NAME=>struct.Heizung.st.Schlafzimmer,%EVENT=>night

...

2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_1
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_4
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_2
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_3
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] 07:29:50 17:06:54 Montag
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] 07:01:00 day, 21:31:00 night (Profil 0: Sonntag)
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] 16:01:00 day, 21:31:00 night (Profil 1: Montag)
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] 16:01:00 day, 21:31:00 night (Profil 2: Dienstag)
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] 16:01:00 day, 21:31:00 night (Profil 3: Mittwoch)
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] 16:01:00 day, 21:31:00 night (Profil 4: Donnerstag)
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] 13:31:00 day, 21:31:00 night (Profil 5: Freitag)
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] 07:01:00 day, 21:31:00 night (Profil 6: Samstag)
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] device type heating recognized, setModifier:desired-temp
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] Heating recognized - switch in the past activated
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:1,2,3,4
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(1,2,3,4);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] result of condition:1
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] setTimer - timer seems to be active today: 1234|16:01:00|day
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_1 2017-11-27 16:01:00
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:5
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(5);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] result of condition:
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] setTimer - timer seems to be NOT active today: 5|13:31:00|day (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_2 2017-11-27 13:31:00
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:0,6
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(0,6);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] result of condition:
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] setTimer - timer seems to be NOT active today: 06|07:01:00|day (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off")
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_3 2017-11-27 07:01:00
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:0,1,2,3,4,5,6
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(0,1,2,3,4,5,6);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] result of condition:1
2017.11.27 00:00:05 4: [hc.st.Schlafzimmer.Arbeit] setTimer - timer seems to be active today: 0123456|21:31:00|night
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_4 2017-11-27 21:31:00
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] removing Timer: hc.st.Schlafzimmer.Arbeit_SetTimerOfDay
2017.11.27 00:00:05 5: [hc.st.Schlafzimmer.Arbeit] setting  Timer: hc.st.Schlafzimmer.Arbeit_SetTimerOfDay 2017-11-28 00:00:05

...
2017.11.27 07:01:00 4: [hc.st.Schlafzimmer.Arbeit] time=07:01:00/1511762460 delay=0, nextDelay=60, nextRetry=1511762520
2017.11.27 07:01:00 4: [hc.st.Schlafzimmer.Arbeit] delayedExecutionCond:0
2017.11.27 07:01:00 4: [hc.st.Schlafzimmer.Arbeit] result of delayedExecutionCond:0
2017.11.27 07:01:00 4: [hc.st.Schlafzimmer.Arbeit] list of window sensors found: 'hm.fk.st.Schlafzimmer.links hm.fk.st.Schlafzimmer.rechts hc.st.Schlafzimmer.Arbeit'
2017.11.27 07:01:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.links' Reading/Attribute 'state' is 'closed'
2017.11.27 07:01:00 5: [hc.st.Schlafzimmer.Arbeit] sensor 'hm.fk.st.Schlafzimmer.rechts' Reading/Attribute 'state' is 'closed'
2017.11.27 07:01:00 4: [hc.st.Schlafzimmer.Arbeit] condition:(ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") - Tage:0,6
2017.11.27 07:01:00 5: [hc.st.Schlafzimmer.Arbeit] condition: {my $days={};;map{$days->{$_}=1}(0,6);;;;( (ReadingsVal("sc.Heizung.Auto", "state", "") eq "on" and ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "off" and ReadingsVal("sc.Urlaub.auswaerts", "state", "") eq "off") && (defined $days->{$wday}))}
2017.11.27 07:01:00 5: [hc.st.Schlafzimmer.Arbeit] result of condition:


Als nächstes werde ich das Verhalten mit verschiedenen Zuständen der Fensterkontakte austesten und danach den Zeitschaltpunkt wieder auf nach Mitternacht setzen.


Wenn ich das richtig verstanden habe, ist das Modul WeekdayTimer ähnlich aufgebaut wie Heating_Control. Damit habe ich ebenfalls am WE experimentiert und ein ähnliches Problem feststellen müssen. Ich habe für jeden Rolladen im Erdgeschoss versuchsweise WeekdayTimer angelegt.
Z.B.:

define wdt.duo.eg.Badezimmer.Arbeit dm.duo.eg.Badezimmer 1234560|{sunset_abs("Civil",ReadingsVal("dm.duo.eg.Badezimmer","state",0)*60)}|down 12345|06:00|up 60|09:00|up (ReadingsVal("sc.Urlaub.zuhause","state","") eq "off") or (ReadingsVal("sc.Arbeit.Micha","state","") eq "on")
und:
define wdt.duo.eg.Badezimmer.Urlaub.zuhause dm.duo.eg.Badezimmer 1234560|{sunset_abs("Civil",ReadingsVal("dm.duo.eg.Badezimmer","state",0)*60)}|down 1234560|09:00|up (ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "on" or ReadingsVal("sc.Krank.zuhause", "state", "") eq "on")

Hintergrund ist, dass ich beim Öffnen des Badezimmerfensters das Rollo immer hochfahren (egal welcher Zustand vorlag) und nach dem Schließen in den laut Timer vorgesehenen Zustand ggf. herunterfahren lasse.
define di.fk.duo.eg.Badezimmer DOIF ([hm.fk.eg.Badezimmer:onoff] eq "1" ) (set duo.eg.Badezimmer manualMode on) (set duo.eg.Badezimmer up) DOELSEIF ([hm.fk.eg.Badezimmer:onoff] eq "0") (set duo.eg.Badezimmer manualMode off) (set duo.eg.Badezimmer [dm.duo.eg.Badezimmer:setpoint]) DOELSE
attr di.fk.duo.eg.Badezimmer wait 0,10:360,0


Dabei hat sich gestern das Problem ergeben, dass abends (ca. 20:00 Uhr )nach dem Duschen beim Öffnen des Fensters das Rollo erwartungsgemäß hochfuhr, nach Schließen des Fensters jedoch nicht herunterfuhr, obwohl die Schaltzeit (ca. 18:07 Uhr) längst vorbei war. Das verwendete Reading im Dummy dm.duo.eg.Badezimmer wurde nicht neu gesetzt.

Hier das List des WeekdayTimers von gestern abend:
Internals:
   CFGFN
   COMMAND
   CONDITION  (ReadingsVal("sc.Urlaub.zuhause","state","") eq "off") or (ReadingsVal("sc.Arbeit.Micha","state","") eq "on")
   DEF        dm.duo.eg.Badezimmer 1234560|{sunset_abs("Civil",ReadingsVal("dm.duo.eg.Badezimmer","state",0)*60)}|down 12345|06:00|up 60|09:00|up (ReadingsVal("sc.Urlaub.zuhause","state","") eq "off") or (ReadingsVal("sc.Arbeit.Micha","state","") eq "on")
   DEVICE     dm.duo.eg.Badezimmer
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       wdt.duo.eg.Badezimmer.Arbeit
   NR         16855
   Profil 0: Sonntag 09:00:00 up, 18:07:39 down
   Profil 1: Montag 06:00:00 up, 18:07:39 down
   Profil 2: Dienstag 06:00:00 up, 18:07:39 down
   Profil 3: Mittwoch 06:00:00 up, 18:07:39 down
   Profil 4: Donnerstag 06:00:00 up, 18:07:39 down
   Profil 5: Freitag 06:00:00 up, 18:07:39 down
   Profil 6: Samstag 09:00:00 up, 18:07:39 down
   STATE      up
   STILLDONETIME 0
   TYPE       WeekdayTimer
   READINGS:
     2017-11-26 09:00:00   currValue       up
     2017-11-24 19:49:36   disabled        0
     2017-11-26 09:00:00   nextUpdate      2017-11-26 18:07:39
     2017-11-26 09:00:00   nextValue       down
     2017-11-26 09:00:00   state           up
   SWITCHINGTIMES:
     1234560|{sunset_abs("Civil",ReadingsVal("dm.duo.eg.Badezimmer","state",0)*60)}|down
     12345|06:00|up
     60|09:00|up
   TIMER:
     wdt.duo.eg.Badezimmer.Arbeit_1:
       HASH       wdt.duo.eg.Badezimmer.Arbeit
       MODIFIER   1
       NAME       wdt.duo.eg.Badezimmer.Arbeit_1
       immerSchalten 1
     wdt.duo.eg.Badezimmer.Arbeit_2:
       HASH       wdt.duo.eg.Badezimmer.Arbeit
       MODIFIER   2
       NAME       wdt.duo.eg.Badezimmer.Arbeit_2
     wdt.duo.eg.Badezimmer.Arbeit_3:
       HASH       wdt.duo.eg.Badezimmer.Arbeit
       MODIFIER   3
       NAME       wdt.duo.eg.Badezimmer.Arbeit_3
     wdt.duo.eg.Badezimmer.Arbeit_SetTimerOfDay:
       HASH       wdt.duo.eg.Badezimmer.Arbeit
       MODIFIER   SetTimerOfDay
       NAME       wdt.duo.eg.Badezimmer.Arbeit_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     wdt.duo.eg.Badezimmer.Arbeit_delayed:
       HASH       wdt.duo.eg.Badezimmer.Arbeit
       MODIFIER   delayed
       NAME       wdt.duo.eg.Badezimmer.Arbeit_delayed
     wdt.duo.eg.Badezimmer_1:
       HASH       wdt.duo.eg.Badezimmer.Arbeit
       MODIFIER   1
       NAME       wdt.duo.eg.Badezimmer_1
     wdt.duo.eg.Badezimmer_SetTimerOfDay:
       HASH       wdt.duo.eg.Badezimmer.Arbeit
       MODIFIER   SetTimerOfDay
       NAME       wdt.duo.eg.Badezimmer_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         09:00:00   up
         18:07:39   down
       1:
         06:00:00   up
         18:07:39   down
       2:
         06:00:00   up
         18:07:39   down
       3:
         06:00:00   up
         18:07:39   down
       4:
         06:00:00   up
         18:07:39   down
       5:
         06:00:00   up
         18:07:39   down
       6:
         09:00:00   up
         18:07:39   down
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1511716059
       PARA       down
       TIME       {sunset_abs("Civil",ReadingsVal("dm.duo.eg.Badezimmer","state",0)*60)}
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1511672400
       PARA       up
       TIME       06:00
       TAGE:
         1
         2
         3
         4
         5
     3:
       EPOCH      1511683200
       PARA       up
       TIME       09:00
       TAGE:
         0
         6
   profile_IDX:
     0:
       09:00:00   3
       18:07:39   1
     1:
       06:00:00   2
       18:07:39   1
     2:
       06:00:00   2
       18:07:39   1
     3:
       06:00:00   2
       18:07:39   1
     4:
       06:00:00   2
       18:07:39   1
     5:
       06:00:00   2
       18:07:39   1
     6:
       09:00:00   3
       18:07:39   1
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate setreading $NAME setpoint $EVENT
   disable    0
   room       Rollladen
   switchInThePast 1


Auch hier wird offensichtlich nicht geschaltet, obwohl nextUpdate und nextValue korrekt erscheinen.

Ich werde auch hier den verbose-Level auf 5 setzen und weiter beobachten.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Andre0909 am 03 Dezember 2017, 16:30:29
Moin, brauche mal eure syntax-Hilfe. Nutze bisher den WD-Timer erfolgreiche für simple on oder off-Befehle. Nun brauche ich aber die Ausführung des TextTo-Speech Befehls: set Tablet ttsMsg Hier kommt mein Text.

Ich weiss nun nicht wie ich das einbinden soll weil:

define WD_Bahn_Morgens WeekdayTimer Tablet 8|07:08|ttsMsg lala lala lala (Value("Automatikmodus") eq "Standard")

wird ja nicht funktionieren. Wie setze ich das ttsMsg lala lala lala um? DANKE

Hat hier noch jmd ein Tipp für mich?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 07 Dezember 2017, 13:52:16
Hallo,

Ich möchte mit einem HeatingControl 2 Arten von Thermostaten schalten (MAX + HM). Der eine braucht desired-temp, der andere desiredTemperature.
Gibt es dazu eine Möglichkeit, das in einem HC-Device zu vereinen ohne es explizit hinten als 2 Befehle anzugeben ?

So gehts nicht zumindest fuer das MAX-Device :
HK_HM_WOHNEN_._Clima,HK_WC_EG Mo-So|07:30|22 Mo-So|22:00|15 {if (Value("DS_Heizen") eq "on" )) {fhem("set $NAME desired-temp $EVENT")}}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ogruetzmann am 15 Dezember 2017, 08:57:22
Hallo,

Ich habe ein Problem mit Heating_Control. Ich benutze es zur Heizungssteuerung in drei Räumen (MAX! mit dem CUL), zwei davon mit Fenstersensoren (auch MAX!). Die Abwesenheitssteuerung habe ich über Homemode realisiert, das bei einer Änderung den Befehl {Heating_Control_SetAllTemps()} absetzt, die Heating_Controls schalten dann durch das Auslesen der Location Variable in Homemode.

Das ganze funktioniert auch in zwei Räumen immer, nur im Wohnzimmer verschluckt sich Heating_Control öfter am Morgen, wenn die Heizung wieder hochgeregelt werden soll. Der State bleibt dann auf Eco stehen, nextUpdate zeigt weiter die Zeit, zu der die Schaltung hätte stattfinden sollen.

Folgenden list habe ich heute um kurz nach 8 Uhr gezogen, also gut zwei Stunden nach dem eigentlichen Schaltzeitpunkt. Fenster waren keine geöffnet, ein {Heating_Control_SetAllTemps()} löst das Problem in diesen Fällen.
Internals:
   COMMAND   
   CONDITION  (ReadingsVal ("Wohnung", "location", 0) eq "home")
   DEF        hz_living 01:00|eco 06:00|comfort (ReadingsVal ("Wohnung", "location", 0) eq "home")
   DEVICE     hz_living
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       hc_living
   NR         35
   Profil 0: Sonntag 01:00:00 eco, 06:00:00 comfort
   Profil 1: Montag 01:00:00 eco, 06:00:00 comfort
   Profil 2: Dienstag 01:00:00 eco, 06:00:00 comfort
   Profil 3: Mittwoch 01:00:00 eco, 06:00:00 comfort
   Profil 4: Donnerstag 01:00:00 eco, 06:00:00 comfort
   Profil 5: Freitag 01:00:00 eco, 06:00:00 comfort
   Profil 6: Samstag 01:00:00 eco, 06:00:00 comfort
   STATE      eco
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2017-12-15 01:00:00   currValue       eco
     2017-12-08 02:15:07   disabled        0
     2017-12-15 01:00:00   nextUpdate      2017-12-15 06:00:00
     2017-12-15 01:00:00   nextValue       comfort
     2017-12-15 01:00:00   state           eco
   SWITCHINGTIMES:
     01:00|eco
     06:00|comfort
   TIMER:
     hc_living_1:
       HASH       hc_living
       MODIFIER   1
       NAME       hc_living_1
     hc_living_2:
       HASH       hc_living
       MODIFIER   2
       NAME       hc_living_2
       immerSchalten 1
     hc_living_SetTimerOfDay:
       HASH       hc_living
       MODIFIER   SetTimerOfDay
       NAME       hc_living_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     hc_living_delayed:
       HASH       hc_living
       MODIFIER   delayed
       NAME       hc_living_delayed
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         01:00:00   eco
         06:00:00   comfort
       1:
         01:00:00   eco
         06:00:00   comfort
       2:
         01:00:00   eco
         06:00:00   comfort
       3:
         01:00:00   eco
         06:00:00   comfort
       4:
         01:00:00   eco
         06:00:00   comfort
       5:
         01:00:00   eco
         06:00:00   comfort
       6:
         01:00:00   eco
         06:00:00   comfort
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1513296000
       PARA       eco
       TIME       01:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1513314000
       PARA       comfort
       TIME       06:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   profile_IDX:
     0:
       01:00:00   1
       06:00:00   2
     1:
       01:00:00   1
       06:00:00   2
     2:
       01:00:00   1
       06:00:00   2
     3:
       01:00:00   1
       06:00:00   2
     4:
       01:00:00   1
       06:00:00   2
     5:
       01:00:00   1
       06:00:00   2
     6:
       01:00:00   1
       06:00:00   2
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set $NAME desiredTemperature $EVENT
   disable    0
   room       13_Steuerung
   switchInThePast 1
   windowSensor fs_living_balcony fs_living_window


Das ganze funktionert in etwa 60-80% der Fälle reibungslos, nur ein bis zwei Mal in der Woche wird morgens nicht umgeschaltet (abends hatte ich das Problem bisher nie), immer im Wohnzimmer, die anderen Räume funktionieren immer. An der Abwesenheitsschaltung kann es nicht liegen, der Status stimmt grundsätzlich.

Die Unterschiede zu den anderen Räumen: Der Schaltpunkt zum Herunterregeln ist um 1 Uhr (bei den anderen: 0 Uhr) und die Steuerung läuft über ein Structure, um ein Wandthermostat und ein Heizthermostat zu regeln, aber daran sollte es eigentlich nicht liegen.

Bin da gerade geringfügig am Verzweifeln :)

Oliver.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 15 Dezember 2017, 13:22:51
Zur Analyse würde ich eine Filelog kreieren, die alle Ereignisse von involvierten Geräte zusammenfasst: hc_living, hz_living, Wohnung, fs_living_balcony und fs_living_window.
Damit wirst Du sehen, was sich ändert und wann.

ZitatAn der Abwesenheitsschaltung kann es nicht liegen, der Status stimmt grundsätzlich.
Sicher?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ogruetzmann am 15 Dezember 2017, 13:51:23
Zitat von: amenomade am 15 Dezember 2017, 13:22:51
Sicher?
Jupp, der Status für die Absent-HCs ist jeweils "Inactive", der für die Present-HCs zeigt den jeweils aktuellen Status (Eco oder Comfort, in dem Fall dann fälschlicherweise Eco).

Da muss ich mich dann mal mit Filelog beschäftigen.

Ist halt vor allem spannend, weil alle Heating_Controls quasi identisch sind. Hab einen erstellt und dann einfach kopiert und angepasst. Zwei davon funtktionieren einwandfrei, einer nur teilweise. Wenn es wenigstens immer auftreten würde, wäre die Analyse auch einfacher...  :)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Andre0909 am 07 Januar 2018, 16:21:10
Zitat von: Andre0909 am 03 Dezember 2017, 16:30:29
Moin, brauche mal eure syntax-Hilfe. Nutze bisher den WD-Timer erfolgreiche für simple on oder off-Befehle. Nun brauche ich aber die Ausführung des TextTo-Speech Befehls: set Tablet ttsMsg Hier kommt mein Text.

Ich weiss nun nicht wie ich das einbinden soll weil:

define WD_Bahn_Morgens WeekdayTimer Tablet 8|07:08|ttsMsg lala lala lala (Value("Automatikmodus") eq "Standard")

wird ja nicht funktionieren. Wie setze ich das ttsMsg lala lala lala um? DANKE



Hat hier noch jmd ein Tipp für mich?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 08 Januar 2018, 15:29:12
define WD_Bahn_Morgens WeekdayTimer Tablet 8|07:08|msg  {fhem ("set Tablet ttsMsg lalalaal") if (Value("Automatikmodus") eq "Standard");}sollte gehen (nicht getestet)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ogruetzmann am 17 Januar 2018, 02:23:32
Kurzes Update: Es scheint ein Problem mit der Schaltzeit zu sein. Hab die Zeit zum Herunterregeln zum Test mal, wie die anderen Thermostate, auf 00:00 gesetzt, seitdem hatte ich keine Probleme mehr. Sobald ich die Zeit finde, werde ich mal mit verschiedenen Zeiteinstellungen experimentieren.

Leider finde ich mich mit Filelog nicht wirklich zurecht, sonst würde ich da mit Logs arbeiten (würde mich über Links oder Erklärungen freuen - nach Studium der Dokumentation zu filelog hab ich ein großes "Bahnhof" auf der Stirn.... Bin halt so'n Hobby-C++'ler...)
Zitat von: ogruetzmann am 15 Dezember 2017, 08:57:22
Hallo,

Ich habe ein Problem mit Heating_Control. Ich benutze es zur Heizungssteuerung in drei Räumen (MAX! mit dem CUL), zwei davon mit Fenstersensoren (auch MAX!). Die Abwesenheitssteuerung habe ich über Homemode realisiert, das bei einer Änderung den Befehl {Heating_Control_SetAllTemps()} absetzt, die Heating_Controls schalten dann durch das Auslesen der Location Variable in Homemode.

Das ganze funktioniert auch in zwei Räumen immer, nur im Wohnzimmer verschluckt sich Heating_Control öfter am Morgen, wenn die Heizung wieder hochgeregelt werden soll. Der State bleibt dann auf Eco stehen, nextUpdate zeigt weiter die Zeit, zu der die Schaltung hätte stattfinden sollen.

Folgenden list habe ich heute um kurz nach 8 Uhr gezogen, also gut zwei Stunden nach dem eigentlichen Schaltzeitpunkt. Fenster waren keine geöffnet, ein {Heating_Control_SetAllTemps()} löst das Problem in diesen Fällen.
Internals:
   COMMAND   
   CONDITION  (ReadingsVal ("Wohnung", "location", 0) eq "home")
   DEF        hz_living 01:00|eco 06:00|comfort (ReadingsVal ("Wohnung", "location", 0) eq "home")
   DEVICE     hz_living
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       hc_living
   NR         35
   Profil 0: Sonntag 01:00:00 eco, 06:00:00 comfort
   Profil 1: Montag 01:00:00 eco, 06:00:00 comfort
   Profil 2: Dienstag 01:00:00 eco, 06:00:00 comfort
   Profil 3: Mittwoch 01:00:00 eco, 06:00:00 comfort
   Profil 4: Donnerstag 01:00:00 eco, 06:00:00 comfort
   Profil 5: Freitag 01:00:00 eco, 06:00:00 comfort
   Profil 6: Samstag 01:00:00 eco, 06:00:00 comfort
   STATE      eco
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2017-12-15 01:00:00   currValue       eco
     2017-12-08 02:15:07   disabled        0
     2017-12-15 01:00:00   nextUpdate      2017-12-15 06:00:00
     2017-12-15 01:00:00   nextValue       comfort
     2017-12-15 01:00:00   state           eco
   SWITCHINGTIMES:
     01:00|eco
     06:00|comfort
   TIMER:
     hc_living_1:
       HASH       hc_living
       MODIFIER   1
       NAME       hc_living_1
     hc_living_2:
       HASH       hc_living
       MODIFIER   2
       NAME       hc_living_2
       immerSchalten 1
     hc_living_SetTimerOfDay:
       HASH       hc_living
       MODIFIER   SetTimerOfDay
       NAME       hc_living_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     hc_living_delayed:
       HASH       hc_living
       MODIFIER   delayed
       NAME       hc_living_delayed
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         01:00:00   eco
         06:00:00   comfort
       1:
         01:00:00   eco
         06:00:00   comfort
       2:
         01:00:00   eco
         06:00:00   comfort
       3:
         01:00:00   eco
         06:00:00   comfort
       4:
         01:00:00   eco
         06:00:00   comfort
       5:
         01:00:00   eco
         06:00:00   comfort
       6:
         01:00:00   eco
         06:00:00   comfort
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1513296000
       PARA       eco
       TIME       01:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
     2:
       EPOCH      1513314000
       PARA       comfort
       TIME       06:00
       TAGE:
         0
         1
         2
         3
         4
         5
         6
   profile_IDX:
     0:
       01:00:00   1
       06:00:00   2
     1:
       01:00:00   1
       06:00:00   2
     2:
       01:00:00   1
       06:00:00   2
     3:
       01:00:00   1
       06:00:00   2
     4:
       01:00:00   1
       06:00:00   2
     5:
       01:00:00   1
       06:00:00   2
     6:
       01:00:00   1
       06:00:00   2
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set $NAME desiredTemperature $EVENT
   disable    0
   room       13_Steuerung
   switchInThePast 1
   windowSensor fs_living_balcony fs_living_window


Das ganze funktionert in etwa 60-80% der Fälle reibungslos, nur ein bis zwei Mal in der Woche wird morgens nicht umgeschaltet (abends hatte ich das Problem bisher nie), immer im Wohnzimmer, die anderen Räume funktionieren immer. An der Abwesenheitsschaltung kann es nicht liegen, der Status stimmt grundsätzlich.

Die Unterschiede zu den anderen Räumen: Der Schaltpunkt zum Herunterregeln ist um 1 Uhr (bei den anderen: 0 Uhr) und die Steuerung läuft über ein Structure, um ein Wandthermostat und ein Heizthermostat zu regeln, aber daran sollte es eigentlich nicht liegen.

Bin da gerade geringfügig am Verzweifeln :)

Oliver.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Christian72D am 28 Januar 2018, 18:08:38
Das Attribut "idleperiod" gibt doch die zeit in Minuten an, bevor das Modul schalten soll, oder?
Wäre es nicht schön wenn man die Werte fürs Ein- und Aus-Schalten getrennt angeben könnte?

Bei mir wird über eine Geolocation auch die Temperatur verändert. Sobald ich mich also der Wohnung nähere wird sie angehoben.
Dann würde HCS schalten... wartet aber erst noch.

Oder schaltet es sofort ein und verzögert aus?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: rallye am 30 Januar 2018, 18:41:04
Zitat von: Dietmar63 am 18 April 2017, 20:38:01
Ich habe schon eine Version mit Vorrangregelung im Test.
Mal sehen ob es funktioniert.
Hallo !

ich habe vor mit HC zu beginnen (in Anlehnung an Mitch's Beispielen). Bevor ich mich im Design total "verhaue" 3 Fragen:

Gruß Josef
[/list]
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Mitch am 30 Januar 2018, 21:56:11
Zitat von: statler am 30 Januar 2018, 18:41:04
Hallo !

ich habe vor mit HC zu beginnen (in Anlehnung an Mitch's Beispielen). Bevor ich mich im Design total "verhaue" 3 Fragen:

  • ist im HC nun der Vorrang $we vor Wochentag funktionsfähig eingebaut ?
kann ich nicht sagen

Zitat von: statler am 30 Januar 2018, 18:41:04
  • müssen die Heizkörperventile (ich habe HM) im "manual"-Mode (wie von Mitch für seine FHTs beschrieben) betrieben werden oder geht auch "automatik"-Mode ?
geht auch mit Auto, aber das Thermostat hat dann quasi Vorrang

Zitat von: statler am 30 Januar 2018, 18:41:04
  • ich habe teilweise Zimmer ohne separatem Thermostat (z.B.: WC) und teilweise mit Thermostat (z.B.: Bad), der jeweils mit dem Heizkörperventil peered ist. Wo schicke ich dei HC-Commands hin ? Zum Thermostat ? Zum Ventil oder zu beiden ? Nach meinem Verständnis zum Thermostat, der die desired-temp dann an den Ventil-Peer weiterschicken sollte. Oder ?
[/list]
Ventil, wenn alleine und Thermostat, wenn vorhanden.
So ist das bei mir auch (habe mittlerweile auch fast nur HM)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: trafficlight am 08 März 2018, 06:20:07
Werden eigentlich Fritz Dect Steckdosen unterstützt? Betreibe eine Infrarot Heizung im Bad über eine Fritz Dect Steckdose. Die Dose hat auch einen internen Temp. Sensor.

Dieser wird via Reading "temperature" angezeigt und der wert wird wie folgt angezeigt bsp."20 C (messured)"
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: CoolTux am 08 März 2018, 06:53:14
Lege Dir ein userReading an mit ReadingsNum
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: trafficlight am 09 März 2018, 18:49:28
habs nicht so hinbekommen mit userreading und readingsnum. trotz commandref und foren beiträgen konnte ich kein zufriedenstellendes ergebnis erzielen. habe es nun über threshold,doif,weekdaytimer, ein paar dummys und notifys gelöst.  8)

hier mein beitrag
https://forum.fhem.de/index.php/topic,81813.msg778850.html#msg778850 (https://forum.fhem.de/index.php/topic,81813.msg778850.html#msg778850)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: CoolTux am 09 März 2018, 19:45:20

userReadings temperature_num:temperature.* { ReadingsNum ($name,'temperature',100) }
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FlatTV am 10 März 2018, 09:27:29
Ich brauche mal einen Anstupser.
Meine Heizungssteuerung funktioniert soweit, nun möchte ich aber die Temperaturvorgaben variabler gestalten. Bisher kommt die Temperatur zu jedem Device aus dem WeekdayTimer, da ist eine Änderung umständlich.

Lege ich da Dummys mit den Readings Kalt/Warm/ExtremWarm usw. an oder lieber userReadings in den einzelnen Devices?
Welcher Ansatz ist da der schönste?

defmod wtFBDECT_11795_0297488 WeekdayTimer wtDevice Mo-Fr|05:50|21.0\
Mo-Fr|08:00|20.0\
Sa|07:00|21.0\
So|07:00|21.0\
Mo-So|08:30|-1\
Mo-So|20:00|off


Falls das schon gefragt wurde, habe ich die Suche falsch benutzt.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FlatTV am 11 März 2018, 16:28:36
ich habe mich jetzt für dummys mit Readings für 2 Temperaturen (eco und comfort) für jedes WeekdayTimer Device entschieden.
Das Ergebnis sieht so aus, ist nur gerade alles auf manuell.

Lediglich die unterschiedliche Breite der ReadingsGroups stört mich noch, da habe ich noch nix gefunden.

Edit: Huch, in welchem Thread bin ich hier — ich hab nur WeekdayTimer gelesen. Habe das mit WeekdayTimer und AT gemacht  :-[
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 11 März 2018, 20:16:57
Sieht cool aus... Kannst Du bitte mal die Definition der Readingsgroup posten.

Gruß
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: FlatTV am 12 März 2018, 18:15:44
so sieht das zu Zeit aus
defmod rgPM readingsGroup <%sani_heating_manual>,<Onl.>,<Ein/Aus>,<°C Soll>,<°C Ist>,<Lock>,<Leistung>,<Mode> props=powerMeter,tempSensor,switch:present,state,currValue@wtFBDECT_11795_0297488,temperature,locked,power,mode
attr rgPM alias DECT  200
attr rgPM cellStyle { "r:1"=>'style="font-weight:bold;;font-size:16px"',\
  "r:1,c:6"=>'style="font-weight:bold;;font-size:16px;;text-align:center"'\
}
attr rgPM commands { 'state.off'=>'set $DEVICE on',\
  'state.on'=>'set $DEVICE off',\
}
attr rgPM group Heizung
attr rgPM room @home
attr rgPM valueColumns { 'Temperatur setzen'=>'colspan="2"'\
}
attr rgPM valueFormat { if(index($VALUE,'off')!=-1) {\
    $VALUE = 'off';;\
  } elsif($READING =~ /temperature/) {\
    $VALUE = $NUM;;\
  } elsif($VALUE =~ /-1/) {\
    $VALUE = 'do_nothing';;\
  } elsif($VALUE =~ /comfort/) {\
    $VALUE = ReadingsVal($DEVICE,'comfort','').' (comfort)';;\
  } elsif($VALUE =~ /eco/) {\
    $VALUE = ReadingsVal($DEVICE,'eco','').' (eco)';;\
  }\
}
attr rgPM valueIcon { 'present.yes' => 'it_wifi',\
  'present.no'  => 'it_wifi@red',\
  'state.on' => 'ios-on-green',\
  'state.off' => 'ios-off',\
  'currValue.do_nothing' => 'time_manual_mode',\
  'locked.yes' => 'secur_locked',\
  'locked.no'  => 'secur_open',\
  'batterylow.0' => 'batterie',\
  'batterylow.1' => 'batterie@red'\
}
attr rgPM valueStyle { ($READING =~ /present|state|temperature/) ? \
    'style="text-align:center"'\
  :\
     ''\
}
attr rgPM valueSuffix { #'temperature'=>'&deg;;C','state'=>($VALUE eq "aus")?'':'&deg;;C'\
}

defmod rgSH readingsGroup <%sani_heating_level_80>,<Onl.>,<°C Soll>,<°C Ist>,<Lock>,<Batt.>,<Temperatur setzen>\
props=actuator,tempSensor:present,state,temperature,locked,batterylow,!switchOFF,desired-temp
attr rgSH alias DECT 300 / Comet
attr rgSH cellStyle { "r:1"=>'style="font-weight:bold;;font-size:16px"',\
  "r:1,c:7"=>'style="font-weight:bold;;font-size:16px;;text-align:center"',\
  "c:2"=>'style="text-align:center"',\
  "r:1,c:2"=>'style="font-weight:bold;;font-size:16px"',\
}
attr rgSH commands { 'desired-temp'=>'desired-temp:',\
  'switchOFF'=>'set $DEVICE closed'\
}
attr rgSH group Heizung,
attr rgSH room @home
attr rgSH valueColumns { 'Temperatur setzen'=>'colspan="2"',\
  'State '=>'style="font-weight:bold;;font-size:10px;;text-align:center" '\
}
attr rgSH valueFormat { 'state'=>(index($VALUE,'off')!=-1) ?\
    '—'\
  :\
    $NUM,\
  'temperature'=>$NUM\
}
attr rgSH valueIcon { 'present.yes' => 'it_wifi',\
  'present.no'  => 'it_wifi@red',\
  'state.aus' => 'general_aus',\
  'locked.yes' => 'secur_locked',\
  'locked.no'  => 'secur_open',\
  'switchOFF'  => 'control_standby',\
  'batterylow.0' => 'batterie',\
  'batterylow.1' => 'batterie@red'\
}
attr rgSH valueSuffix { #'temperature'=>'&deg;;C','state'=>($VALUE eq "aus")?'':'&deg;;C'\
}

defmod rgWPlan readingsGroup <%clock>,<Soll °C>,<Nächste Werte>,<Scheduler>,<Temperaturen °C>,<Disalble>\
<>,<>,<Uhrzeit / Temperatur>,<>,<Eco>,<Comfort>,<>\
wtFBDECT_08761_0123268:currValue,nextUpdate,nextValue,state@atFBDECT_08761_0123268,eco@wtDevice_08761_0123268,comfort@wtDevice_08761_0123268,?!disable@atFBDECT_08761_0123268\
wtFBDECT_11795_0288464:currValue,nextUpdate,nextValue,state@atFBDECT_11795_0288464,eco@wtDevice_11795_0288464,comfort@wtDevice_11795_0288464,?!disable@atFBDECT_11795_0288464\
wtFBDECT_11795_0297488:currValue,nextUpdate,nextValue,state@atFBDECT_11795_0297488,eco@wtDevice_11795_0297488,comfort@wtDevice_11795_0297488,?!disable@atFBDECT_11795_0297488\
wtFBDECT_11795_1004376:currValue,nextUpdate,nextValue,state@atFBDECT_11795_1004376,eco@wtDevice_11795_1004376,comfort@wtDevice_11795_1004376,?!disable@atFBDECT_11795_1004376\
wtFBDECT_11959_0102320:currValue,nextUpdate,nextValue,state@atFBDECT_11959_0102320,eco@wtDevice_11959_0102320,comfort@wtDevice_11959_0102320,?!disable@atFBDECT_11959_0102320
attr rgWPlan alias Wochenplan
attr rgWPlan cellStyle { "r:1"=>'style="font-weight:bold;;font-size:16px"',\
  "r:1,c:6"=>'style="text-align:center;;font-weight:bold;;font-size:16px"',\
  "c:1"=>'style="text-align:center"',\
  "r:1,c:1"=>'style="font-weight:bold;;font-size:16px"',\
  "c:2"=>'style="text-align:center"',\
  "r:1,c:2"=>'style="font-weight:bold;;font-size:16px"',\
  "c:3"=>'style="text-align:left"',\
  "r:1,c:3"=>'style="font-weight:bold;;font-size:16px"',\
  "r:2,c:5"=>'style="text-align:center"',\
  "r:2,c:6"=>'style="text-align:center"',\
}
attr rgWPlan commands { 'disable' => 'disable:',\
  'eco' => 'eco:',\
  'comfort' => 'comfort:'\
}
attr rgWPlan group Heizung
attr rgWPlan icon time_manual_mode
attr rgWPlan room @home,Timer
attr rgWPlan valueColumns { 'Nächste Werte' => 'colspan="2"',\
  'Temperaturen °C' => 'colspan="2"',\
  'Uhrzeit / Temperatur' => 'colspan="2"'\
}
attr rgWPlan valueFormat { my $dev = 'wtDevice_'.substr($DEVICE,-13);;\
  if($READING !~ /nextUpdate/ && $VALUE =~ /-1/) {\
    $VALUE = 'do_nothing';;\
  } elsif(index($VALUE,'off')!=-1) {\
    '—'\
  } elsif($READING =~ /nextUpdate/) {\
    my ($date,$time) = split(' ',$VALUE);;\
    $time  =~ s/:..$//;;\
    $VALUE = $time;;\
  } elsif($VALUE =~ /comfort/) {\
    $VALUE = ReadingsVal($dev,'comfort','').' (comfort)';;\
  } elsif($VALUE =~ /eco/) {\
    $VALUE = ReadingsVal($dev,'eco','').' (eco)';;\
  }\
}
attr rgWPlan valueIcon { 'currValue.off' => 'general_aus',\
  'currValue.do_nothing' => 'time_manual_mode',\
  'nextValue.off' => 'general_aus',\
  'nextValue.do_nothing' => 'time_manual_mode',\
}
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Christian72D am 17 Mai 2018, 08:56:24
Gibts eine Möglichkeit einen einzelnen Heizkörper aus der Steuerung herauszunehmen?
Ich würde gerne bei meinen Eltern im Nachbarhaus anfangen die ersten HM HKT zu setzen, allerdings dürfen die natürlich nicht MEINE Steuerung beeinflussen.

Ich habe ein Attribut "exclude" gefunden, kann ich DA den entsprechenden HKT angeben?

Wäre doof wenn das so NICHT gehen würde. :(
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Tardar am 23 Juni 2018, 23:46:57
Hey,

leider scheint HC meine Heizung nicht zu mögen (oder eher das Thermostat :D).
Hat das schon jemand mit HomeMaticIP lauffähig hinbekommen ?


Danke Euch



Internals:
   CFGFN     
   COMMAND    ((ReadingsVal("**********"", "state", "") eq "open")|(ReadingsVal("**********", "state", "") eq "open")|(ReadingsVal("**********"", "state", "") eq "open")|(ReadingsVal("**********"", "state", "") eq "open")) {fhem ("set Heizung_Computer datapoint 1.SET_POINT_TEMPERATURE %")}
   CONDITION 
   DEF        Heizung_Computer de $we|00:00|17 $we|08:00|25 $we|12:00|20 $we|15:00|24 $we|20:00|22 ((ReadingsVal("**********"", "state", "") eq "open")|(ReadingsVal("**********"", "state", "") eq "open")|(ReadingsVal("**********"", "state", "") eq "open")|(ReadingsVal("**********"", "state", "") eq "open")) {fhem ("set Heizung_Computer datapoint 1.SET_POINT_TEMPERATURE %")}
   DEVICE     Heizung_Computer
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       Steuerung_Heizung_Computer_We
   NR         512
   Profil 0: Sonntag 00:00:00 17, 08:00:00 25, 12:00:00 20, 15:00:00 24, 20:00:00 22
   Profil 6: Samstag 00:00:00 17, 08:00:00 25, 12:00:00 20, 15:00:00 24, 20:00:00 22
   Profil 7: Wochenende 00:00:00 17, 08:00:00 25, 12:00:00 20, 15:00:00 24, 20:00:00 22
   STATE      active
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2018-06-23 23:43:33   currValue       22
     2018-06-23 23:43:37   disabled        0
     2018-06-23 23:43:33   nextUpdate      2018-06-24 00:00:00
     2018-06-23 23:43:33   nextValue       17
     2018-06-23 23:43:33   state           active
   SWITCHINGTIMES:
     $we|00:00|17
     $we|08:00|25
     $we|12:00|20
     $we|15:00|24
     $we|20:00|22
   TIMER:
     Steuerung_Heizung_Computer_We_SetTimerOfDay:
       HASH       Steuerung_Heizung_Computer_We
       MODIFIER   SetTimerOfDay
       NAME       Steuerung_Heizung_Computer_We_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         00:00:00   17
         08:00:00   25
         12:00:00   20
         15:00:00   24
         20:00:00   22
       1:
       2:
       3:
       4:
       5:
       6:
         00:00:00   17
         08:00:00   25
         12:00:00   20
         15:00:00   24
         20:00:00   22
       7:
         00:00:00   17
         08:00:00   25
         12:00:00   20
         15:00:00   24
         20:00:00   22
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1529704800
       PARA       17
       TIME       00:00
       TAGE:
         7
     2:
       EPOCH      1529733600
       PARA       25
       TIME       08:00
       TAGE:
         7
     3:
       EPOCH      1529748000
       PARA       20
       TIME       12:00
       TAGE:
         7
     4:
       EPOCH      1529758800
       PARA       24
       TIME       15:00
       TAGE:
         7
     5:
       EPOCH      1529776800
       PARA       22
       TIME       20:00
       TAGE:
         7
   profile_IDX:
     0:
       00:00:00   1
       08:00:00   2
       12:00:00   3
       15:00:00   4
       20:00:00   5
     6:
       00:00:00   1
       08:00:00   2
       12:00:00   3
       15:00:00   4
       20:00:00   5
     7:
       00:00:00   1
       08:00:00   2
       12:00:00   3
       15:00:00   4
       20:00:00   5
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set Heizung_Computer datapoint 1.SET_POINT_TEMPERATURE $EVENT
   disable    0
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: JWRu am 26 Oktober 2018, 12:18:55
Ich hoffe, dass hier noch jemand mitliest.

Ich hatte folgendes Problem mit WeekdayTimer:
Wenn ich ich ein einen Profileintrag wie beispielsweise 08:00|28 definiere, wird als $EVENT immer "28.0" gesendet. Mein Thermostat akzeptiert aber nur ganze Zahlen, also gab's eine Fehlermeldung.
Ich habe das Problem mit einem Workaround gelöst, indem ich die ganze Zahl aus $EVENT heraushole.

Außerdem ist mir aufgefallen, dass das Attribut "commandTemplate" in der Commandref nicht auftaucht.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: saschab am 31 Oktober 2018, 12:19:42
Hallo Zusammen,
ich haben folgenden Problem: ich würde gerne das "Heating_Control" Module wie folgt nutzen:

Das Ziel ist es einen Wochenplan per Web erstellen zu können, und für "Heating_Control" Wochenprofile zu hinterlegen.

Hierbei habe ich mit folgende Beispiel aus fhemwiki angelehnt:

https://wiki.fhem.de/wiki/ReadingsGroup#Heizungswerte.2C_Status.2C_Steuerung_und_Wochenprofil


Das Skripe erstellt dummys (d_climaControl_16) in den das Wochenprofil in den Readings hinterlegt wird, und diese habe ich mit stateformat in das format was der "Heating_Control" benötigt.


Der Statt von "d_climaControl_16" sieht wie folgt aus :

Mo-Fr|00:00|HC_Temp(16.0) Mo-Fr|12:00|HC_Temp(15.0) Mo-Fr|12:00|HC_Temp(16.0) Mo-Fr|24:00|HC_Temp(15.0) Sa|12:00|HC_Temp(16.0) Sa|12:00|HC_Temp(15.0) Sa|24:00|HC_Temp(16.0) Sa|24:00|HC_Temp(15.0) So|12:00|HC_Temp(16.0) So|12:00|HC_Temp(15.0) So|24:00|HC_Temp(16.0) So|24:00|HC_Temp(15.0)

Die state wird aus den in den dummy (d_climaControl_16) enthalten readings gebildet, siehe hier:

define d_climaControl_16 dummy
attr d_climaControl_16 room 1.6_Gast,HEIZUNG,zHomekit
attr d_climaControl_16 setList dayTemp:5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0 nightTemp:5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0 workday_period_1_start:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 workday_period_1_stop:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 workday_period_2_start:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 workday_period_2_stop:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 saturday_period_1_start:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 saturday_period_1_stop:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 saturday_period_2_start:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 saturday_period_2_stop:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 sunday_period_1_start:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 sunday_period_1_stop:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 sunday_period_2_start:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00 sunday_period_2_stop:00:00,00:15,00:30,00:45,01:00,01:15,01:30,01:45,02:00,02:15,02:30,02:45,03:00,03:15,03:30,03:45,04:00,04:15,04:30,04:45,05:00,05:15,05:30,05:45,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00,10:15,10:30,10:45,11:00,11:15,11:30,11:45,12:00,12:15,12:30,12:45,13:00,13:15,13:30,13:45,14:00,14:15,14:30,14:45,15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30,23:45,24:00
attr d_climaControl_16 stateFormat Mo-Fr|workday_period_1_start|HC_Temp(dayTemp) Mo-Fr|workday_period_1_stop|HC_Temp(nightTemp) Mo-Fr|workday_period_2_start|HC_Temp(dayTemp) Mo-Fr|workday_period_2_stop|HC_Temp(nightTemp) Sa|saturday_period_1_start|HC_Temp(dayTemp) Sa|saturday_period_1_stop|HC_Temp(nightTemp) Sa|saturday_period_2_start|HC_Temp(dayTemp) Sa|saturday_period_2_stop|HC_Temp(nightTemp) So|sunday_period_1_start|HC_Temp(dayTemp) So|sunday_period_1_stop|HC_Temp(nightTemp) So|sunday_period_2_start|HC_Temp(dayTemp) So|sunday_period_2_stop|HC_Temp(nightTemp)



Das "Heating_Control" (HC_climaControl_16) Device, sieht wie folgt aus:

define HC_climaControl_16 Heating_Control Thermostat_Gast12_EQ3BT_Clima de d_climaControl_16:state {\
  HC_setTemp($NAME, eval $EVENT);;\
}
attr HC_climaControl_16 commandTemplate set $NAME desiredTemperature $EVENT
attr HC_climaControl_16 icon sani_heating_calendar
attr HC_climaControl_16 room 1.6_Gast,HEIZUNG



Leider erkennt "Heating_Control" den State von (d_climaControl_16) nicht Inhalt für das Wochenprofil an.
Hat jemand nee Idee wie man das hinbekommt?

Alternativ könnte man auch die Reading auch direkt in den "Heating_Control" schreiben,
und die readings füttern den Wochenplan, leider ist das mit auch nicht gelungen!

Gruß Sascha
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Skusi am 18 November 2018, 10:02:44
Hallo,
seit einiger Zeit schaltet einer meiner Heating-Control Timer nicht mehr zu den definierten Zeiten um. Komisch ist dabei das ich noch 7 weiter Teimer für andere Räume laufen habe, die alle gleich definiert sind die und zu den Zeiten auch die Sollwerte umschalten. Nur mein Bad Timer tut es nicht:

READINGS:
     2018-11-18 05:00:02   currValue       20.5
     2018-11-18 09:47:24   disabled        0
     2018-11-18 05:00:02   nextUpdate      2018-11-18 07:00:00
     2018-11-18 05:00:02   nextValue       19.5
     2018-11-18 04:00:01   state           20.5


So sehen die readings am Sontag um ca 10 Uhr aus. Wie man sieht hätte schon um 7:00 der Sollwert auf 19.5 springen sollen. Aber state ist immernoch 20.5.

Ich habe keine delay condition definiert.

Hier mal das ganze List:

Internals:
   COMMAND    set $NAME desired-temp $EVENT
   CONDITION 
   DEF        FBHK_Bad de 12345|02:00|20.5 12345|05:00|19.5 60|04:00|20.5 60|07:00|19.5 set $NAME desired-temp $EVENT
   DEVICE     FBHK_Bad
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       Timer_FBH_Bad
   NR         397
   Profil 0: Sonntag 04:00:00 20.5, 07:00:00 19.5
   Profil 1: Montag 02:00:00 20.5, 05:00:00 19.5
   Profil 2: Dienstag 02:00:00 20.5, 05:00:00 19.5
   Profil 3: Mittwoch 02:00:00 20.5, 05:00:00 19.5
   Profil 4: Donnerstag 02:00:00 20.5, 05:00:00 19.5
   Profil 5: Freitag 02:00:00 20.5, 05:00:00 19.5
   Profil 6: Samstag 04:00:00 20.5, 07:00:00 19.5
   STATE      20.5
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2018-11-18 05:00:02   currValue       20.5
     2018-11-18 09:47:24   disabled        0
     2018-11-18 05:00:02   nextUpdate      2018-11-18 07:00:00
     2018-11-18 05:00:02   nextValue       19.5
     2018-11-18 04:00:01   state           20.5
   SWITCHINGTIMES:
     12345|02:00|20.5
     12345|05:00|19.5
     60|04:00|20.5
     60|07:00|19.5
   TIMER:
     Timer_FBH_Bad_1:
       HASH       Timer_FBH_Bad
       MODIFIER   1
       NAME       Timer_FBH_Bad_1
     Timer_FBH_Bad_2:
       HASH       Timer_FBH_Bad
       MODIFIER   2
       NAME       Timer_FBH_Bad_2
     Timer_FBH_Bad_3:
       HASH       Timer_FBH_Bad
       MODIFIER   3
       NAME       Timer_FBH_Bad_3
     Timer_FBH_Bad_4:
       HASH       Timer_FBH_Bad
       MODIFIER   4
       NAME       Timer_FBH_Bad_4
       immerSchalten 1
     Timer_FBH_Bad_SetTimerOfDay:
       HASH       Timer_FBH_Bad
       MODIFIER   SetTimerOfDay
       NAME       Timer_FBH_Bad_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     Timer_FBH_Bad_delayed:
       HASH       Timer_FBH_Bad
       MODIFIER   delayed
       NAME       Timer_FBH_Bad_delayed
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         04:00:00   20.5
         07:00:00   19.5
       1:
         02:00:00   20.5
         05:00:00   19.5
       2:
         02:00:00   20.5
         05:00:00   19.5
       3:
         02:00:00   20.5
         05:00:00   19.5
       4:
         02:00:00   20.5
         05:00:00   19.5
       5:
         02:00:00   20.5
         05:00:00   19.5
       6:
         04:00:00   20.5
         07:00:00   19.5
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1542502800
       PARA       20.5
       TIME       02:00
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1542513600
       PARA       19.5
       TIME       05:00
       TAGE:
         1
         2
         3
         4
         5
     3:
       EPOCH      1542510000
       PARA       20.5
       TIME       04:00
       TAGE:
         0
         6
     4:
       EPOCH      1542520800
       PARA       19.5
       TIME       07:00
       TAGE:
         0
         6
   profile_IDX:
     0:
       04:00:00   3
       07:00:00   4
     1:
       02:00:00   1
       05:00:00   2
     2:
       02:00:00   1
       05:00:00   2
     3:
       02:00:00   1
       05:00:00   2
     4:
       02:00:00   1
       05:00:00   2
     5:
       02:00:00   1
       05:00:00   2
     6:
       04:00:00   3
       07:00:00   4
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   commandTemplate set $NAME desired-temp $EVENT
   disable    0
   group      Timer
   room       7.0_Klima
   switchInThePast 1
   verbose    2


Kann jemand helfen ? Für mich völlig unlogisch.

Zumal ich auch nix daran geschraubt habe. Läuft schon seit Jahren so...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: JWRu am 18 November 2018, 10:06:12
Es sieht so aus, als ob der Maintainer hier nicht mitliest.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Cobra am 18 November 2018, 10:18:08
Das kann er leider auch nicht mehr.

https://forum.fhem.de/index.php/topic,83149.msg753762.html#msg753762 (https://forum.fhem.de/index.php/topic,83149.msg753762.html#msg753762)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: JWRu am 18 November 2018, 13:03:43
Ich weiß. Ich meinte auch nicht den Entwickler des Moduls "Dietmar63", sondern den Maintainer.
Laut MAINTAINER.txt ist das "igami".
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Skusi am 18 November 2018, 17:07:43
Ich nochmal,
ich muß meine Aussage berichtigen das alles anderen 7 Timer funktionieren. Ich hab gerade festgestellt das alle die 2. Zeit des Tages nicht umschalten.
Die readings nextUpdate und nextValue stimmen immer, aber die currValue passt nicht.

Das ich echt blöd, so spiel meine komplette Fussbodenheizung verrückt und heizt länger als sie soll.
HILFEeeee !!!
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Skusi am 20 November 2018, 18:25:37
Gibt's doch nicht das nur ich dieses Problem habe...
Also ich schmeiß die Heating_Control´s erstmal raus. Ich komme einfach nicht draus was da schief läuft. Und langsam nervt es tierisch das ich meine Solltemperaturen immer nachjustieren muss.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 20 November 2018, 20:28:15
Warum kommt folgendes in deine Readings?
2018-11-18 09:47:24   disabled        0

Und setzt lieber dein Kommando set $NAME desired-temp $EVENT in dem Attribute commandTemplate, statt in der DEF. Also:
defmod Timer_FBH_Bad FBHK_Bad de 12345|02:00|20.5 12345|05:00|19.5 60|04:00|20.5 60|07:00|19.5
attr Timer_FBH_Bad commandTemplate  set $NAME desired-temp $EVENT



Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Skusi am 21 November 2018, 18:15:22
Zitat von: amenomade am 20 November 2018, 20:28:15
Warum kommt folgendes in deine Readings?
2018-11-18 09:47:24   disabled        0

Weil ich per DOIF an Freien Tagen zwischen diesem und einem "Urlaubs" Timer per disable /enable umschalte.

Und setzt lieber dein Kommando set $NAME desired-temp $EVENT in dem Attribute commandTemplate, statt in der DEF. Also:
defmod Timer_FBH_Bad FBHK_Bad de 12345|02:00|20.5 12345|05:00|19.5 60|04:00|20.5 60|07:00|19.5
attr Timer_FBH_Bad commandTemplate  set $NAME desired-temp $EVENT


Das Attribut gab es schon, ich habs jetzt mal testweise aus der def enfernt.
Dieses Attribut ist aber auch in der commandref nicht dokumentiert.

Das Kommando kann man laut ref doch in der def übergeben:

define <name> Heating_Control <device> [<language>] <wochentage;] <profile> [b]<command>[/b]|<condition>

Egal, doppelt kann nicht gut sein. Allerdings läuft das schon seit Jahren so. Hat sich wohl über den Sommer im Modul was geändert !?

Ich teste....
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 21 November 2018, 22:43:06
ZitatWeil ich per DOIF an Freien Tagen zwischen diesem und einem "Urlaubs" Timer per disable /enable umschalte.
Das hat sich aber am Sonntag um 09:47 Uhr geändert. Wenn das vor 09:47 Uhr auf "disable 1" war, dann hat natürlich das DOIF um 7:00 Uhr nichts getan.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Skusi am 22 November 2018, 10:07:08
Nee, da hab ich nur nach dem Fehler gesucht und etwas rumgespielt. Ich wollte testen ob beim umschalten der starte wieder berichtigt wird.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 22 November 2018, 17:34:53
Dann zeig bitte wirklich ein "list" des HCs, wenn er fehlerhaft nicht geschaltet hat. Und dazu die Log am theoretischen Zeitpunkt, mit verbose 5.
Da hast Du zu viel rumgespielt:
disable ist von 9:47 Uhr
currValue ist von Sonntag 05:00 Uhr, was gar nicht mit dem Zeitplan stimmt und state ist von 04:00 Uhr mit dem gleichen Wert.
usw...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Skusi am 22 November 2018, 19:08:45
Ich verstehe wirklich nicht was Du meinst,
Nur der Eintrag disable ist wegen mir auf 9:47. Die anderen Readings habe ich nicht beeinflusst, und das das nicht in den Zeitplan passt, ist ja das was ich nicht verstehe.

Nachdem ich Gestern un die def geändert habe, hat sich leider nix verbessert.

Aber gut, ich werde morgen mal in Ruhe einen Log mit Verbose 5 starten kurz vor einem Schaltpunkt. Dazu gibts dann auch eine zeitnahes List, ohne das ich irgenwie eingreife.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 22 November 2018, 19:46:34
ZitatDie anderen Readings habe ich nicht beeinflusst
Mit disable schon, insbesondere mit switchinthepast.

ZitatAber gut, ich werde morgen mal in Ruhe einen Log mit Verbose 5 starten kurz vor einem Schaltpunkt. Dazu gibts dann auch eine zeitnahes List, ohne das ich irgenwie eingreife.
Sehr schön.

Hast Du vielleicht noch andere Devices (at, DOIF, weekdaytimer, notify, usw...), die dieses HC Device beinflüssen können? Oder irgenwas, was Heating_Control_SetAllTemps() aufruft?

Wenn Du { localtime() } im Befehlfeld von Fhem eingibst, ist es koherent mit deiner eigene Uhrzeit?
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 22 November 2018, 19:50:23
Ahja und auch bitte das Ergebnis von
version WeekdayTimer
version Heating_Control
zeigen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Skusi am 24 November 2018, 09:56:56
Ich hab nochmal selber rumgeforscht und den Fehler scheinbar gefunden.


In einem DOIF war ein eigentlich unnötiges do always drin das ich mal rausgenommen habe, und nun schalten die Timer wieder so wie sie sollen.

Ich würde nun nur noch gerne verstehen wie das zustande kam.
Frage also: Warum führt es zu dem beschriebenen Effektetn wenn jede Nacht um 1:00 Uhr folgende Zeile ausgeführt wird:

(set Timer_FBH_.* enable, set U_Timer_FBH.* disable,
{Heating_Control_SetAllTemps()})


So schalte ich zwischen den normalen Profilen und den (U_timer) Urlaubs Timer Zeiten um.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: amenomade am 24 November 2018, 20:49:51
Heating_Control_SetAllTemp sendet an alle HC Devices ein Heating_Control_SetTemp
Heating_Control_SetTemp löscht alle Timer und setzt die wieder nach DEF

Um genau sagen zu können, was passiert ist, muss man in den Logs schauen (Log vom DOIF und vom Device, mit verbose 5)
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: rallye am 11 Januar 2019, 15:48:40
Hallo zusammen !
Bezüglich Heating_Control_SetTemp, welches ich beim Heimkommen unterschiedlicher Familienmitglieder zur Ansteuerung unterschiedliche Thermostate/Heizkörper neuerdings verwende sehe ich im Log folgendes
2019.01.11 14:48:22 2: AMS292HomeState: {Heating_Control_SetTemp("HC_WC")}: HASH(0x44a5968)
2019.01.11 14:48:22 2: AMS292HomeState: {Heating_Control_SetTemp("HC_AK")}: HASH(0x5b9db40)
2019.01.11 14:48:22 2: AMS292HomeState: {Heating_Control_SetTemp("HC_VZ")}: HASH(0x5b781d8)
2019.01.11 14:48:22 2: AMS292HomeState: {Heating_Control_SetTemp("HC_EZ")}: HASH(0x5b6db10)
2019.01.11 15:02:17 2: ElternHomeState: {Heating_Control_SetTemp("HC_HR")}: HASH(0x450ff50)


Auch wenn ich das {Heating_Control_SetTemp("HC_AK")} in der Befehlszeile eingebe kommt eine Meldung HASH(0x......). Die Befehle scheinen richtig ausgeführt zu werden, doch das HASH(0x......) irritiert mich etwas. Was bedeutet es und wozu brauche ich es ?

Danke
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: eurofinder am 13 Februar 2019, 16:09:03
Ich habe mit Heating_Control ein Profil (hc_buero) angelegt, damit ein Thermostat Eurotronic Spirit als device (TBuero) in Abhängigkeit des Tages und der Uhrzeit die entsprechende Temperatur setzt.
Das funktioniert auch zuverlässig.
Allerdings schaffe ich es nicht, dass ich mit Hilfe des widget wdtimer für FTUI die hinterlegten Werte des Profil zu verändern. Kann mir bitte jemand ein Beispiel geben, wie ich das umsetzen muss oder geht das in Kombination mit Heating_Control gar nicht?

Wenn ich statt Heating_Control ein Profil mit WeekdayTimer definieren klappt es problemlos.

Gruß
eurofinder
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Skusi am 14 Februar 2019, 19:21:02
Das liegt daran das in der widget_wdtimer.js das setzten der neuen Parameter fest auf WeekdayTimer programmiert ist.

Ich habe mir so geholfen das ich folgende Zeile in der Datei geändert habe:

//Aktualisiertes define setzen
cmd = "defmod "+device+" Heating_Control "+arr_newconfig[2][1]+" "+arr_newconfig[2][2]+" ";


Schöner wäre natürlich wenn man das zu setzende Timer Device vielleicht per Attribut im Widget angeben könnte

Wink an den Schöpfer :-)

Nach dem ändern der Datei mußt Du noch per exclude_from_update dafür sorgen das das Widget beim nächsten Update nicht wieder überschriebe wird.

So geht es erstmal...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: eurofinder am 14 Februar 2019, 19:31:14
Danke, werde ich mal probieren.

Gruß
eurofinder
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 20 März 2019, 20:08:02
Hallo zusammen,

mir ist heute ein Problem mit meinen Heating_Controls aufgefallen. Immer dann wenn ich !$we verwende, wird dieser Eintrag bei der Berechnung der Schaltzeiten ignoriert. Nur die Werte mit $we funktionieren. Ich kann leider nicht sagen, seit wann / welchem Update von fhem das so ist.

Kann das jemand bestätigen?

Wäre super, wenn der Fehler bald korrigiert werden könnte, da meine Heizungssteuerung somit unter der Woche nicht funktioniert. Mit dem Workaround 12345 für die Wochentage geht es zwar, aber dann muss ich alles umbauen :(

Internals:
   COMMAND    { myHeatingControl($NAME,$EVENT) }
   CONDITION 
   DEF        E1_wz_THKV_Heizkoerper_Fenster de 12345|06:04|comfort !$we|07:34|eco:1 !$we|15:34|comfort !$we|22:49|eco:0 $we|08:04|comfort $we|23:59|eco:0 { myHeatingControl($NAME,$EVENT) }
   DEVICE     E1_wz_THKV_Heizkoerper_Fenster
   FUUID      5c42dbd3-f33f-2e5f-c354-d64461a8993f395e
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       E1_wz_THKV_Heizkoerper_Fenster_hC_01
   NR         153
   Profil 0: Sonntag 08:04:00 comfort, 23:59:00 eco:0
   Profil 1: Montag 06:04:00 comfort, 08:04:00 comfort, 23:59:00 eco:0
   Profil 2: Dienstag 06:04:00 comfort, 08:04:00 comfort, 23:59:00 eco:0
   Profil 3: Mittwoch 06:04:00 comfort, 08:04:00 comfort, 23:59:00 eco:0
   Profil 4: Donnerstag 06:04:00 comfort, 08:04:00 comfort, 23:59:00 eco:0
   Profil 5: Freitag 06:04:00 comfort, 08:04:00 comfort, 23:59:00 eco:0
   Profil 6: Samstag 08:04:00 comfort, 23:59:00 eco:0
   Profil 7: Wochenende 08:04:00 comfort, 23:59:00 eco:0
   Profil 8: Werktags 07:34:00 eco:1, 15:34:00 comfort, 22:49:00 eco:0
   STATE      nächste Schaltung: 2019-03-20 23:59:00 comfort ==> eco
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2019-03-20 20:04:52   currValue       comfort
     2019-03-20 19:55:06   disabled        0
     2019-03-20 20:04:52   nextUpdate      2019-03-20 23:59:00
     2019-03-20 20:04:52   nextValue       eco:0
     2019-03-20 20:04:52   state           comfort
   SWITCHINGTIMES:
     12345|06:04|comfort
     !$we|07:34|eco:1
     !$we|15:34|comfort
     !$we|22:49|eco:0
     $we|08:04|comfort
     $we|23:59|eco:0
   TIMER:
     E1_wz_THKV_Heizkoerper_Fenster_hC_01_4:
       HASH       E1_wz_THKV_Heizkoerper_Fenster_hC_01
       MODIFIER   4
       NAME       E1_wz_THKV_Heizkoerper_Fenster_hC_01_4
     E1_wz_THKV_Heizkoerper_Fenster_hC_01_5:
       HASH       E1_wz_THKV_Heizkoerper_Fenster_hC_01
       MODIFIER   5
       NAME       E1_wz_THKV_Heizkoerper_Fenster_hC_01_5
       immerSchalten 1
     E1_wz_THKV_Heizkoerper_Fenster_hC_01_6:
       HASH       E1_wz_THKV_Heizkoerper_Fenster_hC_01
       MODIFIER   6
       NAME       E1_wz_THKV_Heizkoerper_Fenster_hC_01_6
     E1_wz_THKV_Heizkoerper_Fenster_hC_01_SetTimerOfDay:
       HASH       E1_wz_THKV_Heizkoerper_Fenster_hC_01
       MODIFIER   SetTimerOfDay
       NAME       E1_wz_THKV_Heizkoerper_Fenster_hC_01_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
     E1_wz_THKV_Heizkoerper_Fenster_hC_01_delayed:
       HASH       E1_wz_THKV_Heizkoerper_Fenster_hC_01
       MODIFIER   delayed
       NAME       E1_wz_THKV_Heizkoerper_Fenster_hC_01_delayed
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         08:04:00   comfort
         23:59:00   eco:0
       1:
         06:04:00   comfort
         08:04:00   comfort
         23:59:00   eco:0
       2:
         06:04:00   comfort
         08:04:00   comfort
         23:59:00   eco:0
       3:
         06:04:00   comfort
         08:04:00   comfort
         23:59:00   eco:0
       4:
         06:04:00   comfort
         08:04:00   comfort
         23:59:00   eco:0
       5:
         06:04:00   comfort
         08:04:00   comfort
         23:59:00   eco:0
       6:
         08:04:00   comfort
         23:59:00   eco:0
       7:
         08:04:00   comfort
         23:59:00   eco:0
       8:
         07:34:00   eco:1
         15:34:00   comfort
         22:49:00   eco:0
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1553058240
       PARA       comfort
       TIME       06:04
       TAGE:
         1
         2
         3
         4
         5
     2:
       EPOCH      1553063640
       PARA       eco:1
       TIME       07:34
       TAGE:
         8
     3:
       EPOCH      1553092440
       PARA       comfort
       TIME       15:34
       TAGE:
         8
     4:
       EPOCH      1553118540
       PARA       eco:0
       TIME       22:49
       TAGE:
         8
     5:
       EPOCH      1553065440
       PARA       comfort
       TIME       08:04
       TAGE:
         7
     6:
       EPOCH      1553122740
       PARA       eco:0
       TIME       23:59
       TAGE:
         7
   profile_IDX:
     0:
       08:04:00   5
       23:59:00   6
     1:
       06:04:00   1
       08:04:00   5
       23:59:00   6
     2:
       06:04:00   1
       08:04:00   5
       23:59:00   6
     3:
       06:04:00   1
       08:04:00   5
       23:59:00   6
     4:
       06:04:00   1
       08:04:00   5
       23:59:00   6
     5:
       06:04:00   1
       08:04:00   5
       23:59:00   6
     6:
       08:04:00   5
       23:59:00   6
     7:
       08:04:00   5
       23:59:00   6
     8:
       07:34:00   2
       15:34:00   3
       22:49:00   4
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Wohnzimmer (Fenster)
   commandTemplate set $NAME desired-temp $EVENT
   disable    0
   group      Zeitsteuerung Heizung
   room       Heizungsraum
   sortby     4
   stateFormat {
my $cValue = ReadingsVal("E1_wz_THKV_Heizkoerper_Fenster_hC_01","currValue","");
my $idx = index($cValue,":");
if ($idx != -1) {
$cValue = substr($cValue,0,$idx);
}
my $nValue = ReadingsVal("E1_wz_THKV_Heizkoerper_Fenster_hC_01","nextValue","");
$idx = index($nValue,":");
if ($idx != -1) {
$nValue = substr($nValue,0,$idx);
}
return "nächste Schaltung: ".ReadingsVal("E1_wz_THKV_Heizkoerper_Fenster_hC_01","nextUpdate","")." ".$cValue." ==> ".$nValue
}


Beste Grüße
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Wolle02 am 21 März 2019, 19:48:01
Könnte eventuell mit dieser Disskusion
https://forum.fhem.de/index.php/topic,98583.0.html (https://forum.fhem.de/index.php/topic,98583.0.html)
zusammenhängen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: ToKa am 21 März 2019, 21:41:54
Das Problem mit $we ist bei mir behoben, ich hatte ein eigenes Holiday device verwendet und die Logik hat sich geändert.

Trotzdem funktionieren meine heating_control und weekdaytimer nicht richtig! Die berechneten Schaltzeiten stimmen nicht für die Wochentage und Wochenenden. Hier noch ein list eines weekdaytimer:
Internals:
   COMMAND    { myWeekdayTimer($NAME,$EVENT) }
   CONDITION 
   DEF        KG_hz_ZS_Zirkulationspumpe de !$we|04:30|on-for-timer !$we|16:30|on-for-timer $we|06:30|on-for-timer $we|18:30|on-for-timer { myWeekdayTimer($NAME,$EVENT) }
   DEVICE     KG_hz_ZS_Zirkulationspumpe
   FUUID      5c42dbd1-f33f-2e5f-de1e-369a0a62fe6c8946
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       KG_hz_ZS_Zirkulationspumpe_wT_01
   NR         83
   Profil 0: Sonntag 06:30:00 on-for-timer, 18:30:00 on-for-timer
   Profil 1: Montag 06:30:00 on-for-timer, 18:30:00 on-for-timer
   Profil 2: Dienstag 06:30:00 on-for-timer, 18:30:00 on-for-timer
   Profil 3: Mittwoch 06:30:00 on-for-timer, 18:30:00 on-for-timer
   Profil 4: Donnerstag 06:30:00 on-for-timer, 18:30:00 on-for-timer
   Profil 5: Freitag 06:30:00 on-for-timer, 18:30:00 on-for-timer
   Profil 6: Samstag 06:30:00 on-for-timer, 18:30:00 on-for-timer
   Profil 7: Wochenende 06:30:00 on-for-timer, 18:30:00 on-for-timer
   Profil 8: Werktags 04:30:00 on-for-timer, 16:30:00 on-for-timer
   STATE      nächste Schaltung: 2019-03-22 06:30:00 on-for-timer
   STILLDONETIME 0
   TYPE       WeekdayTimer
   READINGS:
     2019-03-21 21:17:52   currValue       on-for-timer
     2019-03-21 21:17:52   nextUpdate      2019-03-22 06:30:00
     2019-03-21 21:17:52   nextValue       on-for-timer
     2019-03-21 21:17:52   state           active
   SWITCHINGTIMES:
     !$we|04:30|on-for-timer
     !$we|16:30|on-for-timer
     $we|06:30|on-for-timer
     $we|18:30|on-for-timer
   TIMER:
     KG_hz_ZS_Zirkulationspumpe_wT_01_SetTimerOfDay:
       HASH       KG_hz_ZS_Zirkulationspumpe_wT_01
       MODIFIER   SetTimerOfDay
       NAME       KG_hz_ZS_Zirkulationspumpe_wT_01_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   dayNumber:
     !$we       8
     $we        7
     di         2
     do         4
     fr         5
     mi         3
     mo         1
     sa         6
     so         0
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
         06:30:00   on-for-timer
         18:30:00   on-for-timer
       1:
         06:30:00   on-for-timer
         18:30:00   on-for-timer
       2:
         06:30:00   on-for-timer
         18:30:00   on-for-timer
       3:
         06:30:00   on-for-timer
         18:30:00   on-for-timer
       4:
         06:30:00   on-for-timer
         18:30:00   on-for-timer
       5:
         06:30:00   on-for-timer
         18:30:00   on-for-timer
       6:
         06:30:00   on-for-timer
         18:30:00   on-for-timer
       7:
         06:30:00   on-for-timer
         18:30:00   on-for-timer
       8:
         04:30:00   on-for-timer
         16:30:00   on-for-timer
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
   profil:
     1:
       EPOCH      1553139000
       PARA       on-for-timer
       TIME       04:30
       TAGE:
         8
     2:
       EPOCH      1553182200
       PARA       on-for-timer
       TIME       16:30
       TAGE:
         8
     3:
       EPOCH      1553146200
       PARA       on-for-timer
       TIME       06:30
       TAGE:
         7
     4:
       EPOCH      1553189400
       PARA       on-for-timer
       TIME       18:30
       TAGE:
         7
   profile_IDX:
     0:
       06:30:00   3
       18:30:00   4
     1:
       06:30:00   3
       18:30:00   4
     2:
       06:30:00   3
       18:30:00   4
     3:
       06:30:00   3
       18:30:00   4
     4:
       06:30:00   3
       18:30:00   4
     5:
       06:30:00   3
       18:30:00   4
     6:
       06:30:00   3
       18:30:00   4
     7:
       06:30:00   3
       18:30:00   4
     8:
       04:30:00   1
       16:30:00   2
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
Attributes:
   alias      Zeitsteuerung Zirkulationspumpe
   commandTemplate set $NAME  $EVENT
   group      Zirkulationspumpe
   icon       sani_pump
   room       Heizungsraum,Zentrale Steuerung
   stateFormat nächste Schaltung: nextUpdate nextValue


Fhem have ich zwischendurch auch neu gestartet und die Werte verändern sich nicht.

Beste Grüße
Torsten
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: CoolTux am 25 März 2019, 10:02:06
Hallo Leute,

Beta-User und ich haben und der aktuellen Problematik mit dem Weekdaytimer und mehreren angegebenen holiday2we Devices unter global angenommen.
Wir haben einen fix fertig den wir gerne einchecken würden. Aber eventuell kann der ein oder andere noch einmal kurz testen.

Hat überhaupt außer ein User noch jemand Probleme mit dem Modul?


Grüße
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: juemuc am 21 April 2019, 12:27:32
Hallo,

ist dies eventuell auch ein Thema für Euch? Bei mir schaltet WT an Feiertagen falsch, da hier die Enstellungen des Wochentages vor den Einstellungen des Feiertages ziehen. Da unter FTUI leider !WE aktuell nicht definiert werden kann, war mein Vorschlag, dass Feiertagseinstellungen die Wochentagseinstellungen übersteuern, sofern beides definiert ist. 

https://forum.fhem.de/index.php/topic,48106.msg932069.html#msg932069 (https://forum.fhem.de/index.php/topic,48106.msg932069.html#msg932069)

Viele Grüße
Jürgen
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Beta-User am 04 Mai 2019, 06:59:21
Zitat von: juemuc am 21 April 2019, 12:27:32
Hallo,

ist dies eventuell auch ein Thema für Euch? Bei mir schaltet WT an Feiertagen falsch, da hier die Enstellungen des Wochentages vor den Einstellungen des Feiertages ziehen. Da unter FTUI leider !WE aktuell nicht definiert werden kann, war mein Vorschlag, dass Feiertagseinstellungen die Wochentagseinstellungen übersteuern, sofern beides definiert ist. 

https://forum.fhem.de/index.php/topic,48106.msg932069.html#msg932069 (https://forum.fhem.de/index.php/topic,48106.msg932069.html#msg932069)

Viele Grüße
Jürgen
Moin,
sorry für die etwas späte Antwort, und FTUI kenne ich nicht daher kann ich dazu nur zum Teil was sagen...

Also:
Grundsätzlich geht $we (korrekterweise eigentlich: eine ähnliche Abfrage wie IsWe() bzw. ein get auf holiday-Devices) bei WeekDaytimer der normalen Wochentagssteuerung vor.
Kann es sein, dass Feiertage bei dir in FHEM allgemein nicht erkannt werden?

Insbesondere: Der Hinweis, dass !WE aus FTUI nicht funktioniert, deutet darauf hin, dass eine Änderung in der holiday2we-Behandlung in fhem.pl noch nicht angekommen ist. Bisher reichte es, via stateFormat den STATE von einem in holiday2we eingetragenen Device zu manipulieren, jetzt muß das Reading "state" korrekt gesetzt sein, STATE wird ignoriert.
Wenn das zutrifft, sollte man das von der FTUI-Seite aus fixen, denn das ist (jetzt) das aktuelle Verhalten von fhem.pl allgemein.



Ansonsten:
In Abstimmung mit igami bin ich grade dabei, an den Modulen (eigentlich nur am WeekdayTimer) ein paar Dinge zu ändern, v.a. bei Gelegenheit die Doppelung der Module zu beenden. Heating_Control dürfte daher auf mittlere Sicht nach Contrib gehen.

Wäre nett, wenn sich jemand am Testen beteiligen würde, eine erste Vorversion von WeekdayTimer, die auch die Heating_Control-Funktionalität mit umfaßt, ist hier zu finden: https://forum.fhem.de/index.php/topic,100179.0.html.

Gruß, Beta-User
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: JamBay am 30 Mai 2019, 19:47:31
Zitat von: Dietmar63 am 07 April 2015, 20:07:12
ja, das ist so. 
Ich habe  mich aus verschiedenen Gründen entschieden die Tagesangabe wie in DOIF zu ändern.
0 Sonntag
1 Montag
2 Dienstag
3 Mittwoch
4 ...
7 Wochenende  ($we)
8 Wochentag    (!$we)
Sehe ich das richtig, dass die Änderung vier(!) Jahre alt ist?
Müsste doch inzwischen jeder mit bekommen haben oder nicht?
Vielleicht kann man diese Meldung im Log irgendwann mal abstellen?
Nur mal so ein Vorschlag *duckundweg*
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Beta-User am 30 Mai 2019, 21:21:25
Zitat von: JamBay am 30 Mai 2019, 19:47:31
Vielleicht kann man diese Meldung im Log irgendwann mal abstellen?
Irgendwann mal war eben, danke für den Hinweis :) .
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Beta-User am 30 Juni 2019, 15:25:15
Zur Info: bzgl. der neuen Optionen in holiday2we mit weekEnd und noWeekEnd gibt es hier eine Testversion:
https://forum.fhem.de/index.php/topic,101899.msg953932.html#msg953932




Bei der Gelegenheit auch die Bitte an alle ggf. noch mitlesenden Heating_Control-Nutzer:
Bisher gab es keine Klagen von denen, die auf WeekdayTimer umgestellt hatten.
Will HC irgendwann mal ausphasen...
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 29 Januar 2020, 10:10:24
Hallo,

seit gestern nach einem Update habe ich folgende Fehlermeldungen im LOG. Hat sich an der Sprache was geaendert ?

2020.01.29 00:00:06 1: [HC.HK_BUERO] invalid daylist in HC.HK_BUERO <Mo,Di> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_BUERO] invalid daylist in HC.HK_BUERO <Mo,Di> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_BUERO] invalid daylist in HC.HK_BUERO <Mo,Di> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_BUERO] invalid daylist in HC.HK_BUERO <Mo,Di> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_KIDS] invalid daylist in HC.HK_KIDS <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_KIDS] invalid daylist in HC.HK_KIDS <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_KIDS] invalid daylist in HC.HK_KIDS <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_KIDS] invalid daylist in HC.HK_KIDS <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_WOHNEN_ZUHAUSE] invalid daylist in HC.HK_WOHNEN_ZUHAUSE <Mo-So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_WOHNEN_ZUHAUSE] invalid daylist in HC.HK_WOHNEN_ZUHAUSE <Mo-So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_MORGENS] invalid daylist in HC.HK_MORGENS <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_MORGENS] invalid daylist in HC.HK_MORGENS <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_MORGENS] invalid daylist in HC.HK_MORGENS <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_MORGENS] invalid daylist in HC.HK_MORGENS <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_SCHLAFEN] invalid daylist in HC.HK_SCHLAFEN <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_SCHLAFEN] invalid daylist in HC.HK_SCHLAFEN <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_SCHLAFEN] invalid daylist in HC.HK_SCHLAFEN <Mo-So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_SCHLAFEN] invalid daylist in HC.HK_SCHLAFEN <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_SCHLAFEN] invalid daylist in HC.HK_SCHLAFEN <Sa,So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_SCHLAFEN] invalid daylist in HC.HK_SCHLAFEN <Mo-So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_KIDS_URLAUB] invalid daylist in HC.HK_KIDS_URLAUB <Mo-So,$we> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_KIDS_URLAUB] invalid daylist in HC.HK_KIDS_URLAUB <Mo-So,$we> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_KIDS_URLAUB] invalid daylist in HC.HK_KIDS_URLAUB <Mo-So,$we> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.HK_KIDS_URLAUB] invalid daylist in HC.HK_KIDS_URLAUB <Mo-So,$we> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.Test] invalid daylist in HC.Test <Mo-So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.Test] invalid daylist in HC.Test <Mo-So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.Test] invalid daylist in HC.Test <Mo-So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)
2020.01.29 00:00:06 1: [HC.Test] invalid daylist in HC.Test <Mo-So> use one of 012345678 or (su|mo|tu|we|th|fr|sa|$we|!$we)


Internals:
   CHANGED   
   COMMAND   
   CONDITION  ((Value("DS_Heizen") eq "on") && ((Value("D_KW") % 2) == 0))
   DEF        HK_BUERO Mo,Di|06:00|21 Mo,Di|18:00|15 ((Value("DS_Heizen") eq "on") && ((Value("D_KW") % 2) == 0))
   DEVICE     HK_BUERO
   FUUID      5c4a157f-f33f-623c-ac28-37390b5134fe0c9a
   GlobalDaylistSpec
   LANGUAGE   en
   NAME       HC.HK_BUERO
   NR         188
   STATE      inactive
   STILLDONETIME 0
   TYPE       Heating_Control
   READINGS:
     2020-01-28 08:17:59   currValue       21
     2020-01-28 08:24:03   nextUpdate      1970-01-01 01:00:00
     2020-01-28 08:17:59   nextValue       15
     2020-01-28 08:24:03   state           inactive
   SWITCHINGTIMES:
     Mo,Di|06:00|21
     Mo,Di|18:00|15
   TIMER:
     HC.HK_BUERO_SetTimerOfDay:
       HASH       HC.HK_BUERO
       MODIFIER   SetTimerOfDay
       NAME       HC.HK_BUERO_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   dayNumber:
     !$we       8
     $we        7
     fr         5
     mo         1
     sa         6
     su         0
     th         4
     tu         2
     we         3
   helper:
     daysRegExp (su|mo|tu|we|th|fr|sa|\$we|\!\$we)
     daysRegExpMessage (su|mo|tu|we|th|fr|sa|$we|!$we)
     SWITCHINGTIME:
     WEDAYS:
       3          1
       4          1
   longDays:
     de:
       Sonntag
       Montag
       Dienstag
       Mittwoch
       Donnerstag
       Freitag
       Samstag
       Wochenende
       Werktags
     en:
       Sunday
       Monday
       Tuesday
       Wednesday
       Thursday
       Friday
       Saturday
       weekend
       weekdays
     fr:
       Dimanche
       Lundi
       Mardi
       Mercredi
       Jeudi
       Vendredi
       Samedi
       weekend
       jours de la semaine
     nl:
       Zondag
       Maandag
       Dinsdag
       Woensdag
       Donderdag
       Vrijdag
       Zaterdag
       weekend
       werkdagen
   profil:
     1:
       EPOCH      1580274000
       PARA       21
       TIME       06:00
       WE_Override 0
       TAGE:
     2:
       EPOCH      1580317200
       PARA       15
       TIME       18:00
       WE_Override 0
       TAGE:
   shortDays:
     de:
       so
       mo
       di
       mi
       do
       fr
       sa
       $we
       !$we
     en:
       su
       mo
       tu
       we
       th
       fr
       sa
       $we
       !$we
     fr:
       di
       lu
       ma
       me
       je
       ve
       sa
       $we
       !$we
     nl:
       zo
       ma
       di
       wo
       do
       vr
       za
       $we
       !$we
Attributes:
   commandTemplate set $NAME desiredTemperature $EVENT
   room       Heizung
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Beta-User am 29 Januar 2020, 10:38:27
Jein, geändert hat sich die Frage, wo der benutzte Standard herkommt. Den hat das Modul früher mal auf "de" gesetzt, heute kommt der aus "global". Würde also tippen, dass dort "EN" gesetzt ist...

Kannst du entweder zentral beheben (via global, dann nach save FHEM neu starten), oder du mußt bei jedem betroffenen WDT die Angabe ergänzen, dann paßt es auch wieder.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: cotecmania am 29 Januar 2020, 11:34:21
Hi,

in "global" war kein Attribut bzgl. Language gesetzt.
Habe dies nun erzeugt und auf DE gesetzt.

War das das, was Du meintest ?

Gruss
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Beta-User am 29 Januar 2020, 11:37:10
Zitat von: cotecmania am 29 Januar 2020, 11:34:21
War das das, was Du meintest ?
Ja.

Nach einem Neustart sollte dann auch wieder in den Internals (bei den WDT) "de" als LANGUAGE erscheinen.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: satprofi am 12 November 2022, 10:29:59
Hallo.
Bemerke gerade das mein Relais (Brenneransteuerung) jetzt alle 30 sec. ein/aus schaltet.
Verstehe aber nicht warum. Das Modul läuft schon 7 Jahre, weiss leider nicht mehr die definition des Aktors.
Wenn ich den Aktor manuell schalte ,ok. Sobald aber HCS auf off geht schaltet er den Aktor auch ab. Habe aber HCS disabled, trotzdem arbeitet das Modul weiter.
Bin echt am rätseln.
Titel: Antw:Neues Modul - Heating_Control, WeekdayTimer
Beitrag von: Beta-User am 12 November 2022, 18:57:27
Der WeekdayTimer ist es sehr sicher nicht, der im 30-Sek.-Rhythmus schaltet.