PELA Blocks

LEGO-compatible Parametric 3D Printed Blocks and Gadgets

View project on GitHub

PELA Drift Car

PELA Blocks

ESP8266 d1 miniPro PELA Blocks enclosure

We measured the length, width and thickness of this board. Moving sliders in the customizer graphical interface of the PELA Technic Mount created this functional prototype enclosure with nicely calibrated snap fit connectors. Now we can rapidly iterate our models in the field. 5 minutes plus 30 minutes for printing. This model is saved as a drop down preset of the PELA Technic Mount model.

Now you can design models without coding and snap them together!

LEGO-compatible Parametric 3D Printed Blocks

PELA blocks are designed for easy 3D printing, strength, and rapid customization using free software. One time calibration gives perfect snap-together objects in exotic materials and geometries to help you explore your ideas and build with exotic materials and any motors and electronics you like. Example enclosures with many options for custom sensors, actuators, computers and IoT devices are included, or create your own.

These designs are not by the LEGO corporation. LEGO-compatible blocks are available from multiple manufacturers. Associated basic block patents expired long ago. Press-fit blocks existed before LEGO and we continue that tradition of adapt, evolve and improve as we provide these open source designs for 3D printing.

The name PELA comes from the Finnish “pelataan” meaning “let’s play”. This blog post on how we use these to build a self-driving 1:10 drift car is a good example of rapid prototyping “play”.

Download

The STL files shown are not calibrated for your printer. To get a good snap fit with your 3D printer and different material, you need to fine tune the size of knobs, sockets and technic holes. Some starting values are

  1. DOWNLOAD the latest designs, or git clone git@github.com:LEGO-Prototypes/PELA-parametric-blocks.git --recurse-submodules, then git lfs install in each git module
  2. Calibrate the PELA Block models for your material and printer

See Advanced Setup for additional tricks.

See the Slicer Recommendations for information about different printing materials we have tested.

Calibrate

TL;DR : To get a nice snap fit for your printer, slicer settings and material, print a calibration beam and test fit commercial bricks to the top knobs, bottom sockets and side technic holes. Update the best top_tweak and bottom_tweak into material.scad. Now open any model in OpenSCAD, press F6 to generate the model then F7 to export an STL.

PELA Example fit of a calibration block

There are several possible calibration beams. Most users will want the one linked below unless they are printing with flexible filament.

Test fit the top, bottom and sides to get something which is tight but not too tight. Then update your settings in material.scad then one time calibration is complete.

OpenSCAD Settings

The software needed is also free and open source, OpenSCAD. After install, Edit | Preferences | Features | Customizer | Enable. Also for large models and a fast machine, Edit | Preferences | Advanced | Turn off rendering at _1000000_ and disable OpenGL 1.0 compatability.

You can also configure slicing and printing directly from OpenSCAD. See their website for details.

OpenSCAD Customizer with PELA Technic Block


PELA Calibration Beam, Normal Filament

PELA Calibration Beam, Normal Filament PELA Calibration Beam for standard filament (non-flexible).

Calibration Instructions

Your printer, slicer settings, and plastic effect the precise fit. To correct for this, we adjust the models slightly for your printing process. Calibration is a one time process for each material. It is as simple as fitting two blocks together and editing a text file, material.scad to indicate which test block fits best.

Before you print the calibration beam, be sure to set the flexible_material and large_nozzle settings in material.scad.

After you print the clibration beam, you update three settings to get a tight fit: top_tweak, bottom_tweak and axle_hole_tweak. These can be read from the side of the calibration beam.

  1. Print the Calibration Beam and test fit the top knobs and bottom sockets against commercial LEGO. Put the top_tweak (on the side, near the top) and bottom_tweak (on the side, near the bottom) values that you can read from the side of the beam into material.scad.
  2. Use OpenSCAD to generate a new 2x2x1 PELA Block in OpenSCAD using these new settings, press F6 to render, and Export as .STL.
  3. Confirm a good fit with both commercial blocks and other PELA Blocks.
  4. If you find you also need to adjust the technic connector hole size, print the Calibration Block Set. axle_hole_tweak numbers change along with top_tweak numbers.
  5. Repeat this process as needed when you change material, nozzle size or and slicer settings which affect geometry.

Advanced Calibration

An alternative set of individual calibration blocks are available, and if you have an unusual material there are other numbers you can tune such as various part thicknesses. See Advanced Calibration

PELA-compatible Part Designs

