1

I have a bricked Arduino Uno and I want to try to flash the bootloader. I'm trying to figure out how to do it. On this tutorial from SparkFun you can see this diagram:

Spark Fun layout

They also show this table of the pinout

SparkFun Pinout

That seems simple enough but it's totally different than the official tutorial, "Circuit (targeting Arduino Uno, Duemilanove, or Diecimila)"

Schematic between two Arduinos

Which also says

An Arduino board serving as an ISP to program the ATmega on another Arduino board. On the Arduino Uno, you'll need to connect a 10 uF capacitor between reset and ground (after uploading the ArduinoISP sketch). Note that you need access to the reset pin on the target board, which isn't available on NG or older boards.

So do I need a 10 uF capacitor between reset and ground? How do I put a 10 uF capacitor in between reset and ground when, in this configuration, reset is connected to PIN 10? Why are there two configurations? What's the upsides and downsides to either of them?

1

The wiring is actually identical. It just uses the ISP header (2x3 pins) on the target board, instead of the pins 5v, GND, RST, 11, 12, 13. Just like the table you added says.

The downside to using the ISP header, is you need a male to female wire for connecting. Upside is you can easily take of these 6 pins, and connect it to a different arduino to be programmed.

I always needed to add a capacitor between RESET and GND. The exact value isn't that critical.

The reset pin is the one to the left of 3v3.

  • You're missing the question: RESET isn't connected to GND, it's connected to Pin10? Do you mean you needed to add a capacitor between RESET and Pin10? – Evan Carroll Dec 31 '15 at 22:38
  • 1
    A capacitor between the ISP Arduino's RESET and GND stops the auto-reset happening when the serial port is opened. That's the ISP's reset, NOT the target's reset which is wired direct to pin 10. – Majenko Dec 31 '15 at 22:54
  • Not on the target arduino, but the programming arduino's reset. – Gerben Dec 31 '15 at 23:09
  • Ah.. I see here is the guide for the capacitor on ground-reset – Evan Carroll Jan 1 '16 at 2:31
  • You're missing the question: RESET isn't connected to GND - on both diagrams pin 10 on the programming board is connected to RESET on the target board. The wiring is identical, as Gerben said. – Nick Gammon Jan 31 '16 at 2:27
1

Take a look at my circuit for a minimal "Arduino":

Minimal circuit

The top image in the question uses the ICSP header, which you can see from the schematic "mirrors" pins on the processor. That is:

  • SCK is D13
  • MISO is D12
  • MOSI is D11
  • Reset on the target goes to D10 on the programming board
  • Vcc and Gnd are connected

Trace out the wires to the ICSP header and you will see.


So do I need a 10 uF capacitor between reset and ground?

No you do not.


I have a bricked Arduino Uno and I want to try to flash the bootloader.

See my page about programming a bootloader.


Why are there two configurations?

Just different ways of connecting the same thing to the same thing.


What's the upsides and downsides to either of them?

No difference.

  • I will debate you one one small point, on the last question about the upsides/downsides, there are two small differences. the lesser is that using the side rails is easier for temporary setups, and the ISCP is easier for reusable setups. the other is that on different models of boards the spi pins may not be in the same place (mega is a case in point) so using the ISCP is more portable. – hildred Apr 7 '16 at 0:39
  • OK, yes there may be physical differences like that. If you make up an ICSP cable, then the ICSP header is somewhat easier to use. – Nick Gammon Apr 7 '16 at 5:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.