Wednesday, January 23, 2013

Programming an Arduino standalone ATmega

At first I programmed my ATmega328 chips by pulling them from my circuit and placing them in one of my original Arduino boards. Something that is fun once or twice but gets really annyoing when you do it alot. So working from this tutorial I added some female headers to the circuit, dug out my trusty old SparkFun FT232RL breakout board, a 0.1uF capacitor and some jumper cables.


New female headers added to the RST, RX, TX, +V and GND pins.
The circular thing in the upper left corner is a RF Transmitter module. 


The Sparkfun FT232RL break out board. 

I usually placed the FT232RL break out board on a breadboard hooked up jumper cables to the corresponding pins of the ATmega. Recently I built a quick n' dirty jig with headers to hold the break out board and permanently soldered jumper cables.

You can see more pictures and read about the build here
This saves me the use of a breadboard and the tedious task of having to flip the FT232RL over numerous times to check and double check the connections.

Issues: 

avrdude: stk500_getsync(): not in sync: resp=0x1e

In Arduino IDE I used the board "Duemilanove w/ ATmega328" but kept getting the above error message. At this point I hadn't added the 0.1uF capacitor in series with the DTR pin on the FT232RL to the Reset pin on the ATmega328 so when I googled the error code and found this post it was the first thing I added. But things still wouldn't work. Until I changed my board to "Arduino Uno". After that everything worked like a charm.