Print-Anywhere

For more on 3D printing, check out Make: Volume 42.  Don't have this issue? Get it in the Maker Shed.

For more on 3D printing, check out Make: Volume 42.
Don’t have this issue? Get it in the Maker Shed.

Tired of tying up your laptop with long print jobs? Then you’re ready for 3D-printer host software. It acts as a web server so that other computers and mobile devices can control your printer over a local network, or even the cloud.

Host software lets you monitor your printer’s temperature, percentage of job complete, filament remaining, even a live webcam to watch your print’s progress. And it’s small enough to run on affordable embedded computers such as Raspberry Pi, BeagleBone Black, or pcDuino!

OctoPrint interface with webcam monitor activated during a print.

OctoPrint interface with webcam monitor activated during a print.

OctoPrint

At the heart of host software’s rising popularity is the free and open-source project OctoPrint, created by software engineer Gina Häußge, and its community-distributed, easy-to-install OctoPi image.

On Christmas 2012, Häußge forked the code on Github for the open-source printer host Cura as the start of her new “Printer WebUI” to untether her printer from her computer and control it via a web browser. OctoPrint (octoprint.org) became a project of passion she would develop entirely in her free time for two years.
This past August, the Spanish technology company BQ hired Häußge to continue open-source development of OctoPrint full time — with a team of developers, UI and UX designers, QA department, and tech support team to back her up.

Octoprint Features

  • Untether your printer from your computer, for printing over a network — wired or wireless — from any web browser
  • Remote printer control software with custom-configurable controls
  • Monitor your print progress and temperature
  • Use live webcam feed to take reference shots or automatically film a time-lapse movie
  • G-code visualization (even while printing) and file management
  • Printer-agnostic — can interface with a variety of electronics and firmwares (Marlin, Sprinter, Smoothie) to operate a broad range of machines

Who Uses It?

Anyone using a FFF-style desktop 3D printer with Marlin firmware or its variants. OctoPrint is popular among 3D printer hobbyists, the RepRap community, and hardware/software hackers looking for custom functionality. It’s incompatible with the .xg3 files used by MakerBots.

Jason Gullickson’s OctoWatch Pebble project, github.com/jjg/octowatch.

Jason Gullickson’s OctoWatch Pebble project, github.com/jjg/octowatch.

Strengths

A large, active community of collaborators and users (Figure B) coupled with investment from BQ ensures that OctoPrint remains in active development, led by Häußge. The ambitious suite of options bundled into OctoPrint have defined what 3D printer host software should include.

Limitations

While Häußge has taken steps to keep OctoPrint tidy and responsive, recent projects such as AstroPrint (astroprint.com) are dedicated to optimizing a codebase for embedded computers, rather than the easy-to-collaborate path the OctoPrint community has followed. As a result, these other solutions (including 3DPrinterOS and Print to Peer) may run more efficiently on embedded hardware or offer greater customization.

Getting Started: OctoPi

Grab the ready-to-deploy OctoPi SD card disk image maintained by Guy Sheffer. Insert the card in your Raspberry Pi, follow the first-run installation wizard, and you’ll be up and running with OctoPrint, its software dependencies, and automatic configuration of typical network and wi-fi tools, webcams and PiCams, and other resources.

Bottom Line

With a passionate community, time, and money pouring into this well-respected open-source platform, OctoPrint is the tool to beat. Vendors such as Printrbot, Type A Machines, and DeltaMaker have taken to shipping embedded OctoPrint systems in their machines.

Get started with this great video guide to OctoPrint on the Raspberry Pi: makezine.com/go/gsoctoprint