OctoPi

Hallo miteinander. Der Beitrag liegt schon mindestens 3 Wochen angefangen auf dem Rechner herum aber mit dem MK2X Haribo Dingens und arbeiten muß ich auch noch, irgend was bleibt halt liegen. Zu allem Überfluß erscheint das neue OctoPi direkt nach Veröffentlichung. Jedenfalls der letzte Teil dieses Beitrags kommt zu einem anderen Zeitpunkt. Darum hier nur Installation und Einrichtung von OctoPi.

Von Uwe Reintzsch

Das hatte ich eigentlich bereits mit dem Prusa vor aber da hat sich nun dieser Creality CR-10 dazwischen gedrängelt und in Ermanglung eines offiziellen, ungecrackten und Vieren freien Softwarepaketes ist halt alles ein wenig probieren, falsch machen, aufrappeln und erneut versuchen. Ausgangslage: Ich hab ein CAD-Programm und einen 3D-Drucker und irgendwie soll das CAD-Modell in den Drucker um dort zum gedruckten Gegenstand zu werden. Üblich sind 3 Wege:

  • Erstellung der g-Code Datei mit Slicer am PC und Transport der Datei mit USB-Stick oder Speicherkarte zum Gerät.
  • Erstellung der g-Code Datei mit Slicer am PC und direkter Druck über USB-Anschluß
  • Austausch der Daten über das Netzwerk

Bei den meisten Konsumergeräten sind die beiden oberen Varianten vorhanden und die Netzwerkvariante ist für Geld und gute Worte nicht zu haben. Die Vorteile liegen aber auf der Hand.

  • Die Daten müssen nicht über ein Speichermedium transportiert werden.
  • Der PC muß nicht die gesamte Dauer des Drucks eingeschaltet sein.
  • Der Drucker ist von allen im Netz abrufbar.

Wenn es die Druckerhersteller nicht anbieten sehen wir uns die Alternativen an und stellen schnell fest, es konzentriert sich sehr schnell auf einen Raspi. Als sparsamer und kostengünstiger Druckserver übernimmt er die Aufgabe und bietet gleich noch zusätzliche Funktionen. Und der Raspi bietet noch die Qual der Wahl. Unter http://www.microsoft.com/3d bietet Microsoft mit Windows10 ioT eine Möglichkeit. Unter https://www.repetier-server.com/ gibt es den Repetier Server. Ich hab mich hier für OctoPi oder OctoPrint (die Erschafferin ist sich da selber nicht über den Namen sicher) entschieden. Ich interpretiere es so das OctoPi das OctoPrint für den Raspi ist und für andere Systeme ist es in vorinstallierter Form nicht verfügbar. Es handelt sich um ein OpenSource Projekt von Gina Häußge. Wie man dem ä und ß im Namen entnehmen kann eine Deutsche die leider Ihre Muttersprache verweigert. Aber bevor ich zu meckern beginne meine Hochachtung. Traurig, daß mit BQ der einzige Hersteller welcher die Arbeit unterstützt hat abgesprungen ist! Ob Ihr nun https://octopi.octoprint.org/ oder http://octoprint.org/ ansteuert es kommt auf das Gleiche raus. Ihr könnt auch einen Beitrag in der MagPi 36 finden. Zum Download steht ein Image von OctoPi 0.14 zur Verfügung. Das wird wie beim Raspi üblich zum Beispiel mit Etcher oder Win32DiskImager auf eine SD-Karte gebracht. Erklärt ist das auf der Raspberry.org Seite. Im Anschluß muß noch octopi-network.txt im Hauptverzeichnis der SD-Karte angepaßt werden wenn der Raspi über WLAN mit dem Netzwerk verbunden werden soll. Die Einstellungen sind in der Datei selbst erklärt. Unter ## WPA/WPA2 secured die Kommentierung entfernen, SSID und Paßwort in die Anführungsstriche eintragen.

