Commit Graph

765 Commits

Author SHA1 Message Date
Dean Camera 6ee79029d5 Raised the guard bits in the AVRISP-MKII clone project when in PDI and TPI to 32, to prevent communication errors on low quality connections to a target. 2012-03-05 20:25:46 +00:00
Dean Camera 9ffeac6992 Update code and StaticAnlysisTest so that missingInclude warnings do not have to be suppressed, and so that all code except for third party libraries can be checked.
Update SingleUSBModeTest makefile to separate out the messages from the test commands.
2012-03-04 16:15:59 +00:00
Dean Camera e408f92b26 Minor documentation improvements. 2012-03-04 14:43:30 +00:00
Dean Camera 7416ebd7c6 Update StaticAnalysisTest to check for missing header files. Fix found incorrect header file paths in the demos and projects. 2012-02-29 17:04:04 +00:00
Dean Camera bb85d083a7 Fix warnings and errors found by the new cppcheck provided static code analysis. 2012-02-28 20:40:24 +00:00
Dean Camera b7f4370c8e Oops - don't reset AVRISP-MKII timeout in XPROG mode, as this is synchronous serial and data is always received regardless of attached or non-attached target. 2012-02-19 01:30:53 +00:00
Dean Camera 7a1033025b Minor documentation fixes.
Make an explicit constant name for the CMDEX bit of the target's NVM command register in the AVRISP-MKII Clone project.
2012-02-08 21:31:03 +00:00
Dean Camera 18b82b3575 Updated the AVRISP-MKII Clone programmer project to be compatible with the latest version of AVR Studio (version 5.1).
Changed the AVRISP-MKII Clone programmer project to report a fixed 3.3V VTARGET voltage on USB AVRs lacking an ADC instead of 5V to prevent warnings in AVR Studio 5.1 when programming XMEGA devices.
2012-02-08 18:29:17 +00:00
Dean Camera fdab3aef86 Add (still preliminary) support for the ATXMEGA64A4 and ATXMEGA128A4. Fix minor error in the AVRISP-MKII clone project descriptors. 2012-02-05 21:59:35 +00:00
Dean Camera 252bd7bb2c Fixed invalid PID value used in the TempDataLogger project host application (thanks to Anupam Pathak). 2012-02-05 13:16:08 +00:00
Dean Camera f1b6ddb710 Update file contributor copyrights for 2012. 2012-02-04 22:38:44 +00:00
Dean Camera 2c806f6cee Update file header copyrights for 2012. 2012-02-04 22:32:30 +00:00
Dean Camera df33278d91 Minor documentation corrections. 2012-02-04 15:17:49 +00:00
Dean Camera fc4d3ab400 Minor documentation improvements. 2012-02-01 21:28:25 +00:00
Dean Camera 956f9e3709 Fixed AVRISP-MKII Clone timing out on long programming commands such as programming the EEPROM on an ATMEGA8 (thanks to Martin Kelling). 2012-01-30 16:54:09 +00:00
Dean Camera dd312cead4 Make all AVRISP-MKII programmer parameters readable, since there's no real good reason to restrict parameter reads. Fix misspelt target reset polarity EEPROM variable. 2012-01-23 20:28:34 +00:00
Dean Camera 3038ea1c6e USB_CONFIG_ATTR_BUSPOWERED constant renamed to USB_CONFIG_ATTR_RESERVED, as this was misnamed (thanks to NXP Semiconductors). 2012-01-02 05:43:23 +00:00
Dean Camera f201f6697b Run wspurify script on /trunk/ and /branches/ C source files, to remove any trailing whitespace at the end of each line. 2011-12-23 01:51:39 +00:00
Dean Camera 798cc84ff5 Fixed AVRISP-MKII Clone failing to start application firmware once a TPI programming session is exited. 2011-11-29 13:33:28 +00:00
Dean Camera 24ca2d49fe Bit-bang ISP in the AVRISP-MKII clone project needs to set MOSI pin to the MSB of the data byte on startup, not the LSB. 2011-11-29 11:30:25 +00:00
Dean Camera eb2e883fd3 Added Class, ClassDevice, ClassHost and ClassCommon to the internal class driver source filenames to prevent ambiguities. 2011-11-18 06:26:51 +00:00
Dean Camera e30be658c9 Add missing SVN eol-style property to ensure that source code line endings and converted to the native values on checkout. 2011-11-09 23:35:16 +00:00
Dean Camera 46aea9d4ce Update the incomplete StandaloneProgrammer project to be compatible with the latest LUFA core API. 2011-11-09 23:24:11 +00:00
Dean Camera b057041660 Use strcat() in the HTTPServer project instead of using strcpy() and strlen(). 2011-11-09 12:47:15 +00:00
Dean Camera 6564416479 Update host C# applications for VS2010. Make LEDNotifier project host applications only display valid COM port names for the PC it is run on, rather than all possible port names. Add missing property files to the TempDataLogger project host application. 2011-11-09 12:45:10 +00:00
Dean Camera eb5b8a32e4 Added INVERTED_ISP_MISO compile time option to the AVRISP-MKII clone project (thanks to Chuck Rohs). 2011-10-30 14:12:11 +00:00
Dean Camera ab43251bf9 Minor documentation fixes. 2011-10-30 07:09:44 +00:00
Dean Camera 3aa8a69246 Fixed AVRISP-MKII Clone compile warning on AVR8 U4 targets even when NO_VTARGET_DETECT is enabled. 2011-10-18 11:31:03 +00:00
Dean Camera c6d6bdae0a Added reliability patches to the AVRISP-MKII Clone project's PDI/TPI protocols (thanks to Justin Mattair). 2011-10-12 05:31:35 +00:00
Dean Camera db73b11244 Added reliability patches to the AVRISP-MKII Clone project's ISP and PDI/TPI protocols (thanks to Justin Mattair). 2011-10-07 04:40:56 +00:00
Dean Camera b5682f2c44 Add project name to the Doxygen makefile target output. 2011-09-21 06:45:09 +00:00
Dean Camera aae59857a2 Add const qualifier to all PROGMEM data to prevent warnings in newer AVR-GCC compiler versions. 2011-09-21 06:25:31 +00:00
Dean Camera d881e0cbf6 Fixed incorrect buffer size check in the USBtoSerial project (thanks to Yuri A Nikiforov). 2011-09-07 12:05:37 +00:00
Dean Camera e64f4b0cd9 Update the TempDataLogger project and driver documentation to use the new TWI_BITLENGTH_FROM_FREQ() macro. 2011-09-02 04:41:43 +00:00
Dean Camera 9708b45e69 Minor documentation corrections. 2011-08-17 14:51:05 +00:00
Dean Camera fc5fa769ef Pull out architecture specific macros and other definitions into a new common header file. Add new JTAG_DISABLE() macro for the AVR8s to software-disable JTAG debugging using cycle-safe assembly code. 2011-08-16 05:53:04 +00:00
Dean Camera ef4cff29c3 Fix TempDataLogger project logging interval always being 500ms more than the requested interval. 2011-08-16 04:07:39 +00:00
Dean Camera aceb015ea7 Fixed incorrect Dataflash buffer use in the DataflashManager_WriteBlocks_RAM() function of several demos/projects (thanks to Jeremy Willden). 2011-07-30 02:49:59 +00:00
Dean Camera 025742fca8 Added new VTARGET_USE_INTERNAL_REF configuration option to the AVRISP-MKII clone project (thanks to Volker Bosch). 2011-07-26 03:07:32 +00:00
Dean Camera 110711598a Removed the ENDPOINT_DESCRIPTOR_DIR_* macros in favour of the shorter ENDPOINT_DIR_* macros, which can now be used with both Endpoint_ConfigureEndpoint() and in the device descriptors. 2011-07-19 07:02:19 +00:00
Dean Camera 0c2ad9eb34 Add missing SVN eol-style property to files where it was missing. 2011-07-15 08:46:08 +00:00
Dean Camera 3309c00a99 Minor demo/project documentation and style fixes. 2011-07-11 05:49:53 +00:00
Dean Camera d9c16402b9 Add missing device deconfiguration-on-error statements to the host mode demos and projects. 2011-07-08 07:56:40 +00:00
Dean Camera 137ce280c1 Updated all host mode demos and projects to use the EVENT_USB_Host_DeviceEnumerationComplete() event callback for device configuration instead of manual host state machine manipulations in the main application task.
Added new USB_Host_ConfigurationNumber global variable to indicate the selected configuration in an attached device.

