NEWS
Warnmeldung in simplem Blockly mit KNX - bitte um Hilfe
-
Hallo zusammen,
ich bin grade am experimentieren mit Blockly.
Hier ein kleines Beispielprogramm:
schedule("*/15 * * * * *", function () { setState("knx.0.UG.Licht.Licht_Roger_AN_AUS"/*Licht Roger AN/AUS*/, 0); setStateDelayed("knx.0.UG.Licht.Licht_Roger_AN_AUS"/*Licht Roger AN/AUS*/, 1, 1000, false); });Ergebnis sind immer Warnings - ansich funktioniert es aber. Licht blinkt wie es soll.
Output:
14.12.2020, 23:17:24.305 [info ]: javascript.0 (1463) Start javascript script.js.common.Test2 14.12.2020, 23:17:24.308 [info ]: javascript.0 (1463) script.js.common.Test2: registered 0 subscriptions and 1 schedule 14.12.2020, 23:17:30.001 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:17:45.006 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:18:00.003 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:18:15.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:18:30.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:18:45.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:19:00.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:19:15.001 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:19:30.001 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:19:45.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:20:00.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:20:15.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:20:30.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:20:45.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:21:00.001 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:21:15.003 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:21:30.006 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3)Das Warning kommt bei jedem Durchlauf. Erst wenn ich das Setzen der Lampen weg mache, geht es.
Hier ein anderes Script, auch simpel:
on({id: 'knx.0.EG.Heizung.Kamintemp_Wasser', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; console.error(parseFloat((obj.state ? obj.state.val : ""))); console.error(parseFloat(getState("knx.0.UG.Heizung.Speichertemp_1_3").val)); if (parseFloat((obj.state ? obj.state.val : "")) > parseFloat(getState("knx.0.UG.Heizung.Speichertemp_1_3").val) + 6 && parseFloat((obj.state ? obj.state.val : "")) > 70) { console.log('Kamin AN wegen richtiger Temp'); setState("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 1); } else if (parseFloat((obj.state ? obj.state.val : "")) > 80) { console.log('Kamin AN wegen >80 Grad'); setState("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 1); } else if (parseFloat((obj.state ? obj.state.val : "")) <= 65) { console.log('Kamin AUS wegen <65 Grad'); setState("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 0); } if (parseFloat((obj.state ? obj.state.val : "")) > 85) { setStateDelayed("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 1, 1000, false); setStateDelayed("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 0, 1000, false); } });Auch hier Warnings und Meldungen: (Die Errors sind von mir generierter Debug-Output)
14.12.2020, 23:23:13.116 [info ]: javascript.0 (1463) Start javascript script.js.common.Test1 14.12.2020, 23:23:13.121 [info ]: javascript.0 (1463) script.js.common.Test1: subscribe: {"pattern":{"id":"knx.0.EG.Heizung.Kamintemp_Wasser","change":"ne","q":0},"name":"script.js.common.Test1"} 14.12.2020, 23:23:13.122 [info ]: javascript.0 (1463) script.js.common.Test1: registered 1 subscription and 0 schedules 14.12.2020, 23:23:33.250 [error]: javascript.0 (1463) script.js.common.Test1: 71.8 14.12.2020, 23:23:33.250 [info ]: javascript.0 (1463) script.js.common.Test1: getState(id=knx.0.UG.Heizung.Speichertemp_1_3, timerId=undefined) => {"val":55.2,"ack":true,"ts":1607984580325,"q":0,"from":"system.adapter.knx.0","user":"system.user.admin","lc":1607982121589} 14.12.2020, 23:23:33.250 [error]: javascript.0 (1463) script.js.common.Test1: 55.2 14.12.2020, 23:23:33.255 [info ]: javascript.0 (1463) script.js.common.Test1: getState(id=knx.0.UG.Heizung.Speichertemp_1_3, timerId=undefined) => {"val":55.2,"ack":true,"ts":1607984580325,"q":0,"from":"system.adapter.knx.0","user":"system.user.admin","lc":1607982121589} 14.12.2020, 23:23:33.255 [info ]: javascript.0 (1463) script.js.common.Test1: Kamin AN wegen richtiger Temp 14.12.2020, 23:23:33.255 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test1:8:5) 14.12.2020, 23:23:33.255 [info ]: javascript.0 (1463) script.js.common.Test1: setForeignState(id=knx.0.UG.Licht.Licht_Werkstatt_AN_AUS, state=1) 14.12.2020, 23:24:28.244 [error]: javascript.0 (1463) script.js.common.Test1: 72.28 14.12.2020, 23:24:28.244 [info ]: javascript.0 (1463) script.js.common.Test1: getState(id=knx.0.UG.Heizung.Speichertemp_1_3, timerId=undefined) => {"val":55.2,"ack":true,"ts":1607984640319,"q":0,"from":"system.adapter.knx.0","user":"system.user.admin","lc":1607982121589} 14.12.2020, 23:24:28.244 [error]: javascript.0 (1463) script.js.common.Test1: 55.2 14.12.2020, 23:24:28.244 [info ]: javascript.0 (1463) script.js.common.Test1: getState(id=knx.0.UG.Heizung.Speichertemp_1_3, timerId=undefined) => {"val":55.2,"ack":true,"ts":1607984640319,"q":0,"from":"system.adapter.knx.0","user":"system.user.admin","lc":1607982121589} 14.12.2020, 23:24:28.244 [info ]: javascript.0 (1463) script.js.common.Test1: Kamin AN wegen richtiger Temp 14.12.2020, 23:24:28.245 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test1:8:5) 14.12.2020, 23:24:28.245 [info ]: javascript.0 (1463) script.js.common.Test1: setForeignState(id=knx.0.UG.Licht.Licht_Werkstatt_AN_AUS, state=1)Könnt ihr mir bitte nen Tipp geben was falsch läuft?
Gruß
Roger -
Hallo zusammen,
ich bin grade am experimentieren mit Blockly.
Hier ein kleines Beispielprogramm:
schedule("*/15 * * * * *", function () { setState("knx.0.UG.Licht.Licht_Roger_AN_AUS"/*Licht Roger AN/AUS*/, 0); setStateDelayed("knx.0.UG.Licht.Licht_Roger_AN_AUS"/*Licht Roger AN/AUS*/, 1, 1000, false); });Ergebnis sind immer Warnings - ansich funktioniert es aber. Licht blinkt wie es soll.
Output:
14.12.2020, 23:17:24.305 [info ]: javascript.0 (1463) Start javascript script.js.common.Test2 14.12.2020, 23:17:24.308 [info ]: javascript.0 (1463) script.js.common.Test2: registered 0 subscriptions and 1 schedule 14.12.2020, 23:17:30.001 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:17:45.006 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:18:00.003 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:18:15.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:18:30.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:18:45.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:19:00.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:19:15.001 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:19:30.001 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:19:45.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:20:00.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:20:15.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:20:30.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:20:45.002 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:21:00.001 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:21:15.003 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3) 14.12.2020, 23:21:30.006 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test2:2:3)Das Warning kommt bei jedem Durchlauf. Erst wenn ich das Setzen der Lampen weg mache, geht es.
Hier ein anderes Script, auch simpel:
on({id: 'knx.0.EG.Heizung.Kamintemp_Wasser', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; console.error(parseFloat((obj.state ? obj.state.val : ""))); console.error(parseFloat(getState("knx.0.UG.Heizung.Speichertemp_1_3").val)); if (parseFloat((obj.state ? obj.state.val : "")) > parseFloat(getState("knx.0.UG.Heizung.Speichertemp_1_3").val) + 6 && parseFloat((obj.state ? obj.state.val : "")) > 70) { console.log('Kamin AN wegen richtiger Temp'); setState("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 1); } else if (parseFloat((obj.state ? obj.state.val : "")) > 80) { console.log('Kamin AN wegen >80 Grad'); setState("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 1); } else if (parseFloat((obj.state ? obj.state.val : "")) <= 65) { console.log('Kamin AUS wegen <65 Grad'); setState("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 0); } if (parseFloat((obj.state ? obj.state.val : "")) > 85) { setStateDelayed("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 1, 1000, false); setStateDelayed("knx.0.UG.Licht.Licht_Werkstatt_AN_AUS"/*Licht Werkstatt AN/AUS*/, 0, 1000, false); } });Auch hier Warnings und Meldungen: (Die Errors sind von mir generierter Debug-Output)
14.12.2020, 23:23:13.116 [info ]: javascript.0 (1463) Start javascript script.js.common.Test1 14.12.2020, 23:23:13.121 [info ]: javascript.0 (1463) script.js.common.Test1: subscribe: {"pattern":{"id":"knx.0.EG.Heizung.Kamintemp_Wasser","change":"ne","q":0},"name":"script.js.common.Test1"} 14.12.2020, 23:23:13.122 [info ]: javascript.0 (1463) script.js.common.Test1: registered 1 subscription and 0 schedules 14.12.2020, 23:23:33.250 [error]: javascript.0 (1463) script.js.common.Test1: 71.8 14.12.2020, 23:23:33.250 [info ]: javascript.0 (1463) script.js.common.Test1: getState(id=knx.0.UG.Heizung.Speichertemp_1_3, timerId=undefined) => {"val":55.2,"ack":true,"ts":1607984580325,"q":0,"from":"system.adapter.knx.0","user":"system.user.admin","lc":1607982121589} 14.12.2020, 23:23:33.250 [error]: javascript.0 (1463) script.js.common.Test1: 55.2 14.12.2020, 23:23:33.255 [info ]: javascript.0 (1463) script.js.common.Test1: getState(id=knx.0.UG.Heizung.Speichertemp_1_3, timerId=undefined) => {"val":55.2,"ack":true,"ts":1607984580325,"q":0,"from":"system.adapter.knx.0","user":"system.user.admin","lc":1607982121589} 14.12.2020, 23:23:33.255 [info ]: javascript.0 (1463) script.js.common.Test1: Kamin AN wegen richtiger Temp 14.12.2020, 23:23:33.255 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test1:8:5) 14.12.2020, 23:23:33.255 [info ]: javascript.0 (1463) script.js.common.Test1: setForeignState(id=knx.0.UG.Licht.Licht_Werkstatt_AN_AUS, state=1) 14.12.2020, 23:24:28.244 [error]: javascript.0 (1463) script.js.common.Test1: 72.28 14.12.2020, 23:24:28.244 [info ]: javascript.0 (1463) script.js.common.Test1: getState(id=knx.0.UG.Heizung.Speichertemp_1_3, timerId=undefined) => {"val":55.2,"ack":true,"ts":1607984640319,"q":0,"from":"system.adapter.knx.0","user":"system.user.admin","lc":1607982121589} 14.12.2020, 23:24:28.244 [error]: javascript.0 (1463) script.js.common.Test1: 55.2 14.12.2020, 23:24:28.244 [info ]: javascript.0 (1463) script.js.common.Test1: getState(id=knx.0.UG.Heizung.Speichertemp_1_3, timerId=undefined) => {"val":55.2,"ack":true,"ts":1607984640319,"q":0,"from":"system.adapter.knx.0","user":"system.user.admin","lc":1607982121589} 14.12.2020, 23:24:28.244 [info ]: javascript.0 (1463) script.js.common.Test1: Kamin AN wegen richtiger Temp 14.12.2020, 23:24:28.245 [warn ]: javascript.0 (1463) at Object.<anonymous> (script.js.common.Test1:8:5) 14.12.2020, 23:24:28.245 [info ]: javascript.0 (1463) script.js.common.Test1: setForeignState(id=knx.0.UG.Licht.Licht_Werkstatt_AN_AUS, state=1)Könnt ihr mir bitte nen Tipp geben was falsch läuft?
Gruß
Roger@Shadowblues könntest du bitte den cod in die entsprechende tags packen...

