Diese Seite ist leider nicht auf Deutsch verfügbar.

Download AVR-USB

Please download the latest version of AVR-USB from the list below. The version number is the release date in ISO date format (YYYYMMDD). Versions older than 20080418 were distributed as part of the PowerSwitch project. Please download older versions there. For release notes, see the list under the download box.

A version with Russian documentation can be downloaded here. Please use this version as documentation reference only and download our latest release for the code.

Release Notes

Release 2008-10-22

  • Fixed bug in libs-host/hiddata.c function usbhidGetReport().
  • Fixed bug with long transfers (above 254 bytes total).
  • AVR's internal RC oscillator is now supported at 12.8 MHz.
  • Added hook to SOF code so that oscillator can be tuned to USB frame clock.
  • Added example code for oscillator tuning to libs-device.
  • New options USB_CFG_CHECK_DATA_TOGGLING and USB_CFG_SUPPRESS_INTR_CODE.
  • Use control transfer recipient "device" instead of "interface" in HID examples.
  • Fixed USB Reset detection for high speed CPU clocks.
  • Added timeout to waitForJ loop. Helps preventing unexpected hangs.
  • Code size optimizations.

Release 2008-05-13

  • New configuration option USB_CFG_LONG_TRANSFERS for transfer sizes above 254 bytes.
  • Added support for 20 MHz CPU clock, the assembler module was contributed by Jeroen Benschop.
  • Better code size optimization with gcc 4.
  • Restructured usbdrv.c so that it is easier to read and understand.
  • Built-in configuration descriptor allows up to two interrupt-in endpoints now.

Release 2008-04-18

  • USB_INITIAL_DATATOKEN defaults to USBPID_DATA1 now, which means that we begin interrupts transfers with USBPID_DATA0.
  • Changed defaults in usbconfig-prototype.h (is now an example for a custom class device).
  • Added free USB VID/PID pair for MIDI class devices.
  • Restructured AVR-USB as separate package, not part of PowerSwitch any more.

Release 2008-02-28

  • Added hooks so that application firmware can be informed about USB reset and address assignment.
  • Added optional routine usbMeasureFrameLength() which can be used to calibrate the AVR's internal RC oscillator based on the USB frame time.

Release 2008-02-16

  • Fixed a bug in 16.5 MHz module where interrupt handler modified a register before it was pushed. This bug was introduced with code restructuring in version 2007-12-01.
  • Optimized CRC computation (saved a couple of bytes in code size).

Release 2008-02-05

  • Fixed bug in 15 and 16 MHz module which caused USB enumeration to fail on some hosts.

Release 2008-01-21

  • Renamed all include-only assembler files from *.S to *.inc so that users don't accidentally link them.
  • Distribute leap bits more evenly in transmit loop of 16 MHz module.

Older Releases

For changes in oder versions please see the PowerSwitch project.