Renamed global state variables that are specific to a certain USB mode to clearly indicate which mode the variable relates to, by changing the USB_* prefix to USB_Device_* or USB_Host_*.

Removed the HOST_STATE_WaitForDeviceRemoval and HOST_STATE_Suspended host state machine states, as these are no longer required.

Altered the USB_Host_SetDeviceConfiguration() function to update the new USB_Host_ConfigurationNumber global as required.

Moved out the Host mode standard request convenience/helper functions from the architecture specific Host driver files to the architecture agnostic HostStandardReq.c driver file.
2011-07-08 07:25:56 +00:00
Dean Camera 7932ce86bd Add the GCC -fno-split-wide-types compile time option to some of the larger user projects to reduce the compiled application size. 2011-07-06 02:10:01 +00:00
Dean Camera a09e1cb53b Switch the HTTP Webserver project to use the safer strlcpy() instead of strncpy() to save on manual null-termination. 2011-07-04 09:19:37 +00:00
Dean Camera 04660d3793 Seperate out the device demos and project's configuration descriptor structure definitions to clearly indicate what descriptors belong to which interface. 2011-07-01 05:26:25 +00:00
Dean Camera b162540099 Minor documentation fix for the RelayBoard project. 2011-06-30 12:27:01 +00:00
Dean Camera ca9f89ce82 Add new "checksource" target to the library makefiles, for automated source file existance checking. 2011-06-20 14:38:21 +00:00
Dean Camera dab7e06a4a Split HIDReportViewer project sub-components into seperate functions for readability/convenience. 2011-06-20 02:36:52 +00:00
Dean Camera ea3b5c7423 More cosmetic data output changes to the HIDReportViewer project. 2011-06-20 02:22:34 +00:00
Dean Camera 91bc546be0 Make HIDReportViewer project show the IN, OUT and DATA report sizes as both bits and (rounded) bytes. 2011-06-20 02:08:52 +00:00
Dean Camera bb0b761c65 Make the HID Report Parser Get/Set Report Item routines fail if a NULL pointer to a report item is given.
Minor visual enhancement to the HIDReportViewer project.
2011-06-20 01:57:22 +00:00
Dean Camera 5e0c807708 Fix incorrect printf format specifier in the HIDReportViewer project. 2011-06-20 01:33:42 +00:00
Dean Camera 2e6370a6b9 Add missing project files for the new HIDReportViewer project to upgrade its status to a finished (working) project. 2011-06-19 04:47:53 +00:00
Dean Camera 5ee8068f2c Move the HIDReportViewer project into the normal Projects/ folder and out of the Incomplete/ projects folder. 2011-06-19 04:32:58 +00:00
Dean Camera 6e0adb9872 Switch to using the standard printf() format specifiers in the HIDReportViewer project. 2011-06-19 04:29:03 +00:00
Dean Camera 00acc95ff6 Add new incomplete HIDReportViewer project. 2011-06-16 13:37:45 +00:00
Dean Camera 0ec2b55a7c Add missing SVN eol-style properties to source files to prevent mixed end-of-line characters. 2011-06-16 12:18:46 +00:00
Dean Camera 7dffa15c16 Massive corrections to the project documentation and code comments, thanks to Russian translation services provided by Andrey from Microsin.ru. 2011-06-05 13:55:56 +00:00
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.
2011-06-03 07:56:12 +00:00
Dean Camera f01a05415c Spell check library source code files. 2011-06-01 14:33:40 +00:00
Dean Camera 0b6d5467bc Oops - revert commit of an incomplete port of the AVRISP-MKII project. 2011-05-29 12:47:56 +00:00
Dean Camera ea922c98d1 Added new incomplete AudioInputHost Host LowLevel demo.
Added missing Audio class control request definitions.

