Commit Graph

835 Commits (a9f0369facea9b1b29ee9cf7fedc47664e04e3b7)

Author SHA1 Message Date
Dean Camera ce3ea6fb25 Added standard stream example to the ClassDriver CDC device demo. 16 years ago
Dean Camera 5ca1d7bf8f Fix redefinition warning when USB_DEVICE_ONLY is set on an AVR which does not support USB host mode. 16 years ago
Dean Camera fef185a409 Cleanup USBMode.h to simplify preprocessor logic. 16 years ago
Dean Camera 6928f17b64 Extend the automatic serial number descriptor code to read out and send all 10 bytes (20 characters) of the internal serial number on supported AVRs, rather than just the first 6 bytes (12 characters). 16 years ago
Dean Camera 7f3f39b575 Fixed report data alignment issues in the MouseHostWithParser demo when X and Y movement data size is not a multiple of 8 bits. 16 years ago
Dean Camera e426463355 Better solution - change compile time token names to DEVICE_STATE_AS_GPIOR and HOST_STATE_AS_GPIOR and allow the user to set them to the index of the GPIOR register within the device to use. 16 years ago
Dean Camera c1be307393 Added HOST_STATE_AS_GPIOR1 and DEVICE_STATE_AS_GPIOR0 compile time options, the latter of which is used in the bootloaders, to reduce code size. 16 years ago
Dean Camera 864196c884 State information for class drivers is now zeroed out during enumeration (both in device and host mode) to ensure sane values after each enumeration. User code should no longer explicitly set state information as this is no longer preserved. 16 years ago
Dean Camera b9dd51cd63 Collapse configuration descriptor size retrieval and size testing into a single if statement within the new host mode class driver demos for clarity. 16 years ago
Dean Camera 84c3c4a3d9 Change Host mode class driver Pipe configuration routines -- better to let the application fetch the configuration descriptors once, and then pass them to each class driver in turn. 16 years ago
Dean Camera 5251bc6e4e Add new MouseHost Class Driver demo, unfinished, to allow for better testing of the new prototype Host Mode Class Driver framework. Flesh out start of a HID class Host mode class driver. 16 years ago
Dean Camera 05fa6e0c43 Corrected new Pipe_IsEndpointBound() function. 16 years ago
Dean Camera cbbd3d746a Added new Pipe_BoundEndpointNumber() and Pipe_IsEndpointBound() functions. 16 years ago
Dean Camera 200821fe82 Added new LEDs_ToggleLEDs() function to the Board LEDs driver. 16 years ago
Dean Camera 5dbfdaa17d Ensure that the USB_DeviceState variable is properly set upon wakeup events, to the Addressed or Configured state as needed. 16 years ago
Dean Camera 7a5d045987 Slight changes to TeensyHID bootloader to ensure it builds under the 2KB boundary. 16 years ago
Dean Camera e071f3897a Added new USB_DeviceState variable to keep track of the current Device mode USB state. 16 years ago
Dean Camera d0db78432f Add extra tests to the MassStorage device demo and class driver for validating command blocks from the host. 16 years ago
Dean Camera 67f390fe74 Add explicit guards to all device mode tasks to ensure the device is connected and configured before running the task, to prevent any user tasks from locking up the main USB task if the device has not been properly configured. 16 years ago
Dean Camera 292fc9b65e Move unfinished SideShow source files to nested Lib directory for clarity. 16 years ago
Dean Camera f3c061d5c8 Fixed PrinterHost demo Printer_GetDeviceID() routine not removing the Device ID string length from the start of the returned array (thanks to John Andrews). 16 years ago
Dean Camera 9d2613d908 Fixed incorrect PIPE_EPNUM_MASK mask causing pipe failures on devices with endpoint addresses of 8 and above (thanks to John Andrews). 16 years ago
Dean Camera c619e21fa7 Added support for the new ATMEGA32U2, ATMEGA16U2 and ATMEGA8U2 AVR models. 16 years ago
Dean Camera 32086e4f14 Fix small error in last commit preventing compilation in some circumstances. 16 years ago
Dean Camera 37f8a84f35 Added new TOTAL_NUM_CONFIGURATIONS option, removed USE_SINGLE_DEVICE_CONFIGURATION compile time option (but silently convert it to USE_SINGLE_DEVICE_CONFIGURATION internally for compatibility). 16 years ago
Dean Camera f85a53a31b Fix HID class device driver -- if a SetIDle request is issued with the LSB of wValue set to zero, the idle period must be set for all HID interfaces. 16 years ago
Dean Camera da138684e4 Added module file dependancy information to the USB class drivers. 16 years ago
Dean Camera 312748702a Added better module summaries. 16 years ago
Dean Camera e9215b4b36 Fix broken Pipe stream function templates due to mixed const/no const use in prototypes. 16 years ago
Dean Camera 73d9fafc0f Added new EEPROM and FLASH buffer versions of the Endpoint and Pipe stream functions. Changed Endpoint.c and Pipe.c to use a templated system to build the seperate functions, rather than duplicating each function's code many times. 16 years ago
Dean Camera 0fcbe22c9e Added new HOST_STATE_WaitForDeviceRemoval host state machine state for non-blocking disabling of device communications until the device has been removed (for use when an error occurs or communications with the device have completed). Changed over all host mode demos to use the new state. 16 years ago
Dean Camera a54ed0085b Seperated out parts of the PrinterHost incomplete demo into a seperate Lib subdirectory. 16 years ago
Dean Camera 86e6ed7f31 Dataflash_WaitWhileBusy() now always ensures that the dataflash is ready for the next command immediately after returning, no need to call Dataflash_ToggleSelectedChipCS() afterwards. 16 years ago
Dean Camera f1076ac4d6 Added const modifiers to device mode class drivers. 16 years ago
Dean Camera 3cbdcd3686 Reduce struct name pollution - group typedef struct names by class driver name where appropriate. 16 years ago
Dean Camera 1756087c3e Optimize vendor/product description string display code in MassStorageHost. 16 years ago
Dean Camera bb23e55f11 Fixed MassStorage demo not clearing the reset flag when a Mass Storage Reset is issued while not processing a command. 16 years ago
Dean Camera a3a04aa671 Pipe_ConfigurePipe() now automatically defaults IN pipes to accepting infinite IN requests, this can still be changed by calling the existing \ref Pipe_SetFiniteINRequests() function. 16 years ago
Dean Camera 7f81803aaa Fixed CDCHost demo unfreezing IN pipes during configuration, rather than during use. 16 years ago
Dean Camera 7d7573e4e5 Corrected the ADC driver for the ATMEGA16U4 and ATMEGA32U4 (thanks to Opendous Inc.). 16 years ago
Dean Camera a34cccf099 Optimize unique serial number reading code for size -- remove atoi/toupper references, replace with hand-rolled code as the input has known size constraints. 16 years ago
Dean Camera 730624f745 Added new USE_INTERNAL_SERIAL define for using the unique serial numbers in some AVR models as the USB device's serial number, added NO_INTERNAL_SERIAL compile time option to turn off new serial number reading code. Updated Mass Storage and CDC based demos to use the new device serial number if the device it is compiled for supports it. 16 years ago
Dean Camera 9d506553aa Trim unique serial number created by the USE_INTERNAL_SERIAL option to 12 characters rather than 20 - apparently Windows will implode if a serial number is too long. 16 years ago
Dean Camera 00d0883507 Added USE_INTERNAL_SERIAL compile time option to automatically read out the internal unique serial number as the device's serial number descriptor on supported AVR models. 16 years ago
Dean Camera 35bdada24b Clean up RNDIS demo type define names. 16 years ago
Dean Camera feabfd12ce Fix makefiles -- the auto-addition of -D switches to each LUFA compile time option was faulty, due to GNUMake becomming confused by the spaces in the USE_STATIC_OPTIONS lines. Make user add in the switches explicitly instead. 16 years ago
Dean Camera dfa547164a Extend USB_GetDeviceConfigDescriptor() routine to require the configuration number within the device to fetch, to add support for multi-configuration devices. 16 years ago
Dean Camera 0d8679cf6b Re-add in simple scheduler for compatibility with legacy code, mark all scheduler related files as deprecated. 16 years ago
Dean Camera f896c00c48 Break device mode class driver interfaces into seperate config and state structs which are then combined, for clarity. Move device mode class driver interfaces back into the device mode class driver headers from the common class headers to make room for host class interfaces. 16 years ago
Dean Camera e338cb6f32 Added new USB_Host_ClearPipeStall() convenience function to clear a stall condition on an attached device's endpoint. 16 years ago
Dean Camera dcf303762a Pipe_GetErrorFlags() now returns additional error flags for overflow and underflow errors. 16 years ago
Dean Camera 39d07c3da0 Added USB Missle Launcher project, submitted by Dave Fletcher. 16 years ago
Dean Camera b5ca3990c2 Added new USB_Host_SetDeviceConfiguration() convenience function. Change over Low Level host demos to use the new routine. 16 years ago
Dean Camera 84d7783350 Remove ConfigDescriptor.c/.h files from the ClassDriver Host demos, as they will be obsoleted when the Host mode class drivers are complete. Add new StillImage stub class driver common header. 16 years ago
Dean Camera b61049f722 Fixed broken HIDReportParser.c. 16 years ago
Dean Camera c75f8bf223 More Doxygen fixes - ensure no undocumented function parameters. 16 years ago
Dean Camera b7049da11b Enhanced class drivers to use the same public/private section seperations as other portions of the library. 16 years ago
Dean Camera afe6ae1402 Add host mode USB Class driver stubs, add beginnings of a CDC host class driver. 16 years ago
Dean Camera 9fdc53d765 Fix errors from last commit. 16 years ago
Dean Camera 4d3a594f3e Changed per-device controller preprocessor checks over to per-device series for better device control. 16 years ago
Dean Camera 9798440ca4 Changed to new device mode Class Driver function name prefixes to make way for similar host mode Class drivers. 16 years ago
Dean Camera 34f6e0dd33 Deleted Host ClassDriver demos -- not yet started, faster to rebase new ClassDriver demos from the newly schedulerless LowLevel host demos rather than re-convert each demo from the previous scheduler-based implementations. 16 years ago
Dean Camera ccf5bd19f2 Finished basic documentation of all device mode class drivers. 16 years ago
Dean Camera 1c12341cd7 Completed documentation of the HID device class driver. 16 years ago
Dean Camera bde64666fb Finished CDC device class driver documentation. 16 years ago
Dean Camera ac70ddd0a1 Converted Host mode demos to schedulerless. Fixed host mode broken due to earlier Start-of-frame event experiments. 16 years ago
Dean Camera 6a7c298c0f Synchronise with the 090605 release. 16 years ago
Dean Camera 3d1baa6f95 Added multiple Report ID support to the HID class driver. Removed OUT endpoint support from HID driver (all OUT reports are now processed through control requests) as a seperate endpoint had issues with determining the exact output report length. 16 years ago
Dean Camera 7665bf323e Fixed EVENT_USB_CDC_ControLineStateChanged() event not taking the CDC interface structure as a parameter. 16 years ago
Dean Camera dc42c5eb6b Added Doxygen documentation to the Audio class driver. Added new modules for each of the new device class drivers to the library documentation. 16 years ago
Dean Camera 4897ef8972 Ensure all USB device class drivers have the same three main functions as their interface for consistency. 16 years ago
Dean Camera a67bd74e3e Minor documentation page updates. 16 years ago
Dean Camera 7c5444b89a Removed new Start of Frame event from the library; performance suffered far too much and it was only useful in one of the standard classes (HID). Altered HID demos to use the previous method of tracking millisecond periods via a hardware timer rather than the SOF events. 16 years ago
Dean Camera 74b7c07e96 Add MIDI class driver, update MIDI device demo to use the new USB class driver. All device demos/projects have now been converted to the new library class drivers, although documentation is yet to be completed. 16 years ago
Dean Camera d1e5266036 Commit of new class abstraction APIs for all device demos other than the MIDI demo - not documented yet. 16 years ago
Dean Camera 2440ca268a Fix broken Host mode, from the recent API changes. 16 years ago
Dean Camera 7eb4eb7cdd Fix all device mode demos broken in the recent API changes. 16 years ago
Dean Camera d0806c817c Deleted StdDescriptors.c, renamed USB_GetDescriptor() to CALLBACK_USB_GetDescriptor, moved ConfigDescriptor.c/.h from the LUFA/Drivers/USB/Class/ directory to LUFA/Drivers/USB/HighLevel/ in preperation for the new USB class APIs. 16 years ago
Dean Camera b3a4d8512b Fixed incorrect PID value being used in the USBtoSerial project (thanks to Phill). 16 years ago
Dean Camera 59becad82f Fix broken doxygen reference in last commit. 16 years ago
Dean Camera 4a8ac5e474 USB_IsConnected is now cleared before the USB_Disconnect() event is fired in response to VBUS being removed. 16 years ago
Dean Camera 2ee9fc7077 Rewritten event system to remove all macros, to make user code clearer. 16 years ago
Dean Camera 72c2922e38 Removed DESCRIPTOR_ADDRESS() macro as it was largely supurflous and only served to obfuscate code. 16 years ago
Dean Camera eeba38e343 Create a new function pointer type in StreamCallbacks.h for endpoint/pipe stream callbacks, to make stream function prototypes clearer. 16 years ago
Dean Camera 32f0f605ef Removed all user pipe/endpoint interrupt APIs, added internal library support for interrupt driven control endpoints when in device mode by defining INTERRUPT_CONTROL_ENDPOINT token and passing it to the compiler via the -D switch. 16 years ago
Dean Camera 0d5baf9bb3 Fixed Device Mode not handling Set Feature and Clear Feature Chapter 9 requests that are addressed to the device (thanks to Brian Dickman). 16 years ago
Dean Camera 4904b10ef6 Moved USB Host state machine code out from USBTask.c and into Host.c, where it more properly belongs. 16 years ago
Dean Camera 958a1b4e2b Fixed Mouse and Keyboard device demos not acting in accordance with the HID specification for idle periods (thanks to Brian Dickman). 16 years ago
Dean Camera 3f48497874 Fix broken Set Feature/Clear Feature chapter 9 request (incorrect status stage clearing). 16 years ago
Dean Camera c7aceb2c7f Serial driver now correctly calculates the baud register value when in double speed mode. 16 years ago
Dean Camera 938f86d063 Fix build errors in Joystick device demo and library LEDs driver (on *nix systems). 16 years ago
Dean Camera 526e398986 Fixed inability to enumerate any devices while in host mode (broken in a previous commit). 16 years ago
Dean Camera 2bd88ebc4f Minor correction to the DevChapter9.c handling of Set and Clear feature requests -- remote wake up requests now complete correctly rather than stalling the request. 16 years ago
Dean Camera a908773a13 Change device demos to cache the board button values in the same manner as the board joystick to maintain consistency. 16 years ago
Dean Camera 63a8f66d92 Changed HWB board driver to Buttons driver, to allow for the support of future boards with more than one mounted GPIO button. 16 years ago
Dean Camera f11f69fd29 Fixed missing semicolon in the ATAVRUSBRF01 LED board driver code, changed LED board driver code to define dummy LED masks for the first four board LEDs so that user code can be compiled for boards with less than four LEDs without code modifications (thanks to Morten Lund). 16 years ago
Dean Camera 253deb996f Changed PIPE_CONTROLPIPE_DEFAULT_SIZE from 8 to 64 to try to prevent problems with faulty devices which do not respect the given wLength value when reading in the device descriptor. 16 years ago
Dean Camera 0137001ea9 Fixed naming of OTG.h functions, to make them consistent with the rest of the library API. 16 years ago
Dean Camera 01c4bef107 More minor renaming of library enums and events to try to create a consistent API. 16 years ago
Dean Camera 6a8e27f7ee Fixed Endpoint_Write_Control_* functions writing more data than expected by the host, causing it to panic (thanks to Johannes Raschke). 16 years ago
Dean Camera 13935a31b9 Fixed reversed signature byte ordering in the CDC bootloader (thanks to Johannes Raschke). 16 years ago
Dean Camera 58e42c6ca9 Fixed SPI driver init function not clearing SPI2X bit when not needed. 16 years ago
Dean Camera e21b620bf6 Move the length decrements in the pipe and endpoint stream functions to the point at which the buffers are operated on, to prevent decrements during iterations where no data is exchanged (thanks to Francisco Moraes). 16 years ago
Dean Camera a504a3a010 Endpoint configuration is now refined to give better output when all configurations have static inputs - removed the now useless STATIC_ENDPOINT_CONFIGURATION compile time token. 16 years ago
Dean Camera c20a94a4e8 Fixed USB_RemoteWakeupEnabled flag never being set (the REMOTE WAKEUP Set Feature request was not being handled). 16 years ago
Dean Camera 9cec85bfd9 Documentation enhancements to improve documentation cross-references. 16 years ago
Dean Camera d860e9e842 USB_HostRequest renamed to USB_ControlRequest, entire control request header is now read into USB_ControlRequest in Device mode rather than having the library pass only partially read header data to the application. 16 years ago
Dean Camera e5e7eaee7a Removed specialized Endpoint_ClearControl* and Pipe_ClearControl* macros in favour of the standard Endpoint_Clear* and Pipe_Clear* macros (Atmel have confirmed no effect from setting FIFOCON on control endpoints). 16 years ago
Dean Camera 37b2130fb2 Changed over all deprecated GCC structure tag initializers to the standardized C99 format (thanks to Mike Alexander). 16 years ago
Dean Camera 663f449c10 Fixed incorrect HID interface class and subclass values in the Mouse and KeyboardMouse demos (thanks to Brian Dickman). 16 years ago
Dean Camera 32e735b2b2 Removed "Host_" section of the function names in ConfigDescriptor.h, as most of the routines can now be used in device mode on the device descriptor. 16 years ago
Dean Camera d38fa49cb6 More documentation changes for better module-level documentation rather than file-level documentation. 16 years ago
Dean Camera 11bb2f2172 Renamed Serial_Stream driver to SerialStream to remain consistent with the rest of the library's naming scheme for files. 16 years ago
Dean Camera 5712b8dff6 Rename Drivers/AT90USBXXX to Drivers/Peripheral. 16 years ago
Dean Camera 710d48a48a Partial commit: Rename references to Drivers/AT90USBXXX to Drivers/Peripheral. 16 years ago
Dean Camera 1c16ae399a Partial commit: change references to Drivers/AT90USBXXX to Drivers/Peripheral. 16 years ago
Dean Camera 8f6b4ddf76 Fixed GenericHIDHost demo report write routine incorrect for control type requests (thanks to Andrei Krainev). 16 years ago
Dean Camera 6a5a37d7d1 The USB_Host_SendControlRequest() function no longer automatically selects the Control pipe (pipe 0), so that other control type pipes can be used with the function. 16 years ago
Dean Camera 557a945ba1 Removed all binary constants and replaced with decimal or hexadecimal constants so that unpatched GCC compilers can still build the code without having to be itself patched and recompiled first. 16 years ago
Dean Camera 7d4cccc22d Move StdRequestType.h, StreamCallbacks.h, USBMode.h from the LowLevel USB driver directory to the HighLevel USB driver directory, where they are more suited. 16 years ago
Dean Camera 6933f2e1a5 All comments in the library, bootloaders, demos and projects have now been spell-checked and spelling mistakes/typos corrected. 16 years ago
Dean Camera fa85c5e416 Commit for the 090401 release. 16 years ago
Dean Camera 3aa8620a61 Minor documentation fixes to correct formatting and typos. 16 years ago
Dean Camera bb4880a9ee Fixed incorrect ADC driver init register manipulation (thanks to Tobias). 16 years ago
Dean Camera 1c9092a8a6 Fixed USBTask.h not conditionally including HostChapter9.h only when CAN_BE_DEVICE is defined (thanks to Ian Gregg). 16 years ago
Dean Camera 4bb59f9673 Fixed documentation typoes and preprocessor checks relating to misspellings of the USE_RAM_DESCRIPTORS token (thanks to Ian Gregg). 16 years ago
Dean Camera 9e9fc97fc9 Fixed typos in the SPI driver SPI_SPEED_FCPU_DIV_64 and SPI_SPEED_FCPU_DIV_128 masks (thanks to Markus Zocholl). 16 years ago
Dean Camera d770d98bca Board Dataflash driver now allows for dataflash ICs which use different shifts for setting the current page/byte address (thanks to Kenneth Clubb). 16 years ago
Dean Camera e611b250c1 Added extra output to makefiles to indicate the currently selected BOARD parameter. 16 years ago
Dean Camera 0214e096a0 Renamed NO_CLEARSET_FEATURE_REQUEST compile time token to NO_FEATURELESS_CONTROL_ONLY_DEVICE and expanded its function to also remove parts of the Get Status chapter 9 request, to further reduce code usage. 16 years ago
Dean Camera 3803976534 Fixed incorrect/missing control status stage transfers on demos, bootloaders and applications (thanks to Nate Lawson). 16 years ago
Dean Camera 7e7124e40b Updated makefiles to reflect new dfu-ee programming target invocations (supplied by Opendous, Inc.). 16 years ago
Dean Camera 5e787a4bb0 Updated changelog to reflect recent commit changes. 16 years ago
Dean Camera 99145a8d7c Makefiles and library modified to add a new F_CLOCK constant to give the unprescaled master input clock frequency, so that the correct PLL mask can be determined even when the CPU (F_CPU) clock rate is prescaled outside the normal input range of the PLL. 16 years ago
Dean Camera 6a10d6b465 Moved all source to the trunk directory. 16 years ago