Commit Graph

326 Commits

Author SHA1 Message Date
Dean Camera 6648234157 Test with -Wextra, fix library warnings due to unused function parameters. 2009-12-13 14:43:34 +00:00
Dean Camera 3705330dd3 Use -pedantic compile time option to find and correct several minor code errors. 2009-12-13 14:09:25 +00:00
Dean Camera 7ace314cc1 Increase timeout of Mass Storage and Still Image host commands to 10 seconds (up from 5) to account for slow-processing devices.
Added brace guards to macros with parameters to prevent unintended changed evaluation of the macro expression.

Minor code cleanups (remove redundant comments, fix spacing, etc.).
2009-12-09 00:50:55 +00:00
Dean Camera 2281750b5f Make sure that USB_STREAM_TIMEOUT_MS is set in the MassStorageHost ClassDriver demo, so that slow devices don't time out the data pipe. Increase pipe timeout in both MassStorageHost demos to 5 seconds to account for the really slow devices.
Fix TeensyHID bootloader not properly shutting down the USB interface to trigger a disconnection on the host before resetting the AVR.
2009-12-08 07:43:33 +00:00
Dean Camera 3757b1760f Fix newly renamed VirtualSerial demos' include filename references so that they compile. 2009-12-07 04:49:37 +00:00
Dean Camera cf22a744ec Additional file renames and modifications to change CDC demos to VirtualSerial. 2009-12-07 04:35:59 +00:00
Dean Camera 7a9b3d3641 Rename CDC demos to VirtualSerial. 2009-12-07 04:18:07 +00:00
Dean Camera c49bdcb7c9 Fixed Mass Storage Host Class driver and Low Level demo not clearing the error condition if an attached device returns a STALL to a GET MAX LUN request (thanks to Martin Luxen). 2009-12-04 09:08:48 +00:00
Dean Camera 2919aeeaab Fixed HID Parser not distributing the Usage Min and Usage Max values across an array of report items.
Added new HID_ALIGN_DATA() macro to return the pre-retrieved value of a HID report item, left-aligned to a given datatype.

Added new PreviousValue to the HID Report Parser report item structure, for easy monitoring of previous report item values.
2009-12-04 01:06:26 +00:00
Dean Camera 1b2cd16976 Added CDC_Host_Flush() function to the CDC Host Class driver to flush sent data to the attached device. 2009-11-30 02:20:26 +00:00
Dean Camera 958d28d05d Better checking of whether a packet is received in the RNDISEthernetHost Class driver demo - show busy LED status while packets are being printed out. 2009-11-27 06:32:26 +00:00
Dean Camera 9ba8da7412 Make the RNDISEthernetHost Class driver demo print out incomming packets from the attached RNDIS device. 2009-11-26 11:29:06 +00:00
Dean Camera 2a28862dcc Make MIDI device demos also turn off the on board LEDs if MIDI Note On messages are sent with a velocity of zero, which some devices use instead of Note Off messages (thanks to Robin Green). 2009-11-26 11:16:20 +00:00
Dean Camera 5aa2b26261 Added new RNDIS Host class driver and the beginnings of a RNDISEthernetHost Class Driver demo.
Fixed all Class drivers to ensure they have appropriate guards on each function to ensure the device is enumerated before running, fixed error codes on all guards to return "DeviceDisconnected" where possble.

Renamed HOST_SENDCONTROL_DeviceDisconnect enum value to HOST_SENDCONTROL_DeviceDisconnected to be in line with the rest of the library enum error codes.
2009-11-26 04:46:31 +00:00
Dean Camera ab602a8b48 Fix typo in the StillImageHost LowLevel demo, and the CDC Host Class Driver. 2009-11-25 04:23:40 +00:00
Dean Camera a04131cf04 Fix more Doxygen errors from missing parameter documentation. 2009-11-25 04:13:14 +00:00
Dean Camera 50f4a3b625 Fix build and Doxygen errors. 2009-11-25 03:56:51 +00:00
Dean Camera 8c6c27d88b Added new RNDISHost Host LowLevel demo. Fixed misnamed Pipe_SetPipeToken() macro for setting a pipe's direction. Fixed CDCHost failing on devices with bidirectional endpoints. 2009-11-25 03:26:57 +00:00
Dean Camera d3f11eb528 Make the StandaloneProgrammer project seamlessly read out drive contents from either an attached FAT formatted drive when in host mode, or the onboard FAT formatted dataflash when in device mode. 2009-11-24 14:10:28 +00:00
Dean Camera 702bec892d Fixed misnamed SI_Host_USBTask() and SI_Host_ConfigurePipes() functions. 2009-11-23 13:35:52 +00:00
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. 2009-11-23 13:22:33 +00:00
Dean Camera c438d01f87 Fixed incorrect values for REPORT_ITEM_TYPE_* enum values causing corrupt data in the HID Host Parser. 2009-11-23 13:01:50 +00:00
Dean Camera aaa0bed556 The incomplete StandaloneProgrammer project now uses Host and Device Mass storage classes, so that program data can either be loaded onto the device's Dataflash storage, or read off an attached USB memory stick.
The USB target family and allowable USB mode tokens are now public and documented (USB_CAN_BE_*, USB_SERIES_*_AVR).

The SCSI_Request_Sense_Response_t and SCSI_Inquiry_Response_t type defines are now part of the Mass Storage Class driver common defines, rather than being defined in the Host mode Class driver section only.

The USB_MODE_HOST token is now defined even when host mode is not available.

