OpenSCAD (Required for the Maker)

Today after finishing the prints for the parts I need for my 3D printer model, I realized I had made a huge mistake. I hadn’t checked the measurements for the holes / rods and since I had gone with the US alternatives to the metric measurements, some parts just wouldn’t work. DOH!

This led to my next realization. The open source community provides the files in easily configurable SCAD files not Autodesk files or STL (STL would have been alot more difficult to edit although it can be taken and printed immediately).

In case you didn’t know, the beauty of SCAD files is that they are essentially programs. OpenSCAD is pretty much the open source standard for creating 3D objects before exporting them into STL format. It is a functional description Red and Yellow Cubes SCADlanguage that dictates the characteristics of the object that allows for reusable variables and one configuration file with the power to change your whole print library! Here’s an example that creates these two rectangular blocks:

If you have been reading my blog posts, I had started using Autodesk Fusion 360 and I thought it was one of the best programs for 3D modeling. Little did I know that the open source community didn’t hand out files consumable in Autodesk and the power behind SCAD files in the open source community is how easily the objects can be customized especially since altering a bunch of STL files would take serious time in Autodesk Fusion 360.

It’s time! Building a 3D Printer: RepRap Prusa i3 Box Frame

I’ve thought a lot about getting a 3D printer but never felt that I could justify buying one for $300-$1000 when I would just be using to print small things here and there. However, lately I have been spending my spare time building devices in the IoT space rather than just the Web/Mobile space and have found myself thinking that it would be cool to prototype parts for them myself. After some research, I have decided to build a Prusa i3 Box Frame 3D printer instead of buying a PrintrBotMakerBot, or even one of the Kits with all the parts included. By building one and finding sellers for the parts myself, I hope to gain an in-depth understanding of the technology behind the current 3D printing revolution, the pros/cons of the various designs, and hopefully be able to add/replace parts for a potentially EPIC 3D printer. I know it is going to be a huge endeavor, but I look forward to building one myself!


File:I3-box frame.png


  • RAMPS board mounted on an Arduino MEGA board
    I chose this as opposed to the Sanguinololu because I didn’t want to spend the time to solder parts together myself.

    • 1 extra heater / thermistor channel (three in total)
    • Optional SD card reader

  • 4 Pololu stepper motor controller boards
    (For this reason is it advised to close the potentiometer on each stepper motor controller by turning counter-clockwise all the way and then open the potentiometer about ¼ th of the way. When you discover one of your steppers does not provide enough torque you can open the potentiometer of that stepper motor controller at little bit further.)
  • 5 Stepper Motors (bipolar NEMA17 motors)- 2 for the Z-axis, 1 for the X axis, 1 for the Y-axis, 1 for the extruder
  • 3 mechanical switches for end stops
    At the start of a print job all three axes have to be moved to their starting or homing position. This is the zero position of the Cartesian robot. The axes can’t move any further than zero (they can’t move to a negative position.)

    • For the X-axis this should be the position where the nozzle reaches the left-hand side of the print plate.
    • For the Y-axis this should be on the back-side of the axis so that the print plate is moved to the back far enough that the nozzle ends up on the forward of the print plate.
    • For the Z-axis this should be the position where the nozzle barely touches the print plate. When printing the software will make sure the Z-axis is lifted a little before printing the first layer.
  • ABS plastic filament (since PLA is biodegradable and will supposedly dissolve in water, I would rather not have this) will need a heatbed

Building Tools:

  • Digital Caliper to calibrate the frame and axes (always remove the battery when storing & always reset the caliper to zero before making measurements)
  • Spirit level for general calibration
  • Plumb line


  • Arduino software: this application allows you to install the printer firmware onto the ATMega microprocessor. This installation is required each time you want to update the firmware.
  • Firmware: there are several firmwares available for RepRap printers. The firmware is installed on the ATMega microprocessor and handles the G-code instructions received from the PC. Part of the configuration of the printer has to be done in the firmware.
    • Sprinter: modern firmware with support for SD cards and easy configuration
    • Teacup: claimed to be faster than Sprinter, more elaborate configuration options
  • Skein software: the most popular application to slice STL files into G-code is called Skeinforge. You need this piece of software each time you want to print a part. (Alternatives are Slic3r or Pronterface which is also a host software)
  • Host software: there are also several host application available for RepRap printers. This application is responsible for communicating with the electronics of the printer before and during print jobs. It prepares the printer before starting a print job and then also starts the actual print jobs.

After a good amount of research, I have come up with the basics for my first build:

Bill (Rounded the price of each)

$44 – Combo Kit of Sainsmart Mega2560 + 5 A4988 Drivers + RAMPS 1.4
$27 – SainSmart Smart LCD Controller (SD Slot)
$45 – 5 NEMA 17 Stepper Motors
$22 – MK3 Aluminum Heatbed
$16 – 3 Mechanical Switches + Cables (for Endstops)
$9 – 2 meters of GT2 Belt + 2x 20 tooth Timing pulleys
$14 – 12xLM8UU, 4x608ZZ, 2x623ZZ bearings
$65 – J Head Mk V-BV .5mm Nozzle 1.75mm filament
$15 – 1/2″ by 2 ft. by 4 ft. Sande Plywood (This may be sub-par wood)
$14 – 3 x 5/16″ by 36″ round rod (smooth)
$2 – 36″ by 1/4″ 20 threaded rod

$3 – 36″ by 5/16″ 18 threaded rod
$3 – 36″ by 3/8″ 16 threaded rod stainless steel

$4 – #6 3/4″ SPAX Multimaterial Fastener (Screw) 2x(45 pc)
$3 – 5/16″ Washer Bag(25pc)
$3 – 5/16″ Hex Nut Bag(25pc)
$3 – 3/8″ Washer Bag (25pc)
$3 – 3/8″ Hex Nut Bag (25pc)
$292.74 – Total so far (Added the actual price and rounded at the end)

Altering the materials:

  • Frame (Got Home Depot to cut it in half and plan on using a Laser cutter from my local Garage to cut the rest out of the wood)
  • Smooth Rod, Threaded Rod, Nuts, and Washers (Cut these rods with a Circular Cold Cut Saw at my local Garage)
  • Printed Plastic Parts & Extruder (Used a friend’s 3D printer and one from my local Garage)
  • Various nuts and bolts (Waiting on the printed parts to finalize what is needed)