-
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, ...
-
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 ...
Arduino Hardware Reset Circuit Breadboard
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
Files
- ArduinoReset.sch - Arduino Reset EAGLE Schematic
- ArduinoReset.brd - Arduino Reset EAGLE Board
- Arduino Reset.zip - Arduino Reset Gerber
- Arduino_Reset.pde - Arduino Reset Example Sketch
Bill of Materials
Qty | Part # | Description | Schematic ID | Source | |
---|---|---|---|---|---|
1 |
|
NE555P | TIMER SINGLE PRECISION,DIP8 ,0.5MHZ | IC1 | Source |
1 |
|
CF14JT100R | 1/4w 100 ohms 5% Carbon Film Resistors | R4 | Source |
1 |
|
CF14JT1K00 | 1/4w 1K ohms 5% Carbon Film Resistors | R3 | Source |
1 |
|
CF14JT10K0 | 1/4w 10K ohms 5% Carbon Film Resistors | R2 | Source |
1 |
|
CF14JT100K | AXIAL CARBON FILM RES 1/4W 100K OHMS 5% LF | R1 | Source |
1 |
|
EEA-GA1HR10 | CAP ALUM 0.1UF 50V 20% RADIAL | C1 | Source |
1 |
|
SR215C103KAR | CAPACITOR, 0.01UF, 50V | C2 | Source |
1 |
|
2N3904BU | TRANSISTOR, NPN 200MA TO-92 | Q1 | Source |
Download BOM w/o images
Download BOM w/ images
Steps
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.
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.
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.
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
Revisions
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
Back