OctoPrint

Webinterface zur Steuerung von 3D-Druckern

OctoPrint ist ein Open-Source-Projekt zur web-basierten Steuerung handelsüblicher 3D-Drucker. Es wurde von Gina Häußge 2012 als Cura-Fork begonnen und wird seitdem von ihr betreut.[1] Von 2014 bis 2016 wurde die Entwicklung durch den Unterhaltungselektronik-Hersteller BQ finanziert, bei dem Häußge bis 2016 arbeitete. Im April 2016 wandte sie sich in einem Blogposting an ihre Community und bat um die Unterstützung ihres Projektes über die Spendenplattform Patreon; seitdem wird das Projekt durch monatliche Spenden von mehr als 2300 Unterstützern finanziert.[2][3] Mit Stand Januar 2022 werden monatlich etwa 6000 € gespendet.[4]

OctoPrint


Screenshot vom Octoprint Dashboard in einem Mozilla Firefox.
Basisdaten

Hauptentwickler Gina Häußge
Erscheinungsjahr 2012
Aktuelle Version 1.8.6
(18.10.2022)
Betriebssystem Plattformunabhängig
Programmiersprache Python, JavaScript
Kategorie 3D-Druck
Lizenz AGPL-3.0
deutschsprachig ja
https://octoprint.org/

Funktionsweise Bearbeiten

OctoPrint kann entweder manuell auf einem Computer installiert oder mit dem OctoPi-Image auf einem Raspberry Pi eingerichtet werden. Nach der Installation startet OctoPrint einen lokalen Webserver und ermöglicht die Steuerung eines z. B. per USB angeschlossenen 3D-Druckers über ein Webinterface.

Neben der automatisierten Übertragung von G-Code bietet OctoPrint Möglichkeiten zur manuellen Steuerung und Überwachung des 3D-Druckers. Zudem kann eine Webcam eingebunden werden, um ein Livebild vom Drucker zu erhalten und beispielsweise Zeitrafferaufnahmen zu erstellen.[5] Octoprint bietet umfangreiche Einstellungsmöglichkeiten und ermöglicht das Anlegen von Profilen und Nutzern.

Durch Plugins, beispielsweise aus dem offiziellen Plugin Repository, kann die Funktionsweise von OctoPrint erweitert werden.

Kompatibilität Bearbeiten

OctoPrint wurde mit einer Vielzahl an 3D-Druckern getestet. Laut Nutzerstatistik[6] werden derzeit Drucker der Marke Creality 3D am häufigsten verwendet – dicht gefolgt von Druckern des Herstellers Prusa, wie dem beliebten i3. Während äußerst selten Kompatibilitätsprobleme bei 3D-Druckern mit einer unveränderten Open-Source Firmware wie Marlin auftreten, ist die Verbindung mit vielen 3D-Druckern, die proprietäre Protokolle einsetzen (beispielsweise der Makerbot Gen 5) meist nicht möglich.[7]

Die Software verfügt über eine REST API Schnittstelle und ermöglicht so die Steuerung durch andere Applikationen, beispielsweise durch eine Android-App oder eine Smartwatch.[8] MyMiniFactory, ein Anbieter von Modellen für den 3D-Druck, bietet seinen Nutzern seit November 2018 ein Plugin für OctoPrint an, mit welchem die Nutzer Modelle der Webseite direkt an eine OctoPrint Instanz schicken können.[9] Das Slicing übernimmt hierbei MyMiniFactory, das Feature wird als „Click & Print“ bezeichnet.[10] Auch die Integration in verschiedene Heimautomatisierungssoftwares wie z. B. ioBroker ist mittels eines Plugins möglich.[11]

Sicherheitsrisiken Bearbeiten

Im September 2018 berichtete das Internet Storm Center (ISC) des SANS-Institutes, dass zahlreiche OctoPrint-Instanzen ohne Authentifizierung öffentlich über das Internet erreichbar sind. Insgesamt wurden 3759 frei zugängliche Instanzen registriert, 357 dieser Instanzen befanden sich nach Angaben des ISC in Deutschland.[12][13][14] Die öffentlich zugänglichen Instanzen sind problematisch, da Fremde die angeschlossenen 3D-Drucker steuern, auf eine angeschlossene Webcam zugreifen oder die gedruckten Dateien herunterladen könnten.[12] Gegebenenfalls ist es möglich, die Firmware von angeschlossenen 3D-Druckern zu manipulieren.[15]

Das Projekt reagierte mit einem Blogposting, welcher vor Portweiterleitung – welche die Instanz i. d. R. öffentlich zugänglich macht – warnte.[15] Stattdessen wird empfohlen, einen Zugang über spezielle Plugins oder einer gesicherten Verbindung (z. B. VPN) einzurichten.


OctoPrint verfügt über ein Zugriffsmanagement, welches in der Standardkonfiguration nur angemeldeten und autorisierten Nutzern den Zugriff auf den Drucker, hochgeladene Dateien und die Webcam-Ansicht innerhalb OctoPrints ermöglicht.[16]

Weblinks Bearbeiten

Einzelnachweise Bearbeiten

  1. first commit. Abgerufen am 23. April 2019 (englisch).
  2. Gina Häußge is creating OctoPrint. Abgerufen am 23. April 2019 (englisch).
  3. Gina Häußge: I need your support. Abgerufen am 23. April 2019 (englisch).
  4. Patreon. Abgerufen am 24. Januar 2022 (deutsch).
  5. Gina Häußge: OctoPrint.org. Abgerufen am 23. April 2019 (englisch).
  6. OctoPrint Nutzerstatistik
  7. Gina Häußge: OctoPrint is the snappy web interface for your 3D printer!: foosel/OctoPrint. 23. April 2019, abgerufen am 24. April 2019.
  8. REST API — OctoPrint 1.3.10.post9.dev0+g03e328fd documentation. Abgerufen am 24. April 2019.
  9. jneilliii: Contribute to jneilliii/OctoPrint-MyMiniFactory development by creating an account on GitHub. 15. Februar 2019, abgerufen am 25. April 2019.
  10. How to Use the MyMiniFactory Plugin on Octoprint. Abgerufen am 25. April 2019.
  11. Matthias Kleine: ioBroker adapter to manage your 3D printer over ioBroker: klein0r/ioBroker.octoprint. 2. März 2019, abgerufen am 26. April 2019.
  12. a b 3D Printers in The Wild, What Can Go Wrong? Abgerufen am 25. April 2019.
  13. heise online: OctoPrint-Chefentwicklerin: 3D-Drucker gehören nicht ins öffentliche Netz. Abgerufen am 25. April 2019.
  14. Catalin Cimpanu: Thousands of 3D printers may be leaking private product designs online. Abgerufen am 26. April 2019 (englisch).
  15. a b Gina Häußge: A Guide To Safe Remote Access of OctoPrint. Abgerufen am 25. April 2019 (englisch).
  16. Access Control. Abgerufen am 25. April 2019.