Introduction: DIY Arduino Controlled Egg-Bot

Picture of DIY Arduino Controlled Egg-Bot

In this instructables I will show you how to make your own Egg-Bot controlled with Arduino. I wanted to make it before but I thought it is too hard for me but I was wrong. It's easy to build so for sure everyone can do it.

Step 1: Parts

Picture of Parts

Below I add list of parts:

- stepper motor with 200 steps per revolution (x2)

I use 12V and 0,33A but you can use other.

- stepper motor driver A4988 (x2)

- arduino or atmega328

- power supply for stepper (I have 12V and 2A)

- micro servo

- plastic plate, wood

- 40cm screws x3 and 12 nuts for it's

- two lego wheels

- markers in different colors

- drill, knife, saw, screwdriver, double sided tape, wood glue, wire, soldering iron, rubber bands

- everything you need to make PCB link.

Step 2: Connection

Picture of Connection

Connect it like on fritzing image above or go to the next step and make PCB (printable circuit board). And you must find right settings for potentiometer on stepper motors controller. With this potentiometer you can control voltage that goes to stepper motors. Try to set it that the stepper move is as smooth as it possible.

Step 3: PCB (optional)

Picture of PCB (optional)

Why I made PCB? Look at the image above, it shows how it looks on breadboard. Too many wires. You can easily connect something wrong or something can disconnect itself and you can spoil e.g: stepper motor driver. And on PCB everything looks better, take less place and is reliable in combined. You can read about how to make PCB here. Below I added PDF file with PCB layout. For more info see arduino on breadboard.

Step 4: Frame

Picture of Frame

The frame is made with plastic and some wood. You can see dimensions in sketchup below or in next step.

Step 5: Cutting of the Frame

Picture of Cutting of the Frame

Cut two elements from second picture and one from the third picture. Dimensions are shown in the pictures.

Step 6: Smoothing the Edge

Picture of Smoothing the Edge

Smooth the edges with sandpaper to make them look better.

Step 7: Drilling Holes

Picture of Drilling Holes

Drill holes like on image above. You need to make it very precisely. In the 3 holes at the corners put pieces of aluminum tube.

Step 8: Pen Arm

Picture of Pen Arm

Pen arm is made with wood and plastic. At the end of the arm I made 9mm hole for marker

Step 9: Connection Frame

Picture of Connection Frame

I hope you understand how to connect all of parts of frame with this photo if you have problems with it, write a comment I will try to help. Everything is connected with screws, double sided tape, glue and wires.

Step 10: Code for Arduino

Download code for arduino from here. And you need to change few lines:

This:<br>#define YAXIS_DIR_PIN 14<br>#define YAXIS_STEP_PIN 15<br><br><br>To this:<br>#define YAXIS_DIR_PIN 10<br>#define YAXIS_STEP_PIN 11<br>


This:<br>#define XAXIS_DIR_PIN 10 <br>#define XAXIS_STEP_PIN 8<br><br>To this:<br>#define XAXIS_DIR_PIN 7<br>#define XAXIS_STEP_PIN 8<br>


This:<br>#define SERVO_PIN 13<br><br>To:<br>#define SERVO_PIN 9

Step 11: Software for Computer

I propose to install original eggbot extension to inkscape because with it you can print filled object. You can read how to download it and how to use here. To make G-code files in inkscape download this extension made by martymcguire. And the last thing to download is a program to sending commands over serial to arduino. Download it here. Now you need to change unicorn extension code. Go to:

C:\program files\inkscape\share\extensions\unicorn\

Add to 29 line this:

<p>"M300 S%0.2F (pen up)" % self.pen_up_angle,</p>

And delete line 39:

<p>"M300 S255 (turn off servo)",</p>

Step 12: First Painting

Picture of First Painting

This are first eggs that I painted by my eggbot. Effect is no the best because of pen vibration. I all the time try to fix it but I can't do it succesfully yet. Picture on the orange egg is supposed to represent a bear.

Please, if you like my project vote for me. Thanks!!!!

Thanks for reading and sorry for my English :)
Have fun with your EggBot.


MattiV (author)2017-10-23

this project used A4988 stepper drivers, but i have easystepper driver, this is MS1 and MS" but what have MS3 need this ? i thin kuse easytepper drivers but no sure how connect, step and dir have ok, but MS1,2,3 pins ??? can i use inly my driver MS1 and 2 to high, 5volt. ?

MattiV (author)2017-09-29

hello, i has try found more info this, i has printed eggbot frame parts but i no found anywere info how long M8 rod need be at bot, size ?

dongaduythuat (author)2017-05-15

Hi bro, I see this failure when I click Apply on eggbot control (Inkcapse). Please help me to solve it!

ielectronicparts (author)2016-10-28

wangtetnu (author)2016-10-11

The first time I have got amazing thing like . Thank you very much :)

Ruben Marc Speybrouck (author)2016-08-31


Joseanascimento (author)2016-05-17

Belo projeto. Estou fazendo a minha impressora de ovo, mais estou com dificuldades no funcionamento. Já baixei o Inkscape, a extensão do Egg Bot. Agora não consigo configurar e testar. Poderia inserir outro Instructable descrevendo a configuração e o funcionamento. Parabéns pelo trabalho, espero que me ajude.

