OctoPrint

Ich gehöre wahrscheinlich zu einer Minderheit, da ich nicht einfach für jede Anwendung ein eigenes Image auf den Pi kleben will. Dieses Vorgehen wirkt für mich so, als wenn man sich ein Auto kauft, damit dann aber nur irgendwas transportiert, da man die Rücksitze umgeklappt hat. Für den Transport von Personen muss ein neues Auto her, anstatt einfach die Sitze wieder hochzuklappen.

Klar, für viele Benutzer sind die Images natürlich äusserst ansprechend. Man muss sich um nichts kümmern, spielt einfach ein Image auf die SD-Karte und das läuft. Dagegen ist nichts zu sagen.

Ich für meinen Teil will die Dinger aber möglichst viel ausnutzen. Von daher will ich Anwendungen wie OctoPrint auf das bestehende OS installieren und dann neben anderen Anwendungen nutzen.

Installation

Unter Arch kann man OctoPrint über AUR installieren. Das User-Repository kann man einfach clonen:

git clone https://aur.archlinux.org/octoprint.git

Um es bauen zu können, muss man jedoch noch einige Anhängigkeiten installieren. Um das zu vereinfachen, kann man einfach die folgende Zeile kopieren und einfügen, dann wird alles installiert (zumindest bei octoprint 1.4.2-1).

sudo pacman -S python-feedparser python-filetype python-frozendict python-future python-markdown python-netaddr python-regex python-rsa python-tornado python-unidecode python-wrapt python-virtualenv gcc

Okay. Noch makepkg und laufen lassen. Das dauert ein bisschen! Wer genauere Informationen braucht, wie das mit AUR funktioniert, kann hier vorbeischauen. Dort habe ich es erklärt.

Ist das durch, einfach mit pacman installieren.

sudo pacman -U octoprint-1.4.2-1-any.pkg.tar.xz

Wer nach diesem Artikel vorgeht, sollte aber darauf achten, dass es in Zukunft neue Versionen geben dürfte und die entsprechend angepasst werden muss.

Einrichtung

Also. Während die Installation noch so verlief, wie ich mir das gedacht habe, musste ich erst einmal suchen, wo genau das Ding jetzt installiert ist. Das habe ich dann aber tatsächlich herausgefunden, man stelle sich vor und gestartet wird es so:

/usr/lib/octoprint/bin/octoprint-serve

Muss man erst einmal drauf kommen.

Auf jeden Fall rumpeln dann dutzende von Anzeigen durch das Terminal, bis die Kiste dann irgendwann gestartet ist.

So. Ich für meinen Teil verwende es über meinen VPN. So erreiche ich nun die OctoPrint Oberfläche im Browser:

<ip>:5000

Zum Testen auf dem Pi kann man natürlich folgendes nutzen

localhost:5000

Läuft doch! Jetzt die Einstellungen. Da muss jeder selbst wissen, wie er es dort gerne hätte. Auch welche Geschwindigkeiten der Drucker erreichen kann, bei den einzelnen Achsen, muss jeder von seinem Drucker selbst wissen. Da kann ich nicht helfen.

Wenn aber alles geklappt hat, sieht es im Browser so aus:

Der Serial-Port ist, wenn man sonst nichts angeschlossen hat:

/dev/ttyUSB0

Ist noch etwas angeschlossen, so kann es auch eine andere Zahl hinter USB sein. Muss man prüfen.

Ich Persönlich hatte ein Problem mit der Verbindung. Ich musste erst die Ports durchprobieren, dann ging es auf einmal. Keine Ahnung, wo hier das Problem gelegen hat. Wenn sich also keine Verbindung herstellen lässt, sollte man den Port wechseln, vielleicht hilft es ja.

Im Prinzip ist man damit dann fertig und kann loslegen.

Autostart

Ich für meinen Teil möchte, dass OctoPrint direkt beim starten des Pi mit gestartet wird. Dazu bedarf es eines kleinen Skriptes, welches so aussehen sollte:

[Unit]
Description=Autostart für OctoPrint
After=network-online.target
Wants=network-online.target

[Service]
Environment="LC_ALL=C.UTF-8"
Environment="LANG=C.UTF-8"
Type=simple
User=[USER]
ExecStart=/usr/lib/octoprint/bin/octoprint-serve

[Install]
WantedBy=multi-user.target

Das wird als SuperUser abgespeichert unter:

sudo nano /etc/systemd/system/octoprint.service

ABER! Wo hier [USER] steht, muss der Name des entsprechenden Users auf dem Pi angegeben werden. Bei vielen ist es banal pi. Ich verwende diabolus. Aber ich denke, diese Information sollte ja jeder haben.

Sollte es so nicht funktionieren, muss man den Pfad hinter ExecStart= überprüfen. Vielleicht deckt der sich aus irgendeinem Grund nicht mit dem, wo ocotoprint-serve wirklich abgelegt ist. Hier kann man einfach suchen lassen:

sudo find / -name octoprint-serve

Das kann manchmal ein bisschen dauern, aber so kommt man auf jeden Fall an den korrekten Pfad.

Klappt alles, kann man OctoPrint fortan einfach starten über:

sudo systemctl start octoprint

Um es beim Start gleich mitstarten zu lassen, benutzt man folgendes:

sudo systemctl enable octoprint

Aber Achtung. Ich habe festgestellt, dass der Pi damit etwas länger braucht, bis er gebootet ist. Also keine sorge, wenn er etwas auf sich warten lässt.

Schreib einen Kommentar

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