I'm teaching myself to code 3D in OpenSCAD, so I thought I would add the basic 3D text on a cube function that's in the OpenSCAD examples so that studless blank block tops can become fun LETTERS, NUMBERS and SYMBOLS!
I printed a couple un-remixed standard bricks and noticed that they are too hard to assemble, so I have tweaked the stud design by adding a sloped area to ease alignment, shown in green in the preview.
Since I own a crappy dual extruder printer I thought I would make it possible to generate the letter and brick separately so they can be printed with distinct colours. This has the side effect of being able to generate an embossed brick with adjustable letter inset depth. You can make the colour letter flush with the top of the brick so it's a non-protruding inlay by making the letter height the same as the embossed inset. You can also try no inset and switching filament on the first letter layer to use a regular machine to create the 2 colour design.
I have added a function to generate thin base plates, great for placing the letter bricks on. I had some studs break off, so I increased the surface area where they attach so they'll be a little more reliable. I will look into adding an interlocking plate system so us folks with small printers can build huge base plates.
In another major update, I have added rounded edges to the brick to get rid of the super sharp corners they had, fonts you can pick from a list and made the 4-section flex central cylinder optional for easier printing and safer for children (less danger of small bits randomly breaking off) as well as a couple dimensional tweaks (mainly taller studs) to adjust the dimensions for correct interaction with real LEGO Duplo. The rounded edges slows rendering down quite a bit, so let me know if you experience any problems with customizer. As a precaution I'm turning the roundness of the edges to the minimum of 5, but the bricks in the STL files were created with a roundness of 30.
I'm including the default font and a font (Segoe Print) from my local machine via OpenSCAD as pre-generated STL files of letters and numbers. Let me know if you have something in mind and I'll do my best to generate more.
Industrial 3D Printer Filament PLA
I printed two bricks at a time when testing the changes I was making. Probably wise to only print 4 at the most unless you are confident your printer won't mess up, even one... I thought it would be smart to fill the print bed with bricks to minimize prime & wipe waste with dual extrusion, but the central cylinder has come loose on a couple bricks and is causing far more waste than a little priming tower.
Some failed 4-part centre cylinders, now SOLID by default for safety.
Failing print because of one part of the 4-section cylinders coming loose before it completed a full cylinder.