Arduino Tutorial Bundle .:Arduino Experimentation Kit:. (ARDX)

Arduino Tutorial Bundle .:Arduino Experimentation Kit:. (ARDX)

Interested in making neat projects with an Arduino but not sure where to start?

Here's an easy to follow guide on how to connect & use a bevy of electronic components.

(shameless plug)
Interested in doing it all?
Complete kits with components to make every circuit, a printed guide and breadboard layout sheets can be purchased from.
oomlout.co.uk (in the UK)
or
adafruit.com (USA & International Shipping)
or
Floris.cc (in Holland)

Lets get started!
(A PDF Version of this guide can be downloaded below)

Jump to a specific copmonent
'''CIRC-01''' - Getting Started - (Blinking LED)
'''CIRC-02''' - Multiple LEDs - (8 LED Fun)
'''CIRC-03''' - Spin Motor Spin - (Transistor & Motor)
'''CIRC-04''' - A Single Servo - (Servos)
'''CIRC-05''' - 8 More LEDs - (74HC595 Shift Register)
'''CIRC-06''' - Music - (Piezo Element)
'''CIRC-07''' - Button Pressing - (Push Buttons)
'''CIRC-08''' - Twisting - (Potentiometers)
'''CIRC-09''' - Light - (Photo Resistors)
'''CIRC-10''' - Temperature - (TMP36 Precision Temperature Sensor)
'''CIRC-11''' - Larger Loads - (Relays)

