Commit Graph

150 Commits

Author SHA1 Message Date
Dean Camera e57e08c672 Fixed PrinterHost demo returning invalid Device ID data when the attached device does not have a device ID (thanks to Andrei Krainev). 2009-09-28 15:56:27 +00:00
Dean Camera 409c49f057 Doxygen fixes to \param directives to give data direction in all projects. Make HID item filtering routines clearer in the HID WithParser demos. 2009-09-24 02:05:33 +00:00
Dean Camera 573a27d90a Fix incorrect names for the HID Host protocol setting routines. 2009-09-24 01:52:57 +00:00
Dean Camera f0fcffd146 Fix more build errors in the LowLevel "WithParser" HID Host demos. 2009-09-22 10:05:17 +00:00
Dean Camera 073a58cd29 Fix broken Host ClassDriver MouseHostWithParser demo. 2009-09-22 09:52:25 +00:00
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. 2009-09-22 08:07:48 +00:00
Dean Camera 242303c160 Add new attributes to the HID Report Parser and HID Host Mode Class driver to keep track of the largest report the device can send for buffer allocation purposes. Change MouseHostWithParser and KeyboardHostWithParser demos to only allocate the needed number of bytes. 2009-09-21 12:23:09 +00:00
Dean Camera 3ffa7543a0 Finish initial draft of the Host Mode HID Class driver.
Add new MouseHostWithParser and KeyboardHostWithParser Host Class driver demos.
2009-09-21 10:49:06 +00:00
Dean Camera 6bbd2a99c2 Fix building of KeyboardHostWithParser and MouseHostWithParser demos broken by HIDParser API changes. 2009-09-21 06:32:16 +00:00
Dean Camera 9d6a373cb6 Add const qualifiers to Host mode Class drivers.
Fix KeyboardHost ClassDriver demo; boot protocol keyboard report structure in the Host Mode HID Class driver uses the full keycode array from the attached device.
2009-09-21 06:08:39 +00:00
Dean Camera 6c5c9212d8 Add KeyboardHost HID Host Class driver demo to the library. 2009-09-20 12:46:26 +00:00
Dean Camera aa640330a1 Finish Class Driver MouseHost demo. Update HID Host Class driver; boot protocol now works, still need to finish and test report protocol mode. 2009-09-20 12:34:07 +00:00
Dean Camera 51566d1a81 Added new Pipe_IsFrozen() macro to determine if the currently selected pipe is frozen.
Added new USB_GetHIDReportSize() function to the HID report parser to retrieve the size of a given report by its ID.

More additions to the unfinished HID Host Class Driver.
2009-09-20 12:01:25 +00:00
Dean Camera cd0adb7574 Added support for the officially recommended layout of the external peripherals connected to the BUMBLEB board.
Added flag to the HID Host Class driver to indicate the currently selected reporting protocol.
2009-09-17 23:34:16 +00:00
Dean Camera 7c6b2019a3 Fix Mass Storage Host Class driver GetMaxLUN command - incorrect function return codes used in comparison to check for success.
Add HID Host Class driver functions to set the report protocol, add more class driver documentation.
2009-09-17 13:12:21 +00:00
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.
2009-09-09 13:17:04 +00:00
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.
2009-09-09 08:34:24 +00:00
Dean Camera 331929833d Add Host mode Class driver demo summaries. 2009-09-09 04:22:49 +00:00
Dean Camera d2068d878c Finish Still Image Host class driver. 2009-09-09 04:18:37 +00:00
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.
2009-09-07 10:50:58 +00:00
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.
2009-09-06 05:58:40 +00:00
Dean Camera 064e6a2f32 Changed Still Image Host class driver to auto-fill TransactionID element of sent headers depending on the current session state.
CDC based demos and project now work under 64 bit versions of Windows (thanks to Ronny Hanson, Thomas Bleeker).

