Attiny85 RESET Pin Connection During Programming

Hello Everyone,

I am designing a standalone board with Attiny85. I have to program it via Arduino UNO.

I have made one and interestingly programmed by leaving RESET pin connected to VDD instead of connecting to Arduino and it worked right away.

Could someone explain what is the point of connecting RESET pin to Pin10 of Arduino during programming?

And why we connect anyway if it is possible to program by leaving it connected to just VDD?

is it not obvious? if you anyway connect it to something then why not to ISP connector? or you built in a switch or button for no cost?

Amazed it let you program it with the reset pin pulled high so hard (direct to the 5V rail) like that. Are you sure it was directly connected?

An AVR chip's ICSP program loading procedure is utterly dependent on the chip having the reset pin pulsed in a certain way to get it ready to accept a program about to be loaded in to it.

Usually one puts a pullup of the right sort of size (I had a thread about what this size is, 10K to 1K is definitely an ok range) from Reset to the 5V power rail, then wires the Reset pin directly to a free header pin which can be wired to the toggling pin of a programmer or to a reseting button (shorts to Gnd when pressed) or a resetting input wire to reset the ATTINY during operation if ever necessary.

An AVR will happily run a program with Reset at 5V, but to program it you need Reset to be connected to an outputting pin on your programmer (pin 10 on an uno in the case of using an uno as an ISP using the ArduinoAsISP sketch) which will pull it low at the right times in the right pattern to put the AVR in a state to accept a program being loaded on to it.

2 Likes

There is nothing in your post to convince me that you were able to program the MCU using this connection.

Thank you for your help!

It seems that when it programs Attiny85 without complaining I just rushed into seeking an answer.
But now I noticed that the code is not working properly but it works partially by the way :smiley:.

After you highlighted that it must somehow be driven by pin10 of Arduino UNO for the special pulse configuration for programming, I connected it manually (I am using UNO to program) and the code is now functioning properly.

That was my bad. Sorry for that...

Thank you for your help again!

Your topic has been moved to a more suitable location on the forum. Please see the sticky topics in Uncategorized - Arduino Forum why you should not post in "Uncategorized".

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.