Pixelbot 3000: Dutch hobbyist builds "3D printer" from Lego

Dutch hobbyist Sten has developed a "3D printer" that prints AI-generated images using 1×1 plates from Lego. The project is open source.

Save to Pocket listen Print view
Pixelbot 3000

The Pixelbot "prints" an AI image from 1×1 Lego plates.

(Image: Creative Mindstorms)

3 min. read
This article was originally published in German and has been automatically translated.

The Dutch hobbyist and Youtuber Sten has developed the Pixelbot 3000, a kind of "3D printer" made from Lego terminal blocks and the programmable EV3 building block from Lego's Mindstorms series. Pixelbot uses an initial image created by an artificial intelligence (AI) and then "prints" a pixel image from 1×1 plates.

The Pixelbot is essentially based on the Bricasso printer, which was developed by JK Brickworks around nine years ago. However, Sten has significantly developed the printer further. Instead of using a scanned image and pixelating it, the hobbyist uses catoon-type images that he generated with OpenAI's AI image generator DALL-E 3.

Empfohlener redaktioneller Inhalt

Mit Ihrer Zustimmmung wird hier ein externes YouTube-Video (Google Ireland Limited) geladen.

Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Google Ireland Limited) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.

Using a Python script, he converts the image from 1024 × 1024 pixels into a more "printable" matrix of initially 16 × 16, later 32 × 32 pixels, so that it can be implemented on a correspondingly large Lego baseplate. The script also determines the average color value of each individual pixel of the matrix so that the most suitable colored brick can be selected later from a given palette of 1x1 plates. This is because Lego only produces the plates in around 70 colors.

For the Pixelbot, Sten only used a motor to move the baseplate in one direction to achieve the necessary precision. The mechanism for picking up and precisely positioning the 1×1 plates proved to be a much more complex problem. Sten initially used a similar setup to the Bricasso printer. However, this did not work satisfactorily with the 1×1 plates, so he resorted to his design, which can feed the small plates individually to the "print head". This then positions the 1×1 plates from a palette of 15 colors on the baseplate with millimeter precision using an electric motor. Touch sensors help to realign the printer after each positioning to maintain precision. Sten also added a mechanism to the Pixelbot that stops the robot to refill colored plates that have run out.

The Dutch hobbyist initially used a baseplate of 16 × 16 pixels, but then changed it to 32 × 32 pixels to achieve a prettier result. Additionally, this simplified the color mapping of the original pixels to the 1×1 plates from the restricted color palette.

Sten has documented the entire construction process of his Pixelbot 3000, which took around six months, in a video. He has made the necessary software available as open source on Github to enable others to build and control the 3D printer from Lego bricks.

(olb)