A Smart 3D Printer Control and Processing System


SmartPrint3D is a "smart" 3D printing control and processing platform. Our first prototype 3D printer controller uses a Minnowboard Max, interfaced to a RepRap Arduino Mega Polulo Shield (RAMPS). We have tested our controller on a Printrbot Simple Metal, by replacing the original Printrboard controller. The platform uses four Pololu 4988 Stepper Motor drivers and an ADS7828 8-channel 12-bit I2C analog-to-digital converter (ADC), to monitor extruder temperature readings.

The Minnowboard Max provides the processing capabilities of the printer. Unlike many low-cost traditional 3D printers, which use Arduino Mega-based controllers, ours uses a multicore x86 platform capable of supporting a separation kernel such as Quest-V. This means the printer is able to operate without being tethered to a PC via a serial link. Instead, it is possible for the printer to operate like a smart Internet-of-Thing (IoT) device, whereby service requests are received via an on-board web server. The server can then run verification tools to ensure the print request is well-formed and will yield a valid print object. The G-code interpretation and real-time printer control for an active job can proceed in parallel, and without interference, from incoming jobs from the Internet.

This project serves as a testbed for an emerging class of smart IoT devices, for use in manufacturing and other areas such as automation and real-time control.

Thus far we have ported the popular Marlin 3D printing firmware to run as a Linux application. We leverage the Intel IoT Devkit and the mraa library for various tasks including I2C communication with the ADC.

The next step is to port Marlin to Quest/Qduino for improved real-time control and space-time isolation from Internet requests.

Prototype Controller Circuit


This work is funded in part by various grants, including NSF #0615153 and  #1117025, and a generous gift from Intel to develop system software for Intel-based processing platforms.

Quest, still searching...

Department of Computer Science, Boston University

Page maintained by Rich West
(Click here for my homepage)