Get Started

How to 3D print your first LEGO compatible brick using the MachineBlocks SCAD library.

Install OpenSCAD

OpenSCAD is software for creating solid 3D CAD objects. It is free software and available for Linux/UNIX, MS Windows and Mac OS X. Visit openscad.org to download the latest version.
Visit Website

Download MachineBlocks Library

The free MachineBlocks OpenSCAD library provides you with SCAD scripts for creating 3D printable STL models of LEGO compatible bricks and enclosures. You can either clone or fork the GitHub repository or download a ZIP archive with the latest snapshot of the library.
Clone / Fork Repository
The MachineBlocks OpenSCAD library is available on GitHub.
Download Snapshot
Download the latest snapshot as ZIP archive.
Regardless of whether you have cloned the repository or downloaded the ZIP archive, you should find a machineblocks folder containing at least the following subfolders:
machineblocks/
Subfolder Description
dev Used internally for development and testing the library.
examples A collection of SCAD scripts to generate standard LEGO and LEGO Technic bricks.
lib The MachineBlocks OpenSCAD library

Open Example File

Let's start with printing a classic 4x2 LEGO brick. Open the file examples/basic/brick-4x2.scad with OpenSCAD. You should see the following:
A model for a 3D printed LEGO brick in OpenSCAD

Render and Export

Before we can export the model as STL file we need to render the scene. Press F6 or click Design -> Render in the menu. Depending on your computer this can take a while.
The model for the 3D printed LEGO brick is rendered in OpenSCAD
Now that we have rendered the scene, we can export the model as STL file by pressing F7 or clicking File -> Export -> Export as STL ... in the menu.
The model for the 3D printed LEGO brick is exported from OpenSCAD as an STL file

Import into Slicer

Now that we have the STL file, we can import the model into the Slicer software of our choice. We have tested different configurations on multiple printers, and the following settings work well:
The STL model for the 3D printed LEGO brick is imported into the slicer software

Printing

As with most prints, the first layer is crucial for success. The columns inside the stone in particular can easily peel off if the first layer has not been printed cleanly. It is important that the printing plate is clean and the nozzle is free of debris. A good first layer looks like this:
The first layer of a 3D printed LEGO brick
For a relatively long time, the columns inside the brick are only connected to the printing plate via a very small area. This can be seen very clearly in the following picture. You can also see filament residue on the edge of the brick, which was caused by an unclean nozzle.
The pillars of the 3D printed LEGO brick are only connected to the printing plate by a small surface for a long time.
A critical moment is when the columns are connected to the brick via thin helper lines. These helper lines are used for stability and as a base for the top slab.
The pillars of the 3D printed LEGO brick are connected to the housing by thin helper lines.
Et voilà, the stone is finished. Not the best result, because the printing was interrupted so often for the photos, the quality is only mediocre.
The finished 3D printed LEGO brick
Even if the print didn't turn out perfectly, the brick fits very well on the LEGO plate, and the accuracy of fit compared to original LEGO bricks is also very good.
The 3d printed LEGO brick fits well on the original LEGO bricks
Happy Printing :)
LEGO, the LEGO logo and the Minifigure are trademarks of the LEGO Group.