Added missing CDC_Host_CreateBlockingStream() function code to the CDC Host Class driver.
2009-11-23 12:40:14 +00:00
Dean Camera 6e867f7d9b Removed code to zero reports between two keyboard reports with differing number of pressed keys, as this relied on non-standard OS behaviour. 2009-11-23 05:45:59 +00:00
Dean Camera 6c38ca2890 Fixed Endpoint_Write_Control_Stream_* functions not sending a terminating IN when the given data length is zero. 2009-11-20 06:56:43 +00:00
Dean Camera 7ef58eef7a Fixed LowLevel Keyboard demo not saving the issued report only after it has been written to the endpoint.
Added support for multiple keyboard keycodes in a single report to the LowLevel and ClassDriver Keyboard demos.
2009-11-20 04:39:41 +00:00
Dean Camera d753512cca Fix doxygen documentation - doxygen was getting confused on the variable-length ATTR_NON_NULL_PTR_ARG() macro used on function prototypes and was generating many return types for several functions in the documentation (thanks to David Lyons). 2009-11-17 11:28:07 +00:00
Dean Camera 9b20114555 Make RNDISHost demo validate the set Packet Filter to ensure that it is being sent correctly.
Add new (incomplete) StandaloneProgrammer project, using the ELM Petite FAT library to read files stored on the board's dataflash by the host.
2009-11-17 10:32:17 +00:00
Dean Camera 21cc9c9e19 Cleanups to the MassStorage Device demos, and the MassStorage Device Class driver. 2009-11-15 12:50:23 +00:00
Dean Camera 588886878e Corrections, improvements and additions to the incomplete RNDISHost demo.
Change device demos which use the joystick to use the natural UP, DOWN, LEFT, RIGHT ordering in all demos when checking the joystick's position.
2009-11-13 13:24:04 +00:00
Dean Camera e625fd6df3 Corrected the name of the misnamed USB_GetDeviceConfigDescriptor() function to USB_Host_GetDeviceConfigDescriptor(). 2009-11-13 10:07:25 +00:00
Dean Camera 2626ecb261 Extend incomplete RNDISHost demo -- can not enumerate a RNDIS device correctly and set the packet filter. No packets are received yet from the test device, need to investigate additional SET commands to see if any critical OIDs have been missed. 2009-11-13 07:23:31 +00:00
Dean Camera 6a46f0025a Add beginnings of a RNDIS Ethernet Host demo. 2009-11-12 10:43:07 +00:00
Dean Camera 04774208b6 Minor code cleanups for clarity. 2009-11-11 09:09:39 +00:00
Dean Camera c1782ac024 Added new stream creation function to the CDC Class drivers, to easily make standard streams from CDC Class driver instances. 2009-11-10 06:22:03 +00:00
Dean Camera d6edfe35c8 Spell check all source code variables, comments and strings. 2009-11-09 13:15:28 +00:00
Dean Camera 8bb007f80b Fixed HID host Class driver report send/receive report broken when issued through the control pipe.
Make Mass Storage device Class driver accept resets at any time, rather than just after a command block has been processed.

Remove the HID device parser from the boot protocol Keyboard/Mouse demos.
2009-11-09 08:24:01 +00:00
Dean Camera 4dde844e9f Remove dependancies from the LowLevel demos to the ClassDriver demos, since the use of ClassDriver headers now outputs an error when NO_STREAM_CALLBACKS is used. 2009-11-08 21:56:18 +00:00
Dean Camera 34dc7f241f Make Low Level host demos use void pointers for the configuration descriptor, to prevent warnings when passed to the altered configuration descriptor parsing routines.
Added preprocessor checks to give a human readable error when the class drivers are used when the incompatible NO_STREAM_CALLBACKS compile time option is used.
2009-11-07 07:23:03 +00:00
Dean Camera 64e5c4084f Add optional pipe double banking support to the Host mode Class drivers.
Descriptor processing routines now pass around void pointers rather than uint8_t pointers, as their destination datatype is know well known -- they are just streams of bytes until they are cast to the correct destination type by DESCRIPTOR_CAST.
2009-11-07 03:51:24 +00:00
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. 2009-11-06 14:32:01 +00:00
Dean Camera f7ab433c67 Add optional double-banking support to the Device mode Class Drivers, on a per-endpoint, per-interface level. 2009-11-06 13:43:18 +00:00
Dean Camera 8ba51f090f Added new Printer Host mode Class driver.
Added new Printer Host mode ClassDriver demo.

Added table of supported classes and modes to the main USB Class Driver documentation.
2009-11-04 13:16:53 +00:00
Dean Camera ba8ffa4cb7 Add support for Mouse Scrollwheel to the MouseHostWithParser demos. 2009-11-04 05:18:43 +00:00
Dean Camera 87b2572ae5 Added new JoystickHostWithParser demos to the library.
Add some missing documentation to some of the library demos.
2009-11-04 04:55:10 +00:00
Dean Camera f93f732108 Update DevChapter9.c - use the Endpoint_ClearStatusStage() function where possible to reduce code size and (potentially) allow for centralized status stage timeouts.
Fix Joystick device demo HID descriptors - buttons should be placed outside the Pointer collection.
2009-11-04 04:17:11 +00:00
Dean Camera 0899deaae3 Add new CDCMouse ClassDriver device demo, combining a CDC Virtual Serial Port and a HID Mouse. 2009-11-03 12:12:07 +00:00
Dean Camera 5832bab02f Rename the AT90USBXXX67 internal driver directory to AVRU4U6U7. 2009-11-03 11:11:51 +00:00
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. 2009-10-26 11:44:36 +00:00
Dean Camera de70f0f1cf Moved USBtoSerial demo the Projects directory, as it is simply an expanded CDC demo. Added const qualifier to Endpoint/Pipe stream write routines. 2009-10-18 05:35:48 +00:00