There are many ways for companies to upgrade a 3D printer: adding a power boost, the ability to 3D print with multiple materials, a vat made of stainless steel rather than plastic, even filament detector systems. But, if you prefer more DIY upgrades, you can always take a page out of Hackaday blogger Tom Nardi’s book and get OctoPrint.
The free, open source software, created and maintained by Gina Häußge, offers a web interface so users can control and monitor their 3D printers from anywhere, any time, from within their browser. It basically turns old computers, and even small ARM boards like the Raspberry Pi, into network-accessible 3D printer control panels, and can even control other hardware like smart plugs, lights, and enclosure heaters.
When Nardi decided to set up a second 3D printer for large projects, he realized that he would not be able to control them from the same machine. So, rather than printing from an SD card on the second 3D printer, he went the OctoPrint route, and detailed the experience in a blog post.
First, he purchased a used PrintrBot Play, due to its automatic bed tramming, ability to fit on a shelf, and copious amounts of room in the base for extra hardware, and then bought a $10 Pi Zero W to act as the OctoPrint host.
“My research told me that the Pi Zero wouldn’t have the zip of the Pi 3 when it comes to slicing STLs, but that didn’t seem like too bad of a trade-off given the small size and reduced power consumption,” Nardi wrote. “I was specifically interested in low current draw, as I wanted to run the Pi directly off of the expansion port of the Printrboard, which I knew had a 5V regulator that’s only rated for 300 mA. Everything I read online told me this wouldn’t be a problem for the Pi Zero, especially since I could turn off the HDMI port as it would be running headless. But as I was about to find out, reality doesn’t always agree with the documentation.”
Nardi planned to use the Printrbot’s controller board to power the Pi, and tested it out first with a USB current monitor. The first test showed that when the Pi Zero was performing tasks that were heavy on resources, like updating packages or slicing, it topped out at around 180 mA. While he did have to disable the HDMI output to enable the low power consumption, he knew it wouldn’t be an issue, since “the Pi would be installed inside of the printer and never needed to get connected to a display.”
“Feeling confident, I soldered some headers to the Printrboard’s expansion port and the Pi’s power pins, and connected them with a couple of jumpers,” Nardi wrote. “I powered up the board and waited patiently for the Pi to hop on the network and allow me to connect to OctoPrint. But…nothing.”
The power indicator light for the Pi showed that it was shutting down during the booting process, as the current shot up to 280 mA right before the restart began, which was too much for the Printrboard. So Nardi moved to Plan B and got a small, inexpensive BEC (Battery Eliminator Circuit) module, typically used to convert the main battery in RC vehicles, and soldered its leads to the bottom of the PCB, before plugging its standard servo connector into the Pi’s GPIO header.
Looking at the overall hardware layout, the BEC is wedged between the center stepper motor and the Printrboard, while the Pi Zero is screwed into a 3D printed mount that Nardi designed himself. He was originally going to drill holes in the case to screw the mount down, but instead used double-sided tape and nut traps on the flanges once he determined that the screw heads would have caused interference to the print bed’s movement.
According to Nardi, it’s very easy to set up OctoPrint, even if you have no prior experience, though he does suggest the pre-made SD OctoPi image if you want to see all of the latest OctoPrint and ancillary packages for Raspberry Pi.
Once the OctoPrint web interface is up, you’ll see what Nardi calls a “very slick setup wizard,” which helps you set the 3D printer up. First, it will ask you to import configuration information from Cura, and if you want to set up user authentication – a very important choice for remote accessibility of your 3D printer. Once the basic setup is done, Nardi says you will likely get a prompt to update OctoPrint, which is handled in the web user interface. After updates are complete and OctoPrint is finished rebooting, a main interface will appear, which includes features like a basic file manager, manual controls to move the 3D printer, and a place to choose the desired temperature for hot ends and heated beds.
Nardi is admittedly impressed with OctoPrint, due to its “vast” capabilities and convenient ability to monitor 3D print progress from a smartphone. In addition, because the Pi Zero W is so inexpensive, Nardi calls OctoPrint “an upgrade that simply can’t be beat in terms of return on investment.”
“Yes, it’s absolutely worth upgrading your printer to OctoPrint,” Nardi wrote. “It’s not a perfect experience, but it’s very close, and honestly the handful of glitches or annoyances I’ve seen are hardly worth mentioning in the grand scheme of things.”
Will you upgrade your 3D printer with OctoPrint? Let us know, and discuss other 3D printing topics, at 3DPrintBoard.com or share your thoughts below.[Source/Images: Hackaday]