Commit Graph

139 Commits (eac6205747a0ebd60decc0790d28bf86a1938107)

Author SHA1 Message Date
Dean Camera 1a25b6f5f1 Update the Low Level Audio Input and Audio Output demos to support multiple sample rates.
Remove custom PIDs on the Class Driver Audio device demos and revert back to the original Audio PIDs, as the low level and class driver demo versions are now descriptor compatible once again.
14 years ago
Dean Camera 2731c3a8ae Added new callback to the Audio Class driver to allow for endpoint control manipulations such as data sample rates.
Modified the Class Driver AudioInput and AudioOutput demos to support multiple sample rates.

Fixed KeyboardHost and KeyboardHostWithParser demos displaying incorrect values when numerical keys were pressed.

Fix broken LowLevel audio demo descriptors.

Minor documentation fixes.
14 years ago
Dean Camera 2a26efc691 Altered the definition of the USB_Audio_Descriptor_Format_t descriptor so that the user is now responsible for supplying the supported audio sampling rates, to allow for multiple audio interfaces with different numbers of supported rates and/or continuous sample rates. 14 years ago
Dean Camera aba7932a5c F_CLOCK changed to F_USB to be more descriptive, and applicable on future architecture ports. 14 years ago
Dean Camera 3d4d8e7f62 Add new ARCH option to the makefiles to (eventually) specify the target device architecture. Update non-usb peripheral drivers to reflect future multiple architecture support. 14 years ago
Dean Camera 782614dbb5 Add static keyword to all project globals whose scope should be restricted to the same module as they are declared in.
Tighten up the HID class bootloader code slightly, document that it currently exceeds 2KB of bootloader space for all models other than the Series 2 USB AVRs.
14 years ago
Dean Camera 5995c3f880 Oops - fix missing constants in the TempDataLogger FatFS diskio.h header file.
Add const to all project descriptor definitions for safety.
14 years ago
Dean Camera 1d433d4506 Update copyright year on all source files. 15 years ago
Dean Camera a8b66f318d Documentation improvements - put driver example code into its own section, fix incorrect and missing section names. 15 years ago
Dean Camera 50390867e7 Fixed incorrect PollingIntervalMS values in the demo/project/bootloader endpoint descriptors (thanks to MCS Electronics). 15 years ago
Dean Camera 0ce2950d81 Added board hardware driver support for the Adafruit U4 breakout board.
Fixed calculation of timer register reload values derived from F_CPU; must subtract one from the division result for the compare value to be correct.

Change AVRISP-MKII rescue clock speed to 4MHz to ensure that a 125KHz ISP speed works regardless of the target's fuses (i.e. DIV8 set).
15 years ago
Dean Camera fb76acb084 Renamed the EVENT_USB_Device_UnhandledControlRequest() event to EVENT_USB_Device_ControlRequest() as it is now fired before the library request handlers, not afterwards. 15 years ago
Dean Camera cb779e3d7d Changed over www.fourwalledcubicle.com links to the new www.lufa-lib.org redirect domain, including the new aliased links for LUFA-related pages such as the various download/source control mirrors and support lists. 15 years ago
Dean Camera 08de757811 Changed AudioInput and AudioOutput demos to reload the next sample via an interrupt rather than polling the sample timer. 15 years ago
Dean Camera 55538dcef3 Add descriptor class, subclass and protocol constants to the class drivers, modify all demos to use them where possible.
Move out private/internal host class driver constants to the common class driver headers, so that they can be used in the Low Level host mode demos.

Ensure all demos, projects and bootloaders use the class driver constants where possible to minimise code repetition.
15 years ago
Dean Camera b37d77eab3 All USB class drivers are now automatically included when LUFA/Drivers/USB.h is included, and no longer need to be seperately included.
All LowLevel demos changed to use the constants and types defined in the USB class drivers.
15 years ago
Dean Camera 5a4def7478 Clean up excessive whitespace at the end of each line using the wspurify tool made by Laszlo Monda 15 years ago
Dean Camera 158afe9109 Reverted Endpoint/Pipe non-sequential configuration hack, placed restriction on the configuration order instead to ensure maximum reliability.
Altered all low level device and host mode demos to ensure that endpoints and pipes are configured in ascending order properly.

Rewrote all low level host mode demos' configuration descriptor parser code to ensure that pipes are enumerated in ascending order, and to ensure maximum compatibility with devices.

Incremented all device mode demo's device descriptor revision numbers to ensure that any descriptor changes are re-fetched on machines which have enumerated previous versions.
15 years ago
Dean Camera c0e4f52e8f Fix up incorrect version numbers in demo/project descriptors.
Add class name prefixes to missed constants in the class drivers to give all class driver elements a consistent namespace.
15 years ago
Dean Camera 713670043a Move out many of the common class driver constants into grouped enums, to make them more managable.
Add new CDC descriptor structs to the CDC class driver, so that the CDC demos can use human readable field names.

Rename prefix for Still Image Host class driver functions from "SImage_" to "SI_" to remain consistent with the rest of the driver.
15 years ago
Dean Camera 800485bd95 Remove dfu-programmer program switches, to ensure maximum compatibility with all dfu-programmer versions. 15 years ago
Dean Camera bd85422d2b Added the --suppress-bootloader-mem option to the makefile dfu target, to ensure that writes to the bootloader section of the AVR's flash memory are ignored (thanks to Axel Rohde).
Fixed incorrect command name for EEPROM memory programming in the makefile dfu-ee target.

Makefile whitespace fixes.
15 years ago
Dean Camera 6d2f091cec Make project makefiles correctly clean intermeditary build files from assembly and C++ sources (thanks to Daniel Czigany). 15 years ago
Dean Camera c166dfc64e Added class specific descriptor type defines with standard USB-IF element naming. 15 years ago
Dean Camera 4dece08bef Clarify in the project documentation files what the each of the different USB AVR device "series" comprises of. 15 years ago
Dean Camera 092f82e06f Changed the signature of the CALLBACK_USB_GetDescriptor() callback function so that the descriptor pointer is const, to remove the need for extra casting inside the callback (thanks to Jonathan Kollasch). 15 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. 15 years ago
Dean Camera 508e905d8d Removed complicated logic for the Endpoint_ConfigureEndpoint() function to use inlined or function called versions depending of if the given bank size is a compile time constant, as the compiler does a better job of optimizing with basic code.
Changed over all device demos to use a clearer algorithm for the configuring of the application's endpoints.
15 years ago
Dean Camera 5f3a1b2629 Fix invocations of avr-size in all makefiles broken on unpatched *nix systems, due to the recent update to the latest WinAVR makefile template. 15 years ago
Dean Camera 48c5cdced4 Hide the PROGMEM attribute from Doxygen, as it appears to confuse the parser in some situations. 15 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 28401f7bb7 Spell check all source files once again to find any typos. 15 years ago
Dean Camera 6bda628718 Update all demos, projects and bootloaders to indent all function parameters, one per line, for better readability.
Add missing const qualifiers to the demos.
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 42ac34b484 Change over all makefiles to use C99 standards mode, rather than C99 + GNU Extensions. 15 years ago
Dean Camera 9299735c75 Disable strict aliasing explicitly in the project makefiles, as this is apparently enabled by default in newer AVR-GCC builds, and aliasing is used heavily for type-punning through the LUFA and third party library's codebase. 15 years ago
Dean Camera f4710f6f86 Removed the automated checking of event names in the demo, project and bootloader makefiles due to inconsistancies between the behaviour of the command line tools used to perform the check on each platform.
Removed the internal endpoint and pipe memory allocation macros, as this is already performed directly in the code. Simplify the endpoint and pipe reset procedure.
15 years ago
Dean Camera 3a3a4e2abf Add AVRStudio 4 project files to the ClassDriver Device mode demos. 15 years ago
Dean Camera ae9dab1398 Add missing clean_doxygen phony targets to the project makefiles. 15 years ago
Dean Camera 8b053d6ba5 Added new Drivers/USB/LowLevel/Device.c file to house Device mode specific functions that are more complicated than simple macros. Moved USB_Device_SendRemoteWakeup() to the new Device.c source file and corrected it to unfreeze and restart the USB controller clock before issuing a Remote Wakeup request.
Removed the USB_Device_IsRemoteWakeupSent() and USB_Device_IsUSBSuspended() macros, as they are now obsolete.
15 years ago
Dean Camera 931ca42a6e Minor fixes to demos to add in some missing comments, printf() formatting. Make incomplete Bluetooth demo indicate connections visually via the board LEDs. 15 years ago
Dean Camera 776485a6c5 Remove obsolete entry from the Doxygen configuration files. 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 e331b531c6 Change over instances of "make" in the makefiles to "$(MAKE)" to allow for the make tool to be overridden. 15 years ago
Dean Camera e977774d4e Relocate USBInterrupt.c/.h from the HighLevel USB driver directory to the LowLevel directory as it is hardware-dependent. 15 years ago
Dean Camera 59c4871f80 USB_Init() no longer calls sei() to enable global interrupts - this must now be done in the user application once all init code has run. 15 years ago
Dean Camera 49b09a2042 Standardized the naming scheme given to configuration descriptor sub-elements in the Device mode demos, bootloaders and projects.
Fix errors in the MouseHostWithParser demo from incorrect use of the HID_ALIGN_DATA() macro.
15 years ago
Dean Camera 15f84bb8f5 New BOARD value option BOARD_NONE (equivelent to not specifying BOARD) which will remove all board hardware drivers which do not adversely affect the code operation (currently only the LEDs driver).
Spell-check code/comments in the Webserver/AVRISP-MKII projects.
16 years ago
Dean Camera 77e86e7d82 Exlude the "INCLUDE_FROM_*" macros from the individual project's documentation. 16 years ago
Dean Camera 5f776f4785 Fix up project documentation files' overview tables, so that multiple items occupy multiple lines in the same cell, rather than multiple cells. 16 years ago
Dean Camera db420853ce Add Webserver project Doxygen configuration file and overview document.
Fix Doxygen configuration files' input file exclusion filters.
16 years ago
Dean Camera efb6c35778 Update Doxygen configuration files to the latest Doxygen version. 16 years ago
Dean Camera 7f9f97c792 Update copyright year to 2010. 16 years ago
Dean Camera d4ca7fb44c Fix MIT license language to make its intent clearer. 16 years ago
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. 16 years ago
Dean Camera c3dfc58707 Fix invalid Event name rule in demo/project makefiles. 16 years ago
Dean Camera e53c120a22 Fix AudioOutput and AudioInput class driver demos' descriptors -- incorrect value was being supplied in the audio descritors field giving the number of discrete audio formats the device supports. 16 years ago
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.
16 years ago
Dean Camera 046fff2aff Fix broken Endpoint/Pipe stream templates.
Simplify AudioOutput demos, to reduce the number of cycles needed to process each incomming sample.
16 years ago
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.
16 years ago
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.
16 years ago
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.
16 years ago
Dean Camera 813e6f0318 Remove deleted source files from the Device mode Class driver demos to enable them to be built. 16 years ago
Dean Camera 0f51db56c0 Replace -finline-limit with -fno-inline-small-functions in project makefiles. 16 years ago
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.
16 years ago
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.
16 years ago
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. 16 years ago
Dean Camera bbf89d81fa Make both LowLevel and ClassDriver AudioOutput demos always output to board LEDs, regardless of output mode (removed AUDIO_OUT_LEDS compile time option from the demo). This allows for positive feedback to the user of audio activity regardless of output mode. 16 years ago
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.
16 years ago
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.
16 years ago
Dean Camera 61ff4824a9 Changed AudioOutput demos to explicitly use timer 3 - the smaller USB AVRs where timer 1 was needed instead did not have the endpoint size neccesary for good audio throughput anyway.
Fix Benito documentation indicating erronously that the project used the HID USB class instead of the CDC class.
16 years ago
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. 16 years ago
Dean Camera 4f747e7b76 Change Doxygen configuration files to not produce 4096 directories for the documentation files -- the LUFA components do not generate enough documentation files to justify the large performance hit of creating so many directories.
Fix missing Doxygen documentation in the Class Driver Mass Storage Device demo.
16 years ago
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.
16 years ago
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.
16 years ago
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.
16 years ago
Dean Camera 3cbdcd3686 Reduce struct name pollution - group typedef struct names by class driver name where appropriate. 16 years ago
Dean Camera feabfd12ce Fix makefiles -- the auto-addition of -D switches to each LUFA compile time option was faulty, due to GNUMake becomming confused by the spaces in the USE_STATIC_OPTIONS lines. Make user add in the switches explicitly instead. 16 years ago
Dean Camera beb0b2bda0 Move LUFA compile time options to a new section in the application makefiles for clarity. 16 years ago
Dean Camera f896c00c48 Break device mode class driver interfaces into seperate config and state structs which are then combined, for clarity. Move device mode class driver interfaces back into the device mode class driver headers from the common class headers to make room for host class interfaces. 16 years ago
Dean Camera 2b21a1552d Remove hardcoded DOT path from all Doxygen config files.
Better documentation for the MissleLauncher project - add credit to PyLauncher project.
16 years ago
Dean Camera c75f8bf223 More Doxygen fixes - ensure no undocumented function parameters. 16 years ago
Dean Camera afe6ae1402 Add host mode USB Class driver stubs, add beginnings of a CDC host class driver.
Split out common defines/types from class drivers into a seperate common class driver directory.

Make central USB Class driver dispatch headers, used for both device and host modes.
16 years ago
Dean Camera 4d3a594f3e Changed per-device controller preprocessor checks over to per-device series for better device control.
Fixed error in Endpoint.c using HSOFI rather than SOFI for counting elapsed milliseconds.
16 years ago
Dean Camera 9798440ca4 Changed to new device mode Class Driver function name prefixes to make way for similar host mode Class drivers. 16 years ago
Dean Camera b2330934b9 Some minor whitespace corrections. 16 years ago
Dean Camera 2793c88fc6 Add master device Host demo makefile.
Copy and convert incomplete Bluetooth Host demo to the library.
16 years ago
Dean Camera dd2cc7eda7 Remove outdated AVRStudio project files from demos, projects, bootloaders. Fix makefiles of ClassDriver device demos. 16 years ago
Dean Camera b9b03aadb2 Move new Class Driver powered demos to a new ClassDriver subdirectory, re-add old low level demos to a LowLevel subdirectory. 16 years ago