The Arduino Leonardo board (Fig. 1) is based on ATmega32u4 microcontroller. It has 20 digital input/output pins, a 16MHz crystal oscillator, a power jack, an in-circuit serial programming (ICSP) header, a micro USB connection and a reset button. Leonardo is different from other Arduino boards because it has a microcontroller with inbuilt USB 2.0 communication.
Other features of Arduino Leonardo include:
1. Input voltage: 7V-12V
2. Operating voltage: 2.7V-5.5V
3. 12 analogue input pins and seven pulse-width-modulated (PWM) outputs
4. 32kB flash memory
5. 1kB EEPROM
6. 2.5kB SRAM
7. 40mA per I/O pin current (DC)
The Leonardo board uses a single microcontroller to run your sketches as well as communicate with your PC using USB. This allows Leonardo far more flexibility in its communication with the computer. It also helps to lower the cost of the board.
Since the board does not have a dedicated chip to handle serial communication, the serial port is virtual. When you plug in Leonardo to the PC, it creates a serial instance of the USB’s Connected Device Class (CDC) driver. Every time you reset the board, the USB serial connection is broken and re-established. The board disappears from the list of serial ports in your PC, and the list re-enumerates. This difference has implications for driver installation, uploading and communication. Details can be found here.
Other important question
How do USB 2.0 and USB 3.0 differ? How to identify them on my PC?
USB (universal serial bus) is an industry standard that defines cables, connectors and communication protocol for connection, communication and power supply between computers and devices. It has replaced a variety of earlier interfaces, such as serial/ parallel ports as well as separate power chargers for portable devices. There are various classes of USB ports: USB 1.x, USB 2.0, USB 3.0, USB 3.1 and USB 3.2.
USB 3.0 can transfer data at SuperSpeed (SS) of 5Gbps, which is about ten times faster than USB 2.0 standard. Successors to USB 3.0 standard are USB 3.1 released in July 2013 and USB 3.2 released in September 2017.
USB 2.0 and USB 3.0 are compared in the table.
You can distinguish USB 3.0 connector from USB 2.0 by blue colour (Fig. 2) of the Standard-A receptacle and plug, or by initials ‘SS’ on the plug. You can also identify USB port through Device Manager on your Windows PC. Steps follow:
1. Open Device Manager
2. In Device Manager window, click ‘+’ (plus) sign or the arrow next to Universal Serial Bus controllers. You will see a list of USB ports installed on your computer:
• If your USB port name contains Universal Host, your port is version 1.1
• If the port name contains both Universal Host and Enhanced Host, your port is version 2.0
• If the port name contains USB 3.0, your port is version 3.0