I just purchased the ISP Shield 2.0 kit and have assembled it per the instructions on the wiki (which were misleading when it came to the LEDs and their orientation.....but that's a different discussion). I followed the instructions for burning the boot loader onto the AVR but it seems as though something is going wrong. The avr I have is Atmel ATMEGA328P-PU. Here is my setup:
Arduino 1.6.4
Board: Arduino Duemilanove or Diecimila
Processor: ATmega328
Port: COM3 (Arduino Uno)
Programmer: Arduino as ISP
.1 uf cap between RESET and GND
J5: YUP
J6: NO WAY
According to the instructions on the wiki, I should connect the shield to the uno first then connect the usb to the uno. I should then open the ArduinoISP sketch and upload it normally (Using the board setting Arduino Uno) without any AVR in the ZIF socket. When I do this, the upload hangs for a moment then I get the error:
"avrdude: stk500_recv(): programmer is not responding"
"avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x16"
and it does this for all 10 attempts.
When I remove the shield and try the upload again, it works fine. I can then upload the blink sketch and it works perfectly on the uno. I then reload the ArduinoISP sketch, disconnect the USB, install the shield, connect the usb, configure the upload settings as above, and upload the boot loader. I get a message back informing that the upload completed, but when I remove the avr and place it into the uno, I cannot upload any sketches to it (I do this to test that the boot loader was uploaded properly). It always hangs then errors out with the same error as above. I have double and triple checked my solder joints and have even tested continuity between the top of the headers on the shield with the pins on the bottom of the uno to make sure I do not have any cold solder joints. Everything appears fine. Is there something I have missed?
Comments
Thanks for the quick reply. I did as you suggested, and removed the .1 uf cap. I was able to upload the ArduinoISP sketch while the shield was plugged in. Is it possible in future iterations of the ISP shield for you to include another two pin header with a jumper to allow for the user to quickly connect and disconnect the .1 uf cap between the reset and gnd (this would even utilize that "free" .1 uf cap that is leftover from the current assembly).
I was still having a problem uploading sketches to the AVR after the boot loader was run, and on a whim started trying different things. I was curious about why the wiki suggested setting the board to the "Arduino Duemilanove or Diecimila" even though I'm using the Uno, so I changed this to just the "Arduino Uno" and that fixed it! I can now burn boot loaders and install scrips both from the Uno and from the shield. You might want to update your wiki to reflect this as there may be others out there suffering from this same problem.
Also, I did not mean to offend you guys when I referred to the "misleading" LED instructions. I was able to figure it out by using the square hole as a guide to indicate the anode lead and proved this out by following your traces. I'm just curious why your silk screen does not have the anode of the LED indicated by a "+" sign. I'm not used to manufacturers following up so quick on apparent discrepancies in their instructions.
Anyway, thanks again for the quick help. Your support rocks! I look forward to playing around with some of your other products in the future.
uF capacitor when initially writing the ArduinoISP sketch.
the plastic lenses backwards, so that the flatted side was on the wrong
side.
Also check the lead length with them.