Dean Camera
4cc7f5200b
Changed all Device mode LowLevel demos and Device Class drivers so that the control request is acknowledged and any data transferred as quickly as possible without any processing inbetween sections, so that long callbacks or event handlers will not break communications with the host by exceeding the maximum control request stage timeout period.
14 years ago
Dean Camera
1be3436e89
Moved calls to Device mode Class Driver events to after the request has been acknowledged, so that long event handlers do do skew the timing of the control requests.
...
Fixed USBtoSerial and Benito project SetLineEncoding calls failing if the USART is busy, due to the RX ISR delaying the control request handler.
14 years ago
Dean Camera
e966219834
Clarify in the documentation that the Audio demos and driver is for the Audio 1.0 specification, not the newer (and more advanced/less supported) 2.0 specification.
14 years ago
Dean Camera
ff09cf9c73
Fix XPLAINBridge project discarding characters from the USB interface due to a double read from the endpoint.
...
Make XPLAINBridge and USBtoSerial projects more reliable by forcing a flush if the UART-to-USB buffer becomes nearly full.
Reduce locking in the LightweightRingBuffer.h header files by only locking on the update of the buffer count, and require insertions and removals from each buffer to occur in only one execution thread.
Fix CDC_*_ReceiveByte() returning 0 when the interface is not configured, instead of the new -1 error value.
Fix CDC_Host_ReceiveByte() not re-freezing the pipe if no packet has been received.
Remove redundant Pipe token set commands in the CDC and RNDIS host class drivers.
14 years ago
Dean Camera
0f45b9c8e0
More spell checking of all source files -- correct missed errors, switch to EN-GB spelling dictionary.
15 years ago
Dean Camera
24e621a8d8
Altered the CDC Deivice and Host Class drivers' receive byte routines, so that no data is indicated by a negative return value.
...
Added auto flushing of OUT data to the CDC Host Class driver's USBTask function to automatically flush the send pipe buffer.
15 years ago
Dean Camera
97143bf814
Add missing const qualifiers to class drivers.
...
Indent core library function parameters so that there is only one parameter per line, to increase readability.
15 years ago
Dean Camera
f9bcac5e00
Fixed MIDI_Device_SendEventPacket() not correctly waiting for the endpoint to become ready (thanks to Robin Green).
15 years ago
Dean Camera
6b5e684c77
Update makefiles to use the latest WinAVR/Atmel toolchain makefile template.
...
Add new module source variables to the library core makefile, so that module sources can be added to a project's makefile on a per-module rather than per-file basis.
15 years ago
Dean Camera
7cef08e10e
Fixed HID device class driver still using PrevReportINBuffer for GetReport control requests even when it has been set to NULL by the user application (thanks to Axel Rohde).
15 years ago
Dean Camera
0313034245
Added const attributes to some of the class driver function parameters that were missing it.
15 years ago
Dean Camera
deed746d37
Renamed SERIAL_STREAM_ASSERT() macro to STDOUT_ASSERT().
...
Minor tweaks to the library documentation.
15 years ago
Dean Camera
711542ee89
Spell check code and manual pages. Remove custom Doxygen CSS stylesheet, as the new 1.7 Doxygen's default stylesheet is much better.
15 years ago
Dean Camera
a14ece5f57
Change over Doxygen \note documentation to \pre where applicable.
15 years ago
Dean Camera
036a156ff4
Slight improvements to the reliability of the software UART in the XPLAINBridge project.
15 years ago
Dean Camera
5ce3f0b17b
Add missing ATTR_NON_NULL_PTR_ARG and ATTR_ALWAYS_INLINE attributes to class driver functions.
15 years ago
Dean Camera
6d53cdba83
More documentation fixes.
15 years ago
Dean Camera
fc92f9969c
Minor documentation cleanups.
15 years ago
Dean Camera
328ed71ce7
Fix spacing of the function parameter descriptions in the Doxygen documentation.
15 years ago
Dean Camera
05ac59d0ee
Add new ReportType parameter to the HID class driver device callback and host report sending routines.
...
Renamed internal Host mode Class driver descriptor comparator callback routines so that they all start with a uniform DCOMP_{Class Abbreviation}_ prefix.
15 years ago
Dean Camera
071e02c6b6
Add svn:eol-style property to source files, so that the line endings are correctly converted to the target system's native end of line style.
15 years ago
Dean Camera
a9e0935a90
Device mode class driver callbacks are now fired before the control request status stage is sent to prevent the host from timing out if another request is immediately fired and the device has a lengthy callback routine.
...
Inlined currently unused MIDI ProcessControlRequest routine.
15 years ago
Dean Camera
842e219bf3
Added new EVENT_CDC_Device_BreakSent() event and CDC_Host_SendBreak() function to the Device and Host CDC Class drivers.
15 years ago
Dean Camera
cde2afc50e
Ensure that the CDC class drivers return 0 if the number of unread bytes is queried and the bank has become empty.
15 years ago
Dean Camera
9cad677ebb
The Audio_Device_IsSampleReceived() and Audio_Device_IsReadyForNextSample() functions are now inline, to reduce overhead.
15 years ago
Dean Camera
8252b4febd
Fixed HID Device Class Driver not allocating a temporary buffer when the host requests a report via the control endpoint and the user has set the PrevReportINBuffer driver configuration element to NULL (thanks to Lars Noschinski).
...
Clean up incomplete BluetoothHost debugging commands to use GCC extension to avoid NULL parameters when no formatting is required.
15 years ago
Dean Camera
7b79325aa0
Removed two-step endpoint/pipe bank clear and switch sequence for smaller, faster endpoint/pipe code.
...
Added spacing between multiple paragraphs in Doxygen \note sections.
Removed call to the clock prescaler reset function in the Teensy bootloader to save space - the user application is accessed via a watchdog reset anyway, so the prescale reset would only affect the speed of the bootloader itself.
15 years ago
Dean Camera
9257f4ab8e
Add briefs for the library core structures.
15 years ago
Dean Camera
0557676013
Add file-level brief documentation.
...
Remove accidentally duplicated model-specific peripheral driver files.
15 years ago
Dean Camera
071fd8ce53
Revert changes made for the partial port to the AVR32 architecture.
15 years ago
Dean Camera
a7aaa45ec4
More AVR32 achitecture ports.
15 years ago
Dean Camera
d49cc0f783
Add more include protection macros to give the user warnings when they try to manually include private driver header files, instead of the public driver headers.
15 years ago
Dean Camera
7ae91099e9
Fix AVRISP-MKII clone project's TPI Chip Erase command processing - ensure erase location is the high byte in the given address space, check NVMBUSY for completion rather than the NVM Bus Enable bit.
...
Change If-Else chains over to switch statements in XPROGProtocol.c for clarity.
15 years ago
Dean Camera
d26a9ed5fd
Be doubly-certain that the incomming CDC class driver's endpoint/pipe is flushed only once when the bank is empty.
15 years ago
Dean Camera
89e4d73289
Fixed incorrect interface values in the VirtualSerialMouse and KeyboardMouse demo class driver structures.
...
Added caveat information to the CDC device class driver.
15 years ago
Dean Camera
d97db1120b
Added support to the MIDI Class drivers for packed data, where multiple MIDI events are packed into a single USB packet. Added new MIDI Class driver flush routines to override packing behaviour.
15 years ago
Dean Camera
60e9641222
Inline USB management functions in the Class drivers which are standardized but currently unused, to prevent them from using up unneccesary cycles and flash in the user application.
15 years ago
Dean Camera
6122ba93cf
Fix MassStorageKeyboard demo USE_INTERNAL_SERIAL check being performed before the required library headers were included, causing a compilation error.
...
Added notes to the class driver functions indicating which functions require what Device/Host state machine states to function.
15 years ago
Dean Camera
71e5bcee3d
Fixed blocking CDC streams not aborting when the host is disconnected.
15 years ago
Dean Camera
7f9f97c792
Update copyright year to 2010.
15 years ago
Dean Camera
d4ca7fb44c
Fix MIT license language to make its intent clearer.
15 years ago
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.
15 years ago
Dean Camera
6648234157
Test with -Wextra, fix library warnings due to unused function parameters.
15 years ago
Dean Camera
414b92e812
Add to the existing CDC Class Driver's CreateStream() function documentation to explicitly state that the created streams are bidirectional.
15 years ago
Dean Camera
04e177b66e
Fix RNDIS Device Class driver - RNDISConstants.h has moved out to the Common Class driver directory.
15 years ago
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.
15 years ago
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.
15 years ago
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).
15 years ago
Dean Camera
21cc9c9e19
Cleanups to the MassStorage Device demos, and the MassStorage Device Class driver.
15 years ago
Dean Camera
652042111c
Add blocking versions of the CDC Class driver streams, for applications requiring blocking reads.
15 years ago