Poor Man's 3D Printer

FeaturedContest Winner
Picture of Poor Man's 3D Printer

My goal was to build a cheap and inexpensive 3D Printer for less than 100 Dollar/Euro

What are the features of the Poor Man's 3D Printer ?

- Fused deposition modeling ABS/PLA

- Heat bed

- use of open source firmware, modified version of Tonokip

- free host software, Repetier-Host

- bowden-extruder

- max. build size 40mm x 40mm x 40mm

- resolution 0.08mm

Remove these adsRemove these ads by Signing Up

Step 1: Parts

Picture of Parts

Parts i bought:

- Arduino Board Mega 2560 (on ebay from china): 10 Euro

- 2 pcs. Stackable Motor Driver Shield L293D 6 Euro

- Hotend MK7 MK8 noozle 0,4mm+thermistor+cartridge 20 Euro

- PTFE Tube 4 x 2mm & 2 pcs. 1/8" BSP 6 Euro

- Fan 30mm x 30mm 2 Euro

- MOSFETs,resistors,caps,LEDs,thermistor 5 Euro

Recyled PC/printer part:

- 4 pcs. DVD/Blu-ray drives, with stepper motors ! old cd drives can't be used because they work with dc-motors

- old PC power supply, 12V/5A and 5V/2A are required

- stepper motor nema17-like from old printer for extruder

- i use a modified gear (see pictures) from an old hp printer for the bowden-extruder, optional you could get an airtripper extruder for about 25 Euro

Things that every hobbyist has in his garage :-)

- many screws, nuts and washers M3,M4,M5

- lots of wires

- aluminium-sheet for the frame, you can also use wood

- some alu/metal profiles, see pictures

Step 2: Pictures from building the chassis

Picture of Pictures from building the chassis
2014-01-17 16.29.59.jpg
2014-01-17 17.27.41.jpg
2014-01-17 17.27.31.jpg
2014-01-17 17.55.15.jpg
2014-01-17 17.36.13.jpg
2014-01-18 17.51.20.jpg

Step 3: Endstops

Picture of Endstops

use endstops from dvd drive !

Step 4: Counterweights

Picture of Counterweights
2014-06-04 17.31.06.jpg

I had to made counterweights for the z-axis because the x- dvd drive + Hotend are too heavy for the small steppers

The counterweight is simply connected through a cord and a pulley with the drive.

The weight of one counterweight = weight of (x drive + hotend) /2

Step 5: Extruder

Picture of Extruder
2014-02-02 16.04.05.jpg
2014-06-04 18.03.50.jpg
2014-06-03 19.16.00.jpg

The Extruder was build of a gear of an old hp printer deskjet 300. I remove the original stepper (too weak) and

replace it with a bigger one, i find two of them in an epson stylus color 600.

The shaft was shorten and milled grooves with a dremel, then a metal gearwheel was placed near the shaft.

The gearwheel has one groove too.

1-40 of 65Next »


i want to make it but i dont know about it programing and some sort of Gcode

Help me in programing at were i placed the Cad software Gcode

Kante Tech9 days ago

Does it have to be arduino mega and have you thought about printing out materials that are different than cubes to fully test the machine?

Gelstronic (author)  Kante Tech9 days ago

I think you could also use an arduino pro mini 324, and i have print other things, see step 12 !

Gelstronic (author) 22 days ago

update, see above !

wzor Gelstronic22 days ago

Very bad prints.

Well, such a small design ( less than 3cm high? ) with a 0.4mm needle, on a really cheap printer, is good enough!

Possibly still requires some fine tuning to get the best out of it, but that's a part of making it your self.

This project made me to make my own as well! I'm building a similar one, but instead, the extruder will be fixed! the base will do the job. I hope :D

Can you tell me how I can determine the power those motors need? Mine are different from each other and no info (apart from serial number) is there!

Gelstronic (author)  ruisantos1017 days ago

With my first motor shields i use 5V for all kind of DVD steppers ( 3 different ones) and the motors were not too hot.

Now i use the A4988 steppers which operates with a minimum of 8 Volt and so i limit the current to 200-300 mA.

Well, that makes sense! I suppose they won't get that much hotter than on 5V.

I've been looking at the L293D shield which provides 4.5-36V and 0.6A continuous per phase, and allows 2 steppers each. And it can be stacked with more parallel H-bridges, to double the current! That's nice for upgrades.

Have you worked with those?

The A4988 seem more powerfull, but they're a bit more expensive too. Are they worth the difference in terms of performance?

Thank you!

g0l0v1nv18 days ago

I want to repeat your printer. Unable to compile the firmware Tonokip, the compiler Arduino writes error. Please tell me what I did wrong?

Gelstronic (author)  акостин1 month ago

do you use the newest Aduino IDE 1.0.5 ?

Yes, I have a new Arduino IDE 1.0.5. Maybe it in the library?
Gelstronic (author)  акостин1 month ago

Try to delete the AFMotor files in you library folder because the code brings his own libraries

I deleted the file AFMotor from the library, you still receive a compile error. The sketch is not specified files "AF_StepperA motorZ(20, 1)" and "AF_StepperA motorE(20, 2)".

AF_StepperA motorZ.jpg

