Do I need protection for the esp's 3.3v gpio pin that is connected to the arduino's 5v reset pin?
My question: Why do you need to reset the Arduino ?
What measures would you recommend?
Use a transistor.Output of your 3V3 device to a 1K resistor, other end of the resistor to the transistor's base.Emitter to ground, collector to reset line.
a DIO only needs about 1V to read as a logic high on the 328p.
Input needs to be 0.6 x Vcc to be read as a high with Vcc >=2.4V1.98V with Vcc = 3.3V3V with Vcc = 5V.0.9V for the Reset pin, which is different than the regular IO pins.
I happened to have a nps2222a lying around and did exactly as you suggested, worked like a charm. Thank you.However, afterwards I described our solution here on another board and someone much more knowledgeable than me says it's not necessary: "There's no risk connecting a 3.3V output to a 5V input pin. The reset pull-up is about 50 kΩ, which will generate a weak 30 µA current through the ESD protection diodes of a logic chip running at 3.3V."What are your thoughts?
My thoughts are that while he might be more knowledgeable that you he is still not very knowledgeable.While you can wire a 3V3 output to a 5V input in this case he is wrong about the pull up resistor. On the Uno this pull up resistor is in fact 10K. This means you are feeding 5V through a 10K resistor into your 3V3 device at a rate of 170uA which is over 5 times what your "knowledgeable friend" said.This is not a good idea at all, using a ESD diode as over voltage protection is some what of a hack and is not to be recommended. Especially when you consider that these devices are not designed for the abuse that the Arduino chip is. This is due to the smaller chip geometry. I think you should get more knowledgeable friends.
There are two ways to do this.The right way or the iffy way.If it was me, I would use the transistor method as wisely stated.But, it's your decision after all.
Ouch, I see why they call you Grumpy Mike.