The Zombie Printer

From Richmond MakerLabs
Revision as of 21:05, 3 January 2018 by Woodscooter (Talk | contribs) (Created page with "== The Zombie Printer == This 3D printer was originally a CTC printer, but had been modified by a previous owner. It was donated to RML with a missing extruder and dubious i...")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The Zombie Printer

This 3D printer was originally a CTC printer, but had been modified by a previous owner. It was donated to RML with a missing extruder and dubious internal wiring. On the Plus side, it had all three axis motors and an Arduino Mega with a SainSmart 3D printer shield including 4 Polulu stepper motor drives.

CTC printers are a cheap Chinese version of the early US MakerBot, which was based on an open-source design. MakerBot deserted open-source in 2012 and switched to making printers to its own proprietary design.

This is no longer a CTC printer because of its history of being hacked. As it has been re-animated, it's being called the Zombie Printer. What's in a name, anyway?

What you want to know is how to use it and what to do when things go wrong. Let's get started.

Overview of Software

A 3D design is held in a file of type .stl. These files are readily downloaded from Thingiverse, or exported from 3D design software such as Fusion360, Blender, OpenSCAD or Rhino. We start with an .stl file.

The 3D printer cannot read an .stl file. The printer needs to be given commands to move on an X-Y plane to lay down a trail of molten plastic representing one layer of the finished object. Then it must have a command to change height by one increment and receive commands that place another trail of plastic on top of the previous layer.

Printer move commands are given in g-code, similar to the commands that control 3D milling machines, derived from commands for X-Y plotters. The language of g-code is well established and written up all over the internet.

The software we use to convert from .stl to .gcode is called slic3r (pronounced 'Slicer'). The important thing about slic3r is that it holds parameters specific to the printer we are using. For instance, setting the maximum distances that can be moved in the X, Y and Z directions, the working temperature of the extruder and the build plate temperature, defining the size of the extruder nozzle and the diameter of the PLA filament.

Slic3r calculates the commands necessary to extrude exactly the right volume of plastic for every movement. Because the gcode file is written to match the printer, you can't use that gcode on a different model of printer.

The 3D printer can't accept the whole gcode file all at once. It has a limited buffer. So now we need a piece of software that feeds the gcode to the printer just when it's needed. This software also provides a facility to control the printer manually. You will need to move the extruder motor by itself when loading new filament, and move the build plate table when setting the initial Z=0 height. The zombie printer typically uses Pronterface for the task of sending g-code to the 3D printer.

Happily, slic3r and Pronterface are open-source software available for Linux, MacOS and Windows, so you can load them on your own laptop and plug in the Zombie printer using the USB cable. Alternatively, the desktop computer by the kitchen corner has them already installed.