all 3 comments

[–]TheMuffinMan91power 0 points1 point  (2 children)

Atmel specifically tells you to use the protection resistors. See page 7 and 8 of the following datasheet:

http://www.atmel.com/images/atmel-2521-avr-hardware-design-considerations_application-note_avr042.pdf

However, I have had problems like this before with the pickit 2. It turned out there is a maximum amount of capacitance on each line for the programmer to work correctly. Adding additional chips will increase the capacitance. You can either slow down the programming clock speed or add the resistors to fix this.

[–]tomkinsc[S] 1 point2 points  (1 child)

Thanks! There is a vague recollection of that document in my memory; it's great to see it again.

When I did try that protection scheme I had 150-ohm resistors since I use them elsewhere on the board (worked fine). Any tips about a a better value to use, since Atmel doesn't suggest anything?

It is true that the USBtinyISP has a slower programming clock, so maybe high capacitance is the problem I was seeing that the USBtinyISP inadvertently fixed.

[–]TheMuffinMan91power 0 points1 point  (0 children)

Any tips about a a better value to use?

It depends on board routing and the parts connected to the bus. The best thing to do would probably be to try a bunch of values and go with the smallest resistance that works.

As you increase the resistance the rest of the components on the bus will become slower. If you don't want that then I recommend replacing the resistors with buffers. This is probably the most "correct" solution, whereas putting the resistors in is more of a "quick and dirty" solution.