How to have fun with Arduino (and become a Geek in the process)

Do you wish to earn your geek card - pronto? Lets get started! This guide will start you on the path to the dark side using the open source Arduino development and prototyping platform. It will introduce you to microcontrollers, get you started with a platform for physical computing and give you the confidence to create technological marvels. It is open source, inexpensive and a blast to learn.
Remove these adsRemove these ads by Signing Up

Step 1: Get yourself an Arduino

Picture of Get yourself an Arduino
The first step is to acquire an Arduino board. I highly recommend the USB version. You will need the USB A-B cable as well.
Here is a link to the board: ArduinoBoard.
Here is a link to the cable: USB Cable.

Shopping online is fun, and it gets better when your toys come in the mail.

Step 6: You can add the optional prototype board

There is a prototype shield kit and breadboard available to add utility to your Arduino. Please see an excellent tutorial by Bob Gallup on how to assemble this here: ProtoshieldAssembly. Don't be afraid the linked tutorial will walk you through putting it together in a logical step by step procedure. Very well done!

This prototype board is by no means necessary but it does add utility to your Arduino. You can get a prototype shield here: Protoshield. You can get the prototyping breadboard to mount to it here: Breadboard.
pleaaaaaaaase ,, can i use the same microcontroller "ATMEGA328P-PU" to program it many times . write and erase and try many projects on the same microcontroller using arduino ????????
rancid_843 years ago
LOL,, looks like a Cisco Cert Card ! nice
Microcenter now carries the sparkfun and specifically the Arduino.
Cool, a geek doing Latin. I came, I saw, and I went.
johnpoole3 years ago
thanks for writing that up, i read every word and bookmarked it. your writing style would work as a professional writer. this trash is just to much fun.. i was in the field when transistors were making us all dream of projects.. still do not have a clue as to the next big step.. the arduino is almost limitless.. THANKS AGAIN
The Arduino board you recommend is no longer available and the replacement they have is on backorder. Is there another one you'd recommend to make this project? I am planning on getting started. Know nothing
OK, that's. Yes I am a complete beginner, or since i haven't done anything, even a pre-beginner. Thanks for the reply.
This tutorial was written when the (now-outdated) NG when the latest and greatest version. Today, the Arduino Uno is the latest version.

Buy the board here:
Or here:

If you are a complete beginner, I would also recommend this tutorial:
and the Arduino uno
kroq-gar785 years ago
how is it possible control so many LEDs individually? people are controlling ~64 leds (8x8 array) with only using 16 pins (or something like that). they're not even putting then in parallel. how do you do it??????
charlieplexing.I'll explain it sometime today.
err its multiplexing, charlieplexing is only used if u need to control over 100 led's, since thats hthe maximum ammount of LED's that you can control with the arduino and nothing else like transistors or so.
hintss Derin4 years ago
well, if its a matrix, don't they just light one row at a time and let POV take care of making it an image?
bombmaker26 years ago
how do you hook this up to a wii nunchuck or joystick to control a servo
you run this code do_everything_i_want_you_to_do(wii_nunchuck ,joystick,control_the_servo)
You mean do_everything_i_want_you_to_do(wii_nunchuck ,joystick,control_the_servo); ReCreate forgot the semicolon... *You need a library that reads the nunchuk, and you need Arduino's built in servo library. Google the both of them.*
theres an instructable on it. the how to control your robot with a wii nunchuck or something like that...
kcedgerton5 years ago
For controlling a servo does it require a pwm source? Please help.
it has pwm outputs. check out the servo tutorial on their site.
Phoenix174 years ago
where you have the board listed, they say that they "retired" the product. Just fyi. Which other board would your recommend? I'm looking at a Duemilanove?
uno is the newest
Dannne114 years ago
good to know :D
sotsirh1946 years ago
Is there any way for the Arduino to display a message on the screen like a basic stamp.
Yessir, there sure is! It's called serial communication. Copy and paste this into a new file: void setup() { Serial.begin(9600); // opens serial port, sets data rate to 9600 bps } void loop() { Serial.print("Sup, World?"); }
So in Hyper terminal it should return"Sup, World?"?
I'm not familiar with Hyper Terminal, but there's a built-in serial monitor in Arduino's software; read my other reply below...
Oh there is?
Yup :)
Neat...I am Getting myself One(An Arduino)
If I upload the program to my board, nothing happens, what should I be expecting? Is there anything else that I need to do?
yes you have to click on the button that says serial connection to see it
yes there is. Go to your Serial Monitor by clicking the button that looks like the attached image. You'll see that the bottom section has changed. This is what has to say about it: "Displays serial data being sent from the Arduino board (USB or serial board). To send data to the board, enter text and click on the "send" button or press enter. Choose the baud rate from the drop-down that matches the rate passed to Serial.begin in your sketch. Note that on Mac or Linux, the Arduino board will reset (rerun your sketch from the beginning) when you connect with the serial monitor. "
I Seriously need help! I dont know how to paste get the code onto the program if its not an example for example, junkyar john posted a code, but whenever I try to paste it into the program it just gives me errors!!
Hmm...that's odd, it may be in the way this website formats the text. I'd copy and paste into a text file first, and make sure it looks exactly like what I wrote. Then copy and paste into the arduino software
erase // opens serial port, sets data rate to 9600 bps then it might work...
ReCreate5 years ago
Wow, I am Getting myself An Arduino, The Blinkenlight code is so Simple!
Bongmaster7 years ago
Well i got a Freeduino (from NKC on ebay, the self assembly version) and i'll have to see where it goes :) am planning on trying a simple midi (over USB) keyboard (one octave) or drum kit.. whatever is simplest :) thanx for the heads up on this :)
I just bought one of those as well :) I got the (Arduino Duemilanove Compatible) one. Waiting for it to come in the mail
apeine5 years ago
You only have to do that if you have a diecimila of older boards. Boards like Duemilanove and Mega switch automatically.
safebat5 years ago
Thanks; very well written and well laid out. I was wondering what all the Arduino instructables was about. I'm currently an old fart taking some programming and hardware classes and your lesson has given me an even greater spark of interest and desire to break out the breadboard and electronic parts and start playing the the Arduino programming too. Keep up the good work. I've read a few of these from other authors and they leave a lot of gaps.
amando965 years ago
lol as soon as i finished uploading the blink program i automatically knew i was a geek... lol
nice 'ible!
Foaly75 years ago
What does the Latin on the card in the last step mean?
Rob K Foaly75 years ago
I came, I saw, I conquered Famous Latin quote from Julius Caesar
Koil_15 years ago
You could also do what I did and hack up an old RS232 cable. I salvaged it from a building that had been demolished. It doesn't get much better than free and useful. That's not to mention all the different color codes one of those has (52) and their all 22 gage. That and I can and have also used it to extend my network hubs. With 26 twisted pairs it hauls a lot of data.
What does Vini Vidi Vici have to do with being a geek?
Vini Vidi Vici is a Latin phrase meaning i came i saw i conquered. He means it in reference to conquering basic coding on an arduino
Didnt julius ceasar say that? I distinctly remember that phrase :)
He did, in 47 AD it was in pep talks with the Roman army.
yay! Im right! :D
Vini Vidi Vici means if you read his instructions you conquered the arduino. Clever!
Thanks your instructable helped alot!!! I really want to get the Breadboard version!!!
john otto (author)  fallenspirit1236 years ago
I have it & love it....umm wore it out actually! Buy 2.
no that I think about it...Ill stick with baorduino but I will try out the iduino first it should be the exact same but usb powered(saves me $20 :) )
now that im thinking about it... I might save up to get the arduino kit that comes with some projects a protoshield and a breadboard + some other stuff!
rolandl6 years ago
If you load your Arduino Diecimila with SimpleMessageSystem (available from and you use linux you can control the board with my package of shell scripts. Run 'wget' to get the package. Now with a GUI via the xdialog command.
Complex control via scripts. AD scaled to mV and formatted for import to spreadsheets.
timmy1234s6 years ago
im just wondering . For the Arduino sockets, can you just put in a wire into the sockets and then presto, its connected? Or do i have to solder it? confused for the Arduino sockets.
john otto (author)  timmy1234s6 years ago
Yes - they will accept wires at ~24AWG. But try these:

Headers you can separate into individual pins and solder your wire to:

Xellers6 years ago
Thank you so much!
With the help of your instructions and a few of the links that you provided, in under half an hour, I got my Arduino working and wrote my own program that flashes LEDs in sequence.
  • * * * *
fairblender6 years ago
There is also a part II to the nixie driver for the Arduino here.
Yeah my robot Walbot uses the Arduino board, I like it cause its powerful yet easy and cheap to use. Good job with the instructable.

Truly amazing your little robot is... but put through a spell checker your intro text should be.
which words did i spell wrong, mabey (maybe) i know are there any others, I did this really fast at around 2 AM so I'm not surprised there are spelling errors.
Well it really doesn't matter, but, since you asked: "unleased" should be unleashed. "aflicting" should have a double F. "obsticals" is really obstacles. and as you said, "mabey" is maybe. Again, I really admire your robot. I am in awe of your talents - I just got an Arduino board a couple of weeks ago and so far I'm just blinking LEDs. The spelling is really no big deal.
I fixed them on my instructables page (finally)
If you have any plans to build it I still have 1 Arduino shield left, I'm selling them for $15 plus shipping to you, thats better than paying the $32 or so dollars it costs to get just one made. Yeah about the Arduino, thats the way I started, with blinking LED's, then I went on to incorporating switches and other components to the point where I learned how to make just the Ultrasonic work, then just the H-Bridges work, and the infrared, then the power issues, and after that I just combined all the functions I had made for each component, and the basic avoid wall commands. But overall programming is really bad for me, I only have taken a half credit of C++ and that was enough to limp my way through this project. If I have a chance I will go back and take a full year.
At least you took a class. i self taught myself C, C++, assembly for Intel processors, Javascript, LSL(Second Life); all with absolutely NO professional help and before I left middle school. All my electronics knowledge is self taught. I'm now (finally) taking a formal class in Java at my high school where I'm president of the robotics club. I have a knack for programming, it always came easy to me. B.T.W. great editing on the video and awesome robot you got there!
Thats great, cause quite frankly I got lost even taking a class, but same here with electronics and mechanics in my case. I just read everything I can find about that stuff, even since I was just a little kid, and over time all those little tid-bits of information come together and allow me to make something like this, without a formal education in electronics or mechanics. I guess if I had started fiddling around with programming at a younger age it would come easy to me as well, but alas that is not the case.
(removed by author or community request)
No, it's a hobby of mine- building robots, I don't use kits or instructions when all possible. I wrote a guide myself for building it, on my instructable here. Check it out, it just goes to prove that even though the Arduino is intended to be more of a beginner based platform, it is also very expandable and MANY things are possible with it.
I read your comment too fast, didn't notice the link to your instructable. I'll definitely be checking it out though. Thanks.
sweet and good misic to boot
scjohannes7 years ago
I appreciate the time you put into this instructable. I have always been too intimidated to experiment with microcontrollers. I will definitely try an Arduino. This information was well worth my time. Excellent work & thanks!
same here! thanks again
uCHobby7 years ago
Modern Device Company has a Arduino kit called the Bare-Bones Board for $15 which can plug into your large breadboard directly. I really like this configuraiton. This is a full up Arduino kit with all the parts. The only thing you will have to deal with is that it is TTL serial. A $20 USB to serial adaptor is supported and I like this option becase I can use the adaptor to connect other things to my PC so it is mult-purpose.

uCHobby is handing out Arduino parts and kits in exchange for links or articles.
westfw7 years ago
It would be interesting to take some of the many electronic questions that are showing up in the forums, whose answer is "use a microcontroller", and post projects on how to implement them using Arduino (or Basic Stamp, or any other commonly available "standard" platform, for that matter.)
Two recent examples:
Alternating LEDs with long pauses.
Breathing (fading) LEDs
mellis7 years ago
BTW, you can also order Arduino boards in other parts of the world. See: for a list of distributors.
therian7 years ago
Another Basic Stamp clone. such thing kill whole idea of microcontrolers. it slow, big and expensive. use pure microchips and you will be amazed what it can do
westfw therian7 years ago
The arduino ends up running compiled C code, so it isn't slow. "expensive" depends on how you get it; the C environment is free, and you can buy other boards, build your own boards, or use bare chips to achieve much lower cost.
Murdok7 years ago
I have to make the Midi drum set on the site one of your links goes to. Does anyone have a full set of midi drum sounds I could use? Also, how would I code the drum sounds?
I googled your request and came up with:
Hope this gets you started
dchall87 years ago
This might be a better Instructable if you started out with some motivation for why someone might want to read it. Try filling out the following sentences and use some of them in the first few words of your Instructable. An Arduino is a (fill in a description) that plugs into your (computer???) and can be connected to (what?) with a USB cable. Experienced Arduino users use theirs to (fill in some verbs and nouns that tell how some experienced Arduino users are having geek fun). Arduinos cost about (fill in) but the software is (free???).
john otto (author)  dchall87 years ago
Thanks for the input. Don't forget have fun with the Arduino!