2

I have an Arduino Uno and I am using arduino 1.0.5 IDE. I followed he procedures for bootloading an atmega328P-PU on a breadboard.

I uploaded the ArduinoISP sketch first, made the connections(using the External Oscillator) and then wired it up. Then, I selected the programmer as Arduino as ISP, selected the board as Arduino duemilanove w/ Atmega328P. Then I selected the correct serial port and clicked Burn Bootloader. I got the following errors:

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

How to solve this issue? Also, can I upload the bootloader directly by using it on the Uno in place of the original chip. If so, how?

SiKing
  • 10,003
  • 10
  • 39
  • 90
  • This question is probably more suited for [Arduino StackExchange](http://arduino.stackexchange.com/) - it could potentially be a hardware problem – Levi Sep 27 '15 at 07:18

5 Answers5

1

to my understanding the error you have indicates a bad reading from the chip. I experienced that with chips that were either dead or not properly connected, especially to power supply.

You may find more detailed information in th tutorial : https://www.arduino.cc/en/Tutorial/ArduinoISP

Especially those things :

  • 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);".
  • Select the items in the Tools > Board and Serial Port menus that correspond to the board you are using as the programmer (not the board being programmed).
jbheren
  • 516
  • 3
  • 11
1

Instead of arduino built-in boot loader just go through below link and it will be great for uploading boot loader and verifying board status info

I am replying you this because same issue I got long back and it saved me.

One more thing for arduino boot loader: for atmega328 you need to put capacitor between reset and gnd( in case you missed)

For gammon bootloader you don't need it.


Be Innovative.

Som
  • 11
  • 1
0

For reset line you might me using 100nf(thats what stated in documentation )...but sometimes it doesn't work...try something like 4.7uf, 22uf or 47uf or close values

0

I had a similar problem and the issue was that my programmer was a bit slow, I used the -B flag for avrdude to slow down the bitrate and it started working, I set the -B20 and works like a charm every time, but I use the USBTinyISP programmer, not the stk500 one, so this might not work for you.

MarioV
  • 48
  • 1
  • 7
0

In case someone stuck at this as I did and nothing like changing the cap value helped. Make sure you are using your USB-TTL adapter in a 5v mode (obviously for a 5v powered chip). I always used it in a 3.3v mode in order not to accidentally burn my 3.3v chips and it always worked. Until today, I was trying to flash my custom atmega8 board and everything worked with the ISP but I was having a hard time using the bootloader and after half a day searching and trying different stuff the 5v setting to the rescue.

EdgarK
  • 870
  • 7
  • 10