Added support for the Audio class GET STATUS request so that it is correctly ACKed when sent by the host.
2011-05-29 12:41:14 +00:00
Dean Camera 348bf33b18 Add the MIDIToneGenerator project to the Projects/ directory makefile clean rule. 2011-05-27 03:45:45 +00:00
Dean Camera 6e7fc21a94 Fix incorrect macro guard in the UC3 EndpointStream header file.
Fix incorrect project name in the Projects/ folder makefile.
2011-05-26 11:37:40 +00:00
Dean Camera edc4db41f4 Update Webserver project to remove DHCP IP configuration status notification. 2011-05-26 10:50:22 +00:00
Dean Camera 24ea531fab Update MediaController project to remove the Record usage (not often needed) and explicitly declare each usage for maximum clarity. 2011-05-23 13:19:13 +00:00
Dean Camera b88e0a7b90 Add new MediaController project, a simple Media Playback control manipulator (Play/Pause/Next Track/Volume/etc.). 2011-05-23 12:54:15 +00:00
Dean Camera 4343e68779 Correct errors in the DHCP Server application in the Webserver project, that was causing random server restarts and/or incorrectly allocated IP addresses. 2011-05-23 07:13:45 +00:00
Dean Camera 3cba88e4c0 Add RNDIS Device support to the Webserver project, so that the files stored on the device can be viewed from a web-browser while the board is plugged into a host machine. 2011-05-22 08:28:40 +00:00
Dean Camera e0852408de Replace cast-as-char* byte access of multibyte variables with proper shifts and masks to preserve endianness across different architectures. 2011-04-13 06:12:52 +00:00
Dean Camera 852b5e612d Remove redundant type information for bitfield elements, other than the signed/unsignedness of the element.
Change type of USB_SelectedPipe and USB_SelectedEndpoint for the AVR32 UC3 architecture to uint32_t to reduce the compiled code size.
2011-04-10 06:43:02 +00:00
Dean Camera c263ea837a Move global interrupt enable/disable functions out to Common.h and document them. 2011-04-08 05:40:25 +00:00
Dean Camera de9bd767dc Correct UC3 global interrupt functions.
Replace all calls and references to _delay_ms() in the code with the architecture-agnostic Delay_MS() function.

