Ostern 2022 - Eine kleine Maschine zum Verzieren von Ostereiern - AZ-Delivery

Every year there is a tradition to paint Easter eggs. For this, there are countless possibilities and variations to add patterns and decorations to the eggs. What if we could choose a picture and use it as a decoration for one of these eggs in a short time? With this project, we will build a small but useful machine for decorating Easter eggs ourselves, the EggBot. We will be able to transfer images or drawings onto an egg

With a felt-tip pen and a few components, the necessary sketches and applications, which are also completely free, we can build our EggBot machine and also use it to decorate cylindrical parts. First, we'll list the necessary components to make it, so let's start with that.

Materials needed


Mega 2560 R3 board with ATmega2560 with USB cable


28BYJ-48 stepper motor with ULN2003 driver board


MB 102 Breadboard Kit


Jumper wire cable 3 x 40 pcs. each 20 cm M2M/ F2M / F2F


3mm Thin Wood Cuttings


Wood glue

Suction cups or rubber stoppers to hold the egg in place

Required software


In this case, the parts were made from balsa wood so that modifications could be made. The servo motor that holds the marker was originally installed on the left side as seen from the front of the arm. But the opposite of what it was supposed to do happened. When it was supposed to raise the arm, it lowered it. The solution was to place the egg under the arm. To
Fortunately, there is enough room. So remember to place the servo on the right side.

Download the drawing

Circuit and installation instructions for the required applications

The electronic structure of the components is as follows:

Circuit download

The basic idea of the device is the same on which 3D printers are based. We load a drawing into the Inkscape application, which is then translated into a Gcode file with coordinate data and sent to our microcontroller. This converts the steps that the motors need to take to position the pen so that it can draw. The program we need to load into our microcontroller to convert these coordinates from the gcode file into the steps for the motors is EggDuino. It contains the necessary libraries with the methods to perform the conversion. We now connect the components, install them in the device and let the software install to bring our project to life.

You may need to install the appropriate driver for the microcontroller first. To do this, download the CH341SER file (see the list above, depending on the operating system), unzip it, and install the driver. It is needed for microcontrollers with the CH340G USB/TTL converter chip.

The next software you need to download is EggDuino. Unzip the ZIP file, start the Arduino IDE, and load the sketch EggDuino.ino. On the screen, you can see some tabs with the names of the required libraries. There are different methods needed to convert the coordinates into the engine steps. This is how the information received from the Inkscape application is converted into the positions. Upload the program to the microcontroller. We are getting closer.

Note: You must choose in the source code which driver or driver shield you are using. The source code has been adapted to the components used here. You can download the original source code here download it.

The next software we need to download is "Software_inkcape+extension.zip". This file already contains the necessary drivers to use and control our device. We unzip the file and the Inkscape folder appears. To run the software we don't need to install anything, just run the "Inkscape" file.

Once the application is open, we need to open the template for our device, which we can do using the EggBot file template via File -> Template -> EggBot.

The template will open to insert the desired drawing. We must always place it inside the field since these are the dimensions of the area of the egg where we want to draw.

After making all the necessary adjustments to the drawing, we need to install the marker in our EggBot and make the marker holder completely vertical, as this will be the central position of our drawing. When everything is ready, with marker and egg installed, select Extensions -> Eggboot -> EggBot Control ....

A small EggBot control window will appear, where we click on Apply button. If everything went well, after a few seconds the device will start drawing until it finishes the loaded image.

IMPORTANT NOTICE: I used the EggBot with the MEGA R3 ATmega2560 microcontroller from AZ-Delivery because with the UNO microcontroller I get the error shown in the picture above. the EggDuino sketch loads but the communication with Inkscape fails. When this error occurs, the first thing to do is to check in Windows Device Manager the name of the port our microcontroller is connected to and change it in line 52 of inkscape's ebb_serial.py file. Instead of USB-SERIAL CH340 write the name that appears in the device manager. I did that, but the error message is still there. When I connected the MEGA and checked the port name, the USB-SERIAL CH340 port name then appeared in the device manager. Therefore, I undertook the assembly with the MEGA.