Prinzipiell ist OctoPi nach Aussage der Seite mit allen Raspi-Varianten kompatibel was ich jetzt nicht ausprobiert habe. Nachdem ich zuletzt die SD-Karte in einen Raspi2 mit dem Original 7“ Touchdisplay von Raspberry gesteckt habe und das Display dunkel blieb, diesmal mit dem Zero und einem Monitor am HDMI-Port. OctoPi begrüßt mich wieder der mit der Paßwortabfrage. Wie von Raspi bekannt ist die im Auslieferzustand User: pi und Paßwort: raspberry. Wieder die Meldung falsches Paßwort oder Benutzername. Klar deutsches Tastaturlayout hat z und y vertauscht! Mit sudo –i Root-Rechte holen und in die Einstellungen in raspi-config. Tastaturlayout ändern, Sprache und Zeitzohne eintragen. Da als Betriebssystem Raspbian Lite verwendet wurde ist keine graphische Benutzeroberfläche vorhanden. Booten in den Desktop ist also nicht möglich. Damit ist auch der Versuch mit dem Touchdisplay hinfällig. Die graphische Oberfläche Pixel kann zwar nachinstalliert werden aber da ist es sicher einfacher, OctoPi aus dem Source-Code auf ein komplettes Raspbian zu installieren. Wenn mal etwas Zeit ist… Für den Fernzugriff noch SSH einschalten, die Raspi-Kamera einschalten und fertig mit raspi-config. Übertackten halte ich im Moment für nicht erforderlich und nach Aussage der Info auf OctoPrint.org paßt sich das Image selber der Speichergröße an.

Das Image ist zwar das Neuste aber wieder nicht aktuell und das nicht nur in Bezug auf OctoPi! Also verschaffe ich mir nach dem Neustart wieder Root-Rechte mit sudo –i und bringe zunächst Raspbian mit apt-get update und apt-get upgrade auf den aktuellen Stand. Mit passwd ändere ich noch das Paßwort für den User pi. Damit sind Monitor und Tastatur jetzt überflüssig.
Weiter geht es am PC. Im Internet-Browser wird der OctoPi mit http://octopi.local/ oder http://ip-Adresse/ aufgerufen. Die iP-Adresse findet sich am einfachsten in der Fritz Box ist aber wie gesagt nicht erforderlich.

Als erstes kommt die Aufforderung einen Administrator und das Paßwort festzulegen. Auch wenn es so aussieht als würde man schon was sehen ist hier erst ein Login erforderlich. Und schon kommt die Meldung neue Version verfügbar. Also aktualisiere ich und starte brav neu. Noch sieht man nicht viel. Woher auch. OctoPi kennt den Drucker noch nicht und ist noch nicht mit ihm verbunden. Also anmelden und der Setup Wizard möchte die ini-Datei aus Cura 15.04 importieren. Da ich eine aktuelle Cura-Version nutze, der Wizard damit aber nicht zu Recht kommt breche ich mit Finish ab. Wer eine entsprechende ini besitzt ist hier gut dran. Also sehe ich mal in die Einstellungen (Maulschlüssel rechts oben)

und hoffe, das ich mit dem was ich sehe nichts zu tun habe. Auto klingt doch gut und kann nur schief gehen. Ich laß mich überraschen und klicke schnell in das nächste Register.

Default Generic RepRap Printer klingt schon mal nicht schlecht aber ich lege einen neuen Printer an. Wieder will er von mir die ini-Datei die ich nicht habe also schreib ich mal von Hand Creality_CR-10, trage die Größe des Druckbereiches ein, bei Axes laß ich mal die Finger weg und beim Hotend & Extruder stimmt schon alles. Mit Confirm hab ich meinen Drucker. Ich hätte ja erwartet, wie bei Cura oder Slic3r unter Windows die G-Code Variante RepRap (Marlin/Sprinter) auswählen zu müssen aber ist nicht.
Die Temperaturen für ABS und PLA am Extruder halte ich für etwas zu niedrig aber ich laß es mal so. Kann ich später noch ändern.

Jetzt kommt wieder Zeug das ich als Depp nicht verstehe also laß ich die Finger von Terminal Filters und GCODE Scripts. Schade eigentlich!

Bei Features kann ich wieder was einstellen. Beim ersten Punkt ist fast alles aktiviert also laß ich das so und geh zur Webcam. OK! Ich hab eine RaspiCam aber Webcam und Snapshot ist damit möglich und testen kann man das auch gleich. Die Einstellungen stimmen also bereits. Bei mir nur alles gespiegelt. Was sich beim Snapshot auf der Oberfläche leider nicht ändern läßt! Also zur Cam noch einen Spiegel montieren? Unter Access Control kann das Paßwort von pi geändert werden und neue Nutzer angelegt werden. GCode Visualizer ist aktiviert. API brauch ich im Moment nicht.

