Commit Graph

187 Commits

Author SHA1 Message Date
Dean Camera 99a45fa97d Add start of an AVR32 SPI driver. 2010-02-22 12:36:08 +00:00
Dean Camera 1d8bb8f9bc Make SPI and USART peripheral dispatch driver headers in preparation for a set of AVR32 peripheral drivers. 2010-02-22 12:01:09 +00:00
Dean Camera 3b6987bca3 Add uIP-split code to the Webserver project, so that each packet is split in half to avoid the delayed-ACK problem when communicating with other devices. Condense HTTP server code, so that the HTTP headers are all sent from the one state. Make default filename append to any directory URI, rather than just the root directory. 2010-02-18 02:19:43 +00:00
Dean Camera 16ea5aa7a2 Add a TELNET server to the webserver project, which currently can list active TCP connections. 2010-02-03 10:39:33 +00:00
Dean Camera 84e1241f80 Replace the Webserver demo's uIP with the latest code ripped from the Contiki project by Adam Dunkels. 2010-02-02 12:51:05 +00:00
Dean Camera 1babe52682 Oops - fix path case in the Webserver project makefile, to fix *nix builds. 2010-01-28 13:23:05 +00:00
Dean Camera d11ed10c53 Add FatFS library to the Webserver project, extend the HTTP server so that it now serves files from the Dataflash. Add Mass Storage device mode class driver so that files can be loaded to the board Dataflash when inserted into a PC. 2010-01-28 12:47:35 +00:00
Dean Camera a960e4b3b2 Add DHCP server to the Webserver demo for automatic network configuration. Correct uIP timer clock not tracking the correct timespan. 2010-01-27 13:15:49 +00:00
Dean Camera eb99b1ec90 Exclude host application directories from the Doxygen input source file directories. 2010-01-25 13:20:46 +00:00
Dean Camera 4bd44139b1 Move TWI.c driver into the straight LUFA/Drivers/Peripheral/ directory.
Fix TemperatureDataLogger and Webserver project builds.
2010-01-25 13:02:25 +00:00
Dean Camera db420853ce Add Webserver project Doxygen configuration file and overview document.
Fix Doxygen configuration files' input file exclusion filters.
2010-01-25 12:46:57 +00:00
Dean Camera 857381185d ADC2 and ADC3 channels do not exist on the U4 series USB AVRs. 2010-01-25 02:15:27 +00:00
Dean Camera dd995683ea Enhance TemperatureDatalogger project -- add RTC capabilities so that data is logged along with the current time and date. Make logging interval configurable, set by a C# PC host application. 2010-01-24 11:13:23 +00:00
Dean Camera 03ee87b35a Fix up the incomplete Webserver project so that it integrates with the uIP stack correctly. Add simple HTTP webserver as a placeholder until FatFS can be integrated.
Begin to look into the RNDIS Host Class Driver, which seems to crash on test hardware after many packets have been received.
2010-01-21 13:45:44 +00:00
Dean Camera 1d2bc47eba Clean up of the altered XPLAINBridge project. 2010-01-19 05:38:21 +00:00
Dean Camera 60fd0ff418 Changed XPLAINBridge project to be both a USB to USART bridge and a PDI programmer, based on the state of a mode select pin. 2010-01-19 05:27:58 +00:00
Dean Camera 2746154652 Added master mode hardware TWI driver.
Fixed a bug in the incomplete Webserver project, where the packet data was not being written to and read from the correct buffer address.
2010-01-19 00:25:26 +00:00
Dean Camera f0d6d4ef13 Started Webserver RNDIS host project. 2010-01-12 07:29:43 +00:00
Dean Camera 208edeee0f Add new TemperatureDataLogger project, a simple USB Mass Storage class Temperature Data Logger using the onboard Dataflash and Temperature sensor. 2009-12-30 09:00:29 +00:00
Dean Camera 8301dc553e Fix references to the renamed AVRISP-MKII project folder. 2009-12-27 12:35:31 +00:00
Dean Camera 65fcebf478 Complete combining of PDI and TPI target communication code files, stub out TINY NVM controller functions. 2009-12-24 02:52:10 +00:00
Dean Camera 05fcf7e2a7 Rename PDIProtocol.c/.h to XPROGProtocol.c/.h as it will now handle both TPI and PDI programming. 2009-12-24 01:59:36 +00:00
Dean Camera ce044844ea Combine AVRISP project TPI and PDI lib directories - these protocols use the same underlying XPROG wrapper for the host-to-programmer command wrapping. 2009-12-24 01:55:53 +00:00
Dean Camera 26bc1f3cfd Correct include paths and makefile for the AVRISP project now that the protocol handlers are in seperate directories. 2009-12-23 14:52:52 +00:00
Dean Camera bd5e8f07b7 Stub out more of the TPI programming protocol routines in the AVRISP project. 2009-12-23 13:28:44 +00:00
Dean Camera be71f934a4 Seperate out XMEGA and TINY NVM routines into seperate files. 2009-12-23 13:07:51 +00:00
Dean Camera cda88cf97c Start of implementation of the low level TPI programming protocol in the AVRISP project. 2009-12-23 12:54:15 +00:00
Dean Camera b408a5fe62 Add const qualifier to the parameters of Projects' functions where possible. 2009-12-20 06:23:24 +00:00
Dean Camera 901e26edd8 Add LEDNotifier project to the Projects folder build list. Add new LEDMixer C# host application for the LEDNotifier project. 2009-12-18 05:34:11 +00:00
Dean Camera 12abb59b19 Fix up references in the LEDNotifier project to the old HotmailNotifier name. 2009-12-18 05:30:55 +00:00
Dean Camera 47384e3c50 Rename HotmailNotifier project files to LEDNotifier. 2009-12-18 05:25:51 +00:00
Dean Camera 3b3ea167f0 Renamed HotmailNotifier project to LEDNotifier. 2009-12-18 05:22:57 +00:00
Dean Camera 3d6508c9b9 Enhance the HotmailNotifier project so that the LEDs' individual brightness can be controlled individually via software PWM. 2009-12-18 04:40:15 +00:00
Dean Camera c3758ac5ef Un-inline the SendAddress function in NVMTarget.c/.h of the AVRISP project.
Add new HotmailNotifier project, which changes a LED's colour based on the user's unread email count as sent from Windows Live Messenger.
2009-12-17 10:02:19 +00:00
Dean Camera 1fa27139f5 Split out NVM access code in the AVRISP project into a seperate NVMTarget.c source file and header. Make NVM register accesses use the NVM base address as set by the host, rather than using the fixed value from the XMEGA datasheet. 2009-12-14 02:59:34 +00:00
Dean Camera 307ba254d5 The AVRISP project can now enter PDI mode under both bit-bang and hardware USART connection modes, tested against the XPLAIN board hardware. Still need to complete higher level NVM access code so that the device's memories can be read and written. 2009-12-13 12:50:47 +00:00
Dean Camera cf22a744ec Additional file renames and modifications to change CDC demos to VirtualSerial. 2009-12-07 04:35:59 +00:00
Dean Camera 478d9dc04f Added support for the Atmel EVK527 board hardware. 2009-12-04 06:02:28 +00:00
Dean Camera bae00a3d42 Added support for the Dataflash mounted on the XPLAIN board. Added new XPLAIN_REV1 board target for the first revision XPLAIN board, which used a different (smaller) Dataflash IC to later revisions. 2009-12-03 08:59:12 +00:00
Dean Camera f69f03cb0d Started implementing the low level PDI protocol in the AVRISP project, for XMEGA device programming. 2009-12-03 00:53:45 +00:00
Dean Camera f92b56191d Add new more reliable software UART for the XPLAINBridge project by David Prentice and Peter Danneger. 2009-12-02 14:19:06 +00:00
Dean Camera fec31947a6 Removed John Steggall's software UART code from the XPLAIN Bridge project due to reliability issues. 2009-12-02 14:03:57 +00:00
Dean Camera 1f8dfd0205 Add support for unwrapping of the XMEGA PDI programming protocol to the AVRISP Programmer project. 2009-12-02 13:42:08 +00:00
Dean Camera 5930f47bf4 Rename V2ProtocolTarget files to ISPTarget in the AVRISP Programmer Clone project. 2009-12-02 12:04:37 +00:00
Dean Camera 5aa2b26261 Added new RNDIS Host class driver and the beginnings of a RNDISEthernetHost Class Driver demo.
Fixed all Class drivers to ensure they have appropriate guards on each function to ensure the device is enumerated before running, fixed error codes on all guards to return "DeviceDisconnected" where possble.

