From ffc451fbd9631b4e0a45bce36dda3e34facee2de Mon Sep 17 00:00:00 2001 From: Dean Date: Wed, 21 Sep 2011 06:35:28 +0000 Subject: Add LUFA-111009-BETA tag. git-svn-id: http://lufa-lib.googlecode.com/svn/tags/LUFA-111009-BETA@1929 d5102386-fcda-11dd-9fdb-3debd5008f28 --- LUFA/ManPages/ChangeLog.txt | 23 ++- LUFA/ManPages/CompileTimeTokens.txt | 4 +- LUFA/ManPages/DeviceSupport.txt | 354 +++++++++++++++++++++++++++------ LUFA/ManPages/FutureChanges.txt | 4 + LUFA/ManPages/LUFAPoweredProjects.txt | 25 ++- LUFA/ManPages/LibraryResources.txt | 3 +- LUFA/ManPages/MigrationInformation.txt | 76 +++---- 7 files changed, 369 insertions(+), 120 deletions(-) (limited to 'LUFA/ManPages') diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt index b46ab4d3..b2ce3911 100644 --- a/LUFA/ManPages/ChangeLog.txt +++ b/LUFA/ManPages/ChangeLog.txt @@ -6,7 +6,7 @@ /** \page Page_ChangeLog Project Changelog * - * \section Sec_ChangeLogXXXXXX Version XXXXXX + * \section Sec_ChangeLog111009b Version 111009b * New: * - Core: * - Added USE_LUFA_CONFIG_HEADER compile time option to include a LUFAConfig.h header in the user director for LUFA configuration @@ -28,6 +28,7 @@ * - Added new USB_Host_GetDeviceStatus() function to the host standard request function set * - Added AVR USB XMEGA architecture port (currently incomplete/experimental) * - Added new STRINGIFY() and STRINGIFY_EXPANDED() convenience macros + * - Added new JTAG_DISABLE() macro for the AVR8 architecture * - Added Device Qualifier standard descriptor structure definitions USB_StdDescriptor_DeviceQualifier_t and USB_Descriptor_DeviceQualifier_t * - Library Applications: * - Added RNDIS device mode to the Webserver project @@ -39,6 +40,7 @@ * - Added new AudioInputHost Host LowLevel demo * - Added new AudioOutputHost Host LowLevel demo * - Added new "checksource" target to all library project makefiles + * - Added new VTARGET_USE_INTERNAL_REF configuration option to the AVRISP-MKII clone project (thanks to Volker Bosch) * * Changed: * - Core: @@ -53,10 +55,18 @@ * - Altered the USB_Host_SetDeviceConfiguration() function to update the global Host state machine state and the new * USB_Host_ConfigurationNumber global as required * - Added endian correcting code to the library USB class drivers for multiple architecture support + * - Removed the ENDPOINT_DESCRIPTOR_DIR_* macros, replaced by ENDPOINT_DIR_* instead + * - Renamed the JTAG_DEBUG_ASSERT() macro to JTAG_ASSERT() + * - Added variable number of axis to HID_DESCRIPTOR_JOYSTICK() for multi-axis joysticks above just X and Y + * - Renamed USB_Host_ClearPipeStall() to USB_Host_ClearEndpointStall() as the function works on an endpoint address within the attached device, + * and not a Pipe within the host + * - The MS_Host_ResetMSInterface() now performs a full Mass Storage reset sequence to prevent data corruption in the event of a device + * lock up or timeout (thanks to David Lyons) * - Library Applications: * - Modified the Low Level and Class Driver AudioInput and AudioOutput demos to support multiple audio sample rates * - Updated all host mode demos and projects to use the EVENT_USB_Host_DeviceEnumerationComplete() event callback for device configuration * instead of manual host state machine manipulations in the main application task + * - Changed the reports in the GenericHID device demos to control the board LEDs, to reduce user confusion over the callback routines * * Fixed: * - Core: @@ -67,10 +77,21 @@ * option was not enabled on the AVR8s * - Fixed lack of C++ compatibility in some internal header files causing compile errors when using LUFA in C++ projects * - Fixed error in the pipe unordered allocation algorithm for the AVR8 devices breaking compatibility with some devices + * - Fixed USB_USBTask not being called internally in stream transfers between packets when Partial Stream Transfers are used + * - Fixed swapped TWI_ADDRESS_READ and TWI_ADDRESS_WRITE values + * - Fixed TWI_ReadPacket() not releasing the TWI bus on read completion + * - Fixed optimization error in the HID Parser item value USB_SetHIDReportItemInfo() and USB_GetHIDReportItemInfo() routines if the report item was + * \c NULL (which should be allowable according to the API) + * - Fixed HID Parser CALLBACK_HIDParser_FilterHIDReportItem() callback function not being passed a cacheable report item pointer + * - Fixed HID Parser's largest report size bit count not including the size of the last parsed report item + * - Fixed HID host driver's largest HID report size count corrupt when the number of report bits exceeds 255 * - Library Applications: * - Fixed incorrect signature in the CDC and DFU class bootloaders for the ATMEGA8U2 * - Fixed KeyboardHost and KeyboardHostWithParser demos displaying incorrect values when numerical keys were pressed * - Fixed compile errors in the incomplete BluetoothHost demo application (thanks to Timo Lindfors) + * - Fixed incorrect Dataflash buffer use in the DataflashManager_WriteBlocks_RAM() function of several demos/projects (thanks to Jeremy Willden) + * - Fixed incorrect logging interval (always 500ms longer than requested) in the TempDataLogger project + * - Fixed incorrect buffer size check in the USBtoSerial project (thanks to Yuri A Nikiforov) * * \section Sec_ChangeLog110528 Version 110528 * New: diff --git a/LUFA/ManPages/CompileTimeTokens.txt b/LUFA/ManPages/CompileTimeTokens.txt index c640b10b..e96f7c16 100644 --- a/LUFA/ManPages/CompileTimeTokens.txt +++ b/LUFA/ManPages/CompileTimeTokens.txt @@ -81,7 +81,7 @@ * \section Sec_SummaryUSBTokens General USB Driver Related Tokens * This section describes compile tokens which affect USB driver stack as a whole in the LUFA library. * - * ORDERED_EP_CONFIG - (\ref Group_EndpointManagement , \ref Group_PipeManagement) - AVR8 Only \n + * ORDERED_EP_CONFIG - (\ref Group_EndpointManagement , \ref Group_PipeManagement) - AVR8, UC3 \n * The USB AVRs do not allow for Endpoints and Pipes to be configured out of order; they must be configured in an ascending order to * prevent data corruption issues. However, by default LUFA employs a workaround to allow for unordered Endpoint/Pipe initialization. This compile * time token may be used to restrict the initialization order to ascending indexes only in exchange for a smaller compiled binary size. Use @@ -167,7 +167,7 @@ * is through control endpoint requests. Defining this token will remove several features related to the selection and control of device * endpoints internally, saving space. Generally, this is usually only useful in (some) bootloaders and is best avoided. * - * INTERRUPT_CONTROL_ENDPOINT - (\ref Group_USBManagement) - AVR8 Only \n + * INTERRUPT_CONTROL_ENDPOINT - (\ref Group_USBManagement) - All Architectures \n * Some applications prefer to not call the USB_USBTask() management task regularly while in device mode, as it can complicate code significantly. * Instead, when device mode is used this token can be passed to the library via the -D switch to allow the library to manage the USB control * endpoint entirely via USB controller interrupts asynchronously to the user application. When defined, USB_USBTask() does not need to be called diff --git a/LUFA/ManPages/DeviceSupport.txt b/LUFA/ManPages/DeviceSupport.txt index c248bbda..061c6aca 100644 --- a/LUFA/ManPages/DeviceSupport.txt +++ b/LUFA/ManPages/DeviceSupport.txt @@ -7,22 +7,88 @@ /** * \page Page_DeviceSupport Device and Hardware Support * - * \section Sec_AVR8_Support Atmel 8-Bit AVR (AVR8) + * Atmel Microcontrollers: + * \li \subpage Page_AVR8Support - Atmel AVR8 Support + * \li \subpage Page_UC3Support - Atmel AVR32 UC3 Support + * \li \subpage Page_XMEGASupport - Atmel XMEGA Support + */ + +/** + * \page Page_AVR8Support Atmel 8-Bit AVR (AVR8) Support + * + * \section Sec_AVR8Support_Devices Supported Microcontroller Models * * Currently supported AVR8 models: - * - AT90USB82 (USB Device Only) - * - ATMEGA8U2 (USB Device Only) - * - AT90USB162 (USB Device Only) - * - ATMEGA16U2 (USB Device Only) - * - ATMEGA16U4 (USB Device Only) - * - ATMEGA32U2 (USB Device Only) - * - ATMEGA32U4 (USB Device Only) - * - ATMEGA32U6 (USB Device Only) - * - AT90USB646 (USB Device Only) - * - AT90USB647 (USB Host and Device) - * - AT90USB1286 (USB Device Only) - * - AT90USB1287 (USB Host and Device) * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
PartUSB Device ModeUSB Host Mode
AT90USB82YesNo
ATMEGA8U2YesNo
AT90USB162YesNo
ATMEGA16U2YesNo
ATMEGA16U4YesNo
ATMEGA32U2YesNo
ATMEGA32U4YesNo
ATMEGA32U6YesNo
AT90USB646YesNo
AT90USB647YesYes
AT90USB1286YesNo
AT90USB1287YesYes
+ * + * \section Sec_AVR8Support_Boards Supported Atmel Boards * Currently supported Atmel AVR8 boards (see \ref Group_BoardTypes): * - AT90USBKEY * - ATAVRUSBRF01 @@ -32,7 +98,8 @@ * - STK526 * - XPLAIN (Excluding the blue XPLAINED family boards) * - * Currently supported third-party boards (see \ref Group_BoardTypes for makefile BOARD constant names): + * \section Sec_AVR8Support_ThirdParty Supported Third Party Models + * Currently supported third-party boards (see \ref Group_BoardTypes for makefile \c BOARD constant names): * - Adafruit U4 Breakout Board * - Arduino Uno * - Busware BUI @@ -51,64 +118,239 @@ * - Tempusdictum Benito * - Tom's USBTINY-MKII (all revisions and versions) * - Custom User Boards (with Board Drivers if desired, see \ref Page_WritingBoardDrivers) - * - * \section Sec_AVR32_Support Atmel 32-Bit UC3 AVR (UC3) + */ + +/** + * \page Page_UC3Support Atmel 32-Bit UC3 AVR (UC3) * Note: The AVR32 UC3 device support is currently experimental, and is included for preview purposes only. * + * \section Sec_UC3Support_Devices Supported Microcontroller Models + * * Currently supported UC3 models: - * - AT32UC3A064 (USB Host and Device) - * - AT32UC3A164 (USB Host and Device) - * - AT32UC3A364 (USB Host and Device) - * - AT32UC3A364S (USB Host and Device) - * - AT32UC3A464 (USB Host and Device) - * - AT32UC3A464S (USB Host and Device) - * - AT32UC3B064 (USB Host and Device) - * - AT32UC3B164 (USB Host and Device) - * - AT32UC3A0128 (USB Host and Device) - * - AT32UC3A1128 (USB Host and Device) - * - AT32UC3A3128 (USB Host and Device) - * - AT32UC3A3128S (USB Host and Device) - * - AT32UC3A4128 (USB Host and Device) - * - AT32UC3A4128S (USB Host and Device) - * - AT32UC3B0128 (USB Host and Device) - * - AT32UC3B1128 (USB Host and Device) - * - AT32UC3A0256 (USB Host and Device) - * - AT32UC3A1256 (USB Host and Device) - * - AT32UC3A3256 (USB Host and Device) - * - AT32UC3A3256S (USB Host and Device) - * - AT32UC3A4256 (USB Host and Device) - * - AT32UC3A4256S (USB Host and Device) - * - AT32UC3B0256 (USB Host and Device) - * - AT32UC3B1256 (USB Host and Device) - * - AT32UC3A0512 (USB Host and Device) - * - AT32UC3A1512 (USB Host and Device) - * - AT32UC3B0512 (USB Host and Device) - * - AT32UC3B1512 (USB Host and Device) + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
PartUSB Device ModeUSB Host Mode
AT32UC3A064YesYes
AT32UC3A164YesYes
AT32UC3A364YesYes
AT32UC3A364SYesYes
AT32UC3A464YesYes
AT32UC3A464SYesYes
AT32UC3B064YesYes
AT32UC3B164YesYes
AT32UC3A0128YesYes
AT32UC3A1128YesYes
AT32UC3A3128YesYes
AT32UC3A3128SYesYes
AT32UC3A4128YesYes
AT32UC3A4128SYesYes
AT32UC3B0128YesYes
AT32UC3B1128YesYes
AT32UC3A0256YesYes
AT32UC3A1256YesYes
AT32UC3A3256YesYes
AT32UC3A3256SYesYes
AT32UC3A4256YesYes
AT32UC3A4256SYesYes
AT32UC3B0256YesYes
AT32UC3B1256YesYes
AT32UC3A0512YesYes
AT32UC3A1512YesYes
AT32UC3B0512YesYes
AT32UC3B1512YesYes
+ * + * \section Sec_UC3Support_Boards Supported Atmel Boards * * Currently supported Atmel UC3 boards (see \ref Group_BoardTypes): * - EVK1100 * - EVK1101 * - EVK1104 * - * Currently supported third-party boards (see \ref Group_BoardTypes for makefile BOARD constant names): - * - Custom User Boards (with Board Drivers if desired, see \ref Page_WritingBoardDrivers) + * \section Sec_UC3Support_ThirdParty Supported Third Party Models * - * \section Sec_XMEGA_Support Atmel USB XMEGA AVR (XMEGA) + * Currently supported third-party boards (see \ref Group_BoardTypes for makefile \c BOARD constant names): + * - Custom User Boards (with Board Drivers if desired, see \ref Page_WritingBoardDrivers) + */ + +/** + * \page Page_XMEGASupport Atmel USB XMEGA AVR (XMEGA) * Note: The XMEGA device support is currently experimental, and is included for preview purposes only. + * + * \section Sec_XMEGASupport_Devices Supported Microcontroller Models + * * Currently supported XMEGA models: - * - ATXMEGA16A4U (USB Device Only) - * - ATXMEGA32A4U (USB Device Only) - * - ATXMEGA64A3U (USB Device Only) - * - ATXMEGA128A3U (USB Device Only) - * - ATXMEGA192A3U (USB Device Only) - * - ATXMEGA256A3U (USB Device Only) - * - ATXMEGA256A3BU (USB Device Only) - * - ATXMEGA128A1U (USB Device Only) * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
PartUSB Device ModeUSB Host Mode
ATXMEGA16A4UYesNo
ATXMEGA32A4UYesNo
ATXMEGA64A3UYesNo
ATXMEGA128A3UYesNo
ATXMEGA192A3UYesNo
ATXMEGA256A3UYesNo
ATXMEGA256A3BUYesNo
ATXMEGA128A1UYesNo
+ * + * \section Sec_XMEGASupport_Boards Supported Atmel Boards * Currently supported Atmel XMEGA boards (see \ref Group_BoardTypes): * - None * - * Currently supported third-party boards (see \ref Group_BoardTypes for makefile BOARD constant names): + * \section Sec_XMEGASupport_ThirdParty Supported Third Party Models + * Currently supported third-party boards (see \ref Group_BoardTypes for makefile \c BOARD constant names): * - Custom User Boards (with Board Drivers if desired, see \ref Page_WritingBoardDrivers) */ diff --git a/LUFA/ManPages/FutureChanges.txt b/LUFA/ManPages/FutureChanges.txt index 51656ac0..b3527b07 100644 --- a/LUFA/ManPages/FutureChanges.txt +++ b/LUFA/ManPages/FutureChanges.txt @@ -25,6 +25,10 @@ * -# Consider switch from endpoint numbers to full endpoint addresses to ease future architecture expansion * -# Fix HID report parser usage support for array types * -# Add additional standard request helper functions to host mode + * -# Add Dataflash_SendCommand() + * -# Make HOST_DEVICE_SETTLE_DELAY_MS a global variable that can be changed + * -# Add MANDATORY_EVENT_FUNCTIONS compile time option + * -# Add watchdog support to the library and apps/bootloaders * - Documentation/Support * -# Add detailed overviews of how each demo works * -# Add board overviews diff --git a/LUFA/ManPages/LUFAPoweredProjects.txt b/LUFA/ManPages/LUFAPoweredProjects.txt index 2a5be3f6..a46e2c68 100644 --- a/LUFA/ManPages/LUFAPoweredProjects.txt +++ b/LUFA/ManPages/LUFAPoweredProjects.txt @@ -39,56 +39,59 @@ * - Arcade Controller: http://fletchtronics.net/arcade-controller-made-petunia * - AVR USB Modem, a 3G Wireless Modem host: http://code.google.com/p/avrusbmodem/ * - Bicycle POV: http://www.code.google.com/p/bicycleledpov/ + * - Bluetooth Explorerbot: http://code.google.com/p/bluetooth-explorerbot/ * - Bus Ninja, an AVR clone of the popular BusPirate project: http://blog.hodgepig.org/busninja/ * - CAMTRIG, a remote Camera Trigger device: http://code.astraw.com/projects/motmot/camtrig - * - Collection of alternative Arduino Uno firmwares: http://hunt.net.nz/users/darran/ - * - Dashkey, a custom PC keyboard controller: http://geekhack.org/showwiki.php?title=Island:19096 * - CD Driver Emulator Dongle for ISO Files: http://cdemu.blogspot.com/ * - ClockTamer, a configurable clock generator: http://code.google.com/p/clock-tamer/ + * - Collection of alternative Arduino Uno firmwares: http://hunt.net.nz/users/darran/ * - CULFW, a 868MHz RF packet encoder/decoder: http://www.koeniglich.de/culfw/culfw.html + * - Dashkey, a custom PC keyboard controller: http://geekhack.org/showwiki.php?title=Island:19096 * - DIY PS3 controller emulator: https://code.google.com/p/diyps3controller/ * - EMuSer, a USB-RS422 adapter for E-Mu samplers: http://www.emxp.net/EMuSer.htm * - Estick JTAG, an ARM JTAG debugger: http://code.google.com/p/estick-jtag/ * - "Fingerlicking Wingdinger" (WARNING: Bad language if no Javascript), a MIDI controller: http://noisybox.net/electronics/wingdinger/ * - Flyatar, a real-time fly tracking system: https://github.com/peterpolidoro/Flyatar + * - Gamecube controller to USB adapter: https://www.facebook.com/media/set/?set=a.10150202447076304.310536.688776303&l=df53851c50 * - Garmin GPS USB to NMEA standard serial sentence translator: http://github.com/nall/garmin-transmogrifier/tree/master * - Generic HID Device Creator: http://generichid.sourceforge.net/ * - Ghetto Drum, a MIDI drum controller: http://noisybox.net/art/gdrum/ * - Hiduino, a USB-MIDI replacement firmware for the Arduino Uno: http://code.google.com/p/hiduino/ + * - Ikea RGB LED USB modification: http://slashhome.se/p/projects/id/ikea_dioder_usb/#project * - IR Remote to Keyboard decoder: http://netzhansa.blogspot.com/2010/04/our-living-room-hi-fi-setup-needs-mp3.html * - LED Panel controller: http://projects.peterpolidoro.net/caltech/panelscontroller/panelscontroller.htm - * - LUFA powered DDR dance mat (French): http://logicien-parfait.fr/dokuwiki/doku.php?id=projet:ddr_repair - * - MIDI Theremin: http://baldwisdom.com/usb-midi-controller-theremin-style-on-arduino-uno/ - * - MiniBloq, a graphical Ardunio programming environment : http://minibloq.org/ - * - Motherboard BIOS flasher: http://www.coreboot.org/InSystemFlasher - * - Multi-button Joystick (French): http://logicien-parfait.fr/dokuwiki/doku.php?id=projet:joystick - * - Nikon wireless camera remote control (Norwegian): http://hekta.org/~hpe1119/ - * - PSGroove, a Playstation 3 Homebrew dongle: http://github.com/psgroove - * - Single LED Matrix Display: http://guysoft.wordpress.com/2009/10/08/bumble-b/ * - Linux Secure Storage Dongle: http://github.com/TomMD/teensy + * - LUFA powered DDR dance mat (French): http://logicien-parfait.fr/dokuwiki/doku.php?id=projet:ddr_repair * - MakeTV Episode Dispenser: http://www.youtube.com/watch?v=BkWUi18hl3g * - MidiMonster, a USB-to-MIDI gateway board: http://www.dorkbotpdx.org/wiki/midimonster + * - MIDI Theremin: http://baldwisdom.com/usb-midi-controller-theremin-style-on-arduino-uno/ + * - MiniBloq, a graphical Ardunio programming environment : http://minibloq.org/ * - MiXley, a port of the Teacup 3D printer firmware for the USB AVRs: http://codaset.com/michielh/mixley * - Mobo 4.3, a USB controlled all band (160-10m) HF SDR transceiver: http://sites.google.com/site/lofturj/mobo4_3 * - Moco, a native Arduino Uno MIDI replacement firmware: http://web.mac.com/kuwatay/morecat_lab./MocoLUFA.html + * - Motherboard BIOS flasher: http://www.coreboot.org/InSystemFlasher + * - Multi-button Joystick (French): http://logicien-parfait.fr/dokuwiki/doku.php?id=projet:joystick * - Music Playing Alarm Clock (Tutorial): http://www.instructables.com/id/Music-Playing-Alarm-Clock/ * - NeroJTAG, a JTAG dongle: https://github.com/makestuff/neroJtag * - NES Controller USB modification: http://projects.peterpolidoro.net/video/NESUSB.htm + * - Nikon wireless camera remote control (Norwegian): http://hekta.org/~hpe1119/ * - Opendous-JTAG, an open source ARM JTAG debugger: http://code.google.com/p/opendous-jtag/ * - Openkubus, an open source hardware-based authentication dongle: http://code.google.com/p/openkubus/ * - Orbee, a USB connected RGB Orb for notifications: http://www.franksworkshop.com.au/Electronics/Orbee/Orbee.htm * - Programmable XBOX controller: http://richard-burke.dyndns.org/wordpress/pan-galactic-gargantuan-gargle-brain-aka-xbox-360-usb-controller/ + * - PSGroove, a Playstation 3 Homebrew dongle: http://github.com/psgroove * - Reprap with LUFA, a LUFA powered 3D printer: http://code.google.com/p/at90usb1287-code-for-arduino-and-eclipse/ * - SD Card reader: http://elasticsheep.com/2010/04/teensy2-usb-mass-storage-with-an-sd-card/ * - SDR1, a Software Defined Radio firmware: https://code.google.com/p/sdr-mk1/ * - SEGA Megadrive/Genesis Development Cartridge: http://www.makestuff.eu/wordpress/?page_id=398 * - Serial Line bus analyser: http://www.pjrc.com/teensy/projects/SerialAnalyzer.html * - SmartportVHD Apple II Mass Storage adapter: http://pcedric3.free.fr/SmartportVHD/ + * - Single LED Matrix Display: http://guysoft.wordpress.com/2009/10/08/bumble-b/ * - Stripe Snoop, a Magnetic Card reader: http://www.ossguy.com/ss_usb/ * - Teensy SD Card .WAV file player: http://elasticsheep.com/2010/04/teensy2-usb-wav-player-part-1/ * - Touchscreen Input Device: http://capnstech.blogspot.com/2010/07/touchscreen-update.html * - Universal USB AVR Module: http://usbavr.bplaced.net/ - * - USB2AX, a USB to Dynamixel network adapter: http://trac.assembla.com/XD_DSbot/browser/trunk + * - USB2AX, a USB to Dynamixel network adapter: http://paranoidstudio.assembla.com/wiki/show/paranoidstudio/USB2AX * - USB Interface for Playstation Portable Devices: http://forums.ps2dev.org/viewtopic.php?t=11001 * - USB powered Geiger Counter: http://uhrheber.wordpress.com/2011/04/28/a-usb-powered-geiger-counter-for-the-z2-and-other-computers/ * - Userial, a USB to Serial converter with SPI, I2C and other protocols: http://www.tty1.net/userial/ diff --git a/LUFA/ManPages/LibraryResources.txt b/LUFA/ManPages/LibraryResources.txt index bf9320e3..7137a56a 100644 --- a/LUFA/ManPages/LibraryResources.txt +++ b/LUFA/ManPages/LibraryResources.txt @@ -18,8 +18,7 @@ * * \section Sec_ProjectHelp Assistance With LUFA * Discussion Group: http://www.lufa-lib.org/support \n - * Author's Email: dean [at] fourwalledcubicle [dot] com - * Author's Skype: abcminiuser + * Author's Email: dean [at] fourwalledcubicle [dot] com \n * * \section Sec_InDevelopment Latest In-Development Source Code * Issue Tracker: http://www.lufa-lib.org/tracker \n diff --git a/LUFA/ManPages/MigrationInformation.txt b/LUFA/ManPages/MigrationInformation.txt index d5f680ee..7190d65c 100644 --- a/LUFA/ManPages/MigrationInformation.txt +++ b/LUFA/ManPages/MigrationInformation.txt @@ -10,53 +10,16 @@ * to the next version released. It does not indicate all new additions to the library in each version change, only * areas relevant to making older projects compatible with the API changes of each new release. * - * \section Sec_MigrationXXXXXX Migrating from 110528 to XXXXXX - * Device Mode - * - The definition of the Audio class \ref USB_Audio_Descriptor_Format_t has been altered, to remove the fixed singular - * audio sample rate in the descriptor definition, and to rename the \c SampleFrequencyType to the more appropriate - * \c TotalDiscreteSampleRates. Existing applications will need to add an array of \ref USB_Audio_SampleFreq_t elements - * immediately following any \ref USB_Audio_Descriptor_Format_t descriptors, and insert the appropriate sampling rates - * supported by the device, as well as rename the descriptor elements to match the updated element names. - * - The device mode Audio class driver now requires a new user application callback, \ref CALLBACK_Audio_Device_GetSetEndpointProperty(). - * Existing applications must implement this new callback, however if multiple sample rates or pitch control is not used, - * this function may be hard-coded to always return false for previous behaviour to be retained. - * - The \c USB_ConfigurationNumber, \c USB_RemoteWakeupEnabled and \c USB_CurrentlySelfPowered globals have been renamed to - * \ref USB_Device_ConfigurationNumber, \ref USB_Device_RemoteWakeupEnabled and \ref USB_Device_CurrentlySelfPowered to clearly indicate - * the USB mode they relate to. Existing applications using these variables should rename all references to the previous names. - * - * Host Mode - * - The USB_Host_SetDeviceConfiguration() function now automatically sets the USB Host state machine to the \ref HOST_STATE_Configured - * state if a non-zero configuration is set sucessfully, or the \ref HOST_STATE_Addressed if a zero-index configuration is specified. Existing - * applications should no longer manually alter the \ref USB_HostState global, and should instead call this function to configure and - * unconfigure an attached device. - * - The \c HOST_STATE_WaitForDeviceRemoval and \c HOST_STATE_Suspended host state machine states have been removed; these are replaced by - * unconfiguring the attached device via a call to \ref USB_Host_SetDeviceConfiguration() and a test of \ref USB_Host_IsBusSuspended() instead. - * - It is highly recommended that the EVENT_USB_Host_DeviceEnumerationComplete() event callback now be used for initial device configuration, - * rather than a switch on the USB host state machine state for readability. - * - * \section Sec_Migration110528 Migrating from 101122 to 110528 + * \section Sec_Migration111009 Migrating from 110528 to 111009 * Non-USB Library Components - * - The TWI driver \ref TWI_StartTransmission() function return type has now changed, so that the function returns an - * error code from the \ref TWI_ErrorCodes_t enum instead of a boolean success flag. Existing code must now check - * against the \ref TWI_ERROR_NoError return value for success instead of a boolean \c true value, or it will not function - * correctly. - * - The Serial Stream driver has been removed, and its functionality rolled into the regular serial driver. Existing code - * should remove references to the \c LUFA_SRC_SERIALSTREAM module in their makefiles, include the regular Serial driver - * header instead and call the regular \ref Serial_Init() function followed by the new \ref Serial_CreateStream() function - * with a \c NULL parameter. - * - The \ref Serial_ReceiveByte() function has changed, and now returns a signed 16-bit integer, with -1 indicating no data was - * received. - * - The TWI driver \ref TWI_Init() function now expects additional prescaler and bitlength parameters. See the function - * documentation for more details. - * - The name postfix on all driver modules to turn off and disable that module has been changed from *_ShutDown() to *_Disable(). - * Rename all references to these functions to use the new function names. + * - The \c JTAG_DEBUG_ASSERT() macro has been renamed \ref JTAG_ASSERT() to be consistent with \ref STDOUT_ASSERT(). * * USB Core * - By default, unordered Endpoint and Pipe configuration is now allowed once again, via the previous workaround of * reconfiguring all Endpoints/Pipes in order each time a new Endpoint/Pipe is created. To minimize the compiled program * size, the new \c ORDERED_EP_CONFIG compile time option may be defined in the project makefile to restrict the ordering * in exchange for a smaller compiled binary size. - * - The previous F_CLOCK symbol, required in the project makefile, has been renamed to F_USB. This is due to the previous name + * - The previous \c F_CLOCK symbol, required in the project makefile, has been renamed to \c F_USB. This is due to the previous name * being far too generic for use in future architecture ports, where multiple clock domains are used. * * Device Mode @@ -67,17 +30,31 @@ * error code to allow the user application to determine when to send the next chunk of data. * - The \ref CDC_Device_SendString() function now expects a null terminated string instead of an explicit length. Existing code * should use the new \ref CDC_Device_SendData() function, or remove the length parameter from the function call. - * - The Endpoint_ResetFIFO() function has been renamed to \ref Endpoint_ResetEndpoint(), to make the API function names more + * - The \c Endpoint_ResetFIFO() function has been renamed to \ref Endpoint_ResetEndpoint(), to make the API function names more * consistent. Existing applications using the old function name should simply replace it with a call to the new function name. - * - The Endpoint_*_Byte() functions have been renamed Endpoint_*_8() to ensure they are correct across all architectures. Existing + * - The \c Endpoint_*_Byte() functions have been renamed Endpoint_*_8() to ensure they are correct across all architectures. Existing * code using these functions should replace the previous function names with the new function names. - * - The Endpoint_*_Word() functions have been renamed Endpoint_*_16() to ensure they are correct across all architectures. Existing + * - The \c Endpoint_*_Word() functions have been renamed Endpoint_*_16() to ensure they are correct across all architectures. Existing * code using these functions should replace the previous function names with the new function names. - * - The Endpoint_*_DWord() functions have been renamed Endpoint_*_32() to ensure they are correct across all architectures. Existing + * - The \c Endpoint_*_DWord() functions have been renamed Endpoint_*_32() to ensure they are correct across all architectures. Existing * code using these functions should replace the previous function names with the new function names. * - The Device mode RNDIS class driver no longer stores the incoming and outgoing packets in the class driver instance; the user is * now expected to manually define a storage location for the packet data. Packets must now be sent and received manually via a call * to \ref RNDIS_Device_ReadPacket() and/or \ref RNDIS_Device_SendPacket(). + * - The definition of the Audio class \ref USB_Audio_Descriptor_Format_t has been altered, to remove the fixed singular + * audio sample rate in the descriptor definition, and to rename the \c SampleFrequencyType to the more appropriate + * \c TotalDiscreteSampleRates. Existing applications will need to add an array of \ref USB_Audio_SampleFreq_t elements + * immediately following any \ref USB_Audio_Descriptor_Format_t descriptors, and insert the appropriate sampling rates + * supported by the device, as well as rename the descriptor elements to match the updated element names. + * - The device mode Audio class driver now requires a new user application callback, \ref CALLBACK_Audio_Device_GetSetEndpointProperty(). + * Existing applications must implement this new callback, however if multiple sample rates or pitch control is not used, + * this function may be hard-coded to always return false for previous behaviour to be retained. + * - The \c USB_ConfigurationNumber, \c USB_RemoteWakeupEnabled and \c USB_CurrentlySelfPowered globals have been renamed to + * \ref USB_Device_ConfigurationNumber, \ref USB_Device_RemoteWakeupEnabled and \ref USB_Device_CurrentlySelfPowered to clearly indicate + * the USB mode they relate to. Existing applications using these variables should rename all references to the previous names. + * - The \c ENDPOINT_DESCRIPTOR_DIR_IN and \c ENDPOINT_DESCRIPTOR_DIR_OUT macros have now been replaced by \ref ENDPOINT_DIR_IN and + * \ref ENDPOINT_DIR_OUT to improve code clarity. + * - The \ref HID_DESCRIPTOR_JOYSTICK() macro now takes an additional (first) parameter indicating the number of axis in the joystick. * * Host Mode * - The Pipe stream functions now all require a \c BytesProcessed parameter instead of the previous callback parameter. @@ -88,14 +65,17 @@ * - The \ref PRNT_Host_SendString() and \ref CDC_Host_SendString() functions now expect a null terminated string instead of an explicit * length. Existing code should use the new \ref PRNT_Host_SendData() and \ref CDC_Host_SendData() functions, or remove the * length parameter from the function call. - * - The Pipe_ClearErrorFlags() function has been removed, as the pipe error flags are now automatically cleared when the + * - The \c Pipe_ClearErrorFlags() function has been removed, as the pipe error flags are now automatically cleared when the * \ref Pipe_ClearError() function is called. - * - The Pipe_*_Byte() functions have been renamed Pipe_*_8() to ensure they are correct across all architectures. Existing code using + * - The \c Pipe_*_Byte() functions have been renamed Pipe_*_8() to ensure they are correct across all architectures. Existing code using * these functions should replace the previous function names with the new function names. - * - The Pipe_*_Word() functions have been renamed Pipe_*_16() to ensure they are correct across all architectures. Existing code using + * - The \c Pipe_*_Word() functions have been renamed Pipe_*_16() to ensure they are correct across all architectures. Existing code using * these functions should replace the previous function names with the new function names. - * - The Pipe_*_DWord() functions have been renamed Pipe_*_32() to ensure they are correct across all architectures. Existing code using + * - The \c Pipe_*_DWord() functions have been renamed Pipe_*_32() to ensure they are correct across all architectures. Existing code using * these functions should replace the previous function names with the new function names. + * - The \c USB_Host_ClearPipeStall() function has been renamed to USB_Host_ClearEndpointStall(), as it operates on a full endpoing address + * within the attached device and not a pipe within the host. Existing code using the old function name should update the function calls and + * check for correct usage. * * \section Sec_Migration101122 Migrating from 100807 to 101122 * USB Core -- cgit v1.2.3