Easy programming for breadboard Arduinos
If you’ve never made a breadboard Arduino, you really ought to try it (I have a quick tutorial)—you’ll suddenly discover that you rarely need an actual (and expensive) Arduino anymore. The Arduino is built around the Atmel ATmega microprocessor, which you can buy from various places for roughly only $4-5!
However, there are a few things about it that aren’t obvious at first, such as how to connect it to your computer via USB and make it programmable.
First off, be sure that your ATmega chip has the Arduino bootloader on it. If you bought it from a major supplier such as Mouser or Digi-Key, it does not have the bootloader. Sparkfun (among others) sells them with bootloaders.
Second, you’ll need an FTDI USB breakout board. This connects to the TX and RX serial pins on the microprocessor and supplies a USB interface and firmware that your computer can recognize and use. You’ll need the FTDI drivers for your system, which come with the Arduino software.
Third: the real work. You need to connect some pins from the USB board to your breadboard:
- Optional: 5V (if your breakout board supplies it)
As you can see in the photo, I soldered up a handy little header so I can plug it right into a breadboard. The serial pins are connected like so: TX→RX, RX→TX. DTR is connected to a .1µF capacitor that goes to the RESET pin on the ATmega (pin 1). That pin must also be connected to +5V via a 10kΩ resistor.
The DTR pin is the secret sauce: it pulls the reset pin down, which the Arduino bootloader requires to be programmed. If you didn’t have this, you’d have to reset it by hand. This way, it’s completely automatic, just like a regular Arduino board.
Let me know if this works for you! Enjoy!