Introduction: DIY 3D Printer Kits – Woes and Wonders
In the past few months I’ve assembled or helped to assemble 3 different 3D printer kits from Chinese manufacturers. While this certainly is not an exhaustive list of printers or manufacturers, my goal is to give you an idea of what you might expect if you decide to go this relatively inexpensive route to having a 3D printer.
I will list each printer I have experience with and links to the store and/or manufacturers website. Please do your homework before making ANY purchase. In the cases where I highlight problems with the kits, you might wish to contact the manufacturer prior to purchase to see if they have resolved those problems.
If you have experience with a different kit, PLEASE leave a comment. If you’d like to write a page on that kit, which can be included in the Instructable as a step, you are welcome to send it to me and I will add it with attribution, a link to your site, or your Instructables.com account, as you wish.
Before getting into specific models I'll start by saying that going the kit route you will have problems. And because most of the kits are made and distributed from China, you will not get very good support if any at all. Certainly when new parts are needed you will need to wait weeks for them to arrive if you get support. So why bother? Because #1 you will save money, though you had better budget at least an extra $100 above what you spend on the kit, as well as a lot of time. And #2 you will learn more this way, and #3 it will probably cost you less to buy a kit than it will to buy all of the parts separately to build your printer based on Internet instructions.
Step 1: Kit #1: JG Aurora Z 605S
The first DIY 3D Printer Kit I had experience with is the JG Aurora Z 605S that was sent to me by the people at gearbest.com. This printer kit normally costs around $220. There are a few articles on Instructables.com about this printer, including one that I wrote which details how to fix a very big problem with the kit. Nevertheless, given that the other articles featuring the printer do not mention the problem that I had, it might have been a fluke. And after fixing the initial problems, the printer works almost flawlessly. It is my go to 3D printer. It prints PLA almost without a thought, ABS with a bit of Elmer's glue stick help, PETG right on blue tape, and now that I've added a Flexion Extruder it does great with flexible filaments, including Inland Flexible PLA, Ninja Semiflex and NinjaFlex.
The first problem with this kit was that about $20 (at local hardware store retail prices) worth of hardware was missing. Fortunately it was all fairly standard M3 and M4 hardware that local hardware stores carried.
Another "woe" of this printer kit is that it uses a non-standard RAMPS clone that can not be programmed. It means you can't customize the firmware. And it means that you can't use altered and recompiled firmware to solve the biggest problem. The board appears to be the equivalent of a RAMPS 1.4 board with a built-in Arduino Mega, but I was assured that the firmware could not be altered/re-compiled and reinstalled.
By far the biggest problem with this printer was that 4 or the 5 stepper motors were reversed. Because of the aforementioned issue with firmware, it is not possible to just change the Configuration.h file and recompile and install the firmware to solve this problem. I had to create cables that reversed the wires for each motor. With a normal RAMPS board this would not have been a problem because it would be easy to reverse the connection by simply turning the connector around, but on this board, the connector only fits one way. It is likely that my board was made by someone that installed the jack backwards, not knowing the problem it would cause.
So, the really great thing about this printer is that once the problems are resolved, it works extremely well. My very first attempted print (one that came on the SD card that shipped with the kit) printed perfectly. Learning to print ABS was a bit of a challenge, but once I figured out the trick of using Elmer's Glue Stick on a glass plate clipped to the heated bed, I've had very few problems.
Building your first 3D printer from a kit will teach you more about 3D printing than just about anything else. Each problem (like learning to print with ABS, or upgrading your extruder to print flexible filaments, etc.) solved will give you more confidence and understanding.
A few things make this kit a good place to start. It not only comes with a heated bed, but also (the only one of the 3 kits I'll cover to have) a layer cooling fan. This helped contribute to the immediate printing success. But be warned, despite the low cost of the kit, it took at least 18 hours of work to assemble it and work through all of the issues. For me it took a bit longer because there was NO support available and I had to diagnose and solve the problems on my own.
This printer also included a laser-cut acrylic filament spool holder. While not perfect, it became the basis for my replica of the laser-cut parts detailed in this Instructables.com article: Acrylic 3D Printer Filament Spool Holder. With the aluminum mandrel outlined in that article, the filament holder is perfect. It works well with every type of filament I've tried.
The documentation for this model is reasonably good. The English is not perfect but is manageable. The supply list is not correct so you need to work through the build to discover which parts are really missing. They also label each of the bags of hardware which is a nice-to-have.
Skills Required to make it work:
- Basic assembly skills
- Soldering skills
- Wrenches and hex wrenches
- Soldering Iron and Solder
- Kapton tape is a plus that can be helpful
Step 2: Kit #2: Geeetech Prusa I3 X...
The next kit that I've had some experience with is the Prusa i3 X kit from Geeetech. A good friend of mine purchased this kit (around $300 U.S.) and I spent one afternoon of about 3 or 4 required to help him assemble it, and later helped with some tuning and printing. Of three kits, I have the least experience with this one but can offer some insights.
This printer does not have many problems. The only two I can think of are that, once assembled it needs tuning and the documentation doesn't really cover that well. My friend had printer after print fail until we started using adhesives on the print bed -- even for PLA. The other "woe" is that it does not include a layer cooling fan. This probably contributes to some of the printing issues. My friend also reported problems with wires coming loose, and he eventually had to replace the heater and thermistor in the hotend because of faulty wiring. Oh, the biggest problem he faced was that the wires for the heater and thermistor on the hotend dragged along the print surface, pulling up parts. It took some work to resolve that problem.
The first wonder I found with this kit is that the documentation is far better than any others I've seen. Yes, there are still some flaws in it, and the English isn't always good, but each step has a parts list, with labeled parts that come from labeled bags. Each step is short and simple.
Also, the parts appear to be injection molded and not cheap 3D printed parts. Both this printer and the JG Aurora Z 605S are clones of the Prusa i3. Both have modifications that improve upon the original design. The combination of the injection molded and laser cut parts, along with an improved design made this kit have a much smoother and more maintainable action than JG Aurora. I still worry about that JG Aurora eventually coming apart as bolts loosen, or binding up when they are too tight. The Geeetech version does not look like it will have that problem.
Like the JG Aurora Z 605S, it includes a normal MK8 extruder. I believe it has a 0.3mm nozzles instead of the 0.4mm nozzle, which may make it easier to produce finer quality prints, also I believe makes it a bit harder to tune. Nevertheless, my friend is now able to make high quality prints from this printer. One of the first prints needed though were the pieces necessary to add a layer cooling fan.
Unlike the JG Aurora Z 605S, this kit includes an Arduino Mega (not even a clone but the Mega itself IIRC), and a RAMPS 1.4 board, allowing for future modifications as needed.
I also like the way this kit uses flathead screws on the print bed. This allows you to mount a piece of glass on the print bed and adjust the leveling, without worrying about notching the glass to provide clearance for the cap screws holding the heated bed to the Y-axis bed.
As previously mentioned, this kit has the best documentation of the 3. A nice printed booklet, along with a set of videos, clearly labeled parts in the instructions and labeled parts and hardware bags all make assembly much easier. The kit probably took at least 18 hours to assemble.
Skills required to make it work...
- Basic kit assembly skills
- Soldering skills helpful
- 3D printer working knowledge and experience very helpful
- Basic assembly tools such as wrenches, hex wrenches, and screw drivers
- Soldering iron and solder and/or basic wiring tools
- An already working 3D printer is helpful for printing a layer cooling fan attachment (search thingiverse) and etc.
Step 3: Kit #3: He3D DLT-600 A.k.a. He3D Delta Mega...
Let me first warn you that the He3D Delta Mega kit is NOT inexpensive. The base price, without upgrades like the heated bed (not worth paying for -- instead see my article on making a heated bed), starts around $600 U.S. With the exception of gained experience, my experience with this kit so far has made me regret the purchase. But I'll get into that later. The kit is unique in the sense that it is one of the few Delta 3D printer kits that boasts a 280mm x 280mm x 600mm print size. This is why I bought the kit. I was hoping to have a 3D printer that could possibly print tall parts for making a completely 3D printed High Power Rocket Body -- something that once assembled would be about 8 feet tall. Whether or not I will ever get that far with it remains to be seen.
Delta printers are really kind of cool, and a lot of people think they are more elegant than the traditional 3D printer. But be warned: they are more difficult to get right, and my experience so far is that they do not produce as high of quality in printed parts as the other 2 printers outlined in this article. I would love to hear about your experiences with a Delta 3D printer in comparison to a normal Cartesian printer, in the comments.
As you can see from the photo, this is a big printer! It requires fewer stepper motors than a traditional 3D printer, and is relatively easy to build -- or at least it should be.
As you've probably guessed by now, I can't really recommend this printer. I desperately want to strike that statement form this article. Maybe someday I will be able to. But I have had one problem after another with this printer kit, and getting accurate support for it has been a constant challenge. It isn't that they haven't tried. I give them credit for that. It is that the really don't know enough English and may not know enough about how the printer works to be taking support calls from English speakers. They have given me dead wrong answers that led to parts being ruined, and they have expressed their own frustrations with this model and even (yes, I have the e-mails to prove it) have said that they plan to pull this model from the market, because of the problems with it. They got upset with me when, after 6 weeks I left a bad review on the site where I purchased it, and since have only responded to e-mails defensively, maybe even semi-aggressively. This, despite my offering to help them get the documentation both right, and understandable for an English reader in exchange for a new kit (so that I could start the build over with measuring hardware, etc.) I've also sent them feedback numerous times, including how to fix certain problems, how to fix the firmware around auto-leveling, and corrections to the English translation of parts of their documentation, in hopes that perhaps some of their customers could benefit from my efforts.
What follows then is a list of the problems I've had with this kit -- at least the ones I remember:
- The documentation is terrible. The English translation is bad, where it exists at all, but beyond that, you never know which pieces of hardware are to be used with each step. You have to guess. The hardware bags are not labeled, and the instructions only show photos, no bolt lengths, etc. Some parts of the construction are not documented at all so that you have to guess from pictures what to do.
- The E3D hotend clone has loose threads in the heated block around the threaded rod. This leads to hot plastic flowing up through the threads and around and over the heat block, completely ruining it. After reporting this to their support I was sent a replacement. This video shows that the replacement has the same problem. The video shows the threads loose in the cool end (the radiator), but they are also loose around the nozzle, and the only hope of getting it right is to tighten the nozzle all of the way, and then tighten the radiator all of the way, which will put it in contact with the heat block more than it should be. I had to purchase a new E3D hotend clone, which solved the problem.
- The heated bed was warped. It is thin and attached to fiberboard. A glass plate placed on top was high centered. You can see how it is warped in this video. After reporting the problem, and another problem with the printer where the print head came down hard and gouged the heater, irreparably damaging it, the manufacturer sent me a new heater. I placed it on my flat counter top and immediately could tell that it too was warped. I solved this problem by creating a Heavy Duty Heated Bed as outlined in another Instructables.com article.
- There is a really bad firmware bug which causes the hotend to crash into the print bed after auto-leveling, just before printing. This can cause the remaining motion to be off just enough that eventually you may again crash the head into the bed causing damage, or you may have other problems. I will add a step to this article with a fix for the firmware in case you have this problem, but it comes down to this: the last step after auto-leveling is to move the print head to X = 0, Y = 0, Z = 5. The problem is that Z = 5 may be below the print bed -- that is the point to auto-leveling, to find out how to adjust Z at various points on the bed!
- The firmware comes installed on the Arduino, but there is no way of knowing whether it is the firmware for the DLT-600, with the auto-leveling feature, or if it is for the DLT-180 model (smaller). Almost all of the documentation is for the DLT-180 model and the document on the auto-leveling feature has Configuration.h definitions for DLT-180. The firmware source code supplied with the kit is pre-configured for the DLT-180, not the DLT-600 and some of the values are only available by contacting the manufacturer who will refuse to give you the right Configuration.h file, but did finally tell me some of the proper values that I did not already figure out.
- The control panel attaches to the side of the printer but interferes with the print bed. I have not yet fixed this problem.
- There is no layer cooling fan - you may wish to print thingiverse:510957 to fix this as I did. You will need to purchase a fan also.
- The documentation tells you to turn the trimpot on each stepper motor driver board until a voltage meter shows 1.2 volts between the top of the trimpot and ground. DON'T DO THIS! Instead follow the Calibrations instructions found here, under Motor Calibration. Otherwise you will get erratic motor behavior such as what happened to me that caused the print head to crash into and ruin the heated bed. When I e-mailed support about this, they told me to test the voltage between the DIR and GND pins and adjust to 1.2 volts. That was not possible. In the process of trying to follow that instruction, the Arduino Mega clone that came with the kit was damaged beyond repair. Additionally I believe all 4 of the stepper drivers were damaged. I replaced them all and I replaced the RAMPS 1.4 board for fear it too was damaged. This was a costly error in the documentation.
- There are 2 places where the filament gets hung up in the Bowden extruder line blocking it from reaching the hotend nozzle. The E3D clone that I used as a replacement resolves one of these because it allows the PTFE tubing to extend all the way to the nozzle. The other hang-up is on the extruder (near the motor) itself. I usually need a stool (to reach the top) and a screwdriver or pick, etc. to guide the filament properly into the PTFE tubing.
- Unlike the JG Aurora Z 605S which printed right without Calibration, this model definitely requires it! Especially around Calibrating the Extruder! Follow the Calibration link above to learn how to do this.
- The printed parts are rough. I ended up re-printing every part on my JG Aurora Z 605S printer in red ABS (100% fill) to replace the (white, probably PLA) shipped parts, prior to assembly. The only printed parts in the kit that I used were the parts with teeth for the belts, because my printed parts were too tight and the auto-leveling End Effector because it's .stl file was not on thingiverse.. Their parts look like they were printed at a high speed with less concern for surface defects, etc.
- Apparently there are problems with the plastic wheels. I've not experienced this yet, but the support person mentioned other customer problems in an e-mail to me. (Yes I have that e-mail.)
- The auto-leveling End Effector sometimes comes loose. It also doesn't have any way of positively holding two of it's rods. I solved this by using a 3mm tap to thread the holes on the hinge side, but it still comes loose sometimes.
- The auto-leveling End Effector has no way of holding the fan needed to cool the hotend radiator. There are holes there, but you will need to use a tap to thread them. This subject is NOT covered in the documentation. A better solution is to replace your E3D hotend clone with one that has a fan attached, and then to print the previously mentioned layer cooling fan support that attaches to the radiator.
- The auto-leveling End Effector sometimes gets stuck holding the end stop down, causing a stair stepping effect while probing for auto-leveling data. A small spring between the aforementioned layer-cooling fan mount and the End Effector can prevent this problem.
Well, I think that is everything, but this has all been discovered over the course of the last 6 weeks. And the end result is that I still can only print with it sometimes, and the print quality is very poor compared to the JG Aurora Z 605S which costs less than 1/3rd of what this kit cost.
I'm not sure if the print quality issues are related to this printer or Delta printers in general. Let me know what you think if you have another Delta printer. What I see is that instead of smooth layers, each layer is rough in places, with seemingly too much filament built up in small peaks. Subsequent passes seem to smooth it out, but the top layer is always a little rough in some places while fine in others. This could also be an issue with auto-leveling feature, though in my experience it is far more difficult to try to level the bed manually with a Delta printer.
This printer also did not come with anything for holding a spool of filament. I made my own holder which you can read about in the article: Acrylic 3D Printer Filament Spool Holder.
Well frankly it's a wonder this company is still in business. I don't say that to be mean, but because after working with their support and reading some of the candid admissions of problems, and eventually having to fix all of the problems myself, I don't know how they could have happy customers. But then maybe my unit was a fluke? And, who knows, maybe their other products are fantastic. At first I admired the effort their support person was giving, and the fact that they sent replacement parts when a problem was reported. But I couldn't wait for the replacement parts which took 3 weeks to arrive and so had to spend extra money (on a hotend, a RAMPS 1.4 board, 4 stepper motor drivers, an Arduino Mega, and the parts to build my heated bed). And I'm glad I didn't wait, because they new parts had the same problems. The support people were nice, but utterly incapable of solving the problems and as I mentioned, they were frank enough at times to admit problems and to talk about pulling the printer from the market.
On the "be nice" side of things, there is still time for them to fix the problem and make me a satisfied customer. If they know there are problems with the wheels, fix them and send replacements. Refund the money spent on worthless parts like the heated bed. Replace the hotend with one that doesn't have the issues I've disclosed, etc.
Also the Delta printer is a neat concept! And a 600mm Z build area could be really great! It all depends upon whether or not they can make it work better than it does now. Otherwise I have to "wonder" how any customer with an average set of skills could make this thing work at all.
Finally, it is a wonder to me, that I have finally been able to get some reasonable prints from the printer, now that I have a solid, flat, working heated bed and have made the other fixes listed above. I recently printed the Smart Watch Dock from this Instructables.com article, on the DLT-600. I have to admit it came out okay. It is not as smooth as it would have been printed on the JG Aurora Z 605S, nor is it as nice as the images posted by the author of that article, but it came out decent. And if that works, maybe I will yet see the "wonder" of a 600 mm tall print from this printer!
The documentation is spotty at best. Sizes of hardware (e.g. length of a bolt needed and even the diameter of the bolts) needed for a step is not included. Some steps are too vague and others are missing entirely leaving you guessing. The documentation supplied exists in the form of a set of PDF files, mostly pictures and some broken English, as well as a set of high-speed videos. And by high speed I mean, "WAY too fast to tell what they are doing." Seriously, they are really fast, and for some reason they are AVI so they take a ton of disk space and provide almost no value.
Difficult parts, like tuning the stepper motor drivers is only covered by a few words on wiring diagram. It is not covered by the videos, and worst of all it is incorrect. The wiring diagram itself is incorrect - or at least unfollow-able, because the lines don't connect to the proper pins -- sometimes they don't even touch pins at all.
There are separate documents for the upgrade features, like the heated bed, and the auto-leveling feature. They suffer from the same problems already mentioned and provide a terrible English translation that makes no sense.
Skills required to make it work...
- Basic kit assembly skills
- C/C++ programming skills for Firmware debugging and modification (to fix the firmware bug)
- Basic Arduino programming and debugging skills
- Machining skills for making the heated bed - I also machined my own hotend at one point but the next day the one I ordered from Amazon.com arrived and I just used it.
- Soldering and electronics skills
- Glass Cutting skills - or you can buy a round glass plate but they are harder to find than square ones and cost more.
- The same skills as the other printers, only more patience and debugging skills
- Wrenches, allen wrenches, and screwdrivers
- Soldering iron and solder
- Arduino programming tools (USB cable and PC w/Arduino software)
- Digital Calipers (for Calibration and machining)
- Band saw (making the heated bed)
- Metal Lathe with ~14" over the bed (making the heated bed)
- Glass cutting tools including a circle cutter
- A pre-working 3D printer (for improved and missing parts)
- A 3mm tap
- Various drill bits - all parts required clean-up of holes
Step 4: Fixing the He3D DLT-600 Firmware...
G31 Z-Axis Crash
The firmware that ships with the He3D DLT-600 has a bug in it that causes the print head to crash into the build plate. As part of the G31 auto-leveling command, the last step executed is to move X and Y to zero, and Z to 5. Depending upon the height of the print bed (or build plate), 5 can be below the surface.
The fix is to change line 1029 of Marlin_main.cpp where it sets destination[Z_AXIS] = 5. Change this to:
destination[Z_AXIS] = Z_RAISE_BEFORE_HOMING;
Then make sure Z_RAISE_BEFORE_HOMING is a high enough value in Configuration.h. I have it set to 30 in my Configuration.h file. It is online 290 of Configuration.h.
With this fix in place, the G31 command will cause the z-probing to occur. After all of the probes, the print head will move to the center of the plate somewhere shy of 30mm high (Z axis) before it begins printing.
Configuration.h Changes for the DLT-600
In addition to the Z_RAISE_BEFORE_HOMING change in Configuration.h, a few other changes are required from those supplies by the manufacturer. This is true for two reasons:
1) The file supplied by the manufacturer is setup for the DLT-180 model. If you leave it as-is you will not be able to print to the entire 280mm diameter the printer is capable of printing.
2) You will most likely need to alter the feed rate for the extruder. Use the instructions on the RepRap Calibration page to measure and calculate the feed rate. Then set the value on line 339 of Configuration.h. It is the final parameter in the list of DEFAULT_AXIS_STEPS_PER_UNIT.
To set the proper printable radius, change line 100 of Configuration.h. DELTA_PRINTABLE_RADIUS should be set to 150.0. Line 85 and 88 need to be changed too. DELTA_DIAGONAL_ROD needs to be 340, and DELTA_SMOOTH_ROD_OFFSET needs to be 230.
Line 121 of Configuration.h determines whether or not a heated bed is supported. Set TEMP_SENSOR_BED to 1 to enable the heated bed. You can build a heated bed like mine following the instructions in my other article.
The images also show a few other auto-level related settings that I had to make to get the printer to work properly. I recommend setting Z_PROBE_OFFSET_FROM_EXTRUDER to 1.2, but you may need to adjust this. I believe it is the distance the head must lift once the auto-level end stop is engaged to move the print head to the right position above the print bed. This setting is on line 288.
On line 290 of Configuration.h, Z_RAISE_BETWEEN_PROBINGS is set to 5. I increased this to 10. It may not be necessary, but I like having the higher clearance.
If you change line 308 so that ACCURATE_BED_LEVELING_POINTS is 6 instead of 3, the probe will measure 36 points on the plate instead of 9, reducing the number of calculations needed, but increasing the time taken to probe.
Finally, on line 324 you can set the overall Z height. I have MANUAL_Z_HOME_POS set to 610. The manual for the printer shows how this number is to be determined, in a sort of broken English. If your bed is significantly above the base plate you will need to reduce this number accordingly.
In the other images there are other changes I've made to the Configuration.h to change defaults to preheat settings, etc.
Step 5: Conclusions...
Building a 3D printer from a kit is rewarding. You will learn a great deal about 3D printers, and you will have the confidence needed to tweak the machine over time. Maybe even more important, you will save a considerable amount of money. But be prepared to invest a lot of time -- and additional money into getting the machine working properly. I have not seen one yet that once assembled according to instructions, just works perfectly.
If you will be buying a 3D printer kit for the first time, stick with something simple like a Prusa i3 clone, such as the JG Aurora Z 605S or the Geeetech i3 X, or another inexpensive and SIMPLE i3 clone. READ the comments that others post on this article to see what experiences they have had. Maybe there is a perfect kit out there just waiting to be discovered.
For me, I've put enough money, time and effort into these 3 printer kits to keep me from another purchase for some time. Eventually though I would like to try a printer with multiple extruders. And I still need to work on that 8+ foot tall 3D printed, High Power Rocket. :)
Please comment on your experiences with other 3D printer kits - or even with those I've documented. This will help us all! Thank you!