buring bootloader to Atmega168PA-PU with arduino uno as isp problem

I'm trying to burn bootloader to a new athmegapa-pu with arduino uno as isp!
As board i have choose: arduino diecimila or duemilanove w/ ATmega168
As programmer: Arduino as ISP

i have already upload ArduinoISP code to arduino uno(the programmer) but when i go to burn bootloader i have this error :

avrdude: stk500_program_enable(): protocol error, expect=0x14, resp=0x50
avrdude: initialization failed, rc=-1
** Double check connections and try again, or use -F to override**
** this check.**
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

my wiring shows here :

Did you disable Auto-Reset on the UNO?

What board is the target processor mounted in?

If you are using Arduino 1.0 did you make the software change mentioned in the instructions?

i'm using arduino-1.0.2 software (these changes applied to this version?and what are these?) ! no i don't disable AUTO-RESET ( how to do that?) .Just i want to burn bootloader to a new ATmega168PA-PU, what board do you mean to choose?

The page you pointed to (http://arduino.cc/en/Tutorial/ArduinoISP) lists four different ways of wiring things:

Circuit (targeting Arduino Uno, Duemilanove, or Diecimila)
Circuit (targeting Arduino NG or older)
Circuit (targeting an AVR on a breadboard)
Without crystal
With crystal

Which setup did you use?

! no i don't disable AUTO-RESET ( how to do that?)

See step 5: "Wire your Arduino board to the target as shown in the diagram below. (Note for the Arduino Uno: you'll need to add a 10 uF capacitor between reset and ground.)"

i'm using arduino-1.0.2 software (these changes applied to this version?and what are these?)

See step 2: "Note for Arduino 1.0: you need to make one small change to the ArduinoISP code. Find the line in the heartbeat() function that says "delay(40);" and change it to "delay(20);".

> Which setup did you use?

i'm using that it shows in the photo here :

**before burning bootloader to atmega168pa-pu i have already correctly burn bootloader to a new atmega328p ( with changes : the signature ) with that circuit shows in the photo.

manis13:
before burning bootloader to atmega168pa-pu i have already correctly burn bootloader to a new atmega328p \

If it worked for a 328P it should work for a 168. Perhaps the problem is in the 168. If the fuses have been set to disable Reset or disable Serial Programming then you can't use ISP to program it. You could still use High Voltage Parallel Programming to change the fuses back to factory default. Easiest way is the High Voltage Rescue Shield.

Hi I don't have problem yet, but. I have Arduino UNO with 328P-PU. I need burn bootloader into 168-20PU. I use connection from http://arduino.cc/en/Tutorial/ArduinoISP and circuit: Using an Arduino board to program an ATmega, with external crystal and associated capacitors (18 or 22 picofarads). Now my procedure:

  1. Upload ArduinoISP with or without change delay?
  2. Conect circuit + 10uF capacitor between +5V and RESET.
  3. Now Tools > Programmer > Arduino as ISP
  4. Connect USB and Tools > Burn Bootloader.

I that correct or I missing something? I don't need change Board type? I read this tutorial http://arduino.cc/en/Tutorial/ArduinoToBreadboard and it confused me.

After burning Bootloader. How can I program ATmega 168?
Thanks

edit: What if I replace ATmega368 with ATmega168 in the socket? Then simply burn bootloader. These ATmega have differences only in memory.

I succeeded.
In IDE version 1.0.1 is delay corect. Board type works Diecimilia or Duemilanove /w ATmega168.
Everything works fine.
But i don't know how to upload sketch into ATmega168.