3D printers have (ideally at least) evolved into devices that you don’t have to think about once you press the print button. Sure, there are failed prints, but after downloading or modeling your selected part, the file that is sent to a printer is largely unseen by the operator. You might not even know that printers work using the same sort of G-code that has controlled CNC machinery for generations, telling the print head what position to occupy in X, Y, and Z coordinates.
Uri Shaked decided to construct a plotter, and soon realized that his 3D printer had everything he needed hardware-wise to accomplish this task. Attaching the pen was just a matter of designing and printing the hardware on his “future 2D printer” (file available here), leaving the step of figuring out how to properly control everything.
He first had to find vector drawings, and calibrate everything, but the seemingly daunting challenge of generating code to run the printer turned out to be much simpler than he anticipated. Inkscape, an open source vector drawing program, already includes the ability to transform vector files into G-code (presumably for laser, CNC router usage, and the like), and its output was easily adapted for printer use.
The results are excellent but perhaps the more exciting aspect to this hack is that this functionality should be possible with a variety of tools meant for CNC control. This could open up a wide range of creative printer uses for those willing to experiment.