Arduino Leonardo

Arduino Leonardo is a microcontroller board based on the Atmel ATmega32u4 Microcontroller. It offers 20 digital IOs (of which 7 can be used as PWM outputs and 12 as analog inputs), a 16MHz crystal oscillator, a micro USB connection, a power jack, an ICSP header, and a reset button. 

The ATmega32u4 MCU has built-in USB communication, eliminating the need for a secondary processor. This allows the Leonardo to appear to a connected computer as an HID, such as a mouse or keyboard, in addition to a virtual (CDC) serial / COM port. The Leonardo board contains everything needed to support the microcontroller. Simply connect it to a computer with a USB cable or power it with an AC-to-DC adapter or battery to get started.


  • Microcontroller: ATmega32u4
    • Flash memory: 32Kb (4Kb used by bootloader)
    • SRAM: 2.5Kb 
    • EEPROM: 1Kb 
  • Operating voltage: 5V
  • Input voltage (recommended): 7V to 12V
  • Input voltage (limits): 6V to 20V
  • Digital I/O pins: 20
  • PWM channels: 7
  • Analog input channels: 12
  • DC current per I/O pin: 40mA
  • DC current for 3.3V pin: 50mA
  • Clock speed: 16MHz
  • PCB dimensions: 68.6mm x 53.3mm
  • Weight: 20g


Pin Designations

Arduino Leonardo
Published: 2012-05-30 | Updated: 2022-03-11