Edit material.scad and style.scad to adapt these models before printing them. The example models below are not yet calibrated for your slicer and printer. Calibrate and then make the tuned model from the .scad file.

PELA Block

PELA Block


PELA Technic Block

PELA Technic Block A blending of traditional and technic features which extends the basic block. All other models are extensions and variants of this.


PELA Technic Beam

PELA Technic Beam A minimalist technic beam.


PELA Technic Twist Beam

PELA Technic Twist Beam A technic beam with a center section of holes rotated 90 degrees.


PELA Technic Corner

PELA Technic Corner Two beams joined at an angle co-axial to the technic holes.


PELA Technic Bent Beam

PELA Technic Bent Beam Two beams joined at an angle normal to the technic holes.


PELA Technic Angle Connector

PELA Technic Angle Connector Two beams joined lengthwise at an angle.


PELA Technic Axle

PELA Technic Axle Rigid and flexible material shafts of adjustable length for attaching to other 3D printed designs such as wheels which you want to rotate freely.


PELA Technic Cross Axle

PELA Technic Cross Axle Rigid and flexible material torque drive shafts for adjustable length for attaching to other 3D printed designs.


PELA Technic Wheel

PELA Technic Wheel A spoked wheel that connects to a cross axle hub. Consider using flexible materials and tuning the wheel hardness as a simple shock absorber.


PELA Socket Panel

PELA Socket Panel Insert knobs from both the top and bottom. Zoom in to see the subtle flexure ridges for enhanced “snap” fit.


PELA Knob Panel

PELA Knob Panel Optional corner holes for M3 bolts can be enabled


PELA Simplified Technic Peg

PELA Simplified Technic Peg An easier-to-print version of a technic peg. This works best with a smaller nozzle and slightly flexible materials.


PELA Simplified Technic Peg for Flex Materials

PELA Simplified Technic Peg for Flex Materials An easier-to-print version of a technic peg for TPU95, TPU85/Ninjaflex and similar flexible materials.


PELA Technic Peg

PELA Technic Peg This is difficult to print with some material, but useful you run short and don’t want to wait for mail order. It works best with slightly flexible materials.


PELA Technic Peg Array

PELA Technic Peg Array A set of technic pegs.


PELA Technic Rail

PELA Technic Rail A variable length ladder-like mounting rail to bolt to a project board for clean, flexible layouts.


PELA Raspberry Pi 4 Technic Mount

PELA Raspberry Pi 4 Technic Mount A Raspberry Pi 2/3B+/4 enclosure.


PELA Raspberry Pi Zero W Technic Mount

PELA Raspberry Pi Zero W Technic Mount A Raspberry Pi Zero W holder.


PELA Raspberry Pi Camera Technic Mount

PELA Raspberry Pi Camera Technic Mount A Raspberry Pi camera holder.


PELA Jetson Nano Technic Mount

PELA Jetson Nano Technic Mount An NVIDEA Jetson Nano enclousure.


PELA Intel T265 Realsense Tracking Camera Technic Mount

PELA Intel T265 Realsense Tracking Camera Technic Mount An enclosure for an Intel T265 AI SLAM camera.


PELA STMF4 Discovery Technic Mount

PELA STMF4 Discovery Technic Mount Enclosure for the STMF4 Discovery board.


PELA Powerbank Technic Mount

PELA Powerbank Technic Mount A container for a Clas Ohlson 38-3456 USB battery.


PELA Sparkfun BigEasyDriver Technic Mount

PELA Sparkfun BigEasyDriver Technic Mount A pulsed infra-red motion sensor holder.


PELA Technic PIR Motion Sensor Mount

PELA PIR Motion Sensor Technic Mount A pulsed infra-red motion sensor holder.


PELA Technic NodeMCU v2 Mount

PELA Technic NodeMCU v2 Mount A technic mount for NodeMCU v2.


PELA Arduino Uno Technic Mount

PELA Arduino Uno Technic Mount For holding an Arduino Uno microcontroller board within a PELA block


PELA Technic Seeed Respeaker Core v2 Mount

PELA Technic Seeed Respeaker Core v2 Mount A technic mount for the Respeaker Core v2 microphone array.


PELA Vertical Sign

PELA Vertical Sign Change the text to label your designs. Options include front and back text with either etched for raised text.


PELA Panel Sign

PELA Panel Sign Change the text to label your design either etched for raised text.


PELA Technic Sign

PELA Technic Sign Change the text to label your design.


PELA Box Enclosure

