Arduino with ATmega328 - Upgrading

Introduction

The ATmega328 double the RAM, flash (sketch storage), and EEPROM (user editable storage) of the Arduino from the common ATmega168. If you're Arduino or Freeduino contains a removable DIP processor, you can just pop out the old chip and pop in a new bigger better chip!

Upgradable Not-upgradable
arduino-dip.jpg arduino-tqfp.jpg
Diecimila, NG, Duemilanove, Single-Sided Serial, iDuino, MaxSerial, RBBB, BareBonesBoard, Boarduino, etc. Mini, Pro, Pro Mini, Bluetooth, Nano, StickDuino, Seeduino, Lilypad, etc.

Get an upgrade ATmega328

Most resellers of Arduino related hardware sell upgrade chips. All you need to do is pop out the old ATmega168 or ATmega8 and pop in the new ATmega328.

In particular, we carry ATmega328 upgrade chips over in the Fundamental Logic store.

Arduino ATmega328 Upgrade

If you're buying an ATmega328 as an upgrade for your Arduino, make sure it includes the Arduino bootloader. In particular, this means you can't just buy an ATmega328 from Mouser or Digikey. (The bootloader helps you download your sketches to the Arduino.)

Replace the ATmega chip

Remove the current ATmega168 or ATmega8 IC

Using a small flat-bladed screwdriver, insert the screwdriver between the chip and the socket (like the first picture), then gently pry upwards and wiggle the chip until it's free. You can also use a chip-puller for this task, but it's not needed. Set this chip aside for future projects or emergencies.

Prepare the new ATmega328

As they come from the factory, DIP chips have a slight outward bend to their pins; this makes it easier for automated equipment to handle and solder the chips, it also makes you perform an extra step! Grasp the chips by it's sides (careful not to bend the pins outward) and bend the leads against a table, until they're about 90° to the chip body, like the first photo shows. Look at the old chip for an idea. You could also use a pin straightener like the second photo.

Install the new ATmega328

Take your freshly prepared ATmega328 and your now vacant board. Find the notch in the board's socket (on the right hand side of the board) and the notch in the ATmega328 and line them up, these marks help make sure the chip goes in right way 'round. Then, using equal pressure on both sides, press the chip firmly into the socket.

Download and use the Arduino IDE

Follow along with the using the ATmega328 page, or, in brief, open the latest copy of the Arduino IDE and select 'with ATmega328' from the board menu.

Optional: Use the ATmega168 for something

Your ATmega168 is still a perfectly good, if slightly smaller, micro-controller, and it already has the Arduino bootloader on it! Why not put it to use?