Sparkfun Pro Micro

Sparkfun Pro Micro

The Sparkfun Arduino Pro Micro is a tiny board with all surface mount parts. It has the ATmega32U4 from the Leonardo, and no frills at all. It runs on 5V at 16MHz. There is a 3.3V version that runs at 8MHz. There are "only" 12 digital I/O lines, but that is a little misleading since the RX and TX lines are not counted as part of the 12. More important for some tasks, 11, 12, and 13 are missing. They are replaced by 14, 15, and 16, which may or may not make a difference in your code. SS, on 17, is being used for the transmit LED, and is not brought out to a pin. Also, don't freak out about there not being anything marked SDA and SCL. They are on pins 2 & 3 respectively.

A Sparkfun Pro Micro on a breadboard.
Figure 1.
Sparkfun's Arduino Pro Micro on a breadboard

The bootloader is the Caterina bootloader, from the Leonardo, which would normally wait 8 seconds after reset to enter user mode. Sparkfun has modified it to always go into user mode unless the reset is pushed twice. Then it will enter bootloader mode and wait 8 seconds before entering user mode. It takes some getting used to, especially since there is no reset switch.

If you are going to use the Pro Micro on a breadboard, you have to use some type of pins. We use machined pin, male headers. They don't get stuck in the breadboard holes like the square post headers do, and they leave a post on top for hanging a scope probe. That really helps a lot.

The Arduino Pro Mini and especially the Arduino Pro Micro make ideal boards when you have a circuit that is the main focus, and you just need an MCU to bang it around with. Plug one in, attach one cable, and go. Wonderful little devices.

The board is not without it's idiosyncracies. When you upload a sketch, the board is reset, and goes into the bootloader for "less than 752mS". The problem is that with the ATmega32U4, when it goes into the bootloader, the port sort of disappears from your computer. The result on Windows is that you may need to wait for the port to show up again before you can open the serial monitor. On a Mac, the result is an error being thrown showing "...the port is in use..." after about every upload. It isn't, and everything works, it just shows an error.

Sparkfun Pro Micro
MCU ATmega32U4
DigitalPins 14
Analog Inputs 4
Analog Outputs 0
Operating Voltage 5
Operating Frequency 16MHz
3.3V Output None
Test Current Draw35mA
Web Site Sparkfun Electronics
  1. Information from manufacturers and other sources.
  2. Test current from sketch that exercises I2C, SPI, and analog pins.
A Sparkfun Pro Micro on a breadboard driving an I2C display.
Figure 1.
Arduino Pro Micro driving an I2C LCD display.

I2C and SPI on the Arduino Pro Micro

As an experiment we connected the I2C LCD display to the Arduino Pro Micro, and of course nothing unusual happened. That's always refreshing. So we added the MPL115A1 pressure sensor, and an LM35 and made a little indoor weather station. After admiring how tiny the whole thing was, we pulled out the Arduino Pro Micro and replaced it with a Deek-Robot Pro Micro. As expected, everything continued to work the same.

Arduino Board Logo


Arduino-Board is the go-to source for information on many available Arduino and Arduino-like boards, tutorials and projects.

Help and Support


Stay updated

Sign up if you would like to receive our once monthly newsletter.