(at oomlout we like to make everything we do open source, we have yet to properly document the files that have gone into this product however the development files can be looked through at http://www.oomlout.com/ARDX/ or if you can't find a file send us a message and we'll send it your way)
 
Remove these adsRemove these ads by Signing Up
 

Step 1.: Installing the Software :.

.: Installing the Software :.
Before we go any further you'll need to download and install the Arduino IDE (Integrated Development Environment), this is the program we use to write programs for the Arduino.

Step- 1 - Download the IDE
FOR WINDOWS'

Step-2- Unzip the software
  • Unzip the program. (we recommend placing it in c:\Program Files\)

Step-3 - Shortcut Icon
  • Goto C:\Program Files\Arduino-00**
  • Right click on Arduino.exe the goto "Send To > Desktop"

Step-4 - Plug In Your Arduino
  • Plug your Arduino board into a free USB port using an A-B USB cable
  • Wait for a box to pop up

Step-5 Add New Hardware
  • In the add new hardware dialog box click "skip searching the internet"
  • Choose "install from a specific location"
  • Choose the location "C:\Program Files\Arduino-00**\drivers\FTDI_USB_Drivers\
  • FINISHED

FOR MAC OSX'

Step 2 - Unzip the Software
  • Do this by double clicking
  • Move the folder to "//Applications/"

Step 3 - Alias Icon
  • Open //Applications/arduino-00**/
  • Command click Arduino
  • Make alias
  • Drag the alias to the Desktop

Step 4 - Installing Drivers
  • Goto //Applications/arduino00**/drivers
  • Double click and install FTDIUSBSerialDriver_V2_2_9_Intel.dmg

Step 5: Plug in your Arduino
  • Plug your Arduino in

Using linux, encountering problems, would like more details? visit http://tinyurl.com/r99d8u
« Previous StepDownload PDFView All StepsNext Step »
51 comments
1-40 of 51next »
Jan 4, 2012. 3:34 PM-pink says:
This seems like a great kit, but I still cant understand how to make the motor run both ways.. Did anybody manage and is it at all possible?
I am also planning to combine several to contol 5 motors. Did anybody try that yet?

I will be very greatful for your help!

Pink
Dec 21, 2011. 4:15 PMMetalshadow24 says:
how can you make the motor run in forward and reverse? is there a series of code that I can type in, or is it all in how I plug it up? thanks, Andrew
Sep 28, 2011. 11:16 PMComputothought says:
Interesting. I just bought an Osepp board whih is allegedly compatible with the sparkfun arduino.
Sep 12, 2011. 7:14 PMtuttlesmow says:
NEVERMIND- i was using my datasheet for a 2n2222, not the one provided with the link (p2n2222). now i guess i know what that tiny "p" means.
Sep 12, 2011. 4:10 PMtuttlesmow says:
what i thought i knew is now suspect. on the datasheet for the p2n2222ag (and what i thought i already knew) when the flat side of the npn transistor facing me, with a to-92 package,with the pins down, the order from left to right is, emitter, base, and collector on the right. why is this not true on the layout sheet. ?
Jul 5, 2011. 8:24 PMenxion says:
I tried this out and got it to work. Thanks for the tutorial I learned a thing or two.

I am however, wondering why the same circuit doesn't work when I replace the 5v and ground from the arduino with a power and ground from a 6v battery pack. Shouldn't it? The motor and transistor are rated for such loads. The only thing I've changed is the power source. I'm trying to make the jump from learning about motor controllers to actually constructing a useful one with it's power independent of the arduinos power.

I'd appreciate any help any one could point out.
Aug 22, 2011. 4:36 PMWill2MakesStuff says:
i had a similar problem, where i was powering the arduino and motors from separate power sources.

It turned out they both had to share the same ground, i just plugged the negative terminal from my battery pack in to the ground rail on my breadboard and then connected a ground pin from my arduino to the same breadboard rail, then everything worked
Aug 22, 2011. 7:18 PMenxion says:
Thanks for the reply. I've moved on since I posted that but I'll no doubt be reviewing it some day. You might want to post that message in the comments so others can see it and learn.
Jul 17, 2011. 4:26 AMrobot1398 says:
do i have to press the reset button before uploading new files to arduino uno
or i have to erase the older programmes or i just have to upload the new programme
Jun 26, 2011. 2:36 PMmwagner5 says:
Hello,

I was reading the datasheet of the 74HC595 and I came across with some values...

It is written that the max Icc/Ignd is 70mA, and each output pin supports 35mA.
If I want, for example, lit 8 leds at the same time, each at 20mA, the total would be 160mA.

So, wouldnt it damage the 74HC595?


Thanks a lot
May 28, 2011. 7:20 PMJDalman says:
ON the in and out code I found an easier way. I reloaded the array so the order is the same order the LEDs are to be lit, then I used loops to kight them from the middle out and unlight them from the outside in. I then changed it around a little to sequence out and then in.

Here's the array:
int ledPins[] = {5, 6, 4, 7, 3, 8, 2, 9};

Here's the loop:
//LEDs light inside to outside
for(int i = 0; i <= 7; i++){
int j = i + 1;
digitalWrite(ledPins[i], HIGH); //Turns on LED #i each time this runs
digitalWrite(ledPins[j], HIGH); //Turns on LED #j each time this runs
delay(delayTime); //gets one added to it so this will repeat
digitalWrite(ledPins[i], LOW); //Turns off LED #i each time this runs
digitalWrite(ledPins[j], LOW); //Turns off LED #j each time this runs
} //8 times the first time i will = 0 the final
//time i will equal 7;

//LEDs light outside to inside
for(int i = 4; i >= 0; i--){ //same as above but rather than starting at 0 and counting up
int j = i + 1;
//we start at seven and count down
digitalWrite(ledPins[i], HIGH); //Turns on LED #i each time this runs
digitalWrite(ledPins[j], HIGH); //Turns on LED #i each time this runs
delay(delayTime); //gets one added to it so this will repeat
digitalWrite(ledPins[i], LOW);
digitalWrite(ledPins[j], LOW);
Mar 27, 2011. 8:09 PMit hertz says:
void loop() { int value = analogRead(potPin) / 4; analogWrite(ledPin, value); }

potPin was not decleared in the scope........ everytime i rewrite or copy and paste

Oct 3, 2010. 7:27 PMDrJoMaVa says:
Hello,
This step mentions linking multiple shift registers together to control a larger number of LEDs with just 4 Arduino pins. How is this accomplished? Thanks for your help.
Mar 21, 2011. 1:38 AMmd81544 says:
http://www.arduino.cc/en/Tutorial/ShiftOut
Jul 18, 2010. 6:31 PMbiggestnoob says:
Hi there, I am wondering if I can run my dc motor reverse. is there any special code to make it reverse? if there is, please tell me. thank you,
Sep 25, 2010. 11:57 AMjrigvd says:
the red wire is normally going in the + rail, pull it out and connect it to the Collector of the transistor and the black wire coming from the motor goes into the + rail
Apr 13, 2010. 1:43 AMSchwann says:
 Hey, just thought I'd let you know that the example from arduino.cc uses a pull-down configuration while your circuit uses a pull-up configuration, so the LED on/off is reversed (:
Oct 25, 2009. 10:01 AMdadoftwins says:
Where is the code for this project? Can't find it anywhere.
Apr 4, 2010. 9:59 PMrobotjam says:
The code is just below the video and goes all the way to the right and i mean ALL the way
Feb 13, 2010. 10:10 AMeshneto says:
 Hello there, nice job,thanks! Maybe you could help me here.

I am trying to figure out why is the 2.2k resistor required? I have seen in the transistor datasheet something like "Emitter-Base voltage = 6.0Vdc", doesn't it mean that we could plug the device directly to Arduino?

I am trying to figure out if I may use a 2N60B instead, since I have one of these here. I just don't know why would I need a resistor.

Thanks in advance.

P.S.: The code appears without line breaking (using google-chrome for Linux) for me.
Feb 14, 2010. 1:49 PMolmstw says:
You ask very intelligent questions... (NO sarcasm intended)

The 2N60B, however would not be a good choice here, as it is a MOSFET not a JUNCTION transistor.  The gate voltage required for full turn-on is 10V, TWICE the output voltage of the Arduino.   Also, the Rds(on) of the 2N60B with 10V applied to the gate can be as high as 5 ohms. This means that the transistor behaves as if there were a 5 ohm resistor in series with the output.  If the Motor draws any kind of current at all, the votage dropped across the transistor (Drain to Source) would cause the motor to run slow (or not at all).

You can see the data sheet here: http://pdf1.alldatasheet.com/datasheet-pdf/view/54779/FAIRCHILD/2N60B.html

A better choice, in this case, if you cannot find a 2N2222, would be a 2N3904.

Wayne
Feb 14, 2010. 1:17 PMolmstw says:
The "Emitter-Base voltage = 6.0Vdc" statement may be the confusing thing here; The maximum REVERSE voltage that may be applied to the Base-Emitter junction is ~6V But the normal FORWARD drob across the base-emitter junction is approximately 0.7V...  The current into the base MUST be limited to prevent the transistor form being distroyed be excessive base current.

Since the 0.7V forward base voltage is significantly less than the 5V output of the Arduino port pin, then the current flowing into the base of the transistor would likely exceed the rated maximum of both the Arduino pin AND the rated maximum input current od the base of the transistor.

The function of the resistor is to prevent damage (caused by excessive current) to either the transistor or the Adrion. 
Feb 14, 2010. 9:11 PMeshneto says:
 Thank you for your attention ;)

I found the mentioned info in the dataheet. Still I did not understand some details, however. How do I get to the 2.2k value? Am I supposed to assume a 2mA current at the base so that r=v/i=4.3/0.002=2150? How do I get that info in the sheet?

I am right now using a photocoupler to do the job of swtching the motor, I will make an instructable soon, but I still am not sure about the resistor values.

Feb 15, 2010. 6:11 AMolmstw says:
If you are using a bipolar transistor (2n2222, 2n3904 etc), read the data sheet...

1. determine the current that the transistor must switch and divide it by the Hfe (current gain of the transistor at the desired load current per the data sheet)

2. multiply the result by 2 (safety margin)....  this is the ideal base current for your application

3. subtract 0.7V (the base-emitter drop) from the drive voltage from the Arduino pin (use the data sheet and the Minimum guaranteed Vh out.

4. divide this number by the base current you determined in 2 above.

5. this is the base resister value you need to use.

works every time ^_*

Feb 15, 2010. 8:21 AMeshneto says:
 Thanks, that's what I wanted to know: how to determine the base current. Now I know it is obtained by dividing the switched current by the transistor's Hfe.

Again thanks a lot!
Feb 3, 2010. 11:36 AMcefn says:
The code for circuit 02 is at http://tinyurl.com/dkpxbn
Feb 3, 2010. 6:01 AMStoned says:
I just bought an arduino and I would like to try doing these projects, but I have hit some trouble. I am confused when it comes to the shift registers. When you say to connect to the clock pin, do we connect to the SCK (Shift Register Clock Input) or the RCK (Storage Register Clock Input)? When you say to connect to the data pin, do you connect to the SI (Serial Data Input)? Also What do you mean when you say to connect to the latch pin?
The data sheet for the Digikey shift register I am using is in the link below.
http://www.fairchildsemi.com/ds/MM/MM74HC595.pdf

Oct 8, 2009. 7:35 AMRencio7 says:
 LEDs are around the wrong way on the left side of the diagram - I think -Im new to this stuff -I. :(  it was a bit annoying testing each part of the circuit - and matching it up to a wrong diagram..
Oct 8, 2009. 8:08 AMRencio7 says:
 *make that both sides :P yay it works !
Dec 8, 2009. 2:40 PMSplooshiba says:
 i just got my arduino and have been playing with the code, but with no luck. What is the output from this code with NO changes made what so ever. 

Where do changes need to be made to change the LEDs which light. Advice would be much appreciated, many thanks.
Dec 25, 2009. 8:56 PMpben says:
On LEDs the long lead (metal leg) is the Anode (+) and the flat side of package at the base of the dome is the cathode (-).  The diagram for CIRC-01 has that reversed. 

The Anode and Cathode names are a hold over from the old days when diodes were vacuum tubes (valves for you Europeans out there).   Good news no damage will be done if they are put in backwards on this circuit.  It will jest not light the LED but the on-board LED will still flash.
Nov 27, 2009. 9:37 PMachollowell says:
I got my Arduino starter kit from amazon.com and also a book wrote by one of the co-founders of Arduino book very helpful guide you step by step
Oct 18, 2009. 12:51 AMemadd says:
hello i need code with asm
Aug 24, 2009. 9:28 AMyene says:
I had to modify the relay because the pins were to short.
Jun 18, 2009. 5:02 PMgrundisimo says:
What is an arduino??????????????????
Jun 24, 2009. 6:40 AMGjdj3 says:
Ahem.

Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.
Jun 19, 2009. 3:19 AMdigigalos says:
¿And for GNU/Linux?
Jun 20, 2009. 9:18 AMdigigalos says:
Hi, Atuart.Mcfarlan. Thanks for the link. You don't worry about forgetting, the users of GNU / Linux are accustomed to it, this is the price we pay for our freedom.
Jun 18, 2009. 8:44 AMnatantus says:
Great Instructable! Very thorough and readable. I especially like the exploded 3D models of the circuits. Keep up the good work!
1-40 of 51next »

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
381
Followers
14
Author:oomlout