Introduction: Mug Plotter

Picture of Mug Plotter
No desk is complete without your own personal mug to insist on having your tea in. Oh sure, you can use a suitably obscure freebie mug that you picked up somewhere, or even buy your own, but do any of them really express the personality that you'd like your workmates to understand? No, you're going to need a personalised mug for that desk. The cheap and easy solution is to buy one from an on-line printing company, but where's the fun in that?

The mug plotter is loosely derived from Evil Mad Scientist's Egg Bot - it uses the same control board, and a modified version of the software, so you can design and print your mug from inkscape.

To build the mug plotter, you're going to need the following as a minimum, regardless of how you approach it:
two stepper motors
5V Power supply
mini-usb cable

To build the Mark I mug plotter along broadly the same lines I have, you'll also need the following:
3mm ply
Something to cut it with (laser cutters are good)
250mm of threaded rod, and a nut to suit. I've used M5, but its not important.
Some 1/4" aluminium rod (but anything in that range will do). 
Around 20mm metal tube big enough to slide over the rod - I didn't have anything to hand to drilled a 6.5mm hole through a bit of 1/2" aluminium rod.
Some connectors suitable to join your stepper motors to the threaded rod and 1/4" rod.
Lots of small (M3) screws and nuts.

There's quite a degree of flexibility in the choice of stepper motor. I went for Bipolar, 200 Steps/Rev, 28x32mm, 3.8V, 670mA because it was pretty much the first one I saw, but it's within the ballpark of what you need

Step 1: Assembling the Mug Mounts

Picture of Assembling the Mug Mounts

Design your frame. Or download the attached DXF, it's up to you. Load the DXF into your laser cutter of choice, and run off one copy in 3mm ply, or similar. The file attached will give you all the parts you need, but you need duplicates of a few of parts. As with anything, read all the steps first so you know which parts you need (hint, it's the stepper motor mount, the side panel and the end upright). You'll also need to get rid of the borders.

Cut the 1/4" rod to length - you'll need:

Start by assembling the mug mounts - connect the two concave frames together, and then the convex two. Place a circle frame on the end of each to keep it square, and then attach to a piece of your 1/4" rod with a bit of glue - 25mm on the convex one and 80mm on the concave one. You need to file down the last 10mm or so of the 25mm rod to provide a surface for the connector to grip to. Cover the sloped ends of the two mounts with some draft excluder tape, and slide the spring onto the end of the concave mount.

Step 2: Assembling the Pen Holder

Picture of Assembling the Pen Holder

Next assemble the pen holder - glue the nut for your threaded rod into the nut-shaped (and M5 sized if you don't modify the files) hole. Clamp the pen between the two holders using 4 M3 screws and nuts, then slacken them off slighty and remove the pen. Attach the pen clamp to the two slide pieces using a long M3 screw or something of a similar diameter. Finally connect the two slide pieces with the tube and a bit of glue. You should end up with a small gap between the pen clamp (with pen) and slide pieces, so you can slacken off the nuts on the pen clamp and get the pen out easily.

Attach the servo to the slide piece with a hole for it. Connect the servo arm to the pen clamp using a bit of thin wire or thread. It wants to be long enough so that with the servo arm straight down (ie roughly at right-angle to the thread) the pen clamp is parallel to the slides - that way movement of the servo will give the best control of the pen clamp.

As with the 1/4" rod in the last step, file a small flat onto the last 10mm of the threaded rod. Screw the threaded rod into the nut so that it's sitting around half-way on.

Step 3: Assembling the Frame

Picture of Assembling the Frame

Before you start, file a 10mm flat section onto the end of each stepper motor shaft.

The end of the stepper motor has a cylindrical section, so the squares with circles cut in the centre are for the motors to mount to, and will line up the screw holes on the motor with the frame. Hopefully you remembered to cut two of these. Attach both motors to the frame with M3 screws. Attach the connectors to the shafts of both motors, so the screws in them screw onto the filed down flats on the motors. Screw the side panels to the upright you just mounted the motors to. The side panels aren't symetrical - so make sure they both go the same way round (hold the two against each other if you're not sure).

Note - If you want to make your life easier in the future, each time you assemble one of these right angle joints tighten the screw up, then put a little glue or epoxy around the nut.

