El año 2011 fue testigo de uno de los mayores saltos evolutivos en la plataforma. Hasta este momento, todas las placas Arduino necesitaban dos chips para hablar con una computadora: un procesador principal para ejecutar tu código y un chip secundario (como el FTDI o el 16U2) para traducir las señales de la placa al idioma USB. El Arduino Leonardo destruyó esta dependencia al utilizar un microcontrolador que tenía el hardware USB construido directamente en su interior.
La Revolución de los Periféricos HID
Al tener el control absoluto del puerto USB sin intermediarios, el Arduino Leonardo no solo aparecía en tu computadora como un puerto "COM" (puerto serie) virtual. Podías escribir una línea de código en el IDE de Arduino y, mágicamente, tu computadora creía que le acababas de conectar un teclado, un mouse o un joystick (Dispositivos HID - Human Interface Device).
Esta simple característica desató una ola de creatividad masiva: desde personas creando sus propios volantes de carreras caseros y controles de máquinas Arcade, hasta ingenieros de ciberseguridad usándolo (y a su hermano menor, el Arduino Micro) para crear inyectores de pulsaciones de teclado ultrarrápidos (como el famoso Rubber Ducky).
Ficha Técnica Histórica
- El Corazón del Camaleón: Microcontrolador Atmel ATmega32u4 corriendo a 16 MHz. (La "u" en su nombre significa USB nativo).
- Puertos: 20 pines de entrada/salida digital, de los cuales 7 se pueden usar como salidas PWM y nada menos que 12 como entradas analógicas.
- Formato Físico: Utilizó exactamente el mismo tamaño y distribución de pines que el recién lanzado UNO R3, garantizando compatibilidad con los "Shields".
- Comunicación Independiente: Al no depender de un chip conversor, la comunicación Serial por hardware en los pines 0 y 1 quedaba completamente libre para comunicarse con otros dispositivos, incluso mientras la placa estaba conectada por USB a la PC.