Hey! This thing is still a Work in Progress. Files, instructions, and other stuff might change!

Doblo factory - OpenScad modules for building DUPLO structures and bricks

by danielkschneider, published

Doblo factory - OpenScad modules for building DUPLO structures and bricks by danielkschneider Apr 2, 2010

Featured Thing!


Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

13194Views 8122Downloads Found in Construction Toys


A set of OpenScad modules to produce "Playmobile-like" Duplo and Lego-compatible structures. Also can be used to produce DUPLO/LEGO-compatible bricks and to create mashups (see other things I made).
See also:

Credits: This work is based on
1) The parametric lego duplo by Domonoky ( http://www.thingiverse.com/thing:1778 ).
2) Tony Buser's OpenSCAD Bitmap Fonts Module - http://www.thingiverse.com/thing:2054. Added on April 9 for version 1.1

Updated, Mai 1 2010 (v. 1.3)

Updated, nov 2011: bug fixes

Updated, sept/oct 2012:

  • Some bug fixes
  • Much better Lego-compatibility
  • Settings in OpenScad are optimized for printing with 0.25mm layers
  • Some STL files need to be replaced too (but so far, I only replaced the castles)

Update Oct 2014:

The elements are called "Doblo" and "Lugo", because they are not DUPLO (TM) and Lego (TM). They just fit somewhat.


Using the OpenScad library
It is better to generate your own STL from the OpenSCAD library, since you can tweak parameters, in particular define larger walls for high-resolution printing. In addition you could design your own castles.
Install OpenScad ( http://openscad.org/ )
The OpenScad file is self-documented. Alternatively (and easier to read), a beginning of the manual is at http://edutechwiki.unige.ch/en/Doblo_factory.

To play:

  • Load doblo-factory-examples.scad into OpenScad and comment/uncomment example modules
  • This should include the doblo-factory-x-y.scad library file. You may have to adjust the version number.


  • Take the latest version (new versions include bug fixes, more features, but maybe new bugs ...)

General printing tips

  • Tested from 0.1 to 0.4 layers (any resolution should work in a way)
  • Fill of 0.1 should be ok (I usually use between 0.2 and 0.25)
  • Use PLA on large objects to prevent warping
  • Keep the nozzle very close to the platform and print the first layer very slowly (this is standard procedure, btw.)
  • Printing wide blocks with nibbles underneath may be difficult: Plastic may bond with nibbles underneath in a strange way since it also bonds sideways, then create a messy first layer of the roof, cool down, and then cause the nozzle to rip the model off the platform). Turning off the fan can help in this case. Slowing down and/or using fatter layers also will help. Best solution is a lot of fill (like 35% or even more), but then you have to wait longer ...

Printing the castles
In 2012 I made the code much more Lego-compatible. Also I changed the base plate. Just print the first layer very slowly. A prior version of the first big Duplo castle (the red one in the pictures) was downloaded 144 times, but I have no idea whether someone else than me printed it.

If you use a PLA printer, printing should not be difficult, but it could take ages. For the DUPLO-compatible version, 0.3mm or even 0.4mm layers are ok. For optimal quality use 0.2mm and slow printing. Then wait.

Important: In order to get the first layer right, make sure that the nozzle is very close to the platform. In addition, either configure your slicer to use a very slow speed for the 1st layer and (maybe) slow speed for the roofs. Otherwise, use your control software to print the 1st layer at 25-30% of the normal speed. I repeat: The first layer is mission critical and IMHO any printer can do it iff you do it very very slowly !

In addition, you could:

  • Tune down antistringing a bit. Small strings on vertical towers can be simply blown away with a hot air pistol or fire
  • Use a fairly strong fill (e.g. 0.3 to 0.4). This will help printing the bottom floor, i.e. plastic will bond downwards as opposed to sideways.
  • Use a simple fill pattern (as opposed to a bee structure)
  • Print a bit warmer than usual. Print quality will suffer, but warmer usually leads to better plastic flow.
  • You may slow down with respect to what you would call "normal" on your printer. Personally, I do use normal (between 60 and 80 mm/s) since I hate to wait for 20 hours, except for the first layer that I print at 15 to 20 mm/s.
    A YouTube video show the printing of a Lego-compatible castle (snapshot at about 75%, 2h39 min. to go ...):
    On a modern PLA printer (mine was a Felixprinter), the small Lego-compatible stairs world can be printed in about 2.5h, the stairs/exhibit world in about 3.5h and the stronghold in about 10h. These models can be done faster or more more slowly for better quality. The Duplo-compatible stairs/exhibit model took about 16h at "normal" speed, i.e. 80mm/s for fills and 35mm/s for perimeters. According to Repetier-host, the castle would take 33 hours at "normal" speed, but it's likely more than that.
    NB: If your print leads to an extruder jam after 8 hours of printing, then first check your filament. I just may include "knots" that won't pass through the extruder or nozzle hole. Happend to me (I had a roll that gave me five aborts in radom places ... before I figured out that it was the roll and not my slicing skills...)

Some printing hints for the Rapman 3.1 and other very old printers (skeinforge settings)

  • Try small objects first, e.g. a 3x3x3 doblo brick
  • Then adjust the parameters in the OpenScad file. Depending on your print settings, you should change all the parameters that define nibble radius. The problem is the following: I measured real DUPLO dimensions, but depending on the layer thickness and the width over layer thickness ratio, etc. you'll have to "cheat". Read more about these issues in http://edutechwiki.unige.ch/en/Doblo_factory#Calibration.
  • PLA Temperature: 210 (all) and Fan on
  • PLA raft (if required): One interface layer
  • Flow rate: At least 380 (for horizontal structures)
  • Solid Surface Thickness for both ABS and PLA: 4
    Warning: The stronghold example will take about 20-28 hours to print with speed = 16. With PLA it is ok to put the printer on hold (ESC) while you eat, work or sleep. Read http://edutechwiki.unige.ch/en/G-code for a tip on print abort recovery ;)

Printing tips for the FelixPrinter (or similar, e.g. Prusa i3 designs)

Prints do fine using the "normal" SFACT settings. OpenScad code is now optimized for this printer or more generically: for a 0.2mm layer capable 0.35 nozzle PLA printer. I only made slight modifications, essentially: 1 extra shell for the first layer, 1 extra layer for flat bridges (roofs), very slow speed for the first layer and slower speed for roofs, and finally more fill (about 0.35).
But it's easy to change parameters if you need to do adaptations for your printer. IMHO, any printer with similar specs ought to be able to print at either Lego or Duplo size.

Printing tips for the fabbster (dead product)
Use one of my print styles (e.g. UMA): http://edutechwiki.unige.ch/en/Netfabb_engine_for_fabbster_build_styles if you use filament rolls. I did not try to print a castle since I don't have a heated print bed, but smaller blocks work fine.
Use sticks and an official "normal" style for better quality. Don't try the castles without a heated print bed.

Using the uploaded Blocks for mashups
e.g. for lettering:

More from Construction Toys

view more

File Name



All Apps

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

How much cooler does it get. Congrats Daniel. xxxoox. edith

Wow, impressing to see what people can make out of some simple duplo script :-)

Actually, what got me off the ground really, was the fact that you gave me 2 helpful comments here and on the BFB forum. Thanks :)

I'm exited to try this one out!