upgrading to the 168?

I have the USB Arduino (not sure what version, but fairly new) and I am wondering if upgrading the Atmega8 is a possibility…to the atmega168 possibly? I understand the software differences and that I’d have to load the bootloader and such, but are the pins the same on the 168?

Arduino is designed to be upgradeable

the atmega 8 and yhe 168 share the same pinout so you just hav to get a processor and swap it.
you can buy one already pre-programmed or proram it yourslf, the instructions have been discussed multiple times on the forum.


Dear Massimo,
In fact I am facing the same problem. When I download the “Blinking LED” code, the message showed “Programmer is not responding. RESET the board right before exporting”. I did reset the board. But it still didn’t work. Thanks in advance.



Have you already put the bootloader on the 168? If not I suggest following the instructions here:
It worked just fine for me.

Maybe this is no longer the right place to ask about this…maybe I should ask amtel, but I am finding these seemingly different versions of the Atmega168 (listed one per line):

Jameco#: 764713 ATMEGA168-20MU
Jameco#: 847076 ATMEGA168-20AU
Jameco#: 764730 ATMEGA168V-10AI
Spark Fun SKU#: Proc-AM168 (picture shows) ATMEGA168-20PU

I think mouser.com lists all of these too. Is there a difference?

I am looking to do some heavy lifting with a 3d led array and am seeking to get some decent refresh rates as well as provide a decent code base library for others to program the array with…possibly some homogeneous matrix coordinate processing type stuff. The Atmega8 doesn’t seem like it will have enough program memory, the 168 doubles that and gives a 20%(i think) boost to speed – are either of these going to be haughty enough for my high hopes?

Is there a difference?


the datasheet will usually list the differences between the “suffix versions”. Usually the last letters in the part number are related to a number of possible things:

  • speed
  • temperature range
  • ROHS or non ROHS?
  • package.

For example: military parts have a specific letter to denote a wide temperature range, while ROHS parts bound for Europe have another suffix.

If you search a part in Digikey’s catalogue, you can elimate part numbers and package styles, so the number for the right part is more immediately obvious.

Here are the ones you cited:

ATMEGA168-20MU == 20MHZ speed, packaged in 32 pin MLF (tiny surface mount)
ATMEGA168-20AU == 20MHZ speed, packages in 28 pin DIP
ATMEGA168V-10AI == 10 MHZ speed, packaged in 32 pin TQFP (tiny surface mount)

Hope this helps