A Firmware-Only USB Driver for Atmel AVR Microcontrollers
A USB device without dedicated USB hardware
AVR-USB is a firmware-only implementation of a USB 1.1 compliant low-speed device for Atmel's AVR microcontrollers. It runs on any AVR microcontroller which has at least 2 kB of Flash memory, 128 bytes RAM and can be clocked at 12 MHz. No UART, timer, input capture unit or other special hardware is required (except one edge triggered interrupt).
AVR-USB can be licensed freely under an Open Source compliant license or alternatively under a commercial license. Features
- Fully USB 1.1 compliant low-speed device, except handling of communication errors.
- Supports two endpoints: one control and one interrupt endpoint.
- Transfer sizes up to 254 bytes.
- Comes with freely usable USB identifiers (Vendor-ID and Product-ID pair).
- Customizable sections are written in "C" and are well commented.
- Delivered with fully functional example applications.
- Only about 1400 to 1500 bytes code size for basic functionality.
- You can choose the License: Open Source or commercial