AlternativeStacks.txt 4.3 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/** \file
 *
 *  This file contains special DoxyGen information for the generation of the main page and other special
 *  documentation pages. It is not a project source file.
 */

/**
 *  \page Page_AlternativeStacks Alternative USB AVR Stacks
 *
 *  LUFA is not the only stack available for the USB AVRs, although it is perhaps the best (see \ref Page_WhyUseLUFA).
 *  In the interests of completeness and user choice, other known USB AVR stacks are listed here.
 *
 *  \section Sec_HardwareStacks Hardware USB AVR Stacks
 *  These are the known alternative USB stacks which are designed for and run exclusively on the USB AVR series microcontrollers,
 *  which contain on-chip USB controller hardware for maximum features and speed.
 *
 *  - <b>Name:</b> Atmel USB AVR Stack (<i>Atmel Inc.</i>) \n
 *    <b>Cost:</b> Free \n
 *    <b>License:</b> Atmel Limited License (see Atmel download for details) \n
 *    <b>Website:</b> http://atmel.com/dyn/products/app_notes.asp?family_id=607#USB \n
 *    <b>Description:</b> This is the official Atmel USB AVR stack, for their 8-bit USB AVR lineup. Each series of
22
 *                        USB AVR is separated into a separate download stack, which is both AVR-GCC and IAR compatible.
23
24
25
26
27
28
29
30
31
 *
 *  - <b>Name:</b> Dr. Stefan Salewski's AT90USB1287 Stack (<i>Dr. Stefan Salewski</i>) \n
 *    <b>Cost:</b> Free \n
 *    <b>License:</b> GPL \n
 *    <b>Website:</b> http://www.ssalewski.de/AT90USB_firmware.html.en \n
 *    <b>Description:</b> This is a GPL'd library specifically designed for the AT90USB1287, by Dr. Stefan Salewski, a
 *                        German Physicist. It compiles for AVR-GCC and can potentially be modified to work on other USB
 *                        AVR models.
 *
32
33
34
35
36
37
38
 *  - <b>Name:</b> FreakUSB Stack (<i>FreakLabs</i>) \n
 *    <b>Cost:</b> Free \n
 *    <b>License:</b> Modified BSD \n
 *    <b>Website:</b> http://freaklabs.org/index.php/FreakUSB-Open-Source-USB-Device-Stack.html \n
 *    <b>Description:</b> An open source simple USB stack for a selection of the USB AVRs. Contains a sample class driver
 *                        for the CDC-ACM class, however other class driver implementations are also possible.
 *
39
40
41
42
43
44
 *  - <b>Name:</b> PJRC Teensy Stack (<i>Paul Stoffregen</i>) \n
 *    <b>Cost:</b> Free \n
 *    <b>License:</b> BSD \n
 *    <b>Website:</b> http://www.pjrc.com/teensy/usb_debug_only.html \n
 *    <b>Description:</b> Not so much a complete stack as a collection of USB enabled demos, this library is specifically
 *                        designed for the PJRC Teensy line of USB AVRs, and thus may need to be modified for other USB AVR
45
46
 *                        chips. These minimal code samples shows the inner workings of the USB controller, without all the
 *                        abstraction present in most other USB AVR stacks.
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 *
 *  \section Sec_SoftwareStacks Software AVR Stacks
 *  These are the known alternative USB stacks which can run on regular AVR models, lacking dedicated hardware USB controllers
 *  via a bit-banged (emulated) version of the USB protocol. They are limited in their capabilities due to the cycles required
 *  to be dedicated to managing the USB bus, but offer a cheap way to implement USB functionality into a design.
 *
 *  - <b>Name:</b> AVR309: Software USB (<i>Atmel</i>) \n
 *    <b>Cost:</b> Free \n
 *    <b>License:</b> None Stated \n
 *    <b>Website:</b> http://www.atmel.com/dyn/Products/app_notes.asp?family_id=607 \n
 *    <b>Description:</b> Atmel's official software USB implementation, an Application Note containing work by Igor Cesko. This
 *                        is a minimal assembly-only implementation of software USB, providing HID functionality. Less compile
 *                        options than V-USB (see below).
 *
 *  - <b>Name:</b> V-USB (<i>Objective Development</i>) \n
 *    <b>Cost:</b> Free for some uses, see website for licensing \n
 *    <b>License:</b> Dual GPL2/Custom \n
 *    <b>Website:</b> http://www.obdev.at/products/vusb/index.html \n
 *    <b>Description:</b> Well regarded and complete USB 1.1 software stack for several AVR models, implementing Low Speed HID.
 *                        Used in many commercial and non-commercial designs, with user-submitted projects available for viewing
 *                        on the company's website. Uses C language code mixed with assembly for time-critical sections.
 */
69