NEWS
Heizkörperthermostat Fritz DECT 301
-
so:
Ich speichere die eingestellte Temperatur in einer Variable und nach 10 Minuten wieder an, oder wenn die Tür geschlossen wird. Da im Winter zum Lüften die Tür eh nicht so lange auf ist, passt das ganz gut.
-
Es gibt übrigens noch eine andere Möglichkeit, anstatt über die Temperatur zu steuern.
Wenn ich den Comet-Thermostat wegen Fenster/Tür zu machen will, senke ich nicht die Zieltemperatur sondern stelle den Datenpunkt mode um.
0 = automatisch, 1=zu, 2=auf
Vorteil:
Wenn ich nach mode 1 wieder auf mode 0 schalte, setzt er sein vorheriges Programm fort, ohne dass ich berücksichtigen muss, welche Temperatur eingestellt war.
Vorsicht aber mit mode 2, ich glaube dann macht das Ventil voll auf, sozusagen ein boost
-
Oha! Das ist ja hochinteressant.
Hast du schon mal versucht ob die Werte in Mode dann auch eingestellt bleiben?
Wenn ich bei mir per Script eine zeitgesteuerte Temperaturerhöhung auslösen will wird jedes mal nach max. 15 Minuten die Zieltemperatur mit dem Sollwert überschrieben.
Wenn der Effekt bei der Mode Einstellung weg ist wäre das eine perfekte Lösung für mein Problem.
-
Es gibt übrigens noch eine andere Möglichkeit, anstatt über die Temperatur zu steuern.
Wenn ich den Comet-Thermostat wegen Fenster/Tür zu machen will, senke ich nicht die Zieltemperatur sondern stelle den Datenpunkt mode um.
0 = automatisch, 1=zu, 2=auf
Vorteil:
Wenn ich nach mode 1 wieder auf mode 0 schalte, setzt er sein vorheriges Programm fort, ohne dass ich berücksichtigen muss, welche Temperatur eingestellt war.
Vorsicht aber mit mode 2, ich glaube dann macht das Ventil voll auf, sozusagen ein boost `
ja genau so ist es. Das sollter dieser eintrag sein:
-
@umbm: Herzlichen Dank für den Hinweis.
Endlich scheint meine Zeitgesteuerte Boost Funktion zu arbeiten.
Falls das jemand benötigt:
Boost wird ausgelöst über einen Dash Button und läuft für 60 Minuten.
Das dient bei mir dazu die Heizung im Bad für einige Zeit zu erhöhen und die Grundsteuerung auszuschalten.
Gesteuert wird die Heizung über das Script von looxer01: viewtopic.php?f=21&t=10096
Der Countdown lässt sich in VIS anzeigen. (Kann entfernt werden falls nicht benötigt)
Zeit ist im Script individuell einstellbar:
const idTaster = "amazon-dash.0.00-fc-8b-xx-xx-xx.pressed"/*pressed*/; const idBoost = "fritzdect.0.Comet_1196006xxxxx.mode"; const idVis = "javascript.0.Heizung.LaufzeitBad"; // Anzeige Restdauer in Minuten var cnt = getState(idVis).val; var timer = null; function countDown() { cnt--; setState(idVis, cnt, true); if(cnt <= 0) { clearInterval(timer); setState(idBoost, 0); } } on({id: idTaster, val: true}, function () { setState(idBoost, 2); cnt = 60; setState(idVis, cnt, true); if(timer) clearInterval(timer); timer = setInterval(countDown, 60000); // jede Minute });
-
Eigentlich macht ein Thermostat immer voll auf und regelt erst wieder runter, wenn die eingestellte Temperatur eingestellt ist. So arbeiten zumindest mal die meisten. Kann sein, dass es bei den smarten Dingern bisschen anders ist :lol:
-
Eigentlich macht ein Thermostat immer voll auf und regelt erst wieder runter, wenn die eingestellte Temperatur eingestellt ist. So arbeiten zumindest mal die meisten. Kann sein, dass es bei den smarten Dingern bisschen anders ist :lol: `
Stimmt schon, aber bei den FritzDect ist es eben zusätzlich so das du keine wirkliche manuelle Temperatur einstellen kannst. Hast du in der Box beispielsweise 22°C hinterlegt und du stellst die manuell auf 28°C geht der Thermostat auf, aber nach spätestens 15 Minuten wieder auf den Wert in der Box zurück. Mit der Heizungssteuerung aus dem ioBroker überschreibe ich diese Werte alle 5 Minuten.
Über die "mode" Einstellung ist diese Automatik komplett ausgehebelt.
Theoretisch könnte ich jetzt auch den Thermostat über externe Temperatursensoren selbst regeln, aber das wird wohl eher was für lange Winterabende.
Die Hommatic Thermostate arbeiten übrigens mit Zwischenstellungen wie mir erst kürzlich erklärt wurde.
-
Bist da sicher? Ich habe in der Fritz gar keine Temperatur und Zeitplan eingestellt und wenn mein Script nicht läuft, dann bleibt der Thermostat auch da stehen, wo er war. Somit regelt die Fritz hier gar nichts mehr und mein Script übernimmt die komplette Arbeit. Oder ich übersehe etwas.
-
Wenn bei mir das Script nicht läuft übernimmt die Fritzbox die Regelung.
Du kannst doch in der Box gar nicht die Regelung abschalten. Einzig dauernd Tag- oder Nachttemperatur kannst du einstellen.
Bei mir funkt die Fritzbox 1-2 mal am Tag dazwischen. Aber da das dann immer nur für max. 5 Minuten ist stört das nicht.
Das kannst du doch leicht selber prüfen. Stelle alles auf beispielsweise Tagtemperatur und schalte dein Script ab. Nach ein paar Minuten wird das aus der Box auf die Temperatur geregelt.
Das ist aber nach meiner Meinung gar nicht mal soo schlecht. Damit habe ich noch eine Fallback-Notafallregelung die dann zwar nicht mehr auf Tag/Nacht regelt, aber zumindest ohne ioBroker läuft.
-
Hm, müsste ich mal genau anschauen. Mein Script lief in der letzten Heizsaison nur von November bis März und hatte dann als letzte Aktion die Heizkörper ausgeschaltet. So das auch "AUS" im Display steht und wenn ich mal nachgeschaut hatte, ob das noch auf AUS steht, dann war das auch der Fall. Aus wurde über das Script mit 0°C gesetzt.
-
Aus im Display steht aber nur wenn "mode" auf 1 steht. Das habe ich letztes Jahr mit einem Drehen des Rads bis "aus" gelöst. Das das per script steht geht wusste ich bis eben nicht.
-
Ich habe jetzt mal den Historie Adapter drauf angesetzt und trace fleißig mit. Da wird sich zeigen, ob die Fritz da noch die Finger mit drin hat oder nicht. Mit den Mode Einstellungen hatte ich noch gar nichts gemacht, sondern nur über den Target Temperatur DP. Könnte ich mal mein Script überarbeiten
Zurzeit läuft die Steuerung eh etwas chaotisch, weil iCal wieder ein Problem mit Serienterminen hat und da alles irgendwie nicht ganz passt. Wochenende wird z.B. erst seit heute richtig erkannt. Bis gestern war angeblich noch Spätdienst, obwohl letzte Woche eigentlich Frühdienst war. Das war schon mal und da gab's schnell eine neue Version. Leider scheint der Entwickler im Moment etwas beschäftigt zu sein und hat keine Zeit.
Hast Du vielleicht hier eine mögliche Alternative zu iCal?
-
Also irgendwie stehe ich scheinbar mit Blockly auf dem Kriegsfuß.
Ich habe einen Datenpunkt Namens Temperaturwunsch_Badezimmer geschaffen. Wenn eines der beiden Fenster aufgeht soll IOBroker die Temperatur am Heizkörper auf 5° stellen, wenn Fenster wieder zu, dann soll er die Wunschtemperatur als "target_temp" setzen.
Temperatur Badezimmer kommt übrigens vom Temperatursensor von Xiaomi, auch die Fensterkontakte sind daher.
In einer weiteren Version habe ich auch versucht, statt die Temperatur zu beeinflussen, den mode von 0 auf 1 und später wieder auf 0 zu setzen. Leider vollständig ohne sichtbares Ergebnis im Objekt DECT 301.
Hier mal mein kleines Blockly, vielleicht habe ich ja etwas übersehen…...
auf dem Bild habe ich den Wert runtergesetzt auf 5 - das habe ich zwischendurch geändert in 5 °C - aber auch kein Ergebnis
-
Das liegt wohl daran, dass Deine Blockly Logik etwas Kopf steht.
Das falls muss zuerst das Objekt haben, dann was damit sein soll und nicht umgekehrt.
-
Danke für den Hinweis, habe das geändert.
Ich habe das gerade umgeschrieben und gestartet. Wie lange sollte es dauern, bis eine Änderung im Objekt (301 im iobroker) zu sehen ist?
Die Steuerung in der Fritz Box habe ich runtergestellt auf "AUS" und den Zeitplan komplett auf Spartemperatur gestellt. (habe irgendwo gelesen, dass die FritzBox sonst dazwischenfunkt)
Jetzt bekomme ich folgende Fehlermeldungen:
17:04:22.861 [error] javascript.0 script.js.System_intern.Temperatur.OG.Temperatur_Badezimmer: Cannot use sync getState, use callback instead
getState("mihome.0.devices.magnet_158d0002434b1d.state", function (err, state){}); or disable the "Do not subscribe all
states on start" option in instance configuration.
17:04:22.862 [error] javascript.0 at Object. (script.js.System_intern.Temperatur.OG.Temperatur_Badezimmer:2:66)
17:04:22.873 [error] javascript.0 script.js.System_intern.Temperatur.OG.Temperatur_Badezimmer: Cannot use sync getState, use callback instead
getState("mihome.0.devices.magnet_158d0002434b1d.state", function (err, state){}); or disable the "Do not subscribe all
states on start" option in instance configuration.
17:04:22.874 [error] javascript.0 at Object. (script.js.System_intern.Temperatur.OG.Temperatur_Badezimmer:2:66)
-
Okay, nach einigem Testen musste ich feststellen, dass mein Blockly bereits am Anfang hakt.
Solange ich ein Fenster auswerte kann ich den Thermostaten (DECT 301) regeln - hier habe ich mich dazu entschieden den Mode zu steuern, also Automatik / Aus / Auf.
Das funktioniert bis hierhin bestens.
Nun habe ich in mehreren Räumen jedoch zwei Fenster.
Wenn ich anfange wie in meinem Blockly Beispiel zwei Fensterkontakte zu überwachen bekomme ich Probleme und das Skript läuft nicht mehr.
Wie muss ich das zusammenbauen, dass ich zwei Fenster überwachen kann?
Danke im voraus,
Bernd, der verzweifelte
-
Prinzipiell würde ich sagen:
Falls: Fenster 1 = auf oder Fenster 2 = auf
Als Trigger jeweils Fenster 1 und 2 ein suf Änderung Überwachen
-
Ich habe das auf zwei verschiedenen Wegen versucht.
bei allen Varianten bin ich auf halben Wege erfolgreich!
Jeweils, wenn das rechte Fenster geöffnet wird, ändert sich wunshgemäß der Wert im "mode" von "AUTO" auf "AUS"
Beim schließen geht es korrekt zurück auf "AUTO"
Öffne ich das linke Fenster, regt sich gar nichts…... und ich habe keine Idee warum das so ist bzw. wie ich das lösen kann.
Hier mal die 3 getesteten Varianten:
-
Du triggerst nach meiner Meinung auf das rechte Fenster.
Also wenn du dein Script von oben liest:
Falls "rechts offen" wurde geändert…
Hast du mal versucht die "oder" Verknüpfung an der Stelle einzusetzen?
Also: Falls "Wert von ObjId1 ODER Wert von ObjId2" wurde geändert....
-
Genau das habe ich doch in den ersten beiden Varianten versucht - wenn ich Dich richtig verstehe.
Putzig ist, dass im der unteren Version triggere ich zuerst das rechte Fenster - und darauf reagiert auch der State im Objekt (auf das linke Fenster nicht)
in den ersten beiden Varianten triggere ich zuerst das linke Fenster - aber der State im Objekt ändert sich nur durch das rechte Fenster.