Dean Camera
b1dbd92c32
Fixed AVRISP PDI race condition where the guard time between direction changes could be interpreted as a start bit. Fixed TPI interface lines not being changed correctly when in bit-banged TPI mode.
2009-12-29 14:43:03 +00:00
Dean Camera
8301dc553e
Fix references to the renamed AVRISP-MKII project folder.
2009-12-27 12:35:31 +00:00
Dean Camera
8cd7e118e9
Fixed ISP mode in the AVRISP programmer project.
2009-12-26 05:20:10 +00:00
Dean Camera
d1608d4af3
Added const where possible to the source functions in the Projects directory.
...
Added command timeout to the AVRISP project so that incorrectly connected targets no longer freeze the device.
Removed string descriptors from the TeensyHID bootloader to reduce its size.
2009-12-26 04:13:55 +00:00
Dean Camera
cda88cf97c
Start of implementation of the low level TPI programming protocol in the AVRISP project.
2009-12-23 12:54:15 +00:00
Dean Camera
37c9ba7fa9
Fixed AVRISP project timeouts not checking for the correct timeout period (thanks to Carl Ott).
2009-12-20 22:33:48 +00:00
Dean Camera
8b75659563
Added new NO_DEVICE_SELF_POWER and NO_DEVICE_REMOTE_WAKEUP compile time options.
2009-12-20 13:00:49 +00:00
Dean Camera
77cd3a42a7
Fixed TeensyHID bootloader not enumerating to the host correctly.
2009-12-20 12:09:22 +00:00
Dean Camera
3b3ea167f0
Renamed HotmailNotifier project to LEDNotifier.
2009-12-18 05:22:57 +00:00
Dean Camera
2cab8f0725
Fixed USB_CurrentMode not being reset to USB_MODE_NONE when the USB interface is shut down and both Host and Device modes can be used (thanks to Daniel Levy).
2009-12-18 00:32:21 +00:00
Dean Camera
c3758ac5ef
Un-inline the SendAddress function in NVMTarget.c/.h of the AVRISP project.
...
Add new HotmailNotifier project, which changes a LED's colour based on the user's unread email count as sent from Windows Live Messenger.
2009-12-17 10:02:19 +00:00
Dean Camera
108a22a66a
The SImage_Host_SendBlockHeader() and SImage_Host_ReceiveBlockHeader() Still Image Host Class driver functions are now public.
2009-12-16 04:03:08 +00:00
Dean Camera
461607020c
Use default NVM base address in the AVRISP programmer project in case the host programmer software doesn't set it correctly.
2009-12-16 03:17:18 +00:00
Dean Camera
79efd8c79e
Fix a bug in the Still Image Host Class driver where the returned block status code was being truncated.
...
Add programming support to the AVRISP project's PDI programming mode; paged memory writes are not currently functional.
2009-12-15 05:17:52 +00:00
Dean Camera
6648234157
Test with -Wextra, fix library warnings due to unused function parameters.
2009-12-13 14:43:34 +00:00
Dean Camera
307ba254d5
The AVRISP project can now enter PDI mode under both bit-bang and hardware USART connection modes, tested against the XPLAIN board hardware. Still need to complete higher level NVM access code so that the device's memories can be read and written.
2009-12-13 12:50:47 +00:00
Dean Camera
1e3513ed70
Add even parity bit to the software USART framing in the AVRISP project's PDI programming code.
2009-12-09 12:31:55 +00:00
Dean Camera
9c8ed168e5
Fix inverted bit-banged USART logic in the AVRISP project for PDI programming. Add a delay to the clock toggling in the AVRISP project to ensure that the programming speed does not exceed 10MHz under any conditions to satisfy the limits in the datasheet for all target voltages. Fix incorrect pin being used as the DATA in in PDI programming mode.
2009-12-09 12:01:01 +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
c1fa230618
Add new USB_Host_GetDeviceStringDescriptor() convenience function.
2009-12-06 13:37:30 +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
478d9dc04f
Added support for the Atmel EVK527 board hardware.
2009-12-04 06:02:28 +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
258a6a0177
Fix the tokens which enable and disable the different programming protocols in the AVRISP project.
2009-12-03 09:12:36 +00:00
Dean Camera
bae00a3d42
Added support for the Dataflash mounted on the XPLAIN board. Added new XPLAIN_REV1 board target for the first revision XPLAIN board, which used a different (smaller) Dataflash IC to later revisions.
2009-12-03 08:59:12 +00:00
Dean Camera
a5adbae652
Document the PDI programming routines implemented so far in the AVRISP project. Add ability to selectively disable ISP programming support in addition to the existing ability to disable PDI programming support.
2009-12-03 07:42:56 +00:00
Dean Camera
fec31947a6
Removed John Steggall's software UART code from the XPLAIN Bridge project due to reliability issues.
2009-12-02 14:03:57 +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
b7f6a65c25
Fixed USB driver failing to define the PLL prescaler mask for the ATMEGA8U2 and ATMEGA16U2.
...
Simplified the USB.h master include file's target validity checks.
2009-11-29 07:41:54 +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
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
c05c7c7df4
Added new XPLAIN serial Bridge project (thanks to John Steggall for the software UART code).
2009-11-25 00:36:18 +00:00
Dean Camera
59ed10273c
Fixed host state machine not enabling Auto VBUS mode when HOST_DEVICE_SETTLE_DELAY_MS is set to zero.
2009-11-24 08:54:41 +00:00
Dean Camera
e4bf986bb3
Fixed broken USB_GetNextDescriptor() function causing the descriptor to jump ahead double the expected amount.
...
Fixed Pipe_IsEndpointBound() not masking the given Endpoint Address against PIPE_EPNUM_MASK.
2009-11-24 01:56:59 +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
86db035b1e
Add activity LED updates to the AVRISP project.
2009-11-23 05:28:08 +00:00
Dean Camera
bcf07edeb2
Commit for the 091122 release.
2009-11-22 04:56: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
79e54580ae
Fixed HOST_STATE_AS_GPIOR being ignored whilst in Host mode (thanks to David Lyons).
2009-11-16 05:45:05 +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
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
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
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
4670b39070
Fixed HID report parser collection paths invalid due to misplaced semicolon in the free path item search loop. Increased the default number of collection paths allowable by the parser.
2009-11-04 07:14:38 +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
5832bab02f
Rename the AT90USBXXX67 internal driver directory to AVRU4U6U7.
2009-11-03 11:11:51 +00:00
Dean Camera
cf610c5c91
Make HID device class driver reselect the correct endpoint after the user callbacks have fired.
2009-10-26 05:27:59 +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
Dean Camera
c3dfc58707
Fix invalid Event name rule in demo/project makefiles.
2009-10-16 08:04:51 +00:00
Dean Camera
dc68de15b6
Make Audio device demos compatible with AVRs running at 16MHz instead of 8MHz.
...
Fix up demo documentation device compatibility list to be as general as possible to reduce changes required as Atmel releases more devices within the same USB AVR series.
2009-10-12 05:59:55 +00:00
Dean Camera
be9d0a5aa9
Added stdio.h stream examples for the virtual CDC UART in the CDC host demos.
...
Removed accidental reference to the incomplete MIDI class bootloader in the Bootloader folder makefile.
2009-10-11 06:14:08 +00:00
Dean Camera
c7bc3ec391
Add new MIDI Host Class driver to the library, and new MIDIHost ClassDriver demo.
...
Make MouseHost and KeyboardHost ClassDriver demos use the HID Class driver's structures for the boot protocol Mouse/Keyboard report data, rather than rolling their own.
2009-10-08 08:46:27 +00:00
Dean Camera
bdedbd558c
Add new MIDIHost LowLevel demo application.
...
Make unfinished device mode applications use the VID/PID reserved for LUFA development devices.
2009-10-08 07:00:44 +00:00
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
b7eead83aa
Cleanups to the Device mode Mass Storage demo applications' SCSI routines.
2009-10-02 07:40:24 +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
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
f5c645296c
Added new MassStorageKeyboard Device Class Driver demo (thanks to Matthias Hullin).
2009-09-21 08:07:26 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
4b35dd1670
Commit for 090810rc1 release.
2009-08-05 07:47:02 +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
Dean Camera
eff07bb877
Fix issue with CDC device demos causing broken communications when the device tries to send data before the host has set the line encoding.
2009-08-04 08:06:26 +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
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.
2009-08-02 11:33:00 +00:00
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).
2009-07-31 00:35:19 +00:00
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.
2009-07-30 14:06:52 +00:00
Dean Camera
ce3ea6fb25
Added standard stream example to the ClassDriver CDC device demo.
...
Fix incorrect HWB button mask in the STK526 Buttons driver.
2009-07-30 10:54:57 +00:00
Dean Camera
bb05712efe
Added 404 errors to the RNDIS Webserver example.
2009-07-29 01:40:42 +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
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.
2009-07-28 13:12:14 +00:00
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.
2009-07-28 13:01:44 +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
cbbd3d746a
Added new Pipe_BoundEndpointNumber() and Pipe_IsEndpointBound() functions.
2009-07-26 10:22:16 +00:00
Dean Camera
200821fe82
Added new LEDs_ToggleLEDs() function to the Board LEDs driver.
2009-07-24 01:44:01 +00:00
Dean Camera
a6e85d6ed8
Added new Benito project, a simple modified USB-to-Serial bridge for the programming of AVRs using the official Arduino bootloader.
2009-07-23 10:39:10 +00:00
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.
2009-07-21 13:31:21 +00:00
Dean Camera
3ee3ed2d6d
Add PrinterHost to the project file and Host LowLevel directory makefile.
2009-07-20 13:41:37 +00:00
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.
2009-07-19 13:17:38 +00:00
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.
2009-07-19 12:36:19 +00:00
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).
2009-07-19 09:04:25 +00:00
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).
2009-07-16 15:00:10 +00:00
Dean Camera
c619e21fa7
Added support for the new ATMEGA32U2, ATMEGA16U2 and ATMEGA8U2 AVR models.
2009-07-16 08:57:51 +00:00
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.
2009-07-16 08:15:27 +00:00
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.
2009-07-15 05:49:19 +00:00
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.
2009-07-13 12:38:30 +00:00
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.
2009-07-13 06:44:14 +00:00
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.
2009-07-13 05:34:43 +00:00
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.
2009-07-13 04:46:52 +00:00
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.
2009-07-11 15:05:56 +00:00
Dean Camera
86e6ed7f31
Dataflash_WaitWhileBusy() now always ensures that the dataflash is ready for the next command immediately after returning, no need to call Dataflash_ToggleSelectedChipCS() afterwards.
...
Added new DATAFLASH_CHIP_MASK() macro to the Dataflash driver, which returns the Dataflash select mask for the given chip index.
Updated MassStorage device block write routines to use ping-pong Dataflash buffering to increase throughput by around 30%.
2009-06-29 09:30:06 +00:00
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.
2009-06-26 09:58:43 +00:00
Dean Camera
bb23e55f11
Fixed MassStorage demo not clearing the reset flag when a Mass Storage Reset is issued while not processing a command.
2009-06-23 08:45:46 +00:00
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.
2009-06-23 08:03:09 +00:00
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.
2009-06-23 07:55:18 +00:00
Dean Camera
189d0c7e66
Add demos/bootloaders/projects overview to the manual.
2009-06-22 11:32:51 +00:00
Dean Camera
7d7573e4e5
Corrected the ADC driver for the ATMEGA16U4 and ATMEGA32U4 (thanks to Opendous Inc.).
2009-06-22 10:23:47 +00:00
Dean Camera
730624f745
Added new USE_INTERNAL_SERIAL define for using the unique serial numbers in some AVR models as the USB device's serial number, added NO_INTERNAL_SERIAL compile time option to turn off new serial number reading code. Updated Mass Storage and CDC based demos to use the new device serial number if the device it is compiled for supports it.
2009-06-21 09:22:31 +00:00
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.
2009-06-20 11:43:26 +00:00
Dean Camera
dfa547164a
Extend USB_GetDeviceConfigDescriptor() routine to require the configuration number within the device to fetch, to add support for multi-configuration devices.
2009-06-19 03:37:47 +00:00
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().
2009-06-18 07:53:51 +00:00
Dean Camera
dcf303762a
Pipe_GetErrorFlags() now returns additional error flags for overflow and underflow errors.
...
Change MIDI demos to use real MIDI command values, and shift for the USB wrapper, rather than shift for the MIDI bytes. This is a little confusing for the MIDI USB wrapper, but allows for the use of real standardized MIDI command values.
2009-06-16 07:17:22 +00:00
Dean Camera
39d07c3da0
Added USB Missle Launcher project, submitted by Dave Fletcher.
2009-06-16 05:53:27 +00:00
Dean Camera
b5ca3990c2
Added new USB_Host_SetDeviceConfiguration() convenience function. Change over Low Level host demos to use the new routine.
2009-06-16 04:20:21 +00:00
Dean Camera
ab76c52e14
Move main library documentation pages into a new ManPages subdirectory.
2009-06-15 13:57:57 +00:00