hatschel (author)2016-03-20

For a instructable i missed some inforation about the Axis.
How to build this exenter in that way so that's the angle matches the way.So that the whole surface of the egg is reacheble.
Masure values would useful.
I got no idea,how long i.e. the slot must be.
Hope you have a few pic's on backside stepper mechanic
Anyway that's a funny thing

Danielr84 (author)2015-09-04

i already build this instructable until stuck in coding for arduino, i confuse which file that copy to arduino IDE. could you give me step by step how to insert code and getting started with inkscape for eggbot. please help... :-(

Danielr84 (author)2015-09-04

awesome stuff.

can you give me tutorial how to upload code from github file to UNO please? i'm newbie , sorry.

Анатолийг (author)2015-05-31

rock.kuldeep.1 (author)2015-05-26

hi! its awesome but i have not got a stepper motor can i use continues servo motor

and how to code it can you please help me

Nikus (author)rock.kuldeep.12015-05-27


Servos have 360 steps per revolution, steppers (with microstepping) have 3200 steps per revolution. So it can be to less to getting good print quality.

Try to find steppers in old printer or buy it. It isn't expensive now (in Poland) I can get one for $12.5.

DiegoL4 (author)2015-05-08

hi! Can you give me a hand with the code??

I'd like to understand it better, please!!

tekatom (author)2015-04-19

Brawo! Dobra robota.

Jeśli potrzebujesz bardziej profesjonalnego przycięcia materiałów (CNC) napisz, zrobię to dla Ciebie za darmo.

Bravo, good job

If You want professionally cutted elements (CNC) just write me. I make it for You for free.

tomekltek at

Nikus (author)tekatom2015-04-27


Wielkie dzięki.

Dzięki za propozycję ale udało mi się wyciąć wszystko ręcznie i działa całkiem dobrze więc nie będę już zmieniał. Ale dzięki za propozycję raz jeszcze.



Thanks for proposition but I already cut all things by hand and it works pretty well so I won't change it. But thanks for proposition again.

Tinkering_Pirate (author)2015-04-20

This is a great instructable! awesome job!

Nikus (author)Tinkering_Pirate2015-04-20

Thanks! :)

kshowell (author)2015-04-19

Nice Project !!

Nikus (author)kshowell2015-04-20


dalendaa (author)2015-04-15

hiii I am a student my project trach solar my probleme Arduino program for 1 stepper motor unipolar turns 9 am (7 am to 16h) and then retoure the initial state is wait 14 h (16h to 7h) pls help me and thank u very much

fuzzyhypothesis (author)2015-04-14

Nice build, say did you use conduit pipe for the bearings/sliders for the threaded rod? And what size bearing/rod combo did you use for the end of the mill that spins freely?

IñakiA (author)2015-04-13

You should build a kit with all the parts to make this.

Nikus (author)IñakiA2015-04-13

Nice idea. It's probably possible but in shop in Poland. I will try to make it.

IñakiA (author)2015-04-13

Awesome Instructable, Voted for you in the Egg Contest!

Nikus (author)IñakiA2015-04-13

Thanks! :D

Marcelo Ricardo (author)2015-04-13

Hello I'm from Brazil and I want to learn to ride a printer of this and understand a little electronics have a CNC and do not give to Mr. sending the formulas on how to build a machine of this.

I thank the contact and attention

My contact is:

How are you planning to ride it?

I want to ride in the simplest possible way if applicable and must give your help

271828183141592654 (author)2015-04-12

This is very interesting! Like it!

lex luther (author)2015-04-12

How to run the sending commands program?

thank you!

Nikus (author)lex luther2015-04-12

Go to:


and here you can find Spherebot_UI.exe. I propose to make a shortcut and copy it to desktop.

bjkayani (author)2015-04-12

This is amazing. Great work. I am definitely going to try this. Voted for you.

Nikus (author)bjkayani2015-04-12

Thank you so much! And have fun when you will finish your eggbot :D

bernabap (author)2015-04-12

You should try this firmware: with original eggbot protocol!

Solstie (author)2015-04-11

Nice work. Eggs look great. Would be fun to add two pens for different colors.

rasterweb (author)Solstie2015-04-12

You can always plot one color, swap the pen and plot a second image.

Nikus (author)Solstie2015-04-12

Thanks! :)

Right now I added a picture of the two color printing in to last step.

jdelvalle1 (author)2015-04-12

Very nice!

I wonder if you can replace the pen with a flex shaft attached to a dremmel? Filigreed eggs would be fun.

yaly (author)2015-04-10

Great ible !
Pen vibration solution: use a small spring to force the pen on the egg. Force the pen to move only vertically by a small tube for it to move in.

Nikus (author)yaly2015-04-10

Thanks, it's nice idea I will try it.

amberrayh (author)2015-04-10

This is pretty rad. Thanks for sharing!

Nikus (author)amberrayh2015-04-10

Thank you so much!

About This Instructable




Bio: Hi, my name is Nikodem Bartnik. I live in Poland, I'm 18 years old. I like to program and create robots, devices and things ... More »
More by Nikus:Very Simple Line Follower for BeginnersDuktig - Personal AssistantUseful 3D Prints: Bathroom
Add instructable to: