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