hello, i have same compiler problem as like you. did you find any solution ? if you , please let me know. i guess it firmware (pin and Af motor) problem, thanks


Unfortunately I was not able to solve this problem. To control the machine I used firmware Teacup and 5 drivers pololu A4988.

onecell28 days ago

Hello, First of all i want say thanks to you for shear this project with us . I am half way to making one. I download all software and firmware as you recommend. And also understood methodology of mechanic. I am using same motor shield. But i got problem, when i go to upload the firmware(Tonokip) to my arduino mega 2560 , its giving me error(C:\Users\AppData\Local\Temp\build5230488994282191409.tmp/AFMotorA.cpp:424: first defined here). i did copy Tonokip folder to my arduino libraries. I just got confused here. Can you explain what to do about Tonokip firmware. I really look forward for your answer. Thanks again . Oh i also want to know how dose working your 3d printer . Thanks man

Gelstronic (author)  onecell27 days ago

Look at the bottom of the comments, user "акостин" got the same problems like you.

Maybe you could write him a PM if and how he fix the compiler problems.

cophoff1 month ago


awesome tutorial. Do you think it's possible using a TB6560 board instead of the arduino control boards?

keep up the good work.

Gelstronic (author)  cophoff1 month ago

yes, that should be possible but at the moment I'm working on ramps 1.4 that have become so cheap on ebay and there are lots of good working/supporting code.

Allright, thanks. It's because I bought a TB6560 once, but never did something with it. I'm hesitating between doing something like you did, or build one with real stepper motors that has larger build dimensions.

bergerab1 month ago

I love to see that someone actually used those old DVD/CD motors to make something awesome! Great instructable!

techboycr1 month ago

One last question! Did you make any changes to Tonokip to work with the cd rom Steppers o did work out of the box?

Gelstronic (author)  techboycr1 month ago

It didn't work out of the box, i had to make changes and add the libraries for the stepper shields.

techboycr1 month ago

Hi! Excellente project!

I am wondering if the following can be accomplished. Would be possible to use the toniko firmware with Arduino UNO and the "Easy Driver" from Sparkfun??


Gelstronic (author)  techboycr1 month ago

It's not possible with my modified version of tonokip but there's an arduino tutorial at sparkfun. It'll be easy to implement this in the orig. tonokip.

You could also use a ramps board with 4 pcs. Pololu stepper driver , it's much cheaper than the easy driver and you could directly use a reprap firmware like tonokip, teacup or whatever.

Thanks! I will port it to Teacup using the same build here.

Would you like to explain to me the temperature circuit? I can't quite understand how it goes.


Gelstronic (author)  techboycr1 month ago

Have a look at the ramps circuit, it's a little bit more detailed.

JesusGeek1 month ago

This looks like a post from Atmel I saw. Was this the poor man's 3D printer I saw?

cemal11 month ago

I'm a little confused about if you can use cd drives. Can you use cd drives or do you have to use dvd/bluray drives?

Gelstronic (author)  cemal11 month ago

Take a look at the motor of the cd drive, if there is a stepper motor installed (motor with 4 pins !) than you could use it but i don't know if the resolution is as good as a motor from a dvd drive.

The cd drive motors that i'd found were useless, it was all just dc motors

(2 pins)


I was just wondering what driver boards you are using for the motors

Gelstronic (author)  Andrew Neilson1 month ago

The shield only "drives" the current the rest is done by the microcontroller

xarlock6671 month ago

Everything about this is kewl. You are kewl for both designing it, and posting it. I have been looking for a way to get one up and running for next to nothing for quite a while now. This is the closest I have come.

Alderin1 month ago

Very cool recycling of old optical drive parts! I never considered the configuration you've got here, with one axis as the table, and the z axis moving the gantry for the x axis. The configuration makes the printer highly compact compared to having an x/y table and z on a post (common low-cost DIY approach), or a full gantry with no table motion ("ShopBot" style common for larger CNCs/3d printers).

If it were larger, I might be concerned with keeping the two Z axis drive systems aligned, but for the size available with the parts you used, this is not likely to be an issue.

Great work!

Gelstronic (author) 1 month ago

Hi at all,

i added some pictures and text/infos above. It's not possible to make a 100%-building manuel, there are some things you have to figure out for yourself while building the printer, e.g. there are many opportunities to fix the drives together.
Once again, this is no overnight-project, if you have no experience in 3D printing
(like me before) it takes some time to get the machine running, the most difficult
part is getting the extruder/hotend working. I started with ABS, now i read that
the handling of PLA is easier. I ordered some and will give it a try.

so long

funbob1 month ago

really nice instructable. I have been working on something similar with recycled parts only i resorted to pen driven cnc for creating pcb masks to negate heavy weights associated with anything else. I'm very interested in the counter weight idea so i can expand my plan but I cant fully understand the idea from the images you have uploaded. could explain a little more?

pissu kolla1 month ago

How did you wire the rom motors ?

Gelstronic (author)  pissu kolla1 month ago

the motors have four pins, measure the two coils and wire them to the shield.

The 2 z-axis motors are wired in parallel to the shield. For the right direction you've to find out yourself by interchange 2 wires from one coil.

1-40 of 65Next »