OctoPrint is an open source
3D printer controller application, which provides a web interface for the connected printers. It displays printers' status and key parameters and allows user to schedule prints and remotely control the printer.
History
OctoPrint was created by
Gina Häußge in 2012,
who initially developed the software to support her first 3D printer. OctoPrint
was forked from
Cura
Cura or CURA may refer to:
Music
* ''Cura'' (album), 2018 Keys N Krates release
* Cura (instrument), Turkish musical instrument
Organizations
* Center for Urban and Regional Analysis (CURA), Ohio State University
* Institute on Culture, R ...
, and is available under the same
AGPL license. Development is hosted on
GitHub
GitHub, Inc. () is an Internet hosting service for software development and version control using Git. It provides the distributed version control of Git plus access control, bug tracking, software feature requests, task management, continu ...
.
Between August 2014 and April 2016, Spanish smartphone manufacturer
BQ financially supported OctoPrint development by employing Gina Häußge full time to work on it. When BQ discontinued support in April 2016, Häußge turned to
Patreon
Patreon (, ) is a membership platform that provides business tools for content creators to run a subscription service. It helps creators and artists earn a monthly income by providing rewards and perks to their subscribers. Patreon charges a com ...
.
, OctoPrint Patreon campaign receives over $6600 per month from over 2200 backers.
Starting with OctoPrint version 1.4.0 released on March 4, 2020, OctoPrint is compatible with Python 3. At the time of the release, most OctoPrint plugins were already compatible with Python 3.
In September 2018, a
vulnerability
Vulnerability refers to "the quality or state of being exposed to the possibility of being attacked or harmed, either physically or emotionally."
A window of vulnerability (WOV) is a time frame within which defensive measures are diminished, com ...
was publicized at the
Internet Storm Center {{multiple issues, {{no footnotes, date=November 2017
{{primarysources, date=February 2010
The Internet Storm Center (ISC) is a program of the SANS Technology Institute, a branch of the SANS Institute which monitors the level of malicious activity ...
of
SANS Institute
The SANS Institute (officially the Escal Institute of Advanced Technologies) is a private U.S. for-profit company founded in 1989 that specializes in information security, cybersecurity training, and selling certificates. Topics available for t ...
because "thousands" of users misconfigured their OctoPrint interface so it was available to the Internet without a login. This could result in not only a loss of data (intellectual property of designs) and privacy (through a connected webcam), but literal fires from poorly designed 3D printer safety controls.
Solutions that still enable worldwide access to a printer include using a commercial cloud printing interface like
AstroPrint
AstroPrint is a cloud platform and application marketplace designed for consumer 3D printing by 3DaGoGo Inc., a private San Diego-based technology company.
AstroPrint develops software to enable the management of desktop 3D printers from any w ...
,
Polar Cloud
The Polar Cloud is an American software platform for 3D printers that is owned and operated by Polar3D, LLC. The platform was launched in March 2017 and is now home to over 500,000 users in 160 countries. The platform is home to several programs an ...
, or 3DprinterOS as well as the OctoPrint Anywhere plugin or standard
VPN
A virtual private network (VPN) extends a private network across a public network and enables users to send and receive data across shared or public networks as if their computing devices were directly connected to the private network. The be ...
installations.
Features
OctoPrint provides a web interface for controlling 3D printers, allowing the user to start a print job by sending
G-code
G-code (also RS-274) is the most widely used computer numerical control (CNC) programming language. It is used mainly in computer-aided manufacturing to control automated machine tools, and has many variants.
G-code instructions are provided to ...
to a 3D printer connected via USB. OctoPrint monitors the status of the print job, as well as the printer itself, including the temperature of the print head (hot end) and the temperature of the bed, if the bed on the printer is heated. OctoPrint can also show the output of a connected webcam in order to monitor the state of the print, and can visualize the
G-code
G-code (also RS-274) is the most widely used computer numerical control (CNC) programming language. It is used mainly in computer-aided manufacturing to control automated machine tools, and has many variants.
G-code instructions are provided to ...
in sync with the print job, or asynchronously.
OctoPrint has a plugin system, allowing users to extend functionality. There are currently over 300 plugins listed in the official plugin repository as of July 2021.
These include advanced timelapse videos that trigger by layer and position the model and print head properly,
3D design collection sites such as
MyMiniFactory,
STL.garden,
integrating OctoPrint with Android apps and
Android Wear
Wear OS (also known simply as Wear and formerly Android Wear) is a version of Google's Android operating system designed for smartwatches and other wearables. By pairing with mobile phones running Android version 6.0 "Marshmallow" or newer, or ...
modules,
a
Pebble smartwatch,
software integrations with printers such as
BigBox3D,
MakerGear M3,
and
Robo 3D printers,
and both software and hardware integrations with
Prusa i3
The Prusa i3 series consists of open-source fused deposition modeling 3D printers, manufactured by Czech company Prusa Research under the trademarked name Original Prusa i3. Part of the RepRap project, Prusa i3 printers were named the most used ...
,
Proforge 2S,
and the industrial-level
GEWO HTP 260
and
AON3D printers. It has also been used by
Thomas Sanladerer in a PrintrBot as a self-contained and fully mobile printer build.
OctoPrint can run on a variety of systems, but is commonly run on
Raspberry Pi
Raspberry Pi () is a series of small single-board computers (SBCs) developed in the United Kingdom by the Raspberry Pi Foundation in association with Broadcom. The Raspberry Pi project originally leaned towards the promotion of teaching basic ...
. A distribution called
OctoPibr>
based on the
Raspbian
Raspberry Pi OS (formerly Raspbian) is a Unix-like operating system based on the Debian Linux distribution for the Raspberry Pi family of compact single-board computers. First developed independently in 2012, it has been produced as the primary ...
OS for Raspberry Pi, provides a pre-configured version of OctoPrint along with an mjpeg-streamer support for webcams.
OctoPrint recommends using the Raspberry Pi 3B, 3B+, 4B, or the Zero 2 and specifically warns against using the Raspberry Pi Zero W due to severe performance issues observed.
References
External links
*
* {{GitHub, foosel/OctoPrint
3D printing
Free software
Linux software
Windows software