The Benito Programmer project now has its own unique VID/PID pair allocated from the Atmel donated LUFA VID/PID pool.
2009-09-06 04:15:35 +00:00
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".
2009-09-02 13:08:55 +00:00
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. 2009-09-02 07:16:52 +00:00
Dean Camera ecf7c18cf2 Fixed error in PrinterHost preventing the full page data from being sent to the attached device. 2009-09-02 00:27:52 +00:00
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.
2009-09-01 13:35:30 +00:00
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. 2009-08-31 08:27:48 +00:00
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. 2009-08-31 07:48:32 +00:00
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.
2009-08-30 11:36:04 +00:00
Dean Camera 0f51db56c0 Replace -finline-limit with -fno-inline-small-functions in project makefiles. 2009-08-30 06:52:03 +00:00
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).
2009-08-27 13:12:44 +00:00
Dean Camera 754ea083d4 Fix memory corruption in Host mode Mass Storage Class driver. 2009-08-27 08:01:33 +00:00
Dean Camera 559ca2ba04 Added MS_Host_TestUnitReady() and MS_Host_ReadDeviceCapacity() to the host mode Mass Storage Class driver. 2009-08-26 08:20:55 +00:00
Dean Camera a765f71727 Add SCSICodes.h to the Class Driver Common folder, and automatically include it in both the Host and Device Mass Storage Class drivers. Delete existing version from the ClassDriver MassStorage device demo's /Lib/ folder. 2009-08-26 07:51:40 +00:00
Dean Camera 31d8ebebc0 Oops: Really disable building of Projects/Host/ClassDriver directory in the Projects/Host/ makefile.
Add more skeleton functions and definitions to the Mass Storage Host mode Class driver.

Made Endpoint_Write_DWord_* functions echo the structure of the matching Endpoint routines for clarity.
2009-08-26 07:34:31 +00:00
Dean Camera ee744abb7e More work on the Mass Storage Host mode Class driver.
Added  ATTR_NON_NULL_PTR_ARG() attributes to the class drivers to improve user code reliability by disallowing explicit NULL pointers as pointer parameters in function calls where the parameter must not be NULL.

Disabled building of the Demos/Host/ClassDriver directory until Host Mode Class drivers are complete to prevent build errors in the meantime.
2009-08-26 07:01:32 +00:00
Dean Camera 99abd1a8b7 Added explicit attribute masks to the device mode demos' descriptors. 2009-08-13 08:14:16 +00:00
Dean Camera df5500e81c Added CDC_Device_Flush() command to the CDC Device mode class driver.
Minor updates to the unfinished SideShow demo for clarity.

Added unfinished MassStorageHost class driver demo.
2009-08-13 06:43:17 +00:00
Dean Camera c86491af8b Add new functions to the HID host class driver, refine HID interface protocol matching.
Remove stray state variable from the CDC host class driver.
2009-08-11 09:12:29 +00:00
Dean Camera a2001ac1cc Fixed swapped paremeters in the HID state memory copy call while processing a HID PUSH item in the HID report parser.
Fixed memory corruption HID report parser when too many COLLECTION or PUSH items were processed.

Make RNDIS device class driver include the CDC device class driver header, so that it can inherrit the required CDC functional descriptor macro.

Make HID host class driver include the HID report parser.
2009-08-11 08:36:25 +00:00
Dean Camera 8711dc7ced Fix issue in CDC device class driver where received data the size of the data endpoint could lock up the driver.
Further work on the new CDC and HID host mode class drivers.

Reset changelog et. al. to reset development information for the new version currently under development.
2009-08-11 01:52:15 +00:00
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.
2009-08-07 00:27:11 +00:00
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.
2009-08-06 14:22:04 +00:00
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.
2009-08-05 11:39:28 +00:00
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.
2009-08-05 06:36:31 +00:00
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. 2009-08-02 23:14:30 +00:00
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.
2009-07-28 15:14:54 +00:00
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.
2009-07-28 13:53:52 +00:00
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. 2009-07-27 23:19:17 +00:00
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. 2009-07-27 10:55:21 +00:00