NEWS
Test Adapter OctoPrint
-
@martin
Evtl. hilft Dir mein JS-Script & VIS-View ?Gruß
Jörg -
Da Du dankenswerterweise im Adaper Octoprint 0.0.6 die jog- und custom-commands-Datenpunkte eingebaut hast,
habe ich mal einen View erstellt, der nur die X/Y- und Z-Steuerung ermöglicht ( wie in Octoprint selbst )
Hier mein exportierter View: 3D-Drucker-Steuerung.zip
Zusätzlich muß man noch einige CSS-Rotationen einbinden, um das pfeillinks.gif zu drehen:.rotate90{ transform: rotate(90deg); } .rotate-90{ transform: rotate(-90deg); } .rotate180{ transform: rotate(180deg); }
und hier noch die beiden verwendeten Icons:
Edit 15.09.2020:
Da @haus-automatisierung wohl noch nicht dazu gekommen ist, den kleinen Bug mit "numeric" (s.o.) zu fixen,
habe ich folgendende Datei selbst gepatched:
/opt/iobroker/node_modules/iobroker.octoprint/io-package.json
ab Zeile 165 - 3 mal type: numeric durch type: number ersetzen:"_id": "command.jog.x", "type": "state", "common": { "name": "Jog X axis", "type": "number", "role": "value", "read": false, "write": true }, "native": {} }, { "_id": "command.jog.y", "type": "state", "common": { "name": "Jog Y axis", "type": "number", "role": "value", "read": false, "write": true }, "native": {} }, { "_id": "command.jog.z", "type": "state", "common": { "name": "Jog Z axis", "type": "number", "role": "value", "read": false, "write": true },
Wenn der Adapter Octoprint 0.0.6 schon installiert ist, kontrollieren ob die Datenpunkte
octoprint.0.command.jog.x, octoprint.0.command.jog.y und octoprint.0.command.jog.z auf Art "Zahl" stehen, wenn nicht, entspr. anpassen.Evtl. kann das ja jemand gebrauchen?
Gruß
JörgP.S.
Kein wirkliches Problen, aber "unschön":
Ich hatte ja weiter oben einen Link zu meinem JS-Script eingestellt, mit dem ich eine WLAN-Steckdose einschalte, die ihrerseits den 3D-Drucker startet.
Anschließend wird automatisch der Octoprint-Adapter gestartet, der normalerweise gestoppt ist.
Dabei kommt im Log 2 Mal die Warnung 502 Bad Gateway, danach ist Octoprint aber problemlos erreichbar.javascript.0 2020-09-04 15:04:07.657 info (886) script.js.common.PAW.OctoPi: __ Octoprint-Server ist online __ octoprint.0 2020-09-04 15:03:46.790 warn (29535) received error 502 response from /api/version with content: "<html><body><h1>502 Bad Gateway</h1>\nThe server returned an invalid or incomplete response.\n</body></html>\n" octoprint.0 2020-09-04 15:03:41.782 info (29535) OctoPrint API not connected octoprint.0 2020-09-04 15:03:41.780 warn (29535) received error 502 response from /api/version with content: "<html><body><h1>502 Bad Gateway</h1>\nThe server returned an invalid or incomplete response.\n</body></html>\n" javascript.0 2020-09-04 15:03:26.009 info (886) script.js.common.PAW.OctoPi: __ OctoPrint-Server wird gestartet __ octoprint.0 2020-09-04 15:03:23.862 info (29535) starting. Version 0.0.6 in /opt/iobroker/node_modules/iobroker.octoprint, node: v12.16.3, js-controller: 3.1.6 host.Raspberrypi 2020-09-04 15:03:21.638 info instance system.adapter.octoprint.0 started with pid 29535
Könnte das evtl. ein Timing-Problem sein, d.h.der Octoprint-Adapter versucht zu früh, sich mit dem Octoprint-Webserver zu verbinden, obwohl der noch nicht kpl. hochgefahren ist?
-
Hat sich erledigt.
Toller Adapter -
Vielen dank für den coolen Adapter, funktioniert soweit sehr gut.
Kann man über den Adapter den Octoprint-Raspberry runterfahren? -
@Nils-Gehlich
Runterfahren kann man den Octoprint-Raspi nicht direkt über den Adapter,
aber z.B. über VIS und mit einem Java-Script, welches sich automatisch auf dem Octoprint-Raspi via SSH einloggt, geht das schon.Ich habe hier: "Besteht Interesse an einem Octoprint Adapter"
mal mein Octoprint-JS eingestellt und auch einen VIS-View für meinen AnyCubic-Drucker.Nur damit keine Mißverständnisse aufkommen: Ich bin nicht der Autor des Adapters.
Gruß
Jörg -
@joergeli danke, ich schaue es mir an.
-
@Nils-Gehlich sagte in Test Adapter OctoPrint 0.0.6:
Kann man über den Adapter den Octoprint-Raspberry runterfahren?
Schau dir dieses Video mal an:
https://youtu.be/g-MaFbpXNqI -
@Brainbug Danke, da konnte ich mir raussuchen was ich brauchte. Klappt jetzt.
-
@Nils-Gehlich sagte in Test Adapter OctoPrint 0.0.6:
Kann man über den Adapter den Octoprint-Raspberry runterfahren?
Nicht direkt, Du kannst aber im OctoPrint einen Systembefehl dafür hinterlegen und diesen Systembefehl dann über den Adapter ausführen.
-
@joergeli sagte in Test Adapter OctoPrint 0.0.6:
Könnte das evtl. ein Timing-Problem sein, d.h.der Octoprint-Adapter versucht zu früh, sich mit dem Octoprint-Webserver zu verbinden, obwohl der noch nicht kpl. hochgefahren ist?
Ich denke schon, da der Adapter ja sofort bei Start eine Verbindung aufbauen möchte. Ich würde da einfach mit einem Timeout arbeiten und etwas warten, bevor Du die Instanz startest. Oder Alternativen die Instanz immer laufen lassen.
-
@haus-automatisierung said in Test Adapter OctoPrint 0.0.6:
Oder Alternativen die Instanz immer laufen lassen.
jup, bei mir laufen beide instanzen auch immer, wenn raspi online, wird die instanz sofort von gelb auf grün.
-
@da_Woody
Ich versuche halt Ressourcen zu sparen, wo immer es möglich ist.
Es sind beim Octoprint-Adapter zwar nur 44 MB RAM, aber Kleinvieh macht auch Mist
Außerdem machen mich gelbe Instanzen immer nervösIch werde noch mal mit den Timings im JS experimentieren, damit der Adapter erst gestartet wird, wenn der Octoprint-Raspi kpl. gebootet ist.
Gruß
Jörg -
@ all
Ist Euch schon aufgefallen, daß Octoprint (nicht der Adapter) die Restdruckzeit während des Druckens teils utopisch hoch berechnet?
So wird z.B. während eines 12 Min.-Druckes die Restdruckzeit mit 50 Min. angegeben.
Zum Ende des Ausdruckes "normalisiert" sich dann die Restdruckzeit auf realistische Werte.Ich habe mal im Octoprint-Forum gestöbert,
aber da wird meist auf die Diskrepanz der Gesamtdruckzeit zwischen dem Slicer (z.B. Cura) und Octoprint verwiesen.
Das ist ja nicht so kritisch, weil Octoprint anschl. die kpl. Druckzeit halbwegs korrekt berechnet.Daß aber dann beim Ducken die Restdruckzeit "wie wild" hin und her wechselt, nervt dann doch, weil man keinen Anhaltspunkt hat, wann der Druck fertig ist.
Soll wohl damit zusammenhängen, daß Octoprint anhand verschiedener Parameter ( wie z.B. Druckdauer des vorigen Layers) die Restdruckdauer fortlaufend neu berechnet.Frage: Konnte das schon jemand optimieren, z.B. anhand eines Octoprint-Plugins?
Das ist übrigens kein Problem des ioBroker Octoprint-Adapters, da der ja nur die Werte anzeigen kann, die er von Octoprint geliefert bekommt.
Gruß
Jörg -
@joergeli said in Test Adapter OctoPrint 0.0.6:
Frage: Konnte das schon jemand optimieren, z.B. anhand eines Octoprint-Plugins?
-
@da_Woody
Hey, danke Dir!
Gerade installiert und getestet - jetzt sehen die Druckzeiten gut ausNebenbei:
Den Link zu OctoPrint-PrintTimeGenius = yes sir! haste aber gut versteckt.
Ich habe zuerst gedacht, warum sagt er denn nicht, wie er es gemacht hatGruß
Jörg -
Wird denn in der API auch der Wert ausgegeben der mit dem PrintTimeGenius berechnet wird ?
Bei mir gehen die Zeiten ebenfalls auseinander. ioBroker ist meist 1% vorne dran als OctoPrint. Das Problem an der Sache, wenn die API 100% meldet gebe ich dem Drucker noch 5min. zum abkühlen und schalte dann die Steckdose aus weil der Druck ja fertig sein sollte.Leider war OcotPrint selber erst bei 99% und der Druck wurde somit ein paar Minuten vorher beendet. Würde jetzt halt noch zum Prozess die Watt Anzahl >15 mit einbauen damit mir das nicht nochmals passiert. Daher die Frage mit den Werten und die API.
-
@BeNeDeLuX
IMHO können in ioBroker nur die Daten angezeigt werden, die Octoprint liefert.
Evtl.hast Du im Octoprint-Adapter das Aktualisierungsintervall zu groß eingestellt?
Ich habe im Adapter 5 Sekunden als Aktualisierungszeit eingestellt.Und ja, wie ich gerade getestet habe, die Zeiten des Print Time Genius Plugins werden sowohl in die Weboberfläche von Octoprint, als auch im ioBroker-Adapter übernommen.
Übrigens: Ich nehme in meinem Script als "Druck ist fertig"-Status nicht nur die 100%, sondern zusätzlich noch, daß das Hotbed auf ≤ 50°C abgekühlt ist.
Mit anderen Worten: wenn 100% erreicht sind und Hotbed ≤ 50°C, kann man eigentlich sicher sein, daß der Druck wirklich fertig ist und kann die Druckersteckdose ausschalten.Es ist ja auch nicht ratsam, den Drucker gleich nach Fertigstellung des Druckes auszuschalten, sondern solange zu warten, bis er halbwegs abgekühlt ist.
Gruß
Jörg -
@joergeli said in Test Adapter OctoPrint 0.0.6:
@da_Woody
Hey, danke Dir!
Gerade installiert und getestet - jetzt sehen die Druckzeiten gut ausNebenbei:
Den Link zu OctoPrint-PrintTimeGenius = yes sir! haste aber gut versteckt.
Ich habe zuerst gedacht, warum sagt er denn nicht, wie er es gemacht hatGruß
Jörghehe, wieso versteckt? blaue schrift = link!
muss aber ehrlich sein, ich hab zwar 2 instanzen installiert, bald eine 3., hab aber noch nie im broker geschaut. ich mach eigentlich alles über die raspis direkt im browser. ausschalten ist für mich nicht wichtig. entweder druck ich eh gleich weiter, oder ich mecker alexa an. drucker und raspi hängen an sp112 und usb wird da gleich mitgeschaltet.
bei den druckteilen für die MPCNC sind beide ja einige tage durchgelaufen... -
Ist Euch schon aufgefallen, daß Octoprint (nicht der Adapter) die Restdruckzeit während des Druckens teils utopisch hoch berechnet?
Ja aber dafür gibt der Prusa Slider die Zeit schon sehr genau nach dem slicen an. Somit kann man beim starten schon sagen wann der Druck sehr wahrscheinlich fertig ist.
Übrigens: Ich nehme in meinem Script als "Druck ist fertig"-Status nicht nur die 100%, sondern zusätzlich noch, daß das Hotbed auf ≤ 50°C abgekühlt ist.
Mit anderen Worten: wenn 100% erreicht sind und Hotbed ≤ 50°C, kann man eigentlich sicher sein, daß der Druck wirklich fertig ist und kann die Druckersteckdose ausschalten.Auch hier nochmals den Hinweis auf das Script: https://youtu.be/g-MaFbpXNqI
-
@Brainbug
Jo, ich nutze allerdings Cura als Slicer, welches die komplette Druckzeit auch rel. genau berechnet.
Es ging mir bei meiner Frage um die Berechnung der restlichen Druckdauer, die Octoprint erst jetzt mit dem nachinstallierten Print Time Genius Plugin zufriedenstellend berechnet.Nebenbei: Ich meinte eigentlich mein Java-Script, aber egal, viele Wege führen nach Rom ...
Wow, MPCNC selbst gebaut? - Respekt
Zugegeben, ich steuere meinen Drucker normalerweise auch nur über die Octoprint-Webboberfläche.
Es ist aber schon ganz praktisch ( z.B. wenn ich im Wohnzimmer faul auf der Couch liege ) mal kurz in ioBroker nachzusehen, wie weit der Drucker ist, oder die prozentuale (25%,, 50%, 75%, 90%) Fertigstellung vom Android-Tablet automatisch angesagt zu bekommen.Alexa, Siri, Echo Dot und wie sie alle heißen, kommen mir übrigens nicht in's Haus. Irgendwie habe ich 'ne Cloud-Aversion.
Ich nutze lieber Rhasspy, da hört wenigstens keiner mit.
Ich will hier aber beileibe keine Grundsatzdiskussion über Spracherkenner anfangen.Gruß
Jörg