The ATMega32U4 is Atmel's low-power 8-bit AVR RISC-based microcontroller featuring 32KB self-programming flash program memory, 2.5KB SRAM, 1KB EEPROM, USB 2.0 full-speed/low speed device, 12-channel 10-bit A/D-converter, and JTAG interface for on-chip-debug.

This is the same controller that's used on the Pro Micro and Fio v3.

ATMega32U4 TQFP Product Help and Resources

Core Skill: Soldering

This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.

3 Soldering

Skill Level: Competent - You will encounter surface mount components and basic SMD soldering techniques are required.
See all skill levels

Core Skill: Programming

If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.

2 Programming

Skill Level: Rookie - You will need a better fundamental understand of what code is, and how it works. You will be using beginner-level software and development tools like Arduino. You will be dealing directly with code, but numerous examples and libraries are available. Sensors or shields will communicate with serial or TTL.
See all skill levels

Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

2 Electrical Prototyping

Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels


Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • DuckmanLV / about 8 years ago / 1

    Hey sparkfun! The datasheet link on this page is broken.

    • M-Short / about 8 years ago / 1

      thanks for the heads up. I think Atmel redid their page recently. I'll see about getting that updated, until then this link should work.

  • SlyVixsky / about 12 years ago / 4

    Love this little chip. Same version used on the Teensy 2.0 by PJRC. Will you guys be releasing one with Arduino bootloader already installed? Or stick with the atmel USB DFU bootloader? Any plans to release a breakout board version with basic power regulation? (not making a teensy per-se, but similar, maybe shield compatible?)

    • we might be offering it with the bootloader installed. that's still up in the air right now.

      • you should do that so I don't have to breakout the stuff on all my boards. Then I would love you long time

        • most convincing argument ever...

          • AeroGuy_123 / about 11 years ago / 1

            It would be just amazing if there was a version with Arduino bootloader setup! Extremely useful!

            • We've toyed with the idea, but it's hard to get the bootloader on an SMD package. especially when we sell the volume of these that we do. doing a few is OK, but doing thousands at a time presents a challenge.

              • GaretBiglow / about 10 years ago / 1

                +1 for preloaded bootloader!

              • Ryan7 / about 11 years ago / 1

                Make it a crowd sourced engineering round table video series, a neat automated programmer that takes the chips off the real and programs them with an smd zif socket!

  • Member #271514 / about 11 years ago / 3

    Hi, I have a board (from a friend of mine) with an atmega32u4. It seems like there is no DFU/CDC installed at all (just a blank chip). We rechecked the schematic, everything ok. How did you burn the USB Bootloader into the chip. (Was planning on using FLIP,but with a blank chip, it doesn't work). Does anyone have a tutorial for burning the bootloader? Thanks

  • Member #200027 / about 11 years ago / 3

    +1 for Arduino Bootloader installed!

  • Member #698609 / about 8 years ago / 1

    Hello dear friends! I want to buy this chip, but I would like to know whether it comes with the pre-installed Arduino bootloader or not? Does anyone know if my sketch written using Arduino Uno library work on this one? Thank you guys!

    • M-Short / about 8 years ago / 1

      This does not come with any code on it (including an Arduino bootloader). As long as you have access to the ISP headers and an AVR programmer (or an Uno programmed to be an AVR programmer) you should be able to upload code once the IC is on your finished board. That's actually the way we do it around here. As for the sketch/library it just depends. Most will work, but there are differences in the 2 chips (I2C pins, SPI pins, interupt pins, USB serial vs hardware serial). Depending on the library/sketch it might just work, you might have to change a few pins, or you might have to do a lot more work. Feel free to email if you have any other questions.

  • Oddstr13 / about 10 years ago / 1

    Product card:

  • AnimasterZ / about 11 years ago / 1

    Not sure if it is just me but there is a 32u4 in the sparkfun library but it is only the QFN-44 package is this correct seeing as this part has the little eagle logo? Thanks just looking for clarification!

    • jimblom / about 11 years ago / 1

      Whoops, just missed adding it. Thanks for catching that!

      I just posted an update to the github repo with a TQFP footprint added to the ATmega32U4 device in SparkFun-DigitalIC.lbr.

  • laptopman / about 12 years ago * / 1

    I can't find this part in the eagle library. I can only find the QFN package. Do they have the same footprint?

    EDIT: Also, can A0-A5 be used as Digital IO?

    • SlyVixsky / about 12 years ago / 1

      If you head over to cadsoft there is an eagle library for download that includes footprints for all the AtmelxxUx ICs. And yes, Every pin can be used for digital i/o :)

      • Kevin Vermeer / about 12 years ago / 2

        You're correct that A0-A5 can be used for digital I/O, but there are quite a few pins which cannot be used for digital IO on most microcontrollers.

        In no case can you use VCC or Gnd as I/O. This is obvious. For this chip, if you (sensibly) lump AREF, AGND and AVCC into this category, you lose 9 of the 44 pins to power and ground.

        In most cases, at least some of the oscillator pins are only for connection to a crystal. For this chip, that's XTAL1 and XTAL2. This doesn't usually include timer inputs for RTCs.

        This chip has some pins dedicated to USB functionality. Sure, there's I/O happening, but this isn't ordinary CMOS I/O. This includes D+ and D-, UVCC, UGND, UCAP, and VBUS.

        As an outlier, many small chips let you use the !RESET pin as I/O. Of course, this means that you loose this easy way to get a clean reset and need to resort to soft resets on some multiplexed switch or complete power cycling, which may not be acceptable. This is usually bad practice unless you're extremely space-constrained and have no room or use for a reset switch. Most every Sparkfun project does have room and have a need for a reset switch.

        That all adds up to a total of 18 pins not usable as digital I/O, or 26 I/O available in this 44-pin package. This is in agreement with the statement from the datasheet:

        • I/O and Packages – All I/O combine CMOS outputs and LVTTL inputs – 26 Programmable I/O Lines

  • ThorntonDan / about 12 years ago / 1

    This is very timely. It could very well be the brains of my lasertag project. Thanks SparkFun!

  • Thimplum / about 12 years ago / 1

    YES!!! I asked Nate for this a while back, and had thought I had been forgoten.

  • ATtiny Fan / about 12 years ago / 1

    Well, homemade Pro/Fio clone, here we come. Man I can imagine all the uses of a arduino platform without of a FTDI or ATMega8u2 as a usb interface.

Customer Reviews

5 out of 5

Based on 1 ratings:

Currently viewing all customer reviews.

Nice little part

I used this part on a "poor mans Thermal Imager" I am working on. If you set it up it works pretty good. The embedded USB needs an extra driver but the arduino IDE handles that.

Also if your using a separate Terminal program (I rolled my own in make sure to enable DTR to receive data (DTR.enable = True)