Der Punkt Octoprint. Bei Server stehen die Startbefehle für Raspbian das paßt schon. Auch bei Folders ist alles eingetragen. Und endlich komm ich an den Punkt dem OctoPi meine Muttersprache mitzuteilen. Da jetzt ein Neustart folgt und alles in Deutsch erscheint müßte ich jetzt von vorn beginnen. Ich spar mir das und geh zurück in den Reiter welcher nun Aussehen heißt. Das kann nun jeder nach seinen Vorlieben anpassen, viel ändert sich da außer der Sprache nicht. (und die nur halbherzig, Settings heißt im deutschen Einstellungen) Im Punkt Logs gibt’s nichts zu verstellen und ich komm zum Pluginmanager. Die installierten Plugins laß ich und seh mir die zusätzlich verfügbaren Plugins an. (Mehr… unten) Da kann jetzt jeder installieren was er braucht. Selbst ein Plugin zum Nachrüsten der Filamentüberwachung über den GPIO-Port des Raspi ist vorhanden. Ich hab noch Slic3r, FileManager und STL Viewer installiert. Bei Software Update sollte jetzt nichts kommen. Das hab ich gerade erst durchgeführt. Wer mag kann sich noch irgendwelche News und Mitteilungen von OctoPrint auf den Bildschirm holen.

Plugins. Der Punkt unterscheidet sich nun je nach installierten Plugins. Bei CuraEngine kann wenn vorhanden eine ini-Datei für Druckereigenschaften geladen werden. Wie zu sehen nicht aus einer aktuellen Cura-Version. Der Punkt Slic3r erscheint nach Installation des Plugins erst nach erneutem Aufruf der Einstellungen. Auch hier kann die ini für den Drucker geladen werden. Diesmal die von Slic3r und hier auch aus der aktuellen Version. Die Einstellungen aus Windows auch für unterschiedliche Düsen können hier also übernommen werden. Zum Abschluß die Änderungen Speichern.

Nun ist alles eingerichtet, installiert und es sollte so oder ähnlich aussehen. Es wird Zeit den Raspi an den Drucker anzuschließen. Ein Punkt ist noch offen! Wer für das Übertragen des Images den Win32DiskImager verwendet hat sollte den Speicher einfach nochmal in den PC stecken und damit ein Backup erstellen. Sollte mit dem Octopi mal was Unverhofftes passieren ist er mit dem Backup schnell wieder hergestellt. Die Imagedatei ist jetzt natürlich um ein vielfaches größer da es an die Speichergröße angepaßt wurde aber dabei handelt es sich um viel heiße Luft und das Image läßt sich extrem komprimieren. Für experimentierfreudige auf https://github.com/guysoft/OctoPi liegt OctoPi mit täglich neuer Version.

(Update: 09.07.2017)

… und kaum hat man’s geschrieben ist es auch schon überholt! Der Link ist der Selbe. Am 04.07.17 ist Octopi in Version 0.14 erschienen. Wie zum Hohn ein paar Tage später eine neue Version von Raspbian. Es bleibt also nicht erspart als erstes ein Update durchzuführen. An der Lite-Version des Raspbian hat sich nichts geändert.

(Update: 13.01.2018)

Wer wie ich auf Kriegsfuß mit dem Lötkolben steht wird sich über die Meldung von der Raspberry Pi Foundation freuen. Der Pi Zero WH ist erschienen. Unterschied zum W ist der aufgelötete GPIO Anschluß. Damit ist es deutlich einfacher Filamentsensoren oder ähnliches am Raspi anzuschließen und der Zero wird perfekt für den Einsatz mit OctoPi.