Improve code generation for the Delay_MS() function on the AVR8 architecture when called with a constant input.
2011-04-08 05:05:05 +00:00
Dean Camera 70284d390f Add in a new common Delay_MS() function, which provides a blocking delay for all architectures.
Remove use of avr-libc specific ATOMIC_BLOCK, replace with a new per-architecture set of inline functions to retrieve and manipulate the global interrupt enable bit for each architecture.

Add in documentation for the USB controller common interrupt routine which must be linked to the interrupt controller in the user application on the AVR32 UC3 architecture.
2011-04-08 04:49:20 +00:00
Dean Camera 899df7d331 Renamed all low level Endpoint_Read_*, Endpoint_Write_* and Endpoint_Discard_* functions to use the number of bits instead of a symbolic size (Byte, Word, DWord) so that the function names are applicable and correct across all architectures.
Renamed all low level Pipe_Read_*, Pipe_Write_* and Pipe_Discard_* functions to use the number of bits instead of a symbolic size (Byte, Word, DWord) so that the function names are applicable and correct across all architectures.
2011-04-04 12:52:30 +00:00
Dean Camera 8f5ab27dc9 Use the MIN() macro where possible instead of manual "(x < y) ? x : y" constructs. 2011-03-23 09:26:41 +00:00
Dean Camera aba7932a5c F_CLOCK changed to F_USB to be more descriptive, and applicable on future architecture ports. 2011-03-21 10:20:42 +00:00
Dean Camera 1a130eed6c Updated the software USART code in the XPLAIN Bridge application so that the incomming bits are sampled at their mid-point instead of starting point, to give maximum reliability (thanks to Anton). 2011-03-15 04:02:15 +00:00
Dean Camera cf2411435c Removed Pipe_ClearErrorFlags(), pipe error flags are now automatically cleared when Pipe_ClearError() is called.
More UC3B architecture porting.
2011-02-26 20:22:33 +00:00
Dean Camera 66c38cd940 Added TWI baud rate prescaler and bit length parameters to the TWI_Init() function (thanks to Thomas Herlinghaus). 2011-02-26 15:57:06 +00:00
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. 2011-02-19 18:37:22 +00:00
Dean Camera 0019fbd129 Add more const-ness to the stream endpoint/pipe functions where possible. 2011-02-13 21:27:24 +00:00
Dean Camera 3d232953d9 Fix typos in the HID class bootloader makefile. 2011-02-11 20:00:48 +00:00
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.
2011-02-10 17:55:49 +00:00
Dean Camera 5995c3f880 Oops - fix missing constants in the TempDataLogger FatFS diskio.h header file.
Add const to all project descriptor definitions for safety.
2011-02-06 18:03:29 +00:00
Dean Camera a95d224185 Update projects using FatFS and PetiteFatFS to the latest library versions. 2011-02-06 15:17:46 +00:00
Dean Camera 279e1b6ece Fixed programming errors in the AVRISP-MKII project when the programming packet is a round multiple of the endpoint bank size under avrdude (thanks to Steffan Woltjer). 2011-02-04 18:17:31 +00:00
Dean Camera 43b9d552bb Renamed all driver termination *_ShutDown() functions to the more logical name *_Disable(). 2011-01-30 23:12:06 +00:00
Dean Camera 9051d3beb0 Oops - fix up some calls to the old function names, include Serial Peripheral driver in the RNDISEthernetHost project. 2011-01-30 22:42:24 +00:00
Dean Camera afd828c095 Removed SerialStream module, rolled functionality into the base USART Serial peripheral driver instead through the new Serial_CreateStream() and Serial_CreateBlockingStream() methods.
Renamed the Serial byte send/receive functions to remain consistent with the CDC driver's byte functions.

Altered the serial byte receive function to make it non-blocking.
2011-01-30 19:47:31 +00:00
Dean Camera 30f6d2bfd8 Oops - forgot to add in LOGICAL MINIMUM and LOGICAL MAXIMUM report items into the standard library Joystick HID report descriptor macro. Add in support for joystick resolution reporting via PHYSICAL_MINIMUM and PHYSICAL_MAXIMUM items. 2011-01-30 14:40:24 +00:00
Dean Camera e6dc951630 Add new HID_DESCRIPTOR_VENDOR() macro, change over all projects and Device ClassDriver demos to use it.
Fix reversed byte ordering of multi-byte HID data.

Added support to the HID parser for extended USAGE items that contain the usage page as well as the usage index.

Removed the HID_IOF_NON_VOLATILE and HID_IOF_VOLATILE flags from HID INPUT items where the flag is invalid. Changed over HID OUTPUT items to use HID_IOF_NON_VOLATILE.

