Lavan
May 2, 2016, 1:59pm
1
Hi There, I started playing with pro mini recently. It was working fine for few days, but now I can’t upload sketches any more. If I try to upload any sketch, I am getting this error message “avrdude.exe: verifying ...avrdude.exe: verification error, first mismatch at byte 0x0000, 0xff != 0x0c,avrdude.exe: verification error; content mismatch. I tried to burn the boot loader again without success( tried from AVRASP and uno, no luck). But I am able to detect the pro mini avrdudess and read the fuses without any problem, fuses are like below. Is there a way to recover from this state or Did I fried the pro mini?
L: 0XFF
H:0XDF
E:0X07
LB:0X3F
It could be a corrupted bootloader. Do you have a programmer or a Arduino Uno that can be a programmer. In the Arduino IDE is an option in the menu to burn the bootloader. That sets the fuses as well.
Koepel:
Do you have a programmer or a Arduino UNO that can be a programmer.
Interesting question.
Do you notice that he told you what the fuse values were ? I wonder how he did that?
Enable verbose upload, attempt to burn bootloader with your isp programmer, and post output here
Lavan
May 3, 2016, 12:32pm
5
Thanks for your response. I have attached verbose log here..
C:\Apps\Arduino\hardware\tools\avr/bin/avrdude -CC:\Apps\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cusbasp -Pusb -e -Ulock:w:0x3F:m -Uefuse:w:0x05:m -Uhfuse:w:0xDA: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:\Apps\Arduino\hardware\tools\avr/etc/avrdude.conf"
Using Port : usb
Using Programmer : usbasp
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 : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude: auto set sck period (because given equals null)
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e950f
avrdude: erasing chip
avrdude: auto set sck period (because given equals null)
avrdude: reading input file "0x3F"
avrdude: writing lock (1 bytes):
Writing | ################################################## | 100% 0.01s
avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x3F:
avrdude: load data lock data from input file 0x3F:
avrdude: input file 0x3F contains 1 bytes
avrdude: reading on-chip lock data:
Reading | ################################################## | 100% 0.01s
avrdude: verifying ...
avrdude: 1 bytes of lock verified
avrdude: reading input file "0x05"
avrdude: writing efuse (1 bytes):
Writing | ***failed;
################################################## | 100% 0.04s
avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0x05:
avrdude: load data efuse data from input file 0x05:
avrdude: input file 0x05 contains 1 bytes
avrdude: reading on-chip efuse data:
Reading | ################################################## | 100% 0.01s
avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
0x07 != 0x05
avrdude: verification error; content mismatch
avrdude done. Thank you.
Error while burning bootloader.
Try setting the extended fuse to 0xFD, which is the same as 0x05, except it sets the unused bits to "unprogrammed" (1).
Lavan
May 6, 2016, 5:00am
7
No luck
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
avrdude.exe: Version 6.0.1, compiled on Sep 18 2013 at 08:20:41
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)\AVRDUDESS\avrdude.conf"
Using Port : usb
Using Programmer : usbasp
Setting bit clk period : 0.5
avrdude.exe: seen device from vendor ->www.fischl.de<-
avrdude.exe: seen product ->USBasp<-
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 : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude.exe: try to set SCK period to 5e-007 s (= 2000000 Hz)
avrdude.exe: set SCK frequency to 1500000 Hz
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% -0.00s
avrdude.exe: Device signature = 0x1e950f
avrdude.exe: reading lfuse memory:
Reading | ################################################## | 100% 0.02s
avrdude.exe: writing output file "C:\Users\lavan_jampa\AppData\Local\Temp\0a35f07c-1457-4613-8224-18727789c544.TMP"
avrdude.exe: reading hfuse memory:
Reading | ################################################## | 100% -0.00s
avrdude.exe: writing output file "C:\Users\lavan_jampa\AppData\Local\Temp\f203b91a-23fd-4e0b-832a-f119763206ca.TMP"
avrdude.exe: reading efuse memory:
Reading | ################################################## | 100% 0.02s
avrdude.exe: writing output file "C:\Users\lavan_jampa\AppData\Local\Temp\d1c34379-bcab-4517-a1f1-c30638fc90ad.TMP"
avrdude.exe done. Thank you.
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
avrdude.exe: Version 6.0.1, compiled on Sep 18 2013 at 08:20:41
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)\AVRDUDESS\avrdude.conf"
Using Port : usb
Using Programmer : usbasp
Setting bit clk period : 0.5
avrdude.exe: seen device from vendor ->www.fischl.de<-
avrdude.exe: seen product ->USBasp<-
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 : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude.exe: try to set SCK period to 5e-007 s (= 2000000 Hz)
avrdude.exe: set SCK frequency to 1500000 Hz
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude.exe: Device signature = 0x1e950f
avrdude.exe: reading input file "0xFF"
avrdude.exe: writing lfuse (1 bytes):
Writing | ################################################## | 100% 0.02s
avrdude.exe: 1 bytes of lfuse written
avrdude.exe: verifying lfuse memory against 0xFF:
avrdude.exe: load data lfuse data from input file 0xFF:
avrdude.exe: input file 0xFF contains 1 bytes
avrdude.exe: reading on-chip lfuse data:
Reading | ################################################## | 100% 0.00s
avrdude.exe: verifying ...
avrdude.exe: 1 bytes of lfuse verified
avrdude.exe: reading input file "0xDF"
avrdude.exe: writing hfuse (1 bytes):
Writing | ################################################## | 100% 0.02s
avrdude.exe: 1 bytes of hfuse written
avrdude.exe: verifying hfuse memory against 0xDF:
avrdude.exe: load data hfuse data from input file 0xDF:
avrdude.exe: input file 0xDF contains 1 bytes
avrdude.exe: reading on-chip hfuse data:
Reading | ################################################## | 100% 0.00s
avrdude.exe: verifying ...
avrdude.exe: 1 bytes of hfuse verified
avrdude.exe: reading input file "0xFD"
avrdude.exe: writing efuse (1 bytes):
Writing | ***failed;
################################################## | 100% 0.11s
avrdude.exe: 1 bytes of efuse written
avrdude.exe: verifying efuse memory against 0xFD:
avrdude.exe: load data efuse data from input file 0xFD:
avrdude.exe: input file 0xFD contains 1 bytes
avrdude.exe: reading on-chip efuse data:
Reading | ################################################## | 100% -0.00s
avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x0000
0x07 != 0xfd
avrdude.exe: verification error; content mismatch
avrdude.exe done. Thank you.
I would feel comfortable calling the Pro Mini bad at this point, if you are confident of your wire connections and solder joints. It's probably time to get another one, they cost about $1.50 to $4 USD.
Interesting that only the efuse refuses to burn...
I would try efuse at 07, what it is now, just to see if it burns the bootloader afterwards.
Maybe try another programmer, just in case, to rule all variables out.
When buying bad quality, pay the lowest price, since the quality is equally bad for all those cheap clones.
AliExpress:
5V 16MHz ATmega328(P) = 1.32 dollars
5V 16MHz ATmega168 = 1.24 dollars (don't by this one)
3.3V 8MHz ATmega328(P) = 1.43 dollars
Pro Micro with ATmega32U4 = 3.79 dollars