NEWS
Test Adapter OctoPrint
-
@csr Enclosure habe ich nicht. Hast Du ein Beispiel wie die Infos per API abgerufen werden können?
-
@haus-automatisierung also kann ich die 1 Refresh Funktion auf 600 Sek. stellen? sonst spammt er mir jede Minute den Log zu, da Octopi nur läuft wenn der Drucker läuft.
-
@haus-automatisierung sagte in Test Adapter OctoPrint 0.0.6:
@csr Enclosure habe ich nicht. Hast Du ein Beispiel wie die Infos per API abgerufen werden können?
Leider nein, dazu bin zu sehr nur Anwender .
-
@Andre-R Ja, genau. Steht ja auch unter den Feldern in der Konfiguration
-
@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.