Slacken the screws off again, so the side panels can splay out, and connect the next upright (it has two rectangular holes at the base) next to the motors. The rectangular section with the tabs sits inbetween the two uprights to keep it all square. Slide the pen assembly into the two panels, and slide the threaded rod into the connector for the top motor with the filed-down end going into the connector.  Tighten the fixings on the connector. Add the remaining two uprights and slide the longest 1/4" rod thorugh all 4 uprights and the tube in the pen holder.

Slide the convex mug mount though the hole into the connector on the bottom motor, and tighten it up. Slide a spring onto the shaft of the concave mug mount and slide it into the other set of holes opposite the convex mount.

Step 4: Connect the Electronics

Picture of Connect the Electronics

The electronics are easy - we've only got 4 components to connect. Your stepper motors should have 4 leads on them - if they have a different number then you've bought a slightly more complicated type. Read the datasheet for them and work out how they connect.

If you've bought basic bipolar steppers they should be colour-coded. If not then it's off to the datasheets again. Attach the two steppers to the EIbotboard according to the markings on the bottom of the board. Make sure that the one driving the screwthread connects to the Y axis connections, and the one which rotates the mug connects to the X axis.

Plug the servo into the servo-1 connector. The EIbotboard can drive up to 8 servos, but on mine only the first connector had pin-header on it. Make sure you've got enough length on the servo cable for the pen assembly to move its full length, if not get a servo extension cable.

Connect a 5V power supply to the eibotboard, then connect the board to your PC via the USB cable.

Step 5: Frig the Software

Picture of Frig the Software

No matter how good you are building hardware (not that I claim to be), there's no getting away from the fact for a CNC project like this you're going to need to develop some Control at some point.

Luckily someone has done the hard work for us on this occasion, and the EIbotboard can be controlled directly from an Inkscape plugin, which is where you probably want to be drawing your design anyway.

What follows is the process I followed frigging the software - there are probably faster or better ways, but I'm good with serial stuff so this made sense to me. If you don't care then just skip to the bottom. You're going to have to do this yourself though, there's no download here.