Renamed HOST_SENDCONTROL_DeviceDisconnect enum value to HOST_SENDCONTROL_DeviceDisconnected to be in line with the rest of the library enum error codes.
2009-11-26 04:46:31 +00:00
Dean Camera f37d21bbe9 Updated John Steggall's software USART in the XPLAINBridge project. 2009-11-26 01:17:29 +00:00
Dean Camera 50f4a3b625 Fix build and Doxygen errors. 2009-11-25 03:56:51 +00:00
Dean Camera 8c6c27d88b Added new RNDISHost Host LowLevel demo. Fixed misnamed Pipe_SetPipeToken() macro for setting a pipe's direction. Fixed CDCHost failing on devices with bidirectional endpoints. 2009-11-25 03:26:57 +00:00
Dean Camera c05c7c7df4 Added new XPLAIN serial Bridge project (thanks to John Steggall for the software UART code). 2009-11-25 00:36:18 +00:00
Dean Camera aaa0bed556 The incomplete StandaloneProgrammer project now uses Host and Device Mass storage classes, so that program data can either be loaded onto the device's Dataflash storage, or read off an attached USB memory stick.
The USB target family and allowable USB mode tokens are now public and documented (USB_CAN_BE_*, USB_SERIES_*_AVR).

The SCSI_Request_Sense_Response_t and SCSI_Inquiry_Response_t type defines are now part of the Mass Storage Class driver common defines, rather than being defined in the Host mode Class driver section only.

