Does anybody know if there is a premade bootloader or Arduino core for the Atmega32u4, one that can be used in the Arduino ide. I did find MCU dude saying there is a way to do it Here, but I am currently not good enough to figure it out. Atmega 32u4's signature bytes are as following:
ATmega32U4 Signature Bytes:
- 0x000: 0x1E (indicates manufactured by Atmel).
- 0x001: 0x95 (indicates 32KB Flash memory).
- 0x002: 0x87 (indicates ATmega32U4 device).
The Arduino Leonardo uses the 32U4, as do several of the Pololu AStar series, and they all work with IDE 1.8.19. Several of Adafruits boards use the 32U4 as well.
Just select a board that will work with whatever board you have, which you forgot to mention.
its a bare 32u4, and it runs at 3.3v and 8mhz
I tried Leonardo, and it did not work.
The Leonardo does not run on 8 MHz. You need a compatible board definition.
i'm trying pro micro 3.3v volts
it says wrong device signature
know any that will work with it?
An ISP programmer can be used with the IDE to program a bare ATmega32U4 chip.
The Arduino IDE serial port upload function requires a bootloader to be installed on the target and a valid board definition.
I'm using a Arduino uno as ISP, but I cant find a valid bootloader. and the Arduino as ISP works because I can program Attinys using MiniCore.
Hi @buffalobingo. You should use the "Sparkfun AVR Boards" platform. This provides a board definition for the Pro Micro 3.3V (which was created by SparkFun).
You can follow the instructions here to install it:
https://github.com/sparkfun/Arduino_Boards#user-content-installation-instructions
I have tried that and it gives me this error, do you think that it is an soldering error? Or is it just an error related to the bootloader being the incorrect one?
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
Failed chip erase: uploading error: exit status 1
Which version of Arduino IDE are you using (e.g., "2.0.1")? The version is shown on the window title bar and also in the Help > About dialog.
I ask for this information because I want to give you the appropriate instructions for the IDE version you are using.
Its version 2.1.1, it might be a soldering error because I was having trouble getting the 32u4 soldered but I thought I got it.
I'm going to ask you to post the full verbose output from the "Burn Bootloader" operation.
NOTE: These instructions will not solve the problem. They are only intended to gather more information about the problem.
Please do this:
- Select File > Preferences... from the Arduino IDE menus.
The "Preferences" dialog will open.
- Check the box next to Show verbose output during: ☐ upload.
- Click the OK button.
- Attempt a "Burn Bootloader" operation, just the same as you did before.
- Wait for the "Burn Bootloader" operation to fail.
- You will see a "Error while burning the bootloader: ..." notification at the bottom right corner of the Arduino IDE window. Click the "COPY ERROR MESSAGES" button in that notification.
- Open a forum reply here by clicking the Reply button.
- Click the
<CODE/>
icon on the post composer toolbar.
This will add the forum's code block markup (```
) to your reply to make sure the error messages are correctly formatted.

- Press Ctrl+V.
This will paste the error output from the upload into the code block.
- Move the cursor outside of the code tags before you add any additional text to your reply.
- Click the Reply button to post the output.
Ill give an image of the 32u4 to see if it was soldered correctly.
The pad that is missing is not connected to anything on the board.
"C:\Users\micha\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino18/bin/avrdude" "-CC:\Users\micha\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino18/etc/avrdude.conf" -v -patmega32u4 -cstk500v1 -PCOM3 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFE:m -Uhfuse:w:0xD8:m -Ulfuse:w:0xFF:m
avrdude: Version 6.3-20201216
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "C:\Users\micha\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino18/etc/avrdude.conf"
Using Port : COM3
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
I just tried direct avrdude with avdudess, but that gave the same error, am I doing something wrong?
The photos are not promising. If you can't program the chip with a known working ISP programmer, then you won't get much further with this project until the hardware/wiring errors are repaired.
To help you here is the schematic: