I’ve read through a lot of tutorials online to make an Arduino Clone on a breadboard, and some of them are great, but none of them really seem to have it all, so I’m going to attempt to bring it all together here and provide a tutorial with schematics, breadboard photos, Bill of Materials, and descriptions of all the materials.
I’m going to provide the schematic for the system I am building here along with breadboard photos as it is constructed. You can also refer to the Standalone Arduino Tutorial on their website for breadboard photos and more explanations. (http://arduino.cc/en/Main/Standalone)
Before you attempt to make your own, buy one. Its much easier to troubleshoot this when you know how it works and whats going on. If you buy one or even just borrow one and have a chance to play with it, load some programs, test it all out, it will be a lot easier to troubleshoot what is wrong when you start building it.
Step 1: What’s Needed
The following is a list of all materials needed for this tutorial. The next step will go into more depth of each component, what’s necessary, and what can be changed.
***NOTE*** : BOM stands for Bill Of Materials. This is simply a detailed list of each item that is needed, the quantity, price, etc to catalog all the necessary information.
Components (included in BOM):
1. 1 x LM1117T-3.3/NOPB Voltage Regulator (3.3V)
2. 1 x LM7805CT Voltage Regulator (5V)
3. 1 x LED RED
4. 1 x LED GREEN
5. 2 x 220 Ohm resistor
6. 1 x 10k Ohm resistor
7. 4 x 10 uF capacitor
8. 2 x 22 pF capacitor
9. 1 x 16 MHz clock crystal
10. 1 x Atmel ATmega328P-PU AVR microcontroller WITH ARDUINO BOOTLOADER
11. 1 x 28 Contact DIP Socket
12. 1 x 9 Volt Battery Connector
13. 1 x 9 Volt Battery
Also needed (not included in BOM):
14. 22 AWG wire
15. 5 Pin Header
16. 1 x small momentary normally open (“off”) button
17. 1 x FTDI FT232 USB Breakout board
18. Breadboard (prototyping board)
Step 2: The Components
This component is a voltage regulator that converts 5 Volts into 3.3 Volts. This voltage regulator is not required. I’m placing it into my system for components that may require 3.3 Volts power later down the road. You can choose if you need it or not based on your requirements. If you are not using this you can also remove two of the 10 uF capacitors from the BOM.LM7805CT Voltage Regulator (5V)
This component is a voltage regulator that will convert 10 Volts (or out 9 Volt power) to 5 Volts. This will power any components that require 5 Volts power along with our entire board. This Regulator is necessary for this tutorial. The CT on the product id is not important, just that it is an LM7805 Voltage Regulator.
This will be an indication LED for power. You can choose any standard LED you would like, aim to have the forward operating voltage around 2.2 Volts, but it will really work as long as it is under 5 Volts.
This will be another indication LED. You can choose any standard LED you would like, aim to have the forward operating voltage around 2.2 Volts, but it will really work as long as it is under 5 Volts.
220 Ohm resistor
These will be used to limit the current to the LED’s. Not much to explain. Just get ¼ Watt 220 Ohm Resistors.
10k Ohm resistor
This resistor will be used for the reset button. Not much to explain here either. Just get a ¼ Watt 10 kOhm Resistor
10 uF capacitor
These capacitors are going to be used in the power section of our board. They are used to condition the input and output power to each of the Voltage Regulators. The system would probably still work without them, but it is highly recommended you used them. Just need any 10 uF electrolytic capacitor that is rated for 10 Volts or higher. If you are NOT using the 3.3 Voltage Regulator you only need to purchase 2 of these. (2 for each Voltage Regulator)
22 pF capacitor
These are used for the timing system. They are required for it to operate correctly. You should get two ceramic 22 pF capacitors.
16 MHz clock crystal
This is the main component to the timing system. It is required for the processor to operate correctly with the Arduino programmer. You can purchase any standard 16 Mhz clock crystal with two pins.
Atmel ATmega328P-PU AVR microcontroller WITH ARDUINO BOOTLOADER
This is the main part to our system, the microcontroller. The ATmega328 is the same chip used in the Arduino UNO. In the BOM I have added the ATmega328P-PU with Arduino Bootloader Pre-loaded. This means you will be able to wire it up and program it with the Arduino software without needing any extra special equipment. If you would like, you can purchase a blank ATmega328P-PU, but you will then need to use an ISP programmer to load the Arduino Bootloader. I will cover this more later.
28 Contact DIP Socket
This is simply a holder for the ATmega328 chip. It is only really necessary if you plan on soldering the chip onto a board. If you plan to use the chip on a breadboard only where soldering will not be done, then you do not need this part.
9 Volt Battery Connector
Any type of 9 Volt battery connector will work. I have chosen a simple connector with wire leads in the BOM.
9 Volt Battery
Any 9 Volt battery will work. I chose mine based off price at the purchase time.
22 AWG wire
This was excluded from the BOM because I had some already. Any type of testing or prototyping wire should work. You can either purchase it online with your order or at a local hobby shop if you don’t have any around
5 Pin Headers
This is needed to connect the FTDI breakout board. We will be setting up our board so there will be 5 pins sticking out of the board where we can make the connection and quickly program. Any form of header pins or wires that will make the connection will work. Just pick something easy for you.
Small momentary normally open (“off”) button
This was excluded from the BOM because I had a bunch lying around. You can really choose any switch you would like as long as it is a MOMENTARY switch that is NORMALLY OPEN or OFF. You can see the one I chose in the photos later.
FTDI FT232 USB Breakout board
You will need an FTDI Connector to program the Arduino. I recommend just purchasing it from Sparkfun.com. They have quality equipment for not so bad prices. Search FTDI on their website and just make sure you purchase the 5 Volt version.
Breadboard (prototyping board)
Any standard breakout board or prototyping board you would like to use works. Just something for us to test and troubleshoot on.
Again, you can choose to adjust or leave out any materials you’d like, but if you don’t know exactly what you are doing, I would recommend just purchasing the exact BOM. When I made this purchase the total cost for all my parts was only $10, so it isn’t bad to just make the same purchase.
Step 3: Getting the Components
The next item is a CSV file for Newark.com. If you are happy with the list of items I chose, you can go to Newark.com and simply upload the CSV file to instantly have all the parts added to your cart.Remember you can make any adjustments to the components you would like, but for reference, these are the components I am using in my tutorial.You can also purchase the parts from any manufacturer you’d like. I like using Newark Element 14, and I was able to find all the components I needed on their site, but feel free to put together your own cart with any other manufacturer. The items marked as 0 in the quantity column are items that you need but I already had, so I didn’t purchase it.
Also keep in mind the prices of the parts make change over time. You can see in the Notes section which parts were on sale when I purchased them. The prices should stay relatively the same, but don’t be alarmed if my prices on the BOM are different than the ones you are finding.
Step 4: Schematic
This schematic contains all of the parts listed above. Some of them are abbreviated or symbolized differently, just look at the values and names on them to determine which part is which. If you are using a breadboard you can use this schematic as reference for each pin connection.
I would recommend opening the image in another tab of your browser so you can refer to it easily
also, i have attached a pin mapping illustration for both the Atmega328 pins and their corresponding Arduino pins. Be careful while wiring to which pins are being referred to. Most of the time I will be referring to the Atmega328 Pin numbers.
For more detail: Build your own Arduino – Bare Bone System