The USB_MODE_HOST token is now defined even when host mode is not available.

Added missing CDC_Host_CreateBlockingStream() function code to the CDC Host Class driver.
2009-11-23 12:40:14 +00:00
Dean Camera 9b20114555 Make RNDISHost demo validate the set Packet Filter to ensure that it is being sent correctly.
Add new (incomplete) StandaloneProgrammer project, using the ELM Petite FAT library to read files stored on the board's dataflash by the host.
2009-11-17 10:32:17 +00:00
Dean Camera 6a46f0025a Add beginnings of a RNDIS Ethernet Host demo. 2009-11-12 10:43:07 +00:00
Dean Camera 8ba51f090f Added new Printer Host mode Class driver.
Added new Printer Host mode ClassDriver demo.

Added table of supported classes and modes to the main USB Class Driver documentation.
2009-11-04 13:16:53 +00:00
Dean Camera 87b2572ae5 Added new JoystickHostWithParser demos to the library.
Add some missing documentation to some of the library demos.
2009-11-04 04:55:10 +00:00
Dean Camera 0899deaae3 Add new CDCMouse ClassDriver device demo, combining a CDC Virtual Serial Port and a HID Mouse. 2009-11-03 12:12:07 +00:00
Dean Camera 5832bab02f Rename the AT90USBXXX67 internal driver directory to AVRU4U6U7. 2009-11-03 11:11:51 +00:00
Dean Camera 870591983c Add const attribute to class driver APIs.
Add new manual pages detailing the advantages of LUFA over the official Atmel USB AVR stack, and reasons why LUFA should be used over a built-from-scratch USB stack.
2009-11-03 02:06:13 +00:00
Dean Camera de70f0f1cf Moved USBtoSerial demo the Projects directory, as it is simply an expanded CDC demo. Added const qualifier to Endpoint/Pipe stream write routines. 2009-10-18 05:35:48 +00:00
Dean Camera dc68de15b6 Make Audio device demos compatible with AVRs running at 16MHz instead of 8MHz.
Fix up demo documentation device compatibility list to be as general as possible to reduce changes required as Atmel releases more devices within the same USB AVR series.
2009-10-12 05:59:55 +00:00
Dean Camera c7bc3ec391 Add new MIDI Host Class driver to the library, and new MIDIHost ClassDriver demo.
Make MouseHost and KeyboardHost ClassDriver demos use the HID Class driver's structures for the boot protocol Mouse/Keyboard report data, rather than rolling their own.
2009-10-08 08:46:27 +00:00
Dean Camera bdedbd558c Add new MIDIHost LowLevel demo application.
Make unfinished device mode applications use the VID/PID reserved for LUFA development devices.
2009-10-08 07:00:44 +00:00
Dean Camera db435c4995 Minor documentation fixups. 2009-10-03 15:30:29 +00:00
Dean Camera 433399b05d Changed Audio Class driver sample read/write functions to be inline, to reduce the number of cycles needed to transfer samples to and from the device (allowing more time for processing and output).
Fixed ClassDriver AudioOutput demo not selecting an audio output mode.
2009-10-03 07:59:32 +00:00
Dean Camera 3ebfb998ec Added support for the Atmel XPLAIN board. 2009-10-02 09:11:37 +00:00
Dean Camera 89c837ee34 Removed mostly useless "TestApp" demo, as it was mainly useful only for checking for sytax errors in the library.
MIDI device demos now receive MIDI events from the host and display note ON messages via the board LEDs.