Change over MagStripe project to use HID_DESCRIPTOR_KEYBOARD() for its HID report. Change over MouseHostDevice demo to use HID_DESCRIPTOR_MOUSE() for its HID report.
2011-01-30 14:14:04 +00:00
Dean Camera 26017b68b0 Changed AVRISP-MKII project to use the Watchdog interrupt for command timeouts, to reduce CPU usage and free timer 0 for other uses in the future. 2011-01-22 17:48:06 +00:00
Dean Camera efd57cfe51 Abuse the the C preprocessor so that the HID macros can automatically encode data into the array from the HID macros automagically, by specifying the bit-width of the data, and the data itself as a single integer value of that width. 2011-01-17 19:44:48 +00:00
Dean Camera 039a714ee4 New HID report item macros (with HID_RI_ prefix) to allow for easy creation and editing of HID report descriptors.
Changed over all project and demo HID report descriptors to use the new HID report item macros.

Moved the HIDParser.c source file to the LUFA/Drivers/USB/Class/Common/ directory from the LUFA/Drivers/USB/Class/Host/.
2011-01-16 19:34:28 +00:00
Dean Camera 32830a2b82 Added new ADC_GET_CHANNEL_MASK() convenience macro to the ADC driver. 2011-01-16 16:13:22 +00:00
Dean Camera 70d55f6e0c Added new high level TWI packet read/write commands, altered behaviour of the TWI_StartTransmission() function.
Spell check source code files.
2011-01-13 22:56:49 +00:00
Dean Camera 9c7594e7db Oops - The DS1307 contains an unused "DayOfWeek" register that must be accounted for in the new unified DS1307 Time/Day read and write routines. 2011-01-13 21:01:05 +00:00
Dean Camera 7776aa4e2e Changed TempDataLogger project's DS1307 driver to simplify the function interface and prevent a possible race condition. 2011-01-13 19:14:38 +00:00
Dean Camera 187ccb2e15 Fix typos and outdated information. 2011-01-10 21:53:38 +00:00
Dean Camera f555ad7ced Altered all endpoint/pipe stream transfers so that the new BytesProcessed parameter now points to a location where the number of bytes in the transfer that have been completed can be stored (or NULL if entire transaction should be performed in one chunk).
Added new Endpoint_Null_Stream() and Pipe_Null_stream() functions.

Removed the NO_STREAM_CALLBACKS compile time option due to the new partial stream transfer feature replacing it.

Fixed errors in the incomplete Test and Measurement device demo preventing proper operation (thanks to Pavel Plotnikov).
2011-01-10 18:43:34 +00:00
Dean Camera d126146887 The FAST_STREAM_TRANSFERS compile time option has been removed due to lack of use and low cost/benefit ratio.
Add GCC_FORCE_POINTER_ACCESS() macro use to the RingBuffer library header, to attempt to force GCC into producing more efficient code for manipulating the buffers.
2011-01-08 00:54:30 +00:00
Dean Camera 1d433d4506 Update copyright year on all source files. 2011-01-01 13:00:56 +00:00
Dean Camera 64fe1cd0b2 Rename RingBuffer header functions and typedefs from RingBuff_* to RingBuffer_* so that it matches the header name. 2010-12-31 14:47:20 +00:00
Dean Camera a8b66f318d Documentation improvements - put driver example code into its own section, fix incorrect and missing section names. 2010-12-26 14:55:26 +00:00
Dean Camera 2073b96d82 Added basic driver example use code to the library documentation.
Made the USARTStream global public and documented in the SerialStream module, allowing for the serial USART stream to be accessed via its handle rather than via the implicit stdout and stdin streams.
2010-12-26 14:25:34 +00:00
Dean Camera 39ac72f2d1 Make a new general RingBuffer.h misc library driver, instead of the per-application LightweightRingBuff.h ring buffers. Change over projects to use the new driver.
Add ORDERED_EP_CONFIG to the device Projects (only) that use only a single class driver, or where the endpoint ordering is fixed, to save on compiled binary size.