Setup Inkscape and the eggbot software according to their instructions, and create a simple image (a square or something). Get a port monitoring program running (I used portmon, I'm sure there are others) and start the job running. When it's done, dig out the EIbotboard manual and open up the port log.

Scan through the messages, and work out where the commands are in all that - there's not that many of them. refer back to the manual to see what the commands mean. There a lot of messages that go SM,something,something,something so they're probably what's driving the steppers, which the eggbot manual helpfully confirms. So that's where we'll attack the software.

Find in the inkscape folder. search through it for SM. There are only a couple of occasions it's used, and it's pretty obvious that only one relates to drawing an image through the motors. Edit that line to include a suitable multiplyer for the screwthread.

Simple version:

Download inkscape
Download the eggbot software,
search it for the following line (line 1271 in the current version)
strOutput = ','.join( ['SM', str( td ), str( yd2 ), str( xd2 )] ) + '\r'
change it as follows
strOutput = ','.join( ['SM', str( td ), str( yd2*SCALE_SCREW ), str( xd2 )] ) + '\r'
add the following at the top near the other constants

Step 6: Design Your Mug

Picture of Design Your Mug

And we're good to go! load up inkscape and create a new image. Select File, then Document Properties.  In the custom size box, set width 2400, height 1200 and units to px. Feel free to play with these settings later, but they work for me.

Step 7: Let's Print!

Picture of Let's Print!

In inkscape, select Extensions, Eggbot, Eggbot control. Go to the timing tab, and set the Speed when Pen is Down and Speed when Pen is Up to 100 each. Again, feel free to play with these later - faster is possible, but there will come a point when the board starts throwing up error messages part way though a job. Also set Delay after Lowering and Delay after Raising to 500 in each case.

Next options. Actually you can leave all these for now, but you might need to select the tickboxes to reverse the motion of one of both motors. I did. You'll find out when you run your first test print.

Go to Setup. The pen up and pen down positions are dependent on the size of mug and type of pen you're using, so they'll need checking on a regualar basis. When doing a job for real put a little clingfilm or something over the mug before doing this - for the initial setup its easier to use a whiteboard marker so it's not important. Stick your mug in place, inset the pen, select the "toggle pen up/down" option, and hit apply. Adjust the two values at the top as appropriate, and keeping hitting apply till you've got the range you want.

And that's it. If you've got a design ready then rotate the mug and screw thread till the pen is at the centre of the mug, directly opposite the handle. Go to the plot tab, click Apply, and off you go. Keep an eye on it and be ready to dive in and unplug the PSU if something goes wrong (eg the pen hits the handle).


julioberaldi (author)2016-11-06

Olá amigo, esse seu projeto é muito bom! É uma ideia brilhante; parabéns!!!!

Fedegarage (author)2016-02-09

very good system and very ingenious .
I would like to take advantage of your idea to do a plotter for cutting slabs of depron without having a great plan since the slabs measuring 60 cm x 120cm .
What do you suggest?

anglesachse (author)Fedegarage2016-04-12

Take a look here,

Possibly just what you need.

D raj (author)2016-02-16

Please can u make the same structure with adruino cos this board is quite difficult to find and expensive too

anglesachse (author)2015-05-25

Got it running, Scale_screw set to 6, with a 16 toothed gear

anglesachse (author)2015-05-13

Brilliant. Can´t stop myself, building one.

Complete watercut Alu.

four jaw chuck with thanks from Hexitex on thingiverse

tady (author)2015-02-12

Its because he is using an M5 threaded rod for the pen spindle... If you take a look at the M5 thread standard you can see the thread pitch is 0.8mm/turn.. And he is using a 200step/rotation motor... So in one motor rotation (200steps) the pen moves 0.8mm.. So you have to ask your self hoe many steps does the motor need to make so the pen moves 1mm... The answer is 240... That means 240 steps/mm... Hope this helps...

AGAVE1062 (author)tady2015-05-05

... you need also consider the microstepping (I guess you
drives will have a microstep facility - 4 or 8 or 16 -)... maybe I was wrong, but (EBB) driver board uses 16× microstepping to give a resolution of 3200 steps/revolution in both axes ... if so, the answer is 4000 steps/mm..

skawikk (author)2015-01-01

hi, first: sorry about my english

why scale_screw are 240?

bhanbija (author)2014-12-13

Do you think i can make it using arduino mega instead of eibotboard? Can you help me with the coding?

teed (author)bhanbija2014-12-14

The main reason for using the eibotboard is it has a pair of stepper motor drivers built in, which the arduino doesn't, and it already has a plugin in inkscape. You could use an arduino with a motor shield of some sort as a couple of people have suggested, but you would have to program it first, and I don't have the time to help, sorry. You'd have to get the arduino to respond to the same set of commands as the eibotboard (unless you change the drawing application too) which are documented here:

I'd also point out that a few people have built this using a belt drive for the pen, rather than the screw drive I used - it seems to work a LOT better.

moha162003 (author)2014-08-19

this good idea Thank you for this effort

andrew.spencer.2 made it! (author)2014-03-16

I dusted mine off again and worked out a few kinks that had been troubling it last time. a bit of sugru made a great custom belt drive pulley for the stepper motor

pyrogeek (author)2014-02-08

That's awsome!

david xu (author)2013-10-08

Good Design !! If you need this kind of cutting plotter please contact me at

andrew.spencer.2 (author)2013-07-30

What a great instructable, it's just what I needed! A lot of rowing clubs will give out china mugs as trophies at regattas, so I copied your plotter to personalize them with a porcelain marker. Still in the testing stages so far, but changes to date are: changed the pen axis to be tiltable, since these mugs are slightly conical (an old printer carriage worked a treat for this); and I've glued a bolt to one of the fins on the mug mount to counterbalance the weight of the handle. So far, so good! Thanks heaps for doing all the legwork and writing such a nice 'ible!

beverageexpert (author)2013-04-17

As a solution for the controller you could use an arduino with adafruit motor shield. I am currently looking for a project where this has been done. It seems like a no brainer because the board drives two steppers and a servo. I was going to build zaggo's spherebot which uses pololu stepper drivers with an arduino. but I have an arduino clone and motor shield that cost me 20 bucks total so I would like to figure it out with this. There are many drawbots that use the motor shield so it shouldn't be to difficult to port

britantyo (author)2013-04-03

is there any stepper motor specs here???

teed (author)britantyo2013-04-17

There is - on the first page. It vaguely states "I went for Bipolar, 200 Steps/Rev, 28x32mm, 3.8V, 670mA because it was pretty much the first one I saw, but it's within the ballpark of what you need"

It occasionally drops a step on the mug rotation if you don't counterbalance the handle though, so definitely don't go any lower

finkaminka (author)2013-04-12

this is rad! i have a super favor to ask...will you make me a mug? will you do it in honor of bringing back the aquatic arts? that would be so rad! maybe we can trade for something - I'll make you something rad! i just know i can't built this right now - damn deadlines. YAH, "From Mug plotter with love." Thanks for considering teed.

P.S. If you really would make one...see me on fb: The Olivia Darlings cuz we clearly need a team mug. Especially one with a floating formation on it. A surprise for a surprise!

teed (author)finkaminka2013-04-17

The Olivia Darlings looks like a brilliant idea, so yes, I shall. But it might take me a little while to come up with something that will do your particular interpretation of the aquatic arts justice - maybe it'll be a nice surprise in a couple of weeks time!

finkaminka (author)2013-04-12

this is rad! i have a super favor to ask...will you make me a mug. will you do it in honor of bring back the aquatic arts. that would be rad - maybe we can trade for something. i just know i can't built this right now. you should charge a fee or do a trade. YAH, from Mug plotter with love.

If you really would make one...see me on fb: The Olivia Darlings. Cuz we clearly need a team mug from teed.

Graver (author)2013-03-15

Hi I would really like to build this cup marker but I can't get the dxf file to give me anything but numbers and letters doesn't seem to work in any draw program that I have. If I had a drawing of the pen holder would be nice. Think that the other parts can be worked out. A drawing of the other parts would be helpful. I have a laser cutter but it uses G-code. Very well done Instructable..

teed (author)Graver2013-03-16

I'm glad you like the idea. DXF is a fairly open standard for exchanging cad drawings - it was drawn using the free version of Siemens solidedge 2d, but you can also open it in other free programs like draftsight or inkscape. Our laser cutter can import dxf files. I'd be surprised if there wasn't a dxf to g-code converter out there somewhere.

Graver (author)teed2013-03-24

I have down loaded the solidedge 2d and It seem to be a very good program I may find many uses for it but not able open your DXF with it, just does not see it. Have you any suggestions how to move on? I have started making the Mug plotter having a problem with the pen holder design. I can send photos of my progress if you are interested.

teed (author)Graver2013-03-24

do you mean you just can't see the file in the open file dialogue? I'm using solidedge ST3 (which is a slightly older version) and it can open a DXF file like any other file. It does seem to get slightly confused with the scale though, so I had to select the manual zoom and zoom out a long way to display it normally.

If you don't get anywhere then PM me your email address and I'll send you the native file instead. I'd love to see some photos of your progress - I've mentally assembled a better pen holder that will let you swap out pens for multi-colour designs, but our laser cutter isn't working at the moment - maybe I can get you to try it out?

Graver (author)teed2013-03-29

Hi Teed,
Solideedge does not show your file in the open file dialogue. I do not know what PM means. I would like to send my e-mail address but not sure how. I would like to see what you have in mind for a pen holder. I can make just about anything. My laser is small only 7 X 11 inch work area. If it will fit in that area I can do it. I tried to send photos of what I have so far but I don't know where they went.

teed (author)Graver2013-03-29

PM is internet slang for private message - I've sent you one with my details. Click on the "you" button in the very top right hand corner of this page (you might need to scroll back to the top), then click on "inbox". I've not drafted anything for the revised pen holder yet but I'll try and knock something up and send it to you

Graver (author)teed2013-03-27

Hi Teed
I stoped looking for ways to open your dxf file and just built my own. I will be asking you how to make the software work but that is in the future. I have attached some photos of my attempt to make the Mug Marker. It is made of cardboard because I engineer by making parts I make a lot and cardboard is easy to work with and quick.

rgthane (author)2013-03-14

I would suggest chalk on a blackboard coffee mug it wouldn't be permanent, but could be interesting to change designs and colors leaving the fade design to fade under the new one.... Great build!

teed (author)rgthane2013-03-16

That's a great idea, except I've never heard of a blackboard coffee mug. Any idea where I could get one?

Ugifer (author)teed2013-03-22

Ebay is the source of all good things (well except for eibotboards - where did you get that?)

teed (author)Ugifer2013-03-24

Yeah, I always waste time looking at other sites and eventually think to try ebay. I got the eibotboard from SK Pang.

Ugifer (author)Ugifer2013-03-22

Great 'ible, BTW. If I had time I would love to make one.
Fingers crossed for that lottery win so I can retire!

crazy lazy man (author)2013-03-16

can i use marker here

ggustavson (author)2013-03-15

Nicely done. Simple, fun, functional. I think I heard you talking about that coupler on the top motor being the source of wobble, which it appeared to be. Once that's replaced with something that fits better and isn't flinging long headed screws around I bet it runs smooth.

I was really entertained by this prodject. I'm love to see more video of it doing stuff. Have you found a way in software to do raster plots, or half toning?

I bet you could do color prints pretty easy with a manual pen swap.


teed (author)ggustavson2013-03-16

Thanks! Simple fun and functional was exactly what I was going for. The couplers were made from some 1/2" aluminium bar, and the lathe had a bit of a wobble when I made it so the holes are a little oversize. The setup on the lathe is a bit better now so I might have another go at it. Ideally you'd use a universal connector of some sort but that would add cost.

There are some instructions out there for doing rasters in inkscape, although I haven't tried them yet. Colour is probably the next step, but I think I need a simpler way of fixing the pen in that case.

Lakes57 (author)2013-03-15

Kickstarter! KIt of parts! Take my money already! :D

Well, ok, some nice laser cut ply and maybe some of that draft excluder tape stuff. :)