It should come as no surprise that at first the drawn lines are not continuous and seem to be incomplete. At the end of the process, the entire drawing should be visible.

If we want to paint eggs that we do not have to throw away, we can make them from plaster. Children Joy ™ eggs we have the perfect mold for this. We eat the chocolate, put the two parts together and we have the mold for our eternal plaster egg. When it dries, we can decorate it. Perfect, isn't it?

As an alternative to the wooden version, you can also use a 3D printer to use. Make sure that the correct holders for the stepper motors are included.

We hope this project has piqued your interest and that you enjoy giving decorated eggs as gifts and possibly eating the chocolate from the mold.

We wish you a happy Easter

Source of the EggBot


Für arduinoSpecials


Andreas Wolter

Andreas Wolter

Der originale Quellcode muss (wie bereits erkannt) an einigen Stellen an die hier verwendeten Komponenten angepasst werden. Wir haben den geänderten Quellcode im Text verlinkt und einen Hinweis hinzugefügt.

Danke für die Informationen.

Andreas Wolter

Simon Kellner

Simon Kellner

Hallo Andreas Wolter,

Ich vermisse den “PENCIL SERVOMOTOR” in Deiner Beschreibung.

Folgende Änderung in “Helper_Functions.ino” musste ausgeführt werden:
void initHardware() {
// enable eeprom wait in avr/eeprom.h functions

Mit freundlichen Grüßen
Simon Kellner

Andreas Wolter

Andreas Wolter

@Bernd Hutschenreuther:
ich habe dazu folgende Nachricht vom Autoren des Blogs bekommen, die ich an Sie weiterleiten soll:

Guten Morgen Bernd Hutschenreuther,
keine Frage ist dumm. Das mit dem Ei ist mir auch schon passiert und es lag daran, dass die Halterung, die keinen Motor hat, keinen ausreichenden Druck ausübte und der Stiel nicht richtig ausgerichtet war und sich verklemmte. Auch wenn er eine Feder hatte, so dass sich das Ei nicht richtig drehte und manchmal stehen blieb.

Um zu prüfen, ob die Motoren in Ordnung sind, versuchen Sie die Maschine mit der Zeichnung, die Sie drucken wollen, aber ohne das Ei. Sie werden sehen, wie es funktioniert, wenn die Motoren richtig arbeiten, ohne Sprünge. Sind die Grenzen des Stiftarms korrekt, dann ist es die Einstellung der Zeichnung in Inkscape.

Wir hoffen, wir haben Ihnen geholfen. Mit freundlichen Grüßen,
Miguel Torres Gordo

Bernd Hutschenreuther

Bernd Hutschenreuther

Hallo, ich habe eine kleine dumme Frage:
Ich habe die selbe Schaltung verwendet, aber das Gehäuse habe ich mit deiner 3D-Druck-Version gebaut. Bei mir driftet die Synchronisation langsam weg. Nach längeren Strecken wird der “Nullpunkt” nicht mehr erreicht.

Das betrifft komplexere Bilder.

Das Ei selbst scheint festzusitzen.

Kann es an den Motoren liegen? Sie sollten eigentlich durch die Digitalschaltung völlig im Raster laufen.

Es ist kein großes Problem, denn bei “normalen” Mustern spielt es keine Rolle.
Im originalen Eggbot werden ja größere Schrittmotoren verwendet (Siehe Quelle des EggBots im Originalbeitrag)

] by [url=https://www.flickr.com/photos/116228447@N06/]Bernd Hutschenreuther[/url], auf Flickr


Wie kann ich feststellen, ob es ein mechanisches oder ein elektronisches Problem ist? Geht das überhaupt?

Leave a comment

All comments are moderated before being published