Kind of an emergency here. I am having a problem uploading my sketch to the Atmega328P with the follow error: avrdude: Device signature = 0x000000.
I am uploading the program with ArduinoISP through the 6-pin SPI header from an Arduino Uno to my PCB with the Atmega328p.
I have been loading the programs onto this target several times (maybe hundreds) with no problems. Then all of a sudden it cannot detect a device signature and says to double check connections. My programmer is wired fine as I can plug it into another board and load code to it.
Below is the verbose output from the IDE. If anyone can help me I will be forever grateful and will find a way to repay them!!
I have read a few other google posts about this same issue, but everyone seemed to have simple wiring problems or reloaded the ArduinoISP sketch / blank sketch to the processor and fixed it. So far none of these has worked.
Usually that means that the board has been configured to use a crystal, but no crystal is connected, or the connected crystal isn't working.
Assuming you're trying to have the board use a crystal (I can't tell because you cut off the line that tells me that, see rant below!)
Check that a crystal is connected.
Check with multimeter from both leads of crystal to the corresponding pins on micro, verifying connection.
Check with multimeter that neither lead of the crystal is shorted to ground, supply, or the other side of the crystal.
Verify proper installation of loading capacitors.
Finally, in the future when posting verbose output, POST ONE LINE FURTHER UP THAN YOU DID SO WE CAN SEE THE AVRDUDE COMMAND! The MOST USEFUL LINE for debugging ISP upload issues is the avrdude command line that they invoke. That one line tells me all about your board, programmer, fuse settings you're trying to write, what programmer you're using, etc and it can also flag up issues with the IDE configuration. And yet I'd say 60+% of people who post verbose output skip that line. Sorry that you happened to be the poster I was responding to when I snapped and ranted on this.
I want that set of data, but for doing "burn bootloader". You gave me output for upload or upload using programmer - basically I want what you posted in the first post, but including the stuff at top - this stuff at the top that you cut off:
The first line, showing what it's telling avrdude to do, is very useful.
C:\Program Files (x86)\Arduino IDE\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino IDE\hardware\tools\avr/etc/avrdude.conf -v {program.verify} -patmega328p -cstk500v1 -PCOM24 -b19200 -Uflash:w:C:\Users\AppData\Local\Temp\build104884705603674886.tmp/<project name>.cpp.hex:i
avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\Program Files (x86)\Arduino IDE\hardware\tools\avr/etc/avrdude.conf"
Did you try my suggestions with the crystal? That's usually what it is when it reads the sig as 000000
To be clear, I don't think the full debug output will tell us anything I don't already belive I know (the problems with the crystal I suggested), but I saw it and it annoyed me and I couldn't resist commenting this time.
Ok sorry for the delay. Here is the output code for burning bootloader for this device.
I am going to check if my oscillator is alive. I am using a 16 MHz external resonator on the board connected to PB6 (XTAL1) and PB7 (XTAL2). In fact I just used the same ISP programmer on an identical board and didn't have any issues.
C:\Program Files (x86)\Arduino IDE\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino IDE\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM24 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0x05:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m
avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\Program Files (x86)\Arduino IDE\hardware\tools\avr/etc/avrdude.conf"
Using Port : COM24
Using Programmer : stk500v1
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 : STK500
Description : Atmel STK500 Version 1.x firmware
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.05s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.05s
avrdude: Device signature = 0x000000 (retrying)
Error while burning bootloader.
Reading | ################################################## | 100% 0.05s
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.
Confirms my initial recommendation that you need to check the crystal connections with your multimeter and verify that they're not shorted to eachother or ground.
Also verify that none of the ISP pins are shorted to ground or to eachother - if MISO is shorted low, that'll get 000000 signature too.