NEWS
Test Intext App v0.0.x
-
@plchome-0 said in Test Intext App v0.0.x:
Die Meldung hab ich auch, scheint aus der Cloud zu kommen. Ich gucke es mir mal an. Wenn die Meldung auftritt, zeigt die APP invalid Operation, wenn man einen Refresh macht. Eventuell eine Überlastung. Das tritt nur zu bestimmten Zeiten auf.
thx für die Info
-
@tklein said in Test Intext App v0.0.x:
@plchome-0 update habe ich jetzt auch von "extern" reinbekommen. Machst du den Adapter jetzt weiter?
Ne, aber am Steuern habe ich rumgefummelt. Wenn ich da was verkackt habe, sollte ich auch wieder in Ordnung bringen
-
Hallo nochmal,
so wie ich das sehe, zeigt der DP "heat" an, ob gerade geheitzt wird oder nicht. Kann ich an einem anderen DP erkennen, ob die Heizung angeschaltet (muss halt nicht heizen, falls Isttemp noch vorhanden) ist?
Gruß
ThomasEDIT: Bedingt durch ein Delay zeigt "heat" doch an, ob die Heizungsautomatik aktiviert wurde. Dann die Frage, ob es einen DP gibt, dass gerade "aktiv" geheitzt wird.
-
@tklein said in Test Intext App v0.0.x:
Hallo nochmal,
so wie ich das sehe, zeigt der DP "heat" an, ob gerade geheitzt wird oder nicht. Kann ich an einem anderen DP erkennen, ob die Heizung angeschaltet (muss halt nicht heizen, falls Isttemp noch vorhanden) ist?Also ich sehe keine Änderung in den Values wenn die Heizung die Zieltemperatur erreicht hat, auch in der App wird das nicht angezeigt.
Lediglich am Bedienteil wird die LED grün.
Oder was meinst du? -
@plchome-0 said in Test Intext App v0.0.x:
Lediglich am Bedienteil wird die LED grün.
Oder was meinst du?Ja genau das wäre es. So sieht man, ob die Heizung aktiv heizt.
-
@tklein Kannst ja mal ne E-Mail an Intex schreiben, warum man das in der App nicht erkennen kann und dir nen Textbaustein abholen
-
@plchome-0 said in Test Intext App v0.0.x:
@tklein Kannst ja mal ne E-Mail an Intex schreiben, warum man das in der App nicht erkennen kann und dir nen Textbaustein abholen
ich lass es auf ein Versuch ankommen
-
@tklein said in Test Intext App v0.0.x:
intex.0 2022-06-05 14:19:51.142 error at Intex.onStateChange (/opt/iobroker/node_modules/iobroker.intex/main.js:581:37)
Ich hab den Fehler gefunden....
-
-
@plchome-0
Hallo,
wie hast du das mit der homebridge Anbindung gemacht?
"Ich hab den jetzt Pool über MQTT in der Homebridge darüber dann in Alexa und Handy."
Ich finde kein plugin für intex...Danke,
Peter -
@drheck Ja, ich hab alles über MQTT an die Homebridge angeklemmt. Allerdings ist die Alexa-Anbindung nun auch kostenpflichtig, aber mit 2$ im Monat fair
ioBroker Alexa kostet aber auch nur 1,75 im Monat.... -
@plchome-0 Okay. Danke für die Info. Aber wie mache ich das über MQTT? Gibt es dazu eine Anleitung?
-
Hallo plchome,
ist das Skript komplett und kann man dein Skript kopieren. Ich habe die selbe Konstellation mit dem Intex Pool und PV Anlage.
Grüße
-
@diamand2k22 Es schauf auf den Akku füllstand...
let autoheat = false //const pvSOC='growatt.0.359213.devices.NNCJA2400C.statusData.SOC'/*Soc*/; //const pvOK='growatt.0.info.connection'; const pvSOC='0_userdata.0.grott.values.SOC'/*Soc*/; const pvOK='0_userdata.0.grott.buffered'; const poolPower = "intex.0.e8fa6219-64f7-4aa2-bac4-b92f37ebf9af.control.Power" const poolHeat = "intex.0.e8fa6219-64f7-4aa2-bac4-b92f37ebf9af.control.Heat" const poolSanitzer = "intex.0.e8fa6219-64f7-4aa2-bac4-b92f37ebf9af.control.Sanitzer" const poolTemperatur = "intex.0.e8fa6219-64f7-4aa2-bac4-b92f37ebf9af.control.Temperature" const poolTargetTemperature = "intex.0.e8fa6219-64f7-4aa2-bac4-b92f37ebf9af.control.TargetTemperature" start() async function start() { let state = await getStateAsync(pvSOC); doHeat(state); } let run=false schedule('0,15,30,45 * * * *', doSchedule) let errcount = 0 async function doSchedule(){ if (run) { log ('double run') return } try { run = true log ('check') let [ok, temp, state, heat] = await Promise.all([getStateAsync(pvOK), getStateAsync(poolTemperatur), getStateAsync(pvSOC), getStateAsync(poolHeat)]) //if (ok.val == false) if (ok.val != "no") {errcount++} else {errcount = 0}; //if (autoheat && ok.val == false && errcount >= 3) { if (autoheat && ok.val != "no" && errcount >= 3) { if (heat.val) setState(poolHeat,false,false); log ('emergency off') autoheat = false; sendTo("email.0", { //from: "iobroker@mydomain.com", //to: "aabbcc@gmail.com, xxyyzz@gmail.com", // comma separated multiple recipients. subject: "Der Inverter ist seit 45min gestört", text: "Die Poolheizung wird bei "+temp.val+"°C abgestellt..." }); } else { doHeat(state); } } finally { run=false } } on({id: pvSOC, change: "ne"},(obj)=>{doHeat(obj.state)}); async function doHeat(state) { let h = (new Date()).getHours() let [ok, temp, target, heat, sanitzer] = await Promise.all([getStateAsync(pvOK), getStateAsync(poolTemperatur), getStateAsync(poolTargetTemperature), getStateAsync(poolHeat), getStateAsync(poolSanitzer)]) //if (!autoheat && (ok.val == true) && (((state.val >= 30) && (h >= 4) && (h <= 8)) ||((state.val >= 60) && (h >= 9) && (h <= 10)) || ((state.val >= 85) && (h >= 11) && (h <= 15)))) { if (!autoheat && (ok.val == "no") && (((state.val >= 30) && (h >= 4) && (h <= 8)) ||((state.val >= 60) && (h >= 9) && (h <= 10)) || ((state.val >= 85) && (h >= 11) && (h <= 15)))) { autoheat = true; //setState(poolPower,true,false); if (sanitzer.val) setState(poolSanitzer,false,false); if (!heat.val) setState(poolHeat,true,false); log ('on') sendTo("email.0", { //from: "iobroker@mydomain.com", //to: "aabbcc@gmail.com, xxyyzz@gmail.com", // comma separated multiple recipients. subject: "Es ist viel Sonne am Himmel", text: "Der Pool wird bei "+temp.val+"°C auf "+target.val+"°C geheitzt..." }); } else if (autoheat && (((state.val < 80) && (h > 12) ) || ((state.val < 95) && (h > 17)) || ((state.val < 55) && (h >= 9) && (h <= 12))|| ((state.val < 29) && (h >= 4) && (h <= 8)))) { autoheat = false; if (heat.val) setState(poolHeat,false,false); log ('off') sendTo("email.0", { //from: "iobroker@mydomain.com", //to: "aabbcc@gmail.com, xxyyzz@gmail.com", // comma separated multiple recipients. subject: "Die Sonne geht weg", text: "Die Poolheizung wird bei "+temp.val+"°C abgestellt..." }); } };
-
-
-
@diamand2k22
doSchedule prüft ob der Inverter erreichbar ist und schaltet dann ab
doHeat prüft den Füllstand des Akku und die Uhrzeit -
ok danke, kannst du da eine Vorlage posten? ich weiß du hast dir da viel Mühe gemacht, aber stehe noch am Anfang was JavaSscript betrifft und tu mich da etwas schwer, mit blockly gehts da so einigermaßen
Grüße
-
@diamand2k22 Mehr als das Script habe ich nicht.
-
ok trotzdem danke! dann schau ich mal, dass ich mir was zusammen bastel