NEWS
Bier maischen Script mit Blockly
-
Puh da kann ich wenig helfen da noch ein älteres System.
Zumindest sollte hinter Datenpunkt Bierbrauen ein true oder false stehen.
Hattest du ja unter Vis.0 gehabt.
Scheint der Datenpunkt falsch angelegt zu sein.
Meine Datenpunkte liegen unter Javascript.0, scriptEnabled
Im Script mußt du nachher noch ändern Objekt Datenpunkt Bierbrauen von VIS.0
neu ist ja Javascript.0
-
Ich glaub, ich werde noch irre hier. Auf einmal passiert nun das:
2 Datenpunkte haben auf einmal true / false und ein Unterordner <scriptenabled>ist urplötzlich entstanden. Ich verstehe echt nur noch Bahnhof.Muss ich evtl. ne Woche warten, bis sich alle Datenpunkte entschieden haben, ob sie jetzt aktiv werden wollen oder nicht??? :?: :?: :?: :o</scriptenabled>
-
Versuch mal im Script Bierbrauen Objekt zu ändern von Vis.0 nach Javascript.0.
Danach ein reboot.
Da war was mit automatischer Übernahme.
Da jetzt Anlage und Aufheizen da sind wird noch ein anderes script ausgeführt.
Ist ja im aktuellen script nicht enthalten.
Alte scripte hast du ausgeschaltet ?
Wenn nix hilft Backup machen, danach alle alten scripte löschen.
Nur das aktuelle behalten.
Konsole:
cd /opt/iobroker ( hinter cd ist ein Leerzeichen )
sudo iobroker backup
5230_25.01_java-v1.jpg -
Alles probiert. Neu verlinkt, Sudo poweroff; dann neu gestartet, keine Änderung:
Im Log seh ich jetzt auch keine Ungereimtheiten…
Mein Gott, es muss doch eigentlich funktionieren. Wieso tut es das nicht?????
-
Keine Ahnung,
mach ein Backup, lösche das alte.
Das script ist ja ok, da stimmt was nicht mit den Datenpunkten.
Neu starten ist bei mir sudo reboot.
Shut off hört sich an nach sudo shutdown.
-
OK, Backup ist durch, alle anderen Scripte sind gelöscht, reboot, das gleiche Ergebnis. Ich lösche jetzt alle f***ng Datenpunkte noch einmal und lege sie neu an. Irgendwie muss das doch funktionieren.
btw.: wie sichere ich das Backup eigentlich zurück??
[edit]:sudo reboot funzt offensichtlich beim raspi nicht. sudo shutdown oder eben poweroff. und dann muss man ihm eh das Steckerchen ziehen.
[edit²]: so, alle datenpunkte neu angelegt und als Standard angehakt. Jetzt sind alle true, obwohl das Script noch gra nicht läuft. Und es ändert sich auch nix, wenn es läuft. Grübel
-
Besser wäre die SD Karte zu sichern.
Rückspielen:
cd /opt/iobroker
sudo iobroker stop
sudo iobroker restore 0
sudo iobroker start
Danach Adapter neu starten.
sudo iobroker start all habe ich noch nicht getestet.
Bei sudo iobroker restore 0 wird das letzte Backup genommen.
Bei sudo iobroker restore 1 wird das vorletzte Backup genommen.
Eventuell mal unter Iobroker Fehler einen neuen Fred aufmachen, nach dem Motto
Datenpunkt hat kein Wert oder sowas.
Dort lesen mehr Forumsmitglieder mit.
Zitat:
iobroker restore
Full syntax: iobroker restore <backup name/or/path="">If some backups were created with command iobroker backup, so they can be restored. If you call restore without parameters, you will get the list of available backups.
/>iobroker restore
Please specify one of the backup names:
2015_07_18-12_20_28_backupIoBroker.tar.gz or 2015_07_18-12_20_28 or 0
2015_07_17-21_54_01_backupIoBroker.tar.gz or 2015_07_17-21_54_01 or 1
You can call iobroker restore 0 to use latest backup file or some other index. Following commands are the same for given example:
iobroker restore 0
iobroker 2015_07_18-12_20_28
iobroker 2015_07_17-21_54_01_backupIoBroker.tar.gz
iobroker /opt/iobroker/backups/2015_07_17-21_54_01_backupIoBroker.tar.gz
All adapters will be restored as disabled, except "admin". To enable all adapters at once you can call "iobroker start all". If some adapters are not uploaded you can call "iobroker upload all" to upload all adapter's files at once.</backup>
-
:sudo reboot funzt offensichtlich beim raspi nicht. sudo shutdown oder eben poweroff. und dann muss man ihm eh das Steckerchen ziehen.
Wenn sudo reboot nicht geht scheint dein System defekt zu sein.
SD Karte defekt, Programme zwangsgestoppt, Programme lasten den Prozessor zu 100 % aus usw.
Also Raspi neu machen/ SD Karte neu.
Shut down ist das langsame runterfahren des PI. ( vergleichbar unter Windows herunterfahren )
Poweroff ist eher brutal herunterfahren egal was noch läuft. ( vergleichbar unter Windows Aus Knopf 5 Sec halten )
Stecker ziehen solltest du vermeiden, ist so das schlimmste.
Denke mal ist viel verbogen wegen Steckerziehen.
Wenn du kein SD Karten backup hast kann ich nur Empfehlen alles neu.
-
hmmm, dann würde das natürlich auch erklären, warum die ganze Geschichte hier so vertrackt ist. Seufz Kaum bin ich wieder halbwegs aufḿ Damm, kann ich schon wieder das ganze System neu einrichten.
Ralla, ich danke dir auf jeden Fall von ganzem Herzen und werde mich wieder melden, sobald das ganze wieder neu aufgesetzt ist und auch (hoffentlich) ordentlich läuft. mein Backup habe ich leider auf meinem Rechner auf der Arbeit und komme da vor Montag nicht ran. Aber ich gebe nicht auf, bis der ganze Kram läuft und ich dir dafür (mindestens) ein Weizen zugeschickt habe…;)
Danke, Mann für deine Geduld...thumbsup
-
Sicher aber deine Backups von der SD Karte.
War glaube ich mit filezilla.
Hatte bei meinem Windows Rechner auch power off gemacht.
Alles neu.
Du bist nicht alleine :mrgreen:
Wie sagte Mr.Spock USS Enterprise das noch.
Der Mensch ist nicht logisch.
Stimmt.
Man hört sich.
Ralla
-
Hi Ralla,
ich habe so einige Ungereimtheiten bei der vorherigen Installation ausmachen können (War eine NOOBS- Installation), was offensichtlich per default schon blöd konfiguriert ist. Anyway, jetzt scheint es zu funktionieren.
Script scheint so zu arbeiten, wie es soll. Das war jetzt das Testscript. Also, Test läuft, abgehakt. Ich nehme mir jetzt das erweiterte Script vor und gebe Rückmeldung, sobald es fertig ist…
-
Prima, Licht am Ende des Tunnels.
Erste Erfolge :mrgreen:
Jetzt langsam erweitern.
Immer wieder prüfen ob das Programm läuft in kleinen Schritten.
Überlege dir wie.
Würde mit dem Runterzähler beginnen da der schwierigste Teil.
Das script wird nur einmal getriggert, aufheizen ist nicht das Problem.
Das halten der Temperatur ist noch fraglich.
Teste erstmal, dann Bügeln wir Fehler für Fehler aus.
Anbei mal ein möglicher Weg, siehe Bild.
Damit du was siehst lege noch Datenpunkt Kesseltemp_ist und Funke an.
Ralla
5230_etwa.jpg -
Habe noch ein Fehler entdeckt.
Wenn die Heizung bei aufheizen eingeschaltet wird kommt die nächste Abfrage ob Kesseltemperatur
ist größer oder gleich einmaische Grad.
Dies wird aber nur einmal Abgfragt da das script nur einmal durchlaufen wird.
Also muss erreicht werden das öfters abgefragt wird ob die Aufheiztemp erreicht ist.
Habe noch ein Intervall eingefügt .
Ob Intervall in Intervall geht kann ich nicht sagen.
Mußte mal testen.
Sonst muß Plan B ran.
Ralla
5230_etwa_v2.jpg -
Hi Ralla,
danke für die Tipps. Das Script sieht nun wie folgt aus:
Beim Start passiert aber leider nichts. Datenpunkte sind wie folgt angelegt:
Da die Daten vom Durchlauf des Testscriptes noch drinstehen und die Funke auch nicht geschaltet wird, läuft das Script nicht bis zum Punkt "aufheizen" durch. Da das Objekt Bierbrauen auch nicht auf true gesetzt wird, würde ich mal vermuten, es liegt daran, dass das Setzen von Objekt Bierbrauen auf true nirgendwo definiert ist. Es wird am Schluss zwar auf unwahr gesetzt, aber wo wird es auf wahr gesetzt?
Oder habe ich schon wieder einen Denkfehler?
[Edit]: Ok, ich HABE einen Denkfehler. Im Testscript ist das ja auch nicht gesetzt. Also liegt es irgendwo anders. Der Runterzähler? :?:
[Edit]²: Hmmm, ich habe jetzt mal für jede Variable einen Datenpunkt angelegt. Scheint aber auch nicht viel zu bringen. Ich verstehe die Logik nicht. Bin halt doch doof…:(
-
Doof nicht, eher unwissend wie ich.
In javascricpt.0 aus Bierbrauen level einen Button machen.
Wenn Button klick wird das script gestartet.
5230_text_dp_010022019.jpg
5230_button.jpg -
Hi Ralla,
also, es liegt am Antriggern des Datenpunkts Bierbrauen.
Setze ich ihn manuell auf wahr oder auch auf unwahr, dann wird mir der entsprechende Text beim Datenpunkt Test angezeigt.
Ich habe einmal mit state, level und mit switch probiert, alle Ergebnisse gleich. Ich muss die Funktion manuell umstellen, dann wird der Tesxt generiert. Ich kann aber nur folgende Rollen auswählen:
Ich würde jetzt systematisch alle durchtesten und mal schauen, womit es geht. Aber die generelle Frage bleibt. Nachdem das Script durch ist, muss ich manuell umstellen von true auf false und umgekehrt. Warum ist das so?
Das sind übrigens alle Datenpunkte, die ich erstellt habe mit den entsprechenden Rollen. Irgendetwas auffälliges dabei?
Ich teste nachher mal weiter und melde mich dann nochmal….
Danke vorerst...;)
-
[edit]: seit dem ich das Systemneu aufgesetzt habe, bekomme ich auch beim Umschalten zwischen Objekten und Scripten diese Meldung:
Worher kommt die? Habe ich bei der Installation was vergessen??
-
Mal im Log nachgeschaut ?
https://github.com/ioBroker/ioBroker.ja … issues/150
Der Datenpunkt Bierbrauen ist ja vergleichbar mit einem mechanischem Schalter.
Als wenn du Zuhause das Licht ein oder ausschaltest.
Mit true oder false wird hier per Soft eben Brauen ein oder ausgeschaltet.
Macht ja auch Sinn da du nicht 365 Tage im Jahr brauen willst.
Ralla
-
OK, versteh ich ja. Allerdings würde ich jetzt eigentlich davon ausgehen, dass wenn das Script durchgelaufen ist (Schalter ein) und alles soweit funktioniert hat, bei der Ausschaltung des Scriptes der Zustand der Schalter auch wieder in den Urzustand zurückgesetzt wird. Offensichtlich ist das nicht der Fall, sodass man dann einige Schalter vor dem erneuten Durchlaufen des Scriptes (Automatisierung) manuell wieder in die Ausgangsstellung setzen muss.
Wenn das so ist, und man das auf dem Schrim hat, ist es ja gut. Allerdings würde ich jetzt schon fast dazu tendieren ein Script zu basteln, was alles wieder auf Anfang setzt. Einfach damit man nachher im Alltagsgebrauch nicht vergisst an Schalter XY noch eine Einstellung manuell vornehmen zu müssen.
Das muss aber der zweite Schritt sein.
OK, wir haben also einen bis zum Schritt "schreibe irgendwas in Objekt Test" funktionierendes Script.
Wie geht´s jetzt weiter? Können wir zur Kontrolle, ob alles so läuft wie es soll, weitere Texte in die Datenpunkte schreiben lassen?
Wenn alles so weit durchläuft (immer unter der Premisse, sich zu merken, wo welche Schalter wieder zurückgesetzt werden müssen) könnten wir die nächsten Temperaturstufen versuchen einzubinden.
Ich würde gerne so weit vorfahren, dass ich den Kessel mit dem Heizstab auch mal real anklemme und schaue, ob es funktioniert.
Übrigens, das Log schmeißt mir eine Menge Warnmeldungen aus:
avascript.0 2019-01-31 21:54:28.951 warn at TCP.onread (net.js:601:20)
javascript.0 2019-01-31 21:54:28.951 warn at Socket.Readable.push (_stream_readable.js:208:10)
javascript.0 2019-01-31 21:54:28.950 warn at readableAddChunk (_stream_readable.js:250:11)
javascript.0 2019-01-31 21:54:28.950 warn at addChunk (_stream_readable.js:263:12)
javascript.0 2019-01-31 21:54:28.950 warn at Socket.emit (events.js:211:7)
javascript.0 2019-01-31 21:54:28.949 warn at emitOne (events.js:116:13)
javascript.0 2019-01-31 21:54:28.949 warn at Socket._ultron.on (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:138:22)
javascript.0 2019-01-31 21:54:28.948 warn at Receiver.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:139:10)
javascript.0 2019-01-31 21:54:28.948 warn at Receiver.startLoop (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:165:16)
javascript.0 2019-01-31 21:54:28.948 warn at Receiver.getData (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:330:12)
javascript.0 2019-01-31 21:54:28.947 warn at Receiver.dataMessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:389:14)
javascript.0 2019-01-31 21:54:28.947 warn at Receiver._receiver.onmessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:141:47)
javascript.0 2019-01-31 21:54:28.947 warn at WebSocket.emit (events.js:211:7)
javascript.0 2019-01-31 21:54:28.946 warn at emitOne (events.js:116:13)
javascript.0 2019-01-31 21:54:28.946 warn at WebSocket.onMessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/EventTarget.js:99:16)
javascript.0 2019-01-31 21:54:28.946 warn at WebSocket.ws.onmessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transports/websocket.js:147:10)
javascript.0 2019-01-31 21:54:28.945 warn at WS.Transport.onData (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:137:8)
javascript.0 2019-01-31 21:54:28.945 warn at WS.Transport.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:145:8)
javascript.0 2019-01-31 21:54:28.945 warn at WS.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
javascript.0 2019-01-31 21:54:28.944 warn at WS. <anonymous>(/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:273:10)
javascript.0 2019-01-31 21:54:28.944 warn at Socket.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:456:14)
javascript.0 2019-01-31 21:54:28.944 warn at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
javascript.0 2019-01-31 21:54:28.943 warn at Socket. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
javascript.0 2019-01-31 21:54:28.943 warn at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:335:16)
javascript.0 2019-01-31 21:54:28.943 warn at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-parser/index.js:251:12)
javascript.0 2019-01-31 21:54:28.942 warn at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
javascript.0 2019-01-31 21:54:28.942 warn at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
javascript.0 2019-01-31 21:54:28.942 warn at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:345:8)
javascript.0 2019-01-31 21:54:28.941 warn at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
javascript.0 2019-01-31 21:54:28.941 warn at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
javascript.0 2019-01-31 21:54:28.941 warn at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:236:12)
javascript.0 2019-01-31 21:54:28.940 warn at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:278:10)
javascript.0 2019-01-31 21:54:28.940 warn at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20)
javascript.0 2019-01-31 21:54:28.940 warn at Socket. <anonymous>(/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:52:30)
javascript.0 2019-01-31 21:54:28.939 warn at Object.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3425:37)
javascript.0 2019-01-31 21:54:28.939 warn at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:358:25)
javascript.0 2019-01-31 21:54:28.939 warn at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:756:38)
javascript.0 2019-01-31 21:54:28.938 warn at Object. <anonymous>(script.js.Skript_2:27:9)
javascript.0 2019-01-31 21:54:28.938 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1236:28)
javascript.0 2019-01-31 21:54:28.914 warn Wrong type of javascript.0.Runterzähler: "number". Please fix, while deprecated and will not work in next versions.
Kannst du damit was anfangen???
Danke vielmals für deine Geduld…</anonymous></anonymous></anonymous></anonymous></anonymous></anonymous>
-
Ok, hier mal ganz einfach.
Wenn du Bierbrauen einschaltest und die Kesseltemp kleiner 20 Grad ist
muß Funke eingeschaltet werden.
Unter Objekte Datenpunkt Bierbrauen muß auf true stehen.
5230_hw_klein.png