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.
15 years ago
Dean Camera
c5eeedd522
Removed interrupt disable/enable from the Device mode control request processing routines, as they can cause problems with user code and can cause infinite spinlocks under some circumstances.
...
Added new LUFA logo from EDIGMA.COM.
15 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
a789619fbe
Renamed USB_Device_SetHighSpeed() to USB_Device_SetFullSpeed() so that the correct terminology is used (thanks to Brian Dickman).
...
Fix USB_PLL_Off() call in the series 4, 6 and 7 microcontroller disconnect interrupt handler code, which wasn't guarded by a test of USB_Options to check if the user has specified manual PLL control (thanks to Brian Dickman).
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
41babf1cb7
Fix incorrect configuration in the ClassDriver AudioOutput demo.
...
Make all audio device Class Driver functions require a reference to the Audio class instance, so that the endpoint size can be checked (and to standardize the APIs).
Make LEDs more responsive in the AudioOutput device demos.
16 years ago
Dean Camera
ce3ea6fb25
Added standard stream example to the ClassDriver CDC device demo.
...
Fix incorrect HWB button mask in the STK526 Buttons driver.
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
bb05712efe
Added 404 errors to the RNDIS Webserver example.
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.
...
Fixed HID Report Descriptor Parser not correctly resetting internal states when a REPORT ID element is encountered.
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.
...
Completed host CDC class driver enumeration code.
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
3991c94b38
Ensure new Benito Programmer project matches Don's established LED behaviour - flash LED while generating target /RESET pulse, ping-pong LEDs during enumeration.
16 years ago
Dean Camera
a6e85d6ed8
Added new Benito project, a simple modified USB-to-Serial bridge for the programming of AVRs using the official Arduino bootloader.
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.
...
Add explicit support for the AT90USB646 to the Teensy bootloader now that PJRC have released the Teensy++ board.
Ensure unfinished SideShow demo uses an unallocated PID value within the LUFA range.
16 years ago
Dean Camera
7a5d045987
Slight changes to TeensyHID bootloader to ensure it builds under the 2KB boundary.
...
Changed USB_Init() and USB_Shutdown() so that they are no longer dependant on oneanother for possible code savings when the interface is never explicitly shut down.
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
44179abcf8
Add PrinterHost demo to the documentation.
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
4f747e7b76
Change Doxygen configuration files to not produce 4096 directories for the documentation files -- the LUFA components do not generate enough documentation files to justify the large performance hit of creating so many directories.
...
Fix missing Doxygen documentation in the Class Driver Mass Storage Device demo.
16 years ago
Dean Camera
3ee3ed2d6d
Add PrinterHost to the project file and Host LowLevel directory makefile.
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).
...
Fixed error in new pipe stream function template system not setting the right device token for R/W operations (also thanks to John Andrews).
16 years ago
Dean Camera
cf313989e6
Don't send terminal RESET codes via serial - just set the foreground colour and assume the user has the background set to something sane, so that the demos don't wipe out custom user terminal settings.
16 years ago
Dean Camera
786479faf0
Add partial project documentation to the incomplete PrinterHost demo.
...
Change over Printer_GetDeviceID() to require a pointer to the destination buffer plus the buffer size, rather than using a pointer to a special structure.
Make new Printer_SendData() function to hide the implementation of sending data to an attached printer, cleaning up the main demo source file body.
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
d6543dee0d
Minor updates to the Magstripe and MissileLauncher projects to fix bugs and improve performance.
...
Fixed error in GenericHID descriptors preventing it from passing the USB-IF HID tests (thanks to Søren Greiner).
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).
...
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
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.
...
Fix Keyboard and Mouse demos, Idle period is now multiplied by 4 as the period is read into and sent out of the device to ensure it is always stored as a multiple of 1ms. Fixes Keyboard demo using an initial Idle period of 2s rather than 500ms (thanks to Brian Dickman).
Move out the internal device serial descriptor reading routine into a seperate static function, rather than being part of USB_Device_GetDescriptor.
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
1d26e78258
Added compatibility list to the documentation of each individual demo.
...
Documented FAST_STREAM_TRANSFERS compile time option.
Reduced the TCP window size for the RNDIS demos (Class and LowLevel) to make them compatible with the AT90USB64x.
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.
...
Added verbose documentation for each of the USB Host state machine states.
16 years ago
Dean Camera
a54ed0085b
Seperated out parts of the PrinterHost incomplete demo into a seperate Lib subdirectory.
...
Fixed Host mode to Device mode UID change not causing a USB Disconnect event when a device was connected.
16 years ago