Bootloder wont burn (arduino as isp)(solved)

I am having issues burnig the bootloader for the arduino uno. Tme IDE keeps giving me this error:

avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override this check

Error while Burning bootloader.

I am using the arduino leonardo to burn the bootloader to the uno.

Do i need to attatch a capaciter?

Please do this:

  • (In the Arduino IDE) File > Preferences
  • Check the checkbox next to "Show verbose output during: upload
  • Click "OK"
  • Tools > Burn Bootloader
  • After the Burn Bootloader process fails, you'll see a button on the right side of the orange bar "Copy error messages". Click that button.
  • In a forum reply here, click on the reply field.
  • Click the </> button on the forum toolbar. This will add the forum's code tags markup to your reply.
  • Press "Ctrl + V". This will paste the Burn Bootloader output between the code tags.
  • Move the cursor outside of the code tags before you add any additional text to your reply.

Allspice101:
Do i need to attatch a capaciter?

Yes.

The capacitor shouldn't be necessary on the Leonardo because it doesn't have an auto-reset circuit that you need to disable. The native USB boards have a different mechanism for triggering the reset during uploads (serial connection at 1200 baud).

I'm not sure if the boot loader's load will work because you're doing it between two different microcontrollers. You are trying to load the 32u4 boot loader into a 328P and I think that is not possible. I'm not an expert on this, but I've already tried it and I was not able to, it only worked when I did it among the same microcontrollers.

In any case, add a 1uF capacitor between reset and gnd, if it does not work, replace it with a 10uF capacitor. If it does not work with any, this operation will not be possible.

You definitely can load the bootloader to a 328P using the leonardo as the programmer, just have to select the proper target in the IDE to get the correct bootloader. You will need to take the connections from the ISP header on the leonardo, except for the reset, because the ISP lines are seperate from the I/O ports on the leonardo. I use a tinkerkit lcd module, which is 32u4 based, as a programmer.

Salikas_91:
I'm not sure if the boot loader's load will work because you're doing it between two different microcontrollers. You are trying to load the 32u4 boot loader into a 328P and I think that is not possible. I'm not an expert on this, but I've already tried it and I was not able to, it only worked when I did it among the same microcontrollers.

In any case, add a 1uF capacitor between reset and gnd, if it does not work, replace it with a 10uF capacitor. If it does not work with any, this operation will not be possible.

I tried it with my nano, and i got the same results. I am also specifying in the tools tab that I am burning the bootloader for the Uno.

pert:
Please do this:

  • (In the Arduino IDE) File > Preferences
  • Check the checkbox next to "Show verbose output during: upload
  • Click "OK"
  • Tools > Burn Bootloader
  • After the Burn Bootloader process fails, you'll see a button on the right side of the orange bar "Copy error messages". Click that button.
  • In a forum reply here, click on the reply field.
  • Click the </> button on the forum toolbar. This will add the forum's code tags markup to your reply.
  • Press "Ctrl + V". This will paste the Burn Bootloader output between the code tags.
  • Move the cursor outside of the code tags before you add any additional text to your reply.

This is the code that i get (before i posted this topic):

avrdude: Yikes! Invalid device signature.
              Double check connections and try again, or use -F to override this check


Error while Burning bootloader.

Budvar10:
Yes.

The capacter is only for boards that
have the auto reset enabled, like the mega.

Never had to use a capacitor on my leonardo clone.
Only problem I ever had was with an older version of linux, that appeared to be resetting the usb port after the bootloader burning process was complete. Bootloader still burnt successfully, but the board reset after completion when the usb power was cut.

Is the uno the first board you have tried to burn a bootloader to, or have you used the leonardo as a programmer successfully in the past?

How are you wiring the programmer to the uno?

Allspice101:
This is the code that i get (before i posted this topic):

avrdude: Yikes! Invalid device signature.

Double check connections and try again, or use -F to override this check

Error while Burning bootloader.

That's not the complete verbose output I requested. If you want help, please read my instructions carefully, and follow them exactly.

@pert
That was before the issue

Here is the verbose output:

Arduino: 1.8.9 (Windows Store 1.8.21.0) (Windows 10), Board: "Arduino/Genuino Uno"

C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.21.0_x86__mdqgnx93n4wtt\hardware\tools\avr/bin/avrdude -CC:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.21.0_x86__mdqgnx93n4wtt\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM12 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m 

