Dean Camera [Sun, 24 Jan 2010 11:13:23 +0000 (11:13 +0000)]
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.
Dean Camera [Thu, 21 Jan 2010 13:45:44 +0000 (13:45 +0000)]
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.
Dean Camera [Thu, 21 Jan 2010 06:25:07 +0000 (06:25 +0000)]
New revision Benito hardware will be 16MHz, and use the ATMEGA32U2. Change makefile to suit.
Dean Camera [Thu, 21 Jan 2010 06:13:54 +0000 (06:13 +0000)]
Update Benito project -- device should be reset when DTR is *asserted* not deasserted.
Dean Camera [Tue, 19 Jan 2010 05:43:58 +0000 (05:43 +0000)]
Update library manual with the new XPLAINBridge project's dual mode bridge/programmer functionality.
Dean Camera [Tue, 19 Jan 2010 05:38:21 +0000 (05:38 +0000)]
Clean up of the altered XPLAINBridge project.
Dean Camera [Tue, 19 Jan 2010 05:27:58 +0000 (05:27 +0000)]
Changed XPLAINBridge project to be both a USB to USART bridge and a PDI programmer, based on the state of a mode select pin.
Dean Camera [Tue, 19 Jan 2010 00:25:26 +0000 (00:25 +0000)]
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.
Dean Camera [Sun, 17 Jan 2010 06:28:25 +0000 (06:28 +0000)]
Oops - missing brace in the updated Benito code causing compilation to fail.
Dean Camera [Sun, 17 Jan 2010 05:32:41 +0000 (05:32 +0000)]
Fix the Benito project not pulsing the target's /RESET line when DTR is de-asserted.
Dean Camera [Sun, 17 Jan 2010 04:39:33 +0000 (04:39 +0000)]
Clean up and add more comments to the AVRISP-MKII project. Make sure the SPI_MULTI command handler supports multiple packet responses. Use slightly smaller/faster repeated indirect-load commands when retrieving the PDI target's memory CRCs.
Dean Camera [Sat, 16 Jan 2010 00:40:52 +0000 (00:40 +0000)]
Fix incorrect preprocessor checks in the PLL prescaler mask determination code for the ATMEGA32U2.
Dean Camera [Fri, 15 Jan 2010 02:42:54 +0000 (02:42 +0000)]
Fixed invalid USB controller PLL prescaler values for the ATMEGAxxU2 controllers
Fixed lack of support for the ATMEGA32U2 in the DFU and CDC class bootloaders
Changed incomplete Webserver project over to using the uIP timer library.
Dean Camera [Tue, 12 Jan 2010 07:29:43 +0000 (07:29 +0000)]
Started Webserver RNDIS host project.
Dean Camera [Tue, 12 Jan 2010 00:42:00 +0000 (00:42 +0000)]
Fixed incorrect interface values in the VirtualSerialMouse and KeyboardMouse demo class driver structures.
Added caveat information to the CDC device class driver.
Dean Camera [Thu, 7 Jan 2010 13:23:43 +0000 (13:23 +0000)]
Oops - incorrect Dataflash chip select mask in the XPLAIN Dataflash driver.
Dean Camera [Thu, 7 Jan 2010 12:38:32 +0000 (12:38 +0000)]
Fix XPLAIN Dataflash and LED drivers.
Dean Camera [Wed, 6 Jan 2010 13:37:29 +0000 (13:37 +0000)]
Update Doxygen configuration files to the latest Doxygen version.
Dean Camera [Tue, 5 Jan 2010 13:52:34 +0000 (13:52 +0000)]
Added support to the MIDI Class drivers for packed data, where multiple MIDI events are packed into a single USB packet. Added new MIDI Class driver flush routines to override packing behaviour.
Dean Camera [Tue, 5 Jan 2010 04:50:18 +0000 (04:50 +0000)]
Inline USB management functions in the Class drivers which are standardized but currently unused, to prevent them from using up unneccesary cycles and flash in the user application.
Dean Camera [Mon, 4 Jan 2010 13:34:02 +0000 (13:34 +0000)]
Fix MassStorageKeyboard demo USE_INTERNAL_SERIAL check being performed before the required library headers were included, causing a compilation error.
Added notes to the class driver functions indicating which functions require what Device/Host state machine states to function.
Dean Camera [Mon, 4 Jan 2010 00:33:31 +0000 (00:33 +0000)]
Fix CDC blocking streams in Host mode locking up when the device is removed.
Dean Camera [Mon, 4 Jan 2010 00:14:09 +0000 (00:14 +0000)]
Fixed blocking CDC streams not aborting when the host is disconnected.
Dean Camera [Sun, 3 Jan 2010 03:48:40 +0000 (03:48 +0000)]
Clean up MassStorageKeyboard demo.
Dean Camera [Wed, 30 Dec 2009 23:49:19 +0000 (23:49 +0000)]
Update copyright year to 2010.
Dean Camera [Wed, 30 Dec 2009 13:38:05 +0000 (13:38 +0000)]
Oops - remove accidentally committed .lst files from the TemperatureDataLogger project.
Dean Camera [Wed, 30 Dec 2009 13:35:24 +0000 (13:35 +0000)]
Fix TemperatureDataLogger - sample tick timer wasn't being initialized in the correct CTC mode.
Dean Camera [Wed, 30 Dec 2009 09:02:44 +0000 (09:02 +0000)]
Oops - fix include directory for case-sensitive filesystems.
Dean Camera [Wed, 30 Dec 2009 09:00:29 +0000 (09:00 +0000)]
Add new TemperatureDataLogger project, a simple USB Mass Storage class Temperature Data Logger using the onboard Dataflash and Temperature sensor.
Dean Camera [Tue, 29 Dec 2009 14:54:52 +0000 (14:54 +0000)]
Reduced guard bit time in the AVRISP project PDI/TPI protocols to reduce the time needed to reverse the data communication direction.
Dean Camera [Tue, 29 Dec 2009 14:43:03 +0000 (14:43 +0000)]
Fixed AVRISP PDI race condition where the guard time between direction changes could be interpreted as a start bit. Fixed TPI interface lines not being changed correctly when in bit-banged TPI mode.
Dean Camera [Tue, 29 Dec 2009 05:18:16 +0000 (05:18 +0000)]
Change the AVRISP project's RESET LINE makefile tokens to AUX LINE, as it is not always used for target reset.
Dean Camera [Tue, 29 Dec 2009 05:08:08 +0000 (05:08 +0000)]
Minor documentation updates.
Dean Camera [Mon, 28 Dec 2009 07:50:20 +0000 (07:50 +0000)]
Fix TPI NVM Write handler -- AVRStudio sends out writes in page sized chunks, not byte sized chunks.
Dean Camera [Mon, 28 Dec 2009 07:17:21 +0000 (07:17 +0000)]
Add first draft of the TPI NVM commands for reading, writing and erasing a target. Needs testing when physical access to a part is available.
Dean Camera [Mon, 28 Dec 2009 02:58:23 +0000 (02:58 +0000)]
Add dummy undocumented TPI XPROG parameters to the AVRISP project so that TPI programming mode can be entered.
Dean Camera [Mon, 28 Dec 2009 00:55:23 +0000 (00:55 +0000)]
Remove duplicate #include of <avr/wdt.h> in the TeensyHID bootloader.
Dean Camera [Mon, 28 Dec 2009 00:34:20 +0000 (00:34 +0000)]
Fix MIT license language to make its intent clearer.
Dean Camera [Sun, 27 Dec 2009 14:17:01 +0000 (14:17 +0000)]
Fix mistakes in the XPROGTarget.c/.h files for TPI mode software USART clock rate and PDI mode XPLAIN board autoconfiguration.
Dean Camera [Sun, 27 Dec 2009 12:35:31 +0000 (12:35 +0000)]
Fix references to the renamed AVRISP-MKII project folder.
Dean Camera [Sun, 27 Dec 2009 12:28:29 +0000 (12:28 +0000)]
Rename AVRISP project folder to AVRISP-MKII.
Dean Camera [Sun, 27 Dec 2009 07:14:57 +0000 (07:14 +0000)]
Remove missed timer 0 init code in the ISP protocol handler in the AVRISP project. Switch the XPROG protocol target communications handler over to using Timer 1 COMA/COMB ISRs for the two physical layers, rather than COMA/ICR1. Speed up bit-banged USART mode slightly.
Dean Camera [Sat, 26 Dec 2009 05:20:10 +0000 (05:20 +0000)]
Fixed ISP mode in the AVRISP programmer project.
Dean Camera [Sat, 26 Dec 2009 04:13:55 +0000 (04:13 +0000)]
Added const where possible to the source functions in the Projects directory.
Added command timeout to the AVRISP project so that incorrectly connected targets no longer freeze the device.
Removed string descriptors from the TeensyHID bootloader to reduce its size.
Dean Camera [Thu, 24 Dec 2009 03:02:26 +0000 (03:02 +0000)]
Complete TPI protocol code to enter and exit TPI programming mode for the ATTINY 6-pin devices.
Dean Camera [Thu, 24 Dec 2009 02:52:10 +0000 (02:52 +0000)]
Complete combining of PDI and TPI target communication code files, stub out TINY NVM controller functions.
Dean Camera [Thu, 24 Dec 2009 02:29:01 +0000 (02:29 +0000)]
Rename PDITarget.c/.h to XPROGTarget.c/.h so that both PDI and TPI programming can be included in the one set of files.
Dean Camera [Thu, 24 Dec 2009 02:27:21 +0000 (02:27 +0000)]
Remove serial driver use from the AVRISP project now that it is no longer needed.
Dean Camera [Thu, 24 Dec 2009 02:14:04 +0000 (02:14 +0000)]
Combine PDIProtocol and TPIProtocol into a single XPROGProtocol set of files.
Dean Camera [Thu, 24 Dec 2009 01:59:36 +0000 (01:59 +0000)]
Rename PDIProtocol.c/.h to XPROGProtocol.c/.h as it will now handle both TPI and PDI programming.
Dean Camera [Thu, 24 Dec 2009 01:55:53 +0000 (01:55 +0000)]
Combine AVRISP project TPI and PDI lib directories - these protocols use the same underlying XPROG wrapper for the host-to-programmer command wrapping.
Dean Camera [Wed, 23 Dec 2009 14:52:52 +0000 (14:52 +0000)]
Correct include paths and makefile for the AVRISP project now that the protocol handlers are in seperate directories.
Dean Camera [Wed, 23 Dec 2009 14:45:47 +0000 (14:45 +0000)]
Make seperate ISP, PDI and TPI folders in the AVRISP project Lib subdirectory to hold each protocol's files.
Dean Camera [Wed, 23 Dec 2009 14:42:50 +0000 (14:42 +0000)]
Lower timeout periods in the AVRISP project. Increment firmware minor revision number in the AVRISP project so that it remains comatible with the latest AVRStudio without an upgrade warning.
Dean Camera [Wed, 23 Dec 2009 13:28:44 +0000 (13:28 +0000)]
Stub out more of the TPI programming protocol routines in the AVRISP project.
Dean Camera [Wed, 23 Dec 2009 13:07:51 +0000 (13:07 +0000)]
Seperate out XMEGA and TINY NVM routines into seperate files.
Dean Camera [Wed, 23 Dec 2009 12:54:15 +0000 (12:54 +0000)]
Start of implementation of the low level TPI programming protocol in the AVRISP project.
Dean Camera [Wed, 23 Dec 2009 07:38:53 +0000 (07:38 +0000)]
Fix TeensyHID bootloader - change vendor page in the descriptors to match the undocumented page needed for the new Teensy 2.0 boards.
Commit for the 091223 release.
Dean Camera [Mon, 21 Dec 2009 10:44:00 +0000 (10:44 +0000)]
Ooops - TeensyHID bootloader makefile should use a 16MHz FCPU, not 8MHz.
Dean Camera [Mon, 21 Dec 2009 08:29:12 +0000 (08:29 +0000)]
Ensure that unsupported SetFeature/ClearFeature request targets cause a STALL back to the host.
Dean Camera [Mon, 21 Dec 2009 07:42:43 +0000 (07:42 +0000)]
Correct TeensyHID bootloader descriptors to use the correct revision code for the ATMEGA32U4 based Teensy revision.
Dean Camera [Sun, 20 Dec 2009 22:33:48 +0000 (22:33 +0000)]
Fixed AVRISP project timeouts not checking for the correct timeout period (thanks to Carl Ott).
Dean Camera [Sun, 20 Dec 2009 13:00:49 +0000 (13:00 +0000)]
Added new NO_DEVICE_SELF_POWER and NO_DEVICE_REMOTE_WAKEUP compile time options.
Dean Camera [Sun, 20 Dec 2009 12:09:22 +0000 (12:09 +0000)]
Fixed TeensyHID bootloader not enumerating to the host correctly.
Dean Camera [Sun, 20 Dec 2009 06:23:24 +0000 (06:23 +0000)]
Add const qualifier to the parameters of Projects' functions where possible.
Dean Camera [Sun, 20 Dec 2009 05:40:17 +0000 (05:40 +0000)]
Added CPU Usage monitor host app to the LEDNotifier project.
Dean Camera [Fri, 18 Dec 2009 05:34:11 +0000 (05:34 +0000)]
Add LEDNotifier project to the Projects folder build list. Add new LEDMixer C# host application for the LEDNotifier project.
Dean Camera [Fri, 18 Dec 2009 05:30:55 +0000 (05:30 +0000)]
Fix up references in the LEDNotifier project to the old HotmailNotifier name.
Dean Camera [Fri, 18 Dec 2009 05:25:51 +0000 (05:25 +0000)]
Rename HotmailNotifier project files to LEDNotifier.
Dean Camera [Fri, 18 Dec 2009 05:22:57 +0000 (05:22 +0000)]
Renamed HotmailNotifier project to LEDNotifier.
Dean Camera [Fri, 18 Dec 2009 04:40:15 +0000 (04:40 +0000)]
Enhance the HotmailNotifier project so that the LEDs' individual brightness can be controlled individually via software PWM.
Dean Camera [Fri, 18 Dec 2009 00:32:21 +0000 (00:32 +0000)]
Fixed USB_CurrentMode not being reset to USB_MODE_NONE when the USB interface is shut down and both Host and Device modes can be used (thanks to Daniel Levy).
Dean Camera [Thu, 17 Dec 2009 10:02:19 +0000 (10:02 +0000)]
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.
Dean Camera [Wed, 16 Dec 2009 09:13:42 +0000 (09:13 +0000)]
More speed and quality improvements to the software USART in the AVRISP project.
Dean Camera [Wed, 16 Dec 2009 08:03:04 +0000 (08:03 +0000)]
Slightly speed up software USART in the AVRISP project - faster parity computation, ensure received data is byte aligned when receive is complete by throwing away the start bit during reception.
Dean Camera [Wed, 16 Dec 2009 04:03:08 +0000 (04:03 +0000)]
The SImage_Host_SendBlockHeader() and SImage_Host_ReceiveBlockHeader() Still Image Host Class driver functions are now public.
Dean Camera [Wed, 16 Dec 2009 03:17:18 +0000 (03:17 +0000)]
Use default NVM base address in the AVRISP programmer project in case the host programmer software doesn't set it correctly.
Dean Camera [Tue, 15 Dec 2009 11:12:38 +0000 (11:12 +0000)]
Speed up bit-banged USART code in the AVRISP project.
Fix project text files to refer to "project" instead of "demo".
Dean Camera [Tue, 15 Dec 2009 10:06:49 +0000 (10:06 +0000)]
Complete initial working revision of PDI programming in the AVRISP project (XMEGAs can now be programmed by the firmware).
Dean Camera [Tue, 15 Dec 2009 05:17:52 +0000 (05:17 +0000)]
Fix a bug in the Still Image Host Class driver where the returned block status code was being truncated.
Add programming support to the AVRISP project's PDI programming mode; paged memory writes are not currently functional.
Dean Camera [Tue, 15 Dec 2009 00:58:22 +0000 (00:58 +0000)]
Add Lock/Fuse byte programming support to the AVRISP PDI programming protocol code.
Dean Camera [Tue, 15 Dec 2009 00:14:17 +0000 (00:14 +0000)]
Fix error in AVRISP programmer when repeatedly using PDI mode via the hardware USART due to the SendByte routine not clearing the Transmit Complete USART flag.
Dean Camera [Mon, 14 Dec 2009 07:06:30 +0000 (07:06 +0000)]
Add Doxygen documentation to the completed portions of the PDI programming protocol in the AVRISP project.
Dean Camera [Mon, 14 Dec 2009 06:01:56 +0000 (06:01 +0000)]
Use the PDI REPEAT instruction in the PDI programmer code to reduce protocol overhead and greatly improve transfer throughput. Switch bit-bang USART in the AVRISP project to Timer 1, so that Timer 0 can be used for hardware timeouts while waiting for the NVM bus or controller to become ready.
Dean Camera [Mon, 14 Dec 2009 05:15:42 +0000 (05:15 +0000)]
Added memory erase handling to the PDI protocol in the AVRISP project.
Dean Camera [Mon, 14 Dec 2009 04:39:16 +0000 (04:39 +0000)]
Fix NVM commands so that memory reads and CRC generations now work correctly using unoptimized PDI commands.
Dean Camera [Mon, 14 Dec 2009 02:59:34 +0000 (02:59 +0000)]
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.
Dean Camera [Sun, 13 Dec 2009 14:43:34 +0000 (14:43 +0000)]
Test with -Wextra, fix library warnings due to unused function parameters.
Dean Camera [Sun, 13 Dec 2009 14:16:29 +0000 (14:16 +0000)]
Oops - wrong casting on the Configuration Descriptor pointer advance routine.
Dean Camera [Sun, 13 Dec 2009 14:09:25 +0000 (14:09 +0000)]
Use -pedantic compile time option to find and correct several minor code errors.
Dean Camera [Sun, 13 Dec 2009 12:50:47 +0000 (12:50 +0000)]
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.
Dean Camera [Fri, 11 Dec 2009 04:56:52 +0000 (04:56 +0000)]
PDI NVM enable is fast enough that bare polling is enough without a fixed delay in between each attempt. Make sure the USART transmitter is enabled explicitly when the USART is configured, so that repeated attempts to re-enter PDI mode don't fail due to TXEN not being set.
Dean Camera [Fri, 11 Dec 2009 04:04:34 +0000 (04:04 +0000)]
Fix PDI code - must send NVM enable key least significant byte first, need to make sure Tx and Rx is switched correctly including disabling the output on the Tx line when receiving.
Dean Camera [Fri, 11 Dec 2009 00:19:25 +0000 (00:19 +0000)]
Fix AVRISP PDI protocol - make sure inverted masks have the appropriate parenthesis around them, make sure the BREAK command for the hardware USART has 12 clock cycles exactly. Poll NVM Enable bit in the target's STATUS PDI register with a timeout, as it is not set immediately.
Dean Camera [Fri, 11 Dec 2009 00:03:10 +0000 (00:03 +0000)]
Change over AVRISP project to have both hardware USART and software USART modes for the PDI protocol, when enabled. Fix up PDI initialisation routines.
Dean Camera [Thu, 10 Dec 2009 00:54:08 +0000 (00:54 +0000)]
Fix PDITarget_ReceiveByte() not discarding the start bit properly, and reading in the bits inverted and in the wrong order.
Dean Camera [Wed, 9 Dec 2009 12:31:55 +0000 (12:31 +0000)]
Add even parity bit to the software USART framing in the AVRISP project's PDI programming code.
Dean Camera [Wed, 9 Dec 2009 12:01:01 +0000 (12:01 +0000)]
Fix inverted bit-banged USART logic in the AVRISP project for PDI programming. Add a delay to the clock toggling in the AVRISP project to ensure that the programming speed does not exceed 10MHz under any conditions to satisfy the limits in the datasheet for all target voltages. Fix incorrect pin being used as the DATA in in PDI programming mode.
Dean Camera [Wed, 9 Dec 2009 07:09:52 +0000 (07:09 +0000)]
Fix incorrect definition of Endpoint_BytesInEndpoint() for the U4 parts.
Dean Camera [Wed, 9 Dec 2009 00:50:55 +0000 (00:50 +0000)]
Increase timeout of Mass Storage and Still Image host commands to 10 seconds (up from 5) to account for slow-processing devices.
Added brace guards to macros with parameters to prevent unintended changed evaluation of the macro expression.
Minor code cleanups (remove redundant comments, fix spacing, etc.).