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
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
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
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
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
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
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
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
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
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
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
fdcb486e22
Fix typos in the project overview text files.
2010-09-09 13:39:52 +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
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
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
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
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
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
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
28401f7bb7
Spell check all source files once again to find any typos.
2010-07-29 16:20:45 +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
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
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
Dean Camera
9299735c75
Disable strict aliasing explicitly in the project makefiles, as this is apparently enabled by default in newer AVR-GCC builds, and aliasing is used heavily for type-punning through the LUFA and third party library's codebase.
2010-07-15 17:13:33 +00:00
Dean Camera
f4710f6f86
Removed the automated checking of event names in the demo, project and bootloader makefiles due to inconsistancies between the behaviour of the command line tools used to perform the check on each platform.
...
Removed the internal endpoint and pipe memory allocation macros, as this is already performed directly in the code. Simplify the endpoint and pipe reset procedure.
2010-07-15 16:45:26 +00:00
Dean Camera
d83cc9ac80
Change AVRISP-MKII and XPLAINBridge descriptors to indicate that the device is bus-powered only. Add compile time options to reduce the compiled size of the firmware.
2010-07-13 14:17:18 +00:00
Dean Camera
666c0fa4c3
Remove the timeout period extension code from the AVRISP project, as no single command should ever exceed the maximum timeout period. Extend timeout period to 1 second per command, so that an accidental timeout will never occur.
2010-07-13 11:26:03 +00:00
Dean Camera
d3e00ce1ec
Rename the AVRISP main source files to AVRISP-MKII so that it matches the project name. Add AVRStudio project file for the AVRISP-MKII project.
2010-07-13 04:16:23 +00:00
Dean Camera
ae9dab1398
Add missing clean_doxygen phony targets to the project makefiles.
2010-07-12 10:18:18 +00:00
Dean Camera
70983caea5
Move out Bluetooth stack callback functions to a seperate BluetoothEvents.c/.h set of files for clarity in the Incomplete BluetoothHost demo. Add a new stack callback for opened ACL channels, make the demo save the RFCOMM channel when opened so that it does not have to search for it on each iteration of the main program loop.
2010-07-08 07:44:07 +00:00
Dean Camera
8b053d6ba5
Added new Drivers/USB/LowLevel/Device.c file to house Device mode specific functions that are more complicated than simple macros. Moved USB_Device_SendRemoteWakeup() to the new Device.c source file and corrected it to unfreeze and restart the USB controller clock before issuing a Remote Wakeup request.
...
Removed the USB_Device_IsRemoteWakeupSent() and USB_Device_IsUSBSuspended() macros, as they are now obsolete.
2010-07-02 03:37:19 +00:00
Dean Camera
d29a408ffd
Add default "all" makefile targets to the demo tree makefiles.
2010-06-25 13:28:34 +00:00
Dean Camera
016a4c068a
Make loops in AVRISP-MKII Clone project's XPROG protocol infinite rather than looping on the timeout value, as this is already checked inside the loop anyway.
2010-06-25 13:19:05 +00:00
Dean Camera
988604b25d
Moved calls to V2Params_UpdateParamValues() out of the main AVRISP-MKII and XPLAINBridge project loops and into the AVRISP management function.
2010-06-21 13:39:56 +00:00
Dean Camera
51c2dcf3b0
Fixed broken PDI EEPROM Section Erase functionality in the AVRISP-MKII project.
2010-06-17 09:17:09 +00:00
Dean Camera
711542ee89
Spell check code and manual pages. Remove custom Doxygen CSS stylesheet, as the new 1.7 Doxygen's default stylesheet is much better.
2010-06-16 11:01:01 +00:00
Dean Camera
a14ece5f57
Change over Doxygen \note documentation to \pre where applicable.
2010-06-15 03:34:55 +00:00
Dean Camera
fc92f9969c
Minor documentation cleanups.
2010-06-03 15:32:45 +00:00
Dean Camera
008e0e2e0a
Add start of RFCOMM service layer to the incomplete BluetoothHost demo.
...
Reduce the size of the attribute search list from 15 ranges to 8 to save RAM.
2010-06-03 03:58:57 +00:00
Dean Camera
3b95b8dedc
Added new VTARGET_REF_VOLTS and VTARGET_SCALE_FACTOR compile time defines to the AVRISP-MKII programmer project to set the VTARGET reference voltage and scale factor.
...
Fixed XPLAINBridge project not correctly reading the XMEGA's supply voltage when reporting back to the host.
2010-05-27 10:36:21 +00:00
Dean Camera
670413603f
The EEPROM stream read/write functions now use eeprom_update_byte() instead of eeprom_write_byte(), so that only changed bytes are written to EEPROM to preserve its lifespan.
...
Changed over the AVRISP-MKII and TemperatureDataLogger projects to use eeprom_update_byte() when writing non-volatile parameters to EEPROM to preserve its lifespan.
2010-05-26 11:54:55 +00:00
Dean Camera
9c037a952f
The RingBuff library code has been replaced in the XPLAINBridge project with an ultra lightweight buffer to help improve the reliability of the bridge.
2010-05-26 06:15:05 +00:00
Dean Camera
776485a6c5
Remove obsolete entry from the Doxygen configuration files.
2010-05-23 08:39:02 +00:00
Dean Camera
3e515cdfa8
Short UUIDs are measured in bytes, not bits -- update Service Discovery Protocol code so that it can now correctly match against UUIDs in the service table.
2010-05-20 13:06:04 +00:00
Dean Camera
f13bc35a19
Begin processing code for Service Discovery Protocol attributes.
2010-05-17 23:36:05 +00:00
Dean Camera
ff61dfa505
Fixed AVRISP project not sending a full erase-and-write EEPROM command to XMEGA targets when writing to the EEPROM instead of the split write-only command (thanks to Tim Margush).
2010-05-16 05:43:03 +00:00
Dean Camera
80d85090ba
Fixed AVRISP project sending a LOAD EXTENDED ADDRESS command to 128KB AVRs after programming or reading from the last page of FLASH.
2010-05-14 10:11:40 +00:00
Dean Camera
34047efc7e
Remove incorrect check for the current device state in the Set Configuration request handler of DevChapter9, which broke Set Configuration requests to the device under most circumstances.
...
Move out the SPI prescaler list to a PROGMEM module-level variable in ISPTarget.c.
2010-05-13 12:57:49 +00:00
Dean Camera
571159df1b
Additional fix to the AVRISP-MKII clone project for 256KB AVRs.
2010-05-13 11:14:10 +00:00
Dean Camera
cd0093a14b
Fixed AVRISP-MKII clone project not correctly issuing SET EXTENDED ADDRESS commands when the extended address boundary is crossed during programming or readback (thanks to Gerard Sexton).
...
Fixed warnings when building the AVRISP-MKII clone project with the ENABLE_XPROG_PROTOCOL compile time option disabled.
2010-05-13 09:25:17 +00:00
Dean Camera
d3c623e1e1
The LIBUSB_FILTERDRV_COMPAT compile time option in the XPLAINBridge and AVRISP-MKII projects has been renamed LIBUSB_DRIVER_COMPAT, as it applies to all software on all platforms using the libUSB driver.
...
Fix Benito makefile which was accidentally changed during testing.
2010-05-13 07:31:27 +00:00
Dean Camera
071e02c6b6
Add svn:eol-style property to source files, so that the line endings are correctly converted to the target system's native end of line style.
2010-05-08 03:12:14 +00:00
Dean Camera
e331b531c6
Change over instances of "make" in the makefiles to "$(MAKE)" to allow for the make tool to be overridden.
2010-05-07 07:11:25 +00:00
Dean Camera
ab8668b14e
Removed software PDI/TPI emulation from the AVRISP-MKII clone project, as it was very buggy. PDI and TPI must now be implemented via seperate headers instead of the one unified ISP/TPI/PDI header.
2010-05-04 11:33:51 +00:00
Dean Camera
27f0ba6fc3
Fixed device state not being reset back to the default state if the host sets the address to 0x00.
...
Fixed Set Configuration requests not being stalled until the host has set the device's address.
Fixed possibility of internal signature retrieval being corrupted if an interrupt occurs during a signature byte read (thanks to Andrei Krainev).
2010-05-04 10:07:22 +00:00
Dean Camera
eed7d4df6a
Added new ENDPOINT_*_BusSuspended error code to the Endpoint function, so that the stream functions early-abort if the bus is suspended before or during a transfer.
2010-05-03 07:41:22 +00:00
Dean Camera
5c0c0327d5
Increase hardware PDI/TPI programming speed to 1MHz in the AVRISP MKII clone project.
2010-05-02 06:18:42 +00:00
Dean Camera
a5e79333e5
Switch back to C based timeout ISR in the AVRISP project - assembly version was failing, and only one or two cycles could be shaved off the compiler generated code.
2010-05-02 06:02:54 +00:00
Dean Camera
3d28d53c3e
Change AVRISP project's timeout to be interrupt based again, but make the interrupt itself interruptable and use a seperate assembly file to hand-optimize the ISR code.
...
Removed the cast to uint16_t on the set baud rate in the USBtoSerial project, so that the higher >1M baud rates can be selected (thanks to Steffan).
2010-05-02 05:16:34 +00:00
Dean Camera
9a1560dc05
Make sure that long reads are aborted early if the connection times out while waiting on more bytes in the AVRISP MKII clone project.
2010-04-30 08:33:21 +00:00
Dean Camera
ceb16ee24f
Make sure that the NVM bus/controller busy waits in the AVRISP MKII clone project abort properly if a timeout occurs while waiting for a response.
2010-04-30 08:27:21 +00:00
Dean Camera
e977774d4e
Relocate USBInterrupt.c/.h from the HighLevel USB driver directory to the LowLevel directory as it is hardware-dependent.
2010-04-28 08:15:16 +00:00
Dean Camera
59c4871f80
USB_Init() no longer calls sei() to enable global interrupts - this must now be done in the user application once all init code has run.
2010-04-28 07:48:26 +00:00
Dean Camera
85aaaf84ce
Make AVRISP-MKII clone project's software PDI/TPI mode more robust by keeping track of timeouts while waiting for a Tx/Rx to finish.
2010-04-28 06:33:48 +00:00
Dean Camera
5993e1efe7
Added ability to search by Channel PSM to the GetChannelData() function in the BluetoothHost demo.
...
Added new HCI states to properly initialize the bluetooth dongle and retrieve the local BDADDR.
Factored out Bluetooth state information into a new state structure for easy reference in the user application.
Added new StackInitialized() Bluetooth stack callback function.
2010-04-22 14:08:00 +00:00
Dean Camera
ee74b4948f
Add information request/response signal handler to the Bluetooth Host demo.
...
Ensure that the AVRISP-MKII project's Windows avrdude compatibility define is named properly in all parts of the code.
2010-04-06 02:48:47 +00:00
Dean Camera
fa1a092901
Add user callback function to the Bluetooth host demo to filter out connections from remote devices. Add in ability to reject connections based on their bluetooth device address.
...
Clean up RelayBoard project code.
Make AVRISP project clear the XMEGA target's reset register twice; this does not appear to take affect properly the first time under some circumstances.
2010-04-05 08:09:12 +00:00
Dean Camera
c9148f9b47
Added WIN_LIBUSB_COMPAT compile time option to the AVRISP programmer project to make the code compatible with Windows builds of avrdude at the expense of AVRStudio compatibility.
2010-03-31 09:20:24 +00:00
Dean Camera
49b09a2042
Standardized the naming scheme given to configuration descriptor sub-elements in the Device mode demos, bootloaders and projects.
...
Fix errors in the MouseHostWithParser demo from incorrect use of the HID_ALIGN_DATA() macro.
2010-03-22 07:12:25 +00:00
Dean Camera
72527867f6
Remove redundant check in the software PDI programming code of the AVRISP project.
2010-03-17 13:07:22 +00:00
Dean Camera
9a5ae36a4f
Software PDI mode breaks unless the software USART has 100 cycles between bits.
2010-03-17 11:48:39 +00:00
Dean Camera
2b74b517ea
Don't enable the pullup on the target /RESET line in the AVRISP project for PDI mode - clearing the XMEGA's reset control register twice is enough to release it from reset. Possible silicon bug, since the official Atmel programmers have the same issue.
2010-03-16 12:09:22 +00:00
Dean Camera
39d56aeffe
Fixed PDI programming mode in the AVRISP programmer project not exiting programming mode correctly (clear target Reset key twice, set /RESET pin to pullup).
...
Add newlines to the MIDI event printf() statements in the MIDI host demos.
2010-03-16 11:47:11 +00:00
Dean Camera
071fd8ce53
Revert changes made for the partial port to the AVR32 architecture.
2010-02-24 06:58:23 +00:00
Dean Camera
e11fddfe66
Update Temperature board driver to be AVR32 compatible when the ADC peripheral driver is eventually ported. Make architecture includes explicit for both the AVR32 and the AVR8, to make way for future architecture ports.
...
Add SPI driver aliases for the old function names in the AVR8 driver, so that existing code will still compile against the new version.
2010-02-23 03:51:17 +00:00
Dean Camera
c24027f3b5
Fixed software PDI/TPI programming mode in the AVRISP project not correctly toggling just the clock pin.
...
Fix broken AVR8 Serial peripheral driver.
2010-02-23 01:03:27 +00:00
Dean Camera
d2851b3351
Oops - need to revert changes made to ease testing of the software PDI programming mode.
2010-02-21 22:15:52 +00:00
Dean Camera
5e12d436fa
Remove dual ISR for software PDI mode, use a single ISR instead to reduce code complexity.
2010-02-21 22:11:49 +00:00