Arduino 3D printer

This page describes the process I took to design and build my own 3D printer

Design and Modelling

I designed all the parts in SolidWorks. I downloaded models of off-the-shelf parts, such as motors, on GrabCAD.

I designed the parts to be 3D printed from scratch.

Rendered image of the 3D printer

Parts to be 3D printed

How it works

The model is a cartesian printer, meaning the hot-end moves in the 3 cartesian axes.

The hot-end is placed on a carriage. The carriage slides on linear rods, and is driven by a belt, to move along the x-axis.

The whole x-axis assembly is mounted on two lead screws, which are powered by two stepper motors. These lead screws move the x-axis assembly in the z-axis.

The heat bed is also mounted on linear rods using bearings, and slides along the y-axis driven by a belt.

All the stepper motors are controlled by an Arduino and a RAMPS 1.4 board. This board receives g-code from the computer, and controls the stepper motors, extruder, and heat bed temperature. The Arduino is configured using the Marlin firmware, which is open-source.


Arduino Mega


The printer was built by assembling all the 3d printed parts and off-the-shelf parts.

3d printed parts include:

  1. Braces for the frame

  2. Supports for the y-axis

  3. Supports for the motors

  4. The carriage

  5. Container for the circuit board

  6. Tensioners

  7. And many more