Delta Bot: DIY 3D Printer




Introduction: Delta Bot: DIY 3D Printer

About: I'm a undergraduate student currently at WPI who loves to tinker around and create projects. Some of the things I've created include: drones, 3D printers, robots, and many others.

Build the efficient and reliable all metal structure 3D Printer with top notch parts. Improved significantly with new concepts for printers. Great quality and up to 140 mm/s print speed (very fast). Built with heated bed, hybrid bowden suspended extruder, and counterweight (tested printing 21 hours straight with no motors hot). Does not require many tools to be created. If tuned well it can last forever printing. Optional smart controller for computerless printing. Print any kind of thermoplastic.

Cost: ~$500

Build Area: 230mm (9 in) diameter, 230mm height (extend towers for higher if needed)

Recommend some experience with 3D printers.

Design and built by a high school student with a significant amount of 3D Printer experience, would love to hear suggestions or improvements below.

Currently working on swapping carriages for other uses(ceramic, dremel, etc).

Step 1: Gather Materials/Tools

Parts can be found at these stores, but there may be cheaper options available

  • V-Slot™ Linear Rail 1500mm - 4x
  • Aluminum Spacers 1/4 in - 8x
  • Mini V Wheel Plate™ - 3x
  • Eccentric Spacers 1/4 in - 6x
  • Low Profile Screws M5 25mm - 12x
  • Delrin Mini V Wheel kit -12x
  • Mini V Wheel Precision Shim - 24x

  • NEMA17 Stepper Motor 40mm Long, 1.2A - 4x
  • Idler Pulley Wheel for 6mm Belt 5mm bore - 3x
  • Toothed clamp for open ended belt - 3x
  • Timing Belt Tensioner Spring - 3x
  • A4988 stepper driver - 4x
  • 12V 4020 Turbine Fan - 1x
  • RAMPS LCD2004 with SD Socket - 1x - optional
  • Limit Switch with Roller - 4x
  • Arduino Mega 2560 R3 - 1x
  • Open Ended 6mm Width GT2 Belt - 5x
  • Ramps 1.4 Board - 1x
  • UM GT2 Pulley 20 Tooth 5mm Bore - 3x
  • Post Assembly T Nuts for 2020 M3 - 1x 100pc
  • Post Assembly T Nuts for 2020 M5 - 3x 1pc

Any online metal store

  • 0.090" Aluminum Sheet - 12" x 24"

  • E3D V6 bowden kit 1x use lite version if on budget
  • Groove Mount bowden Adaptor 1x


  • 500g calibration weight
  • Signswise MK3 Reprap aluminum Round Heatbed 3D Printer Delta
  • 12V 30A DC LED power supply
  • 25mm M3 Stand-offs Male-Female
  • Epoxy for metal, plastic
  • Traxxas 5347 Rod Ends with Hollow Balls Large Revo
  • can buy anywhere: aluminum/carbon tube 4mm inside diameter 6 x ~350mm
  • Power cord length based on your preference only male sides needed
  • Thermistor 10K Probe Sensor (for heated bed)


  • Metric socket M3 8mm - 110x
  • Metric socket M3 10mm - 10x
  • Metric socket M3 12mm -10x
  • Metric socket M3 15mm - 6x
  • Metric socket M3 20mm - 6x
  • Metric socket M3 25mm - 6x
  • Nylon spacer #6 1/4 in - 20x
  • Nylon spacer 1/4 in hole 1/2 in long - 3x
  • M3 hex nuts - 50x
  • Metric socket M5 25mm - 3x
  • M3 washers - 10x
  • M5 socket screw 25mm 3x
  • M5 washers(fender type best) - 3x
  • M5 Locknuts - 10x
  • 6/32 eye bolt - 1x
  • M4 Screw 10mm 4x
  • M4 Set screw any above 20mm - 6x
  • M3 Screw 10mm or 15mm

Other parts

Recommended Tools

Step 2: Create Parts for Assembly

Cut the aluminum extrusions to specified lengths:

Make sure the 4 extrusions are spread evenly with these lengths

  • 6x 372mm
  • 3x 234.5mm
  • 3x 750mm (~230mm print height)

Use the template to create aluminum parts:

If you print with no boarders the template can be used as exact measurements where you can cut and glue stick the template on the aluminum plate and work with that. I used GIMP to print without boarders. You should make sets of 3 for every part except for the triangle and hexagon which only 1. Use template to create the parts.

The template is called All.png. It can be found in link below.

Then use the metal bender to bend to specified degrees.

Drill a 3/8 in hole in the middle of the aluminum triangle (10mm)

Cut the 1/4in plywood to size:

you should be able to draw a equallateral triangle from your heated bed using the straight edges, and cut it out. Then cut the corners out a decent amount ~60mm (could be flush with extrusions(harder) or not). Then put the heat bed onto the triangle plywood and mark the screw holes and drill them. Then drill a hole of size >=1/4in in the center of the triangle (doesn't matter where exactly, its where heated bed wires go)

  • Mark and drill the holes for attachment of power supply and RAMPS 1.4 on the center
  • 4mm holes for power supply and 3mm for RAMPS

Creating Rods

  1. Cut the carbon rods in to 6 x 350mm
  2. screw the M4 set screws into the traxxas rod ends
  3. use 2 extrusions or blocks to prop the rods when they glue
    • because you want both sides of the rod to be symmetrical
  4. prepare epoxy
  5. glue the set screws into the rods (push all the way in)
  6. adjust 2 sides of rod to be symmetrical using blocks/extrusions
  7. snap the metal balls into ball joints
  8. Do this for all six

Solder parts:

  • Endstops
    • cut 3 1.3m long bell wires
    • solder the 2 pin connectors onto it
    • and solder other side to the two outer endstop connections
    • heat shrink tubing when neccesary
  • Heat bed
    • Use 2 0.5m 8awg wires
    • solder them on to heat bed with instructions of the heat bed

Make the 500g counter balance

  • Drill and tap the bottom hole on the weight
  • screw the wing nut into the tapped hole

Print all the 3D printed parts (if you don't have 3D printer upload and get them here or other places)

  • Clamp.STL 1x
  • Clamp2.STL 1x
  • Mini V plate attachment.STL 3x *with support*
  • Mount.STL 1x
  • Nozzle_Carriage_Attachment_New.STL 3x
  • Roller sleeve.STL 2x
  • Sensor_Mount.STL 1x
  • Weight_attachment.STL 1x
  • Wire guide.STL 1x *with support*
  • wire distributer.STL 1x *with support*
  • E pieces 1x

Template and STL Files found at

Click Download ZIP in bottom right corner

Step 3: Assembly of Base Frame

    1. Put a 8mm M3 screw in all of the drilled holes of the aluminum plate
    2. screw the T-nuts only ~3 revolutions so it doesn't fall off
    3. Slide the parts together inside the V-slot aluminum extrusion as shown in the diagram (helps if you place on a hard surface)
    4. Do not tighten the screws
    5. Use 2 T Nuts for the top of each medium length extrusion for the heated bed
    6. screw in both power supply and RAMPS 1.4 onto plywood
    7. Then lay plywood and heatbed on frame
    8. slide the wires of heatbed into center hole in plywood
    9. put 1/4 in spacers in between plywood and heated bed of every hole
    10. align the T nuts where the 6 holes are
    11. screw 20mm screws into the 6 T Nuts and tighten
    12. then tighten all other screws
    13. Try to maintain an equilateral triangle and keep the towers vertical

    Step 4: Assemble the Top Frame Piece

    1. Take the 3 60 degree bent pieces, put a 8mm screw in each hole.
    2. Screw T-nuts on each, only 3 rotations so it doesn't fall off
    3. slide the 3 shortest extrusions in as shown
    4. Put the Assembled Base Frame over this Top Frame to align the edges of the Top Frame extrusions to the edges of the tower extrusions (the longest ones)
    5. Now take off base frame and tighten the screws
    6. If you could, fillet the top edge of the end of each triangle side so the 90 degree bend plates can be flush with the extrusions
    7. using the 90 degree bend pieces with 2 holes put 8mm screws and T-nuts into the extrusion at each end of the triangle (Use assembled pictures at the top of instructable as reference) and tighten.
    8. Now attach the triangle aluminum plate onto the center of the assembly with 8mm screws and T-nuts. Then tighten everything down.

    Step 5: Assemble the Carriage

    Click on pictures for more detail high res pictures.

    Screws are M3 hex when not specified.

    1. use the center hexagon aluminum and 3 Nozzle_Carriage_Attachment_New pieces and screw them together with 8mm screws and nuts
    2. Then screw the rods in as shown in the picture with 25mm screws, but mine was upside down so I could get more height, but if you do that you'll have to cut the aluminum piece more. (The plastic print should be on top)
    3. Assemble E3D using instructions (
    4. Put the E3D through the center large hole in the aluminum plate, then use the E3D mount pieces to clamp the E3D with 30mm screws and nuts.
    5. skip to step 7 if not using a servo or induction sensor to level bed
    6. use Sensor_Mount piece, 2 25mm standoffs, and 2 nuts to secure them together using the male side of standoff
    7. use 3 15mm screw and 1 nut to sandwich E3D Mount and Sensor_Mount as shown

    Step 6: Assemble the Extruder

    1. Take a stepper motor and the E_base printed part and 2 8mm screws and secure the part down on stepper motor
    2. Then use the ball bearing (not from V roller kit, the ones with 3mm hole) screw in the E_Tightener with 10mm screw and nut plus 3mm washers between the bearing and screw
    3. Attach the E_Tightener to the E_base by 15 or 20mm screw, it should tighten all the way and still move
    4. use a spring, washer, and nut to add to the tightener as shown
    5. and then use 10mm screws and nuts to clamp the Clamp and Clamp2 pieces together on the extruder
    6. Then use a big ziptie(or small) and attach the bowden attachment on the extruder

    Step 7: Assemble the Sliders

    The mini V Gantry Plate is based on this OpenBuilds assembly.

    Follow this to assemble the slider for the 3D printer

    Then attach the large 3D print that goes on these sliders with M5 screws

    Assemble following the picture with 20mm screws on rods and keep the belt connector loose

    keep the 3 slides on the extrusion

    Step 8: Attach Top Assembly

    Assemble using the picture. All screws tighten into the extrusion with T-nuts and are 8mm, except for the endstop which is 10mm.

    • The 25mm standoff should have male sides screw into stepper (not too tight, brass breaks easily, learned it the hard way)
    • The pulley on stepper can face either way, it just depends on where the belt goes best
    • Bottom idler pulley should be screwed with the M5 25mm screw with 1/2in spacer and M5 washer with T-nut on the inside(as shown in picture).

    You could organize the wiring inside the extrusions.

    Step 9: Counter Weight Assembly

    Use the Weight_attachment part and screw an 8mm screw through it and onto the extrusion with a T-nut.

    • Put the printed sleeve onto the bearing from ebay 2x
    • slide it into the 2 printed parts for counter weight
    • depending on your printer put 2 or 1 washers on each side of the bearing
    • Attach with 15mm screws
    • Then attach onto printer with pictures shown

    Step 10: Finish Carrige (Thermistor, Bowden Tube, and Probe)

    1. Tie a piece of string through the bearing sleeve pulleys and onto the counter weight and the extruder
    2. Cut the bowden tube to ~150 mm
    3. Push the bowden tube into both carriage and extruder firmly

    Auto leveling probe:

    • If using induction probe, simply screw into the hole
    • If using servo:
      • use a 50mm piece of material and glue onto the endstop and servo horn
      • glue the servo onto the mount


    The thermistor should be placed on either side of the heated bed. It can be attached using heat resistant tape. Thermal compound is optional.

    Step 11: Wire Electronics

    Wire RAMPS 1.4 board using the diagrams from the first picture.

    Connect these using second picture:

    • X endstop to red
    • Y endstop to blue
    • Z endstop to brown
    • Z Probe to yellow
    • Servo to green

    Wire the power supply as shown in the picture

    Note: Making good wiring connections and an electronics case is important for reliability.

    Step 12: Repetier Firmware

    You can use their tool to configure your printer and download firmware

    The pictures on git hub(inside the files folder you downloaded) shows my settings on the configuration, yours might be different.

    There's a lot of tutorials and forums online if you get stuck.

    Great tutorial for Z-probing:

    And that's it! Congratulations on your new printer, I hope you enjoy.

    Epilog Contest VII

    First Prize in the
    Epilog Contest VII

    First Time Author Contest

    Second Prize in the
    First Time Author Contest

    2 People Made This Project!


    • Tinkercad to Fusion 360 Challenge

      Tinkercad to Fusion 360 Challenge
    • Fruits and Veggies Speed Challenge

      Fruits and Veggies Speed Challenge
    • Stone Concrete Cement Contest

      Stone Concrete Cement Contest



    2 years ago

    Nice build if your looking for carbon rods try tents good source.


    4 years ago

    Hi Danny,

    Nice printer. I am in the process of assembling a version of it. I decided to print parts for the frame instead of using aluminum parts (I have another printer and this is RepRap after all.) I also decided to mount the motors in the base, although it is a tad crowded under there. My big question is: why the suspended extruder? Wouldn't a fixed Bowden extruder work just as well? Also, is the counter weight used solely to suspect the extruder, or does it have some other function related to the printing process itself?

    Dangerously Explosive
    Dangerously Explosive

    Reply 3 years ago

    A "Flying Extruder" as it's called minimizes the distance between extruder and hotend, so it can print flexibles better, but also minimizes the actual moving mass associated with a direct drive extruder, allowing the printer to print faster. The counterweights are to minimize the amount of force the motors need to move an axis in any given direction, reducing the workload and therefore the overheating problems associated with long prints.


    Reply 4 years ago

    P.S. I had a lot of trouble soldering the 8g wires to the print bed. 8g is very thick wire and doesn't solder easily to the small solder tabs on the heated bed. I dropped down to 10g, but even that is difficult. In the end I has to solder terminal lugs to the sires and then solder them to the heated bed. As a result the 1/4 inch spacers were inadequate and I had to print longer spacers (12mm in PETG.)


    4 years ago

    where is arduino code ?? i want arduino library


    4 years ago

    how much did it cost to build this 3d printer??


    5 years ago

    I have one question for the owner of this or anyone who may be able to answer... Why did you decide to just hang the feeder above the extruder and not go with the bowden extrusion method with it mounted on the side or top and running through a tube to the extruder?


    5 years ago

    Hi! I made a printer with your instructable and it is finally moving and working. Thank you for it.

    I have just one issue left - cant make the servo to work, even move. you have shown on the picture that it should be connected to pin 4. But in configuration file it is pin 11. with repetier and command M340 it doesnt move at all. LCD controler servo command does nothing too. I tried all combinations but it seems I´m missing something.. Thanks!

    ram aravind
    ram aravind

    5 years ago

    Is there any calculations for finding the length of connecting rod between effector and slider


    5 years ago

    Great Instructable, Thanks for sharing it Danny Lu!
    Total noob here. Would it be possible to scale the print volume to 2x or 4x as much? Looking to make one that can print strong replacement motorcycle plastics. Thanks in advance :)


    6 years ago

    how many stepper motor are used in this printer ? 4 or 5


    Reply 5 years ago

    4 (stood in the parts list)


    5 years ago

    Could you post your PID values for your heated bed?

    I noticed that with a 12v supply, the heated bed only uses the heating element in half of the bed. This means that one side of the bed is slightly hotter than the thermistor reads and the other side is significantly cooler.
    By connecting to the 24v connections on the heated bed the entire bed is heated evenly, but has much less power and takes exceptionally longer to heat up. Do you think this is something that should be done or has using 12v connections directly heating half the bed works fine for your printing?


    6 years ago

    Is there an instructable or other step by step resource on how to print a "Hello world" once the Delta 3D printer is built? I've been looking but cannot find anything.

    To give you context on my noobness, i built similar printer using parts from OpenBuild just like this Instructable. I then downloaded the pyramid from Thingyverse, launched Repetier Host, Sliced the file, Clicked the "Connect" button, clicked the button with the "House" icon, clicked "Print"....

    ...... CRASHED the head into the bed. Motors continued trying to push nozzle through the bed.... Arrrghh!!! PANIC!! Emergency Stop. Then literally LOL.

    I think there was supposed to be a G91 command i was supposed to issue first or something. I honestly don't know. But I cannot find a total noob baby steps guide. Probably because I don't even know what terms to search for. A lot of forums threads makes assumptions or starts off with people who already know how to print. How about for people who don't even have the most rudimentary knowledge (like me)? can someone point me in the right direction please. thanks.

    Danny Lu
    Danny Lu

    Reply 6 years ago

    I think researching on delta printer setups from reprtier host will help. You home house button should move nozzle to highest point and your z coordinates should be the maximum length that you mesured from nozzle to bed. Check your eeprom settings for the z distance.


    Reply 6 years ago

    Hi Danny,

    Thanks for the response but i was not clear on my intended question. That's my fault. I have corrected my Z height in my firmware since the head crash, and yes I am using Repetier. The nozzle no longer crashes into the bed.

    As easy as it is to configure Repetier firmware compared to Marlin, there are still many, many settings which are very vague, barely explained or not explained at all. The RepRap gcode wiki is also lacking in detailed explanations on a lot of Gcode commands too.

    So my actual intent was this. The firmware will hard code a Max Z height for our machines. Let's say 222.55mm (that's for my machine). But what if I want to start my print above that? The actual question to summarize, how do I override to start point of the firmware to a location that I specify?

    I have read through a lot of the Repetier info. I have also been lurking the Delta printer google group for about a year. My DeltaBot I built using my CNC router so I do know gcode. However, 3D printer gcode, and more specifically, RepRap gcode seems to have different "flavors," i.e. Gxx.xx does something on my CNC and something completely unexpected on my 3D printer. Even between 3D printers, what works in Repetier may not work in Marlin, Sprinter, Smoothieware, or RepRapFirmware.

    Consider this scenario. I want to print on top of an object that is 10mm tall (e.g a glass jewelry box). The object is sitting on my print bed which is 222.55mm below my Max-z height. How do I offset my print head 10mm higher? what GCode command does that in the RepRap world? Needing to edit my configuration.h file every time seems to be very inefficient way to do this.

    On my CNC router the command is called a "Touch off." It's G92. It seems to be G92 on 3D printers as well but hard to tell from the reprap wiki explanation.

    here is my homemade printer by the way...


    Reply 6 years ago

    Nice touch!


    Reply 6 years ago

    which part?

    Danny Lu
    Danny Lu

    Reply 6 years ago

    So for overriding the z height I think your G-code G92 is correct, for example G92 Z0 Sets the current Z position to 0 and G92 X10 Y10 Z0 sets the current position to these numbers. What I do to "continue" a print is to just delete all of the G-code before the layer the print stopped on and run that. The g code should be similar to CNC routers, I use this website to look up Gcodes


    Reply 6 years ago

    Thank you Danny. Yes, that is my go-to site as well for 3D printer gcode referrence. Thanks again. Great Instructable by the way. I added to my favorites.