Dean Camera [Sat, 29 May 2010 07:51:01 +0000 (07:51 +0000)]
Fixed incorrect signature for the ATMEGA32U2 in the DFU bootloader (thanks to Axel Rohde).
Partial fix to the Bluetooth SDP code - data should be encoded in big endian, not little endian.
Dean Camera [Thu, 27 May 2010 10:36:21 +0000 (10:36 +0000)]
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.
Dean Camera [Wed, 26 May 2010 13:26:10 +0000 (13:26 +0000)]
Replace ring buffer library in Benito and USBtoSerial projects with the new lightweight ring buffer header to improve reliability.
Dean Camera [Wed, 26 May 2010 12:44:05 +0000 (12:44 +0000)]
Removed unused line encoding data and control requests from the CDC Bootloader code, to save space.
Dean Camera [Wed, 26 May 2010 12:24:44 +0000 (12:24 +0000)]
Switch to using the correct intptr_t type use where a pointer must be cast to an integer type.
Dean Camera [Wed, 26 May 2010 11:54:55 +0000 (11:54 +0000)]
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.
Dean Camera [Wed, 26 May 2010 08:10:35 +0000 (08:10 +0000)]
Add better documentation to the Software UART code in the XPLAINBridge project.
Dean Camera [Wed, 26 May 2010 07:51:25 +0000 (07:51 +0000)]
Switch software UART over to timer 1 and remove timer prescaling to try to prevent integer rounding errors and thus minimize the possible error of the UART code.
Dean Camera [Wed, 26 May 2010 07:35:27 +0000 (07:35 +0000)]
Rename software USART driver globals to make the code more in line with the rest of the XPLAINBridge project.
Dean Camera [Wed, 26 May 2010 06:59:55 +0000 (06:59 +0000)]
Make software USART used in the XPLAINBridge project directly check and store into the ring buffers, rather than polling from the main program loop to avoid added latency.
Dean Camera [Wed, 26 May 2010 06:35:02 +0000 (06:35 +0000)]
Create a new LightweightRingBuffer.h header file for the XPLAIN project to abstract out the new ring buffer without a performance penalty.
Dean Camera [Wed, 26 May 2010 06:15:05 +0000 (06:15 +0000)]
The RingBuff library code has been replaced in the XPLAINBridge project with an ultra lightweight buffer to help improve the reliability of the bridge.
Dean Camera [Tue, 25 May 2010 06:14:37 +0000 (06:14 +0000)]
Fixed RNDISEthernet demos crashing when calculating checksums for Ethernet/TCP packets of more than ~500 bytes due to an overflow in the checksum calculation loop (thanks to Kevin Malec).
Removed string Attributes from the Service Discovery Protocol code to minimise the potential points of failure while the base code is being debugged.
Dean Camera [Sun, 23 May 2010 13:15:19 +0000 (13:15 +0000)]
Add UUID Class matching to the Service Discovery Protocol code - SDP is now correctly matched against the generic Service Discovery Class UUID.
Dean Camera [Sun, 23 May 2010 08:39:02 +0000 (08:39 +0000)]
Remove obsolete entry from the Doxygen configuration files.
Dean Camera [Sun, 23 May 2010 08:36:51 +0000 (08:36 +0000)]
SDP Service improvements; fixed UUID for SDP service, added Service Discovery Server UUID, better documentation.
Dean Camera [Fri, 21 May 2010 09:38:44 +0000 (09:38 +0000)]
Add comments and partial Doxygen documentation to the incomplete Bluetooth SDP handler code.
Dean Camera [Fri, 21 May 2010 08:01:41 +0000 (08:01 +0000)]
Oops - when adding a sequence header to the SDP response, the size value needs to be cleared, not the buffer pointer.
Dean Camera [Fri, 21 May 2010 07:10:49 +0000 (07:10 +0000)]
Add incomplete code to properly handle attribute responses to Service Discovery Protocol requests.
Dean Camera [Thu, 20 May 2010 14:35:52 +0000 (14:35 +0000)]
Service Discovery ServiceSearchAttribute requests require the response to be grouped by UUID, so the response can't be generated as the attributes are read in. Buffer both UUIDs and Attributes instead and generate the response afterwards.
Dean Camera [Thu, 20 May 2010 13:06:04 +0000 (13:06 +0000)]
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.
Dean Camera [Thu, 20 May 2010 08:27:04 +0000 (08:27 +0000)]
More SDP code improvements - responses to ServiceSearchAttribute service discovery requests should now be valid, even if they do not currently return the device's services and service attributes.
Added more documentation to the incomplete Bluetooth stack code.
Dean Camera [Thu, 20 May 2010 06:15:21 +0000 (06:15 +0000)]
Renamed CDC device class demos' ManagementEndpoint descriptor to NotificationEndpoint to more accurately indicate its purpose.
Dean Camera [Tue, 18 May 2010 12:54:01 +0000 (12:54 +0000)]
Switch over the BluetoothHost demo's Service Discovery code to pass around more generic GUID arrays.
Dean Camera [Tue, 18 May 2010 12:51:31 +0000 (12:51 +0000)]
Added new ADC_DisableChannel() function (thanks to Mich Davis).
Dean Camera [Mon, 17 May 2010 23:36:05 +0000 (23:36 +0000)]
Begin processing code for Service Discovery Protocol attributes.
Dean Camera [Sun, 16 May 2010 05:43:03 +0000 (05:43 +0000)]
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).
Dean Camera [Fri, 14 May 2010 10:11:40 +0000 (10:11 +0000)]
Fixed AVRISP project sending a LOAD EXTENDED ADDRESS command to 128KB AVRs after programming or reading from the last page of FLASH.
Dean Camera [Thu, 13 May 2010 13:01:13 +0000 (13:01 +0000)]
Commit for 100513 re-release due to critical device mode bug.
Dean Camera [Thu, 13 May 2010 12:57:49 +0000 (12:57 +0000)]
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.
Dean Camera [Thu, 13 May 2010 11:14:10 +0000 (11:14 +0000)]
Additional fix to the AVRISP-MKII clone project for 256KB AVRs.
Dean Camera [Thu, 13 May 2010 09:25:17 +0000 (09:25 +0000)]
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.
Dean Camera [Thu, 13 May 2010 07:43:18 +0000 (07:43 +0000)]
Fixed possible device lockup when INTERRUPT_CONTROL_ENDPOINT is enabled and the control endpoint is not properly selected when the ISR completes.
Dean Camera [Thu, 13 May 2010 07:31:27 +0000 (07:31 +0000)]
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.
Dean Camera [Wed, 12 May 2010 11:12:53 +0000 (11:12 +0000)]
Removed TeensyHID bootloader, per request from Paul at PJRC.
Dean Camera [Wed, 12 May 2010 07:52:40 +0000 (07:52 +0000)]
Fix Doxygen treating the license as a documentation source file.
Dean Camera [Wed, 12 May 2010 07:30:47 +0000 (07:30 +0000)]
Commit for the 100512 release.
Dean Camera [Tue, 11 May 2010 13:45:23 +0000 (13:45 +0000)]
Fix nasty bug in USBInterrupt.c which would cause a lockup if the control endpoint was not selected at the point the USB endpoint interrupt fires when INTERRUPT_CONTROL_ENDPOINT is defined.
Dean Camera [Mon, 10 May 2010 13:56:16 +0000 (13:56 +0000)]
Refactor Service Discovery Protocol code in the incomplete Bluetooth Host demo, so that the UUID list is compiled via a seperate function to allow for its re-use between different SDP request types.
Dean Camera [Sun, 9 May 2010 06:01:01 +0000 (06:01 +0000)]
Add new ReportType parameter to the HID class driver device callback and host report sending routines.
Renamed internal Host mode Class driver descriptor comparator callback routines so that they all start with a uniform DCOMP_{Class Abbreviation}_ prefix.
Dean Camera [Sat, 8 May 2010 03:12:14 +0000 (03:12 +0000)]
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.
Dean Camera [Fri, 7 May 2010 07:11:25 +0000 (07:11 +0000)]
Change over instances of "make" in the makefiles to "$(MAKE)" to allow for the make tool to be overridden.
Dean Camera [Fri, 7 May 2010 06:54:08 +0000 (06:54 +0000)]
Device mode class driver callbacks are now fired before the control request status stage is sent to prevent the host from timing out if another request is immediately fired and the device has a lengthy callback routine.
Inlined currently unused MIDI ProcessControlRequest routine.
Dean Camera [Fri, 7 May 2010 06:49:31 +0000 (06:49 +0000)]
Don't cast the line encoding baud rate to a uint16_t before performing the baud rate calculation in the Benito project.
Dean Camera [Fri, 7 May 2010 06:48:27 +0000 (06:48 +0000)]
Fix TeensyHID bootloader for the largest AVRs - only the ATMEGA128x needs the alternative addressing scheme.
Dean Camera [Fri, 7 May 2010 06:40:47 +0000 (06:40 +0000)]
Change over unix line-endings to dos line endings.
Dean Camera [Thu, 6 May 2010 11:56:34 +0000 (11:56 +0000)]
Added new EVENT_CDC_Device_BreakSent() event and CDC_Host_SendBreak() function to the Device and Host CDC Class drivers.
Dean Camera [Thu, 6 May 2010 11:32:55 +0000 (11:32 +0000)]
Remove incorrect Abstract Call Management class specific descriptor from the CDC demos, bootloaders and projects.
Dean Camera [Thu, 6 May 2010 11:13:24 +0000 (11:13 +0000)]
Ensure that the CDC class drivers return 0 if the number of unread bytes is queried and the bank has become empty.
Dean Camera [Thu, 6 May 2010 07:27:13 +0000 (07:27 +0000)]
Make CDC class bootloader hard-reset the AVR when exited instead of a soft-reset. Reduce size of the TeensyHID bootloader slightly.
Fix the TeensyHID bootloader for the larger USB AVR devices, since Paul uses a different (undocumented) addressing scheme on these devices.
Dean Camera [Thu, 6 May 2010 02:15:39 +0000 (02:15 +0000)]
Oops - typo in the updated TeensyHID bootloader code when compiled for the non Teensy++ targets.
Dean Camera [Thu, 6 May 2010 02:06:12 +0000 (02:06 +0000)]
Fixed TeensyHID bootloader so that it works with the official TeensyLoader GUI application with all supported AVR models.
Dean Camera [Thu, 6 May 2010 00:25:12 +0000 (00:25 +0000)]
Fixed incorrect comparison in the descriptor callback routine of the TeensyHID bootloader.
Dean Camera [Tue, 4 May 2010 11:54:37 +0000 (11:54 +0000)]
Fix up the ADC driver for the U4 parts to remove a typo on one of the register names.
Dean Camera [Tue, 4 May 2010 11:33:51 +0000 (11:33 +0000)]
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.
Dean Camera [Tue, 4 May 2010 10:16:44 +0000 (10:16 +0000)]
Fixed INTERRUPT_CONTROL_ENDPOINT compile time option preventing other interrupts from occuring while the control endpoint request is being processed, causing possible lockups if a USB interrupt occurs during a transfer.
Dean Camera [Tue, 4 May 2010 10:10:41 +0000 (10:10 +0000)]
Fixed Host mode HID class driver not sending the correct report type when HID_Host_SendReportByID() was called and the HID_HOST_BOOT_PROTOCOL_ONLY compile time option is set.
Dean Camera [Tue, 4 May 2010 10:07:22 +0000 (10:07 +0000)]
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).
Dean Camera [Mon, 3 May 2010 07:41:22 +0000 (07:41 +0000)]
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.
Dean Camera [Sun, 2 May 2010 06:18:42 +0000 (06:18 +0000)]
Increase hardware PDI/TPI programming speed to 1MHz in the AVRISP MKII clone project.
Dean Camera [Sun, 2 May 2010 06:02:54 +0000 (06:02 +0000)]
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.
Dean Camera [Sun, 2 May 2010 05:16:34 +0000 (05:16 +0000)]
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).
Dean Camera [Fri, 30 Apr 2010 08:33:21 +0000 (08:33 +0000)]
Make sure that long reads are aborted early if the connection times out while waiting on more bytes in the AVRISP MKII clone project.
Dean Camera [Fri, 30 Apr 2010 08:27:21 +0000 (08:27 +0000)]
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.
Dean Camera [Thu, 29 Apr 2010 14:54:11 +0000 (14:54 +0000)]
The Audio_Device_IsSampleReceived() and Audio_Device_IsReadyForNextSample() functions are now inline, to reduce overhead.
Dean Camera [Wed, 28 Apr 2010 14:33:10 +0000 (14:33 +0000)]
Use puts_P() and printf_P() instead of the normal variants where possible in the Host mode Class Driver demos.
Dean Camera [Wed, 28 Apr 2010 08:20:15 +0000 (08:20 +0000)]
Oops - relocated USBInterrupt.h header file requires adjusted include paths for the other USB driver header files.
Dean Camera [Wed, 28 Apr 2010 08:15:16 +0000 (08:15 +0000)]
Relocate USBInterrupt.c/.h from the HighLevel USB driver directory to the LowLevel directory as it is hardware-dependent.
Dean Camera [Wed, 28 Apr 2010 08:00:46 +0000 (08:00 +0000)]
Remove incomplete/nonfunctional MIDI class bootloader.
Dean Camera [Wed, 28 Apr 2010 07:48:26 +0000 (07:48 +0000)]
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.
Dean Camera [Wed, 28 Apr 2010 06:33:48 +0000 (06:33 +0000)]
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.
Dean Camera [Tue, 27 Apr 2010 10:07:18 +0000 (10:07 +0000)]
Fix TeensyHID bootloader Doxygen configuration file's CREATE_SUBDIRS options set to true instead of false (thanks to Andrei Krainev).
Dean Camera [Thu, 22 Apr 2010 14:08:00 +0000 (14:08 +0000)]
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.
Dean Camera [Tue, 20 Apr 2010 08:52:51 +0000 (08:52 +0000)]
Fixed HID Device Class Driver not allocating a temporary buffer when the host requests a report via the control endpoint and the user has set the PrevReportINBuffer driver configuration element to NULL (thanks to Lars Noschinski).
Clean up incomplete BluetoothHost debugging commands to use GCC extension to avoid NULL parameters when no formatting is required.
Dean Camera [Mon, 19 Apr 2010 12:39:58 +0000 (12:39 +0000)]
Add start of a SDP service table, which will be linked to the Bluetooth SDP code.
Dean Camera [Mon, 19 Apr 2010 10:53:14 +0000 (10:53 +0000)]
Make bluetooth SDP code correctly unpack the search UUIDs and parameters.
Minor documentation improvements.
Dean Camera [Sun, 18 Apr 2010 12:10:30 +0000 (12:10 +0000)]
Add const keyword to the demo function parameters where possible.
Dean Camera [Sun, 18 Apr 2010 04:47:52 +0000 (04:47 +0000)]
Add bluetooth channel connection callback to the incomplete BluetoothHost demo.
Dean Camera [Thu, 15 Apr 2010 14:22:06 +0000 (14:22 +0000)]
Minor documentation improvements.
Dean Camera [Thu, 15 Apr 2010 11:04:24 +0000 (11:04 +0000)]
Rename FunctionAttributes.h to Attributes.h, as some attributes are applicable to variables also. Add new ATTR_NOINIT attribute for global variables.
Add the beginnings of a SDP implentation to the incomplete BluetoothHost demo.
Add const attribute to the Mass Storage Host driver functions where it was applicable, but missing.
Dean Camera [Wed, 14 Apr 2010 13:46:49 +0000 (13:46 +0000)]
Fixed Set/Clear Feature requests directed to a non-configured endpoint not returning a stall to the host.
Make TeensyHID bootloader use an 8 byte control endpoint to match the official Teensy, just in case Paul decides to authenticate on that attribute in the future.
Dean Camera [Tue, 13 Apr 2010 23:29:11 +0000 (23:29 +0000)]
Removed two-step endpoint/pipe bank clear and switch sequence for smaller, faster endpoint/pipe code.
Added spacing between multiple paragraphs in Doxygen \note sections.
Removed call to the clock prescaler reset function in the Teensy bootloader to save space - the user application is accessed via a watchdog reset anyway, so the prescale reset would only affect the speed of the bootloader itself.
Dean Camera [Tue, 13 Apr 2010 12:10:04 +0000 (12:10 +0000)]
Removed invalid dfu and flip related targets from the bootloaders - bootloaders can only be replaced with an external programmer.
Dean Camera [Tue, 13 Apr 2010 11:19:04 +0000 (11:19 +0000)]
Document the Bluetooth ACL layer. Remove unneeded parameters from the signalling command processing routines.
Change over the code so that the bluetooth packet data is read in by the stack rather than the user application, to make it more unform for sending/receiving, and so the library can handle incomming fragmentation in the future.
Start Service Discovery Protocol decoding and processing.
Dean Camera [Mon, 12 Apr 2010 14:26:56 +0000 (14:26 +0000)]
Add some more documentation to the half-completed Bluetooth Host demo, fix the OpenChannel() command initialising the channel information structure to the wrong initial state once the CONNECTION REQUEST command has been sent to the remote device.
Dean Camera [Mon, 12 Apr 2010 13:42:35 +0000 (13:42 +0000)]
Fix Bluetooth stack CONNECTION RESPONSE packets - for this command and this command only, the source/destination roles are switched. Reverse the Local/Remote channel ordering so that Windows mobile and other stacks which depend on valid channel values to connect.
Dean Camera [Sun, 11 Apr 2010 06:19:58 +0000 (06:19 +0000)]
Add HCI debugging with verbosity control to the BluetoothHost demo.
Add Link Key Request event processing so that paired devices always re-authenticate until appropriate link key store/retrieve callbacks are implemented.
Dean Camera [Sun, 11 Apr 2010 02:45:42 +0000 (02:45 +0000)]
Fix up Bluetooth Demo's options processing on incoming channel configuration requests.
Dean Camera [Sat, 10 Apr 2010 07:33:19 +0000 (07:33 +0000)]
Add LUFA-side channel open/close routines, add signalling handlers for the creation and configuration of channels from the local device to the remote device, to add to the existing remote to local channel capabilities.
Dean Camera [Sat, 10 Apr 2010 05:58:37 +0000 (05:58 +0000)]
Bluetooth demo can now create and maintain logical channels - need to determine why Windows machines refuse to connect.
Dean Camera [Tue, 6 Apr 2010 13:39:18 +0000 (13:39 +0000)]
Make Bluetooth signalling handler routines use the generic Bluetooth_SendPacket() routine for their responses. Use a better method of controlling the debug output verbosity.
Dean Camera [Tue, 6 Apr 2010 08:14:08 +0000 (08:14 +0000)]
Add bidirectional channel configuration -- remote device is not ACKing sent Configuration Requests, needs further debugging. Implement Bluetooth spec's channel states.
Use abbreviations for the structure and function names where possible to try to cut down on the code verbosity.
Dean Camera [Tue, 6 Apr 2010 03:56:45 +0000 (03:56 +0000)]
Add packet reception and send routines to the ACL layer of the incomplete Bluetooth Host demo.
Dean Camera [Tue, 6 Apr 2010 02:48:47 +0000 (02:48 +0000)]
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.
Dean Camera [Mon, 5 Apr 2010 12:13:33 +0000 (12:13 +0000)]
Add Bluetooth signalling echo request/response handlers, disconnection request/response handlers.
Add Bluetooth connection request/complete/disconnection callbacks.
Remove debugging from HCI layer, as it is now operational -- add guards to ACL debug statements to reduce logging chattyness so that the overall command sequences can be observed and debugged.
Dean Camera [Mon, 5 Apr 2010 08:09:12 +0000 (08:09 +0000)]
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.
Dean Camera [Thu, 1 Apr 2010 04:30:21 +0000 (04:30 +0000)]
More improvements to the incomplete BluetoothHost demo - add Disconnection Event processing.
Remove unused macro in the host mode demos for the maximum Configuration Descriptor size.
Dean Camera [Wed, 31 Mar 2010 14:32:03 +0000 (14:32 +0000)]
Massive cleanups to the incomplete BluetoothHost demo, to make the HCL layer code much easier to read, block less and work correctly.
Dean Camera [Wed, 31 Mar 2010 09:20:24 +0000 (09:20 +0000)]
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.
Dean Camera [Wed, 31 Mar 2010 06:44:54 +0000 (06:44 +0000)]
Add RelayBoard project patch from OBinou.