-
@Shadowblues könntest du bitte den cod in die entsprechende tags packen...

@arteck Done :-)
-
@arteck Done :-)
@Shadowblues Aber nur zur Hälfte... ;-)
-
@Shadowblues Aber nur zur Hälfte... ;-)
@Thomas-Braun ??? Wieso das? Muss der Logoutput da auch rein?
-
@Thomas-Braun ??? Wieso das? Muss der Logoutput da auch rein?
Ok, ich habe mal weiter rumgespielt. (Was man doch so alles im Homeoffice neben TelKos macht)
Zumindest am Beispiel 1 bin ich so weit, dass es ohne Fehlermeldungen / Warnings läuft.
Wenn ich an den ersten Befehl (Schalte Lampe aus) eine Verzögerung anhänge, dann geht alles.
Ohne Verzögerung kommen gleich wieder die genannten Einträge.Scheint also irgendwie n Timingproblem mit dem KNX Adapter zu sein.
-
Ok, ich habe mal weiter rumgespielt. (Was man doch so alles im Homeoffice neben TelKos macht)
Zumindest am Beispiel 1 bin ich so weit, dass es ohne Fehlermeldungen / Warnings läuft.
Wenn ich an den ersten Befehl (Schalte Lampe aus) eine Verzögerung anhänge, dann geht alles.
Ohne Verzögerung kommen gleich wieder die genannten Einträge.Scheint also irgendwie n Timingproblem mit dem KNX Adapter zu sein.
@shadowblues Hallo, diese Effekte beruhen nicht nur aufd em KNX Adapter, sondern resultieren aus dem Setup des IObroker sprich anzahl der laufenden Adapter, wieiviel wird mit JS gearbeitet, welche Hardware ist verbaut etc. Mit dem Ansatz der "Verzögerung" in JS fährst du sehr gut. Ist das Thema damit gelöst? Dann bitte auch so markieren (siehe Grundregeln der open Issues hier im Forum). Grüße
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden