Dean Camera
31d3984d8d
Fixed Low Speed USB devices broken when using the library HID Class driver (thanks to Michael).
12 years ago
Dean Camera
de0df8b162
Update copyright year to 2013.
13 years ago
Dean Camera
eee252603b
Minor documentation improvements.
13 years ago
Dean Camera
359fbfe14d
Add branch for the conversion of demos to use standard C header files for configuration, rather than makefile defined macros.
13 years ago
Dean Camera
47f6a35013
Reintegrate the FullEPAddresses development branch into trunk.
13 years ago
Dean Camera
2180f57d17
Altered the HID class driver to only try to construct at maximum one packet per USB frame, to reduce CPU usage.
13 years ago
Dean Camera
f1b6ddb710
Update file contributor copyrights for 2012.
13 years ago
Dean Camera
2c806f6cee
Update file header copyrights for 2012.
13 years ago
Dean Camera
f201f6697b
Run wspurify script on /trunk/ and /branches/ C source files, to remove any trailing whitespace at the end of each line.
14 years ago
Dean Camera
eb2e883fd3
Added Class, ClassDevice, ClassHost and ClassCommon to the internal class driver source filenames to prevent ambiguities.
14 years ago
Dean Camera
8df0cf3241
Fixed race conditions in the CDC, HID and Mass Storage class drivers when processing some control requests.
14 years ago
Dean Camera
c6a7a028bd
Merge over core library changes from the MultiArchDemos branch.
14 years ago
Dean Camera
899df7d331
Renamed all low level Endpoint_Read_*, Endpoint_Write_* and Endpoint_Discard_* functions to use the number of bits instead of a symbolic size (Byte, Word, DWord) so that the function names are applicable and correct across all architectures.
...
Renamed all low level Pipe_Read_*, Pipe_Write_* and Pipe_Discard_* functions to use the number of bits instead of a symbolic size (Byte, Word, DWord) so that the function names are applicable and correct across all architectures.
14 years ago
Dean Camera
1daa5e16f9
Initial restructuring of the core USB driver module to support multiple architectures in the future.
14 years ago
Dean Camera
a852ea8e43
Added new KeyboardMouseMultiReport Device ClassDriver demo.
...
Fixed ReportID not being removed from the feature/out report data array in the HID class driver when Report IDs are used.
Added new MAX() and MIN() convenience macros.
15 years ago
Dean Camera
f555ad7ced
Altered all endpoint/pipe stream transfers so that the new BytesProcessed parameter now points to a location where the number of bytes in the transfer that have been completed can be stored (or NULL if entire transaction should be performed in one chunk).
...
Added new Endpoint_Null_Stream() and Pipe_Null_stream() functions.
Removed the NO_STREAM_CALLBACKS compile time option due to the new partial stream transfer feature replacing it.
Fixed errors in the incomplete Test and Measurement device demo preventing proper operation (thanks to Pavel Plotnikov).
15 years ago
Dean Camera
1d433d4506
Update copyright year on all source files.
15 years ago
Dean Camera
cb779e3d7d
Changed over www.fourwalledcubicle.com links to the new www.lufa-lib.org redirect domain, including the new aliased links for LUFA-related pages such as the various download/source control mirrors and support lists.
15 years ago
Dean Camera
b37d77eab3
All USB class drivers are now automatically included when LUFA/Drivers/USB.h is included, and no longer need to be seperately included.
...
All LowLevel demos changed to use the constants and types defined in the USB class drivers.
15 years ago
Dean Camera
5a4def7478
Clean up excessive whitespace at the end of each line using the wspurify tool made by Laszlo Monda
15 years ago
Dean Camera
713670043a
Move out many of the common class driver constants into grouped enums, to make them more managable.
...
Add new CDC descriptor structs to the CDC class driver, so that the CDC demos can use human readable field names.
Rename prefix for Still Image Host class driver functions from "SImage_" to "SI_" to remain consistent with the rest of the driver.
15 years ago
Dean Camera
b48095c0fb
Fixed endpoint selection within the CALLBACK_HID_Device_CreateHIDReport() callback function causing broken GET REPORT requests.
...
Minor whitespace fixes.
15 years ago
Dean Camera
4cc7f5200b
Changed all Device mode LowLevel demos and Device Class drivers so that the control request is acknowledged and any data transferred as quickly as possible without any processing inbetween sections, so that long callbacks or event handlers will not break communications with the host by exceeding the maximum control request stage timeout period.
15 years ago
Dean Camera
7cef08e10e
Fixed HID device class driver still using PrevReportINBuffer for GetReport control requests even when it has been set to NULL by the user application (thanks to Axel Rohde).
15 years ago
Dean Camera
05ac59d0ee
Add new ReportType parameter to the HID class driver device callback and host report sending routines.
...
Renamed internal Host mode Class driver descriptor comparator callback routines so that they all start with a uniform DCOMP_{Class Abbreviation}_ prefix.
15 years ago
Dean Camera
071e02c6b6
Add svn:eol-style property to source files, so that the line endings are correctly converted to the target system's native end of line style.
15 years ago
Dean Camera
a9e0935a90
Device mode class driver callbacks are now fired before the control request status stage is sent to prevent the host from timing out if another request is immediately fired and the device has a lengthy callback routine.
...
Inlined currently unused MIDI ProcessControlRequest routine.
15 years ago
Dean Camera
8252b4febd
Fixed HID Device Class Driver not allocating a temporary buffer when the host requests a report via the control endpoint and the user has set the PrevReportINBuffer driver configuration element to NULL (thanks to Lars Noschinski).
...
Clean up incomplete BluetoothHost debugging commands to use GCC extension to avoid NULL parameters when no formatting is required.
15 years ago
Dean Camera
d49cc0f783
Add more include protection macros to give the user warnings when they try to manually include private driver header files, instead of the public driver headers.
16 years ago
Dean Camera
6122ba93cf
Fix MassStorageKeyboard demo USE_INTERNAL_SERIAL check being performed before the required library headers were included, causing a compilation error.
...
Added notes to the class driver functions indicating which functions require what Device/Host state machine states to function.
16 years ago
Dean Camera
7f9f97c792
Update copyright year to 2010.
16 years ago
Dean Camera
d4ca7fb44c
Fix MIT license language to make its intent clearer.
16 years ago
Dean Camera
8b009bc113
Added new ReportType parameter to the HID Device Class driver CALLBACK_HID_Device_CreateHIDReport() callback to indicate the report type to generate.
16 years ago
Dean Camera
f29fc1abc4
Add double banking property to LUFA powered projects in the Projects directory. Add guards to macro parameters to ensure that formulas passed as parameters don't mess up the internal macro structure.
16 years ago
Dean Camera
f7ab433c67
Add optional double-banking support to the Device mode Class Drivers, on a per-endpoint, per-interface level.
16 years ago
Dean Camera
de8c9445d4
Make HID device class driver ignore the previous HID report comparison buffer when the user sets it to NULL, disabling automatic report comparisons. Update HID device class driver documentation giving previous report buffer limitations.
16 years ago
Dean Camera
cf610c5c91
Make HID device class driver reselect the correct endpoint after the user callbacks have fired.
16 years ago
Dean Camera
94c899d7b7
Fixed Device mode HID Class driver not explicitly initializing the ReportSize parameter to zero before calling callback routine, so that ignored callbacks don't cause incorrect data to be sent.
16 years ago
Dean Camera
665fe11f12
Fixed Device mode HID Class driver always sending IN reports, even when no data is to be reported.
16 years ago
Dean Camera
df29aa37c0
Added flag to the HID report parser to indicate if a device has multiple reports.
...
SetIdle requests to the HID device driver with a 0 idle period (send changes only) now only affect the requested HID interface within the device, not all HID interfaces.
Apply correct fix to the HID report parser for PUSH items - current HID item attribute stack was being copied in the wrong direction.
Fixed HID report parser not resetting the FEATURE item count when a REPORT ID item is encountered.
16 years ago
Dean Camera
c5038f1bf4
Renamed all library events to properly seperate out Device and Host mode events. Changed the firing conditions for some events to ensure that events are fired by their own USB mode only.
...
Remove VBUS events - not needed as the library takes care of VBUS detection and feedback on supported AVRs via the USB_Device_Connected and USB_Device_Disconnected events.
Fixed incorrect Host state assignment in the incomplete BluetoothHost demo.
16 years ago
Dean Camera
6f4cc344ab
Rename TOTAL_NUM_CONFIGURATIONS to FIXED_NUM_CONFIGURATIONS, to match the existing FIXED_CONTROL_ENDPOINT_SIZE compile time option. Add FIXED_NUM_CONFIGURATIONS to the descriptors of each project using the option.
16 years ago
Dean Camera
eb41086947
Fix demos based on the device mode HID class driver, as well as the driver itself. Changed HID device class driver to require the user to give a buffer and size to hold the previously generated report, for comparison purposes, and altered the prototype of the CALLBACK_HID_Device_CreateHIDReport() function so that reports can be sent to the host even if there are no apparent changes (useful for relative movements in mice, etc.).
16 years ago
Dean Camera
7df6b9563c
Add new HID_Device_MillisecondElapsed() function to the HID device Class driver, to move the burden of managing the Idle period of each instance to the library and not the user application.
16 years ago
Dean Camera
7227e133a9
Ensure that the previous HID reports in the HID device class driver are kept per-instance, rather than per-device.
16 years ago
Dean Camera
72932e2780
Fix to HID device mode Class driver, so that new reports are compared against the old, and updated reports made within the idle period are sent immediately to the host.
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
e071f3897a
Added new USB_DeviceState variable to keep track of the current Device mode USB state.
...
Added new Endpoint_ClearStatusStage() convenience function to assist with the status stages of control transfers.
Removed vague USB_IsConnected global - test USB_DeviceState or USB_HostState explicitly to gain previous functionality.
Removed USB_IsSuspended global - test USB_DeviceState against DEVICE_STATE_Suspended instead.
Fixed possible enumeration errors from spinloops which may fail to exit if the USB connection is severed before the exit condition becomes true.
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
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).
...
Added new USE_FLASH_DESCRIPTORS compile time option. By default, descriptors can now lie in mixed memory spaces (specified by a new parameter to the CALLBACK_USB_GetDescriptor() function) unless one of the USE_*_DESCRIPTORS compile time option is specified.
16 years ago