PELA Box Enclosure A generic enclosure for mounting boards inside protective side walls.


PELA Round Motor Enclosure

PELA Round Motor Enclosure Add a round round motor holder for 1:10 electric cars


PELA N20 Gearmotor Enclosure

PELA N20 Gearmotor Enclosure Add a commonly available small gear motor to your design. Adjust the model parameters to fit other motor sizes.


PELA HTC Vive Tracker Mount

PELA HTC Vive Tracker Mount HTC Vive Tracker attachment to your designs becomes easy to remove.


PELA Camera Mount Screw

PELA Camera Mount Screw You can use this quarter inch standard camera mount screw for flush mounting the HTC Vive to the Vive Tracker Mount. The printed version works better than you might expect.


PELA Strap Mount

PELA Strap Mount For attaching using strap or similar straps through the bottom slot. For example use this with velcro straps to mount Vive trackers on your shoes..


PELA PCA9685 16 Channel Servo Board Technic Mount

PELA PCA9685 16 Channel Servo Board Technic Mount For holding a servo board within a PELA block with connectors exposed at one end. We use these with 1:10 RC drift cars and Rasperry Pi for a PELA drift car in the Markku Invitational contest based on Donkeycar.

FFF Printing Tips

§

  • Use a 0.4mm or smaller nozzle if possible to avoid decimation of some socket details
  • If slicing with Simplify 3D with 0.5mm or larger nozzle, you may want to set Simplify 3D to Advanced | External Thing Wall Type | Allow single extrusion walls
  • Be aware that slicers may in some cases not be able to correct OpenSCAD STL export errors. These errors should be visible in layer preview as for example extra excursions back to origin. If this happens, open and clean the STL files first with for example Microsoft 3D Builder, Meshmixer or MeshLab. MeshLab command line examples can be found in build.ps1.
  • Best results are achieved with durable materials that are not too stiff (PET, co-polymers like NGEN, semi-flexible and “engineering” materials instead of PLA and carbon filled).
  • Best results are achieved with smaller nozzle diameters. Adjust slicer settings for precision over speed. Layer height is not particularly important on most models.
  • Think carefully before using very slippery materials such as Nylon.
  • “standard” and “fast” print setting layer lines are helpful for extra connector grip provided the resulting print geometry is sufficiently accurate.
  • A print “brim” the appears inside the model may negatively affect the bottom connector fit
  • Leaving the blocks on a heated bed may negatively affect the bottom connector fit

Resin Printing Tips

  • If more than 2 layer tall PELA with a relatively solid interior not allowing drainage below the knobs, check if you need to expand the airhole to allow resin to drain from the flexure chamber inside each knob
  • For translucent materials, setting knob_slice_count to 0 may make the interior structure look more like a standard PELA at the cost of a slight reduction of knob sidewall flex

License

License: CC BY-SA 4.0

These designs are by PELA project contributors, not by the LEGO corporation. They are compatible with LEGO and similar blocks available from multiple manufacturers and online projects. The associated patents have expired. These designs are not identical to LEGO; they have been specially modified for easy 3D printing and offered in the spirit of open source collaborative innovation.

If what you want is available as injection molded plastic, buy it for the higher quality and durability. These model are helpful when you want something customized, a special color, an unusual material, and for replacement parts when you just can’t wait.

Futurice

These open source designs are brought to you by Futurice and contributions from the community. Come work with the best.

Projects Using PELA Blocks

PELA has been used to create a self-driving car: 3D Printed LEGO-compatible Parametric 1:10 Scale RC Drift Car Based On PELA Blocks

PELA is also used to create robot parts: 3D Printed LEGO-compatible Parametric Robot Hand

The generated 3D models displayed here are hosted in a separate GitHub project to minimize the size of pulling changes in this repo: PELA-parametric-blocks

Alternative 3D Block Designs

If you don’t find what you need, consider adding it, contact us or check out the many other excellent design available.

marian42’s excellent online technic part generator can help you make custom connectors and fixture easily.

Yeggi search for LEGO

Thingiverse Parametric LEGO Group is an alternate source for these block designs. These designs don’t work with the online customizer (speed and complexity, multiple files), so the best path is still to install the newest OpenSCAD and download the models.

Contact

New models, collaboration and pull requests are welcome. You have the tools- now create something cool and share with the world : https://github.com/LEGO-compatible-gadgets/PELA-parametric-blocks

paul.houghton@futurice.com ( Blog - Twitter)

If you like what you see, please tweet and let others know!

Twitter link