Added new GCC_FORCE_POINTER_ACCESS() macro to correct GCC's mishandling of struct pointers.
2010-12-26 13:01:37 +00:00
Dean Camera 12418e6eaf Combined page and word ISP programming mode code in the AVRISP-MKII clone project to reduce compiled size and increase maintainability of the code. 2010-12-25 21:36:17 +00:00
Dean Camera 958b20a8ef Fixed possible programming problem in the AVRISP-MKII clone project when programming specific patterns into a target memory space that is only byte (not page) addressable. 2010-12-25 17:49:30 +00:00
Dean Camera 7d83bd0dcc Add DEVICE_STATE_AS_GPIOR=0 compile time option to the library projects, to reduce compiled binary size. 2010-12-24 18:04:51 +00:00
Dean Camera a57287a59f Fix a few more incorrectly ordered endpoint initialisations in the device demos. 2010-12-17 20:26:14 +00:00
Dean Camera 0381399f66 Add missing AVRStudio4 project file for the MIDIToneGenerator project. 2010-12-17 19:59:19 +00:00
Dean Camera 0aa950c241 Fixed incorrect definition of the HID_KEYBOARD_SC_D constant in the HID class driver (thanks to Opendous Inc.).
Add extra comments to the ISPTarget.c source file in the AVRISP-MKII clone project.
2010-12-13 06:05:05 +00:00
Dean Camera 46677b4589 Fixed possible lost data in the XPLAINBridge, USBtoSerial and Benito projects when the host exceeds the packet timeout period on received packets as set by USB_STREAM_TIMEOUT_MS (thanks to Justin Rajewski). 2010-12-12 16:50:45 +00:00
Dean Camera b67f9f3669 Added new RingBuffer_Peek() function to the lightweight ring buffer headers. 2010-12-12 16:39:46 +00:00
Dean Camera 8a7351c760 Added new completed MIDIToneGenerator project. 2010-12-03 03:51:46 +00:00
Dean Camera 82fa9149d7 Fixed broken DFU bootloader, added XPLAIN support for bootloader start when XCK jumpered to ground. 2010-11-27 01:27:55 +00:00
Dean Camera 7704d2915c Fix typos in the XPLAINBridge project preventing compilation. 2010-11-26 04:27:52 +00:00
Dean Camera 9f7883fa2b Added ability to write protect Mass Storage disk write operations from the host OS. 2010-11-26 04:16:47 +00:00
Dean Camera b634ec50a0 Changed the XPLAINBridge software UART to use the regular CTC mode instead of the alternative CTC mode via the Input Capture register, to reduce user confusion. 2010-11-25 03:20:01 +00:00
Dean Camera fd77bf5c94 Make the incomplete MIDIToneGenerator project work with up to three notes, using a LRU (Least Recently Used) algorithm to discard the oldest set note when the note table becomes full. 2010-11-25 02:46:35 +00:00
Dean Camera 857a82674f Readd incomplete MIDIToneGenerator project, which can now correctly generate up to three simultaneous notes from MIDI channel 0. 2010-11-24 13:57:44 +00:00
Dean Camera 423d4018f0 Fixed Benito project discarding incoming data from the USB virtual serial port when the USART is busy.
Minor documentation improvements.
2010-11-23 06:56:24 +00:00
Dean Camera c43605612d Lower bulk endpoint polling rate in the descriptors to the lowest possible value to give maximum throughput. 2010-11-22 05:24:33 +00:00
Dean Camera 3988639823 Oops - reduce size of each ring buffer in the USBtoSerial and Benito projects so that the RAM is not overflowed on the smaller USB AVR targets (thanks to Andrei from Microsin.ru). 2010-11-21 10:01:01 +00:00
Dean Camera 8f7437dda2 Rename incorrectly named XPROGTarget_SendBreak() function to XPROGTarget_SendIdle(), as it is sending idle bits and not break bits. 2010-11-17 05:46:18 +00:00
Dean Camera cbc00c843a Fixed AVRISP-MKII clone project not starting the target's program automatically after exiting TPI programming mode. 2010-11-16 13:14:27 +00:00
Dean Camera a9f313afa9 Slow AVRISP-MKII clone PDI/TPI programming speed back to 250KHz due to issues with the XPLAINBridge when PDI programming at faster rates.
Speed up XMEGANVM_WaitWhileNVMControllerBusy() by preloading the status register address into the pointer register of the target's NVM controller and then reading via a faster indirect load command.
2010-11-16 12:30:00 +00:00
Dean Camera 002cd6df49 Added new XCK_RESCUE_CLOCK_ENABLE compile time option to the AVRISP-MKII clone programmer project (thanks to Tom Light). 2010-11-16 01:37:43 +00:00
Dean Camera b27f35536d Fixed incorrect event name in the Benito project. 2010-11-15 08:24:18 +00:00
Dean Camera f2324fc2b4 Second patch to fix incorrect PDI/TPI programming speed. 2010-11-14 06:44:57 +00:00
Dean Camera d41cd9a41a Fixed PDI/TPI programming speed of ~250KHz in the AVRISP-MKII Clone project, instead of the desired 500KHz. 2010-11-12 06:24:01 +00:00
Dean Camera 50390867e7 Fixed incorrect PollingIntervalMS values in the demo/project/bootloader endpoint descriptors (thanks to MCS Electronics). 2010-11-10 12:38:25 +00:00
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).
2010-11-08 03:41:48 +00:00
Dean Camera bac860b173 Fixed broken input in the MagStripe reader project due to an incorrect HID report descriptor. 2010-11-07 12:54:52 +00:00
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. 2010-11-05 05:15:20 +00:00
Dean Camera 85cf202737 Fixed USBtoSerial and XPLAINBridge demos discarding data from the PC if the send buffer becomes full. 2010-11-03 11:24:34 +00:00
Dean Camera 5ce8380a7d Fix XPLAINBridge code broken during the changes to the Rescue Clock generation in the AVRISP-MKII clone project.
Change over all low level host mode project's descriptor comparator routines to perform the descriptor casting in a temp variable to make the code clearer and easier to modify (despite being more verbose).
2010-11-02 11:16:36 +00:00
Dean Camera 3bf760ad7d Rescue clock of the AVRISP-MKII moved to the AVR's OCR1A pin, so that the clock can be generated at all times when 125KHz ISP programming mode is selected. 2010-11-02 07:57:23 +00:00
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. 2010-10-28 06:08:58 +00:00
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.
2010-10-25 12:42:55 +00:00
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.
2010-10-24 22:53:57 +00:00
Dean Camera 421479a4b9 Fix incomplete StandaloneProgrammer project code not compiling due to the recent API changes in the LUFA core. 2010-10-13 14:25:36 +00:00
Dean Camera 31daf04c6a Fix SoftUART.c not compiling due to accidental check in of changes not yet complete in the rest of the XPLAINBridge project code. 2010-10-13 14:23:23 +00:00
Dean Camera 3661ae8dfb Minor documentation corrections. 2010-10-13 14:10:24 +00:00
Dean Camera 5a4def7478 Clean up excessive whitespace at the end of each line using the wspurify tool made by Laszlo Monda 2010-10-13 14:05:35 +00:00
Dean Camera 3693916cd3 Fix Webserver project code not compiling due to the changes to the USB mode selection constant names. 2010-10-12 12:25:05 +00:00
Dean Camera 3a03da9705 Fixed ISR definition conflict in the XPLAIN bridge between the software UART and the AVRISP-MKII ISP modules. 2010-10-10 06:23:45 +00:00
Dean Camera 93793679c9 Revert change to the AVRISP-MKII project for fuse byte programming via the CMDEX bit - this appears to be an error in the XMEGA manual external memory programming table. 2010-10-02 10:07:24 +00:00
Dean Camera a447ae134f Fixed broken lock byte programming in the AVRISP-MKII clone project for some XMEGA targets. 2010-10-02 10:02:24 +00:00
Dean Camera 824ce10390 Fixed broken FLASH/EEPROM programming in the AVRISP-MKII clone project when writing in non-paged mode and the polling byte cannot be used. 2010-10-02 08:41:08 +00:00
Dean Camera c8942ef469 Fixed LowLevel JoystickHostWithParser demo not saving the chosen HID interface's report descriptor size.
Simplified low level Host demo configuration descriptor parser routines.
2010-10-01 12:01:54 +00:00
Dean Camera 7166c7ba3e Fix low level host mode demos not correctly fetching the next endpoint when an invalid interface is discarded.
Update the pipe configuration routines in the host mode class drivers so that they use the same new code to enumerate compatible devices to increase reliability. Add support to the host mode class drivers for non-sequential (but non-overlapping with other interface) pipe numbers.
2010-09-30 07:56:47 +00:00
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.
2010-09-30 06:23:38 +00:00
Dean Camera a509729b2d Changed default value for the reset polarity parameter in the AVRISP-MKII project so that it defaults to active low drive.
Fixed incorrect USB_DeviceState value when unconfiguring the device without an address set.
2010-09-29 13:56:52 +00:00
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.
2010-09-28 12:14:06 +00:00
Dean Camera 800485bd95 Remove dfu-programmer program switches, to ensure maximum compatibility with all dfu-programmer versions. 2010-09-24 06:59:28 +00:00
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.
2010-09-24 06:45:11 +00:00
Dean Camera 6d2f091cec Make project makefiles correctly clean intermeditary build files from assembly and C++ sources (thanks to Daniel Czigany). 2010-09-15 03:00:29 +00:00
Dean Camera 84696c727d Added board hardware driver support for the BUI development board. 2010-09-14 11:11:54 +00:00
Dean Camera def0e0ff1b Remove incomplete MIDIToneGenerator project. 2010-09-13 10:07:45 +00:00
Dean Camera fdcb486e22 Fix typos in the project overview text files. 2010-09-09 13:39:52 +00:00
Dean Camera c166dfc64e Added class specific descriptor type defines with standard USB-IF element naming. 2010-09-09 13:05:57 +00:00
Dean Camera 4dece08bef Clarify in the project documentation files what the each of the different USB AVR device "series" comprises of. 2010-08-31 12:33:21 +00:00
Dean Camera 009eebf229 Fix incorrect ADC driver documentation for the parameters of ADC_Init(), fix incorrect call to ADC_Init() in the TemperatureDatalogger project. 2010-08-31 07:32:48 +00:00
Dean Camera b3c6599bb7 Remove remaining void* descriptor casts in the projects and demos that were not removed when the GetDescriptor callback function's signature was altered. 2010-08-29 13:21:14 +00:00
Dean Camera 263178fbb6 Add better description of the Ultra-Lightweight Ring Buffer header files. 2010-08-29 07:49:36 +00:00
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). 2010-08-24 13:02:38 +00:00
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.
2010-08-22 02:45:20 +00:00
Dean Camera 81998ce297 Added compile time error to the AVRISP-MKII project when built for the U4 chips, as the default VTARGET detection ADC channel does not exist on these chips (thanks to Marco). 2010-08-22 01:42:09 +00:00
Dean Camera 4f114e5766 Fixed MassStorage based demos and projects resetting the SCSI sense values before the command is executed, leading to missed SCSI sense values when the host retrieves the sense key (thanks to Martin Degelsegger).
Added missing DataflashManager_CheckDataflashOperation() function to the MassStorageKeyboard demo, removed redundant SCSI_Codes.h file as these values are part of the MassStorage Class Driver.
2010-08-18 10:33:21 +00:00
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.
2010-08-09 10:20:10 +00:00
Dean Camera 9274610a48 Commit for the 100807 release. 2010-08-09 01:55:02 +00:00
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. 2010-08-08 08:30:42 +00:00
Dean Camera 98947e3750 Ensure all demos now compile in C99 standards mode, and not GNU99 (C99 + GNU extensions). 2010-08-03 11:13:06 +00:00
Dean Camera 48c5cdced4 Hide the PROGMEM attribute from Doxygen, as it appears to confuse the parser in some situations. 2010-08-02 08:53:23 +00:00
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.
2010-08-01 14:03:13 +00:00
Dean Camera fb0e6597b6 Invert the logic for the VBUS power light in the AVRISP-MKII project for the USBTINY-MKII board target. 2010-08-01 06:53:08 +00:00
Dean Camera 9597b33c33 Fixed Serial peripheral driver not turning off the USART before reconfiguring it, which would cause incorrect operation to occur (thanks to Bob Paddock). 2010-07-31 06:55:47 +00:00
Dean Camera 612df774d9 Oops - fix mixed "initialize" and "initialise" - opt for American spelling due to its wide use in technical standards. 2010-07-30 10:58:16 +00:00
Dean Camera 0f45b9c8e0 More spell checking of all source files -- correct missed errors, switch to EN-GB spelling dictionary. 2010-07-30 09:48:35 +00:00
Dean Camera 2034141a7e Spell check more of the third party libraries used by LUFA. 2010-07-30 08:29:53 +00:00
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.
2010-07-30 03:52:11 +00:00
Dean Camera 7c8d16fd7a Oops - need to turn off USART via control register B before reconfiguring, fix ordering of USART control register modifications in the Benito and USBtoSerial projects. 2010-07-30 01:11:04 +00:00
Dean Camera 28401f7bb7 Spell check all source files once again to find any typos. 2010-07-29 16:20:45 +00:00
Dean Camera ca007f91f2 Fixed Benito and USBtoSerial projects not turning off the USART before reconfiguring it, which could cause incorrect operation to occur (thanks to Bob Paddock). 2010-07-29 15:14:56 +00:00
Dean Camera 62022252ea Add special support to the AVRISP-MKII for the new model USBTINY-MKII's additional LED to indicate target power source.
Add support to the USBTINY-MKII's additional LED in the board's LED driver header.

