The Arduino Leonardo is a microcontroller board based on the ATmega32U4. It has 23 digital input/output pins (of which 7 can be used as PWM outputs and 12 as analogue inputs), a 16 MHz crystal oscillator, a micro USB connection, a power jack, an ICSP header, and a reset button.
Note: There are differences between the Leonardo and previous Arduino boards. As such, there could be incompatible Arduino shields and libraries. The Leonardo works with our motor and robot shields, and it works with our Wixel shield in a limited capacity: the wireless serial features work, but the wireless reprogramming does not.
The Arduino Leonardo is a microcontroller board based on the ATmega32U4. It has 23 digital input/output pins (of which 7 can be used as PWM outputs and 12 can be used as analogue inputs), a 16 MHz crystal, a USB connection, a power jack, an in-circuit system programming (ICSP) header, and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer (or appropriate wall power adaptor) with a Micro USB cable or power it with a AC-to-DC adaptor or battery to get started (USB cable and power supply are not included). This board ships with the power jack and through-hole headers soldered in, as shown in the product picture.
The Leonardo differs from all preceding Arduino boards in that the user-programmable ATmega32U4 AVR microcontroller has built-in USB functionality, eliminating the need for a secondary processor. This makes the Leonardo more versatile: in addition to supporting a virtual (CDC) serial/COM port interface, it can appear to a connected computer as a mouse and keyboard. See Arduino’s getting started page for more implications of the Leonardo’s single-MCU design.
The Arduino has a large support community and an extensive set of support libraries and hardware add-on “shields” (e.g. you can easily make your Arduino wireless with our Wixel shield), making it a great introductory platform for embedded electronics. Note that we also offer a SparkFun Inventor’s Kit, which includes an Arduino Uno along with an assortment of components (e.g. breadboard, sensors, jumper wires, and LEDs) that make it possible to create a number of fun introductory projects.
More information about the Arduino Leonardo is available on Arduino’s website. Note that the Leonardo only works with the Arduino IDE version 1.0.1 or later.
Warning: We recommend not connecting the Arduino to USB while it is powered through VIN. See this forum post for more information.
The table below compares the Arduino Uno, Leonardo, and our A-Star 32U4 Prime controllers. The A-Star Primes are based on the same ATmega32U4 AVR microcontroller as the Leonardo and ship with Arduino-compatible bootloaders, so they can be used a direct substitutes for the Leonardo in typical applications. The Primes also offer many advantages, including superior power management that enables efficient operation from 2.7 V to 11.8 V (LV version) or 5 V to 36 V (SV version).
Arduino Uno R3 |
Arduino Leonardo |
A-Star 32U4 Prime LV |
A-Star 32U4 Prime SV |
||
---|---|---|---|---|---|
Microcontroller: | ATmega328P | ATmega32U4 | ATmega32U4 | ||
Clock: | 16 MHz resonator | 16 MHz crystal | 16 MHz crystal | ||
User I/O lines: | 20 | 23 | 26 | ||
PWM outputs: | 6 | 7 | 7 | ||
Analogue inputs: | 6 | 12 | 12 | ||
Ground access points: | 4 | 4 | 43 | ||
User LEDs: | 3 | 3 | 3 | ||
User pushbuttons: | — | — | 3 | ||
Reset button: | |||||
Power switch: | |||||
Buzzer option: | |||||
microSD option: | |||||
LCD option: | |||||
Arduino-compatible bootloader: |
|||||
USB connector: | B | Micro-B | Micro-B | ||
USB/regulator power selection: |
partial | partial | TPS2113A | ||
High-performance reverse-voltage protection: |
|||||
Recommended input voltage: |
7 V to 12 V | 7 V to 12 V | 2.7 V to 11.8 V | 5 V to 36 V | |
Regulator type (5 V): | linear | linear | switching step-up/step-down |
switching step-down |
|
Available 5 V output current: |
at 3 V in | — | — | 0.75 A | — |
at 5 V in | — | — | 1.5 A | 0.2 A | |
at 7 V in | 1.0 A | 1.0 A | 1.5 A | 1.0 A | |
at 9 V in | 0.5 A | 0.5 A | 1.5 A | 1.0 A | |
at 11 V in | 0.35 A | 0.35 A | 1.5 A | 1.0 A | |
at 24 V in | — | — | — | 1.0 A | |
via USB connector |
0.5 A(1) | 0.5 A(1) | 1.5 A(1) | 1.5 A(1) | |
Weight: | 28 g | 20 g | 13 g to 33 g |
1 With sufficiently capable USB power supply.
We also carry a variety of other programmable controllers, from the beginner-friendly BASIC Stamp to the far more capable mbed and Raspberry Pi boards, which are based on powerful ARM processors. Our full selection can be found in our Programmable Controllers category.
Size: | 2.8″ × 2.1″ |
---|---|
Weight: | 20 g |
Processor: | ATmega32U4 @ 16 MHz |
---|---|
RAM size: | 2560 bytes |
Program memory size: | 28 Kbytes |
Motor channels: | 0 |
User I/O lines: | 231 |
Minimum operating voltage: | 7 V |
Maximum operating voltage: | 12 V |
Reverse voltage protection?: | N |
External programmer required?: | N |
This Arduino program (sketch) allows an Arduino connected to a MinIMU-9 v5 or AltIMU-10 v5 (or older versions of those boards) to function as an attitude and heading reference system, calculating estimated roll, pitch, and yaw angles from sensor readings that can be visualised with a 3D test program on a PC. It is based on the work of Jordi Munoz, William Premerlani, Jose Julio, and Doug Weibel.