Added beginnings of a MIDI class bootloader.
2009-09-30 04:40:36 +00:00
Dean Camera 7977663f62 Add information on the new MouseHostDevice dual role demo to the library documentation. Add a 0x prefix to the LUFA_VERSION_INTEGER define to ensure that it is stored as BCD, and not an octal value. 2009-09-29 07:15:09 +00:00
Dean Camera 3ffa7543a0 Finish initial draft of the Host Mode HID Class driver.
Add new MouseHostWithParser and KeyboardHostWithParser Host Class driver demos.
2009-09-21 10:49:06 +00:00
Dean Camera f5c645296c Added new MassStorageKeyboard Device Class Driver demo (thanks to Matthias Hullin). 2009-09-21 08:07:26 +00:00
Dean Camera 6c5c9212d8 Add KeyboardHost HID Host Class driver demo to the library. 2009-09-20 12:46:26 +00:00
Dean Camera aa640330a1 Finish Class Driver MouseHost demo. Update HID Host Class driver; boot protocol now works, still need to finish and test report protocol mode. 2009-09-20 12:34:07 +00:00
Dean Camera cd0adb7574 Added support for the officially recommended layout of the external peripherals connected to the BUMBLEB board.
Added flag to the HID Host Class driver to indicate the currently selected reporting protocol.
2009-09-17 23:34:16 +00:00
Dean Camera 331929833d Add Host mode Class driver demo summaries. 2009-09-09 04:22:49 +00:00
Dean Camera 3dce79d68c Added start of the Still Image Host Class driver demo and driver code.
Re-enabled building of the Host mode demos ClassDriver directory.
2009-08-30 11:36:04 +00:00
Dean Camera 0d3a3f7536 Remove skeleton Audio and MIDI Host mode Class drivers -- will not implement in next release. 2009-08-30 10:43:41 +00:00
Dean Camera d297ea12b7 Added new "Common" section to the class drivers, to hold all mode-independant definitions for clarity.
Moved SCSI command/sense constants into the Mass Storage Class driver, instead of the user-code.
2009-08-27 07:38:40 +00:00
Dean Camera a765f71727 Add SCSICodes.h to the Class Driver Common folder, and automatically include it in both the Host and Device Mass Storage Class drivers. Delete existing version from the ClassDriver MassStorage device demo's /Lib/ folder. 2009-08-26 07:51:40 +00:00
Dean Camera f547eb3608 Optimized Endpoint_Read_Word_* and Pipe_Read_Word_* macros to reduce compiled size.
Fixed Programmer's Notepad project file to reflect new location of AVRISP project.
2009-08-25 14:30:42 +00:00
Dean Camera 6d1adf7339 Updated Benito project -- added hardware interrupt and software buffering for serial data reception to prevent missed characters, condensed pulse generation counters into a struct for clarity.
Added check to CDC_Device_BytesReceived() to ensure 0 is returned when device is not enumerated to a host.

Move AVRISP project's V2Protocol_DelayMS() function to be static inline, as it is now very minimal. Added extra project doxygen documentation.
2009-08-25 08:09:49 +00:00
Dean Camera 7e74bd3ea2 Moved out target-related V2 protocol commands into a seperate file for the AVRISP project.
Added Load Extended Command functionality to the LOAD ADDRESS V2 Protocol command handler for devices with more than 64KB of memory.
2009-08-23 10:17:13 +00:00
Dean Camera d540276b44 Correct Programmer's Notepad project file to use the correct path for the AVRISP project files. 2009-08-20 07:25:47 +00:00
Dean Camera fa8beef82d Moved out the handling of V2 Protocol parameters to a seperate set of files. Added parameter privellages, so that an error can be returned to the host when trying to perform a get/set value action on a parameter without the correct privellages. 2009-08-19 08:29:08 +00:00
Dean Camera 6d99486791 Fixed invalid data being returned when a GetStatus request is issued in Device mode with an unhandled data recipient.
Fix up Programmers Notepad Project file to show new Projects directory layout. Remove now moved AVRISP project from the Projects directory makefile.
2009-08-18 07:42:19 +00:00
Dean Camera bbcdaaa6dc Enhancements to the AVRISP Programmer project to attempt to get AVRStudio to communicate with the device. 2009-08-18 07:22:51 +00:00
Dean Camera ecd82778cf Added beginnings of a new AVRISP-MKII clone project.
Added new Endpoint_SetEndpointDirection() macro to set the current endpoint direction for bidirectional endpoints.

