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
e966219834
Clarify in the documentation that the Audio demos and driver is for the Audio 1.0 specification, not the newer (and more advanced/less supported) 2.0 specification.
2010-08-21 11:38:39 +00:00
Dean Camera
95079868bb
Fixed critical pipe/endpoint memory allocation issue where the bank memory address space could be silently overlapped in the USB controller if the endpoints or pipes were allocated in anything other than ascending order (thanks to Martin Degelsegger).
2010-08-20 12:13:19 +00:00
Dean Camera
ad4308b1d1
Added new SCSI_ASENSE_NOT_READY_TO_READY_CHANGE constant to the Mass Storage class driver, to indicate when a previously not ready removable medium has now become ready for the host's use (thanks to Martin Degelsegger)
2010-08-20 11:03:25 +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
f4de17207e
Fixed USB_GetHIDReportItemInfo() function modifying the given report item's data when the report item does not exist within the supplied report of a multiple report HID device.
2010-08-10 12:13:07 +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
be520aed52
Add notification endpoint to the incomplete TMC demo.
2010-08-09 07:21:53 +00:00
Dean Camera
9274610a48
Commit for the 100807 release.
2010-08-09 01:55:02 +00:00
Dean Camera
3c72896e84
Fixed software application start command broken in the DFU class bootloader when dfu-programmer is used due to application start address corruption.
2010-08-05 09:31:51 +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
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
37c601dbf6
Fix typo in DualVirtualSerial.c due to the changed CDC Device APIs that was preventing the demo from being compiled.
2010-07-30 04:20:41 +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
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
1d4ff3695d
Oops - remove duplicated SPI driver init mask.
2010-07-29 07:16:20 +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
059307d89c
Use static inline intermediatary functions in Endpoint.h to handle the masking for the private endpoint configuration routine, instead of performing the masking in the Endpoint_ConfigureEndpoint() macro.
2010-07-27 13:49:16 +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
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
3a79548dc2
Add TMC device capabilities to the incomplete TMC demo.
2010-07-23 09:12:26 +00:00
Dean Camera
eb8a708b53
Update size of compiled Mouse demo in documentation, fix indenting in Device.h.
2010-07-23 03:25:19 +00:00
Dean Camera
9b0e4b8356
Convert over internal pseudo-function macros to true inline functions for added type-safety and compile-checking.
2010-07-22 15:38:12 +00:00
Dean Camera
ac0ece0141
Added start of a low level device Test and Measurement class demo (thanks to Peter Lawrence).
2010-07-22 07:19:41 +00:00
Dean Camera
83e293a6ec
Replace internal Pipe_BytesToEPSizeMask() routine with a new version which results in smaller code.
2010-07-21 14:17:18 +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
99d8a39363
Move and rename DevChaper9.c/.h and HostChapter9.c/.h to the HighLevel directory, new named DeviceStandardReq.c/.h and HostStandardReq.c/.h.
...
Rename LowLevel.c/.h to USBController.c/.h.
Remove dependancies on the complete <avr/io.h> header in the HighLevel USB driver directory, to ensure less work is required in later (possible) ports.
2010-07-21 12:20:34 +00:00
Dean Camera
5f57785404
Add missing const qualifier to the parameters of the USB_GetNextDescriptorComp() function.
...
Reduce spacing of the structure elements in StdDescriptors.h to make the code more readable.
2010-07-21 05:39:29 +00:00
Dean Camera
f9bcac5e00
Fixed MIDI_Device_SendEventPacket() not correctly waiting for the endpoint to become ready (thanks to Robin Green).
2010-07-20 06:59:13 +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
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
dfe50ff349
Added ability to set the serial baud rate via the user's terminal in the XPLAINBridge project.
2010-07-15 11:01:31 +00:00
Dean Camera
7cef08e10e
Fixed HID device class driver still using PrevReportINBuffer for GetReport control requests even when it has been set to NULL by the user application (thanks to Axel Rohde).
2010-07-15 01:42:36 +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
0313034245
Added const attributes to some of the class driver function parameters that were missing it.
2010-07-13 10:01:13 +00:00
Dean Camera
3a3a4e2abf
Add AVRStudio 4 project files to the ClassDriver Device mode demos.
2010-07-13 05:38:51 +00:00
Dean Camera
20943fa1aa
Add AVRStudio 4 project files to the LowLevel Host mode demos.
2010-07-13 05:01:18 +00:00
Dean Camera
975e9d772d
Add AVRStudio 4 project files for the library bootloaders.
2010-07-13 04:43:38 +00:00
Dean Camera
ac61b81a0b
Add first lot of AVRStudio project files for some of the library projects.
2010-07-13 04:32:33 +00:00
Dean Camera
1167b69943
Add missing eol-style properties to new source files.
2010-07-12 10:20:38 +00:00
Dean Camera
0bcc82ac28
Alter the ring buffer library headers to have both atomic and non-atomic insertion/removal routines. Modify the existing projects so that buffer operations performed in an ISR use the shorted non-atomic versions, as they are already performed in a blocking ISR.
...
Alter USBtoSerial demo so that it does not enter a blocking loop to send data from the USB to the USART, as this can cause dropped bytes in the reception code if large amounts of data are sent in both directions at the same time. Added a flush timer to the USBtoSerial code for the USART to USB interface, so that multiple bytes can be sent in the same USB packet.
2010-07-12 07:04:19 +00:00
Dean Camera
229935184b
Major changes to the XPLAINBridge software UART code for performance and reliability. New code reduces the number of missed characters and misread characters.
2010-07-11 14:14:08 +00:00
Dean Camera
c326fe9605
Rewrote the implementation of the SwapEndian_16() and SwapEndian_32() functions so that they compile down in most instances to minimal loads and stores rather than complicated shifts.
...
Fixed SCSI.c implementations of all the demos/projects casting the block count to a 32-bit temporary before calling SwapEndian_16().
2010-07-09 07:24:34 +00:00
Dean Camera
2b0e86243f
Add a new RFCOMM_ChannelOpened() callback event for when logical RFCOMM channels are opened in the BluetoothHost demo. Make the demo echo back sent characters to the remote device.
2010-07-08 08:48:52 +00:00
Dean Camera
dea897ef57
Make main readme file easier to read, and make documentation build instructions clearer.
2010-07-06 07:07:54 +00:00
Dean Camera
35b7946950
Improve commenting of the Dataflash stub board driver file, to prevent confusion of what the dataflash selection masks need to be. Update stub driver to automatically interleave data between the chips if two Dataflash chips are present.
2010-07-04 14:31:18 +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
2eff731ecf
Add TEST RFCOMM command handler. Remove the RFCOMM channel UseUIFrame element, as the Bluetooth adaptions to RFCOMM only allow UIH frames to be used.
2010-06-23 07:17:47 +00:00
Dean Camera
e621ab33be
Added new pgm_read_ptr() macro to Common.h for reading of pointers out of flash memory space.
...
Added new SWAPENDIAN_16() and SWAPENDIAN_32() macros to Common.h for statically initialized variables at compile time.
2010-06-22 07:06:27 +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
deed746d37
Renamed SERIAL_STREAM_ASSERT() macro to STDOUT_ASSERT().
...
Minor tweaks to the library documentation.
2010-06-17 08:15:58 +00:00
Dean Camera
69dc32c5f0
Fix compile and Doxygen errors due to the spell-check changes in the source code.
2010-06-16 11:46:42 +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
dcedde0123
Fix HID parser documentation for the default maximum report/path/etc. elements so that it matches the current code values.
2010-06-15 03:40:02 +00:00
Dean Camera
a14ece5f57
Change over Doxygen \note documentation to \pre where applicable.
2010-06-15 03:34:55 +00:00
Dean Camera
036a156ff4
Slight improvements to the reliability of the software UART in the XPLAINBridge project.
2010-06-12 08:39:12 +00:00
Dean Camera
75d440ace3
Speed up calls to Pipe_IsPipeBound() by immediately skipping unconfigured pipes, rather than performing token check first.
2010-06-12 07:01:18 +00:00
Dean Camera
f73f01235e
Update main library makefile with missing source files for the "clean" rule.
2010-06-08 14:47:17 +00:00
Dean Camera
5ce3f0b17b
Add missing ATTR_NON_NULL_PTR_ARG and ATTR_ALWAYS_INLINE attributes to class driver functions.
2010-06-08 11:14:07 +00:00
Dean Camera
96063b9f98
Add Mecurial repository mirror link to the library documentation.
2010-06-08 09:13:11 +00:00
Dean Camera
34e0fed4ca
Make the RFCOMM_SendFrame() function correctly generate frames from the input parameters, change addressing to use the raw DLCI address plus flags.
2010-06-07 09:07:18 +00:00
Dean Camera
be09f64872
Fixed incorrect function references in the Mass Storage Class driver documentation.
2010-06-03 15:58:22 +00:00
Dean Camera
6d53cdba83
More documentation fixes.
2010-06-03 15:55:28 +00:00
Dean Camera
fc92f9969c
Minor documentation cleanups.
2010-06-03 15:32:45 +00:00
Dean Camera
5144ea76f6
Oops - descriptor pointer should be assigned, not incremented with the new type-safe code.
2010-06-02 15:44:48 +00:00
Dean Camera
6d22a00e8b
Better fix to avoid void pointer arithmetic in ConfigDescriptor.h to regain C++ compatibility (thanks to Michael Hennebry).
2010-06-02 15:28:07 +00:00
Dean Camera
23a94a7181
Fix byte ordering of UUIDs in the SDP server - host can now successfully pair to the Bluetooth device and discover the exposed Serial Port Profile RFCOMM service.
2010-06-02 14:49:06 +00:00
Dean Camera
c362709a1e
The SDP UUID lists should be searched and ALL UUIDs matched for a record to be retrieved, not partial matches. Change the SDP code so that the entire list must be matched against a service attribute table's contents before it is returned.
...
Change matching algorithm so that it recursively searches through the entire attribute table, and not just pre-specified sequence attributes.
Add browse lists and proper descriptions to the Serial Port service.
2010-06-02 07:05:34 +00:00
Dean Camera
f606afefff
Remove void* arithmetic in the USB_GetNextDescriptor() static inline function, to make the header file C++ compatible once again. Implement workaround for an obscure GCC bug which can cause incorrect code generation under some circumstances when the void* is re-cast.
2010-05-31 06:55:23 +00:00
Dean Camera
152b2764c3
Small tweaks to ConfigDescriptor.c/.h to ensure pointers use the correct type, and to remove const attribute from the descriptor comparator callback function pointer type define, and into the function prototype instead.
2010-05-30 14:01:41 +00:00
Dean Camera
e95c96ea20
Fixed internal device serial not being accessible on the ATMEGAXXU2 AVRs (thanks to Axel Rohde).
2010-05-30 07:29:18 +00:00
Dean Camera
328ed71ce7
Fix spacing of the function parameter descriptions in the Doxygen documentation.
2010-05-29 08:08:26 +00:00
Dean Camera
c1daecf18b
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.
2010-05-29 07:51:01 +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
8d993afc53
Replace ring buffer library in Benito and USBtoSerial projects with the new lightweight ring buffer header to improve reliability.
2010-05-26 13:26:10 +00:00
Dean Camera
885170f5b4
Removed unused line encoding data and control requests from the CDC Bootloader code, to save space.
2010-05-26 12:44:05 +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
4a13a5484a
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.
2010-05-25 06:14:37 +00:00
Dean Camera
8f3d4e69c3
Add UUID Class matching to the Service Discovery Protocol code - SDP is now correctly matched against the generic Service Discovery Class UUID.
2010-05-23 13:15:19 +00:00
Dean Camera
58a0ee67a3
Oops - when adding a sequence header to the SDP response, the size value needs to be cleared, not the buffer pointer.
2010-05-21 08:01:41 +00:00
Dean Camera
d3699d0261
Added new ADC_DisableChannel() function (thanks to Mich Davis).
2010-05-18 12:51:31 +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
6b7770ef2b
Commit for 100513 re-release due to critical device mode bug.
2010-05-13 13:01:13 +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
1331cce08a
Fixed possible device lockup when INTERRUPT_CONTROL_ENDPOINT is enabled and the control endpoint is not properly selected when the ISR completes.
2010-05-13 07:43:18 +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
e277ff0cf4
Removed TeensyHID bootloader, per request from Paul at PJRC.
2010-05-12 11:12:53 +00:00
Dean Camera
dd92de3919
Fix Doxygen treating the license as a documentation source file.
2010-05-12 07:52:40 +00:00