avrdude: Version 6.3-20171130
        Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
        Copyright (c) 2007-2014 Joerg Wunsch

        System wide configuration file is "C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.21.0_x86__mdqgnx93n4wtt\hardware\tools\avr/etc/avrdude.conf"

        Using Port                    : COM12
        Using Programmer              : arduino
        Overriding Baud Rate          : 19200
        AVR Part                      : ATmega328P
        Chip Erase delay              : 9000 us
        PAGEL                         : PD7
        BS2                           : PC2
        RESET disposition             : dedicated
        RETRY pulse                   : SCK
        serial program mode           : yes
        parallel program mode         : yes
        Timeout                       : 200
        StabDelay                     : 100
        CmdexeDelay                   : 25
        SyncLoops                     : 32
        ByteDelay                     : 0
        PollIndex                     : 3
        PollValue                     : 0x53
        Memory Detail                 :

                                 Block Poll               Page                       Polled
          Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
          ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
          eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
          flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
          lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
          hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
          efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
          lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
          calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
          signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

        Programmer Type : Arduino
        Description     : Arduino
        Hardware Version: 2
        Firmware Version: 1.18
        Topcard         : Unknown
        Vtarget         : 0.0 V
        Varef           : 0.0 V
        Oscillator      : Off
        SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x000000 (retrying)

Error while burning bootloader.
Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
        Double check connections and try again, or use -F to override
        this check.


avrdude done.  Thank you.

And after checking the connections:

Arduino: 1.8.9 (Windows Store 1.8.21.0) (Windows 10), Board: "Arduino/Genuino Uno"

C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.21.0_x86__mdqgnx93n4wtt\hardware\tools\avr/bin/avrdude -CC:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.21.0_x86__mdqgnx93n4wtt\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM12 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m 

avrdude: Version 6.3-20171130
        Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
        Copyright (c) 2007-2014 Joerg Wunsch

        System wide configuration file is "C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.21.0_x86__mdqgnx93n4wtt\hardware\tools\avr/etc/avrdude.conf"

        Using Port                    : COM12
        Using Programmer              : arduino
        Overriding Baud Rate          : 19200
        AVR Part                      : ATmega328P
        Chip Erase delay              : 9000 us
        PAGEL                         : PD7
        BS2                           : PC2
        RESET disposition             : dedicated
        RETRY pulse                   : SCK
        serial program mode           : yes
        parallel program mode         : yes
        Timeout                       : 200
        StabDelay                     : 100
        CmdexeDelay                   : 25
        SyncLoops                     : 32
        ByteDelay                     : 0
        PollIndex                     : 3
        PollValue                     : 0x53
        Memory Detail                 :

                                 Block Poll               Page                       Polled
          Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
          ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
          eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
          flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
          lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
          hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
          efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
          lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
          calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
          signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

        Programmer Type : Arduino
        Description     : Arduino
        Hardware Version: 2
        Firmware Version: 1.18
        Topcard         : Unknown
        Vtarget         : 0.0 V
        Varef           : 0.0 V
        Oscillator      : Off
        SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x000000 (retrying)

Error while burning bootloader.
Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
        Double check connections and try again, or use -F to override
        this check.


avrdude done.  Thank you.

pert:
That's not the complete verbose output I requested. If you want help, please read my instructions carefully, and follow them exactly.

I said that that error message was before the issue. the reply above is the verbose output.

Please tell us how you have the Leonardo wired to the Uno.

I noticed in he arduinoISP example that on line 81 uncommenting that line will allow the programmer to use 11-13 as the pins instaid of mosi, miso, and sck.

The connections are:

leonardo uno
10 icsp_reset
11 icsp_mosi
12 icsp_miso
13 icsp_sck

Did you uncomment line 81 before uploading ArduinoISP to your Leonardo?

Could you possibly post a picture of your wiring?

Just to make sure, although I doubt you would make a mistake like this, pin 10 (reset) on the leonardo goes to either the ISP header reset pin on the uno, or to RESET on the uno, NOT to pin 10 on the uno.

pert:
Did you uncomment line 81 before uploading ArduinoISP to your Leonardo?

I did

david_2018:
Could you possibly post a picture of your wiring?

Just to make sure, although I doubt you would make a mistake like this, pin 10 (reset) on the leonardo goes to either the ISP header reset pin on the uno, or to RESET on the uno, NOT to pin 10 on the uno.

David, I think you aren't reading the comments completely.

Allspice101:
David, I think you aren't reading the comments completely.

I see that I did mis-read your earlier comment.

Something I haven't seen mentioned, how are you powering the uno? Do you have the power and ground lines connected between the leonardo and uno? Normally I just run a cable from the leonardo ISP header to the ISP header on the uno, with the reset line broken out on the leonardo end and connected to the appropriate output pin. That way, I have the leonardo powering the uno and don't need any other power source for the uno.