Designing Letters

The downloadable program for designing letters uses a coordinate system with an x and y-axis, with values from 0 to 100.

To show my oldest son how designing each letter would work, I wrote out a few diagrams for him. The x-axis is the letter width, with the value 50 being the most common. The y-axis is the letter height, with 100 being the maximum. The up-down arrow represents if the pen is on the paper or off the paper. x is false or pen on paper, and √ is true or pen off paper. Without that third variable you would just end up with scribble-scrabble on the paper instead of letters. To give him a place to start, we designed A, B, and C together. Each block on the page represents a line of a letter on the paper or a movement of the pen when off the paper. I went on to design the remaining letters on paper for him, but a few them didn’t work as written so he fiddled with the numbers until they made a recognizable form of that letter. Difficult letters: K (this one gave us a headache!), Q (how to get that little slash at the bottom), and Y. It was interesting to see how difficult it is to “teach” a robot to write when it comes to us so naturally (after learning in school of course!)

The robot has issues writing curved lines, so we tried to stick with as many block shapes as possible. Many of our letters ended up being a bit non-traditional in appearance.

In part of the this print, the marker was too far into the assembly.
Some of our first attempts to print.
Funny-looking “Y”

Above, you can see some of our troubleshooting attempts. In the first banner, the pen was inserted too far. The last LEGO EV3 on that banner is after we moved the pen up a bit. The second pic has some of our very first attempts at even running the Print3r bot. As you can see, we had a long way to go! The third pic has a very interesting-looking Y. This is after we tried programming a few more letters and before we decided to go for the whole alphabet.

My son Corran exported all the alphabet letters here into a google drive link. So if you don’t have time to program all the letters, you can use ours instead. They are definitely not perfect, but they are a place to start! You will still need to download the PlotStep.ev3p file that I mentioned above.

The following link will allow you to download the same program that I linked to above. The only difference is that it contains all the letters of the alphabet also. Each tab within the program contains a different letter or punctuation mark.

Download the Sharpie Bot’s alphabet

To download the entire program, click the icon as circled in the above image.

The current program in the above pic is for the letter R. To access the other letters, click the circled icon (on mouse over, the text “program list” will appear) and a list of them will appear. Click the letter or punctuation needed and the tab will change to the programming for that letter. My son would build words or sentences to print using the word builder tab and would copy and paste the appropriate blocks into it. Notice that there is a “space” tab for  programming a space into a sentence, so that your words do not all run together into one. There is also a PrinterFeed tab to use for when you are finished printing.

Our first successful print of a long message after Corran finished programming all the letters. “Hello, my name is SharpieBot. Go to for more information.”
The paper it took to get to that message above.

Printing customized messages

Pictures of our alphabet

Here is a Video of the LEGO Mindstorms Banner Print3r bot printing our customized alphabet:

Just for fun, we had the Print3r bot print us a little ad for our website!

Here is a video of the LEGO Mindstorms Printer bot printing a very long message:

This was a particularly difficult LEGO Mindstorms project for us, so if anyone else who tries this build out has any issues, please ask us if we can help! It is a fun project though!


P.S. I have edited and reposted this blog post to make it more clear. I hope this will be a help to anyone who is working on this project! Please feel free to ask questions! I will do my best to answer them!


[adinserter name=”Block 12″][/adinserter]



This Post Has 13 Comments

    1. Anonymous

      I agree

  1. Tiffanie Bialis

    Hello!! You said that you came up with all the letters, exported here, but I can’t find them. Can you direct me as to where to find them to help my son?

    1. Lynn-Marie

      Hi, Tiffanie! Thanks for stopping by! The way we set up the letters for download is kind of confusing. My son and I will work on it right now to get it more accessible.

      Update: I have rewritten the post to make it more clear where to download the letters and have also put up a few pictures to show what they will look like in the Lego Mindstorms programming environment. I hope this helps!

  2. jihane

    Hello I loved what you made, it is awesome continue like this and if you have any other projects send it to me

  3. Anonymous

    Nice robot but it isn’t really working for me and i don’t have any paper rolls

  4. Anonymous


  5. Judah

    What type of marker are you using?

    1. Lynn-Marie

      We used a Sharpie for the banner printer bot. I think that is what we saw other people using in their banner printer bot builds. We did end up with permanent marker marks on some of our LEGO pieces though.

  6. Vadim

    My son and I put together the printer. But we cannot write a program. Please share the program.

Be geeky with us!