Dean Camera
849b9535e7
Add new error condition to the HID Report Parser for when a report is parsed but no unfiltered items are encountered (i.e. nothing of interest in the device report). Make all host HID "WithParser" demos print the new error condition.
15 years ago
Dean Camera
3ffa7543a0
Finish initial draft of the Host Mode HID Class driver.
...
Add new MouseHostWithParser and KeyboardHostWithParser Host Class driver demos.
15 years ago
Dean Camera
6bbd2a99c2
Fix building of KeyboardHostWithParser and MouseHostWithParser demos broken by HIDParser API changes.
15 years ago
Dean Camera
b221e7d175
Remove USE_NONSTANDARD_DESCRIPTOR_NAMES compile time token, split out standard descriptors into seperate USB_Descriptor_* and USB_StdDescriptor_* structures so that both can be used within the one project.
...
Add guard to the HID Host Class driver SetProtocol command, to ensure that the device supports boot protocol mode before issuing the request.
15 years ago
Dean Camera
524decdeb3
Change HID report parser so that it can calculate and record the sizes (IN, OUT and FEATURE) of each report within the device, by report ID. This will be required in host mode, so that the host can determine how many bytes of data must be read in for each report.
...
Add to MouseHostWithParser and KeyboardHostWithParser demos to print out the report sizes when a valid device is connected.
15 years ago
Dean Camera
6f993a2f75
Add link to third-party signed version of the official FLIP DFU driver for 64-bit Windows OSes to the DFU bootloader readme file.
...
Add HTML anchor links to URLs in the documentation to ensure that they are rendered correctly in the generated documentation.
15 years ago
Dean Camera
0486f12e3e
Add in new invalid event hook check targets to project makefiles to produce compilation errors when invalid event names are used in a project.
...
Re-add in flip, flip-ee, dfu and dfu-ee targets to project makefiles (thanks to Opendous Inc.)
Fix allowable F_CPU values comment in project makefiles.
15 years ago
Dean Camera
6783bc4594
Add StillImage Host Class Driver functions for opening and closing sessions. Ensure IsActive is set on the interface to allow device functions to run.
...
Fix spelling of "Received" in all source files where it is misspelt "Recieved".
15 years ago
Dean Camera
205b35d131
Add user-filtering to the HID report parser, so that the user code can decide which items are to be stored into the HID_ReportInfo_t structure and which should be discarded to save on RAM usage.
15 years ago
Dean Camera
ecf7c18cf2
Fixed error in PrinterHost preventing the full page data from being sent to the attached device.
15 years ago
Dean Camera
5908e28e8d
Fixed StillImageHost not correctly freezing and unfreezing data pipes while waiting for a response block header.
...
Added basic PIMA commands to the StillImage Host Class driver - need to extend to PIMA specific command functions.
15 years ago
Dean Camera
f9f1bcc25c
Oops - with new changes to the way the device Configuration Descriptor is retrieved from the device, ensure that the correct position pointer is cast when extracting descriptor parameters.
15 years ago
Dean Camera
7fbb759287
Changed the parameters and behaviour of the USB_GetDeviceConfigDescriptor() function so that it now performs size checks and data validations internally, to simplify user code.
15 years ago
Dean Camera
3dce79d68c
Added start of the Still Image Host Class driver demo and driver code.
...
Re-enabled building of the Host mode demos ClassDriver directory.
15 years ago
Dean Camera
0f51db56c0
Replace -finline-limit with -fno-inline-small-functions in project makefiles.
15 years ago
Dean Camera
922e60192d
Condensed SCSI command functions in the LowLevel Mass Storage Host demo, to save on FLASH space.
...
Fixed issue in AVRISP project where the target RESET line was being toggled before it was tristated, causing problems synchronising to some targets (thanks to Mike Alex).
15 years ago
Dean Camera
85c2716f2d
Make Benito ping-pong LED code more explicit, using masks of the TX and RX LED masks for ping-pong toggle rather than the ambiguous LED "Busy" mask.
...
Fix incorrect event name in MassStorageHost.c.
16 years ago
Dean Camera
c830fcb0e1
Make Endpoint control transfers more reliable; early-abort when an incomplete packet is sent from the host (indicating end of transfer), add check for control reads to ensure that no more than wLength bytes are read from the interface.
...
Condense sequential printf_P/puts_P calls to single printf_P calls for size and clarity.
16 years ago
Dean Camera
4421782b7f
Make Control Endpoint stream transfers more reliable by adding in early aborts for unexpected new SETUP tokens, or unexpected status stage during control stream writes.
...
Fix corruption in Device RNDIS demos TCP stack when too many connections attempted simultaneously, freezing the device when a page was re-fetched before the first connection was closed.
Fix incorrect model compatibility information in the Host LowLevel demo overview text files.
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
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
3472af91a5
Change project makefiles so that the current target settings and not just the board selection is printed during the build process.
...
Fix warning in AudioOutput demos when AUDIO_OUT_STEREO output mode is selected.
16 years ago
Dean Camera
200821fe82
Added new LEDs_ToggleLEDs() function to the Board LEDs driver.
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
18f7cd3325
Ensure control pipe is selected in the PrinterHost demo before trying to send control requests.
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
73a21890f6
Added missing DoxyGen configuration file to the PrinterHost demo.
16 years ago
Dean Camera
8a28fd8e6c
Added extra DoxyGen documentation to the new PrinterHost demo.
16 years ago
Dean Camera
3ee3ed2d6d
Add PrinterHost to the project file and Host LowLevel directory makefile.
16 years ago
Dean Camera
2a90f66de2
Moved PrinterHost demo from Incomplete to LowLevel, as it is now near-complete.
16 years ago
Dean Camera
211712d66d
Remove ClearPipeStall routine from the StillImageHost demo, as there is now a version of the function built into the library itself.
16 years ago
Dean Camera
5d8cdd9bea
Fix unfinished printer host demo - some printer languages use embedded NULLs and so strlen() won't work in all cases. Ensure NULL terminator for the test page is not transmitted to the device.
16 years ago
Dean Camera
8a68203d34
Added error codes to most StillImageHost demo commands.
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
cc879df4f0
Use sane ANSI terminal escape codes for the Host mode demos, so that they do not cause eye-searing, unreadable text on terminals which parse the escape codes properly.
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
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
e0af6014a7
Added incomplete PrinterHost demo application.
...
Seperated out Lib components of the incomplete BluetoothHost demo application out into a seperate Lib subfolder.
Changed F_CLOCK entries in project makefiles to alias to F_CPU by default, as this is the most common case.
16 years ago
Dean Camera
f1076ac4d6
Added const modifiers to device mode class drivers.
...
Added parameter directions to function parameter documentation.
Added new experimental FAST_STREAM_FUNCTIONS compile time option to speed up stream transfers at the expense of a higher FLASH consumption (needs testing to verify improved throughput).
16 years ago
Dean Camera
1756087c3e
Optimize vendor/product description string display code in MassStorageHost.
...
Remove all Host mode class demos other than the CDCHost class driver demo, so that they can be re-added as they are made once the host mode class framework is designed.
Fixed USB_Host_SendControlRequest() not re-suspending the USB bus when initial device ready-wait fails.
Fixed USB Pad regulator not being disabled on some AVR models when the USB_OPT_REG_DISABLED option is used.
16 years ago
Dean Camera
b2cf4d3222
Oops - SCSI INQUIRY data uses fixed-length, non-terminated strings -- need to copy the strings to a temp buffer and terminate before using them in printf.
16 years ago
Dean Camera
64937a6206
MassStorageHost demo now retrieves Inquiry data from the device during enumeration, and prints the device's Vendor and Product IDs.
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.
...
Changed Pipe stream functions to automatically set the pipe token, allowing them to be used on bidirectional pipes without having to explicitly call Pipe_SetPipeToken() beforehand.
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
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
beb0b2bda0
Move LUFA compile time options to a new section in the application makefiles for clarity.
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
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.
...
Added new USB_Host_GetDeviceDescriptor() convenience function to retrieve the attached device's Device descriptor.
Make Pipe_ConfigurePipe() mask the given endpoint number against PIPE_EPNUM_MASK to ensure the endpoint IN direction bit is cleared to prevent endpoint type corruption.
Fix documentation mentioning Pipe_GetCurrentToken() function when real name is Pipe_GetPipeToken().
16 years ago
Dean Camera
2b21a1552d
Remove hardcoded DOT path from all Doxygen config files.
...
Better documentation for the MissleLauncher project - add credit to PyLauncher project.
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
b61049f722
Fixed broken HIDReportParser.c.
16 years ago
Dean Camera
c75f8bf223
More Doxygen fixes - ensure no undocumented function parameters.
16 years ago
Dean Camera
afe6ae1402
Add host mode USB Class driver stubs, add beginnings of a CDC host class driver.
...
Split out common defines/types from class drivers into a seperate common class driver directory.
Make central USB Class driver dispatch headers, used for both device and host modes.
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.
...
Fixes to MassStorageHost demo to improve compatibility with more USB drives.
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
f1199200e1
Copy existing Host mode demos to new ClassDriver and LowLevel subfolders.
16 years ago