3-D Printer With Raspberry Pi
Zachary Bales is an undergraduate studying electrical engineering and physics at Cal State Long Beach. He got into building a RepRap while acting as president of his engineering class. 3-D printing technology felt futuristic, but leaving a laptop attached to a printer for the duration of a modest five-hour print job seemed as dreadful as history class. So he tricked out his Prusa Mendel RepRap with a Raspberry Pi, a 7-inch touchscreen tablet, and some code from Github.
“I just wanted to make a self-contained system that was easily transportable,” says Bales. “I am using my main computer to do the slicing of the STL files to generate the gcode. Right now I am saving everything to my Dropbox account and just downloading the G-Code files on the Pi.”
The credit card-sized computer still doesn’t replace a PC entirely — the slicing software that turns complex 3-D models into simple 2-D cross sections is too memory-intensive for the tiny board, and an Arduino still controls the mechanical components, but the Raspberry Pi is making printers faster and more convenient.
While the Raspberry Pi solves the hardware problem, there’s also a variety of software options available to hackers to control this setup.
Printrun
The modded Mendel is impressive, but the bulk of the credit goes to Printrun, a suite of Python programs (including Pronterface, the code that Zach used) that host files for the 3-D printers. Printrun adds a GUI layer to the standard practice of printing STL files from an SD card. Now, makers can move their part around on a print bed or make other small changes without having to turn to their laptops. It’s one of the most popular tools of its kind, second only to ReplicatorG, which is the MakerBot equivalent.
Repetier Firmware/Host/Server
Repetier is focused on making software to simplify the entire 3-D printing process and have created new firmware for the Arduino to run the printer as well as PC software to prepare models for printing. Their new Repetier server software is designed for the Raspberry Pi and allows for files to be added to the print queue through a web interface. Hackerspace administrators will appreciate its ability to serve multiple printers from one interface and monitor the print state of each. Funnily enough, the server software was delayed because its creator couldn’t get his hands on one of the popular — and often hard-to-get — Pi boards.
OctoPrint
OctoPrint has the same basic features as Printrun and Repetier — it can prepare jobs for printing, preview G-Code, and monitor the progress of print jobs. It can also do some fun things like create time lapse movies of parts being produced. Combined with the new Raspberry Pi camera and a little hacking the OctoPrint could be set up to automatically record timelapse videos of every print job, push them to YouTube, and create the first channel featuring nothing but 3-D prints.
Printerface
While 3-D printer software is now attracting people with financial motives, the hacker era is far from over. Walter Schreppers, an engineer from Belgium, developed an app called Printerface (not to be confused with the above-mentioned Pronterface) that allows makers to control their printers through a web connection and calls out the fact that it’s not just portability that makes the Raspberry Pi an idea choice for 3-D printers, but efficiency and environmental friendliness as well. “It prints smoother than using a laptop running a bunch of other services not needed for printing and it draws much less power. These mini PCs only consume 5-10 watts instead of a laptop that uses ±80 watts,” he writes in his Github profile.
For cutting-edge creators, there are plenty of options to experiment with, but there is a gap in the market — good user experience design. “I think the biggest thing would be just getting the Pronterface software on the RPi itself,” says Zachary Bales. “I was having trouble downloading it directly to the Pi, so I just plugged the SD card into my computer and transferred it over directly to the folder where I want it (I have a Linux partition on my computer). The next thing I want to do is to set up some kind of shared folder between my computer and the Pi, so I can just drop the G-Code files in the folder.”