Changed LED indicator masks for the AVRISP-MKII project, so that there are defined roles for each LED.
2010-07-29 13:04:53 +00:00
Dean Camera 30c2b620de Remove obsolete macros and preprocessor checks from the AVRISP-MKII project's V2Protocol command handler header file. 2010-07-29 07:20:33 +00:00
Dean Camera de5b16909a Added support to the AVRISP-MKII project for ISP speeds slower than 125KHz via a new software SPI driver.
Added new SPI_ORDER_* data order masks to the SPI peripheral driver.
2010-07-29 07:09:57 +00:00
Dean Camera be2a7d4598 Move over message ID specific header data to unions inside the standard TMC header structure, so that all header data is read in one chunk in the incomplete TMC demo. 2010-07-27 11:26:47 +00:00
Dean Camera cd39c38d5f Rename reserved members of all structs so that they are uniformly named across all demos/projects/bootloaders.
Added start of the Incomplete TMC demo's command parser code.
2010-07-26 07:28:40 +00:00
Dean Camera 0803cf00ac Add missing INTERRUPT_CONTROL_ENDPOINT compile time option to the Mass Storage device projects/demos and incomplete Test and Measurement Class demo, which was accidentally removed during the makefile updates.
Alter Test and Measurement Class demo's request handlers to accept, process and correctly return the fields indicated in the specification.
2010-07-26 04:57:50 +00:00
Dean Camera 4c9425c0d5 Added periodic flush timer to the Benito project. Alter the serial transmission code so that sent bytes do not block the remainder of the main program code from running. 2010-07-25 11:59:55 +00:00
Dean Camera 2461ae508c Future proof the XPROG protocol of the AVRISP-MKII project, so that non PDI and TPI requests return failure. 2010-07-22 12:34:32 +00:00
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.
2010-07-21 16:19:32 +00:00
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.
2010-07-21 14:00:51 +00:00
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.
2010-07-19 14:00:44 +00:00
Dean Camera 42ac34b484 Change over all makefiles to use C99 standards mode, rather than C99 + GNU Extensions. 2010-07-18 07:31:57 +00:00