It only cost Lizzit €10 to build the closed loop 3D printer – almost everything was able to be salvaged from scrap. He also created some open source firmware for the printer, which is available on Github.
“Inkjet printers are incredibly cheap and most printers do not last more that a few years before the inkjet nozzle breaks or the paper loading mechanism starts to fail; as a consequence lots of broken inkjet printers can be easily obtained in junkyards or from friends,” Lizzit explained.
As Lizzit explains, every inkjet printer has one axis that’s similar to what a 3D printer needs – with the exception that most inkjet printers no longer use stepper motors. Instead, they use a cheaper DC motor, combined with a linear optical encoder; the data from the coder is interpolated while the motor runs at full speed, and this triggers the nozzles.
Some of the advantages to Lizzit’s unique printer design include closed loop control, which knows where the axis is so you don’t lose hours of printing time if the stepper driver overheats and goes into thermal protection mode, which throws off the firmware. Additionally, the printer does not require calibration – just input the resolution of your encoder strip into the firmware configuration file. Another plus is the DC motor in inkjet printers – when they’re not moving, they’re not powered, unlike stepper motors. This helps reduce the printer’s total power consumption. The printer also doesn’t need as much maintenance, due to its lack of a hobbed bolt, which needs periodic cleaning.
According to Lizzit, “The main purpose of this experiment/printer was to demonstrate that it is possible to reach a reasonable precision using linear encoders from old inkjet printers.”
Lizzit has added the build instructions for his inexpensive printer to his website, though obviously the first step is to disassemble the existing inkjet printers. He said all you need to build a similar printer is the following:
- 3 inkjet printers and a scanner (or a multifunction printer)
- a hotend (€4)
- an ATmega328 (or an Arduino nano) (€1.50)
- an L298 or L298-based motor driver (€1.50)
- 3x A4988 driver boards (€3)
- a BDX53 or other suitable high-current darlington transistor (<€1)
Once the printer is put together, you’ll need to connect everything to the Arduino and upload the firmware.
Lizzit said, “Be careful not to run too much current on the breadboard traces (if you are using a breadboard), at least part of the circuit has to be soldered on a protoboard. Exceeding the specifications is not a good idea, I realized that when, while developing the printer, I have accidentally run 8 amps through the breadboard and my bedroom (which is where I currently hold the printer) started all smelling of charcoal and burnt plastic…”
Then, just connect to the printer with Pronterface, or any other 3D printer host software. Discuss in the Student-Created 3D Printer forum at 3DPB.com.
[Source: New Atlas / Images: Michele Lizzit]