How RESET-EN works?


I'm sorry if this is a really stupid question, but how does the RESET-EN work? To me, it looks like it is just shorting out another wire, which, I think, doesn't do anything. The only reason I ask is b/c I was trying to make a modified arduino PCB for a project of mine and happened to omit the RESET-EN since I thought it didn't do anything ( Shows how much I know : / ). Now I have to manual reset to upload new sketches.

Thanks for any replies : )

Pull that pin to GND and arduino resets: bootloader looks for new sketch uploads, then runs setup(), then runs loop(). Pull that pin to 5V and arduino does its regular work.

Next time you design a PCB, you can add a push button for it or route it close to the Rx, Tx pins so an FTDI cable can be used to upload sketch. The cable will use RESET pin to trigger the bootloader. See the FTDI cable or board connection on sparkfun.

Thanks for the reply. I was confused at the schematic: since it looks like the RESET-EN does nothing but short out the DTR wire next to it, but when I look at the board there is no DTR wire next to it, it just runs through the RESET-EN pads. Sorry for my confusion and thanks again.

Yeah, it's designed that way so you can cut the line if you want to disable auto-reset, but then solder it back if you want it again :).

Yea, just figured that out. In the process of trying to design my own, I get a sync error in windows and a programmer not responding error on Mac. When I just the reset trace on the actual Arduino Duemilanove that I used for testing, I get the same respective errors. When I solder the pads back together it works on the Duemilanove. Only problem is that the setup is the same on my PCB, but I still get the errors hehe. Guess I'll have to fiddle with it more. Thanks for the responses.

Just an addition: The processor does not run in a reset condition of course (though this is the situation when using an external SPI programmer). So the reset must be applied for a short time only. As a RS232 signal is used for the auto reset - generally DTR, which is a stable signal - it has to be differenciated by a capacitor ("high pass").

There are "China" USB-TTL converter available that do that already on the board, the output then marked as RESET rather than DTR. Those do not work with RS232 Arduino variants, except you remove one of the capacitors...