Dean Camera
433399b05d
Changed Audio Class driver sample read/write functions to be inline, to reduce the number of cycles needed to transfer samples to and from the device (allowing more time for processing and output).
...
Fixed ClassDriver AudioOutput demo not selecting an audio output mode.
2009-10-03 07:59:32 +00:00
Dean Camera
3ebfb998ec
Added support for the Atmel XPLAIN board.
2009-10-02 09:11:37 +00:00
Dean Camera
b7eead83aa
Cleanups to the Device mode Mass Storage demo applications' SCSI routines.
2009-10-02 07:40:24 +00:00
Dean Camera
3ecc462954
Added pinouts to the AVRISP project for a standard ISP 6 Pin header to make construction of a standard ISP programmer easier.
2009-10-01 09:41:13 +00:00
Dean Camera
2f643f6143
Added new HID_HOST_BOOT_PROTOCOL_ONLY compile time token to reduce the size of the HID Host Class driver when Report protocol is not needed.
2009-09-30 08:16:42 +00:00
Dean Camera
baa1b22654
Fixed issue in the HID Host class driver's HID_Host_SendReportByID() routine using the incorrect mode (control/pipe) to send report to the attached device.
2009-09-30 07:58:17 +00:00
Dean Camera
89c837ee34
Removed mostly useless "TestApp" demo, as it was mainly useful only for checking for sytax errors in the library.
...
MIDI device demos now receive MIDI events from the host and display note ON messages via the board LEDs.
Added beginnings of a MIDI class bootloader.
2009-09-30 04:40:36 +00:00
Dean Camera
7977663f62
Add information on the new MouseHostDevice dual role demo to the library documentation. Add a 0x prefix to the LUFA_VERSION_INTEGER define to ensure that it is stored as BCD, and not an octal value.
2009-09-29 07:15:09 +00:00
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
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
576f40f5ae
Move Dataflash operational checking code out from SCSI.c into the DataflashManager.c in the Device mode Mass Storage demos.
2009-09-22 07:53:57 +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
f5c645296c
Added new MassStorageKeyboard Device Class Driver demo (thanks to Matthias Hullin).
2009-09-21 08:07:26 +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
7478b387a9
Oops - Keyboard boot report structure should be an array of 6 keycodes.
2009-09-20 13:01:45 +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
eaa914a4e4
Fix LUFA event list generation rule in the main LUFA makefile (thanks to Thomas Bleeker).
2009-09-14 06:01:32 +00:00
Dean Camera
eee712f769
Fixed MIDI Device Class driver not sending/receiving MIDI packets of the correct size (thanks to Thomas Bleeker).
2009-09-14 05:57:17 +00:00
Dean Camera
93b24a25df
Fixed Low Level USBtoSerial demo not storing received characters (thanks to Michael from DirectAid.ca).
2009-09-13 08:29:31 +00:00
Dean Camera
81b618be23
Revert changed CDC_Device_Flush() prototype accidentially changed in the last commit.
2009-09-10 07:05:26 +00:00
Dean Camera
e918d977b1
Prevent the CDC Device Class driver from sending empty IN packets on every service task call - only send termination packets when data is in the endpoint.
2009-09-10 06:41:57 +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
c8b72f955f
Corrected incorrect signature bytes for the AT90USB82 and added support for the ATMEGAXX2 variant AVRs to the DFU bootloader.
...
Added warning to the EVENT_USB_Device_Connect() and EVENT_USB_Device_Disconnect() events that they may be fired multiple times during device enumeration on the series 2 AVRs.
2009-09-07 07:57:00 +00:00
Dean Camera
1190652c0b
Fixed DFU and CDC class bootloaders on the AT90USBXXX2 series USB AVRs.
2009-09-06 20:30:26 +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
0fdc1a2bc6
Changed HIDParser to only zero out important values in the Parsed HID Report Item Information structure to save cycles.
2009-09-01 15:46:46 +00:00
Dean Camera
113df4878b
Fix up MissileLauncher demo's ConfigurationDescriptor.c so that it uses the new USB_GetDeviceConfigDescriptor() function parameters.
2009-09-01 13:57:47 +00:00
Dean Camera
0e2ffebb82
Added documentation for the constants and enums of the new StillImage Host Class driver added to the library so far.
2009-09-01 13:47:11 +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
bda4bd4501
Move check for devices not supporting internal serials in demos which make use of USE_INTERNAL_SERIAL to Descriptors.c from Descriptors.h so that the warning is only generated at most once per compilation.
2009-09-01 11:16:57 +00:00
Dean Camera
dac7b046fd
Add return codes to the CDC Host Class driver String/Byte transmission functions.
2009-08-31 13:58:03 +00:00
Dean Camera
cf2776531c
Add extra check for OUT ZLP in the CDC Device Class driver service task to quickly clear zero-length termination packets from the host.
2009-08-31 12:43:28 +00:00
Dean Camera
778da9dc6d
Removed unused INCLUDE_FROM_BOARD_DRIVER internal define from the board driver dispatch headers.
2009-08-31 08:35:52 +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
e2822fb30d
Remove deleted source files from the LUFA library makefile.
...
Renamed parameters of SI_Host_ConfigurePipes() to match other Host mode Class drivers.
2009-08-30 11:40:26 +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
0d3a3f7536
Remove skeleton Audio and MIDI Host mode Class drivers -- will not implement in next release.
2009-08-30 10:43:41 +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
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.
2009-08-27 22:34:41 +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
023838fe4a
Add check to Pipe_IsEndpointBound() in the Mass Storage Host mode Class driver to ensure that multiple instances of the driver can be used on a single device with multiple Mass Storage interfaces.
2009-08-27 11:43:37 +00:00
Dean Camera
f52b265090
Simplified Host mode Mass Storage Class driver to reduce compiled program size.
2009-08-27 08:17:06 +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
cd2dcc9163
Added better USB Class driver overviews.
2009-08-27 07:48:48 +00:00
Dean Camera
d297ea12b7
Added new "Common" section to the class drivers, to hold all mode-independant definitions for clarity.
...
Moved SCSI command/sense constants into the Mass Storage Class driver, instead of the user-code.
2009-08-27 07:38:40 +00:00
Dean Camera
f7cde02b80
Added extra note about missing OUT endpoint configuration to the HID Device mode Class driver.
...
Added pinout information to the AVRISP project.
2009-08-27 07:10:00 +00:00
Dean Camera
665fe11f12
Fixed Device mode HID Class driver always sending IN reports, even when no data is to be reported.
2009-08-27 06:36:01 +00:00
Dean Camera
8ea5c631c8
Minor documentation fixes to the completed Host mode Class drivers.
2009-08-27 06:32:12 +00:00
Dean Camera
f890592806
Completed initial Host mode Mass Storage class driver.
2009-08-27 06:28:18 +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
f547eb3608
Optimized Endpoint_Read_Word_* and Pipe_Read_Word_* macros to reduce compiled size.
...
Fixed Programmer's Notepad project file to reflect new location of AVRISP project.
2009-08-25 14:30:42 +00:00
Dean Camera
4742e95a3f
Fixed AVRISP V2 Protocol handler for the READ_FLASH_ISP and READ_EEPROM_ISP handler - can now correctly read back device data. Programming command handler is still broken, although first page is written correctly to FLASH in paged write mode.
2009-08-25 08:58:48 +00:00
Dean Camera
6d1adf7339
Updated Benito project -- added hardware interrupt and software buffering for serial data reception to prevent missed characters, condensed pulse generation counters into a struct for clarity.
...
Added check to CDC_Device_BytesReceived() to ensure 0 is returned when device is not enumerated to a host.
Move AVRISP project's V2Protocol_DelayMS() function to be static inline, as it is now very minimal. Added extra project doxygen documentation.
2009-08-25 08:09:49 +00:00
Dean Camera
7e74bd3ea2
Moved out target-related V2 protocol commands into a seperate file for the AVRISP project.
...
Added Load Extended Command functionality to the LOAD ADDRESS V2 Protocol command handler for devices with more than 64KB of memory.
2009-08-23 10:17:13 +00:00
Dean Camera
f229502d9a
Fixed AVRISP programmer demo -- can now connect to a target and read/write Sig/Lock/Fuse/OSCCAL bytes successfully.
...
Changed SPI_Init() to allow for the clock polarity and data sample modes to be set.
Changed Dataflash_Init() to no longer call SPI_Init() automatically.
2009-08-23 08:37:11 +00:00
Dean Camera
1e8df8951a
Added V2Protocol handlers to the AVRISP project to enter/exit programming mode, and read/write fuses, lockbits, OSCCAL and Signature bytes.
...
Added ShutDown functions for all hardware peripheral drivers, so that peripherals can be turned off after use.
2009-08-23 04:01:49 +00:00
Dean Camera
2f95eea146
Add LOAD ADDRESS command parsing to the V2 Protocol hander in the AVRISP project.
...
Fix up references to functions in the Endpoint/Pipe documentation.
2009-08-20 07:16:55 +00:00
Dean Camera
083d3615d3
Corrections to the unfinished AVRISP Programmer project to allow AVRStudio to connect to it.
2009-08-19 05:40:05 +00:00
Dean Camera
6d99486791
Fixed invalid data being returned when a GetStatus request is issued in Device mode with an unhandled data recipient.
...
Fix up Programmers Notepad Project file to show new Projects directory layout. Remove now moved AVRISP project from the Projects directory makefile.
2009-08-18 07:42:19 +00:00
Dean Camera
ecd82778cf
Added beginnings of a new AVRISP-MKII clone project.
...
Added new Endpoint_SetEndpointDirection() macro to set the current endpoint direction for bidirectional endpoints.
Renamed internal USB_INT_ENDPOINT_SETUP macro to USB_INT_RXSTPI to fit in with the rest of the interrupt vector macros.
2009-08-17 12:38:24 +00:00
Dean Camera
09bedd6555
Added return values to the CDC and MIDI class driver transmit functions.
2009-08-16 14:30:46 +00:00
Dean Camera
5d4478b3b4
Fix misspelt event name in the Class driver USBtoSerial demo, preventing correct operation.
2009-08-16 12:37:28 +00:00
Dean Camera
b71ff7c8cd
Added new EVENT_USB_Device_StartOfFrame() event, controlled by the new USB_Device_EnableSOFEvents() and USB_Device_DisableSOFEvents() macros to give bus-synchronised millisecond interrupts when in USB device mode.
2009-08-16 08:51:54 +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
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.
2009-08-11 11:19:22 +00:00
Dean Camera
a7ade9f28d
Add CDC Host class driver EVENT_CDC_Host_ControLineStateChanged() event.
...
Minor documentation fixes.
2009-08-11 10:02:50 +00:00
Dean Camera
abc7dce10c
Document CDC Host class driver functions and enums.
2009-08-11 09:54:22 +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
f4814771d2
Completion of initial CDC host mode class driver.
...
Adjustments to the CDC and MIDI device class drivers to use sizeof() on the actual variable being transmitted or received rather than its datatype to reduce possible mistakes.
2009-08-11 02:09:11 +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
a459f10b0c
Commit for the 090810 release.
2009-08-09 09:51:48 +00:00
Dean Camera
d423090b26
Cleanups to RNDIS device demos. Fix issue in RNDIS demos where the memory would become corrupted due to an incorrect bounds check when iterating over the port state table, causing random resets.
...
Revert change to Template_Endpoint_Control_R.c, which broke control stream reads.
Remove uneeded ADC.h include in the class driver AudioOutput demo.
2009-08-07 06:55:31 +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
99c447c754
Fixed issue in USBtoSerial demos where the USART Rx line was not having its pullup enabled at startup, leading to noise being received from the Rx pin when left floating.
...
Removed unused relative Common.h header include from the DriverStubs board stub drivers.
Fixed Benito programmer, use the correct LED functions where needed to ensure correct status display at all times.
2009-08-05 13:16:36 +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
a9d5e129b7
Changed over manual loops waiting for endpoints to be ready to use the library Endpoint_WaitUntilReady() function for robustness. Fixes issues with terminated transfers on the host locking up USB devices.
2009-08-05 09:37:45 +00:00
Dean Camera
4b35dd1670
Commit for 090810rc1 release.
2009-08-05 07:47:02 +00:00
Dean Camera
042d3288ad
Fix incorrect Event call name in USBInterrupt.c.
2009-08-05 07:18:08 +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
357ccc577b
Better fix for LowLevel CDC demo issue where sending data before the line encoding is set will cause a failure of the host to open the port. Added fix to the DualCDC and USBtoSerial LowLevel demos.
2009-08-04 08:36:30 +00:00