Monthly Subscription Kit
Kit of the Month
Monthly Component Club
Some Other Title
Looking to jump right into Arduino programming? Join our NAMEGOESHERE !
Looking to jump right into Arduino programming? Join our NAMEGOESHERE !
What you’ll get: An Arduino starter kit that includes everything you’ll need to start building your own DIY microcontroller projects – motors, sensors, buzzers, LEDs, schematics and more. You’ll also get web access to members-only content: how-to videos, part tutorials, project ideas, troubleshooting guides and more. Each subsequent month you’ll receive an additional add-on kit with its own tutorials, help guide, project, and extensions.
Who it’s for: While we encourage anyone excited about learning Arduino to sign up, our projects are geared towards adults, or kids working together with an adult. No prior programming or electronics experience needed!
What’s it cost?: The starter kit is $55, with each additional kit available for $12.99 on a pay-as-you-go basis. Or, sign up for 6 months or a whole year at our discounted rate! All kits ship free within the US.
Month | Featured Part | Sample Project |
---|---|---|
1 | Arduino Starter Kit | Intro to Arduino |
2 | IR Obstacle Sensor | Proximity Alert |
3 | Sound Sensor | LED Clapper |
4 | Audio Module | Arduino Keyboard |
5 | Gearmotor | Line-Following Robot |
6 | LCD w/ I2C Board | Random Tone Generator |
7 | Piezo Element | High Five Machine |
8 | Servo Motor | Pinball Machine |
9 | Light Sensor | UFO Synthesizer |
10 | Ultrasonic Sensor | Virtual Ruler |
11 | Shift Register | Countdown Alarm |
12 | Accelerometer | Motion-Controlled Motors |
Kit Details
Arduino Starter Kit comes with:
Arduino UNO Board
USB Cable
Beginning Circuit Guide
Breadboard
AAA Battery Holder x 2
Jumper Wires
DC Motor
Potentiometers
Fixed Resistors
Capacitors
Transistors
Diodes
Switches
Tilt Sensor
LEDs
Piezo Buzzer
plus Web Portal login for access to:
How-to videos
Part Tutorials
Demo Arduino Sketches
Troubleshooting Help
New projects every month
Uploading to Arduino
First make sure your board is plugged into USB with the power lights on. If the power lights are off, check your circuit for shorts to the Arduino and inspect your USB cable.
If your Arduino is powered up, go to Tools > Port in the IDE and select the port your board is connected to. It may take a few tries to find the correct one depending on your board and computer. If no port is available, unplug your USB cable from the computer for a few seconds, then plug it back in.
Using the Serial Monitor
The Arduino IDE’s Serial Monitor is a very handy debugging tool when code doesn’t run as you expect it to or when you simply want a clearer picture of what’s happening in a sketch. It allows you to monitor the states of input and output pins, variable values, sensor readings, and other numbers in your sketch. You can also use it to print instructions and other text to the computer screen. Give it a try by opening the AnalogReadSerial sketch under File>Examples>Basics, and then open the Serial Monitor under Tools>Serial Monitor or by clicking the magnifying glass in the IDE window.
When leaving your Arduino hooked up to USB isn’t feasible, you can use indicator LEDs in your sketch or another display such as an LCD.
Battery Pack
Once you’ve determined that the pack is switched ON, inspect the leads. Are there any loose connections, short circuits or broken wires?
If no, open the pack up and inspect the solder points on the switch and battery contacts. Repair any broken connections if necessary. If you don’t have access to a soldering iron, you can bypass the switch entirely by twisting/crimping wires onto the battery contacts.
If the soldered connection look good, make sure your batteries are fully seated in the battery pack and pushed all the way up against the positive (no spring) contacts. Sometimes after a short circuit heats up and softens the springs they won’t push enough against the batteries. If this happens, you can use pliers to carefully stretch the springs out.
Nothing Works!
Checklist, in order:
Is the Arduino is powered?
Is the correct code uploaded?
Is the battery pack or other power supply working?
Is the circuit built correctly?
If YES to all the above:
Rebuild the circuit from scratch, swapping out any wires, LEDs etc. that may be broken and looking out for potential shorts.
Double check that components like resistors and capactitors are the right measurement for your project – a 10K resistor looks almost identical to a 1K!
Details
Toggle Content goes here
Project Help
Toggle Content goes here
More Ideas
Datasheet
starter kit details – list of parts, projects, etc.
starter kit help
how to wire a battery pack
how to upload to the arduino
Details
This type of infrared sensor is most often used for close range (up to 30cm) object detection. An LED at the front of the sensor emits an infrared light. If the sensor detects IR light bouncing off of an object in the LED’s path (or coming in from an external source) it switches its output from HIGH to LOW.
Black objects tend to be difficult for this sensor to detect, as they absorb most or all of the infrared light. A black piece of paper or fabric makes a good shield against unwanted sources of infrared, such as sunlight from an open window. This behavior can also be put to use to make a line-following robot – more on that later.
The blue potentiometer on the sensor can be turned with a screwdriver to adjust the sensitivity. Some amount of fine-tuning may be required as ambient lighting around the sensor changes. This is especially true in outdoor applications.
Project Help
IR Sensor is unresponsive
Try adjusting sensor threshold with the potentiometer. Make sure both diodes are parallel and pointing forward. Identify other sources of IR light (e.g. sunlight, TV remotes)
Motor stops running or won’t start
Make sure your batteries are freshly charged – motor draws the most power on start and stall. Check that your motor leads are securely connected with no dangling ends. If both leads touch the metal casing it can short out your motor. Check transistor orientation in the breadboard.
LED won’t light up
Check LED orientation – long leg goes towards positive. If you suspect LED may be burnt out, replace the LED. Make sure to include a 220 Ω resistor in series with the LED.
Nothing is working!
Take apart and rebuild the circuit. Also look at the General Troubleshooting section above
When in doubt, double check the circuit diagram!
More Ideas
Some additional project ideas:
TV Remote Control
Couch potatoes rejoice! You can use an infrared remote from home to activate your Arduino project – simply point at the sensor and hold a button down to make your project run OR modify your code to switch it ON/OFF at the press of a button.
Auto Nightlight
Turn that pesky daylight to your advantage! Make an automatic LED nightlight that turns on when it detects the sun going down.
Coding Exercise: Timing Without Delays
Delays, especially big ones, can slow the response time of your sensors. Write a sketch that blinks one LED on and off at a constant speed while controlling a second LED with an IR sensor. Use millis() instead of delay() to keep track of time. For a good example, look at BlinkWithoutDelay under File > Examples > Digital in the Arduino IDE.
Datasheet
Details
This easy-to-use sound sensor has an attached microphone and switches its output from HIGH to LOW when a certain threshold of sound is reached. Turning the blue trimming potentiometer adjusts the level of sound necessary to trigger a sensor response. The FC-04 can also be used as a simple breath or wind sensor by blowing into the microphone.
Note that this is a digital sensor with HIGH-LOW logic and does not distinguish between specific sounds and frequencies. However, it is still possible in some instances to read in-between voltages from it with Arduino’s analogRead() function. This is because the sensor’s reaction time to incoming sound is faster than its output, i.e. if a sound is fluctuating very quickly above and below the noise threshold the sensor may still be in the process of pulling its output high when it switches it back to low again.
To see this in action, hook your sensor up to A0 and run the example AnalogReadSerial to determine what your sensor values at high and low are (they may not be exactly 1023 and 0). Then, modify the sketch to print only readings that fall in between your two extremes, with a small margin on either side. Make sure to comment out the delay!
Project Help
Sound sensor won’t respond to anything
Troubleshooting for this one is similar to the IR sensor. If the sensor is is powered (at least one light on), try adjusting the sensor threshold with the potentiometer. If it’s not powered, check your circuit for shorts or broken connections.
RGB LEDs won’t light up
Check your circuit for Off-By-One wires, possible shorts (are any LED legs touching each other?), and wrong-value resistors. If these all look to be correct, test out your LEDs. RGBs come in common positive (with three negative legs) and common negative (three positive) varieties. The longest leg of the LED is always the common leg, so with a bit of experimenting you can determine what type you have. The project diagram shows a common negative leg going to GND. If that doesn’t work for your LED, test for a common positive by connecting it to 5V instead.
When in doubt, double check the circuit diagram!
More Ideas
Clapper 2.0
Modify your sketch to make your lights turn off and on by clapping. There are multiple ways to accomplish this, but you’ll probably want to add in a new variable to determine whether the next clap should be an off or on.
Electric Candle
Experiment with using the FC-04 as a wind sensor. Write a sketch to make some LEDs go out when you blow on them. Bonus points for making it flicker with analogWrite().
Awesome Light Show
Use the sound sensor and your coding chops to sync up a light show to your favorite piece of music – something with good variation in volume and pacing works best. Then try the same sketch out with your least favorite piece of music. Then try talking to your Arduino, or placing it by a noisy air conditioning unit.
Datasheet
Details
These are really two components that come packaged together in one anti-static bag.
First, the ISD1820 is an audio recording and playback module that can store a single sample up to (roughly) 10 seconds in length. It has male pins for connecting to a microcontroller or breadboard, but it can also be used right out of the bag by connecting a power supply to VCC (+) and GND (-) and using the onboard buttons.
P-L: Play Level-activated. Plays through the recorded sample starting from the beginning for as long as the pin/button is held HIGH.
P-E: Play Edge-activated. Plays through the entire recorded sample from start to finish when the pin/button is brought HIGH.
REC: Record. Erases the previous sample and records a new one for as long as the pin/button is held HIGH or until the module runs out of memory.
FT: Feed Through mode. Passes input from the microphone directly to the connected speaker while the pin is HIGH. Does not affect the recorded sample.
Second is the speaker that comes included along with the audio module. This speaker is small enough that it doesn’t require any extra hardware to interface with the Arduino; you can hook it up directly to a digital pin and ground. Bringing the digital pin to HIGH will make the speaker push out, and by sending a series of HIGH and LOW pulses you can create different frequencies. Arduino has a handy tone() function that allows you to do this in a single line of code by specifying a pin (connected to the speaker) and a frequency in Hz.
Digital volume control with the Arduino can be surprisingly difficult (as opposed to fading a light or slowing a motor, which are easily doable with analogWrite() ) because the default rate of PWM – approximately 490-980 Hz on most boards – is within the audible range of human hearing. There are various libraries available online that work around this by stepping up the frequency of the Arduino’s PWM signal, but the easiest method is often through hardware. A potentiometer wired as a voltage divider between your digital signal and ground, with the middle leg connected to your speaker’s positive side, makes a good volume control knob.
Increasing Speaker Volume
A cyclindrical enclosure around the back of your speaker will help to block outside vibrations from coming in. This will improve your sound quality and volume (up to a point) without switching to bigger speakers or higher voltage. A short piece of paper towel tube backed with stiff cardboard makes a good enclosure.
Project Help
Speaker is much quieter when playing ISD1820 sample than Arduino notes, or vice-versa
Make sure to include a 1000 uF electrolytic capacitor between your speaker and ground. It looks like a black soda can in the circuit diagram and has a stripe on the negative side. Make sure not to include a tilt switch instead, which comes in a similar-looking package but rattles when you shake it.
How do I wire up these buttons?
Somewhat counterintuitively, the switching connection in a 4-legged momentary button is between the two legs that are right next to each other. Each of these legs is permanently connected to its opposite on the other side (geometry-wise) of the switch. So in the project circuit, the digital input pin is always connected to a 10K Ω pulldown resistor, and only connected to 5V while the button is pressed.
One of the buttons isn’t working
Inspect the button to see if one of the legs broke off or buckled instead of plugging fully into the breadboard. Replace the offending part if necessary.
When in doubt, double check the circuit diagram!
More Ideas
More Buttons!
The basic keyboard plays only three notes. Try adding more buttons into your circuit and code to expand your musical possibilities.
Proximity Alert
Experiment with programmatic control of your ISD1820. With an IR sensor, can you make a warning message that plays when you are about to bump into something?
Low-level Speaker Control
It’s sometimes useful to control a speaker directly, by sending a series of HIGH and LOW pulses from an output pin, rather than using Arduino’s tone() function. To give this a try, connect your speaker from pin 13 to GND. Open the Blink example (located under File>Examples>Blink in the IDE) and change both delays to delayMicroseconds(). Create different frequencies by changing the length of your delays.
Datasheet
Details
Toggle Content goes here
Project Help
Toggle Content goes here
More Ideas
Datasheet
Details
Toggle Content goes here
Project Help
Toggle Content goes here
More Ideas
Datasheet