• Featured User: kurt


    Open-source hardware project hosting is my passion. I spend most of my free time building neat gadgets or planning what I'll build next. I love building things, and I want to make Open Hardware Hub a place that inspires others to build, ...

    Learn More

  • Updates 2013 February 18

    It's been a while, hasn't it? Well, that's ok because we've got a lot of updates to talk about. Most of these have been effective on the site fora couple weeks now. A few may or may not be active when this article gets posted, but they'll certainly be applied in the ...

    Find Out More

Arduino Hardware Reset Circuit Breadboard

Download this project


By: kurt

This circuit uses one pin to let you reset your Arduino in code. It pulls reset low for a couple milliseconds to ensure the Arduino has enough time to complete its reset cycle.

Download project description w/o images
Download project description w/ images


Download all project files

Bill of Materials

Qty Part # Description Schematic ID Source
1 C14ff4b26e5b0d93cd1a4d9208acb56b9634d2bf NE555P TIMER SINGLE PRECISION,DIP8 ,0.5MHZ IC1 Source
1 8d17dc6357d99d17730430c3718a0a959d650925 CF14JT100R 1/4w 100 ohms 5% Carbon Film Resistors R4 Source
1 6ff6f1f238f6d58bf3404a4f2e252ec33d9a96cc CF14JT1K00 1/4w 1K ohms 5% Carbon Film Resistors R3 Source
1 D9a682fef3ecbdda1662c8ac0511fc8fe76d9200 CF14JT10K0 1/4w 10K ohms 5% Carbon Film Resistors R2 Source
1 4868eeaa367d124a5137abfd3185be624e37bef6 CF14JT100K AXIAL CARBON FILM RES 1/4W 100K OHMS 5% LF R1 Source
1 D1ab4aa047eff1b9c25b19a978b5f76604582418 EEA-GA1HR10 CAP ALUM 0.1UF 50V 20% RADIAL C1 Source
1 679f7dae6acf00a1d38d970c8e80263aa7d6d8d4 SR215C103KAR CAPACITOR, 0.01UF, 50V C2 Source
1 5456f27d24da35477b2d27b2da40d3216ffa1904 2N3904BU TRANSISTOR, NPN 200MA TO-92 Q1 Source
loading total from bomfire.com...

Download BOM w/o images
Download BOM w/ images


6. Insert timing capacitor C1

Connect the 0.1uF capacitor between pin 6 of the IC and the ground rail. This capacitor determines how long the reset line is held low after the reset signal is received from the Arduino. Higher capacitor values make the output reset signal stay low longer.

Img_0336 Img_0337

7. Short pin 6 to pin 7 on the 555 timer

Connect pin 6 of the IC to pin 7. I used a small jumper wire for this.

Img_0339 Img_0338

8. Insert timing resistor R1

Put a 100k resistor between pin 7 of the IC and the +5V rail. Note that the board is rotated 180 degrees in this picture. This resistor determines how long the output reset pulse is (along with capacitor C1). Higher values of R1 make the output pulse longer.

Img_0340 Img_0342

9. Insert input pull-up resistor

Put a 10k resistor between pin 2 of the IC and the +5V rail. This resistor is used to pull up the input to the IC so that the RESET pin is normally held high even when there is no input to the reset circuit. This avoids accidental resets.


10. Insert transistor Q1

Insert the transistor like this. I prefer to put the collector of the transistor towards the top of the breadboard so it looks like the schematic. This transistor is used to invert the output of the 555 timer so that the output is active low instead of active high. The reset pin on the Arduino expects to be pulled low to initiate a reset. (You can use almost any transistor for this as long as it is NPN.)


Download steps w/o images
Download steps w/ images

Show all steps


7 - fixed steps 3 and 4
6 - fixed an error in the description
5 - fixed the text for the third step
4 - none
3 - changed name to indicate this project is built on a breadboard
2 - updated description
1 - Initial project release
Add revision

blog comments powered by Disqus