Simple & Cheap Arduino Uno ATmega328 Programmer

10,232

192

12

Introduction: Simple & Cheap Arduino Uno ATmega328 Programmer

Here's how to build a simple & cheap Arduino Uno ATmega328 Programmer.

Hope you enjoy it...

Step 1: Parts

Step 2: Prepare the Arduino

a. Connect the Arduino to the Computer.

b. Open the Arduino application >File >Example >ArduinoISP.

c. Upload the sketch.

d. Open Tools >Programmer >Arduino as ISP.

Step 3: Build Your ATmega328 Programmer Shield

ATmega328P Pin Mapping > Arduino

1 > 10

7 > VCC

8 > GND

9 > Crystal > Capacitor1 > GND

10 > Crystal > Capacitor2 > GND

17 > 11

18 > 12

19 > 13

20 > VCC

22 > GND

Step 4: Burn the Bootloader

a. Plug your ATmega328 Programmer Shield on the Arduino (refer to photos).

b. Plug the new ATmega328P microcontroller on the Shield.

c. Open Tools >Burn bootloader.

Step 5: Load Your Sketch to the New Microcontroller

a. Load your sketch for the microcontroller.

b. Open Sketch >Upload using programmer.

That’s it!

1 Person Made This Project!

Recommendations

  • Remote Control Contest

    Remote Control Contest
  • Eggs Challenge

    Eggs Challenge
  • Build a Tool Contest

    Build a Tool Contest

12 Comments

0
EkDor
EkDor

Question 11 months ago on Step 3

It looks like in your last photo the pins are in the wrong sockets. Is this correct.

0
RomeroDIY
RomeroDIY

Answer 11 months ago

It works for me. The photo must be deceiving. If you follow the pin mapping it should work for you too.

0
entge001
entge001

3 years ago

Hi,

does this works for an "used" ATmega? I locked myself out by using the RX line in my sketch :-(. Looking for a way to kill the sketch or re-program from scratch.

Thanks.

0
RomeroDIY
RomeroDIY

Reply 11 months ago

Sorry I’m seeing this only now. It’ll work fine with used ATmegas. Step 4 sort of “formats it”.

0
pdavid5
pdavid5

5 years ago

Why you need crystal if you program with SPI?

I use TL866A for programming Atmega with ICSP, but here don't need crystal.

0
RomeroDIY
RomeroDIY

Reply 11 months ago

I work on a trial and error method. I lack technical knowledge to reply. I’m sure you’re right and this can be improved. It works as it is now and to my understanding the crystal “times” the flow of electricity passing through the circuit. That’s all I know.

0
bratan
bratan

5 years ago

As an improvement get a ZIF socket instead. Much easier to insert and remove IC without bending any legs...

0
petetheweet
petetheweet

Reply 5 years ago

I found the flat pins of the ZIF socket permanently damaged my Arduino. You can get a ZIF with round pins here: https://www.etsy.com/uk/listing/279700092/quick-zif-socket-round-pins-for-atmega

0
DIY Hacks and How Tos

Nice. This would be great for creating smaller ATmega circuits.

0
KISELIN
KISELIN

Reply 6 years ago

THIS IS "EXACTLY" what I have been looking for. Until now I have used a ST62xx microcontroller, writing "dozens" of progs. in Assambler to that. "Me, 60+ years to age" having a "new coming" in pros. world with Arduino. Can you imagine how hard it has been to find out how to prog. a "clear" ATmega? Now I got it. It kind of a "snapped" in my head after reading Your instruct. Thank YOU. I propably make an Instructable of creating a PCB on this, (propably there allready exist somewhere a one like it, but I haven't found 1 yet)

0
RomeroDIY
RomeroDIY

Reply 5 years ago

This is probably the most rewarding comment an instructabler can hope for. Thanks a lot!
Check this out for a "pro" version and the PCB design.

0
Dave P
Dave P

Reply 6 years ago

Well I am 62 and I to am looking for answers to building a robot from a Jazzy mobility chair. Tell me at our age how did you find the key to unlock that vault. I would really like to know :-)