Renamed internal USB_INT_ENDPOINT_SETUP macro to USB_INT_RXSTPI to fit in with the rest of the interrupt vector macros.
2009-08-17 12:38:24 +00:00
Dean Camera df5500e81c Added CDC_Device_Flush() command to the CDC Device mode class driver.
Minor updates to the unfinished SideShow demo for clarity.

Added unfinished MassStorageHost class driver demo.
2009-08-13 06:43:17 +00:00
Dean Camera c86491af8b Add new functions to the HID host class driver, refine HID interface protocol matching.
Remove stray state variable from the CDC host class driver.
2009-08-11 09:12:29 +00:00
Dean Camera 99c447c754 Fixed issue in USBtoSerial demos where the USART Rx line was not having its pullup enabled at startup, leading to noise being received from the Rx pin when left floating.
Removed unused relative Common.h header include from the DriverStubs board stub drivers.

Fixed Benito programmer, use the correct LED functions where needed to ensure correct status display at all times.
2009-08-05 13:16:36 +00:00
Dean Camera 4421782b7f Make Control Endpoint stream transfers more reliable by adding in early aborts for unexpected new SETUP tokens, or unexpected status stage during control stream writes.
Fix corruption in Device RNDIS demos TCP stack when too many connections attempted simultaneously, freezing the device when a page was re-fetched before the first connection was closed.

Fix incorrect model compatibility information in the Host LowLevel demo overview text files.
2009-08-05 11:39:28 +00:00
Dean Camera 5251bc6e4e Add new MouseHost Class Driver demo, unfinished, to allow for better testing of the new prototype Host Mode Class Driver framework. Flesh out start of a HID class Host mode class driver. 2009-07-27 10:31:07 +00:00
Dean Camera 06f3a6a876 Tweaks to the new Benito Programmer project for documentation and port/pin usage. 2009-07-23 11:01:32 +00:00
Dean Camera a6e85d6ed8 Added new Benito project, a simple modified USB-to-Serial bridge for the programming of AVRs using the official Arduino bootloader. 2009-07-23 10:39:10 +00:00
Dean Camera 86819ba9d8 Fixes to unfinished SideShow demo to re-enable correct building after previous commit. 2009-07-20 14:27:14 +00:00
Dean Camera 292fc9b65e Move unfinished SideShow source files to nested Lib directory for clarity. 2009-07-20 14:23:47 +00:00
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.
2009-07-20 14:07:02 +00:00
Dean Camera 3ee3ed2d6d Add PrinterHost to the project file and Host LowLevel directory makefile. 2009-07-20 13:41:37 +00:00
Dean Camera 73d9fafc0f Added new EEPROM and FLASH buffer versions of the Endpoint and Pipe stream functions. Changed Endpoint.c and Pipe.c to use a templated system to build the seperate functions, rather than duplicating each function's code many times. 2009-07-13 12:38:30 +00:00
Dean Camera a54ed0085b Seperated out parts of the PrinterHost incomplete demo into a seperate Lib subdirectory.
Fixed Host mode to Device mode UID change not causing a USB Disconnect event when a device was connected.
2009-07-13 04:46:52 +00:00
Dean Camera e0af6014a7 Added incomplete PrinterHost demo application.
Seperated out Lib components of the incomplete BluetoothHost demo application out into a seperate Lib subfolder.

Changed F_CLOCK entries in project makefiles to alias to F_CPU by default, as this is the most common case.
2009-07-11 15:05:56 +00:00
Dean Camera 7366f590f5 Rename some of the library documentation files. 2009-06-26 10:25:59 +00:00
Dean Camera 3bd4011c09 Split Getting Started page of the documentation into its own section. 2009-06-26 10:24:54 +00:00