24 Kommentare

  • Wolfgang_mimimi

    Moin,

    hat jemand Erfahrungen mit der manuell installierten Version von OctoPrint?
    a) es hat funktioniert.
    b) mit dem letzten Update zur Version „1.3.10“ bekomme ich die Meldung, dass es ein Update gibt… PRIMA!
    … und dass ich das Update nicht durchführen kann.

    Ich kann das Update zwar über den Button anstoßen … und es kommt auch eine grüne Meldung, dass das Update erfolgreich war… letztlich bleibt es aber bei der Version „1.3.9“ und nur bei genauem Hinsehen bemerkt man, dass links ein kleines Ausrufezeichen ist und das der Satz, mit „V kennzeichnet, die Teile, die automatisch upgedatet werden können“ (auch prima!) und dass das unscheinbare „x“ nicht „ok“ bedeutet, sondern, dass es eine Warnung ist, dass dieser Teil nicht erneuert werden kann.
    Bildersprache (von Programmierern) ist grausam … Schluckimpfung hilft … auch nicht!

    Ist zwar insgesamt der einzig installierte Teil aber egal: Wen interessieren schon fehlerfreie Fehlermeldungen oder sinnstiftende Erklärungen! Alles vollkommen überbewertet!

    Ich soll in einer Log-Datei nachsehen. Aha. a) Welche Log-Datei? b) Wo ist diese Log-Datei?
    Alles wieder sehr lustig: Die Logdatei ist nicht auffindbar, weil es keine Namensangabe gibt.

    Fazit: Es scheint Probleme mit dem Phyton (speziell PIP) zu geben. Auch hier keine Angabe wo es eine Logdatei geben könnte.

    Mal sehen, wo ich einen Text mit unwichtigen Screenshots unterbringen kann.

    ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
    Folgende Fehlermeldung habe ich bei PIP bekommen (mit PIP kenne ich mich nun gar nicht aus. Immerhin weiß ich nun, dass es ein weiteres Framework zu sein scheint. Als wenn man noch nicht genügend hätte.):

    # # # # #
    Found existing installation: pyserial 3.2.1
    Cannot uninstall ‚pyserial‘. It is a distutils installed project and
    thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

    # # # #

    Deinstallation von OctoPrint mit Befehl „pip uninstall OctoPrint“ und Neuinstallation führt zu dem komischen Effekt, dass trotzdem wieder 1.3.9 installiert wird. Die alten Verzeichnisse hatte ich gelöscht und die Installation komplett neu nach Anleitung nachvollzogen.

    Von http://www.github... /latest wird die Version 1.3.10 heruntergeladen, wenn ich den Link eintippe, aber die Installation wird wieder eine 1.3.9. … (ein Cache-Problem?)

    Das Updateverhalten und das kleine Ausrufezeichen bleiben erhalten.

    Es bleibt also die Frage
    ————————-
    a) nach der Logdatei für PIP
    b) wieso er (manuell) 1.3.10 herunterlädt aber trotzdem 1.3.9 installiert
    c) wieso ein Update nicht möglich ist. (in der braunen Sprechblase wird das Update ja auch schon „verweigert“)

    Es müsste doch möglich sein, die lokal vorhandene Datei für „.10“ zu benutzen und zu installieren.

    ALTERNATIV:
    ===========
    – Kann jemand mit PIP umgehen? Die Online-Hilfe hilft (mir) nicht.

    – WIE deinstalliere ich OctoPrint manuell, sauber UND VOLLSTÄNDIG? DANN kann ich vielleicht die .10 so installieren und muss ich mich dem Problem erst mit der kommenden .11 wieder beschäftigen.

    Ahhhhhhhhhhhhhhh …..

  • BTW: OctoPi ist das SD Card Image.
    Sobald das Image auf der SD Karte ist heißt es nicht mehr OctoPi sondern OctoPrint.
    Ein kleiner aber feiner Unterschied, der dann wichtig wird, wenn es Probleme gibt damit man nicht aneinander vorbei redet.

    • Danke für den Hinweis. Wenn ich das richtig verstehe, ist das OctoPrint nicht spezifisch für verschiedenste Systeme ausgelegt und OctoPi ist ein für den Raspi angepaßtes Image von OctoPrint. Wenn ich das mal verwechsle ist das nicht unbedingt mit Absicht aber es sollte noch immer jeder verstehen worum es sich handelt. Eigentlich wollte Ralph schon einen neuen Beitrag zum aktuellen OctoPrint/OctoPi schreiben aber das scheint wohl leider auf der Strecke geblieben zu sein. Vielleicht raff ich mich nochmal auf obwohl sich nicht grundlegend etwas geändert hat.

  • Neuer PiZero erschienen!

  • Da wir zuletzt so intensiv über Filamentüberwachung gesprochen haben hier noch eine schöne Lösung: Simple Optical Filament Runout Sensor gefunden auf https://www.thingiverse.com/thing:1646220 Hier mal für alle die nicht in den Drucker eingreifen wollen mit PlugIn für OctoPi.
    Mal ehrlich – die Schalter oder Sensoren sind Pfennigartikel das gehört einfach in den Drucker!

    • Ich habs irgendwie vermutet, aber es scheint zu stimmen: Mit transparentem Filament funktioniert ein optischer Sensor nicht so gut.

      • Da könntest Du Recht haben! Bleibt also doch wieder nur der einfache Rollenhebelschalter. Aber mit OctoPi für den CR-10 eine gute Alternative. Eine direkte Möglichkeit zum Nachrüsten ist da leider nicht vorhanden.

  • Ich hab Octoprint nicht im Einsatz, aber Terminal Filters könnte dazu gedacht sein, um bestimmte, ständig wiederkehrende Statusmeldungen, wie z.b. M105 aus dem Terminalfenster raus zu halten, damit das übersichtlicher bleibt. Das wird sonst sehr schnell sehr voll, das Protokoll im Terminal. Ist verzichtbar 😉

    Die Scripts dürfte ähnlich wie die Start & End Codes im Slicer dazu gedacht sein, um z.B. vor und am Ende des Druckjobs noch bestimmte Befehle auszuführen. Kann man in der Regel auch so lassen, wie es ist. Ich benutze bei mir in Repetier-Server nur einen solchen Script, um den Extruder bei Abbruch eines Druckjobs in Parkposition weit weg vom Druckbett, das Bett nach vorne zu fahren und dann Motoren und Heizung aus zu schalten.

    Die spiegelverkehrte Kamera, schau mal, ob da eine Einstellung für FlipH und FlipV in denn Webcam Optionen findest. Falls nicht, müsste es auch durch editieren der Datei octopi.txt auf dem RasPi zu beheben sein. Siehe hier: https://github.com/foosel/OctoPrint/wiki/FAQ#how-can-i-change-mjpg-streamer-parameters-on-octopi

  • Hallo Hendrik,

    da bin ich wohl nicht auf dem neusten Stand. Ich muß sagen, das bedaure ich sehr! Dieses Projekt verdient die Aufmerksamkeit und Unterstützung der Druckerhersteller. Es liefert schließlich was die Druckerhersteller nicht liefern.

  • Hi Stephan, leider wird Octoprint nicht mehr durch bq unterstützt: http://octoprint.org/support-octoprint/

    • Das war Uwes erster komplett eigener Beitrag. Hat er doch gut hinbekommen. Wartets ab, der Uwe kommt noch voll auf den Blogger Geschmack..

      Jetzt müssen wir nur noch den Hendrik aktivieren..

      Die Art und Weise wie BQ nicht nur Gina, sondern auch Nils und Thomas Sanladerer (ja, der von Youtube) abserviert hat, war mit ein Grund, warum ich von BQ aber wirklich gar nix mehr wissen will. Dass ist für mich schon auf Makerbot Niveau

      • Danke für die schnelle Hilfe Stephan, dachte schon das Internet läuft über. Was Stephan sagen wollte, ich hab das erste mal WordPress bedient. Naja. Word ist es nicht.
        Ich kann mich zu dem Aus mit BQ nicht äußern da ich die Umstände nicht kenne. Traurig find ich es schon. Andere Hersteller profitieren aber auch davon und könnten in die Presche springen. Ich fürchte nur, das einer nur Knowhow abschöpfen will.
        Das mit der gespiegelten Kamera hat irgend wie mit dem
        mjpg-streamer zu tun. Dort läßt sich das auch spiegeln nur im Octopi hab ich es noch nicht gefunden (und nicht gesucht).
        Mit den Scripts und Codes läßt sich mit Sicherheit noch einiges treiben aber das ist wie mit Firmware verhackstücken und Software verwursten, man muß wissen wie. Mit fast 30 Jahre altem Basic komm ich da nicht sehr weit.

        • Hi Uwe,

          Das findest Du in den Einstellungen unter „Webcam“: Da sind sind unten dann 3 Checkboxen mit deren Hilfe Du das Bild spiegeln und drehen kannst.

          • Stimmt! Danke! Zumindest eines von beiden läßt sich damit spiegeln. Hab Octopi gerade nicht am Netz aber das Standbild oder das Video läßt sich nicht spiegeln. Auf der Mjpg-Streamer-Oberfläche ist es möglich aber die Funktion ist auf der Octopi-Oberfläche nicht vorhanden. Wenn ich etwas Zeit habe versuch ich mal den Hinweis von Stephan aber ist auch nicht so dramatisch! Wenn Einbrecher über die Kamera mein Haus ausspionieren und im dunkeln dann in selbiges einsteigen rennen sie prompt gegen die Wand! Ist doch praktisch!

Schreibe einen Kommentar zu Uwe R. Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert