Introduction: Learning Arduino Basics the Easy Way - Part 01 "Blink" or "The Internet"

About: I love to hack things or make new ones.

You've bought your first Arduino or you're planning to get this great little device? Obi Wan would say: "That's good. You have taken your first step into a larger world." Same thing for me! Congratulations! You'll see, as soon as you master the basics, you'll have so much fun with this little device.

There are so many tutorials and books outside, so why another? Maybe you think learning should be funny or at least entertaining.
I've seen lots of tutorials that are technically brilliant, but they all aren't very entertaining. Others reduce it to the minimum, needed parts, hardware setup and some code. They also do the same but I feel a bit bored. And if you're like me, you don't want to read the next lesson if you're bored.

So let's try my method and let me know what you think of it.

Step 1: Let's Go Shopping

We'll need a few things to start:

- An Arduino. It doesn't matter if you buy an "original" one like the Duemilanove or Uno or a clone like the Diavolino. They're almost identical. If you've got already some soldering skills, you can build your own clone too! The Arduino is "Open Hardware", so there are many legal clones out there. Most of them act like the original, some of them are made for special needs. So before you buy one just make sure to select a "regular" model and make sure, that you get one with a standard USB port.
- An USB cable (A to B), if you don't have this kind of connector on your Arduino you need a special cable like a FTDI adaptor
- A red LED. If you want to save money always buy LED bundles. These contain several LEDs in different colors and sizes and they're really cheaper than bought one by one. Check out eBay. Don't buy SMD LEDs, these can't be used for prototyping (ok, you can use them, but it wouln't be funny at all....). Another option would be to desolder a LED from a broken device. I often use parts from old devices. They're for free and it reduces the waste and  you'll level up your soldering skills without spending money.
- The programming environment, you can download it here for free: http://www.arduino.cc/en/Main/Software (Linux, Mac, Windows)
- a copy of "The IT Crowd - Series 3 - Episode 4", no you don't really need this, but you'll really enjoy it, if you're geek like me
- solid core wire, if you don't want to buy it, just take a look if you've got an old computer with an internal speaker. If you don't need it any longer just clip it off
- soldering iron and some solder
- project box, you can use anything you like.

Step 2: The Internet

Grab your copy of the IT Crowd episode or just watch this

Step 3: The Code, No Not That of Da Vinci, Just OUR First Code

Open your Arduino Programming Environment and enter the following lines:

-----------------------------------------------------------------------------------------------------------------------------------

/*
  "The Internet"
  by Moss & Roy, Reynholm Industries

  The following lines will turn on the LED on for one second, then off for one second, repeatedly.
  Just upload it to your Arduino and find someone who doesn't know how "the internet" looks like.
  Have a lot of fun!
*/

void setup() {               
  pinMode(13, OUTPUT);    
  // initialize the digital pin 13 as an output.
}

void loop() {               // here we start the endless loop
  digitalWrite(13, HIGH);   // turns the LED on
  delay(1000);              // Arduino is waiting for a second
  digitalWrite(13, LOW);    // turns the LED off
  delay(1000);              // and again the Arduino is waiting for a second
}

-----------------------------------------------------------------------------------------------------------------------------------

Now klick on the "Play" button, your sketch will now be compiled. If everything is fine, you will see the message "Done compiling" and "Binary sketch size: 1018 bytes (of a 30720 byte maximum)". If there should be any error messages, check the code again,may you missed a bracket or misspelled something.

Step 4: Prototyping

Before we solder the wire to the LED, just one thought. Ok, all we did until now was just our first step into Arduino programming. We can finish it right here after the prototyping. If you still want to finish our project keep in mind, that we'll need the Arduino for the next project... And maybe you want to use the LED for something more useful. Just do want you want to do :)

Now it's time for prototyping....

STOP!!!! First some information about LEDs (yes, after all that fun, we just have to learn something...), let's see what wikipedia tells us about LEDs:

A light-emitting diode (LED) is a semiconductor light source. LEDs are used as indicator lamps in many devices and are increasingly used for other lighting. Introduced as a practical electronic component in 1962, early LEDs emitted low-intensity red light, but modern versions are available across the visible, ultraviolet, and infrared wavelengths, with very high brightness.

When a light-emitting diode is forward-biased (switched on), electrons are able to recombine with electron holes within the device, releasing energy in the form of photons. This effect is called electroluminescence and the color of the light (corresponding to the energy of the photon) is determined by the energy gap of the semiconductor. LEDs are often small in area (less than 1 mm2), and integrated optical components may be used to shape its radiation pattern. LEDs present many advantages over incandescent light sources including lower energy consumption, longer lifetime, improved robustness, smaller size, and faster switching. LEDs powerful enough for room lighting are relatively expensive and require more precise current and heat management than compact fluorescent lamp sources of comparable output.

Light-emitting diodes are used in applications as diverse as aviation lighting, automotive lighting, advertising, general lighting, and traffic signals). LEDs have allowed new text, video displays, and sensors to be developed, while their high switching rates are also useful in advanced communications technology. Infrared LEDs are also used in the remote control units of many commercial products including televisions, DVD players, and other domestic appliances.

Ok, that's about the theory. If you want to know even more about LEDs visit this: http://en.wikipedia.org/wiki/Light-emitting_diode

Disconnect your Arduino.
Now let's grab the LED, there's a longer leg and  shorter one. The longer leg is called Anode and is always connected to the "+" pole, the shorter one also called Cathode is connected to "-" or ground. We will connect the Anode now to pin 13 of the Arduino and the Cathode to "GRND", after that we can connect our Arduino again. After a second it will start to blink.
You may think "Hey just wait a minute, why don't we add a resistor, every electronic book tells us, that we always have to use the right resistor with  LED". That's right, but the Arduino has a built-in resistor on pin 13, so it's ok for this example.

Well done "The Internet" is now online.... ;)

Step 5: Finishing Our Project for the Next Presentation at Reynholm Industries

Ok, you still want to build a useless device? It's pretty simple