That board is quite expensive, so I would try to use an Arduino, Stepper driver.and some G-Code.

Oh, and a construction video please. :)

teed (author)Lakes572013-03-16

I'd love to turn it into a kit, but I think it needs a little work to make it a bit more stable and simple to build in that case. I'm sure you could use an arduino and build a stepper shield for it, but this way I could just use the existing software.

The board cost me £33 plus tax, and an Arduino from the same supplier would be £20 plus tax, so it's not a huge increase. I suppose the benefit of an Arduino is you usually already have a couple you can swap between projects.

mpc+ (author)2013-03-14

You'll also be performed using the AVR controller?
You can do this work?

mpc+ (author)2013-03-14

Very Very cool!

studleylee (author)2013-03-14

Very cool!

aquilesvacabriones (author)2013-03-14

this is awesome!... do you have a video to show us?

teed (author)aquilesvacabriones2013-03-14

Thanks! Poor-quality video posted above.

Aristarco (author)2013-03-14

What? No video of this wonderful device working? I like it a lot! But as the saying goes, Loves comes from Sight. Will you post a video of the Mug Plotter in action?

teed (author)Aristarco2013-03-14

Okay, you convinced me. I've added a video in the introduction. Please ignore the background noise of the rest of Edinburgh Hacklab being rude about it.

wumeng (author)2013-03-13

This is awesome!!!

TheStudio7 (author)2013-03-13

Ok. I'm impressed. Have to build one.

herbvee (author)2013-03-13

This is awesome!!! An idea worth kickstarting. I can see this at county fairs nationwide

vicvelcro (author)2013-03-13

[begin quote]
To build the mug plotter, you're going to need the following as a minimum, regardless of how you approach it:
two stepper motors
5V Power supply
mini-usb cable
[end quote]

So, I wouldn't be able to do this any other way? Not with an MSP430G2553, a single stepper with an XY transfer case, 3.3v supply, bluetooth, and a Palm Tungsten T5 PDA? The only way to do it is with the stuff you used, because it is so hella-rad that if I used anything else, I just wouldn't be cool?

I took a look at this, because I was interested in the general requirements and wanted to attempt it using things I am more familiar with. Before I start, stop me if it would be just absolutely impossible.


About This Instructable




More by teed:Mug Plotter
Add instructable to: