Hi folks
For an apprentice and his project, we try to flash an Atmega32U4 as almost completely bare chip.
Of course, directly from mouser, the Chip is not recognised/programmable via USB directly.
At least the Bootloader is missing i understand (Correct?)...
So, we tried to flash the bootloader via "Arduino as ISP" thru a Mega2560.
The fact that i am posting here, indicates, this flash was unsuccessful... ![]()
So, what did we do?
- Connected Arduino2560 and gotten COM11 assigned.
- Arduino Mega2560 sucessfully flashed with ArduinoISP-Sketch on COM11
- We added the 10uF-Cap on the Arduino2560 between Reset and GND
We also added 100nF on the 32u4 at:
- Pin 14 VCC --> Pin 15 GND
- Pin 34 VCC --> PIN 35 GND
Connected “bare” Atmega32u4 chip to Arduino2560:
- Arduino 2560 VCC on ICSP-header (Pin 2) --> 32u4 VCC (CPU Pin 14)
- Arduino 2560 GND on ICSP-header (Pin 6) --> 32u4 GND (CPU Pin 15)
- Arduino2560 MOSI on ICSP-header (Pin 4) --> 32u4 MOSI (CPU Pin 10)
- Arduino2560 MISO on ICSP-header (Pin 1) --> 32u4 MISO (CPU Pin 11)
- Arduino2560 SCK on ICSP-header (Pin 3) --> 32u4 SCLK (CPU Pin 9)
- Arduino2560 DIO10 --> 32u4 /RESET (CPU Pin 13)
In Arduino IDE, we then set:
- Board = “Arduino Leonardo” (As it also uses 32u4) but we also tried “Sparkfun Pro Micro” which also has 32u4 (Both gave the same results further below)
- COM = COM11 (The Arduino2560 is there with the ArduinoISP-Sketch on it)
- Programmer = Arduino as ISP
When we click “Burn Bootloader”, we get:
"C:\Users\ruth2\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude" "-CC:\Users\ruth2\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf" -v -patmega32u4 -cstk500v1 -PCOM11 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xcb:m -Uhfuse:w:0xd8:m -Ulfuse:w:0xff:m
avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "C:\Users\ruth2\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
Using Port : COM11
Using Programmer : stk500v1
Overriding Baud Rate : 19200
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
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 9000 9000 0x00 0x00
flash 65 6 128 0 yes 32768 128 256 4500 4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lock 0 0 0 0 no 1 0 0 9000 9000 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.02s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.02s
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.
Failed chip erase: uploading error: exit status 1
When we download AVRdude separately and use
avrdude -p m32u4 -c avrisp -b 19200 -e -F -P COM11
the result is:
Device signature = 00 00 00 (retrying)
Device signature = 00 00 00 (retrying)
Device signature = 00 00 00
Error: invalid device signature
Warning: expected signature for ATmega32U4 is 1E 95 87
Avrdude done. Thank you.
So... I checked 3x and resoldered everything twice... All okay.
Have checked for shorts: nothing
To the picture:
- The 32u4 is on a doublesided sticky tape.
- The white USB cable is not plugged in as this will be used AFTER we flashed the bootloader to use direct USB-Flashing (As i understand the Bootloader is needed for this?).
- The unlabeled wire in white is the Reset of the 32u4 which is connected to Pin10 of the Arduino2560.
And no: When we connect the white USB of 32u4, nothing is recognized really... no unknown device or even a refresh in the device manager...
When i take the fuse-stuff from the verbose and adapt according the help of AVRdude manpage, i get
C:\work\AVRDUDE>avrdude -v -patmega32u4 -cavrisp -PCOM11 -b19200 -F -e -Ulock:w:0x3F:m -Uefuse:w:0xcb:m -Uhfuse:w:0xd8:m -Ulfuse:w:0xff:m
Avrdude version 8.0
Copyright see https://github.com/avrdudes/avrdude/blob/main/AUTHORS
System wide configuration file is C:\work\AVRDUDE\avrdude.conf
Using port : COM11
Using programmer : avrisp
Setting baud rate : 19200
AVR part : ATmega32U4
Programming modes : SPM, ISP, HVPP, JTAG
Programmer type : STK500
Description : Serial Atmel AVR ISP using STK500
HW Version : 2
FW Version : 1.18
Topcard : Unknown
SCK period : 0.0 us
XTAL frequency : 7.372800 MHz
AVR device initialized and ready to accept instructions
Device signature = 00 00 00 (retrying)
Device signature = 00 00 00 (retrying)
Device signature = 00 00 00
Error: invalid device signature
Warning: expected signature for ATmega32U4 is 1E 95 87
Erased chip
Processing -U lock:w:0x3F:m
Reading 1 byte for lock from input file 0x3F
in 1 section [0, 0]
Writing 1 byte (0x3F) to lock *** failed
Error: unable to write lock (rc = -1)
Avrdude done. Thank you.
C:\work\AVRDUDE>
the 7.4MHz seem to be the internal clock as the external is/would be 16MHz...
But it looks like it can communicate with the 32u4 but getting signature = bogus...
Or at least read from the 32u4, but cannot seem to write the fuses...
Hm!
So... The main problem seems to be that the signature is = 000000 but for the best of me, i cannot figure out what else needs to be done or done differently to get the bootloader flashed...
The solutions above are the output of many other Forum-threads and solutions... Sadly they dont seem to help here (Like the 10uF on ISP Reset)...
After now many hours, we are at a loss for further ideas.... Please, Hivemind, we beg for ideas and support....


